tenzro-code
v0.1.0
Published
A terminal coding agent running on Tenzro network models
Maintainers
Readme
tenzro-code
A terminal coding agent that runs on Tenzro network models. It reads your project, writes and edits files, runs your tests, and shows its work — in a terminal, with your scrollback intact.
tenzro-code 0.1.0 · ladder routing
› add a retry with backoff to the upload path, and a test for it
Added `upload_with_retry` in src/upload.rs — three attempts, exponential
backoff, and it gives up on 4xx rather than retrying a rejection.
Verified: 12 passed in 0.31s
›
ask mode /mode to change · /help ladderInstall
npm install -g tenzro-codeA native binary with a thin launcher. There is no JavaScript in the agent and no Node runtime is used once it starts — npm is the distribution channel, not the runtime.
Start
cd your-project
tenzro-codeThe directory you launch from is the workspace — that is what it reads, edits
and runs commands in. Use -C <path> to point it elsewhere.
Run tenzro-code doctor to see what it can reach and which model each rung
resolves to. That is the first thing to check if something looks wrong.
Pointing it at a node
The agent runs the work on a Tenzro node. tenzro-code setup asks for the two
things it cannot guess — the node's address, and the subscription key if that
node is gated — and writes them to your config:
tenzro-code setupYou are not asked on a machine already running its own node, where the default already works. To supply the key without storing it:
export TENZRO_API_KEY=tnz_…A key you paste is stored in ~/.tenzro-code/config.toml at mode 0600.
A gated node refuses an anonymous caller, so a missing key looks like a missing
node. tenzro-code doctor tells the two apart: it reports the endpoint it
reached and how many models it can see.
Using it
| Key | |
|---|---|
| Enter | send |
| Ctrl-J | newline — Shift+Enter too, on terminals that can report it |
| ↑ ↓ | history; comes back to the line you were part-way through writing |
| Ctrl-A Ctrl-E Ctrl-W Ctrl-U | start / end / delete word / clear line |
| y a n | answer an approval, one keypress |
| Esc | interrupt the running turn |
| Ctrl-C Ctrl-D | clear the line, or exit when it is already empty |
| Command | |
|---|---|
| /mode plan\|ask\|accept-edits\|auto | how much it asks before acting |
| /cost | what this session used |
| /models | what the network is serving now |
| /clear | start a fresh context |
| /image <path> | attach an image to the next message |
| /gauntlet <goal> | N builders → verify gate → adversarial critic, looped |
| /autopilot <goal> | plan → per-milestone gauntlet → checkpoint, until done |
Permission modes run from plan (proposes, changes nothing) through ask
(the default — approves each write and command) and accept-edits (files yes,
commands ask) to auto.
Piped and non-interactive input falls back to a plain line-based loop, so this works unchanged in CI:
tenzro-code run "fix the failing test"Choosing models
Configured in tenzro-code.toml in the project, or ~/.tenzro-code/config.toml
for your defaults — project values win field by field.
- Pinned — name one model and run everything on it.
- Ladder — each role resolves to a rung:
l0autocomplete,l1apply-edit,l2the agent loop,l3planning and hard reasoning. Rungs escalate on measured difficulty. Any rung can be pinned while the rest stay dynamic.
[model]
mode = "ladder"
sourcing = "hybrid" # offline | local | hybrid | network
[model.ladder]
l2 = { id = "qwen3.8-27b" } # the agent loop
l3 = { id = "muse-glimmer-30b" } # planning and reasoningsourcing is the one knob for where intelligence may come from: offline
never leaves the machine, local refuses rather than reaching out, hybrid
uses local where it fits, network always routes out.
Supported platforms
Linux (x64, arm64), macOS (Intel, Apple silicon) and Windows (x64, arm64) — the
agent is portable and the command tool uses the platform shell (sh, or
PowerShell on Windows).
Prebuilt binaries ship for Linux (x64, arm64) and Windows (x64, arm64). macOS builds from source for now — its packages are not published yet:
cargo install --git https://github.com/hilarl/tenzro-code tenzro-code-cliLicence
Apache-2.0.
