A light-weight and straightforward system for spec-driven development with Claude Code and Codex
Getting Started β’ Why β’ How It Works β’ Documentation β’ Installation
curl -fsSL https://raw.githubusercontent.com/marconae/speq-skill/main/install.sh | bashThen open Claude Code or Codex and type /speq:mission to start.
What does the installer do?
- Downloads a pre-built
speqbinary for your platform (Linux x86_64/ARM64, macOS Apple Silicon); other platforms fall back to a source build - If building from source: installs the Rust toolchain if missing (via rustup) and builds
speq - Provisions the embedding model (
snowflake-arctic-embed-xs) into~/.cache/speq/models/for semantic search - Installs the CLI to
~/.local/bin/speq - Installs plugin files to
~/.speq-skill/ - Registers
/speq:*skills for Claude Code and Codex when available - Registers the local Codex marketplace when the Codex CLI is available
To uninstall, see Installation β Uninstall.
I want to leverage AI coding agents such as Claude Code and Codex as effective tools to write software.
There are many other spec-driven development tools out there: OpenSpec, BMAD, SpecKit...
...but I was missing the following:
- A system that is not primped on one language or framework (e.g., Python or TypeScript)
- A straightforward repeatable workflow (
plan β implement β record) - A permanent and growing spec-library
- A system that keeps the specs small to avoid context cluttering
- A system that keeps asking me instead of making assumptions
- Semantic anchors that ground AI behavior in established methodologies
So I built speq-skill.
It combines skills with a simple CLI called speq that adds a semantical search layer to the permanent spec library. The search empowers the coding agent to find the right feature or scenarios during planning, but also during the implementation. This avoids reading unnecessary specs into the context window.
New to spec-driven development? Read "Spec-driven development: an introduction" and "Writing specs for AI coding agents" on my blog.
Each skill is grounded in semantic anchors β named references to established methodologies (like London School TDD, BLUF, ADR) that steer AI behavior toward well-documented practices.
Vibe Coding does not scale. speq-skill adds the missing workflow and guardrails.
If you want to describe what you want and have a coding agent generate the code for you, then you should give speq-skill a try!
It introduces a lightweight workflow for spec-driven development. It adds a CLI to enable the coding agent to search the permanent spec library.
/speq:mission β specs/mission.md (once per project)
β
ββββββββββββββββββΌβββββββββββββββββ
βΌ βΌ βΌ
/speq:plan β /speq:implement β /speq:record (repeat)
- Mission β Do it once. The coding agent explores your codebase (or interviews you for a greenfield project) and generates
specs/mission.md. - Plan β Describe what you want. The coding agent searches existing specs, asks clarifying questions, and creates a plan with spec deltas.
- Implement β The coding agent implements the plan, guided by guardrails for code quality, testing and more.
- Record β The coding agent merges implemented spec deltas into the permanent spec library.
Specs live in specs/<domain>/<feature>/spec.md. Plans stage in specs/_plans/<plan-name>/. The separation keeps your spec library clean while work is in progress.
For autonomous pipelines use, /speq:plan-pr and /speq:implement-pr run the same cycle headlessly against a feat/<plan-name> branch and PR β see Workflow.
| Guide | Description |
|---|---|
| Installation | Setup CLI and plugin |
| Workflow | One-time mission setup, then Plan β Implement β Record cycle |
| Headless PR Pipeline | Autonomous plan/implement via a feat/ branch + PR |
| Decision Log | Design decisions, ADR fragment format, validation, and show |
| CLI Reference | All CLI commands |
| MCP Servers | Serena and Context7 |
| Semantic Anchors | Named methodologies grounding each skill |
| Model Routing | How workflow skills and sub-agents are routed across models |
speq-skill is a plugin for Claude Code, Codex, and other compatible AI coding agents. This tool provides workflow structure and spec management onlyβthe AI / coding agent generates all code, specs, or other artifacts.
This plugin uses Serena and Context7 MCP servers. The generated plugin payload declares them as a convenience β they are standard open-source servers installed from their respective repositories at runtime. Their behavior, limitations, and conditions are governed by their own documentation. Context7's MCP server connects to a cloud service with a free tier β see Context7.
The speq CLI uses snowflake-arctic-embed-xs for semantic search. The installer provisions the model files (~23MB) automatically into ~/.cache/speq/models/ (or $SPEQ_CACHE_DIR/models/ if set). Inference runs fully offline via pure-Rust BERT inference (candle) β no additional runtime or system library is required.
- The
code-revieweragent's YAGNI / Over-Engineering review category was inspired by the tag taxonomy of ponytail. - The semantic anchor approach β naming established methodologies (Clean Code, London School TDD, MECE, ADR, and others) directly in skill instructions β draws on the LLM-Coding/Semantic-Anchors catalog.
Free, open-source, and community-supported. MIT.
Build with Rust π¦ and made with β€οΈ by marconae.