Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Configure AssemblyAI local development with hot reload and testing. Use when setting up a development environment, configuring test workflows, or establishing a fast iteration cycle with AssemblyAI. Trigger with phrases like "assemblyai dev setup", "assemblyai local development", "assemblyai dev environment", "develop with assemblyai".
.claude/skills/jeremylongshore-assemblyai-local-dev-loop/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 57% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 120% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 80% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 67% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 27% | 0% |
Build an AssemblyAI local loop with synthetic fixtures, recorded contracts, and an optional bounded live lane. Treat live audio, transcript content, credentials, spend, and destructive state as separately governed boundaries.
Ordinary development stays offline. Fixtures model REST job states, Streaming v3 messages, both webhook families, LLM Gateway outputs, throttling, duplicates, and termination. A public tunnel and live API call are explicit exposure and cost boundaries.
For live work, inject ASSEMBLYAI_API_KEY from an approved secret manager and send the raw value only in the AssemblyAI Authorization header to the configured first-party host. Never print, commit, place in a URL, or expose it to an untrusted client. Callback secrets and temporary streaming tokens are separate credentials.
Use Read, Glob, and Grep to inspect repository code, configuration, fixtures, and evidence. Use Write and Edit only for approved implementation or documentation changes. Do not call AssemblyAI, upload audio, open a streaming session, mint a token, replay a callback, deploy, rotate a key, or delete a transcript merely because this skill was invoked.
Require an accountable owner before live audio processing, production credential or endpoint changes, paid model or capacity changes, content retention, callback replay, deployment, or deletion. Read-only repository inspection and synthetic offline validation do not authorize live vendor actions.
Return the operation scope, environment, region, contract surface, authorization class, model and feature decisions, deterministic validation results, content-free identifiers, risks, cleanup or rollback state, and a concise pass/fail receipt. Exclude credentials, signed URLs, audio, transcript text, prompts, and customer-derived content.
Rerun the smallest relevant deterministic check, compare actual state with the requested outcome and current first-party contract, verify sensitive fields are absent from evidence, and confirm rollback, termination, or deletion state before reporting success.
Review the dated first-party evidence map before relying on any model, parameter, limit, price, region, or lifecycle claim.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 12,522 | 12,557 | +0% | 1 | 1 | 0% | 2,667 | 4,338 | +63% | 0 | 0 | — |
case-02 | fail→fail | 12,243 | 8,444 | -31% | 1 | 1 | 0% | 2,466 | 3,263 | +32% | 0 | 0 | — |
case-03 | fail→pass | 14,478 | 13,199 | -9% | 1 | 1 | 0% | 2,784 | 4,366 | +57% | 0 | 0 | — |
case-04 | fail→fail | 16,093 | 13,476 | -16% | 1 | 1 | 0% | 3,033 | 4,436 | +46% | 0 | 0 | — |
case-05 | fail→fail | 19,947 | 19,296 | -3% | 1 | 1 | 0% | 3,752 | 5,303 | +41% | 0 | 0 | — |
case-06 | pass→pass | 8,935 | 7,017 | -21% | 1 | 1 | 0% | 1,623 | 2,767 | +70% | 0 | 0 | — |
case-07 | fail→fail | 14,932 | 9,679 | -35% | 1 | 1 | 0% | 2,687 | 3,428 | +28% | 0 | 0 | — |
case-08 | pass→pass | 10,134 | 4,559 | -55% | 1 | 1 | 0% | 1,866 | 2,391 | +28% | 0 | 0 | — |
case-09 | fail→pass | 5,103 | 2,758 | -46% | 1 | 1 | 0% | 972 | 2,143 | +120% | 0 | 0 | — |
case-10 | fail→pass | 11,138 | 9,074 | -19% | 1 | 1 | 0% | 1,857 | 3,338 | +80% | 0 | 0 | — |
case-11 | pass→pass | 7,399 | 2,721 | -63% | 1 | 1 | 0% | 1,385 | 1,977 | +43% | 0 | 0 | — |
case-12 | fail→pass | 6,830 | 3,165 | -54% | 1 | 1 | 0% | 1,259 | 2,098 | +67% | 0 | 0 | — |
case-13 | fail→pass | 9,446 | 1,783 | -81% | 1 | 1 | 0% | 1,482 | 1,875 | +27% | 0 | 0 | — |
case-14 | fail→pass | 5,882 | 4,096 | -30% | 1 | 1 | 0% | 1,051 | 2,379 | +126% | 0 | 0 | — |
case-15 | fail→fail | 9,037 | 4,347 | -52% | 1 | 1 | 0% | 1,592 | 2,338 | +47% | 0 | 0 | — |
case-16 | pass→pass | 7,601 | 5,542 | -27% | 1 | 1 | 0% | 1,575 | 2,633 | +67% | 0 | 0 | — |
case-17 | fail→pass | 11,049 | 8,269 | -25% | 1 | 1 | 0% | 2,037 | 3,281 | +61% | 0 | 0 | — |
case-18 | fail→fail | 11,064 | 7,923 | -28% | 1 | 1 | 0% | 1,882 | 3,031 | +61% | 0 | 0 | — |
case-19 | fail→pass | 5,971 | 4,190 | -30% | 1 | 1 | 0% | 1,228 | 2,414 | +97% | 0 | 0 | — |
case-20 | pass→pass | 6,231 | 1,684 | -73% | 1 | 1 | 0% | 1,106 | 1,819 | +64% | 0 | 0 | — |
case-21 | fail→fail | 12,050 | 8,418 | -30% | 1 | 1 | 0% | 2,092 | 3,025 | +45% | 0 | 0 | — |
case-22 | fail→pass | 8,792 | 2,348 | -73% | 1 | 1 | 0% | 1,658 | 2,000 | +21% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +41 percentage points is the difference between those two pass rates over the 22 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
The publisher has shipped newer versions since this run, so these numbers describe v1, not the version currently listed.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.