write-spec

Formalize accepted ADRs into implementation specifications with interface boundaries and data structures.

2|Updated Mar 26, 2026
One-click install
npx skills add https://github.com/oakoss/oakterm --skill write-spec-oakoss
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: write-spec
Source: https://github.com/oakoss/oakterm/tree/main/.claude/skills/write-spec
Command: npx skills add https://github.com/oakoss/oakterm --skill write-spec-oakoss

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill bridges the gap between high-level architectural decisions and concrete implementation by formalizing ambiguous requirements into rigorous, testable specifications.

Core Features & Use Cases

  • Contract Formalization: Converts accepted ADRs into precise interface definitions, wire protocols, and data formats.
  • Boundary Definition: Identifies and isolates bounded concerns to ensure modular, maintainable system architecture.
  • Rigor Verification: Provides a structured checklist to eliminate hand-waving, ensuring every type, error case, and constraint is explicitly defined before coding begins.

Quick Start

Use the write-spec skill to generate a formal implementation specification based on the accepted ADR-0001 regarding the new plugin architecture.

Frequently Asked Questions about write-spec

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert an ADR into a formal implementation specification?

To convert an ADR into a formal implementation specification, you formalize architectural decisions into concrete interface boundaries, data structures, and behavioral constraints. This process validates type definitions and error handling against project templates.

What is the best way to formalize ambiguous architectural decisions into testable specs?

Formalizing ambiguous architectural decisions into testable specs involves defining exact interface boundaries, wire protocols, and data formats. It isolates bounded concerns to ensure modular architecture and uses a checklist to eliminate hand-waving.

How do I define interface boundaries and data structures from accepted idea documents?

Defining interface boundaries and data structures from accepted idea documents requires transforming them into structured documentation. This specifies exact behavioral constraints and validates technical rigor for complex system components.

Does this specification approach work for validating type definitions and error handling?

Yes, this specification approach works for validating type definitions and error handling. It ensures technical rigor by checking these elements against project-specific templates to eliminate hand-waving before coding begins.

When do I need to formalize architectural decisions into implementation specs?

You need to formalize architectural decisions into implementation specs when bridging the gap between high-level architecture and concrete implementation. It is required to produce rigorous, testable specifications for complex system components.