Spec-driven SDLC skills for AI coding agents — Claude Code, Cursor, Windsurf, Gemini CLI
Project description
ai-sdlc-kit
Spec-driven SDLC skills that make AI coding agents work like real engineers.
What is it?
ai-sdlc-kit installs a set of skills for Claude Code, Cursor, Windsurf, and Gemini CLI that take an agent through a real engineering workflow instead of one-shot code generation:
understand → decide → plan in verifiable steps → build with checks after every step → gate → ship
| Skill | Does |
|---|---|
sdlc-init |
One-time setup: project facts + the code-craft rulebook (.sdlc/CRAFT.md) |
roadmap |
Splits a PRD into ordered, shippable features |
spec |
Plans one feature: decisions, tasks with contracts + verify commands |
build |
Executes the spec task-by-task, verifying after every step |
qa |
Re-runs verifies + acceptance checks; failures become fix-tasks |
ship |
Branch guard, staged commit built from the spec — never pushes |
architecture-diagram |
Renders a self-contained HTML/SVG architecture diagram |
Install
pip install ai-sdlc-kit
# or: uv tool install ai-sdlc-kit
Use
ai-sdlc install --agent claude # or cursor / windsurf / gemini / all
This copies the skills into your agent's skills directory. They then appear as slash commands: /sdlc-init, /roadmap, /spec, /build, /qa, /ship.
| Flag | Effect |
|---|---|
--agent all |
install for every supported agent at once |
--target PATH |
install into a specific project directory (default: .) |
--global |
install into your home directory instead of a project |
--force |
overwrite existing skill folders |
ai-sdlc list # see bundled skills
ai-sdlc --version # print the installed version
Getting started
Every project starts with /sdlc-init — run it once, in your agent, inside your project folder. It writes .sdlc/PROJECT.md (project facts + commands), .sdlc/CRAFT.md (the code rulebook: pinned stack versions with modern-idiom rules, folder structure, coding style, config & security rules — every build follows it), and .sdlc/STATE.md (feature tracker). It works two ways:
- New project —
/sdlc-init <path-to-your-PRD-or-description>. It reads the doc and asks a few multiple-choice questions to fill any gaps (framework, DB, test runner, etc.). - Existing codebase —
/sdlc-initwith no argument. It detects your stack and rules from lockfiles, manifests, and a handful of source files instead of asking you to describe it.
Either way you choose how the rules are set — provide your own, answer questions, or let the agent propose best practices — and it always shows you the stack and rules for approval before writing anything.
From there, pick the path that matches what you're doing:
| Situation | Commands |
|---|---|
| Building a whole project from a PRD | /sdlc-init <PRD> → /roadmap <PRD> → then /spec <feature> → /build <feature> → /qa <feature> → /ship <feature> for each feature in order |
| Adding one feature to an existing codebase | /sdlc-init (skip if already run) → /spec <feature description> → /build <feature> → /qa <feature> → /ship <feature> |
| Something else — bugfix, refactor, exploration | Skills are for planned feature work; for anything smaller just talk to your agent directly |
/roadmap only makes sense for a whole project — it turns a PRD into an ordered feature list. For a single feature, skip straight to /spec.
The /build → /qa → /build loop is self-healing: QA never edits code, it appends fix-tasks to the spec, and /build executes them like any other task. /ship commits once QA passes — it never pushes.
Changelog
-
0.1.4— code-craft rulebook:.sdlc/CRAFT.mdpins stack versions + modern idioms, enforces folder structure (one concern per file), env-based config with.env.example, and a security baseline across/spec,/build,/qa -
0.1.3— added a Getting started section: how to actually invoke the skills for a new project, an existing codebase, or a single feature -
0.1.2— automated PyPI releases via GitHub Actions trusted publishing -
0.1.1— cleaner README, professional package presentation -
0.1.0— initial release: 6 core skills + architecture-diagram, pip-installable CLI
Related prior art: github/spec-kit.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ai_sdlc_kit-0.1.4.tar.gz.
File metadata
- Download URL: ai_sdlc_kit-0.1.4.tar.gz
- Upload date:
- Size: 21.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6ea3c0bb41aa441c9e81ceda54e519202279d1df438e53ebd15c9d796b081e9
|
|
| MD5 |
88057773caa183a6f27de25262c71561
|
|
| BLAKE2b-256 |
8561f21e34f94570c566e78cb7a2b019e943cc3f9f6d9d3099c62d380cbe8a37
|
Provenance
The following attestation bundles were made for ai_sdlc_kit-0.1.4.tar.gz:
Publisher:
publish.yml on xajeel/AI-SDLC
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ai_sdlc_kit-0.1.4.tar.gz -
Subject digest:
b6ea3c0bb41aa441c9e81ceda54e519202279d1df438e53ebd15c9d796b081e9 - Sigstore transparency entry: 2151688296
- Sigstore integration time:
-
Permalink:
xajeel/AI-SDLC@419350dcfc6b2182617b12f1e6dfddacc59d9b64 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/xajeel
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@419350dcfc6b2182617b12f1e6dfddacc59d9b64 -
Trigger Event:
release
-
Statement type:
File details
Details for the file ai_sdlc_kit-0.1.4-py3-none-any.whl.
File metadata
- Download URL: ai_sdlc_kit-0.1.4-py3-none-any.whl
- Upload date:
- Size: 26.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af928b26d7ba528aeec9e61acc391dea319cfc98e4dc57bb0b42abb538ce0e91
|
|
| MD5 |
cd2dd8d52554cd94f3c75fc0800f2c2a
|
|
| BLAKE2b-256 |
137983bf1e38471945a8881a81d858dffd60489405388a1de8f90e96374e332a
|
Provenance
The following attestation bundles were made for ai_sdlc_kit-0.1.4-py3-none-any.whl:
Publisher:
publish.yml on xajeel/AI-SDLC
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ai_sdlc_kit-0.1.4-py3-none-any.whl -
Subject digest:
af928b26d7ba528aeec9e61acc391dea319cfc98e4dc57bb0b42abb538ce0e91 - Sigstore transparency entry: 2151688416
- Sigstore integration time:
-
Permalink:
xajeel/AI-SDLC@419350dcfc6b2182617b12f1e6dfddacc59d9b64 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/xajeel
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@419350dcfc6b2182617b12f1e6dfddacc59d9b64 -
Trigger Event:
release
-
Statement type: