oma-academic-writing
Draft and revise academic prose against a rubric, evidence, and
Generate or transcribe speech with Voicebox or VoiceStudio, or
Claude Code
$ npx -y skills add first-fluke/oh-my-agent --skill oma-voice --agent claude-code
Codex
$ npx skills add first-fluke/oh-my-agent --skill oma-voice -a codex -y
Cursor
$ npx skills add first-fluke/oh-my-agent --skill oma-voice -a cursor -y
Gemini CLI
$ npx skills add first-fluke/oh-my-agent --skill oma-voice -a gemini-cli -y
GitHub Copilot
$ npx skills add first-fluke/oh-my-agent --skill oma-voice -a github-copilot -y
OpenCode
$ npx skills add first-fluke/oh-my-agent --skill oma-voice -a opencode -y
Windsurf
$ npx skills add first-fluke/oh-my-agent --skill oma-voice -a windsurf -y
name: oma-voice description: Generate or transcribe speech with Voicebox or VoiceStudio, or process existing audio locally. Use for narration, transcripts, timed speech, and loudness conversion; video editing uses oma-video.
Generate and transcribe speech through a local speech backend (the Voicebox app, or VoiceStudio per `voice.backend`), and process existing audio with local media tools. The backend owns synthesis engines and profiles; FFmpeg owns file conversion, duration adjustment, and loudness processing.
1. Detect the requested mode: notification, asset TTS, transcription, or existing-audio processing. For processing, follow `resources/audio-processing.md` directly, before any Voicebox health, profile, or model lookup. 2. Resolve `voice.backend` (`auto` tries Voicebox, then VoiceStudio). For VoiceStudio, follow `resources/voicestudio.md` from here; the steps below describe Voicebox. Verify Voicebox is reachable via MCP handshake or `GET /health`. 3. On the first run only, call MCP `tools/list` and cache the resolved tool names. 4. For notification or asset TTS, resolve the target voice profile id. For transcription, validate the audio input and continue without a profile.
1. **PREPARE**: Resolve the operation and its inputs. Voicebox modes use text/audio and language; TTS additionally needs a profile. File processing uses the source and requested media properties. 2. **ACQUIRE**: If a required signal is missing, run the clarification protocol once. 3. **ACT**: Invoke the appropriate MCP tool (TTS or STT), or process the existing asset with local FFmpeg commands. 4. **VERIFY**: Confirm the response carries audio output or transcript content. Validate manifest fields. 5. **FINALIZE**: Write `manifest.json` alongside the output. Report the path or transcript to the user.
Ship 400+ commits a day. oh-my-agent (oma) turns Claude Code, Codex CLI, Cursor and 11 other coding agents into a team. A planner splits the work, engineers build in parallel, a reviewer checks the result, and a debugger fixes the root cause.
Draft and revise academic prose against a rubric, evidence, and
Evaluate system boundaries and architectural tradeoffs. Use for
Implement server APIs, authentication, and application data access.
Explore goals, constraints, and alternative approaches before
Coordinate assigned specialist tasks and handoffs manually. Use
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.