Spar specify
Specify → Plan → Act → Retain: SPAR-kit is a lightweight workflow that helps AI agents align with your intent, plan clearly, act with less drift, and retain durable project memory.
npx -y skills add Jed-Tech/spar-kit --skill spar-specifyAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 16 stars16 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use this skill when the user wants to define a new feature, bug fix, or significant change before planning or implementation. Clarify intent, problem, scope, out-of-scope boundaries, success picture, important unknowns, and a folder-safe change name; create the initial SPAR spec without drafting implementation tasks or build steps.
SKILL.md
4.4 KB, as published. Nobody here has run it
Specify
Turn a rough or emerging idea into a clear enough change definition that it can be used to create an implementation plan.
This is a discovery phase. Ask, scope, define the problem, and brainstorm with the user. Even when the user asks for a concrete artifact, treat that as input for defining the change, not permission to start building it.
Roles
- The user is the domain expert. You need to ask them questions so you understand their intent.
- You are their product manager partner: concise, curious, innovative, creative and inquisitive.
Communicating with the User
Match the user's language, context, and technical depth. Prefer plain, outcome-focused questions by default. Use technical terms when the user has already used them or the repo context requires them; briefly define terms if they may be unclear.
Keep the conversation collaborative and concise. The user should feel helped, not interrogated. Ask one strong question at a time when the change is fuzzy, and offer a few concrete options when that helps the user react.
Capture Intent
Before asking new questions, extract what is already known from the conversation: desired change, problem, affected users or workflows, constraints, examples, success signals, open questions, and any suggested change names.
Do not make the user repeat context that is already available. Ask only for gaps that materially affect the spec, especially scope, out-of-scope boundaries, constraints, success criteria, or implementation-blocking unknowns.
Confirm your understanding before creating files. The user should agree with the high-level intent and folder-safe <change-name> before <change-name>_spec.md is created.
Interview and Research
Interview for the next missing piece, not every possible detail at once. Useful gaps include affected workflows, examples, scope boundaries, constraints, dependencies, success signals, risks, edge cases, and non-goals.
Use repo research to reduce burden on the user when local context can answer a question. Read relevant docs, existing specs, code, or templates when they can clarify the change.
Do not drift into planning or implementation. Research and questions should improve the spec: what matters, what is in or out, what success looks like, and what remains unknown.
Boundaries
- Do not draft implementation steps, tasks, page structure, copy, components, or build steps during Specify.
- Do not transition to
spar-planon first contact. - Wait to create files until the user and agent have settled the folder-safe
<change-name>and high-level intent. - Default location is
specs/active/<change-name>/. - Optional notes and artifacts such as
research.mdmay live in the change folder once it exists.
Template
Before creating <change-name>_spec.md, read assets/spec.md
and use it as the template.
During Specify, fill the sections that can be honestly known from discovery.
Usually this means Summary, Problem, Scope, Out of Scope, and
Open Questions. Leave further sections empty for now:
Constraints, Success Criteria, and Decisions.
Outcomes
Specify is complete when:
- A change folder exists under
specs/active/. - The folder name is descriptive, folder-safe, and aligned with the user.
<change-name>_spec.mdexists from assets/spec.md.- The spec captures the current intent, problem, scope boundaries, and material open questions without inventing implementation detail.
Completion
When the outcomes are satisfied:
- Briefly recap the change name, scope, and main risks or unknowns.
- Ask: "Ready to turn this into an implementation plan?"
- Only start
spar-planafter the user confirms.
If any outcome is not satisfied, stay in Specify and ask the next best question or offer a few concrete directions to help the user converge.
Artifact Recap
| Artifact | In this phase |
|---|---|
<change-name>_spec.md | Intent, problem, scope boundaries, and material open questions |
| Other files in the change folder | Optional, once the folder exists |