create-tech-spec

Create a new Technical Specification for implementation details

9 stars

Best use case

create-tech-spec is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create a new Technical Specification for implementation details

Teams using create-tech-spec 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

$curl -o ~/.claude/skills/create-tech-spec/SKILL.md --create-dirs "https://raw.githubusercontent.com/jpoutrin/product-forge/main/plugins/devops-data/skills/create-tech-spec/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/create-tech-spec/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How create-tech-spec Compares

Feature / Agentcreate-tech-specStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create a new Technical Specification for implementation details

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

# create-tech-spec

**Category**: Technical Architecture

## Usage

```bash
/create-tech-spec <spec-title> [--rfc RFC-XXXX]
```

## Arguments

- `<spec-title>`: Required - Descriptive title for the Tech Spec (will be kebab-cased for filename)
- `--rfc RFC-XXXX`: Optional - Link to RFC that this spec implements

## Execution Instructions

When this command is run, Claude Code should:

1. **Determine Tech Spec Number**
   - Scan `tech-specs/` directory (all subdirectories) for existing files
   - Find highest TS-XXXX number
   - Increment by 1 for new spec
   - If no specs exist, start with TS-0001

2. **Create Directory Structure** (if not exists)
   ```
   tech-specs/
   ├── draft/
   ├── approved/
   ├── reference/
   └── archive/
       └── YYYY/
   ```

3. **Generate Tech Spec File**
   - Convert title to kebab-case: "User Authentication API" → "user-authentication-api"
   - Create file: `tech-specs/draft/TS-XXXX-<kebab-title>.md`
   - Use template from skill references

4. **Populate Metadata**
   - Set `tech_spec_id` to new number
   - Set `title` from argument
   - Set `status` to DRAFT
   - Set `decision_ref` to RFC if provided
   - Set `created` and `last_updated` to today's date
   - Leave `author` for user to fill

5. **If RFC provided, validate and link**
   - Check RFC exists
   - Add link in metadata
   - Suggest copying relevant technical details from RFC

6. **Confirm Creation**
   ```
   Created TS-XXXX: <title>

   Location: tech-specs/draft/TS-XXXX-<kebab-title>.md
   Status: DRAFT
   RFC Link: RFC-XXXX (if provided)

   Next steps:
   1. Fill in the Executive Summary
   2. Document the Design Overview with architecture diagram
   3. Complete API and Data Model sections
   4. When ready: /tech-spec-status TS-XXXX --set APPROVED
   ```

## Template Reference

Use the template from:
`plugins/devops-data/skills/technical-specification/references/tech-spec-template.md`

## Example Usage

```bash
# Standalone tech spec
/create-tech-spec User Authentication API

# Tech spec implementing an RFC
/create-tech-spec Payment Gateway Integration --rfc RFC-0042
```

Creates:
- `tech-specs/draft/TS-0001-user-authentication-api.md`
- `tech-specs/draft/TS-0002-payment-gateway-integration.md`

## Validation

- Title must be provided (not empty)
- Title should be 2-6 words for clarity
- If RFC provided, verify it exists and is APPROVED
- Warn if similar Tech Spec already exists

## Error Handling

- If `tech-specs/` directory doesn't exist, create it with full structure
- If title is empty, prompt user for title
- If RFC not found, warn but allow creation
- If similar spec exists, ask for confirmation

Related Skills

network-inspection

9
from jpoutrin/product-forge

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.

create-qa-test

9
from jpoutrin/product-forge

Create a new QA test procedure for a feature

create-prd

9
from jpoutrin/product-forge

Interactive PRD creation wizard with comprehensive question flow

create-prd-feature

9
from jpoutrin/product-forge

Create a feature-specific PRD (FRD) for individual features

create-persona

9
from jpoutrin/product-forge

Create detailed user persona with guided questions

technical-specification

9
from jpoutrin/product-forge

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.

tech-spec-status

9
from jpoutrin/product-forge

Show Tech Spec details or update status through lifecycle

rfc-specification

9
from jpoutrin/product-forge

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

9
from jpoutrin/product-forge

List all Technical Specifications with status and metadata

create-rfc

9
from jpoutrin/product-forge

Create a new RFC (Request for Comments) technical specification

create-skill

9
from jpoutrin/product-forge

Create a new Claude Code agent skill with proper folder structure and SKILL.md format. Use when the user wants to add a model-invoked skill that Claude uses autonomously based on context. Handles skill folder creation with SKILL.md and optional reference files.

create-plugin

9
from jpoutrin/product-forge

Create a new Claude Code plugin with proper directory structure and manifest. Use when the user wants to create a new plugin from scratch. Sets up plugin.json, directory structure, and optional components.