Your Loyal and Reliable AI Companion
Philosophy β’ Features β’ Quick Start β’ Architecture β’ Multi-Agent
OpenAkita is a self-evolving AI assistant β your loyal and reliable companion in the digital world.
Like the Akita dog it's named after, OpenAkita embodies:
- π€ Loyal Companion β Always by your side, ready to help whenever you need
- π§ Grows With You β Remembers your preferences and becomes more helpful over time
- πͺ Reliable Partner β Commits to completing tasks, never gives up easily
- π‘οΈ Trustworthy β Keeps your data safe and respects your privacy
OpenAkita is more than a tool β it's a partner that remembers you, understands you, and stands by you through every challenge.
OpenAkita's core is serving people, not showcasing technology. We focus on:
- Understanding Intent: Not just executing commands, but understanding what you really want
- Proactive Communication: Asks when encountering problems, rather than guessing or failing
- Privacy Respect: Your data belongs to you, never misused
OpenAkita can learn and evolve:
- Memory System: Remembers your preferences, habits, common operations
- Skill Extension: Automatically searches or generates new capabilities for new needs
- Experience Accumulation: Learns from each task, becomes more efficient
Once a task is assigned to OpenAkita:
- Persistent Completion: Won't give up due to minor errors
- Smart Retry: Analyzes failure reasons, tries different approaches
- Progress Saving: Long tasks support checkpoint recovery
Through Multi-Agent architecture for efficient parallelism:
- Master-Worker Architecture: Master coordinates, Workers execute
- Smart Scheduling: Allocates resources based on task complexity
- Fault Recovery: Automatic detection and restart of failed nodes
| Feature | Description |
|---|---|
| Smart Dialogue | Multi-turn contextual conversation |
| Task Execution | Shell commands, file operations, network requests |
| Code Abilities | Write, debug, explain code |
| Knowledge Retrieval | Search web, GitHub, local documents |
| Feature | Description |
|---|---|
| Skill System | Extensible skill library, supports customization |
| MCP Integration | Connect browsers, databases, external services |
| Scheduled Tasks | Set reminders, periodic tasks |
| User Profile | Learn your preferences, personalized service |
OpenAkita's "sleep cycle" β automatic maintenance during quiet hours:
| Feature | Schedule | Description |
|---|---|---|
| Memory Consolidation | 03:00 AM | Consolidate daily conversations into long-term memory |
| Self-Check & Repair | 04:00 AM | Analyze errors, auto-fix tool issues, generate reports |
| Task Retrospection | After long tasks | Review execution, extract lessons learned |
| Loop Detection | Real-time | Prevent infinite loops |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Self-Maintenance System β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββ βββββββββββββββββββ β
β β Log System β β Memory System β β
β β β’ File rotationβ β β’ Consolidationβ β
β β β’ Auto cleanup β β β’ Deduplicationβ β
β β β’ Error filter β β β’ Vector searchβ β
β ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ β
β β β β
β ββββββββββββ¬ββββββββββββ β
β βΌ β
β βββββββββββββββββββββββ β
β β Daily Self-Check β β
β β β’ Analyze errors β β
β β β’ LLM diagnosis β β
β β β’ Auto-fix tools β β
β β β’ Generate report β β
β βββββββββββββββββββββββ β
β β
β Error Types: β
β β’ Core (Brain/Memory/Scheduler) β Report only, no auto-fix β
β β’ Tool (Shell/File/Web/MCP) β Auto-fix, self-test β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Log settings
LOG_LEVEL=INFO
LOG_DIR=logs
LOG_RETENTION_DAYS=30
# Self-check (system tasks, cannot be deleted, can be disabled)
# Runs at 03:00 (memory) and 04:00 (self-check) daily| Platform | Status |
|---|---|
| CLI | β Full Support |
| Telegram | β Full Support |
| Feishu | |
| WeCom | |
| DingTalk | |
β οΈ Early Stage Project: This project is in early development. For faster deployment, we recommend using AI coding assistants like Cursor, Claude, or GitHub Copilot to help with setup and troubleshooting.
- Python 3.11+
- LLM API Key (Anthropic, OpenAI-compatible, or other providers)
| Model | Provider | Notes |
|---|---|---|
claude-sonnet-4-5-* |
Anthropic | Default, balanced |
claude-opus-4-5-* |
Anthropic | Most capable |
qwen3-max |
Alibaba | Strong Chinese support |
minimax-2.1 |
MiniMax | Good for dialogue |
kimi-2.5 |
Moonshot | Long-context capability |
π‘ Tip: Enable "extended thinking" mode for complex tasks. Set model to
*-thinkingvariant (e.g.,claude-opus-4-5-20251101-thinking) for better reasoning.
One-line install with interactive setup wizard:
# Install from PyPI
pip install openakita
# Run setup wizard (interactive configuration)
openakita initThe setup wizard will guide you through:
- LLM API configuration (API key, model selection)
- IM channel setup (optional: Telegram, Feishu, etc.)
- Memory system configuration
- Directory structure creation
Or use the quick start script:
# Linux/macOS
curl -fsSL https://raw.githubusercontent.com/openakita/openakita/main/scripts/quickstart.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/openakita/openakita/main/scripts/quickstart.ps1 | iex# Clone repository
git clone https://github.com/openakita/openakita.git
cd openakita
# Create virtual environment
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Install
pip install -e .
# Run setup wizard
openakita init
# Or configure manually
cp .env.example .env
# Edit .env, fill in your API keys# Interactive CLI
openakita
# Execute single task
openakita run "Write a Python calculator"
# Service mode (IM channels only)
openakita serve
# Check status
openakita status# .env file
# Required
ANTHROPIC_API_KEY=your-api-key
# Optional: Custom API endpoint
ANTHROPIC_BASE_URL=https://api.anthropic.com
# Optional: Enable Telegram
TELEGRAM_ENABLED=true
TELEGRAM_BOT_TOKEN=your-bot-token
# Optional: Enable Multi-Agent
ORCHESTRATION_ENABLED=trueβββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β OpenAkita β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββββββββ Identity Layer βββββββββββββββββββββββ β
β β β β
β β SOUL.md AGENT.md USER.md MEMORY.md β β
β β (Values) (Behavior) (Profile) (Memory) β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββ Core Layer βββββββββββββββββββββββββββ β
β β β β
β β βββββββββββ ββββββββββββ βββββββββββββββββ β β
β β β Brain β β Identity β β Memory β β β
β β β (LLM) β β (Self) β β (System) β β β
β β βββββββββββ ββββββββββββ βββββββββββββββββ β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββ Tool Layer βββββββββββββββββββββββββββ β
β β β β
β β βββββββββ βββββββββ βββββββββ βββββββββ β β
β β β Shell β β File β β Web β β MCP β β β
β β βββββββββ βββββββββ βββββββββ βββββββββ β β
β β β β
β β βββββββββββββ ββββββββββββββ βββββββββββββββ β β
β β β Skills β β Scheduler β β Evolution β β β
β β βββββββββββββ ββββββββββββββ βββββββββββββββ β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββ Channel Layer ββββββββββββββββββββββββ β
β β β β
β β βββββββ ββββββββββββ ββββββββββ ββββββββββββ ββββββ β β
β β β CLI β β Telegram β β Feishu β β DingTalk β β QQ β β β
β β βββββββ ββββββββββββ ββββββββββ ββββββββββββ ββββββ β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Component | Description |
|---|---|
| Brain | LLM interaction layer, supports multi-endpoint failover |
| Identity | Identity system, loads SOUL/AGENT/USER/MEMORY |
| Memory | Vector memory system, supports semantic retrieval |
| Skills | Skill system, supports dynamic loading and extension |
| Scheduler | Scheduled task scheduler |
| Channels | Multi-platform message channels |
When ORCHESTRATION_ENABLED=true is set, OpenAkita enters Multi-Agent collaboration mode:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Main Process β
β β
β βββββββββββ ββββββββββββ βββββββββββββ β
β β CLI β β Gateway β β Scheduler β β
β β(Command)β β(IM Chan.)β β (Tasks) β β
β ββββββ¬βββββ ββββββ¬ββββββ βββββββ¬ββββββ β
β β β β β
β ββββββββββββββββΌβββββββββββββββββ β
β βΌ β
β ββββββββββββββββββ β
β β MasterAgent β β
β β (Coordinator) β β
β β β β
β β β’ Task Routing β β
β β β’ Worker Mgmt β β
β β β’ Health Check β β
β β β’ Fault Recov. β β
β βββββββββ¬βββββββββ β
β β β
β βββββββββ΄βββββββββ β
β β AgentBus β β
β β (ZMQ Comm.) β β
β βββββββββ¬βββββββββ β
β β β
β βββββββββ΄βββββββββ β
β β AgentRegistry β β
β β (Registry) β β
β ββββββββββββββββββ β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
ββββββββββββββΌβββββββββββββ
βΌ βΌ βΌ
ββββββββββββββ ββββββββββββββ ββββββββββββββ
β Worker 1 β β Worker 2 β β Worker N β
β (Process) β β (Process) β β (Process) β
β β β β β β
β β’ Execute β β β’ Execute β β β’ Execute β
β β’ Heartbeatβ β β’ Heartbeatβ β β’ Heartbeatβ
β β’ Return β β β’ Return β β β’ Return β
ββββββββββββββ ββββββββββββββ ββββββββββββββ
| Feature | Description |
|---|---|
| Smart Routing | Simple tasks local, complex tasks to Workers |
| Stateless Workers | Session history via messages, flexible scheduling |
| Shared Memory | All Workers use same memory storage |
| Fault Recovery | Heartbeat + automatic Worker restart |
| Dynamic Scaling | Auto-adjust Worker count based on load |
# Enable Multi-Agent
ORCHESTRATION_ENABLED=true
# Worker count
ORCHESTRATION_MIN_WORKERS=1
ORCHESTRATION_MAX_WORKERS=5
# Heartbeat interval (seconds)
ORCHESTRATION_HEARTBEAT_INTERVAL=5
# ZMQ addresses
ORCHESTRATION_BUS_ADDRESS=tcp://127.0.0.1:5555
ORCHESTRATION_PUB_ADDRESS=tcp://127.0.0.1:5556# View Agent status
/agents
# View collaboration stats
/statusopenakita/
βββ identity/ # Identity configs
β βββ SOUL.md # Values
β βββ AGENT.md # Behavior rules
β βββ USER.md # User profile
β βββ MEMORY.md # Working memory
βββ src/openakita/
β βββ core/ # Core modules
β β βββ agent.py # Agent main class
β β βββ brain.py # LLM interaction
β β βββ identity.py # Identity system
β β βββ ralph.py # Task loop
β βββ orchestration/ # Multi-Agent
β β βββ master.py # MasterAgent
β β βββ worker.py # WorkerAgent
β β βββ registry.py # Registry
β β βββ bus.py # ZMQ communication
β β βββ monitor.py # Monitoring
β βββ tools/ # Tool layer
β βββ skills/ # Skill system
β βββ channels/ # Message channels
β βββ memory/ # Memory system
β βββ scheduler/ # Scheduled tasks
βββ skills/ # Skills directory
βββ data/ # Data storage
βββ docs/ # Documentation
| Document | Description |
|---|---|
| Quick Start | Installation and basic usage |
| Configuration | All configuration options |
| Skill System | Creating and using skills |
| MCP Integration | Connecting external services |
| IM Channels | Telegram/Feishu/DingTalk setup |
| Deployment | Production deployment |
Contributions welcome! See Contributing Guide.
# Development environment
pip install -e ".[dev]"
# Run tests
pytest tests/ -v
# Code check
ruff check src/
mypy src/- Anthropic Claude β LLM Engine
- AGENTS.md Standard β Agent behavior specification
- ZeroMQ β Inter-process communication
MIT License - See LICENSE
OpenAkita β Your Loyal and Reliable AI Companion
