understanding-feature-requests
Skill45 starsChanged 4 days agoMITView on GitHub
This skill should be used when clarifying feature requests, gathering requirements, or checking for contradictions in proposed changes
In this repository43 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- build-unplannedSkill
- check-specs-alignmentSkill
- create-tasksSkill
- debugSkill
- design-architectureSkill
- design-it-twiceSkill
- design-productSkill
- domain-modelingSkill
- doubt-driven-developmentSkill
- finalize-taskSkill
- groundwork-checkSkill
- groundwork-helpSkill
- handoffSkill
- implement-taskSkill
- instrument-observabilitySkill
- just-do-itSkill
- just-do-it-swarmingSkill
- plan-taskSkill
- review-prSkill
- select-projectSkill
- setup-repoSkill
- shipSkill
- skillsSkill
- source-architecture-from-codeSkill
- source-product-specs-from-codeSkill
- source-ux-design-from-codeSkill
- split-architectureSkill
- split-specsSkill
- staged-rolloutSkill
- statuslineSkill
- swarm-debugSkill
- swarm-design-architectureSkill
- task-validation-loopSkill
- test-driven-developmentSkill
- use-git-worktreeSkill
- using-groundworkSkill
- ux-designSkill
- validateSkill
- vertical-sliceSkill
- work-on-next-taskSkill
- work-onSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 7 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
If effort is low or medium (i.e.
- Distinctive: line 17
If you are not Sonnet or Opus, you MUST show the recommendation prompt - regardless of effort level.
- Distinctive: line 35
If the user selects "Cancel — I'll switch first": output the switching commands above and stop.
- Distinctive: line 39
When the user proposes a feature or change, ask clarifying questions to understand:
- Distinctive: line 62
Keep questions focused: - ask 2-3 at a time, not all at once.
- Distinctive: line 65
Prefer multiple-choice questions when possible - they're easier to answer and keep conversations focused
- Distinctive: line 67
When presenting alternatives, lead with your recommendation
- Distinctive: line 71
Before proceeding with design, review for conflicts within the proposed feature:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Understanding Feature Requests
Interactive workflow for clarifying feature requests and ensuring they don't conflict with existing requirements.
Pre-flight: Model Recommendation
Your current effort level is {{effort_level}}.
Skip this step silently if effort is high, xhigh, or max (the scale is low < medium < high < xhigh < max, so xhigh and max are already above high) AND you are Sonnet or Opus.
If effort is low or medium (i.e. below high), you MUST show the recommendation prompt — regardless of model.
If you are not Sonnet or Opus, you MUST show the recommendation prompt - regardless of effort level.
Otherwise → use AskUserQuestion:
{
"questions": [{
"question": "Do you want to switch? Contradiction detection in feature requirements benefits from consistent reasoning.\n\nTo switch: cancel, run `/effort high` (and `/model sonnet` if on Haiku), then re-invoke this skill.",
"header": "Recommended: Sonnet or Opus at high effort",
"options": [
{ "label": "Continue" },
{ "label": "Cancel — I'll switch first" }
],
"multiSelect": false
}]
}If the user selects "Cancel — I'll switch first": output the switching commands above and stop. Do not proceed with the skill.
Step 1: Clarify the Request
When the user proposes a feature or change, ask clarifying questions to understand:
Core Questions (always ask):
- What problem does this solve for the user?
- Who is the target user/persona?
- What is the expected outcome or behavior?
Exploratory Questions (for open-ended or vague requests):
- "What inspired this feature idea?"
- "Have you seen this done well elsewhere? What did you like about it?"
- "What would make this feature 'delightful' vs just 'adequate'?"
- "What's the simplest version that would provide value?"
- "If you had to cut half the scope, what would you keep?"
Conditional Questions (ask as relevant):
- What triggers this behavior? (for event-driven features)
- What are the edge cases or error conditions?
- What is explicitly out of scope?
- Are there dependencies on other features?
- What metrics would indicate success?
- How could this fail? What are the possible risks and dangers?
- Could we do this in any other way?
Keep questions focused - ask 2-3 at a time, not all at once. Build understanding iteratively.
Question Style:
- Prefer multiple-choice questions when possible - they're easier to answer and keep conversations focused
- Explore one topic at a time to avoid overwhelming stakeholders
- When presenting alternatives, lead with your recommendation
Step 2: Check for Internal Contradictions
Before proceeding with design, review for conflicts within the proposed feature:
- Conflicting behaviors (e.g., "shall be real-time" AND "shall work offline-first")
- Incompatible constraints (e.g., "shall complete in <100ms" AND "shall process 10,000 items")
- Mutually exclusive states
If conflicts found, surface them and resolve before proceeding.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

