voice-matching
How to draft new Word sections and extensions that sound like the user, using the style memory and the document context
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
How to draft new Word sections and extensions that sound like the user, using the style memory and the document context
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use when the user wants to build a Google ADK agent — scaffolding a new agent, adding tools/skills/prompts to one, or asking how to structure an ADK project. Triggers on phrases like "create an ADK agent", "build a Google agent", "scaffold an agent", "make an agent that does X", "I need an ADK skeleton", or any task involving generated-agents/, LlmAgent, SkillToolset, or the ADK framework. Also use whenever the user mentions `nuvel`, the `nuvel` CLI, or asks about agent architecture patterns / callbacks / HITL / streaming / ADK prompt engineering — nuvel ships the canonical knowledge skills for those topics. Lean toward triggering — if the task touches Google ADK at all, this skill is in scope.
Delegate work to sub-agents with the ADK 2.0 Task API — `mode='task'`, `mode='single_turn'`, `mode='chat'` on `LlmAgent`, the auto-attached `finish_task` tool, and typed contracts via `input_schema` / `output_schema`. Load this skill when one agent needs to hand a bounded unit of work to another and get a validated result back, or when migrating off SequentialAgent / ParallelAgent / LoopAgent.
Creating valid SKILL.md files following the agentskills.io specification — frontmatter, instructions, references directory, progressive disclosure (L1/L2/L3), and SkillToolset wiring in agent.py. Load this skill when generating domain skills for an agent.
Build graph-based agents with ADK 2.0 `Workflow` — declare nodes and edges, route conditionally, fan-out/fan-in in parallel, run dynamic nodes at runtime, and add human-in-the-loop revision cycles. Load this skill whenever the agent needs anything beyond a strictly linear or trivially parallel pipeline.
Agent architecture patterns for Google ADK 2.0 — when to reach for a single LlmAgent, a Workflow graph (new default for multi-step orchestration), or the shortcut classes SequentialAgent / LoopAgent / ParallelAgent. Load this skill when deciding the agent's top-level shape.
Pattern for turning a brief into a coherent deck outline — intent detection, section ratios, draft headings, expansion
| name | voice-matching |
| description | How to draft new Word sections and extensions that sound like the user, using the style memory and the document context |
| when_to_use | The user asks to draft, write, add, continue, expand, or "knock out" a section in the document. Includes "draft a section about X", "continue from the cursor", "write the intro", "add a paragraph on Y". |
The goal is text the user could insert unchanged. Not "good writing" — their good writing.
Every drafting call starts with:
recall_writing_style — load the voice rulebook. If empty, draft conservatively (short paragraphs, plain words, no flourishes) and tell the user "I haven't learned your style yet — this is generic; keep what works and I'll learn."get_full_document if the brief says "add", "continue", "extend", "the intro", "the next section", or otherwise lives inside an existing doc. Mirror the surrounding paragraphs' register, paragraph length, and terminology. Do NOT silently replace what's already there.propose_section_outline(brief, target_word_count) to lock structure before prose. Adjust the heuristic headings to match the document's tone — they're starting points, not final.The style memory typically contains rules like:
Apply them mechanically. If the memory says "no exclamation marks" and the draft has one, fix it before returning.
[TK: source], [NAME], [FIGURE]. Surface the placeholder list in your reply so the user knows what to fill in.When the agent inserts a draft into the document:
Title: or Section: prefix in the body.## Heading lines only when the user asked for headings; otherwise rely on paragraph breaks.When the agent returns a draft for the user to see in the chat first (no insert):
After the user accepts a draft (taskpane fires learn_style_from_passage on insert), the agent treats it as a teaching signal. The accepted text is gold-standard voice data — better than anything the user wrote on the fly, because the user actively kept it.