Roadmap-first coordination kit for humans and AI agents
Project description
specy-road
One roadmap for the whole team—so product, engineering, and coding agents share the same plan.
What it is
specy-road is a toolkit for keeping priorities, written specs, and implementation work aligned. It fits teams that use AI-assisted editors (for example Claude or Cursor) together with product-led planning. Your team maintains a roadmap in the repository: what matters, in what order, and what depends on what. A small command-line tool checks that the roadmap is consistent, publishes a readable index, and can build briefs—focused packets of context for a single task—so nobody has to reread the entire project to know what to do next.
Who it’s for
- Product managers and delivery leads — A single place for direction, sequencing, and visibility into what is active or blocked.
- Developers and coding agents — Task-sized context, shared contracts, and clear ownership areas so work stays parallel without stepping on the same files.
Why teams use it
- Single source of truth — Less drift between tickets, docs, and “what we agreed.” The roadmap and planning sheets stay tied together; cross-cutting rules live in
shared/where they belong. - Right-sized context —
specy-road briefpulls the relevant planning sheets and contracts for one roadmap item instead of the whole repository story. - Safer parallel work — Stable IDs, touch zones, and
roadmap/registry.yamlshow who is working on what before files collide. - Your tools, your workflow — The kit is about roadmaps and specs, not a particular IDE or agent ritual. See docs/philosophy-and-scope.md.
Getting started
Install the CLI (Python 3.11+) and git, then follow Install and docs/install-and-usage.md to pip install specy-road and run specy-road init project in an application repo. After that, everyday use boils down to:
For PMs
- Prefer
specy-road guifor the dashboard, or editroadmap/andplanning/directly (docs/pm-gui.md). - Run
specy-road exportandspecy-road validatebefore you commit.
More detail: docs/pm-workflow.md. Optional LLM Review in the Gantt UI: docs/pm-llm-review.md.
For developers
- Pick up work with
specy-road do-next-available-task, orspecy-road brief <NODE_ID>for a specific node (docs/dev-workflow.md). - Finish with
specy-road finish-this-task, then land changes with your team’s PR process (docs/git-workflow.md).
Install
Requires Python 3.11+ and git (with a configured remote — origin
by default).
pip install specy-road
# optional extras:
# pip install "specy-road[gui-next]" # PM Gantt UI deps
# pip install "specy-road[review]" # LLM review (`specy-road review-node`)
The full install + everyday usage guide is at docs/install-and-usage.md. Building from source is documented in docs/contributor-guide.md.
Consumer init project, roadmap/git-workflow.yaml, optional specyrd stubs, and bootstrap prompts are covered in docs/install-and-usage.md. Toolkit contributors (tests, pre-commit, releases): docs/contributor-guide.md.
More on how to work with it
Typical path in an application repository after specy-road init project: roadmap and planning for direction and detail; validation, export, and briefs for engineering and agents; registry and branches for safe parallel work. Maintainers working on this toolkit follow AGENTS.md, docs/toolkit-development.md, and docs/contributor-guide.md.
- Bootstrap —
specy-road init project(once per repo) createsconstitution/,roadmap/,shared/,constraints/,schemas/,planning/,work/, andAGENTS.md. - Author — Edit JSON chunks under
roadmap/(listed inmanifest.json). See docs/roadmap-authoring.md. - Validate —
specy-road validate(use--repo-rootif not in the project root). - Publish views —
specy-road exportregeneratesroadmap.mdfrom the merged graph. - Focus a task —
specy-road brief <NODE_ID> -o work/brief-<NODE_ID>.md, then implement againstshared/contracts cited for that node. - Branches — Follow docs/git-workflow.md: register in
roadmap/registry.yamlon the integration branch fromroadmap/git-workflow.yaml, thenfeature/rm-<codename>(or usespecy-road do-next-available-task). - Optional IDE commands —
specyrdinstalls stubs that invoke the CLI; see docs/contributor-guide.md#ide-command-stubs-specyrd.
Where to read next
| Document | Purpose |
|---|---|
| docs/install-and-usage.md | Install from source, init project, everyday PM/dev/GUI flows |
| docs/contributor-guide.md | Toolkit contributors: CI parity, pre-commit, releases, specyrd |
| docs/philosophy-and-scope.md | What the kit promises and what it leaves to you |
| docs/architecture.md | End-to-end flow: manifest, chunks, validation, briefs |
| docs/roadmap-authoring.md | JSON chunks, manifest order, generated roadmap.md |
| docs/git-workflow.md | Consumer workflow contract (git-workflow.yaml), branches, registry, merge-back |
| docs/toolkit-development.md | Short maintainer notes (this repo vs consumer contract) |
| docs/optional-ai-tooling-patterns.md | Optional patterns (CLAUDE.md, Cursor rules, MCP) for app repos |
| suggested_prompts/ | Adoption prompts (clone this repo; not shipped on PyPI) |
| AGENTS.md | Short entry for coding agents |
Related material
- Spec-Kit — inspiration only
- docs/optional-ai-tooling-patterns.md — optional AI tooling ideas for application repositories
Contributing to this repository
To participate in development of the specy-road toolkit itself, contact the repository owner. Technical setup: docs/contributor-guide.md.
License
MIT — see LICENSE.
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 specy_road-0.1.3.tar.gz.
File metadata
- Download URL: specy_road-0.1.3.tar.gz
- Upload date:
- Size: 567.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca774824efc802ed4d02e94a4729380911ec48c62778301a64460fe23c5bd963
|
|
| MD5 |
8be7c090b3c24e5192d0a095465a3ee7
|
|
| BLAKE2b-256 |
2de43d1b3d08ec10539284c3b470813a43e03aa7b580361b1860ecb38e1912a2
|
Provenance
The following attestation bundles were made for specy_road-0.1.3.tar.gz:
Publisher:
release-publish.yml on shanevigil/specy-road
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
specy_road-0.1.3.tar.gz -
Subject digest:
ca774824efc802ed4d02e94a4729380911ec48c62778301a64460fe23c5bd963 - Sigstore transparency entry: 1379527276
- Sigstore integration time:
-
Permalink:
shanevigil/specy-road@81d347b1de506261e92ce4dcdcf224ea91905098 -
Branch / Tag:
refs/tags/v0.1.3 - Owner: https://github.com/shanevigil
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-publish.yml@81d347b1de506261e92ce4dcdcf224ea91905098 -
Trigger Event:
push
-
Statement type:
File details
Details for the file specy_road-0.1.3-py3-none-any.whl.
File metadata
- Download URL: specy_road-0.1.3-py3-none-any.whl
- Upload date:
- Size: 562.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68f97540d4bc30923e6b8cfa83e00a486966af4063d70a9e81722f3d9a01c663
|
|
| MD5 |
1f98fce3c258cdd947d04e0cf1d38c4b
|
|
| BLAKE2b-256 |
e38eb4d5d275cb25823c312bc1c6fdcc1825d59248c6837751c0aefde4c0e156
|
Provenance
The following attestation bundles were made for specy_road-0.1.3-py3-none-any.whl:
Publisher:
release-publish.yml on shanevigil/specy-road
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
specy_road-0.1.3-py3-none-any.whl -
Subject digest:
68f97540d4bc30923e6b8cfa83e00a486966af4063d70a9e81722f3d9a01c663 - Sigstore transparency entry: 1379527446
- Sigstore integration time:
-
Permalink:
shanevigil/specy-road@81d347b1de506261e92ce4dcdcf224ea91905098 -
Branch / Tag:
refs/tags/v0.1.3 - Owner: https://github.com/shanevigil
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-publish.yml@81d347b1de506261e92ce4dcdcf224ea91905098 -
Trigger Event:
push
-
Statement type: