Skip to main content

CLI for managing .rhidoc/ specification workspaces

Project description

Rhidoc

Rhidoc is a CLI for agentic documentation management. Rhidoc is short for rhizomatic documentation, a single body of context growing in all directions. A docs workspace managed by rhidoc can accelerate spec-driven development and eliminate the ambiguity between project requirements and source code that leads to hallucinations.

Quick start

pip install rhidoc
rhidoc init

rhidoc init creates the docs workspace structure, with instructions for agents provided by the docs themselves as well as optional skills.

Rhidoc at a Glance

Here's a snippet of rhidoc's own docs structure:

$ rhidoc tree
.rhidoc
├── 00-codex -- Codex
│   ├── 00-index -- Codex
│   ├── 01-about -- About This Workspace
│   ├── 02-maintenance -- Maintenance
│   ├── 03-conventions -- Conventions
│   └── 04-ai-retrieval -- AI Retrieval Patterns
├── 01-architecture -- Architecture
│   ├── 00-index -- Architecture
│   ├── 01-script-pipeline -- Reconciliation Architecture
│   └── 02-design-patterns -- Design Patterns
│       ├── 00-index -- Design Patterns
│       └── 01-python-for-ai -- Python for AI Agents
├── 02-product-design -- Product Design
│   ├── 00-index -- Product Design
│   ├── 01-workspace-scripts -- Workspace Scripts
│   │   ├── 00-index -- Workspace Scripts
│   │   ├── 01-workspace-scripts -- Rhidoc Docs API — Design
│   │   ├── 02-invariants -- Workspace Invariants
│   │   ├── 03-properties -- Property Catalog
│   │   └── 04-errors -- Error Catalog
│   ├── 02-cli-user-flow -- CLI User Flow

The key part is a DocRef; for example, doc02.01.03 resolves to the path .rhidoc/02-product-design/01-workspace-scripts/03-properties.md. The format is readable for humans, gives context to an LLM, and enables deterministic operations.

Doc development loop

  • Ahead of code generation, a human starts a session with a coding agent to make necessary docs.
  • The agent loads rhidoc skills and MANIFEST.md into its context, which lets it cheaply locate relevant docs.
  • The agent briefs the human on the status of relevant docs.
  • The human inputs design decisions in natural language to the agent.
  • The agent updates the docs with deterministic rhidoc commands.
  • Finally, the agent rhidoc regenerate updates MANIFEST.md for the next session.

Sidecars

Some context is highly structured and is an awkward fit in a prosaic markdown file. Rhidoc provides sidecars. You can write scripts that verify your sidecar specs. For example, you can write inventory of screens in a mobile app in doc02.01-screens, a concept inventory in doc01.03-concepts, and then a script that verifies that every concept-action has an affordance somewhere in your app. Through this, design flaws are surfaced early, and coding agents have access to verified, unambiguous context.

More information at WORKSPACE.md (WIP).

Installation

Requires Python 3.10+. Install via pip:

pip install rhidoc

Or install for development:

pip install -e .

Usage

rhidoc init              # create a new .rhidoc/ workspace
rhidoc create doc01.03   # add a doc entry
rhidoc move doc01.03 doc02.01
rhidoc regenerate        # rebuild MANIFEST.md
rhidoc tree              # print workspace structure
rhidoc ai-skill          # print full command reference for AI agents

Run rhidoc --help for the complete command list.

Tests

make test

License

AGPL-3.0

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

rhidoc-0.4.0.tar.gz (308.9 kB view details)

Uploaded Source

Built Distribution

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

rhidoc-0.4.0-py3-none-any.whl (83.2 kB view details)

Uploaded Python 3

File details

Details for the file rhidoc-0.4.0.tar.gz.

File metadata

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

File hashes

Hashes for rhidoc-0.4.0.tar.gz
Algorithm Hash digest
SHA256 d946a999544691b15ac525bbd93e3b6fd0f77d69cbe970544b0360d0dec1d3b0
MD5 82df8e7ac7cc9bce372ef755ab55526f
BLAKE2b-256 adb00c7840b020c6a5f5a28316bc0ef9219a141aba8b4bdff9226fefed22d021

See more details on using hashes here.

Provenance

The following attestation bundles were made for rhidoc-0.4.0.tar.gz:

Publisher: publish.yml on saxonthune/rhidoc

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

File details

Details for the file rhidoc-0.4.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for rhidoc-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8da481c838d10d655e360425482819713789911e0f169a25d22fe93a5b2ae0d2
MD5 b67f196a2650305e26b63e422846d1be
BLAKE2b-256 274b31639455be1afa1bfb38ac2e8f094d5a46f76b510f12a0f7b5b1bb999b47

See more details on using hashes here.

Provenance

The following attestation bundles were made for rhidoc-0.4.0-py3-none-any.whl:

Publisher: publish.yml on saxonthune/rhidoc

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