Yumii can do things, not just talk: search the web, read your inbox, send email. Every one of those actions flows through the same rule:
Anything that touches the outside world asks you first.
When she decides to use an external tool, a small prompt appears — "Allow Yumii to fetch emails?" — and nothing happens until you click Approve. Deny it and she takes it gracefully, in character, and moves on.
Built in: web search and time
Out of the box she has two tools: the current time (runs freely — it's read-only and local) and web search via DuckDuckGo (gated — it's an external call). No setup needed; ask her to look something up and you'll see the permission prompt in action.
Connecting real apps (Composio)
For real integrations — Gmail today, more toolkits over time — Yumii uses
Composio as the connection broker: Composio hosts the
OAuth flow and holds the account tokens, your Composio API key lives in your
local auth.json, and Yumii talks to your apps through it.
The permission gate, tuned to taste
The confirmation behavior is the HITL_MODE setting (Dashboard → Settings →
"Tool confirmations"):
| Mode | Behavior |
|---|---|
external (default) | Only tools that touch the outside world ask; read-only local tools run freely |
always | Every tool call asks, even the clock |
never | Nothing asks — she acts autonomously. Use deliberately. |
A prompt left unanswered times out and counts as a denial. Interrupting her by voice while a prompt is open also cancels it.
Free-tier budgets (honest section)
Every connected tool has a schema the LLM must read on every turn — roughly a thousand tokens per tool. Free LLM tiers cap request sizes (Groq's free tier caps a single request at 8–12k tokens depending on the model), so Yumii deliberately keeps tool loads lean:
- Gmail connects with a curated set of tools (fetch, send) rather than the full 20+ toolkit, so conversation still fits the budget.
- Long tool results (a big inbox fetch) are truncated before entering her context.
- You can override which tools load per toolkit with the
COMPOSIO_TOOLSkey inconfig.json— see Settings Reference.
Connecting many apps on a free tier
Each additional connected toolkit costs context on every turn. On free LLM tiers, two or three connected apps is the practical ceiling before requests stop fitting; a paid provider tier removes the squeeze.
Managing connections
Dashboard → Tools lists connected apps. Disable drops a toolkit's tools immediately (the Composio-side account connection remains — revoke that in your Composio dashboard, or revoke Google's grant at myaccount.google.com → Security → Third-party access).