## What happened The code agent was asked to write a skill that helps users author augmentation skills ([issue #6193](https://github.com/fullsend-ai/fullsend/issues/6193)). In its initial commit ([`91ebe5c`](https://github.com/fullsend-ai/fullsend/commit/91ebe5c)), the agent produced a hardcoded static table mapping agents to their shipped skills (e.g., "Triage → issue-labels, Code → code-implementation"). This table was synthesized from model training data, not from inspecting the actual `fullsend-ai/agents` repo. The human reviewer recognized this as actively harmful — the `fullsend-ai/agents` repo evolves independently, so any hardcoded inventory goes stale and misleads users. The human rewrote the entire skill around a "discover, do not memorize" principle, replacing the static table with executable shell scripts that clone and inspect the agents repo at runtime ([commit `e57c3a9`](https://github.com/fullsend-ai/fullsend/commit/e57c3a9)). This was the single largest contributor to rework on [PR #6202](https://github.com/fullsend-ai/fullsend/pull/6202) — the hardcoded-vs-discovery architectural decision drove the near-total rewrite. ## What could go better The code agent had no repo-level guidance telling it that references to the skill/agent/sub-agent inventory must be dynamic. The `fullsend-ai/fullsend` repo's AGENTS.md currently has no rule about this. The agent did the natural thing for an LLM — synthesized a plausible-looking table from its training data. The newly merged `author-fullsend-augmentations` skill contains a "discover, do not memorize" hard rule, but that guidance is only available when that specific skill is loaded as context. The AGENTS.md — which is always loaded for tasks in this repo — should include the general principle so it applies to all tasks that reference the agents ecosystem, not just augmentation-skill authoring. I am fairly confident this would have prevented the hardcoded inventory, since the code agent demonstrably follows AGENTS.md rules on other PRs. I am less certain it would have fully closed the gap — the agent also missed sub-agent coverage and documentation integration, which stem from deeper domain-knowledge gaps rather than missing guidelines. ## Proposed change Add a rule to `AGENTS.md` in the "How to work in this repo" section, after the existing documentation rules (around line 19-20): ``` - When writing skills, documentation, or guides that reference the fullsend agent/skill/sub-agent inventory (agent names, skill names, harness configs, sub-agent rosters), use runtime discovery commands against `fullsend-ai/agents` rather than hardcoded tables or static listings. The agents repo evolves independently and hardcoded references go stale. See the `author-fullsend-augmentations` skill for discovery patterns. ``` This targets the source repo (`fullsend-ai/fullsend`) because it is repo-specific guidance about how content in this repo should reference content in the agents repo. ## Validation criteria The next code agent run in `fullsend-ai/fullsend` that writes content referencing skill or agent names should use discovery commands (e.g., `ls harness/*.yaml`, `find skills -type d`) rather than hardcoded tables. Verify on the next 3 such PRs. If the code agent still hardcodes despite the AGENTS.md rule, the issue is in the agent layer (code agent not reading AGENTS.md thoroughly), not in the repo guidance. --- _Generated by retro agent from https://github.com/fullsend-ai/fullsend/pull/6202_