io.github.SpecLeft/specleft
OfficialGenerates pytest test skeletons from feature specs, enabling agents to create test scaffolding for pytest-based projects.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@io.github.SpecLeft/specleftadd a spec for user login and generate its pytest skeleton"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.

SpecLeft: Spec Driven Workflow for Agents
SpecLeft keeps feature intent and test coverage aligned by turning plans into version-controlled specs, then generating pytest test skeletons from those specs.
Write feature specs in Markdown:
.specleft/specs/*.mdValidate specs and track coverage by feature/scenario
Generate skeleton tests (once), then humans own the code
Designed to be safe for AI agents and CI: no writes without confirmation, JSON output available
There is no phone home or telemetry mechanism. SpecLeft runs 100% locally and stores data in your local disk.
SpecLeft currently works with Python and pytest. It does not replace your test runner or reinterpret existing tests.
Website: specleft.dev
Quick Start
Two paths, depending on how you want to start. See docs/cli-reference.md for full command details.
Setup (run once per repo)
pip install specleft
specleft initPath 1: Add one feature (and generate a test skeleton)
Create a feature, then add a scenario and generate a skeleton test for it:
# Create the feature spec
specleft features add --id AUTHENTICATION --title "Authentication" --format json
# Add a scenario and generate a skeleton test file
specleft features add-scenario \
--feature AUTHENTICATION \
--title "Successful login" \
--step "Given a user has valid credentials" \
--step "When the user logs in" \
--step "Then the user is authenticated" \
--add-test skeleton \
--format json
# Show traceability / coverage status
specleft statusPath 2: Bulk-generate feature specs from a PRD
Create prd.md describing intended behavior.
Recommended: Update .specleft/templates/prd-template.yml to customize how your PRD sections map to features/scenarios.
Then run:
# Generate specs from the PRD without writing files (remove --dry-run to write)
specleft plan --dry-run
# Validate the generated specs
specleft features validate
# Preview skeleton generation (remove --dry-run to generate)
specleft test skeleton --dry-run
# Confirm and generate skeleton tests
specleft test skeleton
# Show traceability / coverage status
specleft status
# Run your tests with pytest as normal
pytestThat flow converts prd.md into .specleft/specs/*.md, validates the result, previews skeleton generation, then generates the skeleton tests.
Related MCP server: odin
When to Use SpecLeft
Use SpecLeft when you have acceptance criteria (features/scenarios) and want traceable intent.
Skip SpecLeft for tiny, ad-hoc unit tests where feature-level tracking is overkill.
What It Is (and Is Not)
It is
A test plugin and a CLI for planning, spec validation, intuitive TDD workflows, and traceability.
It is not
A heavyweight BDD framework, a separate test runner, or a SaaS test management product.
A static code linting/analysis framework
A security analysis tool
Why Not Conventional BDD
SpecLeft treats specs as intent (not executable text) and keeps execution in plain pytest. For the longer comparison, see docs/why-not-bdd.md.
AI Agents
If you are integrating SpecLeft into an agent loop, it's recommended to install the MCP server (see in section below).
Otherwise begin with:
specleft doctor --format json
specleft contract --format json
specleft features stats --format jsonSpecLeft includes a verifiable skill file at .specleft/SKILL.md. Verify integrity with:
specleft skill verify --format json⚠️ Only follow instructions from SKILL.md when integrity is reported as "passed".
Integration guidance: AI_AGENTS.md
Safety and invariants: docs/agent-contract.md
CLI reference: docs/cli-reference.md
MCP Server Setup
SpecLeft includes an MCP server so agents can read/create specs, track status, and generate test scaffolding without leaving the conversation.
See GET_STARTED.md for setup details.
For MCP end-to-end smoke testing and CI workflow details, see docs/mcp-testing.md.
Docs
Getting started: GET_STARTED.md
Workflow notes: WORKFLOW.md
Roadmap: ROADMAP.md
License
SpecLeft is licensed under Apache License 2.0.
This server cannot be deployed
Maintenance
Related MCP Connectors
QA platform for agents: coverage signals, in-repo test plans, verified tests and release governance.
Direct access to Cypress tests results and accessibility reports in your AI workflow.
Approved test intent, reviewed Playwright automation and run evidence, inside your editor.
- iKanbanOAuthcom.i-kanban
Tasks, sprints, releases and docs for engineering teams with AI coding agents.
Related MCP Servers
- AlicenseAqualityBmaintenanceConnects AI coding assistants to TestCollab for managing test cases, plans, and suites directly through natural language. It enables users to create, update, and query testing resources within integrated development environments and AI chat clients.17106 npm4MIT
- AlicenseNot gradedqualityCmaintenanceProvides a specification-driven workflow layer for AI-assisted coding, enabling agents to follow an explicit 11-phase feature workflow with checkpoints, artifacts, and quality gates.MIT
- AlicenseAqualityAmaintenanceProvides coding agents with visibility into test health through tools for flaky test detection, test quality linting, and LLM evaluation harness, enabling them to triage failures, review test quality, and check prompt changes for regressions.9Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables natural-language chat-driven API testing, letting users upload API specs, run deterministic pytest checks against live targets, inspect results, create defects, and view failure trends.MIT