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/philipyaz/cos/claude-mdgit clone --depth 1 https://github.com/philipyaz/cosWrote 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/philipyaz/cos/claude-md)<a href="https://agentmods.dev/instructions/philipyaz/cos/claude-md"><img src="https://agentmods.dev/badge/instructions/philipyaz/cos/claude-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.03275 | $0.03275 |
| Opus 5 | $0.01638 | $0.01638 |
| Sonnet 5 | $0.00655 | $0.00655 |
| Haiku 4.5 | $0.00328 | $0.00328 |
Grade A, and why
cos CLAUDE.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 yesterday.
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 — 156 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Cos — repo guide (read this first)
Cos — a personal "chief of staff": a writable board (board/, Next.js + a JSON store) for
work+life to-dos, a knowledge vault (vault/, the LLM-Wiki pattern), a prompt-injection
guard (guard/, FastAPI sidecar), semantic search (search/, sidecar), and MCP
servers (mcp/) that expose it all to agents. Feature docs live in the MkDocs site under
docs/ (Material theme, mkdocs.yml, published to GitHub Pages): e.g. docs/architecture/spec.md,
docs/features/board.md, docs/security/guard.md, docs/reference/search.md,
docs/architecture/hierarchy.md, docs/reference/migration.md. README.md (the repo
landing/quickstart) stays at the root.
Skills live in two trees, and the split is load-bearing. Put a setup skill in the repo-root
.claude/skills/ — Claude Code reads it live off disk and Cowork never sees it (cos-setup is the
single first-run orchestrator; each add-on ships its own <name>-mcp-setup skill). Put an
operator skill — anything a scheduled sweep runs or delegates to — in board/.claude/skills/,
and rebuild its bundle with node scripts/pack-skills.mjs after every edit. Cowork installs skills
only from board/.claude/skill-bundles/*.zip, so a delegation to a root-level skill is a silent
no-op there — not an error. Rebuilding a bundle does not install it: re-upload the .zip in
Cowork (Settings → Capabilities → Skills) after every rebuild. Nothing checks this, so until you do,
that skill's half of the feature is silently dead there while the repo stays green.
The bundles are committed binaries, so git cannot merge two branches that touched the same skill:
after any merge or rebase that brings in someone else's skill edit, re-run pack-skills.mjs and
commit the rebuilt .zip — a red pack-skills --check whose output says stale or missing there
means "rebuild", not "defect" (only an automation.json sync error from the packer itself is a defect).
Every setup/skill shell step begins with source "$(git rev-parse --show-toplevel)/config/load-config.sh",
which resolves REPO_ROOT from git and exports machine config from config/cos.env (generated by
cos-setup) — paths, ports, and URLs (REPO_ROOT, BREW_PREFIX, VAULT_DIR, BOARD_URL, the bridge/
sidecar ports + URLs, etc.) so nothing is hardcoded. The config/ dir splits by concern: cos.env
(machine paths/ports), secrets.env (the Anthropic API key), settings.json (board prefs), and
auto-sync.json (router switch); the loaders, secret-validation.mjs, auto-sync.json, and the
*.example files are committed — the live cos.env/secrets.env/settings.json are gitignored.
Secrets reach the two MCP clients by different binding paths (Claude Code re-reads secrets.env
per start; Cowork gets an inlined snapshot), so rotation is a two-step — see the "Cowork holds a
COPY of every secret" gotcha in mcp/CLAUDE.md.
mcp/CLAUDE.md— read it before touchingmcp/.board/.claude/CLAUDE.md— read it before writing or editing an operator skill.board/data/CLAUDE.md—board/data/is LIVE, irreplaceable user data; read it BEFORE touching anything there — never seedboard/dataon a machine with live data.
Multi-device — one hub, thin spokes. Cos is multi-device via hub & spoke: ONE machine (the
hub) runs the board and owns all state; every other device reaches it over Tailscale. To just
VIEW/use the board from another device you need nothing on that device — the hub runs the
production board (cd board && npm run build && npm run start, or the boardapp LaunchAgent —
never next dev behind a proxy) behind tailscale serve --bg 3000, and any tailnet device opens the
portless https://<hub>.<tailnet>.ts.net in a browser (full read/write UI — the browser writes
through the same HTTP API). You add a spoke (spoke-setup — the thin local stdio MCP wrappers
pointed at the hub's BOARD_URL) ONLY when you also want agents (Claude Code/Cowork) to drive the
board from that machine, since Cowork accepts only local stdio MCP servers (not a remote HTTP MCP
over the tailnet). Move the hub role to a different machine with hub-handover (the old one stays a
browser viewer, needing no spoke). Full runbook: docs/architecture/multi-device.md.
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.
- yesterday Changed · +3 lines · +45 tokens per session b4218459726b
- 5d ago First seen · 153 lines · 3,230 tokens per session scan A 817ebf47af36
cos CLAUDE.md is an instructions file published in the GitHub repository philipyaz/cos (4 stars, last pushed today), licensed MIT. It adds 3,275 tokens to every session, about $0.0164 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-31.
Other instructions, from other repositories
docsmint AGENTS.md
AGENTS.md instructions for HiAi-gg/docsmint, covering docsmint — agents.md, cheat-sheet — conventions, project documents, core and project-specific.
operator CLAUDE.md
Claude Code instructions for untra/operator, covering claude.md - operator, project overview, tech stack, code style and plans & specs location.
SoDam-WikiMate AGENTS.md
AGENTS.md instructions for sodam-ai/SoDam-WikiMate, covering wikimate 작업 규칙 (크로스툴 — claude code · codex · gemini 공용), 문체, 자동 동작 (자연어 트리거 — 강제 호출 불필요), 접근 규칙 (자동 감지 — 특정 도구에 한정하지 않음) and obsidian 규칙.
oh-my-symphony AGENTS.md
AGENTS.md instructions for cskwork/oh-my-symphony, covering agents.md: codex cli entry point, source of truth: skills/symphony-skill, available skill (operator-facing), symphony-skill and worker-side guidance.
ariadne AGENTS.md
Instructions for pariyar07/ariadne, covering ariadne — agent instructions, what this repo contains, how skills are structured, routing and rules.
soia-open-skills AGENTS.md
AGENTS.md instructions for soia-team/soia-open-skills, covering agents.md - soia-open-skills, repository purpose, safety rules, validation and git workflow(本仓特有:默认分支是 main).