一键导入
specify
Trigger: transform a task into implementation-ready specs. Gherkin-first. Produces spec files in openspec/specs/<task-slug>/.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Trigger: transform a task into implementation-ready specs. Gherkin-first. Produces spec files in openspec/specs/<task-slug>/.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Trigger: detect and install project-specific skills using autoskills. Scans the project, shows what would be installed, asks for confirmation, installs to .agents/skills/, and updates the skill registry.
Trigger: post-implementation review, adversarial diff review, pre-PR check. Runs a fresh-context adversarial review of implemented changes.
Trigger: decomposing a debate summary into tasks. Produces PROJECT-TASKS.md and individual task files in openspec/tasks/.
Trigger: exploring requirements, defining ideas, or starting a feature from scratch. Runs a Socratic debate session and produces a structured debate-summary in openspec/debate/.
Trigger: UI/UX design work in Google Stitch. Follows plan → approval → execution model. Never creates or modifies Stitch artifacts without explicit user approval.
Trigger: execute a technical plan from openspec/plans/. Strict TDD (RED→GREEN→TRIANGULATE→REFACTOR) with TPP enforcement: always use the lowest-complexity transformation the test requires. At least 2 adversarial triangulation scenarios per behavior unit.
| name | specify |
| description | Trigger: transform a task into implementation-ready specs. Gherkin-first. Produces spec files in openspec/specs/<task-slug>/. |
Transform a single task file into one or more implementation-ready specification documents.
debate → breakdown → [specify] → plannify → implement → review
You operate at the spec layer. You consume tasks and produce implementation contracts. You do not handle planning, orchestration, agent assignment, or repository structure decisions.
A task file at openspec/tasks/NNN-<task-slug>.md, or a file path / @ reference.
Process only one task at a time. If multiple tasks are provided, process the first and say so.
Before specifying, verify the task file contains these fields. If any is absent or empty, return invalid-task with a description of what's missing:
Intent: must be non-emptyIn Scope: must list at least one itemAcceptance Criteria: must have at least one testable criterionDependencies.Requires: must be present (can be "None")Read the Spec Breadth Hint field from the task and use it as the primary signal for splitting:
simple: single-spec output is the default. Still split if you find genuinely independent units, but do not search for splits actively.medium: evaluate splitting. If the task has 2 or more logically separable concerns that can be independently verified, split. If not, a single spec is fine.broad: splitting is expected. You must identify the independent units and justify in the output summary why you chose to split or not. A single spec for a broad task requires explicit justification.If the task's Open Decisions field is non-empty (i.e., not None), the spec must be in state needs-answers.
Each open decision in the task translates to one entry in the spec's Unresolved Questions section, with a concrete explanation of why that decision blocks implementation or verification.
You must NOT:
When information is missing: identify exactly what's missing, formulate a specific question, and mark the spec as needs-answers.
Split into multiple specs when:
Keep as a single spec when:
Every spec must have exactly one state:
ready: valid Gherkin scenarios covering happy path/edge/failure, no unresolved questions, all dependencies identifiedneeds-answers: missing product or technical decisions; Unresolved Questions section lists every blockerblocked-by-dependency: fully specified but cannot be implemented until another task/spec completesinvalid-task: input task is too vague, duplicative, or non-actionable for spec productionGherkin is the primary acceptance contract. A spec cannot be ready without valid Gherkin.
ready)Omit a category only when it genuinely doesn't exist for the behavior. Justify omissions explicitly. If uncertainty causes the omission, the spec must be needs-answers.
Feature: <behavior contract name>
Scenario: Happy path - <main successful outcome>
Given <relevant initial context>
When <clear action or event>
Then <specific, observable, verifiable outcome>
Scenario: Edge case - <boundary or valid variation>
Given <specific boundary context>
When <action>
Then <observable result>
Scenario: Failure case - <invalid or blocked condition>
Given <invalid, missing, or conflicting condition>
When <action is attempted>
Then <observable failure or rejection result>
# Spec: <title>
- **Source Task**: <task filename>
- **State**: <ready | needs-answers | blocked-by-dependency | invalid-task>
## Scope
<What this spec covers. Precise boundaries — what is included and what is explicitly excluded.>
## Requirements
- <Concrete, implementable requirement>
- <Requirement 2>
## Acceptance Criteria
\`\`\`gherkin
Feature: <behavior contract name>
...
\`\`\`
<If a taxonomy category is omitted, justify the omission here.>
## Technical Dependencies
- <Dependency, or "None">
## Unresolved Questions
<Only when state is `needs-answers`.>
- **Q1**: <question>
- _Why it matters_: <how this blocks implementation or verification>
## Blocking Dependency
<Only when state is `blocked-by-dependency`.>
- **Blocked by**: <task/spec reference>
- **Reason**: <why this must complete first>
## Invalid Reason
<Only when state is `invalid-task`. Explain and say what should be done instead.>
openspec/specs/<task-slug>/spec-01-<spec-slug>.md
openspec/specs/<task-slug>/spec-02-<spec-slug>.md
task-slug is derived from the task filename (e.g., 01-auth-flow from 01-auth-flow.md).
openspec/specs/ and the task subdirectory if they don't exist.-old-<timestamp>.md suffix if content differs.After generating specs, report:
plannify; needs-answers → list questions; blocked → identify blocker)