write-a-prd
This skill will be invoked when the user wants to create a PRD. You may skip steps if you don't consider them necessary, EXCEPT step 5 (Behaviors Under Test interview) which is required before writing the PRD file.
-
Ask the user for a long, detailed description of the problem they want to solve and any potential ideas for solutions.
-
Explore the repo to verify their assertions and understand the current state of the codebase.
-
Interview the user relentlessly about every aspect of this plan until you reach a shared understanding. Walk down each branch of the design tree, resolving dependencies between decisions one-by-one.
-
Sketch out the major modules you will need to build or modify to complete the implementation. Actively look for opportunities to extract deep modules that can be tested in isolation.
A deep module (as opposed to a shallow module) is one which encapsulates a lot of functionality in a simple, testable interface which rarely changes.
Check with the user that these modules match their expectations. Check with the user which modules they want tests written for.
- Behaviors Under Test interview (required before writing the PRD).
The default failure mode of an LLM-written PRD is a vague Testing Decisions section that downstream issues cannot mechanically copy. To prevent that, this step produces a populated, story-grouped table that downstream skills (prd-to-issues, write-an-issue, tackle-issues) inherit from verbatim.
Procedure:
More from ishakantony/skills
discuss
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. DO NOT EVER USE THIS SKILL UNLESS THE USER EXPLICITLY ASKS YOU TO.
19prd-to-issues
Break a PRD into independently-workable issues and write each as a local markdown file in issues/. Use when the user wants to turn a PRD into a list of concrete tasks.
15tdd
Test-driven development with red-green-refactor loop. Use when user wants to build features or fix bugs using TDD, mentions "red-green-refactor", wants integration tests, or asks for test-first development.
14tackle-issues
Autonomously work through AFK issues from the local issues/ directory in a loop, spawning a subagent per task. Use when user types /tackle-issues or asks to "work the backlog", "burn down issues", "tackle AFK tasks", or run an AFK issue queue. Skips HITL issues. Each task is implemented via TDD in a subagent so the main context stays clean.
13commit
Stage changes, draft conventional commit messages, and commit with user confirmation. Use when user types /commit, asks to commit changes, or mentions creating a git commit.
10write-a-skill
Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill.
9