claude/ai-resources-plugin/skills/init-voice-config/SKILL.md
--- name: init-voice-config description: Initialize voice-to-text config for the project: voice.json, voice-vocabulary.md, voice-context.md. disable-model-invocation: true allowed-tools: Read, Glob, Grep, Write(voice.json), Write(voice-context.md), Write(voice-vocabulary.md), Agent --- # Initialize Voice-to-Text Project Config Create a local `voice.json` config, a `voice-vocabulary.md` vocabulary file, and a `voice-context.md` context file in the current directory. These cover the **clipboard
npx skillsauth add amhuppert/my-ai-resources claude/ai-resources-plugin/skills/init-voice-configInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create a local voice.json config, a voice-vocabulary.md vocabulary file, and a voice-context.md context file in the current directory. These cover the clipboard / file mode baseline (F9 / F10). Advanced options — cleanup instructions and shell-command mode (F8) — are described at the bottom and can be added later via /add-voice-context.
The voice-to-text tool has multiple pipelines that consume different files:
Transcription step (OpenAI) — uses voice-vocabulary.md. A flat list of terms sent as vocabulary hints to help the transcription model accurately recognize domain-specific words. One term per line, no descriptions or markdown structure.
Cleanup step (Claude, clipboard/file mode) — uses voice-context.md for project knowledge (descriptions, terminology, naming conventions). The vocabulary file is included as additional reference.
Optional cleanup customization — an instructionsFile (conventionally voice-instructions.md) can be added to control how clipboard/file cleanup formats text: bullet style, code preservation, structural rules.
Optional shell-command mode (F8) — a separate trio of files (shellContextFile, shellVocabularyFile, shellInstructionsFile) controls voice-driven shell-command generation. Not scaffolded by this skill — add via /add-voice-context when needed.
Research the current project to collect:
Sources to check (read what exists, skip what doesn't):
README.md, package.json, Cargo.toml, pyproject.toml, or equivalentCLAUDE.md, .kiro/steering/product.md, .kiro/steering/tech.mdFor Claude Code commands, skills, and agents, scan these locations:
.claude/commands/*.md — Project-level slash commands. Read YAML frontmatter for name and description.**/.claude-plugin/plugin.json (skip node_modules, dist, and other build artifact directories). For each plugin found:
{plugin-dir}/skills/*/SKILL.md — Plugin skills. Read YAML frontmatter for name and description.{plugin-dir}/agents/**/*.md — Plugin agents. Read YAML frontmatter for name and description. Use the filename (without .md) as the agent name if no name field exists.Write voice-vocabulary.md in the current directory. This file is a flat list of terms, one per line, with no markdown structure, headers, or descriptions. Include:
/init-voice-config)Example:
TypeScript
Zod
Bun
Commander.js
Claude Code
CLAUDE.md
ResolvedFileRef
ConfigSchema
/init-voice-config
/add-voice-context
Guidelines:
Write voice-context.md in the current directory with the following structure:
# Voice-to-Text Context
## Project
{1-2 sentence description of the project}
## Technologies
{Bulleted list of technologies, libraries, and tools with exact spelling. Include the name as it should appear in text.}
## Terminology
{Bulleted list of project-specific terms, acronyms, and jargon. Format: **Term** - brief definition. Focus on words a speech transcriber is likely to mishear or misspell.}
## Naming Conventions
{Brief note on casing conventions and important identifiers that should be preserved exactly.}
## Claude Commands & Skills
{List all slash commands, skills, and agents available in the project. Group by type (Commands, Skills, Agents). Format each as: **/{name}** - one-line description.}
Guidelines for the context file:
Write voice.json in the current directory:
{
"contextFile": "./voice-context.md",
"vocabularyFile": "./voice-vocabulary.md"
}
This config sets the context and vocabulary file paths for clipboard / file mode (F9 / F10). All other settings inherit from the global config at ~/.config/voice-to-text/config.json.
Additional optional keys (not scaffolded by default):
instructionsFile — formatting rules for clipboard/file cleanup (how to clean up the text)shellContextFile, shellVocabularyFile, shellInstructionsFile — for voice-driven shell-command mode (F8)Add these via /add-voice-context if and when needed.
After creating all three files, display:
voice-vocabulary.md contentvoice-context.md contentvoice.json was created/add-voice-context for adding them latervoice-to-text from this directory to use the local configtools
Use when picking or vetting a keyboard shortcut on macOS. Triggers include "what hotkey should I use for X", "is `<combo>` available", "does this shortcut conflict", "recommend a keybinding for…", "check `<combo>` against my setup", "pick a hotkey for…", or any mention of choosing/binding/changing a shortcut in WezTerm, tmux, Zed, Chrome, Claude Code, or macOS. Determines whether a proposed combo collides with OS-reserved bindings, app defaults, or the user's customizations, and recommends ergonomic alternatives when needed.
development
Detect and remove dead code with knip. Use when the user asks to "run knip", "find unused files", "find unused exports", "find unused dependencies", "clean up dead code", "remove dead code", "set up knip", "configure knip", "knip.json", "knip false positive", "knip CI", or mentions a `knip` config, dependency bloat, bundle bloat from unused imports, or tree-shaking unused exports. Covers the configuration-first workflow, confidence-gated deletion, framework-specific gotchas (Next.js 15+, Tailwind, Storybook, Jest, Bun's test runner and `bun build --compile`), monorepos, CI integration, and performance tuning.
tools
This skill should be used when the user asks to "set up react-scan", "install react-scan", "diagnose React re-renders", "find unnecessary renders", "find unstable props", "automate React render checks with Playwright", "react-scan + playwright", "measure component renders programmatically", "check why a React component is slow", or mentions React rendering issues, slow React interactions, render counts, or component-level perf attribution. Covers install across Next.js/Vite/Remix/script-tag/browser-extension, the lite headless API for CI, and the canonical render-attribution → fix → validate loop driven through Playwright.
documentation
This skill should be used when integrating source material into a knowledge base, including when the user asks to "integrate this document into the knowledge base", "add this transcript to the memory bank", "ingest this document", "update the knowledge base", "analyze a new source document", or "sync current-state docs with this source".