speckit-companion-after-specify

Writes the current spec-kit pipeline step into .spec-context.json for the Companion GUI.

1|Updated Nov 21, 2020
One-click install
npx skills add https://github.com/LuanDopke/persefone --skill speckit-companion-after-specify-luandopke
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: speckit-companion-after-specify
Source: https://github.com/LuanDopke/persefone/tree/main/.agents/skills/speckit-companion-after-specify
Command: npx skills add https://github.com/LuanDopke/persefone --skill speckit-companion-after-specify-luandopke

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When working with spec-kit pipelines, the Companion GUI needs to know which step the active feature is on. This Skill captures the specify step state into .spec-context.json so the GUI re-renders with the correct step and status, without manual file editing. ## Core Features & Use Cases - State Capture Hook: Runs as the after_specify lifecycle hook, writing currentStep=specify and status=specified into the active feature's .spec-context.json. - Automatic Feature Resolution: Resolves the active feature directory via --feature-dir, environment variables, .specify/feature.json, or the current git branch prefix. - Graceful Degradation: Never fails the host command — skips with a warning if python3 is missing or the feature directory cannot be resolved. - Use Case: After running /speckit.specify to create a new feature spec, this hook automatically records the step so the SpecKit Companion GUI displays the correct pipeline position. ## Quick Start Run the after-specify hook to record the current spec-kit step into .spec-context.json for the active feature.

Frequently Asked Questions about speckit-companion-after-specify

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I record the spec-kit specify step for the Companion GUI?▼

Run the write-context.py script from the repository root with --step specify --status specified --by extension. The script resolves the active feature directory automatically and updates its .spec-context.json atomically.

How does the script resolve the active feature directory?▼

Resolution follows a fixed order: the --feature-dir flag, then SPECIFY_FEATURE_DIRECTORY env, then SPECIFY_FEATURE env, then .specify/feature.json, and finally the current git branch prefix. Passing --feature-dir explicitly makes resolution unambiguous.

What happens if python3 is not installed when the hook runs?▼

The hook prints a warning that python3 was not detected and skips the .spec-context.json capture. It never fails the host command, so the main /speckit.specify workflow continues unaffected.

Does this hook create the spec directory or spec files?▼

No. This command is state-writing only. The spec directory and files are created by the core /speckit.specify workflow; this hook only records the pipeline step and status into .spec-context.json.

Is the .spec-context.json write safe against corruption?▼

Yes. The write is atomic, using a temporary file followed by a rename. It also appends to the canonical history[] array without rewriting existing entries.