Bestie Docs
Bestie / local companion runtime
Make the runtime trustworthy before you make it powerful.
Bestie is a self-hosted AI companion with editable character files, local SQLite memory, configurable providers, and a localhost console. This documentation starts with a working local runtime, then lets you add only the capabilities you intend to operate.
First-run board
One local runtime. Four things to establish.
- 01Install
Node.js 24+ and npm provide the local CLI.
npm install -g bestie-agent - 02Configure
Onboarding creates local files and sets up a provider.
bestie onboard - 03Verify
Doctor checks paths, config, secret presence, and provider access.
bestie doctor - 04Talk
Start in terminal chat or open the local web console.
bestie chat
Add capabilities deliberately
Section titled “Add capabilities deliberately”Use the runtime locally before connecting a service.
Required firstChannelTelegramOwner-only polling with attachments, voice workflows, commands, and approvals.
After Doctor passesChannelZaloOwner-only local polling through the current text-only adapter.
After Doctor passesOperateBackground runtimeUse a daemon or managed user service, not both for one target.
When you need continuityExtendSkills, tools, and MCPIntroduce new capability under an explicit permission policy.
Review permissions firstControlLocal memoryInspect, edit, export, pause, approve, or delete it.
Owner controlledOperate with boundaries
Section titled “Operate with boundaries”Inspectable: character configuration, runtime files, local memory, diagnostics, and logs stay available to the owner.
Permission-gated: public, external, destructive, payment, and unknown actions need explicit confirmation.
Honest: Bestie is software, not conscious or human, not a therapist replacement, and not a romantic companion.
