Current Status: ✅ All Core Features Complete - Production Ready
- 100+ Go files totaling ~15,000 lines of code
- 10 major phases completed (All planned features)
- Full feature parity with picoclaw + goclaw enhancements
- 22 builtin skills embedded
- Production-ready with comprehensive features
Unified Provider System - Clean adaptor pattern for LLM APIs
- ✅ Unified format layer (UnifiedRequest/Response)
- ✅ Format converters (OpenAI ↔ Claude ↔ Gemini)
- ✅ Streaming support (SSE + JSON-lines)
- ✅ Provider registry (thread-safe)
- ✅ High-level Client API
Providers Implemented:
- ✅ OpenAI (gpt-4, gpt-3.5-turbo, etc.)
- ✅ Claude (sonnet-4-5, opus-4-6, etc.)
- ✅ Gemini (gemini-2.0-flash, gemini-1.5-pro, etc.)
- ✅ Generic (OpenRouter, Groq, vLLM, DeepSeek, Moonshot, etc.)
Flexible Configuration with Viper
- ✅ Multi-format support (JSON, YAML, TOML)
- ✅ Environment variable overrides (NEKOBOT_*)
- ✅ Hot-reload with fsnotify
- ✅ Comprehensive validation
- ✅ Thread-safe access
- ✅ Fx integration module
Structured Logging with Zap + Lumberjack
- ✅ High-performance structured logging
- ✅ Automatic log rotation
- ✅ Dual output (console + file)
- ✅ Multiple log levels
- ✅ Development vs production modes
Dependency Injection with Uber FX
- ✅ Modular architecture
- ✅ Lifecycle management
- ✅ Clean separation of concerns
Intelligent Agent System
- ✅ Main agent loop with tool orchestration
- ✅ Context builder (files, memory, tools)
- ✅ Session management and history
- ✅ Long-term memory (MEMORY.md)
- ✅ Streaming support
- ✅ Multi-turn conversations
Comprehensive Tool Suite
- ✅ Tool registry and discovery
- ✅ File operations (read, write, edit, append, list)
- ✅ Shell execution (exec with safety guards)
- ✅ Web search (Brave API + DuckDuckGo fallback)
- ✅ Web fetch (HTTP content)
- ✅ Message tool (user communication)
- ✅ Spawn/subagent (async tasks)
- ✅ Browser automation (Playwright-like)
Infrastructure Components
- ✅ Message bus (local + Redis backends)
- ✅ State management (file + Redis backends)
- ✅ Heartbeat system (autonomous periodic tasks)
- ✅ Cron job scheduling
- ✅ Gateway service (system service integration)
- ✅ Multi-channel support (8 channels)
Channels Implemented:
- ✅ Telegram
- ✅ Discord
- ✅ Feishu
- ✅ DingTalk
- ✅ Slack
- ✅ MaixCAM
Automatic Workspace Setup
- ✅ 9 embedded template files (SOUL.md, IDENTITY.md, USER.md, etc.)
- ✅ Automatic directory structure creation
- ✅ Template variable substitution
- ✅ Interactive onboard command
- ✅ Daily log auto-creation
- ✅ Fx lifecycle integration
Multi-Path Skill System (from goclaw)
- ✅ Multi-path skill loading (6 priority levels)
- ✅ 22 builtin skills embedded (from goclaw)
- ✅ Skill snapshots for debugging/rollback
- ✅ Version tracking with change detection
- ✅ OS/Architecture eligibility checking
- ✅ Hot-reload with file watching
Builtin Skills Include:
- actionbook, coding-agent, skill-creator, find-skills
- github, discord, obsidian, healthcheck
- tmux, peekaboo, nano-pdf, and 11 more...
Intelligent API Key Management (from goclaw)
- ✅ Multiple API key profiles per provider
- ✅ 3 rotation strategies (RoundRobin, LeastUsed, Random)
- ✅ Intelligent error classification (5 types)
- ✅ Automatic cooldown mechanism
- ✅ Request tracking and monitoring
- ✅ Failover with retry logic
Error Classification:
- Auth failures (401, 403)
- Rate limits (429)
- Billing issues (quota exceeded)
- Network errors (timeouts, connection)
- Server errors (5xx)
Semantic Search System (from goclaw)
- ✅ QMD process management
- ✅ Collection CRUD operations
- ✅ Semantic search interface
- ✅ Session export to markdown
- ✅ Automatic updates (on boot + scheduled)
- ✅ Retention and cleanup
CLI Commands:
nekobot qmd status- Show QMD statusnekobot qmd update- Update collectionsnekobot qmd search- Semantic search
| Metric | Count |
|---|---|
| Total Files | 100+ |
| Total Lines | ~15,000 |
| Phases Completed | 10/10 |
| Providers | 13+ |
| Channels | 8 |
| Tools | 9 |
| Builtin Skills | 22 |
| CLI Commands | 7 |
Binary Size: 27MB (includes all embedded skills)
External Dependencies:
- github.com/spf13/cobra (CLI)
- github.com/spf13/viper (config)
- github.com/fsnotify/fsnotify (hot-reload)
- go.uber.org/zap (logging)
- go.uber.org/fx (DI)
- gopkg.in/natefinch/lumberjack.v2 (log rotation)
- github.com/kardianos/service (system service)
- ✅ Multi-provider LLM support (OpenAI, Claude, Gemini, etc.)
- ✅ Streaming responses with SSE
- ✅ Tool/function calling
- ✅ Session management
- ✅ Long-term memory
- ✅ Configuration hot-reload
- ✅ Structured logging with rotation
- ✅ Multi-channel gateway (Telegram, Discord, etc.)
- ✅ Message bus architecture
- ✅ Heartbeat autonomous tasks
- ✅ Cron job scheduling
- ✅ System service integration
- ✅ Skills plugin system
- ✅ API key rotation and failover
- ✅ QMD semantic search
- ✅ Workspace templating
nekobot agent # Interactive chat
nekobot agent -m "msg" # One-shot message
nekobot gateway # Start gateway server
nekobot skills list # List all skills
nekobot skills sources # Show skill sources
nekobot qmd status # QMD status
nekobot qmd update # Update QMD collections
nekobot qmd search # Semantic search
nekobot onboard # Interactive setup
nekobot version # Version infonekobot/
├── cmd/
│ └── nekobot/
│ ├── main.go # Entry point
│ ├── gateway.go # Gateway commands
│ ├── service.go # Service management
│ ├── skills.go # Skills commands
│ ├── qmd.go # QMD commands
│ └── onboard.go # Onboarding wizard
├── pkg/
│ ├── providers/ # ✅ Phase 1 (Complete)
│ │ ├── types.go
│ │ ├── registry.go
│ │ ├── client.go
│ │ ├── failover.go # Error classification
│ │ ├── rotation.go # API key rotation
│ │ ├── rotation_factory.go # Factory functions
│ │ ├── converter/ # Format converters
│ │ ├── streaming/ # Streaming support
│ │ ├── adaptor/ # Provider adaptors
│ │ └── init/
│ ├── config/ # ✅ Phase 2 (Complete)
│ │ ├── config.go
│ │ ├── loader.go
│ │ ├── watcher.go
│ │ ├── validator.go
│ │ └── fx.go
│ ├── logger/ # ✅ Phase 3 (Complete)
│ │ ├── logger.go
│ │ └── fx.go
│ ├── agent/ # ✅ Phase 4 (Complete)
│ │ ├── agent.go
│ │ ├── context.go
│ │ ├── memory.go
│ │ └── fx.go
│ ├── session/ # ✅ Phase 4 (Complete)
│ │ ├── manager.go
│ │ ├── storage.go
│ │ └── fx.go
│ ├── tools/ # ✅ Phase 5 (Complete)
│ │ ├── registry.go
│ │ ├── file.go
│ │ ├── shell.go
│ │ ├── web_search.go
│ │ ├── web_fetch.go
│ │ ├── message.go
│ │ ├── spawn.go
│ │ ├── browser.go
│ │ └── fx.go
│ ├── subagent/ # ✅ Phase 5 (Complete)
│ │ └── manager.go
│ ├── bus/ # ✅ Phase 6 (Complete)
│ │ ├── bus.go
│ │ ├── local.go
│ │ ├── redis.go
│ │ └── fx.go
│ ├── state/ # ✅ Phase 6 (Complete)
│ │ ├── state.go
│ │ ├── file.go
│ │ ├── redis.go
│ │ └── fx.go
│ ├── heartbeat/ # ✅ Phase 6 (Complete)
│ │ ├── heartbeat.go
│ │ └── fx.go
│ ├── cron/ # ✅ Phase 6 (Complete)
│ │ ├── cron.go
│ │ └── fx.go
│ ├── channels/ # ✅ Phase 6 (Complete)
│ │ ├── manager.go
│ │ ├── telegram/
│ │ ├── discord/
│ │ ├── whatsapp/
│ │ ├── feishu/
│ │ ├── qq/
│ │ ├── dingtalk/
│ │ ├── slack/
│ │ ├── maixcam/
│ │ └── fx.go
│ ├── workspace/ # ✅ Phase 7 (Complete)
│ │ ├── manager.go
│ │ ├── template.go
│ │ ├── templates/*.md # 9 template files
│ │ └── fx.go
│ ├── skills/ # ✅ Phase 8 (Complete)
│ │ ├── manager.go
│ │ ├── loader.go # Multi-path loading
│ │ ├── snapshot.go # Snapshot system
│ │ ├── version.go # Version tracking
│ │ ├── watcher.go
│ │ ├── validator.go
│ │ ├── eligibility.go
│ │ ├── installer.go
│ │ ├── types.go
│ │ ├── builtin/*/SKILL.md # 22 builtin skills
│ │ └── fx.go
│ └── memory/
│ └── qmd/ # ✅ Phase 10 (Complete)
│ ├── manager.go
│ ├── process.go
│ ├── updater.go
│ ├── sessions.go
│ ├── types.go
│ └── config.go
├── docs/
│ ├── ARCHITECTURE.md # System architecture
│ ├── PROVIDERS.md # Provider system
│ ├── LOGGING.md # Logging guide
│ ├── BUS_ARCHITECTURE.md # Message bus
│ ├── GATEWAY_SERVICE.md # Gateway service
│ ├── WEB_TOOLS.md # Web tools
│ ├── GOCLAW_FEATURES.md # Goclaw features plan
│ ├── API_FAILOVER.md # API failover guide
│ ├── QMD_INTEGRATION.md # QMD integration guide
│ └── PROGRESS.md # This file
├── config.example.json # Example configuration
└── go.mod
# Clone repository
git clone <repo-url>
cd nekobot
# Install dependencies
go mod tidy
# Build
go build -o nekobot cmd/nekobot/*.go
# Run onboarding wizard
./nekobot onboard# Configure API keys
vim ~/.nekobot/config.json
# Start interactive chat
nekobot agent
# One-shot message
nekobot agent -m "Hello, what can you do?"
# Start gateway server
nekobot gateway
# List skills
nekobot skills list
# QMD semantic search (if installed)
nekobot qmd status
nekobot qmd search default "topic"See config.example.json for a complete configuration example with:
- Multiple API providers with rotation
- Channel configurations
- QMD integration
- Tools settings
- Heartbeat configuration
- Modular Design: Each package is independent and testable
- Dependency Injection: Uber FX for clean component wiring
- Interface-Based: Easy to mock and extend
- Zero-Copy Streaming: Direct reader-to-handler streaming
- Structured Logging: Zap is one of the fastest Go loggers
- Efficient Buffering: 512KB buffers for streaming
- 27MB Binary: Includes 22 embedded skills
- API Failover: Automatic rotation with intelligent error handling
- State Persistence: File or Redis backends
- Graceful Shutdown: Proper lifecycle management
- Error Recovery: Retry logic and cooldown mechanisms
- Add Providers: Implement Adaptor interface
- Add Channels: Register with channel manager
- Add Tools: Register with tool registry
- Add Skills: Drop .md files in skills directory
- Comprehensive Docs: Detailed guides for all features
- CLI Commands: Easy management and testing
- Hot Reload: Config and skills auto-reload
- Type Safety: Strong typing throughout
All Planned Features Implemented:
- ✅ Provider System - Multi-provider LLM support with unified interface
- ✅ Configuration - Flexible config with hot-reload
- ✅ Logging - Structured logging with rotation
- ✅ Agent Core - Intelligent agent with tools and memory
- ✅ Tools - Comprehensive tool suite (9 tools)
- ✅ Infrastructure - Bus, State, Heartbeat, Cron, Service
- ✅ Workspace - Templating and auto-initialization
- ✅ Skills - Advanced management with 22 builtin skills
- ✅ API Failover - Intelligent rotation and error handling
- ✅ QMD - Semantic search integration
Production Ready Features:
- Complete CLI tool
- System service integration
- Multi-channel gateway
- Autonomous task execution
- Long-term memory
- Semantic search
- API reliability (rotation/failover)
- Comprehensive documentation
- v0.1.0-alpha - Phase 1: Provider Architecture
- v0.2.0-alpha - Phase 2: Configuration Management
- v0.3.0-alpha - Phase 3: Infrastructure (Logger + DI)
- v0.4.0-alpha - Phase 4: Agent Core
- v0.5.0-alpha - Phase 5: Tools System
- v0.6.0-alpha - Phase 6: Advanced Features
- v0.7.0-alpha - Phase 7: Workspace Templating
- v0.8.0-alpha - Phase 8: Advanced Skills Management
- v0.9.0-alpha - Phase 9: API Failover & Rotation
- v0.10.0-alpha - Phase 10: QMD Integration ← Current
Last Updated: 2026-02-13 Current Version: v0.10.0-alpha Status: 🎉 All Features Complete - Production Ready