AI & Machine LearningFeatured

AIdaemon

A self-hosted AI agent that runs as a background daemon, accessible via Telegram, Slack, or Discord.

RustSQLiteTelegramMCPAI

I wanted an AI assistant I could talk to from my phone that actually does things on my machine. AIdaemon is a single Rust binary that runs as a background service, letting you execute terminal commands, browse the web, manage files, and automate tasks through Telegram, Slack, or Discord. It features persistent memory with vector embeddings, 40+ built-in tools, MCP integration, and intelligent model routing. Runs on anything from a Raspberry Pi to a VPS.

The problem

Anyone who wants to control their own machine from anywhere has to choose between cloud-locked SaaS assistants, fragmented API integrations, or trusting third parties with credentials. Existing tools either silo functionality, require complex setups, or leak access tokens through the cloud.

The approach

A single statically-compiled Rust binary that runs as a background daemon, accessible from Telegram, Slack, or Discord. The agent loop builds history, routes through a model selector, calls the LLM, executes tools, and detects stalls. SQLite-backed persistent memory with vector embeddings gives the agent semantic recall across conversations. Multi-provider support (OpenAI, Anthropic, Grok, Ollama) sits behind a ModelProvider trait. Native MCP integration.

Notable decisions

  • Single binary, no runtime, no Docker. Copies anywhere, starts in milliseconds, around 50 MB total.
  • Memory with semantic recall. Background fact consolidation extracts durable knowledge from conversations, not just message history.
  • Tool risk stratification. Read-only ops run freely; side-effect tools require inline approval (Allow Once, Allow Always, Deny). Terminal allowlists prevent runaway execution.
  • Multi-provider abstraction with policy profiles (cheap, balanced, strong) and fallback chains, swappable without code changes.
  • Channel multiplexing. Telegram, Slack, and Discord live-wired at startup; /connect adds new bots at runtime without restart.

Status

Live at aidaemon.ai. v0.9.31. Published on crates.io as aidaemon and on a Homebrew tap. Recent work on plan-detection heuristics, sliding-window context compaction, and goal-task management. CI/CD via GitHub Actions.

Want similar work for your team?

AI-native senior engineering for AI, cloud, and web. Open to consulting engagements and full-time roles.