Yuj documentation
Yuj lets a coding model read, change, and test a Git repository while it manages the model’s tools, shell access, context, and saved session.
The yuj command starts and controls coding sessions. A coding session is one saved task record. It can continue after a resume.
A Yuj quirk is a TOML rule that users can read, share, and measure.
Start here
| You want to | Start here |
|---|---|
| Use Yuj for a coding task | Getting started |
| Reproduce a released paper comparison | Measurements, then the paper configuration guide |
| Run your own comparison or extend a model, language, or tool | Extend Yuj with TOML files |
Find a topic
| You want to | Read |
|---|---|
Find an installed yuj command or option | CLI reference |
| Install Bash, Zsh, or Fish completion | CLI reference |
| Create a redacted local support report | CLI reference |
| Attach a GitHub issue or pull request | CLI reference |
| Sign in to Claude or Codex | Getting started |
| Attach images to a new or resumed task | CLI reference |
| Answer a model clarification question | CLI reference |
| Correct a stopped session before resume | CLI reference |
| Inspect token, cache, cost, or quota evidence | CLI reference |
| Label, fork, archive, restore, or purge a saved session | CLI reference |
| Review a working tree, commit, or retained session | CLI reference |
| Inspect or safely edit one saved setting | Configuration |
| Choose a fixed assistant permission preset | Configuration |
| Format supported files after model edits | Configuration |
| See what tools the model can use | Model tools |
| Start a local model server | Run a local model |
| Understand the default and plain settings | Treatment |
| Inspect or change a model, time limit, or context mode | Configuration |
| Add a model, profile, rule, or named agent | Extend Yuj with TOML files |
| Add trusted Python at the compaction boundary | Compaction hooks |
Choose bwrap, Docker, Podman, automatic selection, or no sandbox | Sandbox |
| Understand the files that Yuj saves | Saved files |
| Measure exact command, output, and context changes | Transformation and savings accounting |
| Run a fixed comparison | Measurements |
| Run recorded actions again | Replay |
| Read the experiment and results | Paper and results |
First commands
Install Yuj and connect a model first. Activate the environment where you installed Yuj, or replace yuj below with that environment’s bin/yuj path.
Move to the Git repository that the model may edit:
cd /path/to/your-project
yuj config
yuj doctor
yuj smoke
yuj init -C /path/to/your-project --output AGENTS.md
yuj
yuj status
yuj show
yuj usage
Enter the coding task when Yuj prompts you. You can also pass the task after yuj on the same command line.
Use yuj approve or yuj reject when a tool action needs your choice. If the model asks a clarification question, run the exact yuj answer command shown by yuj status. Run yuj correct SESSION "CORRECTION" to add one exact user message before you resume a stopped session. Run yuj resume after you approve, reject, answer, correct, or stop a session.
The CLI reference covers every command and option, including provider sign-in, session selection, and exit statuses.
What the study compares
Normal yuj sessions use the treatment base. Add --no-treatment to select the plain base.
A complete paper comparison also fixes the model, input limit, runtime settings, and detector limits. The paper compares each complete treatment setting with its complete control setting. It does not test one treatment rule at a time.
Read the experiment contract for the study design. Read the paper configuration guide for the exact setting order.
The repository README gives the shortest path from a new clone to a first task.