Skip to content

One extension

Samy K. Abushanab edited this page Nov 6, 2026 · 1 revision

Published from docs/scenarios/one-extension.md at 835522e. Edit the source in the repository, not this page.

Goal: add one Sanduq process to a Spec Kit project. The example adds Illustrate and asks for a diagram from the active feature.

An extension adds versioned commands and, often, hooks that run at a Spec Kit phase. Every Sanduq extension except Scope is standalone: it works without Workflow.

Prerequisites

Install

specify extension add illustrate

Choose a different extension from the extension pages. If it requires another extension, add that one first, or let deps.py ensure offer to add it.

First prompt

Claude Code
/speckit-illustrate-generate Create a state diagram of refund request, approval, rejection and settlement from specs/412-refund-approval.
Codex
$speckit-illustrate-generate Create a state diagram of refund request, approval, rejection and settlement from specs/412-refund-approval.

What you will see

An editable HTML diagram in the project theme. Illustrate has no hooks, so it runs only when you ask.

Extensions with hooks behave differently. Assure, User Manual, PR and Project declare optional hooks: the host asks before it runs them. Assure and Project have an init command that can make their hooks mandatory. See the hooks reference.

Next step

Add a second process, such as QA or a manual, with pick your extensions.

Who enforces dependencies

Spec Kit does not install requires.extensions. Assure, PR and User Manual run deps.py ensure before they use Illustrate. It follows .specify/extension-dependencies.yml: prompt (the default) asks you, auto installs, and manual stops.

Limits

  • Scope is not standalone. It requires Workflow.
  • Installing an extension does not enable its process. Run its init command when it has one.

Clone this wiki locally