{"id":47692749,"url":"https://github.com/brandonkorous/axon","last_synced_at":"2026-04-05T05:04:41.945Z","repository":{"id":346487312,"uuid":"1190028111","full_name":"brandonkorous/axon","owner":"brandonkorous","description":"Self-hosted AI command center. Orchestrate AI advisors with persistent memory, voice, and a real-time boardroom.","archived":false,"fork":false,"pushed_at":"2026-04-01T00:58:40.000Z","size":60620,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-03T02:46:09.578Z","etag":null,"topics":["ai","ai-agents","business-tools","claude","command-center","developer-tools","docker","llm","multi-agent","ollama","open-source","personal-assistant","self-hosted","voice-ai"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brandonkorous.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"brandonkorous","open_collective":"axonai"}},"created_at":"2026-03-23T22:41:13.000Z","updated_at":"2026-04-01T00:58:44.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/brandonkorous/axon","commit_stats":null,"previous_names":["brandonkorous/axon"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/brandonkorous/axon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonkorous%2Faxon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonkorous%2Faxon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonkorous%2Faxon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonkorous%2Faxon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brandonkorous","download_url":"https://codeload.github.com/brandonkorous/axon/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonkorous%2Faxon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31424932,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T02:22:46.605Z","status":"ssl_error","status_checked_at":"2026-04-05T02:22:33.263Z","response_time":75,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ai-agents","business-tools","claude","command-center","developer-tools","docker","llm","multi-agent","ollama","open-source","personal-assistant","self-hosted","voice-ai"],"created_at":"2026-04-02T15:52:19.599Z","updated_at":"2026-04-05T05:04:41.904Z","avatar_url":"https://github.com/brandonkorous.png","language":"Python","funding_links":["https://github.com/sponsors/brandonkorous","https://opencollective.com/axonai"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\".github/assets/axon-banner.svg\" width=\"700\" alt=\"Axon — Self-hosted AI Command Center\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eYour self-hosted AI command center.\u003c/strong\u003e\u003cbr /\u003e\n  Orchestrate AI advisors with persistent memory, voice interfaces, and a real-time boardroom — entirely on your infrastructure.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/brandonkorous/axon/blob/main/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-AGPL--3.0-violet\" alt=\"License\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/brandonkorous/axon/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/brandonkorous/axon?style=flat\u0026color=yellow\" alt=\"GitHub Stars\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://hub.docker.com/r/brandonkorous/axon\"\u003e\u003cimg src=\"https://img.shields.io/docker/pulls/brandonkorous/axon?color=blue\" alt=\"Docker Pulls\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://discord.gg/axon\"\u003e\u003cimg src=\"https://img.shields.io/badge/discord-join%20chat-5865F2\" alt=\"Discord\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/brandonkorous/axon/actions\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/brandonkorous/axon/ci.yml?label=CI\" alt=\"CI Status\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://useaxon.dev\"\u003e\u003cimg src=\"https://img.shields.io/badge/website-useaxon.dev-teal\" alt=\"Website\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\".github/assets/axon-demo.gif\" width=\"700\" alt=\"Axon Demo\" /\u003e\n\u003c/p\u003e\n\n---\n\n## Why Axon?\n\nMost AI tools give you a chatbot. Axon gives you a **boardroom**.\n\nRun multiple AI advisors — CEO, CTO, COO, and any custom persona you define — that maintain persistent memory across sessions, debate each other in real-time, and proactively surface insights you didn't think to ask for. Everything runs on your machine. Your data never leaves your infrastructure.\n![axon Dashboard screenshot](.github/assets/axon-dashboard.png)\n![axon Huddle screenshot](.github/assets/axon-huddle.png)\n\n---\n\n## Features\n\n### Intelligence\n\n|               | Feature                   | Description                                                                       |\n| ------------- | ------------------------- | --------------------------------------------------------------------------------- |\n| **Agents**    | Specialist Advisors       | A team of domain experts with distinct personas, vaults, voices, and delegation rules — not one generic chatbot |\n| **Boardroom** | Real-Time Huddles         | Group discussions with multiple AI specialists. Six modes: standard, vote, devil's advocate, pressure test, quick take, decision |\n| **Brain**     | Structured Reasoning      | Graph-based reasoning engine with multi-strategy evaluation, confidence scoring, contradiction detection, and full decision traceability |\n| **Delegate**  | Task Delegation           | Advisors delegate work to each other autonomously (sync or async) across research, audit, implementation, and investigation tasks |\n| **Recruit**   | Agent Recruitment         | Request new specialist agents on the fly with user approval workflows |\n\n### Memory\n\n|               | Feature                   | Description                                                                       |\n| ------------- | ------------------------- | --------------------------------------------------------------------------------- |\n| **Vault**     | Neural Memory Trees       | Obsidian-compatible markdown vaults with YAML frontmatter, wikilinks, full-text search, and graph-based relationship tracking |\n| **Consolidate** | Memory Consolidation   | LLM-driven vault maintenance — duplicate merging, stale archiving, contradiction detection, orphan adoption, and confidence scoring |\n| **Recall**    | Intelligent Recall        | Context-aware retrieval that surfaces relevant vault entries during conversations. Outcome linking lets advisors learn from experience |\n| **Watch**     | Vault Sync                | File watcher for external changes — edit vaults in Obsidian and they sync automatically |\n\n### Interaction\n\n|               | Feature                   | Description                                                                       |\n| ------------- | ------------------------- | --------------------------------------------------------------------------------- |\n| **Voice**     | Voice-First Interface     | Whisper STT, Piper/ElevenLabs/Azure TTS, per-advisor voice catalog, adjustable speed, continuous voice mode |\n| **Connect**   | Platform Integrations     | Slack (Socket Mode), Microsoft Teams (Bot Framework), Zoom (meetings + transcription), Discord (server deployment) |\n| **Dashboard** | Command Center            | Unified view: active agents, kanban task board, issues, approvals, vault health, and per-agent cost tracking |\n| **Commands**  | Slash Commands            | Direct memory operations: `/sleep`, `/remember`, `/recall`, `/forget`, `/tasks`, `/status` |\n\n### Autonomy\n\n|               | Feature                   | Description                                                                       |\n| ------------- | ------------------------- | --------------------------------------------------------------------------------- |\n| **Plugins**   | Shell Access \u0026 Sandbox    | Grant agents host filesystem access (shell) or containerized execution (sandbox) via configurable plugins with executable allowlists |\n| **Sandbox**   | Isolated Sandboxes        | 8 sandbox image types (base, browser, code, data, ML, documents, media, full) with dependency chains and resource limits |\n| **Schedule**  | Proactive Scheduling      | Background heartbeat that picks up pending tasks and reviews completed work at configurable intervals |\n| **Research**  | Deep Research             | Two-tier LLM strategy (local compression + reasoning analysis), web scraping, YouTube transcript extraction, multi-source synthesis |\n| **Media**     | Media Processing          | YouTube transcript extraction and analysis with two-tier compression for cost-effective processing |\n\n### Infrastructure\n\n|               | Feature                   | Description                                                                       |\n| ------------- | ------------------------- | --------------------------------------------------------------------------------- |\n| **Models**    | Org-Level Model Management | Register models per org, assign roles (navigator, reasoning, memory, agent), with per-agent overrides. Supports Anthropic, OpenAI, DeepSeek, Google, Groq, xAI, or fully local via Ollama |\n| **K8s**       | Kubernetes Support        | Run sandboxes as Docker containers (local) or Kubernetes pods (production) — provider abstraction with pre-built images from ghcr.io |\n| **Orgs**      | Multi-Organization        | Isolated vaults, agents, and settings per organization with pre-built templates (Startup, Student, Job Hunt, Family, Creator) |\n| **Shield**    | Full Audit Trail          | Append-only, immutable audit logs filterable by date, agent, action, or tool — complete transparency |\n| **Extend**    | Plugins \u0026 Skills          | Plugin architecture with registry and 10 built-in skills (brainstorming, code review, debugging, decision analysis, etc.) |\n| **Secure**    | Encryption \u0026 Isolation    | AES encryption for stored credentials, container sandboxing for workers, network isolation via Docker or Kubernetes NetworkPolicies |\n| **Work**      | Task \u0026 Issue Management   | Tasks (P0-P3 priority) with parent-child relationships, activity threads, simplified lifecycle (pending/in progress/blocked/done/accepted), and auto-generated achievements |\n\n---\n\n## System Requirements\n\n| | Cloud LLMs (API) | Local LLMs (Ollama) |\n|---|---|---|\n| **Docker** | Required | Required |\n| **RAM** | 4 GB minimum | 16 GB minimum, 32 GB+ recommended |\n| **Disk** | 2 GB | 10–50 GB (depends on models) |\n| **GPU** | Not needed | Optional — CUDA GPU with 8 GB+ VRAM strongly recommended |\n| **API Key** | Anthropic or OpenAI | Not needed |\n\n### Local LLM Model Sizing Guide\n\n| Your Hardware | Recommended Models | Approx. Download |\n|---|---|---|\n| 8 GB RAM, no GPU | `llama3:8b`, `phi4-mini:3.8b` | 3–5 GB |\n| 16 GB RAM or 6 GB+ VRAM | `qwen2.5:7b`, `mistral:7b` | 4–5 GB |\n| 32 GB RAM or 8 GB+ VRAM | `qwen2.5:14b`, `mistral-small:22b` | 9–13 GB |\n| 48 GB+ RAM or 12 GB+ VRAM | `qwen2.5:32b`, `llama3.1:70b` | 20–40 GB |\n\n\u003e **Not sure what your system can handle?** Run `axon doctor` after installing — it detects your hardware and recommends models automatically.\n\n---\n\n## Quick Start\n\n### Option A: Axon CLI (recommended)\n\nThe CLI detects your system, walks you through LLM provider setup, and recommends models based on your hardware.\n\n**macOS / Linux:**\n\n```bash\n# 1. Install the CLI\ncurl -sS https://get.useaxon.dev | sh\n\n# 2. Create a workspace (interactive — detects hardware, picks models)\naxon init my-workspace\n\n# 3. Launch\ncd my-workspace \u0026\u0026 axon start\n```\n\n**Windows (PowerShell):**\n\n```powershell\n# 1. Install the CLI (requires Docker Desktop)\nirm https://get.useaxon.dev | iex\n\n# 2. Create a workspace (restart your terminal first if prompted)\naxon init my-workspace\n\n# 3. Launch\ncd my-workspace; axon start\n```\n\n\u003e **Windows via WSL?** If you prefer WSL, use the macOS/Linux instructions above inside your WSL terminal.\n\n### Option B: Manual setup\n\n```bash\n# 1. Clone the repository\ngit clone https://github.com/brandonkorous/axon.git\ncd axon\n\n# 2. Configure your environment\ncp .env.example .env        # Windows: copy .env.example .env\n# Edit .env — add your API keys (Anthropic, OpenAI, or use Ollama for fully local)\n\n# 3. Launch\ndocker compose up\n```\n\nOpen **[http://localhost:3000](http://localhost:3000)** and meet your advisors.\n\n\u003e **Want fully local LLMs?** See [Local LLM Support](#local-llm-support) below.\n\n---\n\n## Architecture\n\nAxon runs three services via Docker Compose:\n\n```\n┌─────────────────────────────────────────────┐\n│                  Frontend                    │\n│        React 19 · Vite · TailwindCSS        │\n│           DaisyUI · Framer Motion            │\n│                 :3000                        │\n└──────────────────┬──────────────────────────┘\n                   │ REST / WebSocket\n┌──────────────────▼──────────────────────────┐\n│                  Backend                     │\n│      FastAPI · SQLAlchemy · LiteLLM          │\n│        SQLite (default) or Postgres          │\n│                 :8000                        │\n└──────┬───────────────┬──────────────┬───────┘\n       │               │              │\n┌──────▼──────┐ ┌──────▼──────┐ ┌────▼────────────┐\n│ LLM Providers│ │   Ollama    │ │    Sandboxes     │\n│Claude, OpenAI│ │ Local LLMs  │ │ Docker or K8s    │\n└─────────────┘ │   :11434    │ │ ghcr.io registry │\n                └─────────────┘ └─────────────────┘\n```\n\n- **Frontend** — React SPA with real-time agent activity, boardroom view, and vault management\n- **Backend** — FastAPI server handling agent orchestration, memory persistence, and multi-provider LLM routing via LiteLLM\n- **Ollama** (optional) — Run models like `llama3`, `qwen2.5`, and others entirely on your hardware\n- **Sandboxes** — Isolated execution environments (Docker containers or Kubernetes pods) with pre-built images for code, browser, data science, ML, and more\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eConfiguration\u003c/strong\u003e\u003c/summary\u003e\n\n### Environment Variables\n\nCopy `.env.example` to `.env` and configure:\n\n| Variable            | Description                                      | Required            |\n| ------------------- | ------------------------------------------------ | ------------------- |\n| `ANTHROPIC_API_KEY` | Anthropic API key for Claude models              | If using Claude     |\n| `OPENAI_API_KEY`    | OpenAI API key                                   | If using OpenAI     |\n| `DEFAULT_MODEL`     | Fallback LLM model (prefer org-level model management) | No             |\n| `OLLAMA_BASE_URL`   | Ollama endpoint (default: `http://ollama:11434`) | If using local LLMs |\n| `DATABASE_URL`      | Database connection string (default: SQLite)     | No                  |\n| `VAULT_PATH`        | Path to the memory vault directory               | No                  |\n\nFor a full list of options, see [`.env.example`](.env.example).\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eAdding Custom Agents\u003c/strong\u003e\u003c/summary\u003e\n\n### Create a New Advisor\n\nDefine a new advisor by adding a YAML file to the personas directory:\n\n```yaml\n# personas/cfo-advisor.yaml\nname: CFO Advisor\nrole: Chief Financial Officer\ndescription: Financial strategy, fundraising, unit economics, and fiscal discipline.\nmodel: claude-sonnet-4-20250514\nvoice: onyx\nsystem_prompt: |\n    You are a seasoned CFO advising a startup. You focus on burn rate,\n    runway, unit economics, and fundraising strategy. Be direct and\n    data-driven. Flag financial risks early.\n```\n\nRestart the backend and your new advisor appears in the dashboard. No code changes required.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eLocal LLM Support\u003c/strong\u003e\u003c/summary\u003e\n\n### Run Fully Local with Ollama\n\nNo API keys needed. Run everything on your machine:\n\n```bash\ndocker compose --profile local-llm up\n```\n\nThis starts Ollama alongside the frontend and backend. Three models are pulled on first start:\n\n| Model | Size | Default Role |\n|-------|------|-------------|\n| `qwen2.5:7b` | ~4.5 GB | Navigator (tool routing, intent classification) |\n| `llama3:8b` | ~4.7 GB | Memory (vault recall, consolidation) |\n| `qwen2.5:14b` | ~9 GB | Reasoning (agent conversations) |\n\nCustomize via environment variables:\n\n```env\nOLLAMA_NAVIGATOR_MODEL=qwen2.5:7b\nOLLAMA_MEMORY_MODEL=llama3:8b\nOLLAMA_MODEL=qwen2.5:14b\n```\n\nTo pull additional models or re-run after config changes:\n\n```bash\n# Force re-run model pulls\ndocker compose --profile local-llm up ollama-init --force-recreate\n\n# Pull a specific model manually\ndocker exec axon-ollama-1 ollama pull qwen2.5:7b\n\n# List available models\ndocker exec axon-ollama-1 ollama list\n```\n\nOn first load, Axon prompts you to **register models and assign roles** at the org level. Use \"Discover Ollama Models\" to auto-detect your local models.\n\nSupported local models include `qwen2.5`, `llama3`, `mistral`, and any model available in the [Ollama library](https://ollama.com/library).\n\n\u003c/details\u003e\n\n---\n\n## Roadmap\n\n- [x] Multi-agent orchestration with persistent memory\n- [x] Voice-first interface with per-persona voices\n- [x] Real-time boardroom / Huddle sessions (6 modes)\n- [x] Docker Compose deployment\n- [x] Multi-LLM support (Claude, OpenAI, Ollama)\n- [x] Achievement system and audit logging\n- [x] Slack, Teams, Zoom, and Discord integrations\n- [x] Plugin system with registry and built-in web research\n- [x] Agent-to-agent delegation chains (sync and async)\n- [x] Scheduled agent behaviors (task pickup, done review)\n- [x] Structured reasoning engine with decision graphs\n- [x] Memory consolidation and intelligent recall\n- [x] Shell access and sandbox plugins for agent execution\n- [x] Deep research with web scraping and YouTube transcripts\n- [x] Skills system (brainstorming, code review, debugging, decision analysis, etc.)\n- [x] Organization templates (Startup, Student, Job Hunt, Family, Creator)\n- [x] Simplified task lifecycle with parent-child tasks and auto-achievements\n- [x] Google Calendar and Linear integrations\n- [x] Org-level model management with role assignments and curated catalog\n- [x] Kubernetes sandbox support with provider abstraction (Docker + K8s)\n- [x] Pre-built sandbox images via GitHub Container Registry\n- [ ] Tool router — navigator model selects and instructs agent tools\n- [ ] RAG over uploaded documents and codebases\n- [ ] Mobile companion app\n- [ ] Multi-user collaboration with role-based access\n- [ ] One-click cloud deploy templates (Railway, Fly.io)\n- [ ] Webhook triggers for external event-driven advice\n\n---\n\n## Contributing\n\nWe welcome contributions of all kinds. See [**CONTRIBUTING.md**](CONTRIBUTING.md) for guidelines on getting started, code style, and the PR process.\n\nBefore opening a large PR, please open an issue or discussion first so we can align on approach.\n\n---\n\n## Community\n\n- **Website** — [useaxon.dev](https://useaxon.dev) for docs, blog, and getting started guides\n- **Discord** — [Join the server](https://discord.gg/axon) for support, feature discussions, and showcases\n- **GitHub Discussions** — [Ask questions and share ideas](https://github.com/brandonkorous/axon/discussions)\n- **Twitter / X** — Follow [@axon_ai](https://twitter.com/axon_ai) for updates\n\n---\n\n## License\n\nAxon is licensed under the [**GNU Affero General Public License v3.0 (AGPL-3.0)**](LICENSE).\n\nYou are free to use, modify, and self-host Axon. If you distribute a modified version or run it as a network service, you must make your source code available under the same license.\n\n---\n\n\u003cp align=\"center\"\u003e\n  Built with ❤️ by the Axon community\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrandonkorous%2Faxon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrandonkorous%2Faxon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrandonkorous%2Faxon/lists"}