$ show feder-cr/invisible_dots
Invisible Dots is a self-hosted, open-source platform for deploying and managing persistent AI agents ('Dots'). Each Dot operates within its own dedicated QEMU virtual machine, providing a secure, isolated environment with a full Linux desktop, browser, and file system. The platform is designed for undetectability and long-running autonomy, serving as an open-source alternative to proprietary agent services. The system is a polyglot monorepo with a strict separation between the host control plane (TypeScript) and the guest agent (Go) and engine (Python). The host manages VM lifecycle, scheduling, a web UI, CLI, and messaging channels (Telegram/WhatsApp). The guest runs a Go daemon for low-level system access and a Python engine (forked from nanobot) that orchestrates LLM calls, tool execution, and permissions. Key features include a granular permission system with approval workflows, a cron-like task/automation system, cost capping per task, and a comprehensive benchmark suite for evaluating agent capabilities. The codebase demonstrates exceptional engineering craftsmanship with clean abstractions (Database, Channels, Computer), robust testing strategies (contract tests, fakes, e2e), and reusable utility libraries (ISO writer, SSE parser, atomic file operations). While primarily an application, the project includes a significant research-oriented benchmark suite (tests/bench) and the engine itself is a research fork (nanobot), giving it a hybrid character. The core value, however, is as a production-grade application platform.
The LLM identified 6 files worth highlighting for reuse:
Incremental text/event-stream parser for the Server-Sent Events protocol. It is a pure, stateless parser that handles incremental data chunks, correctly parsing event types, data fields, and IDs. It is reused across the SDK, web client, and VM manager, demonstrating a clean, reusable utility pattern.
A pure TypeScript library for writing ISO 9660 + Joliet disk images. It constructs the complex binary format (volume descriptors, path tables, directory records) without relying on external system tools like mkisofs. This is a highly specialized, self-contained component that solves a niche systems problem elegantly.
Defines an abstract DbBase interface for database operations, with concrete implementations for PGlite (embedded WebAssembly PostgreSQL) and external PostgreSQL. It features transaction misuse detection, preventing queries outside a transaction, which is a non-obvious quality-of-life feature for robust application development.
Implements a PID-based lock file mechanism to ensure single-instance execution of processes. It robustly handles stale lock files by tracking host uptime, preventing race conditions and ensuring data integrity in a distributed or crash-prone environment.
The foundational framework for defining LLM-callable tools. It provides a Tool base class with JSON Schema validation, parameter casting, and schema generation. It handles nullable unions, enums, and complex nested objects, serving as a robust, reusable pattern for building agent tool ecosystems.
Defines the abstract Channel and ChannelSink interfaces for integrating external messaging platforms. It encapsulates capabilities, secrets management, and error handling, providing a clean adapter pattern that allows Telegram, WhatsApp, and future channels to be added without modifying core platform logic.