Installation¶
The V-Model Extension Pack can be installed in three ways depending on your use case. All methods take under five minutes.
Install the Extension¶
Method 1: From the Catalog¶
Coming soon
Catalog installation will be available once Spec Kit's extension catalog launches. Use Method 2 or 3 in the meantime.
Method 2: From a GitHub Release¶
Install a specific release directly from GitHub:
specify extension add v-model \
--from https://github.com/leocamello/spec-kit-v-model/archive/refs/tags/v0.5.0.zip
Pinning a version
Replace v0.5.0 in the URL with the release tag you want. Pinning ensures reproducible builds across your team.
Method 3: From a Local Directory (Development)¶
Clone the repository, then install in development mode:
Development mode
The --dev flag creates a symlink instead of copying files. Changes you make to the extension source are immediately available — no reinstall needed.
Verify Installation¶
Confirm the extension is installed and recognized:
You should see v-model in the output with version 0.5.0 (or whichever version you installed).
Optional Configuration¶
Domain Configuration¶
The V-Model Extension Pack works out of the box for non-regulated projects. If you're working in a safety-critical domain, create a v-model-config.yml file in your repository root to enable additional regulatory sections.
Available Domains¶
| Value | Standard | What It Enables |
|---|---|---|
"" (empty) |
None | Default — clean output with no safety-critical sections |
iso_26262 |
ISO 26262 (Automotive) | FFI analysis, ASIL decomposition, MC/DC coverage targets, MISRA/CERT-C annotations |
do_178c |
DO-178C (Aerospace) | FFI analysis, temporal constraints, MC/DC coverage targets, single entry/exit enforcement |
iec_62304 |
IEC 62304 (Medical Devices) | FFI analysis, ASIL decomposition, MC/DC coverage targets, complexity limits |
What Each Domain Adds¶
When a domain is set, V-Model commands generate additional safety-critical sections at every level of the V:
- System Design — Freedom from Interference (FFI) analysis and restricted complexity
- System Test — Structural coverage (MC/DC) targets and resource usage testing (WCET, stack, heap)
- Architecture Design — ASIL/DAL decomposition and defensive programming requirements
- Integration Test — SIL/HIL compatibility scenarios and resource contention testing
- Module Design — Cyclomatic complexity limits (≤ 10), memory management constraints, and coding standard annotations
- Unit Test — MC/DC coverage and variable-level fault injection
Choosing a domain is a project-level decision
The v-model-config.yml file should be committed to version control. Changing the domain mid-project will affect all subsequently generated artifacts. Use the /speckit.v-model.impact-analysis command to assess the blast radius of any configuration change.
Example: Automotive Project¶
This single line adds ISO 26262-specific sections to every V-Model command output — no other configuration needed.
Next Steps¶
You're installed and configured. Time to build something: