Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 4 additions & 8 deletions docs/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -527,7 +527,7 @@ openspec templates [options]
openspec templates

# Show templates for custom schema
openspec templates --schema tdd
openspec templates --schema my-workflow

# JSON for programmatic use
openspec templates --json
Expand Down Expand Up @@ -576,10 +576,6 @@ Available schemas:
The default spec-driven development workflow
Flow: proposal → specs → design → tasks
tdd (package)
Test-driven development workflow
Flow: spec → tests → implementation → docs
my-custom (project)
Custom workflow for this project
Flow: research → proposal → tasks
Expand Down Expand Up @@ -623,9 +619,9 @@ openspec schema init <name> [options]
openspec schema init research-first

# Non-interactive with specific artifacts
openspec schema init tdd-lite \
--description "Lightweight TDD workflow" \
--artifacts "spec,tests,implementation" \
openspec schema init rapid \
--description "Rapid iteration workflow" \
--artifacts "proposal,tasks" \
--default
```

Expand Down
10 changes: 0 additions & 10 deletions docs/commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,16 +115,6 @@ AI: Created openspec/changes/add-dark-mode/
Use /opsx:continue to create it, or /opsx:ff to create all artifacts.
```

**Example with schema:**
```
You: /opsx:new write-tests --schema tdd
AI: Created openspec/changes/write-tests/
Schema: tdd
Ready to create: spec
```

**Tips:**
- Use descriptive names: `add-feature`, `fix-bug`, `refactor-module`
- Avoid generic names like `update`, `changes`, `wip`
Expand Down
10 changes: 0 additions & 10 deletions docs/concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -420,16 +420,6 @@ proposal → specs → design → tasks → implement

Best for: Most feature work where you want to agree on specs before implementation.

**tdd**

Test-driven development workflow:

```
spec → tests → implementation → docs
```

Best for: Teams practicing TDD who write tests before implementation.

### Custom Schemas

Create custom schemas for your team's workflow:
Expand Down
44 changes: 23 additions & 21 deletions docs/customization.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ Tech stack: TypeScript, React, Node.js, PostgreSQL

When OpenSpec needs a schema, it checks in this order:

1. CLI flag: `--schema tdd`
1. CLI flag: `--schema <name>`
2. Change metadata (`.openspec.yaml` in the change folder)
3. Project config (`openspec/config.yaml`)
4. Default (`spec-driven`)
Expand Down Expand Up @@ -140,9 +140,9 @@ For a completely fresh workflow:
openspec schema init research-first

# Non-interactive
openspec schema init tdd-lite \
--description "Lightweight TDD workflow" \
--artifacts "spec,tests,impl" \
openspec schema init rapid \
--description "Rapid iteration workflow" \
--artifacts "proposal,tasks" \
--default
```

Expand Down Expand Up @@ -275,33 +275,35 @@ Path: /path/to/project/openspec/schemas/my-workflow

## Examples

### Minimal TDD Workflow
### Rapid Iteration Workflow

A minimal workflow for quick iterations:

```yaml
# openspec/schemas/tdd-minimal/schema.yaml
name: tdd-minimal
# openspec/schemas/rapid/schema.yaml
name: rapid
version: 1
description: Write tests first, then implement
description: Fast iteration with minimal overhead
artifacts:
- id: tests
generates: tests.md
description: Test cases to implement
template: tests.md
- id: proposal
generates: proposal.md
description: Quick proposal
template: proposal.md
instruction: |
Define test cases for this feature.
Each test should be a clear Given/When/Then scenario.
Create a brief proposal for this change.
Focus on what and why, skip detailed specs.
requires: []
- id: impl
generates: implementation.md
description: Implementation notes
template: impl.md
requires: [tests]
- id: tasks
generates: tasks.md
description: Implementation checklist
template: tasks.md
requires: [proposal]
apply:
requires: [impl]
tracks: implementation.md
requires: [tasks]
tracks: tasks.md
```

### Adding a Review Artifact
Expand Down
4 changes: 1 addition & 3 deletions docs/migration-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -452,7 +452,7 @@ rules:
When determining which schema to use, OPSX checks in order:
1. **CLI flag**: `--schema tdd` (highest priority)
1. **CLI flag**: `--schema <name>` (highest priority)
2. **Change metadata**: `.openspec.yaml` in the change directory
3. **Project config**: `openspec/config.yaml`
4. **Default**: `spec-driven`
Expand All @@ -462,7 +462,6 @@ When determining which schema to use, OPSX checks in order:
| Schema | Artifacts | Best For |
|--------|-----------|----------|
| `spec-driven` | proposal → specs → design → tasks | Most projects |
| `tdd` | spec → tests → implementation → docs | Test-first development |

List all available schemas:

Expand Down Expand Up @@ -507,7 +506,6 @@ Restart your IDE. Skills are detected at startup.
Check that your `rules:` keys match your schema's artifact IDs:

- **spec-driven**: `proposal`, `specs`, `design`, `tasks`
- **tdd**: `spec`, `tests`, `implementation`, `docs`

Run this to see valid artifact IDs:

Expand Down
11 changes: 2 additions & 9 deletions docs/opsx.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,14 +100,14 @@ rules:
| Field | Type | Description |
|-------|------|-------------|
| `schema` | string | Default schema for new changes (e.g., `spec-driven`, `tdd`) |
| `schema` | string | Default schema for new changes (e.g., `spec-driven`) |
| `context` | string | Project context injected into all artifact instructions |
| `rules` | object | Per-artifact rules, keyed by artifact ID |

### How It Works

**Schema precedence** (highest to lowest):
1. CLI flag (`--schema tdd`)
1. CLI flag (`--schema <name>`)
2. Change metadata (`.openspec.yaml` in change directory)
3. Project config (`openspec/config.yaml`)
4. Default (`spec-driven`)
Expand All @@ -130,12 +130,6 @@ rules:
- `design` — Technical design
- `tasks` — Implementation tasks

**tdd**:
- `spec` — Feature specification
- `tests` — Test file
- `implementation` — Implementation code
- `docs` — Documentation

### Config Validation

- Unknown artifact IDs in `rules` generate warnings
Expand Down Expand Up @@ -618,7 +612,6 @@ artifacts:
Schemas define what artifacts exist and their dependencies. Currently available:

- **spec-driven** (default): proposal → specs → design → tasks
- **tdd**: tests → implementation → docs

```bash
# List available schemas
Expand Down
Loading
Loading