Repository navigation
dipper-bot v1.0.0
dipper-bot a compact, self-hosted personal AI assistant built as a single Go service with integrated tools, memory, channels, and web chat.
Highlights
Core Agent Platform
- Single-process architecture for gateway + agent loop + tools + optional web UI.
- Session-safe execution: new messages cancel in-flight runs for the same session.
- Optional per-run timeout controls for operational safety.
Rich Tooling Out of the Box
- File operations: read/write/edit/list with optional workspace restriction.
- Shell execution with timeout controls.
- Web search and web fetch.
- Messaging, session list/history/send, cron scheduling, and spawn/delegation tools.
- MCP integration (
tools.mcpServers) for external tool ecosystems. - Browser automation via Chrome DevTools MCP.
Long-Context & Memory System
- LCM (Lossless Context Management) with DAG + SQLite context assembly.
- LCM enabled by default (
agents.defaults.lcm.enabled=falseto disable). - Token-based memory consolidation (
contextWindowTokens) into:memory/MEMORY.mdmemory/HISTORY.md
- Curated memory via
memorytool for:memory/USER.mdmemory/NOTE.md
- Session search over FTS index (
memory/sessions_fts.db) viasession_search.
Autonomous Learning Loops
- Background memory maintenance loop (
memoryMaintenance) with constrained actions and quality/confidence gates. - Background skills evolution loop (
skillsEvolution) to create/patchskills/*/SKILL.md. - Optional mid-run skill reflection for long tool loops:
midRunReflectEveryToolItersmidRunReflectMinSeconds
Learner Feedback UX
- User-visible learning feedback for autonomous memory/skill writes.
- Two mutually exclusive feedback modes:
- Immediate push (default):
experience.learnerFeedbackInstantPush=true - Next-reply digest: set
experience.learnerFeedbackInstantPush=false
- Immediate push (default):
Channels & Interfaces
- Built-in channels: Telegram, WhatsApp (Baileys bridge), Discord, Feishu, DingTalk, Slack, Email, QQ, Wecom, Webhook.
- HTTP gateway (
POST /message) for integrations. - Built-in web chat UI (
agent --web, defaulthttp://localhost:8600). - Learning dashboard API in web UI (
GET /api/learning/dashboard).
Security & Reliability
- Request size limits and strict JSON decoding on ingress.
- Safer web fetch defaults (private/loopback protections).
- Configurable workspace sandboxing (
tools.restrictToWorkspace, default true). - Rotating structured logs with process-wide logging controls.
Configuration & Operations
- Clear default/explicit semantics using pointer-backed config toggles (omitted vs explicit true/false).
- Expanded operational controls for learning loops, logging, usage accounting, and model pricing overrides.
- Workspace-first design with clean separation of:
- user config
- session storage
- memory files
- cron data
- uploads
Documentation
The release includes updated documentation across:
README.md/README_CN.mddoc/MANUAL.md/doc/MANUAL_CN.mddoc/CONFIG.md/doc/CONFIG_CN.mddoc/DESIGN.md/doc/DESIGN_CN.mddoc/LCM.md/doc/LCM_CN.mddoc/PRIVACY.md/doc/PRIVACY_CN.md
Notes
- This release is designed for self-hosted, workspace-first usage with auditable behavior and low operational footprint.
- For detailed field-by-field configuration, use
doc/CONFIG_CN.md(full reference) anddoc/CONFIG.md(English concise reference).