Markdown-driven SDLC with AI agent chaining.
Project description
AI-SDLC
Markdown-driven software development lifecycle powered by AI agents
uv pip install ai-sdlc
What is AI-SDLC?
AI-SDLC is a CLI tool that guides software development through an 8-step structured workflow. It generates markdown files and AI prompts that help you go from an initial idea to production-ready code with comprehensive tests.
The tool is AI-agnostic—it generates prompts you can use with any AI assistant (Claude, ChatGPT, Cursor, etc.). No API keys or specific AI tools required.
The Problem
Developers often jump straight to coding, skipping important planning steps. This leads to:
- Unclear requirements discovered mid-implementation
- Architecture decisions made ad-hoc
- Missing test coverage
- Poor documentation of decisions
The Solution
AI-SDLC enforces a structured workflow:
- Document decisions and rationale in version-controlled markdown
- Generate comprehensive implementation plans before coding
- Create thorough test strategies
- Maintain project history
Quick Start
1. Install
# Install uv (fast Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install AI-SDLC
uv pip install ai-sdlc
2. Initialize
mkdir my-project && cd my-project
aisdlc init
3. Start a Feature
aisdlc new "Add user authentication system"
aisdlc status
4. Work Through the Steps
- Fill out the generated markdown in
doing/add-user-authentication-system/0.idea-*.md - Run
aisdlc nextto generate a prompt for the next step - Use the prompt with your AI tool and save the response
- Repeat until all 8 steps complete
- Archive with
aisdlc done
The 8-Step Workflow
0.idea → 1.prd → 2.prd-plus → 3.system-template → 4.systems-patterns → 5.tasks → 6.tasks-plus → 7.tests
| Step | Name | Purpose |
|---|---|---|
| 01 | idea | Initial problem statement and strategic pitch |
| 02 | prd | Product requirements document |
| 03 | prd-plus | Enhanced requirements with edge cases |
| 04 | architecture | System architecture design |
| 05 | system-patterns | Design patterns and implementation strategy |
| 06 | tasks | Task breakdown and implementation plan |
| 07 | tasks-plus | Task review and handoff preparation |
| 08 | tests | Test plan and test code generation |
Workflow Modes
| Mode | Steps | Description |
|---|---|---|
| Chat Mode | 1-5 | Iterate with AI chat to refine ideas, requirements, and architecture |
| Manual Mode | 6 | Fill out task list markdown directly |
| Agent Mode | 7-8 | Automated processing for task review and test generation |
Commands
| Command | Description |
|---|---|
aisdlc init |
Initialize AI-SDLC in current directory |
aisdlc new <idea> |
Start new feature with idea description |
aisdlc next |
Generate prompt for next step |
aisdlc status |
Show current project status |
aisdlc done |
Archive completed feature to done/ |
aisdlc --help |
Show all available commands |
aisdlc <command> --help |
Show help for a specific command |
How It Works
When you run aisdlc next:
- Reads the previous step's markdown file
- Merges content into the prompt template for the next step
- Writes the merged prompt to
_prompt-<step>.md - You copy the prompt to your AI tool, get a response, and save it
All state is tracked in files:
.aisdlc- Project configuration (TOML).aisdlc.lock- Current workflow state (JSON)doing/<slug>/- Active feature filesdone/<slug>/- Completed features
Project Structure
.
├── ai_sdlc/ # Main Python package
│ ├── cli.py # Entry point for aisdlc command
│ ├── commands/ # Command implementations (init, new, next, status, done)
│ ├── scaffold_template/ # Default templates for new projects
│ └── utils.py # Shared helpers
├── prompts/ # LLM prompt templates for each step
├── tests/ # Test suite
│ ├── unit/ # Unit tests
│ └── integration/ # Integration tests
├── doing/ # Active features (created by init)
├── done/ # Completed features (created by init)
├── .aisdlc # Project configuration
└── .aisdlc.lock # Current workflow state
Installation
Prerequisites
- Python 3.11+
- uv (recommended) or pip
Install Options
# Using uv (recommended)
uv pip install ai-sdlc
# Using pip
pip install ai-sdlc
# Verify installation
aisdlc --help
Development Setup
git clone https://github.com/ParkerRex/ai-sdlc.git
cd ai-sdlc
uv venv && source .venv/bin/activate
uv sync --all-features
Running Tests
uv pip install -e .[dev]
# Lint and format
uv run ruff check ai_sdlc tests
uv run ruff format ai_sdlc tests
# Type check
uv run pyright
# Run tests
uv run pytest
uv run pytest tests/unit/ # Unit tests only
uv run pytest tests/integration/ # Integration tests only
Technology Stack
| Component | Technology |
|---|---|
| CLI | Python 3.11+, argparse (stdlib) |
| Package manager | uv |
| Dev tools | Ruff, Pyright, pytest |
| Build | setuptools, PEP 621 |
Runtime has zero external dependencies—uses only Python standard library.
Troubleshooting
"Permission denied" errors
- Check file permissions in your project directory
"Invalid .aisdlc configuration"
- Verify
.aisdlchas valid TOML syntax - Run
aisdlc initto regenerate defaults
"Lock file corruption"
- Delete
.aisdlc.lockand runaisdlc status
Contributing
- Fork and clone the repository
- Create a feature branch:
git checkout -b feat/your-feature - Make changes with tests
- Run quality checks:
ruff check,pyright,pytest - Open a PR
Roadmap
- Pluggable AI providers (
--modelflag for GPT-4, Claude, Gemini) - 09-release-plan step for CI/CD and deployment
- Context-window management for large projects
- Template customization per project
- Parallel workflows for multiple features
License
MIT - See LICENSE for details.
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-0.7.1.tar.gz.
File metadata
- Download URL: ai_sdlc-0.7.1.tar.gz
- Upload date:
- Size: 588.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6d14aa76f0f51802b850dc7492d55695a3fc656f5f868b07913c7258817cc6a3
|
|
| MD5 |
ea310f420321600d012613e4d63022df
|
|
| BLAKE2b-256 |
ca4966ae4b59021d53c4eda4ea8f354dcac1736d6b793daa624bb748d92ee6ad
|
Provenance
The following attestation bundles were made for ai_sdlc-0.7.1.tar.gz:
Publisher:
release.yml on ParkerRex/ai-sdlc
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ai_sdlc-0.7.1.tar.gz -
Subject digest:
6d14aa76f0f51802b850dc7492d55695a3fc656f5f868b07913c7258817cc6a3 - Sigstore transparency entry: 787562759
- Sigstore integration time:
-
Permalink:
ParkerRex/ai-sdlc@8f7091397b4d44c0e08f88edeee4b7ec2c334f03 -
Branch / Tag:
refs/tags/v0.7.1 - Owner: https://github.com/ParkerRex
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@8f7091397b4d44c0e08f88edeee4b7ec2c334f03 -
Trigger Event:
push
-
Statement type:
File details
Details for the file ai_sdlc-0.7.1-py3-none-any.whl.
File metadata
- Download URL: ai_sdlc-0.7.1-py3-none-any.whl
- Upload date:
- Size: 92.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35eec93ed8409aefbd254f5ab66d45744bcf7f4ef29d3b1b8a23a664b3f6b5c6
|
|
| MD5 |
26729dad26d80feabba9f3869cb7ba57
|
|
| BLAKE2b-256 |
2542e06bbf2ff1e70d4356343cd312b27d85d9b359313b7619e87ffdfc51738a
|
Provenance
The following attestation bundles were made for ai_sdlc-0.7.1-py3-none-any.whl:
Publisher:
release.yml on ParkerRex/ai-sdlc
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ai_sdlc-0.7.1-py3-none-any.whl -
Subject digest:
35eec93ed8409aefbd254f5ab66d45744bcf7f4ef29d3b1b8a23a664b3f6b5c6 - Sigstore transparency entry: 787562761
- Sigstore integration time:
-
Permalink:
ParkerRex/ai-sdlc@8f7091397b4d44c0e08f88edeee4b7ec2c334f03 -
Branch / Tag:
refs/tags/v0.7.1 - Owner: https://github.com/ParkerRex
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@8f7091397b4d44c0e08f88edeee4b7ec2c334f03 -
Trigger Event:
push
-
Statement type: