skills/fetch-google-recorder/SKILL.md
Fetch and transcribe Google Recorder voice notes. Use when the user shares a recorder.google.com link and wants the original audio file, a transcript, or wants to act on a voice note.
npx skillsauth add alexeygrigorev/.claude fetch-google-recorderInstall 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.
Fetch Recorder-provided transcripts from public Google Recorder share links. Fetch audio only when explicitly needed, and optionally transcribe audio with WhisperX.
Google Recorder links must be public. Private links redirect to Google sign-in and cannot be fetched without an authenticated browser session or cookies.
Prefer this when the user asks for the transcript. Google Recorder
shares already expose a transcript through the Recorder playback RPC, so
there is no need to download the .m4a or run WhisperX.
Run from the directory where outputs should be written:
uv run python ~/.claude/skills/fetch-google-recorder/recorder.py transcript \
'https://recorder.google.com/<share-id>' \
--out-dir fetched
This writes:
<recording-title>.transcript.txt
<recording-title>.transcription.jsonpb
<recording-title>.words.json
Use .transcript.txt for normal text workflows. Use .words.json only
when word-level timestamps are needed.
Run from the directory where outputs should be written:
uv run python ~/.claude/skills/fetch-google-recorder/recorder.py fetch \
'https://recorder.google.com/<share-id>' \
--out-dir fetched
This writes the original .m4a audio file. The filename is lowercase and
underscore-separated, based on the Recorder title. It also tries to write
the Recorder-provided transcript files.
WhisperX currently needs Python 3.13 for the available Torch wheels. Use --python 3.13 even if the surrounding repo defaults to another Python version:
uv run --python 3.13 --with whisperx --with torch \
python ~/.claude/skills/fetch-google-recorder/recorder.py transcribe \
fetched/google_recorder_apr_24_at_12_26.m4a
This writes:
<audio-stem>.whisperx.txt
The timestamped transcript format is:
[MM:SS] transcript text
Add --raw only if a plain raw transcript is also needed:
<audio-stem>.whisperx.raw.txt
For the full flow:
uv run --python 3.13 --with whisperx --with torch \
python ~/.claude/skills/fetch-google-recorder/recorder.py fetch-transcribe \
'https://recorder.google.com/<share-id>' \
--out-dir fetched
For transcript requests, use the transcript command first. It is faster
and avoids downloading audio.
After fetching/transcribing audio, use the .m4a for audio workflows and
.whisperx.txt for WhisperX text workflows. If WhisperX transcription
quality is poor, inspect the Recorder-provided .transcript.txt.
development
Add the standardized CI publish workflow (`.github/workflows/publish.yml` + `make release`) to an existing Python project so PyPI releases happen on tag push. Use when a project still publishes via a local script (`publish.py`, `hatch publish`, `twine upload`) or has no automated publish at all.
development
Release the current project to its package registry and GitHub by bumping the version, pushing a tag, and letting CI publish. Works for any project (Python/PyPI, Rust/crates.io, Node/npm, etc.) that has a CI publish workflow keyed off `v*` tags.
tools
Initialize a new Python library with modern tooling, packaging, tests, and optional CLI support. Use when the user wants to scaffold a new Python package.
development
Run and fix stylint checks for prose, Markdown, lessons, workshops, docs, and agent-written text. Use when editing written content or when the user asks for style, polish, or lint cleanup.