Best use case
tech-spec-status is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Show Tech Spec details or update status through lifecycle
Teams using tech-spec-status should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/tech-spec-status/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How tech-spec-status Compares
| Feature / Agent | tech-spec-status | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Show Tech Spec details or update status through lifecycle
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# tech-spec-status
**Category**: Technical Architecture
## Usage
```bash
/tech-spec-status <spec-id> [options]
```
## Arguments
- `<spec-id>`: Required - Tech Spec identifier (e.g., TS-0042 or just 0042)
## Options
| Option | Description |
|--------|-------------|
| `--set <status>` | Transition to new status |
| `--link-rfc <RFC-XXXX>` | Link to an RFC |
## Valid Statuses
- `DRAFT` - Being written
- `APPROVED` - Ready for implementation
- `REFERENCE` - Implementation complete
- `ARCHIVED` - Superseded or deprecated
## Execution Instructions
### View Status (no --set)
When viewing a Tech Spec:
1. **Find the Spec file**
- Search all `tech-specs/` subdirectories
- Match by Spec ID in filename or frontmatter
2. **Display Spec Details**
```
TS-0042: Payment Gateway Integration
======================================
Status: APPROVED
Author: Jane Doe
Created: 2025-12-01
Updated: 2025-12-05
RFC Link: RFC-0042
Location: tech-specs/approved/TS-0042-payment-gateway-integration.md
Summary:
[First 2-3 sentences of the Executive Summary]
Valid Transitions:
→ REFERENCE (implementation complete)
→ ARCHIVED (superseded or deprecated)
Commands:
/tech-spec-status TS-0042 --set REFERENCE
```
### Update Status (with --set)
When updating status:
1. **Validate Transition**
Valid transitions:
| From | To |
|------|-----|
| DRAFT | APPROVED |
| APPROVED | REFERENCE, ARCHIVED |
| REFERENCE | ARCHIVED |
2. **Perform Pre-transition Checks**
For DRAFT → APPROVED:
- Check all required sections are complete
- Warn if placeholders remain
- Suggest running checklist
For APPROVED → REFERENCE:
- Ask for implementation link (repo, PR)
- Ask about deviations from spec
For any → ARCHIVED:
- Prompt for archive reason
- Ask for link to replacement spec (if superseded)
3. **Update Spec File**
- Update `status` in frontmatter
- Update `last_updated` to today
- Add `archive_date` if archiving
- Add `archive_reason` if archiving
4. **Move File to Correct Directory**
| Status | Directory |
|--------|-----------|
| DRAFT | `tech-specs/draft/` |
| APPROVED | `tech-specs/approved/` |
| REFERENCE | `tech-specs/reference/` |
| ARCHIVED | `tech-specs/archive/YYYY/` |
5. **Confirm Update**
```
TS-0042 status updated: APPROVED → REFERENCE
Updated:
- Status: REFERENCE
- Location: tech-specs/reference/TS-0042-payment-gateway-integration.md
The spec now serves as reference documentation for the implementation.
```
## RFC Linking
Add or update RFC link:
```bash
/tech-spec-status TS-0042 --link-rfc RFC-0042
```
This updates the `decision_ref` field in the spec's frontmatter.
## Example Usage
```bash
# View spec details
/tech-spec-status TS-0042
# Mark as approved (ready for implementation)
/tech-spec-status TS-0042 --set APPROVED
# Mark as reference (implementation complete)
/tech-spec-status TS-0042 --set REFERENCE
# Archive (superseded)
/tech-spec-status TS-0042 --set ARCHIVED
# Link to RFC
/tech-spec-status TS-0042 --link-rfc RFC-0042
```
## Error Handling
- If spec not found, show search suggestions
- If invalid transition, show valid options
- If file move fails, show manual instructions
- Preserve git history when moving files (use `git mv`)
## Lifecycle Summary
```
DRAFT ─────────────▶ APPROVED
(writing) (ready)
│
▼
REFERENCE
(implemented)
│
▼
ARCHIVED
(deprecated)
```Related Skills
prd-status
Check and update PRD status through lifecycle
network-inspection
Use when debugging API calls, checking network requests, inspecting HTTP traffic, finding failed requests, analyzing response data, or investigating API errors. Provides detailed request/response analysis.
technical-specification
Technical specification writing for implementation details. Use when documenting how to build a solution (post-decision), API contracts, schemas, and system design. Complements RFC skill which handles decision-making.
rfc-status
Show RFC details or update RFC status through lifecycle
rfc-specification
RFC (Request for Comments) specification writing with objective technical analysis. Use when creating technical specifications, design documents, or architecture proposals that require structured evaluation of options and trade-offs.
list-tech-specs
List all Technical Specifications with status and metadata
create-tech-spec
Create a new Technical Specification for implementation details
zod
Zod schema validation patterns and type inference. Auto-loads when validating schemas, parsing data, validating forms, checking types at runtime, or using z.object/z.string/z.infer in TypeScript.
typescript-import-style
Merge-friendly import formatting (one-per-line, alphabetical). Auto-loads when writing TypeScript/JavaScript imports to minimize merge conflicts in parallel development. Enforces consistent grouping and sorting.
setup-mcp-auth
Configure authentication for an existing FastMCP server
fastmcp
FastMCP TypeScript framework patterns for MCP servers. Auto-loads when building MCP servers, creating tools/resources/prompts, implementing authentication, configuring transports, or working with FastMCP in TypeScript.
add-mcp-tool
Add a new tool to an existing FastMCP server with guided configuration