Features
Voice Agent
The Voice Agent lets you run RepoGo hands-free. Instead of typing, you talk: you can spin up new chats, send work to agents already running, check on what they're doing, and answer their questions — all by voice, in real time.
It is a global orchestrator, not a single chatbot and not bound to whichever workspace opened it. One voice session can coordinate chats across your numbered environments and workspaces. You refer to chats by their spoken handles ("Blue Otter, run the tests") or catalog numbers, and the agent routes your instructions to the exact target.
What it does#
When you start a session, the server loads a numbered catalog of environments, workspaces, and recent chats. Chat summaries come from the shared Postgres history, so web and iOS receive the same context. New chats require a numbered environment/workspace instead of silently using the workspace that happened to open voice. From there you can:
- Start new work. "Open a new chat called Auth Refactor and have Claude split the login view into smaller components." The agent creates the chat and dispatches your prompt.
- Send work to existing chats. "Blue Otter, also add tests for that." The message is routed to that chat — sent immediately if it's idle, or queued behind the in-flight turn if it's busy.
- Check progress. "What's Red Fox up to?" The agent summarizes the chat's current status, latest assistant message, the tools it has called, and the files it touched — in plain language.
- Search your history. "How many times did I run a shell command today?" The agent runs a read-only query over your own chat history.
- Approve or deny tool requests. When an agent pauses for permission ("can I run this command?"), you can say "approve" or "deny" — or "always approve" to stop being asked for that tool this session.
- Answer agent questions. When an agent asks you a clarifying question, you can answer it by voice.
The agent only reports what its tools actually return — it won't invent file names or progress.
Capabilities (tools)#
Under the hood the Voice Agent has access to a small, provider-neutral set of tools:
| Tool | What it does |
|---|---|
ask_expert | Ask the read-only expert about GitHub, memories, reminders, repo activity, or past chats. |
send_chat_message | Send a prompt to a chat. Omit the chat and provide environment/workspace numbers to start a new one; pass a handle, id, or chat number to continue one. Returns whether it was sent or queued. |
read_chat_progress | Get a chat's current status, latest assistant text, recent tool calls, and files changed. |
query_messages | Run a read-only SELECT over your own chat history (scoped to your account, max 50 rows). |
respond_to_agent | Answer a pending approval or user question with one plain response. |
stop_chat | Cancel a chat's currently running turn without deleting the chat. |
iOS also exposes control_ui for native navigation. That is the only tool difference; the agent-facing tools, schemas, prompt, greeting, summaries, numbering, and routing rules are shared with web.
The same unified tool contract is used by every supported voice provider.
Bring your own API key#
The Voice Agent uses your provider account — you bring your own API key. RepoGo never marks up usage; you pay the provider directly at their published rates.
Add your key under Settings → Integrations, in the Voice Agents section. Each provider has its own entry:
- OpenAI Realtime — get a key at platform.openai.com/api-keys
- Gemini Live — get a key at aistudio.google.com/apikey
- xAI (Grok Voice) — get a key at console.x.ai
Keys are encrypted at rest and are only ever used to mint short-lived (≈30 minute) ephemeral session tokens for the realtime connection — your long-lived key never touches the device's audio stream. You pick which provider to use from the provider menu in the voice panel, and your choice is remembered between launches.
Supported providers#
| Provider | Model | Connection |
|---|---|---|
| OpenAI Realtime | gpt-realtime-2.1-mini (default), gpt-realtime, gpt-realtime-mini | WebSocket (24 kHz audio) |
| Gemini Live | gemini-2.5-flash-native-audio-preview-12-2025 (default), gemini-3.1-flash-live-preview | WebSocket (16 kHz in / 24 kHz out) |
| xAI Grok Voice | grok-voice-latest (default), grok-voice-think-fast-2.0, grok-voice-think-fast-1.0 | WebSocket (24 kHz audio) |
Provider pricing#
Because you bring your own key, the cost of a voice session is whatever the provider charges. RepoGo does not mark up model usage.
Estimated session cost#
The voice-agent usage analysis shows that native audio dominates cost; transcripts and small tool messages are usually a smaller add-on. For a simple comparison, assume one hour of active conversation with about 30 minutes of user speech and 30 minutes of assistant speech.
| Provider and model | Estimated cost for that hour | Notes |
|---|---|---|
Gemini Live gemini-2.5-flash-native-audio-preview-12-2025 | ≈ $0.68 | Lowest estimated cost in the current lineup. |
Gemini Live gemini-3.1-flash-live-preview | ≈ $0.69 | Similar audio pricing, with published per-minute audio equivalents. |
OpenAI Realtime gpt-realtime-2.1-mini | ≈ $0.90 audio-only | Add input-transcription and text/context costs when enabled. |
OpenAI Realtime gpt-realtime / gpt-realtime-2.1 | ≈ $2.88 audio-only | Higher-quality tier with much higher audio-token rates. |
xAI Grok Voice grok-voice-latest / grok-voice-think-fast-2.0 | $3.00+ | Published as $0.05/minute; realtime text input events and server-side tools may add cost. |
That makes Gemini the most cost-effective option for the measured voice-agent pattern today. Actual bills can move if your sessions have unusually long model responses, large tool results, lots of injected context, or provider-side pricing changes.
Current rate snapshot#
These are point-in-time provider rates used for the estimate above.1
| Provider | Model | Input | Output | Other charges |
|---|---|---|---|---|
| OpenAI Realtime | gpt-realtime-2.1 | Text $4.00 / 1M tokens; audio $32.00 / 1M tokens | Text $24.00 / 1M tokens; audio $64.00 / 1M tokens | Cached input: text/audio $0.40 / 1M tokens. |
| OpenAI Realtime | gpt-realtime-2.1-mini | Text $0.60 / 1M tokens; audio $10.00 / 1M tokens | Text $2.40 / 1M tokens; audio $20.00 / 1M tokens | Cached input: text $0.06 / 1M tokens; audio $0.30 / 1M tokens. |
| Gemini Live | gemini-2.5-flash-native-audio-preview-12-2025 | Text $0.50 / 1M tokens; audio/video $3.00 / 1M tokens | Text $2.00 / 1M tokens; audio $12.00 / 1M tokens | Free tier available with lower rate limits. |
| Gemini Live | gemini-3.1-flash-live-preview | Text $0.75 / 1M tokens; audio $3.00 / 1M tokens or $0.005 / minute | Text $4.50 / 1M tokens; audio $12.00 / 1M tokens or $0.018 / minute | Image/video input: $1.00 / 1M tokens or $0.002 / minute. |
| xAI Grok Voice | grok-voice-latest, grok-voice-think-fast-2.0, grok-voice-think-fast-1.0 | Audio $0.05 / minute; realtime text input $0.004 / message | Audio included in the per-minute rate | Server-side tools are billed separately. |
Footnotes#
-
Pricing may be out of date. This pricing was last updated on July 30, 2026. For current rates, check the provider pages directly: OpenAI API pricing, Gemini API pricing, and xAI API pricing. ↩