SDLCKit — AI-governed SDLC lifecycle engine with SAGE loop
Project description
SDLCKit
Governed AI quality loops for every SDLC phase.
SDLCKit wraps each phase of the software development lifecycle in a SAGE loop — a governed cycle where humans declare intent, AI produces artifacts, and independent scorers review against weighted quality dimensions. The result: measurable confidence in AI-generated artifacts before they reach production.
SDLCKit is a governance layer, not an SDLC. You keep your existing process and add SDLCKit on top.
Why Governance?
AI agents can produce code, specs, and designs — but without governance, there is no measurable quality signal. SDLCKit provides that signal through four properties:
| Property | What It Means |
|---|---|
| Independent Scoring | Scorer agent is sandboxed (read-only tools). Cannot collude with producer. |
| Dimensional Confidence | Not pass/fail. N weighted dimensions scored independently (e.g., clarity 0.35, completeness 0.30). |
| Bounded Fix Loops | Max N automated iterations. Oscillation detection stops thrashing. |
| Human Gates | Two-pass: (1) deterministic structural check, (2) human quality review with scorecard. |
The SAGE Loop
Every phase — refine, architect, build, review — runs the same governed cycle:
SCOPE SAGE LOOP
+------------------+ +------------+
| User input | +--->| ANALYZE |
| Discovery output | | | Frame goal + constraints |
| Feedback signals |------>+ +-----+------+
| Prior state | | |
+------------------+ | v
| +------------+
| | GENERATE |
| | AI produces artifacts |
| +-----+------+
| |
| v
| +------------+
| | EVALUATE |
| | Independent scorer scores |
| | N weighted dimensions |
| +-----+------+
| |
| confidence < threshold?
| |
| YES: Fix Loop (target weakest dim)
| |
| NO: Human Gate
| |
| [Approve] -> advance
| [Revise] -> feedback
+----[Pause] -> save state
Quick Start
Prerequisites
- Python 3.11+
- Claude Code
Install
pip install sdlckit
Installs the latest published release. To pin a specific version:
pip install sdlckit==0.2.0
From source:
git clone https://github.com/atishio/sdlc-kit.git
cd sdlc-kit
pip install -e .
Initialize a Project
sdlckit init
Scaffolds your project: sdlc.yaml, skills, agents, templates, schemas, and the /sdlc slash command.
Run a Phase
# In Claude Code:
/sdlc refine "user onboarding feature"
The SAGE engine produces REFINE.md, scores it across weighted dimensions, runs fix loops if below threshold, then presents the human gate.
Check Status
/sdlc status
Commands
| Command | What It Does |
|---|---|
/sdlc <phase> "input" |
Run a phase with direct input |
/sdlc <phase> |
Run a phase (inputs auto-resolved from upstream) |
/sdlc <phase> amend "feedback" |
Re-enter a completed phase with feedback |
/sdlc status |
Lifecycle dashboard |
/sdlc reconcile |
Re-run stale phases after an amendment |
sdlckit init |
Scaffold a component project |
sdlckit init --type initiative |
Scaffold a multi-component initiative |
sdlckit assign <path> |
Import an assignment into a component repo |
sdlckit observe |
Create an operational observation |
sdlckit archive |
Pre-merge cleanup |
Phase commands are dynamic — a custom phase compliance in sdlc.yaml becomes /sdlc compliance.
Two Modes
Component mode (sdlc.yaml) — single project, linear phase sequence: refine -> architect -> build -> review.
Initiative mode (sdlc-initiative.yaml) — multi-component, multi-repo projects. Discovery and Delivery stages with per-component SAGE loops, stage reviews, knowledge extraction, and assignment handoffs.
Extending with Plugins
SDLCKit separates engine (how the loop runs) from domain knowledge (what the loop produces). Plugins provide richer implementations:
- Phase plugins replace built-in phases with specialized skills, agents, dimensions, and templates
- Connector plugins deliver scored artifacts to external systems (Jira, CI/CD, etc.)
See Developer Guide for plugin authoring.
Roadmap
| Feature | Target |
|---|---|
| Checkpoint / resume (crash recovery) | v0.3 |
| SAGE-wrapped knowledge extraction | v0.3 |
| Connector plugin execution | v0.3 |
auto_advance phase chaining |
v0.3 |
| Plugin registry + remote sources | Post-1.0 |
Documentation
| Guide | Audience |
|---|---|
| Consumer Guide | Users — installation, configuration, daily usage |
| Contributor Guide | Engine developers — internals, testing |
| Developer Guide | Plugin authors — skills, agents, schemas |
| Architecture Reference | All — SAGE engine, state, plugins, agents |
Development
pip install -e ".[dev]"
pytest
Contributing
Contributions welcome. See CONTRIBUTING.md for setup, standards, and PR guidelines.
Please read our Code of Conduct before participating.
License
Project details
Release history Release notifications | RSS feed
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 sdlckit-0.2.0.tar.gz.
File metadata
- Download URL: sdlckit-0.2.0.tar.gz
- Upload date:
- Size: 117.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
78d0df4b7f83ce8e13e2baea101f54ca6a356b3cbe0a69c9408f74f9bb6a60f0
|
|
| MD5 |
8f48d66e809dccb5974a04429a43f090
|
|
| BLAKE2b-256 |
849d7723a79f87ed8e3e5dc7e05e56455436bd3e2b1cd86e1b8d57a3c900c97f
|
Provenance
The following attestation bundles were made for sdlckit-0.2.0.tar.gz:
Publisher:
publish.yml on atishio/sdlc-kit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sdlckit-0.2.0.tar.gz -
Subject digest:
78d0df4b7f83ce8e13e2baea101f54ca6a356b3cbe0a69c9408f74f9bb6a60f0 - Sigstore transparency entry: 1803119546
- Sigstore integration time:
-
Permalink:
atishio/sdlc-kit@cd6df732c0c6009b7db6775613d816ceb05ff580 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/atishio
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@cd6df732c0c6009b7db6775613d816ceb05ff580 -
Trigger Event:
release
-
Statement type:
File details
Details for the file sdlckit-0.2.0-py3-none-any.whl.
File metadata
- Download URL: sdlckit-0.2.0-py3-none-any.whl
- Upload date:
- Size: 77.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 |
cc345dfd4ee5019c35a69ca3e8674463fe2b64af2f49a276b6658c94360f7e1d
|
|
| MD5 |
b4f3e8447610a43413cced4f83cbb146
|
|
| BLAKE2b-256 |
20303dda36c18f39ca97cf6efca2517b372d674a88b002296602a8125ee26402
|
Provenance
The following attestation bundles were made for sdlckit-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on atishio/sdlc-kit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sdlckit-0.2.0-py3-none-any.whl -
Subject digest:
cc345dfd4ee5019c35a69ca3e8674463fe2b64af2f49a276b6658c94360f7e1d - Sigstore transparency entry: 1803119563
- Sigstore integration time:
-
Permalink:
atishio/sdlc-kit@cd6df732c0c6009b7db6775613d816ceb05ff580 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/atishio
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@cd6df732c0c6009b7db6775613d816ceb05ff580 -
Trigger Event:
release
-
Statement type: