.codex/skills/gwt-plan-spec/SKILL.md
Use when a SPEC exists and the next task is to generate or refresh implementation planning artifacts such as plan.md and tasks.md.
npx skillsauth add akiojin/gwt gwt-plan-specInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Unified planning skill that translates a clarified spec.md into implementation-ready
artifacts through four sequential phases: technical context, architecture design,
task decomposition, and quality gate.
Covers planning, task decomposition, and pre-implementation quality-gate work
behind the visible gwt-plan-spec entrypoint.
gwt-plan-spec SPEC-<id> — full pipeline from spec.md to quality gategwt-plan-spec without a SPEC — produce a plan.md and tasks.md in the
current working context (no spec.md required, skip traceability checks)spec.md has critical [NEEDS CLARIFICATION] markers, use gwt-discussion first.gwt-discussion to create it first.spec.md from the target SPEC directory (or a user-provided description in lightweight mode).gwt/memory/constitution.mdAll artifacts are written to the SPEC directory (specs/SPEC-<id>/):
plan.md — architecture, phases, constitution checkresearch.md — unknowns, tradeoff decisions, external findingsdata-model.md — entities, shapes, lifecycle, invariantsquickstart.md — minimum validation flow for reviewers and implementerscontracts/* — interface or schema contracts (only when needed)tasks.md — executable work items with test-first orderingUse the current user's language for generated artifact text, quality-gate reports, and any user-facing planning summaries unless the artifact already has an established language that must be preserved.
Establish the implementation landscape before designing.
Load source artifacts. Read spec.md and .gwt/memory/constitution.md.
Refuse to continue only when spec.md is missing or a user decision still blocks planning.
Identify affected scope. List files, modules, services, and external constraints that the work touches. Record assumptions explicitly.
Run the constitution check. Evaluate the work against every rule in
.gwt/memory/constitution.md. If a rule is violated, either redesign or record the
justification in Complexity Tracking.
Answer the Required Plan Gates from the constitution:
Design the solution using Software Design Document methodology before decomposing tasks.
See
references/sdd-design.mdfor full methodology.
Component design. Identify new and modified components, their responsibilities, and ownership boundaries. Keep the design minimal — no unnecessary abstractions.
Interface contracts. Define public APIs, message formats, and protocol boundaries
between components. Write stable contracts to contracts/* when interfaces cross
module or crate boundaries.
Data model. Document entities, their shapes, lifecycle states, and invariants.
Write to data-model.md.
Sequence descriptions. Describe key interaction flows in plain text — which component calls what, in what order, with what data. No diagram syntax required; clarity and completeness matter.
Produce supporting artifacts.
research.md: unknowns, tradeoff decisions, external findingsquickstart.md: minimum validation flow for reviewers and implementersWrite plan.md. Structure:
Turn the architecture and plan into executable work items.
See
references/task-decomposition.mdfor full rules.
Lay out phase order. Canonical ordering:
US1, US2, ...) — story-specific implementationGenerate test-first tasks. For each user story:
Add implementation tasks. Each task must include:
T-NNN format[P] marker when parallelizable (only when write scopes do not overlap)Validate traceability.
Write tasks.md.
Final readiness check before implementation. This is a pre-implementation gate only — it does not certify that implementation is complete.
See
references/quality-gate.mdfor full check definitions.
[NEEDS CLARIFICATION] markers remain## <Analysis Report in the current user's language>: SPEC-<id>
Status: CLEAR | AUTO-FIXABLE | NEEDS-DECISION
Blocking items:
- A1. <artifact gap>
- A2. <traceability gap>
Next:
- gwt-build-spec (on CLEAR)
- self-repair and rerun (on AUTO-FIXABLE)
- ask user for decision (on NEEDS-DECISION)
Decision rule:
gwt-build-specBoundary: CLEAR means artifacts are ready for execution. It does not mean the SPEC is
complete — completion requires post-implementation reconciliation in gwt-build-spec.
On CLEAR verdict, suggest proceeding to gwt-build-spec for implementation.
When invoked without a SPEC:
.gwt/memory/constitution.md is not foundplan.md and tasks.md in the current directoryUse .claude/scripts/spec_artifact.py for artifact persistence:
# Write plan.md
python3 ".claude/scripts/spec_artifact.py" \
--repo "." \
--spec "<id>" \
--upsert \
--artifact "doc:plan.md" \
--body-file /tmp/plan.md
# Write research.md
python3 ".claude/scripts/spec_artifact.py" \
--repo "." \
--spec "<id>" \
--upsert \
--artifact "doc:research.md" \
--body-file /tmp/research.md
# Write data-model.md
python3 ".claude/scripts/spec_artifact.py" \
--repo "." \
--spec "<id>" \
--upsert \
--artifact "doc:data-model.md" \
--body-file /tmp/data-model.md
# Write quickstart.md
python3 ".claude/scripts/spec_artifact.py" \
--repo "." \
--spec "<id>" \
--upsert \
--artifact "doc:quickstart.md" \
--body-file /tmp/quickstart.md
# Write tasks.md
python3 ".claude/scripts/spec_artifact.py" \
--repo "." \
--spec "<id>" \
--upsert \
--artifact "doc:tasks.md" \
--body-file /tmp/tasks.md
# List artifacts
python3 ".claude/scripts/spec_artifact.py" \
--repo "." \
--spec "<id>" \
--list
tools
Create distinctive, production-grade terminal user interfaces. Use when building TUI components with ratatui, CLI output styling, or xterm.js terminal rendering. Triggers: 'design TUI', 'terminal UI', 'TUIデザイン', 'ターミナルUI', 'ratatui widget'
testing
Semantic search over SPEC Issues (GitHub Issue cache at ~/.gwt/cache/issues/) using vector embeddings. Use when searching for existing specs, finding related specs, checking for duplicate specs, or determining which spec owns a scope. Mandatory preflight before gwt-discussion when the work may need a SPEC owner. Use when user says 'search specs', 'find related specs', 'check for duplicate specs', or asks which spec owns a scope.
testing
Mandatory preflight before gwt-discussion, gwt-register-issue, and gwt-fix-issue. Use proactively before creating any SPEC or Issue owner or before reusing an existing one. Searches SPEC Issues, GitHub Issues, and project files via ChromaDB. Triggers: 'search', 'find related', 'check duplicates'.
business
Use when the user wants to register new work from a bug report, idea, or task description and an existing GitHub Issue number is not already known.