Skip to main content

Feature request and implementation specification management tool

Project description

nspec

PyPI version Python 3.11+ License: MIT Docs

Specification-driven project management for AI-native development

nspec turns your backlog into structured markdown specs that AI coding assistants can read, execute, and update. It pairs every feature request (FR) with an implementation spec (IMPL), validates the entire graph, and exposes an MCP server so Claude Code (or any MCP-compatible agent) can autonomously pick up work, track tasks, and advance specs through their lifecycle.

Install

pip install nspec

Also available via pipx, uv, and poetry. See the Getting Started guide.

Quick Start

nspec init              # Scaffold project (auto-detects your stack)
nspec mcp-config        # Generate MCP server config
nspec spec create --title "My feature" --priority P1
nspec validate          # Run 6-layer validation
nspec tui               # Interactive terminal UI

With the MCP server configured, Claude Code can autonomously work your backlog:

/ngo S001       — Start a work session on a spec
/nbacklog       — View the prioritized backlog
/nloop          — Autonomous mode: pick, execute, complete, repeat

Features

  • FR/IMPL Pairing — Every feature request gets a matching implementation spec with hierarchical tasks and acceptance criteria
  • 6-Layer Validation — Format, pairing, dependencies, business logic, and ordering checks
  • MCP Server — stdio, SSE, and HTTP transports for AI assistant integration
  • Interactive TUI — Sortable table, detail panel, vim keybindings, search, follow mode, live reload
  • Dependency Graph — Circular reference detection, cross-epic ordering, priority inheritance
  • Multi-Agent Queue — Parallel spec execution with atomic claim/release and lease-based recovery
  • Engineering Metrics — Velocity, quality, DORA metrics, and activity heatmap
  • Code Review — Automated review against spec criteria via configurable external agents

Priority Model

  • Epic priorities are global and unique. Epics rank against each other in one contiguous order (P1, P2, P3, …). Changing an epic's priority cascade-inserts it — the others shift up or down to keep every slot unique.
  • Spec priorities (P0–P3) are scoped to their epic. A spec's priority only orders it against its siblings within the same epic — it is contained there and has no meaning across epics. Two specs may share a priority; ties break deterministically by spec ID. Changing a spec's priority bumps its epic siblings to make room (best-effort: because the P0–P3 range is smaller than the number of specs an epic can hold, siblings pile up at the floor priority once the range is exhausted rather than overflowing past it).

Documentation

Full documentation: novabuiltdevv.github.io/nspec

Development

poetry install
make test-quick    # Fast tests, fail-fast
make check         # Format + lint + typecheck

License

MIT License - see LICENSE for details.

Credits

Built with Poetry, Textual, Rich, and MCP.

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

nspec-3.15.1.tar.gz (624.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nspec-3.15.1-py3-none-any.whl (744.3 kB view details)

Uploaded Python 3

File details

Details for the file nspec-3.15.1.tar.gz.

File metadata

  • Download URL: nspec-3.15.1.tar.gz
  • Upload date:
  • Size: 624.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.12.3 Linux/6.1.0-44-amd64

File hashes

Hashes for nspec-3.15.1.tar.gz
Algorithm Hash digest
SHA256 d87e8ce47cfb4a1a4fc7118fc9d5e30c9269e5ae5d2f3cb89373d70241ad4a40
MD5 2cc6604f31bfebafe611921c6f9b5204
BLAKE2b-256 5ab42562fb4608ae3a6a3e5093dfea13ae9a116d15a11a4d8ab471fcac9eae92

See more details on using hashes here.

File details

Details for the file nspec-3.15.1-py3-none-any.whl.

File metadata

  • Download URL: nspec-3.15.1-py3-none-any.whl
  • Upload date:
  • Size: 744.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.12.3 Linux/6.1.0-44-amd64

File hashes

Hashes for nspec-3.15.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b506816d648818ba69466bab5fad935189484316b081e80a45cd77764d4c74f3
MD5 91991430f3071a532423af31dc34cbb7
BLAKE2b-256 73958f73dbc16a49d9c7c107281d1568ad387179b30d0800e8905aa587e7e122

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page