Skip to main content

CLI and catalog for agentic documentation OS templates (greenfield + brownfield overlay)

Project description

agentic-devkit

Templates and CLI for the agentic documentation OS — one AGENTS.md router, layered docs, spec-driven work. Cursor, Claude, Copilot share one source of truth.

PyPI
PyPI · GitHub

Doc hierarchy pyramid

The doc hierarchy: NORTHSTAR.md (the why — vision and long-term goals) → CONSTITUTION.md (rules of engagement — ethical and technical boundaries) → PRD.md (the what — features and requirements) → docs/governance/DOCS_SYSTEM.md (the format — documentation structure) → context-registry.yaml (ground truth — RAG mapping to prevent information overload).


Quick start

# New repo
uvx agentic-devkit init my-new-repo

# Existing repo
cd my-existing-repo && uvx agentic-devkit overlay .

# Existing repo + prefill CURRENT_STATE from repo structure
uvx agentic-devkit overlay . --intake

Requires uv (or pip install agentic-devkit).


What you get

Template Use case
Greenfield New repo: NORTHSTAR, CONSTITUTION, AGENTS.md, PRD, governance, specs, adapters, bootstrap skill.
Brownfield Existing repo: CURRENT_STATE, MIGRATION_GUARDRAILS, brownfield AGENTS.md, governance, intake skill.

Then point your agent at AGENTS.md in the new repo. For greenfield, give a one-sentence product brief in the same chat (e.g. “CLI for dev teams so they can run templates with less setup”); the agent fills placeholders or asks if it needs more. For brownfield, ask explicitly for “brownfield intake” when you want CURRENT_STATE and the first spec.

Artifact generation cycle

Cycle: (1) Template initialization — Copier populates the directory and AGENTS.md. (2) Skill execution — invoke a skill from .agents/skills/. (3) Governance verification — check scripts (e.g. ci.yml) verify output against CONSTITUTION.md.

Greenfield — objectives, prompt, what gets filled

Greenfield path

Path A: Greenfield — Bootstrap → Scaffolding (Makefile, pyproject.toml, .copier-answers) → Baseline context (docs/architecture, docs/mcp) → ready for agent execution.

Objectives: The agent only has the project name from init (or “my-product”). You define the rest by saying it in the same message as the bootstrap prompt, or the skill tells the agent to ask for product name, primary user, and core outcome.

Copy-paste prompt (add your one-sentence brief first):

Run the repo-os-greenfield-bootstrap skill: read AGENTS.md and .agents/skills/repo-os-greenfield-bootstrap/SKILL.md, then fill NORTHSTAR.md, PRD.md, docs/architecture/overview.md, and specs/001-bootstrap using .agents/skills/repo-os-greenfield-bootstrap/references/rubric.md. Align AGENTS.md with our real commands. Run scripts/check-governance if present.

What gets filled: NORTHSTAR (mission, personas, thesis, non-goals, kill criteria) · PRD (product, users, scope, stories, requirements) · docs/architecture/overview · specs/001-bootstrap (in-scope, acceptance criteria, verifiers). Cursor: .agents/skills/repo-os-greenfield-bootstrap/. Claude: .claude/commands/bootstrap-repo.md or repo-bootstrapper subagent.

Brownfield — intake prompt

Brownfield intake

Path B: Brownfield intake — Legacy repo → repo_census.py (intake engine) → Machine-readable map (e.g. opencode.json) + Context API (context-registry.yaml).

Run only when you explicitly ask (e.g. “run brownfield intake” or “draft CURRENT_STATE”).

Run the repo-os-brownfield-intake skill: read AGENTS.md and .agents/skills/repo-os-brownfield-intake/SKILL.md. Run the repo census script, draft CURRENT_STATE.md using the brownfield rubric, propose (don’t overwrite) NORTHSTAR/PRD deltas, create the first spec bundle in specs/ and register it. Run scripts/check-governance if present. Give me a short handoff summary.

Cursor: .agents/skills/repo-os-brownfield-intake/. Claude: .claude/commands/intake-brownfield.md.

Key artifacts (NORTHSTAR, AGENTS, PRD, …)

Context, governance, execution

Strategic context (why & what): PRD.md, NORTHSTAR.md → Governance engine (boundaries): CONSTITUTION.md, verify_governance.sh → Execution engine (action state): context-registry.yaml, specs/plan.md, specs/tasks.md.

Artifact Purpose
AGENTS.md Entrypoint for agents: read order, commands, boundaries.
NORTHSTAR.md Vision: goals, non-goals, success criteria.
CONSTITUTION.md Principles, doc hierarchy.
PRD.md Product scope, users, tradeoffs.
specs/ Spec-driven work; each change has a spec + registry entry.
CURRENT_STATE.md (Brownfield) As-is: architecture, debt, fragile areas.
MIGRATION_GUARDRAILS.md (Brownfield) Rules for safe change.

Adapters (CLAUDE.md, Copilot, .cursor/rules) are thin; they point at these and .agents/skills/.

Other ways to run (Copier, pipx, local)
# Remote Copier
uvx copier copy gh:your-org/agentic-dev-greenfield my-new-repo
cd my-existing-repo && uvx copier copy gh:your-org/agentic-dev-brownfield-overlay .

# Updates (after applying once)
copier update --answers-file .copier-answers.agentic-greenfield.yml   # greenfield
copier update --answers-file .copier-answers.agentic-brownfield.yml   # brownfield

# Local clone
git clone https://github.com/pylit-ai/agentic-devkit.git && cd agentic-devkit && uv sync
uv run agentic-dev init my-new-repo
Greenfield repo layout
repo/
├── NORTHSTAR.md
├── CONSTITUTION.md
├── AGENTS.md
├── PRD.md
├── CLAUDE.md
├── opencode.json
├── docs/
│   ├── governance/
│   │   ├── DOCS_SYSTEM.md
│   │   └── context-registry.yaml
│   ├── architecture/
│   │   └── overview.md
│   ├── adr/
│   │   └── ADR-000-template.md
│   └── mcp/
│       └── servers.md
├── specs/
│   ├── registry.yaml
│   ├── 001-bootstrap/
│   │   ├── spec.md
│   │   ├── plan.md
│   │   └── tasks.md
│   └── archive/
├── .github/
│   ├── copilot-instructions.md
│   └── instructions/
├── .cursor/
│   └── rules/
│       └── 00-router.mdc
├── .agents/
│   └── skills/
│       └── repo-os-greenfield-bootstrap/
├── .claude/
│   ├── agents/
│   │   └── repo-bootstrapper.md
│   └── commands/
│       └── bootstrap-repo.md
└── skills/
    └── README.md   # → .agents/skills
Requirements & maintainers

uv + uvx, or pip install agentic-devkit. Publishing: sync templates to distribution repos, tag releases. docs/maintainers/publish-workflow.md.

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

agentic_devkit-0.1.3.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

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

agentic_devkit-0.1.3-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file agentic_devkit-0.1.3.tar.gz.

File metadata

  • Download URL: agentic_devkit-0.1.3.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agentic_devkit-0.1.3.tar.gz
Algorithm Hash digest
SHA256 45316b1696a74278ca0665c9d5a7d15d2db5b83b598712574f2547bf4851d79e
MD5 5a5c86f665e38d899f6b7e91c6d439cf
BLAKE2b-256 1f9116a74a5bf01dcec16be5864aa8e22aab401ad2a6af47d94f694181d8e6d5

See more details on using hashes here.

File details

Details for the file agentic_devkit-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: agentic_devkit-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for agentic_devkit-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8f91e3b416baf5ac664e4435d4a63095b427c3aa2ffbcc2970402dc44f3a4a90
MD5 e1821651d17d277d607277e08161543c
BLAKE2b-256 f47dae33b946ea797ef97639e063f36775a57a7ffde5e5cc4775b23ddf558fb5

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