Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add instructions/ikamensh/kodo/agents-mdgit clone --depth 1 https://github.com/ikamensh/kodoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/ikamensh/kodo/agents-md)<a href="https://agentmods.dev/instructions/ikamensh/kodo/agents-md"><img src="https://agentmods.dev/badge/instructions/ikamensh/kodo/agents-md.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.01641 | $0.01641 |
| Opus 5 | $0.00821 | $0.00821 |
| Sonnet 5 | $0.00328 | $0.00328 |
| Haiku 4.5 | $0.00164 | $0.00164 |
Grade A, and why
kodo AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Rules for writing code in this repo
End-to-end test scenarios (mocked)
Primary user workflows and how to verify them with mocks (no API keys or real backends):
| Scenario | Script | What it verifies |
|---|---|---|
| Non-interactive run | scripts/smoke_test_cli.py |
CLI starts, mocked orchestrator runs one cycle, exits 0, JSON output |
| Full mocked run | scripts/run_cli_mocked.py |
Goal + team + launch flow, run_start/cycle_end/run_end emitted |
| Resume interrupted run | scripts/smoke_test_resume.py |
Creates incomplete run, kodo --resume finds it, passes correct ResumeState to orchestrator |
| Improve mode | scripts/smoke_test_improve.py |
Project type detection (app vs library), 7-stage improve plan, orchestrator receives plan |
| Interactive flow | scripts/smoke_test_interactive.py |
Goal input, team/orchestrator/model selection, refine skip, confirmation, launch |
| Improve full run | scripts/run_improve_mocked.py |
kodo --improve on buggy_project, plan built, cycle completes |
Log viewer (browser): python -m kodo.viewer <log.jsonl> or --serve --port 8080. scripts/verify_viewer_browser.py uses Playwright (optional dep) to verify embedded data, stats bar, timeline, expand button.
Report bug: kodo issue [RUN_ID] — resolves run like --resume (latest or by id), prompts for description (leave empty if crash obvious), packs run into run.tar.gz (log, config, goal, conversations), opens GitHub new-issue URL with run context pre-filled. User attaches the archive (GitHub rejects .jsonl). Tests: tests/cli/test_subcommands.py::TestCmdIssue.
Steering input (kodo/cli/_interactive.py): deliberately no persistent prompt line or status bar — any always-visible UI needs a renderer that redraws around every output write, which desyncs and corrupts scrollback under tmux (issue #52). Instead a cbreak watcher opens a plain input() composer on first keypress; orchestrator output is buffered while composing. Don't reintroduce prompt_toolkit/TUI rendering here.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 94 lines · 1,641 tokens per session scan A 2a96fb0a0a7b
kodo AGENTS.md is an instructions file published in the GitHub repository ikamensh/kodo (130 stars, last pushed 1mo ago), licensed MIT. It adds 1,641 tokens to every session, about $0.0082 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
Math-To-Manim tests.instructions.md
Guidelines for writing and maintaining tests in Math-To-Manim.
antigravity-testing-kit GEMINI.md
Instructions for anhtester/antigravity-testing-kit, covering gemini ai - global automation agent rules, git pull restriction rule, browser rules (mandatory), 🖥️ viewport & mode and 🔄 thứ tự debug bắt buộc (playwright mcp).
android-qa-kit AGENTS.md
Instructions for willbytee-sudo/android-qa-kit, covering agents.md — setting up and driving an android device, 1. how to work with the user, 2. start by finding out what's already there, 3. what you can do in each mode and 4. if there's no device: ask first.
devicecloud-mcp AGENTS.md
AGENTS.md instructions for RubenGlez/devicecloud-mcp, covering devicecloud-mcp, who it's for, the problem, the promise and why it's different.
refract AGENTS.md
AGENTS.md instructions for valternunez/refract, covering refract — agent playbooks, playbook: verify a responsive bug fix, playbook: visual-diff before merge, playbook: screenshot a page behind a login and playbook: find horizontal overflow on a pr preview.
mcp-server-tester CLAUDE.md
Claude Code instructions for gleanwork/mcp-server-tester, a project described as: Playwright-based testing and eval framework for MCP servers with LLM-as-a-judge.