coleam00/Archon

★ 23,505⑂ 3,475

The first open-source harness builder for AI coding. Make AI coding deterministic and repeatable.

About coleam00/Archon

coleam00/Archon is an open-source project on GitHub, mainly written in TypeScript. The first open-source harness builder for AI coding. Make AI coding deterministic and repeatable. It currently holds 23,505 stars and 3,475 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).

Project Overview

AI Homed tracks it on the AI Coding Agents board.

GitHub Repository Details

Repository coleam00/Archon · default branch - · size 0 KB · watchers 0 · source: GitHub REST API and repository README

README

https://github.com/coleam00/Archon/blob/HEAD/Archon

Archon

The first open-source harness builder for AI coding. Make AI coding deterministic and repeatable.

https://github.com/coleam00/Archon/blob/HEAD/coleam00%2FArchon | Trendshift

https://github.com/coleam00/Archon/blob/HEAD/License: MIT https://github.com/coleam00/Archon/blob/HEAD/CI https://github.com/coleam00/Archon/blob/HEAD/Docs

---

Archon is a workflow engine for AI coding agents. Define your development processes as YAML workflows - planning, implementation, validation, code review, PR creation - and run them reliably across all your projects.

Like what Dockerfiles did for infrastructure and GitHub Actions did for CI/CD - Archon does for AI coding workflows. Think n8n, but for software development.

Why Archon?

When you ask an AI agent to "fix this bug", what happens depends on the model's mood. It might skip planning. It might forget to run tests. It might write a PR description that ignores your template. Every run is different.

Archon fixes this. Encode your development process as a workflow. The workflow defines the phases, validation gates, and artifacts. The AI fills in the intelligence at each step, but the structure is deterministic and owned by you.

What It Looks Like

Here's an example of an Archon workflow that plans, implements in a loop until tests pass, gets your approval, then creates the PR:

# .archon/workflows/build-feature.yaml
nodes:
  • id: plan
prompt: "Explore the codebase and create an implementation plan"
  • id: implement
depends_on: [plan] loop: # AI loop - iterate until done prompt: "Read the plan. Implement the next task. Run validation." until: ALL_TASKS_COMPLETE fresh_context: true # Fresh session each iteration
  • id: run-tests
depends_on: [implement] bash: "bun run validate" # Deterministic - no AI
  • id: review
depends_on: [run-tests] prompt: "Review all changes against the plan. Fix any issues."
  • id: approve
depends_on: [review] loop: # Human approval gate prompt: "Present the changes for review. Address any feedback." until: APPROVED interactive: true # Pauses and waits for human input
  • id: create-pr
depends_on: [approve] prompt: "Push changes and create a pull request"

Tell your coding agent what you want, and Archon handles the rest:

You: Use archon to add dark mode to the settings page

Agent: I'll run the archon-idea-to-pr workflow for this. → Creating isolated worktree on branch archon/task-dark-mode... → Planning... → Implementing (task 1/4)... → Implementing (task 2/4)... → Tests failing - iterating... → Tests passing after 2 iterations → Code review complete - 0 issues → PR ready: https://github.com/you/project/pull/47

Previous Version

Looking for the original Python-based Archon (task management + RAG)? It's fully preserved on the archive/v1-task-management-rag branch.

Getting Started

Most users should start with the Full Setup - it walks you through credentials, installs the Archon skill into your projects, and gives you the web dashboard.
> Already have Claude Code and just want the CLI? Jump to the Quick Install.

Full Setup (5 minutes)

Clone the repo and use the guided setup wizard. This configures credentials, platform integrations, and copies the Archon skill into your target projects.

Prerequisites - Bun, Claude Code, and the GitHub CLI

Bun - bun.sh

# macOS/Linux
curl -fsSL https://bun.sh/install | bash

Windows (PowerShell)

irm bun.sh/install.ps1 | iex

GitHub CLI - cli.github.com

# macOS
brew install gh

Windows (via winget)

winget install GitHub.cli

Linux (Debian/Ubuntu)

sudo apt install gh

Claude Code - claude.ai/code

# macOS/Linux/WSL
curl -fsSL https://claude.ai/install.sh | bash

Windows (PowerShell)

irm https://claude.ai/install.ps1 | iex

git clone https://github.com/coleam00/Archon
cd Archon
bun install
claude

Then say: "Set up Archon"

The setup wizard walks you through everything: CLI installation, authentication, platform selection, and copies the Archon skill to your target repo.

Quick Install (30 seconds)

Already have Claude Code set up? Install the standalone CLI binary and skip the wizard.

macOS / Linux

curl -fsSL https://archon.diy/install | bash

x64 compatibility: The macOS/Linux quick install requires AVX2 on x64
CPUs. Older Intel/AMD hardware and virtual machines that mask AVX2 should use
the source installation guide.
ARM64 quick installs are unaffected.

Windows (PowerShell)

irm https://archon.diy/install.ps1 | iex

Homebrew

brew install coleam00/archon/archon

Compiled binaries need a CLAUDE_BIN_PATH. The quick-install binaries
don't bundle Claude Code. Install it separately, then point Archon at it:
>
> # macOS / Linux / WSL
curl -fsSL https://claude.ai/install.sh | bash
export CLAUDE_BIN_PATH="$HOME/.local/bin/claude"
> # Windows (PowerShell)
irm https://claude.ai/install.ps1 | iex
$env:CLAUDE_BIN_PATH = "$env:USERPROFILE\.local\bin\claude.exe"
> Or set assistants.claude.claudeBinaryPath in ~/.archon/config.yaml.
The Docker image ships Claude Code pre-installed. See AI Assistants → Binary path configuration for details.

Start Using Archon

Once you've completed either setup path, go to your project and start working:

cd /path/to/your/project
claude
Use archon to fix issue #42
What archon workflows do I have? When would I use each one?

The coding agent handles workflow selection, branch naming, and worktree isolation for you. Projects are registered automatically the first time they're used.

Important: Always run Claude Code from your target repo, not from the Archon repo. The setup wizard copies the Archon skill into your project so it works from there.

Web UI

Archon includes a web dashboard for chatting with your coding agent, running workflows, and monitoring activity. Run archon serve to start it, whichever way you installed. A binary downloads the matching web UI on first run. A source checkout serves the copy you build: run bun run build:web once from the repo root, then archon serve.

Register a project by clicking + next to "Project" in the chat sidebar - enter a GitHub URL or local path. Then start a conversation, invoke workflows, and watch progress in real time.

Key pages:

Monitoring hub: The sidebar shows conversations from all platforms - not just the web. Workflows kicked off from the CLI, messages from Slack or Telegram, GitHub issue interactions - everything appears in one place.

See the Web UI Guide for full documentation.

What Can You Automate?

Archon ships with workflows for common development tasks:

| Workflow | What it does | |----------|-------------| | archon-assist | General Q&A, debugging, exploration - full Claude Code agent with all tools | | archon-fix-github-issue | Classify issue → investigate/plan → implement → validate → PR → smart review → self-fix | | archon-create-issue | Classify problem → gather context → investigate → create GitHub issue | | archon-issue-review-full | Comprehensive fix + full multi-agent review pipeline for GitHub issues | | archon-piv-loop | Guided Plan-Implement-Validate loop with human review between iterations | | archon-idea-to-pr | Feature idea → plan → implement → validate → PR → 5 parallel reviews → self-fix | | archon-plan-to-pr | Execute existing plan → implement → validate → PR → review → self-fix | | archon-feature-development | Implement feature from plan → validate → create PR | | archon-adversarial-dev | Build a complete application from scratch using adversarial development | | archon-smart-pr-review | Classify PR complexity → run targeted review agents → synthesize findings | | archon-comprehensive-pr-review | Multi-agent PR review (5 parallel reviewers) with automatic fixes | | archon-validate-pr | Thorough PR validation testing both main and feature branches | | archon-architect | Architectural sweep, complexity reduction, codebase health improvement | | archon-refactor-safely | Safe refactoring with type-check hooks and behavior verification | | archon-interactive-prd | Create a PRD through guided conversation | | archon-ralph-dag | PRD implementation loop - iterate through stories until done | | archon-workflow-builder | Generate a new Archon workflow YAML for your project | | archon-remotion-generate | Generate or modify Remotion video compositions with AI | | archon-resolve-conflicts | Detect merge conflicts → analyze both sides → resolve → validate → commit |

Archon ships 19 default workflows - run archon workflow list or describe what you want and the router picks the right one.

Or define your own. Keep a workflow copyable by placing its YAML, commands, and scripts together under .archon/workflows///; both directory names are yours. The same tree works in target repos and under ~/.archon/workflows/. Existing flat workflows and shared .archon/commands/ / .archon/scripts/ remain supported. Same-named workflow files in your repo override bundled defaults.

See Authoring Workflows and Authoring Commands.

Add a Platform

The Web UI and CLI work out of the box. Optionally connect a chat platform for remote access:

| Platform | Setup time | Guide | |----------|-----------|-------| | Telegram | 5 min | Telegram Guide | | Slack | 15 min | Slack Guide | | GitHub Webhooks | 15 min | GitHub Guide | | Discord | 5 min | Discord Guide |

Architecture

┌─────────────────────────────────────────────────────────┐
│  Platform Adapters (Web UI, CLI, Telegram, Slack,       │
│                    Discord, GitHub)                     │
└──────────────────────────┬──────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────┐
│                     Orchestrator                        │
│          (Message Routing & Context Management)         │
└─────────────┬───────────────────────────┬───────────────┘
              │                           │
      ┌───────┴────────┐          ┌───────┴────────┐
      │                │          │                │
      ▼                ▼          ▼                ▼
┌───────────┐  ┌────────────┐  ┌──────────────────────────┐
│  Command  │  │  Workflow  │  │    AI Assistant Clients  │
│  Handler  │  │  Executor  │  │   (Claude / Codex / Pi)  │
│  (Slash)  │  │  (YAML)    │  │                          │
└───────────┘  └────────────┘  └──────────────────────────┘
      │              │                      │
      └──────────────┴──────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────┐
│          SQLite / PostgreSQL (14 core tables)           │
│  Codebases • Conversations • Sessions • Workflow Runs   │
│   Isolation Environments • Messages • Workflow Events   │
│    Users • User Identities • Workflow Node Sessions     │
│         Codebase Env Vars • User GitHub Tokens          │
│           User Provider Keys • User AI Prefs            │
│          (+ Better Auth tables, Postgres only)          │
└─────────────────────────────────────────────────────────┘

Documentation

Full documentation is available at archon.diy/docs.

| Topic | Description | |-------|-------------| | Getting Started | Setup guide (Web UI or CLI) | | The Book of Archon | 10-chapter narrative tutorial | | CLI Reference | Full CLI reference | | Authoring Workflows | Create custom YAML workflows | | Authoring Commands | Create reusable AI commands | | Configuration | All config options, env vars, YAML settings | | AI Assistants | Claude, Codex, and Pi setup details | | Deployment | Docker, VPS, production setup | | Architecture | System design and internals | | Troubleshooting | Common issues and fixes |

For AI tools: Point your LLM at /llms.txt for an index of all documentation, /llms-full.txt for the complete docs in a single file, or /llms-small.txt for a condensed version.

Telemetry

Archon sends a few anonymous events so maintainers can see which workflows get real usage, on what platforms, and whether runs succeed — and prioritize accordingly. No PII, ever. Events: archon_started (once per CLI invocation / server boot), archon_active (daily heartbeat while a server is running, so long-running installs stay counted), chat_turn_handled (each direct AI chat turn — platform, provider, model, duration, and usage totals; never message content), workflow_invoked (each workflow start), workflow_completed / workflow_failed (each run outcome), workflow_approval_resolved (each human approve/reject decision — the binary resolution only, never comments or reasons), and codebase_registered (a pure count when a project is registered — no name, path, or URL).

What's collected (categorical only):

**What's not collected: your code, prompts, messages, custom workflow names, workflow descriptions, git remotes, file paths, usernames, tokens, AI output, error message text, your IP address, your geographic location — none of it.

Opt out: set any of these in your environment:

ARCHON_TELEMETRY_DISABLED=1
DO_NOT_TRACK=1        # de facto standard honored by Astro, Bun, Prisma, Nuxt, etc.
POSTHOG_API_KEY=off   # off | 0 | false | disabled | "" all disable

CI environments (CI=true) are auto-disabled — forks running fixtures in GitHub Actions, CircleCI, etc. do not send events.

Check the current state:** run archon telemetry status to see whether telemetry is enabled, why (if not), the install UUID, and the active host. Run archon telemetry reset to rotate the install UUID. archon doctor also surfaces the current state in its check list.

Shutdown gives pending telemetry a 75 ms flush window, then cancels outstanding requests. Slow or unreachable ingestion can lose events; it does not hold up command exit.

Self-host PostHog or use a different project by setting POSTHOG_API_KEY and POSTHOG_HOST.

Contributing

Contributions welcome! See the open issues for things to work on.

Please read CONTRIBUTING.md before submitting a pull request.

Star History

Star History Chart

License

MIT

GitHub Stars & Activity

23,505Stars
3,475Forks
0Open issues
TypeScriptLanguage

GitHub Popularity

GitHub stars23,505
Forks3,475
Open issues0
Primary languageTypeScript
License-
Stars gained today0
Created-
Last pushed-

Trending History

Trending statusnot on today's boards

Related AI Projects

1

thedotmack / claude-mem

TypeScript★ 94,310⑂ 8,324
2

Egonex-AI / Understand-Anything

TypeScript★ 83,393⑂ 7,038
3

stablyai / orca

TypeScript★ 73,154⑂ 4,785
4

ruvnet / ruflo

TypeScript★ 72,894⑂ 8,655
5

diegosouzapw / OmniRoute

TypeScript★ 68,420⑂ 9,682
6

CherryHQ / cherry-studio

TypeScript★ 52,015⑂ 4,981
7

chatboxai / chatbox

TypeScript★ 41,812⑂ 4,252
8

Yeachan-Heo / oh-my-claudecode

TypeScript★ 39,267⑂ 3,512

More AI Rankings