Skip to main content

agent-sdlc

CI

A software development lifecycle shipped as agent config for Claude Code and Codex: rules, skills, slash commands, hooks, and a diff-scoped mutation gate.

Docs: https://pavelguzenfeld.com/agent-sdlc/

Why

A coding agent writes the code and the tests for it, and tests written next to the code tend to agree with it, bugs included. On a mature suite, 57% of real bug-class mutants survived. agent-sdlc puts that check, plus scope, intent and git safety, into hooks and a gate instead of leaving them to the agent's memory.

Problem What catches it
Tests that pass but assert nothing mutation-gate: a surviving mutant blocks the commit
Tests shaped to the code An adversary review that sees intent and tests, never the code
Scope creep 40-line limit without a ticket; one ticket, one branch, one PR
Design notes rotting in the tree New .md files are blocked; intent lives in the tracker
Destructive git A hook that denies reset --hard, add -A, force-push
AI tells and leaked identity in commits commit-msg and no-leaks hooks

Example

def is_adult(age):
    return age >= 18

def test_adult():
    assert is_adult(30)

def test_child():
    assert not is_adult(5)
BLOCKED: 2 mutant(s) survived with no waiver.
  age.py:2:11:operator:age >= 18 => age > 18
  age.py:2:18:literal:18 => 19

Add assert is_adult(18) and assert not is_adult(17), and the gate passes.

Install

git clone https://github.com/PavelGuzenfeld/agent-sdlc
cd agent-sdlc
./install.sh --target all --deps
Want Do
The whole pack ./install.sh --target all --deps (targets: claude, codex, all; --deps=say adds voice)
Only the gate pip install agent-sdlc (WordNet check: agent-sdlc[vocabulary])
A plugin claude --plugin-dir /path/to/agent-sdlc, or add the repo as a Codex marketplace source
The gate on a repo Add .mutation-gate.toml, wire the pre-commit hooks
  • install.sh links skills/ into ~/.claude and ~/.codex, links commands/ and bin/ into ~/.claude, renders commands/ as Codex skills and merges the hooks. A second run changes nothing.
  • ast-grep-cli adds an sg shim that can shadow the system sg; call ast-grep.

What's inside

Path What
rules/ How to work; synced into a repo with mutation-gate rules sync
commands/ Slash commands: /kata, /done, /grill, /rectify …
skills/ On-demand playbooks: /diagnose, /sol-budget, /verify-generated-diff …
bin/ Hooks and helpers: git-guardrail.sh, the /say stack
mutation_gate/ The gate and the mutation-gate CLI

CI runs scripts/no-leaks.sh on every PR. It flags emails, RFC1918 addresses, user-at-host references, /home/<user>/ paths and non-personal ghcr.io/ paths, and prints only file:line.

MIT, see LICENSE and NOTICE.md for one vendored third-party skill. Contributions: CONTRIBUTING.md, bound by CODE_OF_CONDUCT.md. Security: SECURITY.md.

Release files for agent-sdlc 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agent-sdlc 0.2.0
File Size Uploaded
agent_sdlc-0.2.0.tar.gz 76.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agent-sdlc 0.2.0
File Interpreter ABI Platform
agent_sdlc-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 167.8 kB

Release files / agent_sdlc-0.2.0.tar.gz

Download URL agent_sdlc-0.2.0.tar.gz
Size 76.5 kB
Tags Source
SHA-256 checksum
How to use checksums
a5a98803fc5f07a2a82e0ed908b3ca2d6f92b87dade6834f8e9fca9a3e88d3ae
BLAKE2b-256 checksum
How to use checksums
b3883d0ab30407a0a7d6464544c2b4d8f9974af4935c1e5ce59e75b6503f7649
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / agent_sdlc-0.2.0-py3-none-any.whl

Download URL agent_sdlc-0.2.0-py3-none-any.whl
Size 91.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c958505e21e7e88b1cd8e60b5e8e18cbc3c09e8192236b2668a625a3acf7bb04
BLAKE2b-256 checksum
How to use checksums
bad3fc8ec584bca919dc79367f6e32d1985dbc9ba25f3c47df095ec441a1aae5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.1

2 release files

This release

0.2.0 This release

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page