Documentation
BitBuddy public alpha guide
Install BitBuddy, connect a model, add optional mail and calendar context, and understand the safety boundaries before you let it live beside your work.
Start here
Public alpha expectations
BitBuddy is public alpha software. It is meant for curious users who are comfortable running a local developer-style app and reporting rough edges. It is not a stable 1.0 product yet.
Features, local data shape, setup flows, and UI details may change between releases. Keep backups of anything important under ~/.bitbuddy.
Local first
BitBuddy stores config, memory, chats, projects, and local credentials on your machine.
Single user
There is no hosted account, team workspace, or cloud sync in the alpha.
Model dependent
Quality depends heavily on the local or hosted model you connect.
Start here
Requirements
Before installing, make sure the machine has these basics:
- Python 3.11+ for the BitBuddy backend.
- Node.js 18+ for the local Svelte dashboard.
- git so the installer can clone and update the source.
- A model provider, such as Ollama, llama.cpp, or an OpenAI-compatible endpoint.
Install
Installer commands
The public installer clones BitBuddy into your home directory, creates a Python virtual environment, installs dashboard dependencies, and creates a bitbuddy launcher.
macOS / Linux
curl -fsSL https://getbitbuddy.com/install.sh | bash Windows PowerShell
irm https://getbitbuddy.com/install.ps1 | iex If the installer says ~/.local/bin is not on your PATH, add the line it prints, restart the terminal, then run:
bitbuddy doctorInstall
Manual install from source
Use this path if you want to inspect every step or modify the source checkout yourself.
git clone https://github.com/bitbuddy-project/bitbuddy-brain.git ~/.bitbuddy/src/bitbuddy-brain
cd ~/.bitbuddy/src/bitbuddy-brain
python -m venv .venv
source .venv/bin/activate
pip install -e .
cd web
npm install
cd ..
bitbuddy doctor On Windows, create and activate the virtual environment with PowerShell syntax instead:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e .Setup
First run
Run setup once, start the backend, then open the tokenized dashboard URL:
bitbuddy setup
bitbuddy serve
bitbuddy dashboard The setup wizard asks for a name, base personality, model provider, optional project memory, and optional calendar settings. It shows a summary before writing configuration.
bitbuddy serve runs the local backend. bitbuddy dashboard starts the web UI and opens a URL that includes your local API token.
Setup
Model providers
BitBuddy needs a chat-capable model. Local models keep more traffic on your machine, but larger hosted models may be more capable.
| Provider | Use when | Typical URL |
|---|---|---|
| Ollama | You want a simple local model setup. | http://127.0.0.1:11434 |
| llama.cpp | You run an OpenAI-compatible local server. | http://127.0.0.1:8080 |
| OpenAI-compatible | You use a hosted or custom compatible endpoint. | Your provider base URL |
bitbuddy provider check
bitbuddy provider models
bitbuddy provider stream-test --prompt "Say hello briefly."Setup
Dashboard and API token
The backend binds to 127.0.0.1:8787 by default. The dashboard runs on 127.0.0.1:5173 and sends an X-BitBuddy-Token header to protected API routes.
bitbuddy auth token
bitbuddy auth rotate For LAN testing, start the backend with --allow-lan and keep the token private. Do not expose the plain HTTP backend directly to the internet.
Setup
Run as a background service
On Linux with user systemd, BitBuddy can keep the backend running after login.
bitbuddy service install
bitbuddy service enable
bitbuddy service status
bitbuddy service logs -f The service runs the backend only. Open the UI with bitbuddy dashboard when you want to use it.
Gmail
Self-hosted Gmail OAuth setup
BitBuddy does not ship a shared Google OAuth app. Each user creates their own Google OAuth client and stores the client credentials locally. This keeps BitBuddy from holding a central Gmail integration for everyone.
The recommended OAuth client type is Desktop app. BitBuddy uses a local loopback callback during connection.
Google Cloud steps
- Open Google Cloud Console and create or select a project.
- Enable the Gmail API for that project.
- Open Google Auth Platform and configure the OAuth consent screen.
- If the app is in testing mode, add your Google account as a test user.
- Add the Gmail scope you want BitBuddy to request.
- Create an OAuth client with application type Desktop app.
- Copy the client ID and client secret.
Choose a Gmail scope
| Scope | Use for | Notes |
|---|---|---|
https://www.googleapis.com/auth/gmail.modify | Read, search, and move messages to Trash. | Recommended default. |
https://mail.google.com/ | Permanent delete and empty Trash. | Only enable if you explicitly need full Gmail access. |
Connect inside BitBuddy
- Open
bitbuddy dashboard. - Go to Settings -> Email.
- Enable email and choose Gmail.
- Paste the Google OAuth client ID and client secret.
- Save email settings.
- Click Connect Gmail and finish the Google authorization flow.
Gmail troubleshooting
- Google says "Something went wrong": disable URL-cleaning extensions, redirect cleaners, tracking parameter strippers, container extensions, VPN browser isolation, or try BitBuddy's clean browser OAuth action.
- Access blocked: confirm the Gmail API is enabled, your account is listed as a test user, and the chosen scope is added in Google Auth Platform.
- Changed scopes: save settings, then reconnect Gmail so Google issues a token with the new scope.
- Permanent delete unavailable: enable Full Gmail access in BitBuddy, add
https://mail.google.com/in Google Cloud, save, and reconnect.
Features
Calendar
BitBuddy includes a local calendar view, reminders, holiday overlays, and assistant calendar tools. The authenticated dashboard can manage events; assistant calendar actions are governed by the assistant permission settings.
Configure calendar basics in Settings -> Calendar. If BitBuddy should use calendar context in chat or autonomy, review the assistant calendar access controls there too.
Features
Projects
Project memories let BitBuddy understand explicit project paths without broad home-directory access.
bitbuddy projects add my-project /path/to/project
bitbuddy projects index my-project
bitbuddy projects map my-project
bitbuddy projects list BitBuddy indexes and summarizes project context into its own data under ~/.bitbuddy. File-writing tools are separate and require the relevant safety gates.
Features
Memory and continuity
BitBuddy keeps memory in layers: conversations, project context, preferences, skills, goals, and self/personality notes. You can inspect memories in the dashboard and use bitbuddy doctor to verify the local database.
Memory is local. There is no hosted BitBuddy account or cloud memory sync in the public alpha.
Features
Skills
Skills are reusable procedures stored locally under ~/.bitbuddy/skills. BitBuddy can list, load, validate, create, patch, and archive skills through confined tools.
Use skills for workflows you want BitBuddy to repeat consistently, such as debugging routines, frontend implementation checklists, or project-specific release steps.
Safety
Safety model and permissions
BitBuddy is designed to be useful without silently taking over your machine. The main controls are modes, tool permissions, explicit project paths, and the local API token.
Plan mode
Read-only. It can inspect, search, and reason, but not mutate files or state.
Debug mode
Allows debugging-related changes while blocking unrelated mutations.
Chat mode
Most capable mode. Sensitive shell, file, calendar, email, and MCP actions use permission gates.
Email and calendar permissions describe what BitBuddy's assistant tools may do. They do not block your own authenticated dashboard actions.
Operate
Config and data locations
~/.bitbuddy/config.yaml # local configuration
~/.bitbuddy/api_token # local API token
~/.bitbuddy/bitbuddy.sqlite # chats, memories, activity, permissions
~/.bitbuddy/projects # per-project memory data
~/.bitbuddy/artifacts # default generated artifact workspace
~/.bitbuddy/skills # local skills
~/.bitbuddy/workspace # BitBuddy-owned notes and drafts Secrets such as provider keys and OAuth tokens are stored locally outside the main config file where possible.
Operate
Update BitBuddy
If you installed with the public installer, rerun the installer to update the source checkout and reinstall dependencies. For a manual checkout, pull and reinstall:
cd ~/.bitbuddy/src
git pull
source .venv/bin/activate
pip install -e .
cd web
npm install
cd ..
bitbuddy doctorOperate
Uninstall or reset
To stop a Linux user service:
bitbuddy service disable
bitbuddy service stop Remove the source checkout and launcher if you only want to uninstall the app code. Remove ~/.bitbuddy only if you also want to delete local memory, chats, config, tokens, and skills.
rm -rf ~/.bitbuddy/src
rm -f ~/.local/bin/bitbuddy Deleting ~/.bitbuddy removes local memory and credentials. Back it up first if you might come back.
Help
Troubleshooting
Start with Doctor. It checks setup, storage, SQLite, ports, provider health, web dependencies, autonomy, and web search.
bitbuddy doctor
bitbuddy doctor fix bitbuddy: command not found
Add ~/.local/bin to your PATH, then open a new terminal.
Dashboard cannot connect
Make sure bitbuddy serve is running. The default backend is 127.0.0.1:8787.
Model errors
Run bitbuddy provider check. For Ollama or llama.cpp, confirm the local model server is running and the configured model exists.
Port already in use
Use custom ports with bitbuddy serve --port and bitbuddy dashboard --api-port, or stop the process using the default port.
Help
Known limitations
- BitBuddy is an alpha and will continue changing after release.
- There is no hosted account, team mode, or cross-device sync.
- The physical body, desktop app, mobile app, and Devices page are roadmap items.
- Small local models may struggle with long context, tools, and multi-step work.
- LAN access is possible but should be treated as advanced local-network use, not internet exposure.