Transcribes audio files into text, supporting speaker diarization and automated labeling for meetings and interviews.

Install

mkdir -p .claude/skills/transcribe && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/1963" && unzip -o skill.zip -d .claude/skills/transcribe && rm skill.zip

Installs to .claude/skills/transcribe

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Transcribe audio files to text with optional diarization and known-speaker hints. Use when a user asks to transcribe speech from audio/video, extract text from recordings, or label speakers in interviews or meetings.
216 chars✓ has a “when” trigger
Beginner

Key capabilities

  • Transcribe audio to text
  • Perform speaker diarization
  • Label speakers in recordings
  • Process audio files into JSON or text
  • Apply chunking for long audio

How it works

It uses a bundled Python CLI to interface with OpenAI models, applying specific chunking and formatting flags based on user requirements.

Inputs & outputs

You give it
Audio file path
You get back
Transcript file in text or JSON format

When to use transcribe

  • Transcribing a recorded team meeting
  • Extracting text from an interview video file
  • Generating a meeting summary with speaker labels
  • Processing audio recordings into searchable text

About this skill

Audio Transcribe

Transcribe audio using OpenAI, with optional speaker diarization when requested. Prefer the bundled CLI for deterministic, repeatable runs.

Workflow

  1. Collect inputs: audio file path(s), desired response format (text/json/diarized_json), optional language hint, and any known speaker references.
  2. Verify OPENAI_API_KEY is set. If missing, ask the user to set it locally (do not ask them to paste the key).
  3. Run the bundled transcribe_diarize.py CLI with sensible defaults (fast text transcription).
  4. Validate the output: transcription quality, speaker labels, and segment boundaries; iterate with a single targeted change if needed.
  5. Save outputs under output/transcribe/ when working in this repo.

Decision rules

  • Default to gpt-4o-mini-transcribe with --response-format text for fast transcription.
  • If the user wants speaker labels or diarization, use --model gpt-4o-transcribe-diarize --response-format diarized_json.
  • If audio is longer than ~30 seconds, keep --chunking-strategy auto.
  • Prompting is not supported for gpt-4o-transcribe-diarize.

Output conventions

  • Use output/transcribe/<job-id>/ for evaluation runs.
  • Use --out-dir for multiple files to avoid overwriting.

Dependencies (install if missing)

Prefer uv for dependency management.

uv pip install openai

If uv is unavailable:

python3 -m pip install openai

Environment

  • OPENAI_API_KEY must be set for live API calls.
  • If the key is missing, instruct the user to create one in the OpenAI platform UI and export it in their shell.
  • Never ask the user to paste the full key in chat.

Skill path (set once)

export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
export TRANSCRIBE_CLI="$CODEX_HOME/skills/transcribe/scripts/transcribe_diarize.py"

User-scoped skills install under $CODEX_HOME/skills (default: ~/.codex/skills).

CLI quick start

Single file (fast text default):

python3 "$TRANSCRIBE_CLI" \
  path/to/audio.wav \
  --out transcript.txt

Diarization with known speakers (up to 4):

python3 "$TRANSCRIBE_CLI" \
  meeting.m4a \
  --model gpt-4o-transcribe-diarize \
  --known-speaker "Alice=refs/alice.wav" \
  --known-speaker "Bob=refs/bob.wav" \
  --response-format diarized_json \
  --out-dir output/transcribe/meeting

Plain text output (explicit):

python3 "$TRANSCRIBE_CLI" \
  interview.mp3 \
  --response-format text \
  --out interview.txt

Reference map

  • references/api.md: supported formats, limits, response formats, and known-speaker notes.

When not to use it

  • Real-time streaming transcription
  • Processing encrypted or non-audio files

Prerequisites

OPENAI_API_KEYuv or python3

Limitations

  • Prompting not supported for diarization models
  • Requires valid API key

How it compares

It offers a deterministic, repeatable CLI workflow with built-in diarization support instead of manual web-based transcription.

Compared to similar skills

transcribe side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
transcribe (this skill)116moReviewBeginner
simplemem-skill16moReviewIntermediate
diary03moReviewAdvanced
skills04moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

skill-installer

openai

Install Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).

29141

figma-implement-design

openai

Translate Figma nodes into production-ready code with 1:1 visual fidelity using the Figma MCP workflow (design context, screenshots, assets, and project-convention translation). Trigger when the user provides Figma URLs or node IDs, or asks to implement designs or components that must match Figma specs. Requires a working Figma MCP server connection.

2460

figma

openai

Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.

2266

gh-fix-ci

openai

Use when a user asks to debug or fix failing GitHub PR checks that run in GitHub Actions; use `gh` to inspect checks and logs, summarize failure context, draft a fix plan, and implement only after explicit approval. Treat external providers (for example Buildkite) as out of scope and report only the details URL.

1234

gh-address-comments

openai

Help address review/issue comments on the open GitHub PR for the current branch using gh CLI; verify gh auth first and prompt the user to authenticate if not logged in.

1059

sentry

openai

Use when the user asks to inspect Sentry issues or events, summarize recent production errors, or pull basic Sentry health data via the Sentry API; perform read-only queries with the bundled script and require `SENTRY_AUTH_TOKEN`.

1048

You might also like

simplemem-skill

aiming-lab

Store and retrieve conversation memories across sessions. Use when asked to 'remember this', 'save conversation', 'add to memory', 'what did we discuss about...', 'query memories', or 'import chat history'. Also use proactively to preserve important dialogue context and decisions.

10

diary

Anhvu1107

ALWAYS use this when the request matches Diary: Unified Diary System: A context-preserving automated logger for multi-project development.

00

skills

alejopuentes1-maker

Skill personalizado para crear síntesis automáticas de sesiones y sincronizarlas con NotebookLM.

00

long-audio-transcript-processor

cafe3310

对大量语音转写稿进行校对、整理、分段处理,支持断点续传和恢复

00

audio-transcription

matthewkeilbot

Transcribe inbound audio clips to text using local Whisper (faster-whisper). Use when the user sends voice notes/audio files and asks what was said, asks for transcript/summary/action items, or asks to process audio privately on-host. Default model is small.en for better English accuracy on constrai

00

literature-review

K-Dense-AI

Conduct comprehensive, systematic literature reviews using multiple academic databases (PubMed, arXiv, bioRxiv, Semantic Scholar, etc.). This skill should be used when conducting systematic literature reviews, meta-analyses, research synthesis, or comprehensive literature searches across biomedical, scientific, and technical domains. Creates professionally formatted markdown documents and PDFs with verified citations in multiple citation styles (APA, Nature, Vancouver, etc.).

5591,298

Search skills

Search the agent skills registry