Runs multi step work the way a careful senior engineer would. Triage before code, a short PRD in prds/, task.md kept current, docs synced after, and lessons recorded when a mistake repeats. Use when a task spans several files or steps, changes architecture, needs a plan the user can review, or when the user says "write a PRD", "plan this", "track this in task.md", or "what did we learn".
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
One loop for any task bigger than a typo. Plan in a PRD, track in task.md, sync docs when done, write down what went wrong so it does not repeat.
Skip this for one file fixes. A typo, a copy change, a single obvious bug. Just fix those.
prds/<slug>.md from the template. Share it if the plan has a real choice in it.task.md under ## To Do. Move items as they land.project-docs skill to update task.md, changelog.md, files.md.prds/lessons.md.Before writing code, answer these in a few lines:
If the last answer is not empty, ask. One question, not five. Then wait.
For bugs, name the root cause before proposing the fix. A fix without a root cause is a guess.
Create prds/<feature-or-problem-slug>.md before non trivial work. Use the layout in references/prd-template.md.
Required sections:
Metadata at the top, always in UTC:
Created: YYYY-MM-DD HH:mm UTC
Last Updated: YYYY-MM-DD HH:mm UTC
Status: Draft | In Progress | DoneKeep it short. A PRD that takes longer to write than the change did is too long. Two screens is plenty for most work.
PRDs are .md files and live in prds/. Old or sensitive PRDs move to prds/archive/.
task.md has three sections: ## To Do, ## In Progress, ## Completed.
YYYY-MM-DD HH:mm UTC timestamp, the files touched, and the verification command or outcome.Good entry:
- [x] 2026-09-15 18:40 UTC Fix duplicate heartbeat writes. prds/heartbeat-dedup.md. convex/stats.ts, src/hooks/usePageTracking.ts. Verified: npx convex dev clean, no OCC retries in dashboard for 10 min.Bad entry:
- [x] fixed heartbeatAfter each feature or fix, task.md, changelog.md, and files.md have to agree with the code. Load the project-docs skill for the rules. In short:
changelog.md follows Keep a Changelog. Dates come from git log --date=short, never from memory.files.md gets new files added and stale descriptions fixed.avoid-feature-creep if scope starts to drift.prds/lessons.md is a flat list. One line per lesson, newest at the bottom:
- 2026-09-15 Do not add `returns` validators that duplicate the schema doc shape; use a shared validator constant instead.Add a lesson when:
Read prds/lessons.md at the start of any session in that repo.
git log or use the current UTC time.82d1ce2
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.