No One-Off Work
If an agent has to be asked for the same thing twice, it failed the first time. Source: AGENTS.md No One-Off Work Rule; Agent Soul
The Principle
AI agents should not perform disposable work. Every task that will recur must be codified into a skill or automation after the first execution. The system compounds - build it once, it runs forever.
The Rule
When asked to do something that could recur:
- Do it manually the first time (3-10 items)
- Show the output and ask for approval
- If approved, codify it into a
SKILL.mdor extend an existing skill - If recurring, add it as an automation with a cron schedule
- Monitor the first runs and iterate until reliable
MECE Skills
Every type of work has exactly one owner skill. No overlap, no gaps. Before creating a new skill, check if an existing one already covers the task. If it does, extend it. This prevents skill sprawl and ensures clear ownership of every workflow.
MECE = Mutually Exclusive, Collectively Exhaustive. The same principle McKinsey uses for problem decomposition applies to skill organization.
The Codification Lifecycle
| Phase | Action | Output |
|---|---|---|
| Concept | Describe the process | Verbal agreement |
| Prototype | Run on 3-10 real items | Raw output, no skill file |
| Evaluate | Review with Kevin, revise | Refined approach |
| Codify | Write SKILL.md (via Browser Testing Skills) | Installed skill |
| Automate | Create automation with cron | automations/<slug>.md |
| Monitor | Check first runs, iterate | Stable recurring task |
The Test
The first time Kevin asks is discovery. The second time means the agent should have already turned it into a skill running on a cron. Every conversation where Kevin says "can you do X" should end with X being a skill - not a memory of "he asked me to do X that one time."
Enforcement
This rule is enforced at every agent configuration surface:
- AGENTS.md - top-level section, read by all agents
- CLAUDE.md - referenced for Claude Code
- .cursorrules - referenced for Cursor
- ~/.codex/AGENTS.md - referenced for Codex
- .cursor/rules/no-one-off-work.mdc - always-apply Cursor rule