Skip to content

apwn/zubo

Repository files navigation

Zubo

Zubo

Your AI agent that never forgets.
Persistent memory, 20+ tools, 6 channels, 11+ LLM providers — runs entirely on your machine.

Website  ·  Documentation  ·  Community Skills

MIT License Bun TypeScript SQLite


Features

  • 11+ LLM providers — Anthropic, OpenAI, Google Gemini, Ollama, Groq, Together, OpenRouter, DeepSeek, xAI, Fireworks, LM Studio, and any OpenAI-compatible endpoint. Smart routing sends simple queries to fast models automatically.
  • 6 channels — Telegram, Discord, Slack, WhatsApp, Signal, Web Chat
  • Persistent memory — Vector + full-text hybrid search with ONNX embeddings and FTS5. Remembers every conversation, preference, and fact — forever.
  • 20+ built-in tools — Web search, file ops, code execution, APIs, sub-agent delegation, and automatic failover between providers.
  • Extensible skills — Build custom skills in TypeScript. Share them on the registry. Install community skills with one command.
  • 7 integrations — GitHub, Google (Gmail, Calendar, Docs, Drive, Sheets), Notion, Linear, Jira, Slack, Twitter
  • Workflows — Multi-agent pipelines with delegation
  • Natural language scheduling — "Every weekday at 9am" just works. Cron jobs, heartbeat, proactive tasks.
  • Voice — Speech-to-text (Whisper) and text-to-speech (OpenAI, ElevenLabs)
  • Dashboard — Built-in web UI with analytics, memory management, and settings
  • Document ingestion — Upload PDF, DOCX, TXT, CSV, JSON, and more
  • Budget controls — Daily/monthly spending limits with per-model cost tracking
  • 100% local — SQLite database, local vector store. Your data never leaves your machine.

Quick Start

curl -fsSL https://zubo.bot/install.sh | bash

Or install via package manager:

bun add -g zubo    # recommended
npm i -g zubo      # also works

Then:

zubo setup         # interactive config wizard
zubo start         # launch the agent

The web dashboard opens automatically at http://localhost:<port>.

Architecture

User Message
  → Channel (Telegram / Discord / Slack / WhatsApp / Signal / WebChat)
    → Message Router
      → Agent Loop (LLM + Tool Execution)
        → Tools (built-in, skills, integrations)
        → Memory (vector search, FTS5, document parsing)
        → Scheduler (cron, heartbeat, proactive tasks)
      → Response
    → Channel
  → User

Configuration

All config lives in ~/.zubo/config.json. Run zubo setup for interactive configuration, or set values directly:

zubo config set activeProvider anthropic
zubo config set smartRouting.enabled true
zubo config set budget.monthlyLimit 50

See the full configuration reference for all options.

Channels

Channel Setup
Web Chat Enabled by default
Telegram Add channels.telegram.botToken from @BotFather
Discord Add channels.discord.botToken from Developer Portal
Slack Add channels.slack.botToken + appToken (Socket Mode)
WhatsApp Add channels.whatsapp, authenticate via QR
Signal Install signal-cli, add channels.signal.phoneNumber

Integrations

Service Capabilities Secret
GitHub Issues, PRs, Repos github_token
Google Gmail, Calendar, Docs, Drive, Sheets google_api_key
Notion Pages, Databases, Search notion_token
Linear Issues, Projects linear_token
Jira Issues, Boards jira_token
Slack Messages slack_token
Twitter Posts, Timeline, Search twitter_bearer_token

Set secrets through natural conversation: "Set my github_token to ghp_..."

CLI

zubo setup                 Interactive configuration wizard
zubo start [--daemon]      Start the agent
zubo stop                  Stop the background daemon
zubo status                Show runtime status
zubo logs [--follow]       View or stream logs
zubo model [provider/model] Show or switch LLM
zubo skills                Manage skills
zubo install <name>        Install from registry
zubo search <query>        Search the registry
zubo auth create-key       Create an API key
zubo export / import       Backup and restore

Full reference at zubo.bot/docs/cli.html.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run npx tsc --noEmit and bun test
  5. Submit a pull request

License

MIT


Created by @thomaskanze

About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •