Expand the documentation with measured figures and operational detail

Every guide catches up with the sixteen-tool registry: apply_patch and web_fetch sections, the delegation guide with the worker kind, bounded compaction replacing the three-message window description, net in the tool-set tables, six bundled skills, and the module map gains tools-net.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
Muhammad Zakir Ramadhan
2026-09-03 16:43:27 +07:00
co-authored by Sisyphus
parent 55ebb40524
commit 0dc0819fad
11 changed files with 172 additions and 79 deletions
+32 -20
View File
@@ -49,9 +49,9 @@ from the models that endpoint actually reports. Settings land in
shiro-neko 0.1.0-beta.3 openai/gpt-5 session 0193ab2c
agent: default thinking: medium
cwd: /home/you/project
skills: debug, refactor, review, test
skills: commit, debug, refactor, review, test, verify
plugins: guard, time
approvals: ask for write_file, edit_file, multi_edit, bash, mcp__*
approvals: ask for write_file, edit_file, multi_edit, apply_patch, bash, web_fetch, mcp__*
/help for commands
> why does the pagination test fail?
@@ -64,16 +64,19 @@ installed and honours `.gitignore`. `list_dir` gives an ignore-aware tree so it
blindly to orient, and `read_many_files` pulls a batch in one round trip. `read_file` refuses
binaries rather than filling the context with mojibake.
**Edits with your approval, gated per command.** `write_file`, `edit_file`, `multi_edit`, and
`bash` stop for a `y`/`a`/`n` decision, with a coloured diff for edits. Rules match the command or
path rather than the tool, so `git *` can run unprompted while everything else still asks —
answering `a` whitelists that pattern, not the whole tool. `.env` and `.pem` files are refused on
read outright. The `guard` plugin refuses irreversible commands ahead of any of it — `rm -rf`,
`git reset --hard`, force pushes, `DROP TABLE` — and `--yolo` cannot bypass it.
**Edits with your approval, gated per command.** `write_file`, `edit_file`, `multi_edit`,
`apply_patch`, and `bash` stop for a `y`/`a`/`n` decision, with a coloured diff for edits.
`apply_patch` lands one atomic patch across files — add, update, move, delete — and nothing is
written if any part of it fails. Rules match the command or path rather than the tool, so
`git *` can run unprompted while everything else still asks — answering `a` whitelists that
pattern, not the whole tool. `.env` and `.pem` files are refused on read outright. The `guard`
plugin refuses irreversible commands ahead of any of it — `rm -rf`, `git reset --hard`, force
pushes, `DROP TABLE` — and `--yolo` cannot bypass it.
**Shows its work.** Reasoning streams to a collapsed panel you can expand with `ctrl-r`, the
tool in flight is named as it runs, and `bash` output streams live instead of arriving all at
once when the command exits. `ctrl-c` kills a runaway command without ending the turn.
tool in flight is named as it runs with the arguments that identify the call, and `bash`
output streams live instead of arriving all at once when the command exits. `ctrl-c` kills a
runaway command without ending the turn.
**Takes prompts while it works.** Type during a turn and it queues; the queue drains in order
when the turn ends. `esc` interrupts and clears it. `@` completes workspace paths.
@@ -82,12 +85,18 @@ when the turn ends. `esc` interrupts and clears it. `@` completes workspace path
`git_blame` are approval-free, because they spawn git with a fixed argument list and cannot
mutate anything.
**Fetches docs when the codebase cannot answer.** `web_fetch` pulls a public page and returns
it as markdown — a changelog, an RFC, a migration guide — size-capped and stripped of anything
that is not text. It lives in the opt-in `net` tool set: the one tool that leaves the machine
is a decision rather than a default, and it asks before every call.
**Asks instead of guessing.** When a request has two readings that lead to different work,
the agent puts a question on screen with options.
**Delegates searches.** `task` spawns a read-only subagent whose findings come back as one
message, so a search across forty files does not fill the main context. Its progress
streams to a panel.
**Delegates work.** `task` spawns a subagent with its own context window whose findings come
back as one message, so a search across forty files does not fill the main context. `explore`
and `review` are read-only; `worker` also edits and runs commands, and every one of its writes
stops at the same approval prompt as yours. Progress streams to a panel.
**Extensible from the prompt.** `/registry` browses external skills and plugins and installs
them with one confirmation. A skill is shown in full before its text joins your system prompt;
@@ -97,11 +106,13 @@ a plugin is a manifest of refusal rules, never code.
memory that is injected at the start of every future session.
**Survives long tasks.** The task list and project memory live outside the message array,
so they survive both automatic pruning and `/compact`.
so they survive both automatic pruning and `/compact`. Pruning itself is bounded: it drops
reasoning first and keeps the widest recent tool tail that fits, so the model keeps its
record of what it already ran instead of repeating it.
**Runs headless.** `shiro -p "review this diff" --json` for scripts and CI.
**Keeps the tool list affordable.** Fourteen built-in tools, grouped into sets. Each costs
**Keeps the tool list affordable.** Sixteen built-in tools, grouped into sets. Each costs
about 550 characters of schema on every request, so `{ "toolSets": [] }` trims back to the six
core ones and a disabled set reaches neither the wire nor the prompt.
@@ -144,14 +155,15 @@ workspace path. Up and down recall earlier prompts.
## Status
Working: the agent loop, tool approvals, subagents, skills, plugins, per-project memory,
session persistence, MCP, markdown rendering, headless mode, five-platform builds, streaming
reasoning display, the mid-turn prompt queue, gateable tool sets, read-only git tools, batch
reads, `@file` completion, interruptible commands, and the external registry.
Working: the agent loop, tool approvals, subagents including the gated `worker` kind, skills,
plugins, per-project memory, session persistence, MCP, markdown rendering, headless mode,
five-platform builds, streaming reasoning display, the mid-turn prompt queue, gateable tool
sets, read-only git tools, batch reads, `apply_patch`, `web_fetch`, `@file` completion,
interruptible commands, and the external registry.
Next up is in [TODO.md](TODO.md); the longer view and what has been declined are in
[ROADMAP.md](ROADMAP.md). The short version of what is missing: a summary of what compaction
discarded, `web_fetch`, a spend ceiling, and a cheaper model for subagent searches.
discarded, a spend ceiling, and a cheaper model for subagent searches.
## License