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.2.tar.gz (11.3 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.2-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: archo-0.1.2.tar.gz
  • Upload date:
  • Size: 11.3 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.2.tar.gz
Algorithm Hash digest
SHA256 1ef9cd2272eba1be5c1c81954395e03f7dd5514cb8415823456c833bc503a9f1
MD5 ca0314ec7fae7b2addc00b6fe5229f79
BLAKE2b-256 eb0a6adcfc77dbbbc1208afe36d438893e6f71322ece644c1ef6ee499d9f6b0b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: archo-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 14.3 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 16542b1815b14cac4b815c13a082452d0a93351667189f8772eb7435975ff5e6
MD5 4e353622f7c8e9eaf78087afcdc86ca2
BLAKE2b-256 d75f316775db538b5cbde8f1364c99b7e99d03bee9ccf179a77bf511475eab64

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