con un clic
develop
Use when implementing new features, fixing bugs, or modifying code in infra/
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Use when implementing new features, fixing bugs, or modifying code in infra/
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
Use when a file or module is too large, responsibilities are tangled, or a cross-cutting redesign is needed
Use when literature notes exist and need citation verification, or before publishing any artifact that cites literature
Use at the end of a work session to embed learnings into conventions. Simplified for models with lower reasoning capacity.
Use at the end of a work session, or when accumulated findings need to be embedded into conventions, skills, or patterns
Use when the Slack bot needs to handle an operational action like launching an experiment, querying status, or processing approvals
Use when a plan, finding, or design needs adversarial review before committing to it
| name | develop |
| description | Use when implementing new features, fixing bugs, or modifying code in infra/ |
| complexity | high |
| model-minimum | gpt-5 |
| allowed-tools | ["Read","Grep","Glob","Edit","Write","Bash(cd infra/scheduler && npm test)","Bash(cd infra/scheduler && npx tsc --noEmit)","Bash(cd infra/scheduler && npm run build)","Bash(cd infra/scheduler && npm install *)","Bash(git diff *)","Bash(git log *)","Bash(git status)","Bash(git add *)","Bash(git commit *)","Bash(git push)","Bash(curl *)"] |
| argument-hint | [feature description] or [fix <bug description>] |
Develop akari infrastructure code using test-driven development. Covers new features and bug fixes in infra/.
The argument determines the mode:
| Argument pattern | Mode | Example |
|---|---|---|
fix <description> | Bugfix | /develop fix living message shows no final text |
| Anything else | Feature | /develop mid-run message forwarding via streamInput |
infra/scheduler/src/.decisions/ for constraints on the area you're changing.infra/*/docs/ for documented patterns (e.g., provider-quirks.md for API key BYOK)grep -r "<capability>" projects/decisions/ for constraints on credentials and accessEnterPlanMode to plan first.<module>.test.ts next to the source file.cd infra/scheduler && npm testcd infra/scheduler && npm testcd infra/scheduler && npm testcd infra/scheduler && npx tsc --noEmitgit diff.git add <files> && git commit -m "<message>"git pushcd infra/scheduler && npm run buildcurl -s -X POST http://localhost:8420/api/restart (triggers graceful drain per ADR 0018 — waits for concurrent sessions to finish before exiting)Never skip steps — the scheduler is a long-running pm2 process; code changes without build + restart have no effect.
TASKS.md before committing (ADR task bridge — see CLAUDE.md Decisions section).<module>.test.ts that reproduces the bug.cd infra/scheduler && npm test — the new test should fail, others should pass.cd infra/scheduler && npm test — all tests should now pass.cd infra/scheduler && npx tsc --noEmitgit add <files> && git commit -m "<message>"git pushcd infra/scheduler && npm run buildcurl -s -X POST http://localhost:8420/api/restart (graceful drain — ADR 0018)tsc --noEmit.NO PRODUCTION CODE WITHOUT A FAILING TEST FIRST
Wrote code before writing a test? Delete the code. Write the test. Watch it fail. Then reimplement.
Violating the letter of this rule is violating the spirit.
| Excuse | Reality |
|---|---|
| "Too simple to need a test" | Simple code breaks. The test takes 30 seconds to write. |
| "I'll add tests after implementing" | Tests that pass immediately prove nothing — you never saw them catch the bug. |
| "I already tested it manually" | Manual testing is ad-hoc. No record, can't re-run, easy to miss cases. |
| "The fix is obvious, just one line" | One-line fixes cause regressions. The regression test takes 2 minutes. |
| "This is just a config change" | Config changes that affect behavior need tests. If it can break, test it. |
| "I'm almost done, adding tests now would slow me down" | Sunk cost fallacy. Tests now prevent debugging later. |
| "Keep the code as reference, then write tests" | You'll adapt it instead of starting fresh. That's testing after, not TDD. |
| "The existing code has no tests, why start now?" | You're improving the codebase. Add tests for what you touch. |
| "This is infrastructure, not business logic" | Infrastructure bugs take down everything. Test it more, not less. |
| "I need to explore the approach first" | Fine — prototype, then delete it and start with TDD. Exploration is not implementation. |
| "The user is waiting / this is urgent" | Urgency makes regression tests MORE important, not less. The next occurrence won't have a user watching to verify. Write the test first — it takes 2 minutes. |
If you notice any of these, stop and return to Step 2 (Write tests):
npm testBefore claiming any task is complete:
cd infra/scheduler && npm test — see the output, count failurescd infra/scheduler && npx tsc --noEmit — confirm zero errorsgit diff — confirm changes are targeted and completeNever use "should work", "probably passes", or "looks correct". Evidence before claims.