Skip to main content

Generate architecture docs from your codebase

Project description

archo

Generate architecture docs from your codebase

archo scans your project, sends the source files to an LLM, and generates an ARCHO.md file with a Mermaid architecture diagram and a structured breakdown of routes, dependencies, databases, and pub/sub topics.

$ archo
Scanning repo: .

Collected (12 files):
  + src/app.py
  + src/routes/users.py
  + src/services/notification.py
  ...

The following files will be sent to anthropic: [...]
Would you like to continue? [y/n]: y

Generating ARCHO.md...
Done — ARCHO.md written.

Install

pip install archo

For OpenAI support:

pip install archo[openai]

Quick start

Run archo in any project directory:

cd your-project
archo

On first run, you'll be prompted to configure your LLM provider, model, and API key. Config is stored in your system config directory (e.g. ~/.config/archo/config.toml).

Supported providers

Provider Models Notes
Anthropic claude-sonnet-4-6, etc. Default provider
OpenAI gpt-5.4, etc. Requires pip install archo[openai]
Ollama Any local model Requires a running Ollama instance

Commands

archo              # Generate architecture docs for current directory
archo init         # First-time setup (provider, model, API key)
archo provider     # View or change LLM provider
archo model        # View or change model
archo api-key      # View or change API key
archo llm-host     # View or change Ollama host URL

What it generates

archo creates an ARCHO.md file containing:

  • Mermaid diagram — visual map of your service, its routes, outbound calls, databases, and pub/sub topics
  • Routes — all HTTP endpoints with methods and paths
  • Outbound calls — services your code talks to and how (REST, gRPC, SDK, etc.)
  • Pub/Sub — topics your service publishes to and subscribes from
  • Databases — database types and their collections/tables

Security

archo never sends sensitive files to any LLM provider. The following are always excluded:

  • .env, .env.production, .env.prod
  • *.pem, *.key, *.p12
  • secrets.yaml, credentials.json

Large files (>50KB), lock files, logs, and common non-source directories (node_modules, .venv, __pycache__, etc.) are also skipped.

License

MIT

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

archo-0.1.1.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

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

archo-0.1.1-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file archo-0.1.1.tar.gz.

File metadata

  • Download URL: archo-0.1.1.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.3

File hashes

Hashes for archo-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1fbca62843d26d3974c371cbdb938641875e581563ff8081877ef283360ff354
MD5 59b51d66424157577f75335d224619ea
BLAKE2b-256 b1e6adf99ede53d736bda29d2894607a8b1335956163b3eb6d07d40deb67d01a

See more details on using hashes here.

File details

Details for the file archo-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: archo-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.3

File hashes

Hashes for archo-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8dd0086b542a1b79bc4cbb1d384ecdbf2557ec1761c9d437c8b1b27c78874d0a
MD5 b0de2f99fb7815ace8767376233c0ecf
BLAKE2b-256 89209ff3028be3c2dfd2c52420b832d9df08c33bad1f0975fc9a00f13e063e16

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