Borrowing it
Nothing to install: this file belongs to AssemblyAI/assemblyai-python-sdk. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/AssemblyAI/assemblyai-python-sdk/master/CLAUDE.mdgit clone --depth 1 https://github.com/AssemblyAI/assemblyai-python-sdkWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/assemblyai/assemblyai-python-sdk/claude-md)<a href="https://agentmods.dev/instructions/assemblyai/assemblyai-python-sdk/claude-md"><img src="https://agentmods.dev/badge/instructions/assemblyai/assemblyai-python-sdk/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/assemblyai/assemblyai-python-sdk/claude-md"><img src="https://agentmods.dev/badge/instructions/assemblyai/assemblyai-python-sdk/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.09655 | $0.09655 |
| Opus 5.5 | $0.03862 | $0.03862 |
| Sonnet 5.5 | $0.01931 | $0.01931 |
| Haiku 4.5 | $0.00966 | $0.00966 |
Grade A, and why
assemblyai-python-sdk CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 652 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AssemblyAI Python SDK
Speech-to-text and audio intelligence SDK. Supports pre-recorded transcription, real-time streaming, audio analysis features, and LLM access through AssemblyAI's LLM Gateway.
Quick start
pip install -U assemblyai
import os
import assemblyai as aai
aai.settings.api_key = os.environ["ASSEMBLYAI_API_KEY"]
transcript = aai.Transcriber().transcribe(
"https://assembly.ai/wildfires.mp3",
config=aai.TranscriptionConfig(
speech_models=["universal-3-5-pro", "universal-2"],
speaker_labels=True,
),
)
print(transcript.text)
for utterance in transcript.utterances:
print(f"Speaker {utterance.speaker}: {utterance.text}")
Auth
Set ASSEMBLYAI_API_KEY as an environment variable, or:
aai.settings.api_key = "your-key"
Key classes
aai.Transcriber— Transcribe files, URLs, or streams. Methods:transcribe(),transcribe_async(),submit(),list_transcripts()aai.AsyncTranscriber— Asyncio counterpart ofTranscriber. Same options, every API call a coroutine. Methods:transcribe(),submit(),transcribe_group(),get_by_id(),delete_by_id(),list_transcripts(),upload_file()aai.AsyncTranscript— WhatAsyncTranscriberreturns. Same fields asTranscript, coroutine methodsaai.AsyncClient— Sharedhttpx.AsyncClientpool for one or moreAsyncTranscribersassemblyai.prerecorded.v2— Canonical module for both transcribers, matching the/v2/transcriptAPI. The top-levelaai.*names re-export itaai.TranscriptionConfig— All transcription options:speech_models,speaker_labels,sentiment_analysis,entity_detection,auto_chapters,content_safety,language_detection,summarization,word_boost,disfluenciesaai.Transcript— Result object with.text,.status,.utterances,.words,.chapters,.entities,.sentiment_analysis. Methods:get_sentences(),get_paragraphs(),export_subtitles_srt(),export_subtitles_vtt()aai.SyncTranscriber— Synchronous pre-recorded transcription: audio in, transcript out, one request (no polling). Methods:transcribe(),transcribe_live(),open_live(),transcribe_async(),warm()aai.AsyncSyncTranscriber— Asyncio counterpart ofSyncTranscriber. Same input types, config, result, and errors;transcribe(),transcribe_live()andwarm()are coroutines;open_live()returns anAsyncLiveSession. Owns an HTTP pool: useasync withorawait aclose(), or pass anaai.AsyncClientto share oneaai.SyncTranscriptionConfig— Sync options:model(defaultuniversal-3-5-pro),prompt,keyterms_prompt,conversation_context,language_codes,timestamps,sample_rate,channelsaai.SyncTranscriptResponse— Sync result:.text,.words(SyncWordwithconfidencealways,start/endonly whentimestamps=True),.confidence,.audio_duration_ms,.session_id,.request_time_msaai.DictationTranscriber— Dictation API: audio uploaded as it is spoken over one live request, transcript (and optional LLM pass) out. Methods:open_live()(push-styleDictationLiveSession:write()/close()/result()/abort()),transcribe_live()(iterable, file object, bytes or path),warm(). There is no bufferedtranscribe(): every entry point posts to/v1/transcribe/liveaai.AsyncDictationTranscriber— Asyncio counterpart ofDictationTranscriber;open_live()returns anAsyncDictationLiveSession. Owns an HTTP pool: useasync withorawait aclose()aai.DictationConfig— Dictation options:sample_rate,channels,language_codes,keyterms_prompt,llm_instruction,rewrite_mode(aai.DictationRewriteMode.fastdefault |smart). Rejects unknown fieldsaai.DictationResponse— Dictation result:.text,.words(DictationWordwithtext+confidence),.confidence,.llm_response,.llm_error,.audio_duration_ms,.session_id,.request_time_ms,.sync_time_ms, and.final_text(the LLM rewrite, falling back to.text)aai.TextToSpeech— Text-to-Speech HTTP API: one text per request, audio out. Methods:synthesize()(complete audio as aTTSResponse),stream()(aTTSStreamcontext manager yielding bytes as the API generates them),close()/withfor a client built fromapi_key=. Host fromaai.settings.tts_base_url(https://tts.us.assemblyai.com; sethttps://tts.eu.assemblyai.comfor the EU zone). Requests use the client's own TTS pool (client.tts_http_client, built when theTextToSpeechis), which keeps idle connections 120 s by default (aai.settings.tts_keepalive_expiry; unset, a shorterkeepalive_expiryapplies), so consecutive sentences reuse one connection. Every TTS pool shares one process-wide TLS context. A passedclient=stays the caller's:client.close()closes both poolsaai.AsyncTextToSpeech— Asyncio counterpart ofTextToSpeech;synthesize()is a coroutine andstream()returns anAsyncTTSStream. Owns an HTTP pool: useasync withorawait aclose()aai.TTSSession— Text-to-Speech WebSocket session: one connection, text in as it is written, audio out.withconnects and waits forBegin(session.begin);speak(text)yields one request's audio;generate(text)/flush()-> flush_id /audio(flush_id)for streamed-in text and pipelining (audio()with no id follows the request being written, from another thread);cancel()for barge-in (ends the iteration at once);keep_alive();on(TTSEvents.X, handler(event))forBegin,Audio(switches audio from pull to push),FlushDone,WordBoundaries,Cancelled,Termination,Error. Exit sendsTerminateand setssession.termination(Noneafter a failure). Refusals and failures raiseTTSError(status_codeNone,request_id= session id). Raw PCM/G.711 only; 2,000 chars per generate unlessBeginreports anotherlimits.max_generate_text_length; ~100 chars/s sustained.token=for temporary tokensaai.AsyncTTSSession— Asyncio counterpart:async with, coroutine sends,async for chunk in session.speak(text)aai.TTSConfig— Text-to-Speech options:voice_id(a library voice such asaai-jane, or a cloned voice by UUID or slug),model_id(assemblyai-tts-1),language,sample_rate,encoding(aai.TTSEncoding:pcm_s16ledefault |pcm_mulaw|pcm_alaw|mp3),container(aai.TTSContainer:rawdefault |wav),bit_rate,extend_biometric_consent(owner-only consent renewal of a cloned voice). Rejects unknown fieldsaai.TTSResponse— Text-to-Speech result:.audio(bytes) plus the response headers:.request_id,.region,.model,.voice_id,.language,.encoding,.sample_rate,.container,.bit_rate,.content_type,.voice_expires_at,.billed_characters,.audio_duration_ms.TTSStream.infocarries the same fields withoutaudio;audio_duration_msisNoneon a stream with audio (0when the text had nothing to speak)aai.TTSError— Raised on any Text-to-Speech refusal:.status_code,.error_code(stable API code;biometric_terms_not_accepted403 until the account accepts the biometric data terms in the dashboard,auth_unavailable503 retryable; on a session these arrive as close 3006 and 1011, withstatus_codeNone, the close code in.body["close_code"]and.retryablefrom the API's Error frame),.param,.request_id,.retryable,.retry_after,.errors,.body(the whole envelope)assemblyai.streaming.v3.RealTimeTranscriber— Real-time streaming with event-based API (threaded)assemblyai.streaming.v3.AsyncRealTimeTranscriber— Asyncio-native counterpart; same options/eventsaai.LLMGateway— LLM Gateway client. Resources:models.list(),chat.completions.create()(incl.stream=True),understanding.create()/.validate()aai.AsyncLLMGateway— Asyncio counterpart ofLLMGateway. Same resources, every API call a coroutine; owns an HTTP pool (async withorawait aclose())assemblyai.llm_gateway.v1— Canonical module for both gateways, matching the gateway's/v1API. The top-levelaai.*names re-export itaai.LLMGatewayMessageParam—TypedDictfor a chat message; pass plain dicts ({"role": "user", "content": "..."})
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago Changed · +2 lines · +133 tokens per session 2d2ccb052404
- 15d ago Changed · +9 lines · +422 tokens per session 9e5a68bbbf25
- 16d ago Changed · +29 lines · +907 tokens per session c9952a690eca
- 21d ago Changed · +18 tokens per session cac22e44d54b
- 1mo ago Changed · +87 tokens per session 06e150a7af69
- 1mo ago Changed · +141 lines · +1,761 tokens per session 8f423b16a866
- 1mo ago Changed · +2 tokens per session a50a67c3ef44
- 1mo ago Changed · +38 lines · +784 tokens per session b6d2f16a17a9
- 2mo ago First seen · 433 lines · 5,541 tokens per session scan A 65fa8e9a67c1
assemblyai-python-sdk CLAUDE.md is an instructions file published in the GitHub repository AssemblyAI/assemblyai-python-sdk (213 stars, last pushed yesterday), licensed MIT. It adds 9,655 tokens to every session, about $0.0386 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
assemblyai-python-sdk CLAUDE.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| assemblyai-python-sdk CLAUDE.mdAssemblyAI/assemblyai-python-sdk | Instructions file | 213 | yesterday | MIT | A | 9,655 | Claude Code |
| graftcode graftcode-python.instructions.mdgrft-dev/graftcode | Instructions file | 967 | 1mo ago | none | A | 4,639 | GitHub Copilot |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | today | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |