What’s New

dotagents-standard-skill v0.2.0

v0.2.0
Added 3
  • Add "Writing context back (the append trap)" section to SKILL.md with self-check and examples for correct context writing order
  • Name host-local agent memory as a second sink where knowledge is lost to the repo
  • Add Maintenance block to AGENTS.md router example in SKILL.md and to examples/sample-project/
Changed 1
  • Guard AGENTS.md router against context leaking back into it by making the write path explicit
Removed 1
  • Drop permissive "You may append durable decisions to .agents/memory/decisions.md" capability line from routers

Guards the AGENTS.md router against context leaking back into it.

The value of the dotagents layout depends on the router staying a router. The most common way that decays: an agent learns something durable and writes it into AGENTS.md, because that file is already in its context while .agents/ is not. Repeat a few times and the router is the monolith again. This release makes the write path explicit.

Install
npx skills add zaventh/dotagents-standard-skill
What changed
  • SKILL.md — new "Writing context back (the append trap)" section. States the order: classify the context, write it into .agents/, and only then add a routing line — never the content itself. Includes a self-check to run before any AGENTS.md write, and a worked trap-vs-correct example.
  • Names the second sink: host-local agent memory. ~/.claude/ and similar tool-local memory features are machine-local, uncommitted, and invisible to other tools and teammates — knowledge that lands there is lost to the repo just as surely as knowledge appended to the router.
  • ## Maintenance block added to assets/templates/AGENTS.md, to the router example in SKILL.md, and to the worked example in examples/sample-project/.
  • Dropped the permissive You may append durable decisions to .agents/memory/decisions.md capability line from both routers — it read as an allowance rather than a constraint.
A note on validation

These changes were measured with a behavioral eval — 60 runs across two fixture shapes and both router versions — and the append failure they guard against did not reproduce in any run. So this is preventive hardening, not a fix for observed behavior.

The leak that did reproduce is the other one: a "remember I prefer X" instruction landed in host agent-memory rather than .agents/memory/ in most runs, and the router guardrail did not change that. It originates above the project-context layer, so it is documented here but not solved.

Full notes in the changelog.

View original

Discussion