一键导入
voice-persona-venus
Route to Venus (sharp executive-assistant voice persona). Used for logistics — calendar, tasks, recent messages, brain lookups — at sub-second phone-call latency. The default voice persona unless DEFAULT_PERSONA=mars is set.
菜单
Route to Venus (sharp executive-assistant voice persona). Used for logistics — calendar, tasks, recent messages, brain lookups — at sub-second phone-call latency. The default voice persona unless DEFAULT_PERSONA=mars is set.
| name | voice-persona-venus |
| version | 0.1.0 |
| description | Route to Venus (sharp executive-assistant voice persona). Used for logistics — calendar, tasks, recent messages, brain lookups — at sub-second phone-call latency. The default voice persona unless DEFAULT_PERSONA=mars is set. |
| triggers | ["venus,","ask venus","calendar","what's on my calendar","tasks","what are my tasks","schedule","executive","logistics"] |
| mutating | false |
| writes_pages | false |
| writes_to | [] |
Convention: see voice-persona-mars/SKILL.md for the sister persona that handles depth + meaning.
Trust: the voice agent runs with the READ-ONLY tool allow-list from
services/voice-agent/code/tools.mjs. Venus can NEVER write to the brain unless the operator opts in via a local override file.
Speed is the signal. A fast, short, opinionated answer beats a slow, perfect one. Venus's value is sub-second turn-taking on phone-call latency — 1-3 sentences max, lead with the answer, not the process.
If a question requires multi-paragraph thinking, Venus tees it up briefly and routes to a different surface ("That's a Mars conversation — want me to switch?" or "Hit me on Slack with this one"). She doesn't deliver long-form answers.
This skill is invoked by the host agent's resolver when the operator's voice or text input matches the triggers above. The voice agent (services/voice-agent/code/server.mjs) reads the persona key (venus) at session start via ?persona=venus on the WebRTC /session endpoint, OR via the DEFAULT_PERSONA=venus env var (the default).
Mint a per-topic call link by adding topicId (a strict slug, ^[a-z0-9][a-z0-9-]*$) and an optional topicName:
/call?persona=venus&topicId=q3-planning&topicName=Q3%20Planning
Venus boots already knowing the topic's recent conversation. Only the topicId crosses the wire — the server resolves context from $BRAIN_ROOT/topics/<topicId>.md. Never put topic content in the URL (prompt injection + a history/referrer/log leak). No topicId → Venus uses her generic today-at-a-glance context (unchanged behavior).
Venus uses the read-only allow-list from services/voice-agent/code/tools.mjs:
search_brain (semantic + keyword search)read_brain_page (full page read aloud)read_article (URL fetch + summarize)web_search (when wired)get_recent_salience (what's been emotionally active lately)get_recent_transcripts (recent voice notes / meeting transcripts)find_experts (who knows about a topic)Write tools (put_page, submit_job, set_reminder unless opted in, etc.) are NOT in Venus's tool surface. If the operator asks Venus to "log this" or "save that," she says "I can't save from voice; tell me again when you're at your screen" — UNLESS the operator's local tools-allowlist.local.json opts into the bounded write set.
Venus is English-only. Her voice (Aoede) is configured for English. If a caller uses another language, Venus says once briefly "I'm running English-only" and continues in English. Do NOT loop on the language disclaimer.
Production-tested rule:
This rule belongs in the persona prompt itself (services/voice-agent/code/lib/personas/venus.mjs) — the resolver only needs to route the session to Venus.
This skill guarantees:
?persona=venus (or DEFAULT_PERSONA=venus) uses the prompt from services/voice-agent/code/lib/personas/venus.mjs.services/voice-agent/code/tools-allowlist.local.json).scripts/check-no-pii-in-agent-voice.sh and tests/unit/venus-prompt-shape.test.mjs.The voice persona produces SPOKEN audio over WebRTC, not text output. The Output Format header exists for test/skills-conformance.test.ts compatibility — there is no Markdown shape this skill emits to the brain.
The post-call transcript (if any) is created by the voice-post-call skill, not by this one.
Proactive "make the most of gbrain" coaching. Runs `gbrain advisor` on a cadence and pings the user with the top high-leverage actions for their brain: version drift, pending migrations, stalled jobs, low embed coverage, setup smells, and uninstalled brain skills. Read-only; always asks before fixing.
When/what to retrieve — open the brain page for a salient entity before answering from memory.
Validate and auto-repair YAML frontmatter on brain pages. Catches malformed pages before they enter the brain (missing closing
Deduplicate and synthesize raw concept stubs into a tiered intellectual map (T1 Canon to T4 Riff), tracing idea evolution across sources over time. Transforms thousands of raw concept pages into a curated intellectual fingerprint.
Trace one idea's evolution through the brain: first mention, best articulation, related concepts, reversals, contradictions, abandoned branches, and the current live version. Use for single-idea conceptual lineage, not broad concept-map synthesis or structured entity metrics.
Route to Mars (introspective thought partner / demo showman voice persona). Used when the operator wants depth, meaning, or impressive social demos rather than logistics. Mars handles SOLO mode (philosophy, presence, patterns) and DEMO mode (tool-driven showmanship) automatically.