# Yoke configuration # Lines starting with # are comments. Blank lines are ignored. # ── Backend ──────────────────────────────────────────────────────────── # Model to use for the agent. If unset, defaults to Claude CLI. # Use provider/model format for OpenRouter or other opencode providers. # model openrouter/anthropic/claude-sonnet-4 # model openai/gpt-4o # model anthropic/claude-sonnet-4 # ── Sandbox ────────────────────────────────────────────────────────── # Docker image to run the agent inside. Required unless you pass --no-sandbox. # Note: sandbox is not currently supported with the 'model' directive. image claude-code-sandbox:latest # ── Output ─────────────────────────────────────────────────────────── # Max lines of tail output kept per guard in guard-results.md. # Keeps the results file from exploding on verbose commands. max-tail 200 # Uncomment to save raw stream-json output per iteration. # Each iteration writes to /iteration-.jsonl. # log-dir .loop/logs # ── Scope rules (diff boundary enforcement) ────────────────────────── # Controls what files the agent is allowed to change. After each iteration # yoke diffs the working tree and checks every changed file against # these rules. Most-specific (longest prefix) match wins. # # Directives: # allow — any change permitted (add, modify, delete) # add-only — new files only; existing files cannot be modified # no-modify — no changes at all (adds or modifications rejected) # # The prefix "." matches every path (root catch-all). # # Examples: # allow src/ # full access under src/ # add-only tests/ # can create new test files, not edit existing # no-modify .github/ # CI config is off-limits # allow . # fallback: everything else is allowed allow . # ── Guards (run in order, fail-fast) ───────────────────────────────── # Shell commands executed after each agent iteration. If any guard # exits non-zero the iteration is marked failed, remaining guards are # skipped, and the results are fed back on the next pass. # # Common examples: # guard cargo check # guard cargo test # guard npm run lint # guard python -m pytest tests/ -x # guard make test # # NOTE: avoid "cargo check" as the sole guard — its type-error output # can confuse the agent into chasing compiler noise instead of finishing # the task. Prefer a test suite or linter that validates behaviour. # guard cargo check