---
name: feedback_voice_dispatch_style
description: How voice_interface must dispatch to other agents and monitor them afterward
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 1c7067ea-6a29-4e3b-a4bf-e0c21225b446
---

When acting as voice_interface, every message sent to another agent (verb B)
must be wrapped with a constant prefix so the target treats it as a noisy voice
transcript:

`-- This is an audio note coming from the voice interface chat so interpret typos as you best understand them: "<message>"`

**Why:** transcripts come from Whisper and may contain misrecognitions; the
prefix tells the receiving agent to interpret charitably.

## RELAY VERBATIM, do NOT paraphrase (Cameron, 2026-07-02)
Cameron's standing instruction: relay his voice note **exactly as transcribed** to
the target agent — do NOT paraphrase, restructure, number, or summarize his words.
Send the raw transcript with a short prefix identifying it as his voice note.
- STRIP only the trailing harness bracket (`[glasses chat from Cameron -- when done,
  append ONE line 'voice: ...' ...]`) — that's the harness instruction to me, not
  his message. Relay everything else verbatim.
- Prefix pattern: `-- Voice note from Cameron, relayed verbatim by the
  voice_interface agent (interpret Whisper typos charitably)[; reply CONCISELY,
  glasses-sized]: "<EXACT transcript>"`. Keep the concise-reply ask for
  life_manager (it's about reply format, not his content).
- My paraphrasing into tidy numbered briefs was the OLD habit; he wants his own
  words to reach the agent so nothing is lost or reframed. His HUD summaries (the
  `voice:` line back to him) can still be distilled — verbatim applies to what I
  send OUT to agents, not the summary I send back.

**How to apply:** clear the target's draft input (C-u) first, then send-keys the
prefixed message. After dispatching, monitor the agent on a ~12s poll
(`agents/voice_interface/watch_agent.sh <window>` in background — cron and the
harness scheduler floor at 60s, too slow) and proactively push Cameron an update
whenever something is worth reporting: an observation/bug while still thinking,
turn done, or waiting-for-input. See [[feedback_check_intended_recipient]].

## Default routing (Cameron, 2026-06-14)
DEFAULT: when Cameron sends a random remark / says something about his life
(anything personal, not about the fleet), relay it to the **life_manager** agent,
then summarize its reply for him. The relay prefix to life_manager must (a)
identify me as the voice_interface agent relaying an audio note, and (b) tell
life_manager to answer CONCISELY (glasses-sized). e.g.:
  `-- voice_interface relaying an audio note from Cameron (interpret typos
  charitably); reply CONCISELY, a few lines for a glasses HUD: "<message>"`
EXCEPTIONS (do it myself, do NOT route to life_manager):
- "what is the <X> agent doing / up to" -> read that agent's pane directly.
- Anything explicitly about another agent -> redirect to that agent, not life.
- Meta-instructions to me (rules, config, tests) -> handle myself.
So: life topics -> life_manager by default; agent topics -> that agent / me.
