Skip to main content

Generate and maintain a complete documentation context layer for any repo — using the LLM already in your IDE.

Project description

Doctyze

Turn any repo into living documentation — for humans and AI agents — using the LLM already in your IDE.

PyPI License: Apache 2.0 AGENTS.md


What it does

Point Doctyze at any repository, any stack. Your IDE's AI assistant then:

  1. Consolidates scattered docs (loose READMEs, wiki notes, design files) into one canonical docs/ tree — non-destructively.
  2. Generates the missing docs from the actual code: feature specs, architecture + Mermaid diagrams, decisions (ADRs), runbooks, observability, dev/testing skills.
  3. Keeps them fresh — when code changes, it flags exactly which docs are now stale.

No API key. Doctyze uses the AI you already have in your IDE (Cursor / Claude Code / Copilot) — it never calls an LLM itself or asks for a key.


Get started — one command

In your repo (nothing to install — uvx fetches it on demand):

uvx doctyze init

That one command wires Doctyze into your IDEs — it:

  • registers the Doctyze MCP server in project configs (.mcp.json, .cursor/mcp.json, .vscode/mcp.json) — scoped to the repo and merge-safe (won't touch your other servers),
  • installs the skills (.claude/skills, .cursor/rules, AGENTS.md),
  • scaffolds the canonical docs/ structure.

Then reload your IDE and, in your assistant, invoke the doctyze prompt (Claude Code: /doctyze — or just say "set up the documentation for this repo with Doctyze"). Your assistant organizes existing docs, reads the code, and writes the new docs — using its own model, no API key.

Commit the result and your teammates inherit Doctyze (MCP config + skills) on git clonezero setup for them.

Works with any MCP-capable assistant — Claude Code, Cursor, Windsurf, GitHub Copilot (VS Code), and others. The MCP server ships both the tools and the playbook (as an MCP prompt), so every IDE gets the full guided workflow on the first run.

Prefer to add the MCP server manually, or on another IDE?

The server is identical everywhere:

{ "mcpServers": { "doctyze": { "command": "uvx", "args": ["--from", "doctyze[mcp]", "doctyze-mcp"] } } }
Assistant How
Claude Code claude mcp add doctyze -- uvx --from 'doctyze[mcp]' doctyze-mcp
Cursor add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
Windsurf Settings → Cascade → MCP servers
VS Code / Copilot run “MCP: Add Server”, or add to .vscode/mcp.json (uses a servers map with "type": "stdio")

What you get: a docs/ tree — specs/, architecture/{diagrams,decisions}/, runbooks/, observability/, guides/, skills/ — with a docs/index.md table of contents, fanned out to AGENTS.md / .cursor/rules / Claude Code skills so every assistant on the repo inherits the context.

Each generated doc carries a freshness anchor so a code change flags the specific docs it makes stale:

---
doctyze:
  artifact: spec
  generated_by: write-spec
  affects: [src/payments/**]
  last_verified: 2026-06-28
---

For CI & automation (optional)

The same operations are a small CLI, for pipelines and scripting (this is what the assistant calls under the hood — you don't need it for normal use):

pip install doctyze
doctyze --help     # init · consolidate · bootstrap · index · distribute · watch

Wire doctyze watch into a pre-commit hook or PR check to keep docs from drifting in CI. These commands are deterministic (file moves, drift detection) and never call an LLM — generation stays with your IDE/CI agent.


How it's built

A deterministic Python engine (no LLM, no key) exposed as both an MCP server and a CLI, plus agent-run generation skills. See CONTRIBUTING.md and docs/architecture/decisions/0003-pivot-to-context-layer-generator.md.

License

Apache 2.0. Free and open source for everyone.

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

doctyze-0.3.1.tar.gz (42.5 kB view details)

Uploaded Source

Built Distribution

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

doctyze-0.3.1-py3-none-any.whl (43.9 kB view details)

Uploaded Python 3

File details

Details for the file doctyze-0.3.1.tar.gz.

File metadata

  • Download URL: doctyze-0.3.1.tar.gz
  • Upload date:
  • Size: 42.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for doctyze-0.3.1.tar.gz
Algorithm Hash digest
SHA256 d3a9022da6bb1403379b67bf66404b9cb931ac1ad6ec9c542e78824971ace40b
MD5 56c73644965d0f9bb93f63eec1bc0fb2
BLAKE2b-256 3b3c35d88c2cf801f1f643cec48bbe503e8b0f49be78e861c6b2fcc4afbb4094

See more details on using hashes here.

Provenance

The following attestation bundles were made for doctyze-0.3.1.tar.gz:

Publisher: release.yml on actyze/doctyze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file doctyze-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: doctyze-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 43.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for doctyze-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 991c454adfd58dff91585b10a593c5d614d0445c90e5781f98e5d0a32f8782ca
MD5 baefb59cbacf10dded89b52cc881138a
BLAKE2b-256 71480bce60138aca8411c825cf7eede5779dd230d0817d5b9f20fd087428da25

See more details on using hashes here.

Provenance

The following attestation bundles were made for doctyze-0.3.1-py3-none-any.whl:

Publisher: release.yml on actyze/doctyze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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