OODA-based Autonomous AI Agent
Multi-provider routing ยท 63 skills ยท 4-layer memory ยท Self-healing
Quick Start ยท Full Guide ยท API Docs ยท Architecture ยท Contributing
ArcMind is an autonomous AI agent that thinks in OODA loops (Observe โ Orient โ Decide โ Act). It can browse the web, manage files, write code, schedule tasks, send Telegram messages, and learn from every interaction โ all with built-in governance and self-healing.
| Category | Highlights |
|---|---|
| ๐ง Reasoning | OODA loop, multi-step planning, goal tracking |
| ๐ Model Routing | Auto-selects best LLM per task (OpenAI, Anthropic, Ollama, NVIDIA NIM, custom) |
| ๐ ๏ธ 63 Skills | Web search, browser automation, code execution, file ops, email KB, cron scheduling, and more |
| ๐พ 4-Layer Memory | Working โ Short-term โ Long-term โ Vector (ChromaDB) |
| ๐ค Multi-Agent | CEO delegates to specialist agents (search, code, QA, DevOps, PM) |
| ๐ฑ Channels | Telegram bot, REST API, WebSocket, voice input |
| ๐ Governance | Governorๅฎก่ฎก, risk assessment, action approval |
| ๐ฉบ Self-Healing | Watchdog + repair agent + auto-restart |
| ๐ Observability | Prometheus + Grafana + Loki stack |
| ๐ Scheduler | Cron-based task scheduling with timezone support |
# Clone
git clone https://github.com/eason-tien/arcmind.git
cd arcmind
# Configure (only 3 required vars)
cp .env.example .env
# Edit .env: set ARCMIND_API_KEY and at least one LLM provider key
# Start
docker compose up -d
# Check health
curl http://localhost:8100/health# Clone
git clone https://github.com/eason-tien/arcmind.git
cd arcmind
# Setup
make setup # Creates venv, installs deps, copies .env
# Configure
# Edit .env: set ARCMIND_API_KEY and at least one LLM provider key
# Run
make dev # Starts ArcMind on port 8100make setup # First-time setup
make dev # Start development server
make test # Run tests
make lint # Run linter
make docker # Build & start with Docker
make clean # Clean generated filesArcMind uses a .env file for configuration. Copy .env.example to get started:
cp .env.example .env| Variable | Description |
|---|---|
ARCMIND_API_KEY |
API key for authenticating requests to ArcMind |
| At least one LLM provider | See below |
| Provider | Variable | Notes |
|---|---|---|
| Ollama (local) | OLLAMA_ENABLED=true |
Free, runs locally |
| OpenAI | OPENAI_API_KEY |
GPT-4o, GPT-4 |
| Anthropic | ANTHROPIC_API_KEY |
Claude Sonnet/Opus |
| NVIDIA NIM | NVIDIA_API_KEY |
Llama, Mistral |
| Custom | CUSTOM_MODEL_BASE_URL |
Any OpenAI-compatible API |
See
.env.examplefor the full list of optional configuration.
arcmind/
โโโ api/ # FastAPI HTTP server
โโโ channels/ # Telegram, WebSocket
โโโ config/ # Settings, tool registry
โโโ db/ # Database models
โโโ foundation/ # MGIS client (governance, memory)
โโโ governor/ # Risk assessment & action approval
โโโ loop/ # OODA main loop, goal tracker
โโโ memory/ # 4-layer memory system
โโโ runtime/ # Model router, skill manager, lifecycle
โโโ skills/ # 63 built-in skills
โโโ tools/ # Tool definitions
โโโ watchdog.py # Self-healing watchdog
โโโ main.py # Entry point
- Model Router (
runtime/model_router.py) โ Routes tasks to the optimal LLM based on task type, cost budget, and capability requirements. Auto-fallback on failure. - Skill Manager (
runtime/skill_manager.py) โ Discovers, loads, and executes skills with YAML manifests. - OODA Loop (
loop/main_loop.py) โ Core reasoning loop: Observe โ Orient โ Decide โ Act โ Learn. - Governor (
governor/) โ Pre-execution risk assessment. Blocks dangerous actions. - Memory (
memory/) โ Working memory โ short-term โ long-term โ vector embeddings (ChromaDB).
ArcMind exposes a REST API on port 8100 (default):
# Health check
curl http://localhost:8100/health
# Send a message
curl -X POST http://localhost:8100/v1/chat \
-H "Authorization: Bearer YOUR_ARCMIND_API_KEY" \
-H "Content-Type: application/json" \
-d '{"message": "Search for the latest AI news"}'See CONTRIBUTING.md for guidelines.
MIT ยฉ ArcMind Contributors
