IntentSpec
Coverage and enforcement layer for AI agent infrastructure.
Status (June 26 2026): Phase 2 complete · PyPI 0.3.0 (pre-1.0) · Phase 3 (beta) next — see STATUS.md
IntentSpec transforms agent development from ad-hoc documentation to versioned, testable, and enforceable intent. Document agent behavior as code, measure intent coverage, score intent debt, and enforce intent through CI/CD.
Works with any agent spec format — AGENTS.md, SKILL.md, agentskills, or CrewAI. Convert existing specs to a standardized intent.yaml, then validate, score, diff, lint, and enforce it in CI/CD.
Quickstart
pip install intentspec
# Create a new spec interactively
intentspec init --quickstart
# Or convert an existing AGENTS.md
intentspec init --from AGENTS.md ./AGENTS.md
# Validate and score
intentspec validate
intentspec score
# Run all checks for CI/CD
intentspec ci --min-coverage 80
Features
| Feature | Command | Description |
|---|---|---|
| Validate | validate |
Schema + semantic validation of intent.yaml |
| Score | score |
Intent Debt Score (IDS 0-100) with 7 weighted components |
| Coverage | coverage |
Structural coverage analysis against source text |
| Diff | diff |
Git-integrated intent change tracking between commits |
| Lint | lint |
Quality checks (goal length, tool rationale, duplicates, etc.) |
| CI | ci |
Unified hook: validate + lint + score + coverage in one pass |
| Audit | audit-report |
SOC 2 / EU AI Act compliance report with SHA-256 hash |
| Convert | init --from |
Import from AGENTS.md, SKILL.md, agentskills, CrewAI, LangGraph, AutoGen, OpenAI Agents |
| Templates | init --template |
5 built-in agent templates |
| Health | health |
Terminal dashboard — coverage, IDS, stale/orphaned specs |
| Drift | drift |
Detect stale intents (source file age vs last commit) |
| Dashboard | dashboard --serve |
Web dashboard for coverage trends and IDS scores |
New: Source Resolution
IntentSpec now resolves original agent source files (AGENTS.md, SKILL.md, framework configs) for any intent.yaml:
# Source:header provenance (written byintentspec init)- Sibling filename matching (AGENTS.md, SKILL.md, crewai.yaml, etc.)
- Orphaned spec detection (
healthanddriftreport specs with no source)
Installation
pip install intentspec # 0.3.0
Requires Python 3.11+.
Why IntentSpec?
AI agents are defined by scattered markdown files, README comments, and tribal knowledge. IntentSpec makes that explicit and measurable:
- Document — Define agent intent in a structured
intent.yaml - Convert — Import existing AGENTS.md / SKILL.md / CrewAI specs
- Validate — Schema + semantic checks catch misconfigurations
- Score — Intent Debt Score (0-100) measures spec quality
- Coverage — Compare intent against actual source text
- Enforce — CI/CD integration fails builds when intent is missing or broken
- Audit — Generate compliance reports for SOC 2 / EU AI Act
License
MIT
Metadata
Release files for intentspec 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| intentspec-0.3.0.tar.gz | 160.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| intentspec-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 280.3 kB
Release files / intentspec-0.3.0.tar.gz
| Download URL | intentspec-0.3.0.tar.gz |
|---|---|
| Size | 160.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
de932b812617b0a0fe3ccbd0e1ab3d9a59bc9bd3fd9fa128b8e3c7c49b3fe121
|
|
BLAKE2b-256 checksum How to use checksums |
ad36ff34dbd84f4bab3a0cacff0aed96a5a51143eda91b869a56e51b0050a345
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 Jun 26, 2026.
Transparency logRelease files / intentspec-0.3.0-py3-none-any.whl
| Download URL | intentspec-0.3.0-py3-none-any.whl |
|---|---|
| Size | 120.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5774dae74548151ee758305c32b8f6d9e20f29093317fcec7d4d484d167a4a4a
|
|
BLAKE2b-256 checksum How to use checksums |
dd711ddff089d2bfb2f7ef3e812678f8990fe08eea2f4ef7383e45e83dfd4510
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 Jun 26, 2026.
Transparency log