How this skill is triggered — by the user, by Claude, or both
Slash command
/sf:specThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Creates specifications with intelligent clarification.
Creates specifications with intelligent clarification.
/sf:spec [REQUIREMENTS]
git branch --show-current 2>/dev/nullgit log --oneline -5 2>/dev/nullgit status --short 2>/dev/null | head -20If requirements are vague (< 15 words or unclear), use the AskUserQuestion tool to gather missing context. Do NOT output questions as plain text — always use the tool so execution pauses for the user's answer.
Questions to consider asking:
Claude Code will use .claude/.sf/ as the working directory.
Command-level logic:
If .claude/.sf/spec.md exists:
Use AskUserQuestion tool: "Existing spec found. What would you like to do?"
Options: "Update existing" / "Create new"
If user chooses update: Write "update" to .claude/.sf/mode
If user chooses new: Write "new" to .claude/.sf/mode
Else:
Write "first" to .claude/.sf/mode
After directory setup and clarification (if needed), run agents:
Pre-execution:
Batch 1 (Parallel):
Batch 2:
${CLAUDE_SKILL_DIR}/spec-template.mdOutput: $SF_DIR/spec.md (direct file or symlink to timestamped spec)
If any agent fails:
npx claudepluginhub bitcraft-apps/spec-firstTransforms project briefs into structured testable specifications with user stories, acceptance criteria, functional/non-functional requirements, technical constraints, and out-of-scope items. Use after brainstorming for implementation planning.
Generates or refines a project spec from a free-form request, PRD, or reviewer findings. Produces an immutable contract for downstream agents.