JevTO / Documentation
Install JevTO and make your first run
Start with the explicit command wrapper. You can try it without changing your agent configuration or adding an API key.
1. Install a release
Choose the archive for your OS and CPU, download its matching .sha256 file, and compare the archive's SHA-256 with that file before extracting it.
| System | Archive suffix | Checksum command |
|---|---|---|
| Windows x86_64 | x86_64-pc-windows-msvc.zip | Get-FileHash .\jevto-*.zip -Algorithm SHA256 |
| macOS Apple silicon | aarch64-apple-darwin.tar.gz | shasum -a 256 jevto-*.tar.gz |
| macOS Intel | x86_64-apple-darwin.tar.gz | shasum -a 256 jevto-*.tar.gz |
| Linux x86_64 | x86_64-unknown-linux-gnu.tar.gz | sha256sum jevto-*.tar.gz |
Put the extracted executable in a folder on your PATH, then open a new terminal. On Windows, you can also run .\jevto.exe directly from its extracted folder; on macOS/Linux, use ./jevto. Keep the executable in a stable location before installing a hook.
Or build from the tagged source
With current stable Rust installed:
cargo install --git https://github.com/mattbaconz/jevto --tag v0.1.1 --locked jevto
jevto --version
jevto doctorThe version should read jevto 0.1.1. doctor inspects configuration; it makes no provider request and does not print your key.
2. Wrap one command
In a Rust project, try the following. The explicit --mode rules keeps this run offline even if an OpenRouter key is already in your environment.
jevto run --mode rules -- cargo test --workspaceFor another project, replace the program and its arguments after -- with your actual verifier, for example python -m unittest -v. JevTO executes that command with your existing permissions; it does not make the command safe or change its side effects.
Look for the failing test, assertion, exit status, and a recall: line. Already-short or unrecognized output may pass through with little or no reduction. A nonzero test exit remains nonzero.
3. Recall the captured bytes
jevto recall last
jevto recall last --stream stderr --lines 1:10
jevto gainFull recall restores both stdout and stderr to their original streams. For a line range, the default stream is stdout; add --stream stderr for stderr lines. last selects the newest capture. For parallel sessions, use the specific capture ID printed by your command instead.
To retrieve one omitted section, use jevto recall CAPTURE_ID --section SECTION_ID with the identifiers from the view. Recall returns stored bytes without rerunning the command. It is bounded by what was captured and how long the store retains it.
gain summarizes local receipts. Its output estimates are not proof of lower provider bills.
Next: your coding agent
Set up Claude Code with a preview-first, reversible project hook. For a recording of the real CLI on a deliberately failing fixture, watch the demo.
If your first run does not work
- Command not found: check that JevTO and the wrapped tool are both on your PATH; reopen the terminal after changing PATH.
- Empty recall: check both output streams and use the explicit capture ID. For a line range, select
--stream stderrwhen appropriate. A capture may also have expired. - Unexpected networking: the built-in mode is
auto. Use--mode rulesper run orJEVTO_MODE=rulesfor your session. - No reduction: short outputs may correctly bypass selection. Report an unsupported format with a sanitized example.
Report a bug. Include JevTO version, OS, the command, expected behavior, and a redacted sample. Never attach API keys or raw private captures.