About Ruchy
Ruchy is an MCP server published by paiml in the Developer Tools category: ruchy, a systems-oriented scripting language that transpiles to Rust.
The repository has 62 stars and 4 forks, with the last commit 22 hours ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/paiml/ruchyThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Ruchy
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 7 hours ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- !No dynamic code executionSource scan found eval or shell execution. Review how tool inputs reach it before granting credentials.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
Releases
README
Ruchy is a programming language with Python-like syntax. A program runs in the built-in interpreter, or is transpiled to Rust and compiled to a native binary.
This README is checked by contracts/ruchy-readme-v1.yaml:
every example below is a file under examples/readme/ that CI runs against the
ruchy binary built from the same commit.
Install
The current version is a pre-release, so name it explicitly:
cargo install ruchy --version 5.0.0-beta.2
Plain cargo install ruchy installs the latest stable release instead.
Quick start
ruchy examples/readme/hello.ruchy
ruchy -e "println(1 + 2)"
ruchy check examples/readme/match.ruchy
ruchy transpile examples/readme/collections.ruchy
ruchy compile examples/readme/collections.ruchy -o collections
Running ruchy with no arguments starts the REPL.
Examples
Functions and f-strings (examples/readme/hello.ruchy):
let name = "Ruchy"
fun greet(who) {
println(f"Hello, {who}!")
}
greet(name)
Pattern matching (examples/readme/match.ruchy):
let value = Some(42)
match value {
Some(x) => println(f"Got {x}"),
None => println("Nothing"),
}
Labeled loops (examples/readme/loops.ruchy):
let mut found = 0
'outer: for i in 1..10 {
for j in 1..10 {
if i * j > 50 {
found = i * j
break 'outer
}
}
}
println(f"First product over 50: {found}")
Collections (examples/readme/collections.ruchy):
let numbers = [1, 2, 3, 4, 5]
let doubled = numbers.map(|x| x * 2)
println(f"Doubled: {doubled:?}")
Commands
ruchy --help lists every subcommand. The ones used most:
| Command | Description |
|---|---|
ruchy run |
Run a script (also ruchy <file>) |
ruchy repl |
Start the interactive REPL |
ruchy check |
Check syntax |
ruchy transpile |
Transpile to Rust |
ruchy compile |
Compile to a native binary |
ruchy lint |
Lint a file |
ruchy test |
Run @test functions |
ruchy wasm |
Compile to a WebAssembly module |
Documentation
MSRV
Minimum supported Rust version: 1.91.
License
MIT. See LICENSE.
README fetched from the repository 7 hours ago. The original is authoritative.