The greated AI cloud architect, so you can kickback and relax.
- Simplifies process of designing cloud architectures
- Picks architectural patterns
- Finds the best services from AWS, Azure and GCP using RAG
- Validates the architecture against the well-architected framework
- Generates Diagrams via an MCP server
- Fully responsive UI
- User authentication baked in via Better-Auth
You can see a demo video here
- We first gathered data from all 3 cloud providers, and assigned tiers to them (T1/T2/T3)
- During Phase 2, we perform RAG only on T2 and T3 docs. T1 docs are always injected into the context, since they are foundational/common services
- The pipeline does the following in order:
- Phase 0: Gathers app requirements
- Phase 1: Finds best architectural patterns
- Phase 2: Finds best services from AWS, Azure and GCP in parallel (split into 2 waves, since networking, devops and security depend on wave 1's output)
- Phase 3: Validates the architecture using the well-architected framework
- Phase 4: Creates a final response, taking into account all of the specialist agent's output
- Phase 5: Generates Diagram via an MCP server
- Overview of the main pipeline:
- When the user wants to ask a follow-up question, it follows a different pipeline:
App
Diagram generation
- Python 3.12+
- uv
- Graphviz:
sudo apt-get install graphviz graphviz-devpnpm installcp .env.example .envFill in the following values:
OPENAI_API_KEY— API key for OpenAIDATABASE_URL— PostgreSQL connection string, e.g.postgres://user:password@localhost:5432/archonBETTER_AUTH_SECRET— Random secret used to sign auth tokens. You can use this website, or run:
openssl rand -base64 32pnpm db:migrateThe diagram generation feature requires the MCP server running separately. In a new terminal:
cd mcp
uv sync
uv run diagram-mcpThe server starts on http://localhost:8000 by default. The Next.js app connects to it via the MCP_SERVER_URL environment variable.
pnpm devOpen http://localhost:3000 in your browser.
You can also run Archon directly via docker.
Make sure the .env file is configured:
cp .env.example .envOPENAI_API_KEY— API key for OpenAIDATABASE_URL— Ignore this, will be configured automaticallyBETTER_AUTH_SECRET— Random secret used to sign auth tokens. You can use this website, or run:
openssl rand -base64 32then run:
docker compose build
docker compose upOpen http://localhost:3000 in your browser.

