Examples
Copy-paste recipes. See the CLI reference for every command and flag.
One-shot prompt
boba run "Explain what this project does in three sentences."Interactive TUI
bobaDrive agents interactively — stream output, approve tool calls, watch the
terminal and diffs. Esc interrupts a turn; /exit leaves.
Pick a profile
Run a specific profile (e.g. a coding agent) instead of the default:
boba --profile coder
boba run --profile coder "Add a --version flag to the CLI."Resume a session
Sessions outlive the client. Reattach to one by id:
boba resume <sessionId>Sign in with a ChatGPT subscription
Use a ChatGPT Plus/Pro subscription via OAuth instead of an API key (tokens auto-refresh):
boba auth login openai-codex
boba auth status openai-codexUse a local model with Ollama
# botbandit.config.yaml
profile: local
profiles:
local:
provider: ollama
extensions: [systemPrompt, baseTools, skills, approval, memory]
providers:
ollama:
baseURL: http://localhost:11434
models:
"qwen3-coder:480b-cloud":boba run "Refactor this function for readability."Drive agents from Telegram
Telegram is a resident service, not a command — configure a token and restart the daemon:
# botbandit.config.yaml
extensions:
telegram:
token: env:BOTBANDIT_TELEGRAM_TOKEN
allowedUsers: [123456789] # fail-closed: unset means nobodyboba daemon restartSee Telegram.
Run a markdown document as a task
boba run-task ./morning-triage.md --profile coderRun the daemon explicitly
The daemon owns your sessions so they survive across clients. It usually starts on demand, but you can run it in the foreground:
boba daemonCheck what’s left of your model plan
boba subscriptions --refreshLast updated on