A lightweight, self-hosted personal agent app with a TUI and GUI, local workspace tools, human approval, persistent sessions, memory, and Skill/Plugin/MCP extensions.
sirquy/bestie
Self-hosted, local-first AI companion runtime with a Vietnamese-first character, local SQLite memory, Telegram/Zalo channels, skills, and permission-gated tools.
- Stars
- 106
- Forks
- 1
- Open issues
- 18
- Last commit
- 2 days ago
What is it?
Bestie is a TypeScript CLI and runtime for running a personalized AI companion on your own machine. Its character and prompt files are editable, and it defaults to Vietnamese. Conversations and memory are stored locally in SQLite, with pending approvals and governance controls for what gets remembered.
The project connects to multiple LLM providers, including OpenAI-compatible endpoints, Anthropic, Gemini, Groq, OpenRouter, Ollama, and local Gemini, Claude, and Codex CLI logins. It supports model fallbacks and provider diagnostics. A localhost Web UI, started with `bestie ui`, covers chat, memory, a knowledge graph, channels, approvals, MCP, tools, skills, and settings.
Channels include Telegram and Zalo polling, plus cron schedules, all managed as daemons or user services on Linux, macOS, and Windows. Tools that touch local files or external actions go through a permission gate, and external content is treated as untrusted. The project is not a replacement for professional mental health, legal, medical, or financial advice.
Key features
- 01Vietnamese-first character with editable character and prompt files
- 02Local SQLite memory with approval and governance controls
- 03Telegram and Zalo channel runtimes plus cron schedules
- 04Multiple LLM providers with model fallbacks and diagnostics
- 05Permission-gated local tools and MCP calls
- 06Localhost Web UI started with `bestie ui`
Use cases
- Running a private personal AI assistant that stays on your own machine
- Chatting with an AI companion through Telegram or Zalo
- Routing a personal assistant through a local Ollama or CLI-based model login
- Experimenting with a permission-gated agent runtime that controls local file access
Topics
FAQ
- What is bestie?
- Self-hosted, local-first AI companion runtime with a Vietnamese-first character, local SQLite memory, Telegram/Zalo channels, skills, and permission-gated tools. Bestie is a TypeScript CLI and runtime for running a personalized AI companion on your own machine. Its character and prompt files are editable, and it defaults to Vietnamese. Conversations and memory are stored locally in SQLite, with pending approvals and governance controls for what gets remembered.
- Is bestie free to use? What license does it have?
- bestie is open source under the MIT license. Check the license terms before using it in commercial products.
- Is bestie still maintained?
- Actively maintained. The last commit to bestie was on Oct 20, 2026.
- What can I use bestie for?
- Running a private personal AI assistant that stays on your own machine Chatting with an AI companion through Telegram or Zalo Routing a personal assistant through a local Ollama or CLI-based model login Experimenting with a permission-gated agent runtime that controls local file access
- Where can I get bestie?
- The source code and installation instructions are on GitHub: https://github.com/sirquy/bestie
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted AI personal assistant that chats via Telegram, runs scheduled tasks, and connects to MCP servers and host tools.
Open-source AI personal assistant for planning, writing and personal knowledge, runnable on a Mac or self-hosted with your own model keys.
A lightweight self-hosted AI agent written in Go that runs on your server and works through Telegram, using Anthropic, OpenAI or OpenRouter models.
Self-hosted, local-first personal AI agent with layered memory, tool permissions, workflows and IM channel integration.
A local-first personal AI agent for Android with permanent memory, scheduled autonomous tasks, self-written mini-apps, and an optional home-screen launcher.