Automated summary
Converts asciinema terminal recordings (.cast) into clean .txt files readable by Claude Code's Read/Grep tools by stripping ANSI codes and the JSON structure.
Strengths
- Very high compression reported (roughly 950:1, 3.8GB down to ~4MB for a 22h session), making session archives practical to analyze
- Batch mode converts every .cast in a directory with organized output and progress reporting
- Understands the iTerm2 auto-log filename format and can optionally emit a [HH:MM:SS] timestamp index
- Guided workflow using AskUserQuestion at each decision point (file, options, destination)
Limitations
- Requires the asciinema CLI v2.4+ and only runs on macOS and Linux
- The .txt output drops timing and original NDJSON structure, so it cannot be replayed in asciinema
- Heavily interactive with mandatory phases, so it suits supervised use better than unattended CI runs
Use it when long asciinema sessions need to become searchable, grep-able text that Claude Code can read without blowing up context.
Avoid it when timings must be preserved or the recording must be replayed, or when asciinema v2.4+ is not available.
Security analysis
CautionThe skill performs legitimate local .cast-to-.txt conversion with asciinema and does not contain curl|sh, secret exfiltration, destructive deletion, or obfuscated payloads. Caution is warranted because it grants Bash/Write and includes a self-modification instruction, but the demonstrated behavior is local file processing only.
- •Declares Bash and Write, enabling execution of local conversion commands and file creation; no destructive or exfiltration behavior is shown, but these are powerful tools.
- •The 'Self-Evolving Skill' section instructs the agent to edit its own SKILL.md immediately when issues arise, which is a governance risk because it can modify its own instructions without human review.
- •Batch mode converts all .cast files in a directory and writes outputs; users should scope output paths to avoid unintended overwrites, though no deletion is instructed.
Examples
Convert ~/recordings/20260118_232025.Claude Code.w0t1p1.cast to a plain .txt file I can grep.Batch convert every .cast file in ~/recordings into clean .txt output in ~/recordings/txt, and report progress.Strip the ANSI escape codes from this terminal recording so Claude Code can search it for error messages.name: asciinema-converter description: Convert .cast recordings to .txt for analysis. TRIGGERS - convert cast, cast to txt, strip ANSI, batch convert. allowed-tools: Read, Bash, Glob, Write, AskUserQuestion
asciinema-converter
Convert asciinema .cast recordings to clean .txt files for Claude Code analysis. Achieves 950:1 compression (3.8GB -> 4MB) by stripping ANSI codes and JSON structure.
Platform: macOS, Linux (requires asciinema CLI v2.4+)
Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.
When to Use This Skill
Use this skill when:
- Converting .cast recordings to searchable .txt format
- Preparing recordings for Claude Code Read/Grep tools
- Batch converting multiple recordings
- Reducing storage size of session archives
- Extracting clean text from ANSI-coded terminal output
Why Convert?
| Format | Size (22h session) | Claude Code Compatible | Searchable | | ------ | ------------------ | ---------------------- | ---------- | | .cast | 3.8GB | No (NDJSON + ANSI) | Via jq | | .txt | ~4MB | Yes (clean text) | Grep/Read |
Key benefit: Claude Code's Read and Grep tools work directly on .txt output.
Requirements
| Component | Required | Installation | Notes |
| ------------- | -------- | ------------------------ | --------------------- |
| asciinema | Yes | brew install asciinema | v2.4+ for convert cmd |
Workflow Overview
IMPORTANT: All phases are MANDATORY. Do NOT skip any phase. AskUserQuestion MUST be used at each decision point.
Single File Mode (Phases 0-6)
| Phase | Purpose | Key Action |
| ----- | -------------------------- | --------------------------------- |
| 0 | Preflight check | Verify asciinema CLI v2.4+ |
| 1 | File discovery & selection | AskUserQuestion: file to convert |
| 2 | Output options | AskUserQuestion: conversion opts |
| 3 | Output location | AskUserQuestion: save destination |
| 4 | Execute conversion | asciinema convert -f txt |
| 5 | Timestamp index | Optional [HH:MM:SS] index |
| 6 | Next steps | AskUserQuestion: what's next |
Full implementation details: Workflow Phases
Batch Mode (Phases 7-10)
Activated via --batch flag. Converts all .cast files in a directory with organized output.
| Phase | Purpose | Key Action |
| ----- | ------------------- | ---------------------------------------- |
| 7 | Source selection | AskUserQuestion (skip if --source) |
| 8 | Output organization | AskUserQuestion (skip if --output-dir) |
| 9 | Execute batch | Convert all with progress reporting |
| 10 | Batch next steps | AskUserQuestion: what's next |
Full implementation details: Batch Workflow
iTerm2 Filename Format
iTerm2 auto-logged files follow this format:
{creationTimeString}.{profileName}.{termid}.{iterm2.pid}.{autoLogId}.cast
Example: 20260118_232025.Claude Code.w0t1p1.70C05103-2F29-4B42-8067-BE475DB6126A.68721.4013739999.cast
| Component | Description | Example | | ------------------ | ------------------------------ | ------------------------------------ | | creationTimeString | YYYYMMDD_HHMMSS | 20260118_232025 | | profileName | iTerm2 profile (may have dots) | Claude Code | | termid | Window/tab/pane identifier | w0t1p1 | | iterm2.pid | iTerm2 process UUID | 70C05103-2F29-4B42-8067-BE475DB6126A | | autoLogId | Session auto-log identifier | 68721.4013739999 |
CLI Quick Reference
# Basic conversion
asciinema convert -f txt recording.cast recording.txt
# Check asciinema version
asciinema --version
# Verify convert command exists
asciinema convert --help
Reference Documentation
Internal References
- Workflow Phases - Single file mode phases 0-6 with full scripts
- Batch Workflow - Batch mode phases 7-10 with full scripts
- Task Templates - TodoWrite templates for single and batch modes
- Post-Change Checklist - Verification after modifications
- Anti-Patterns - Common mistakes to avoid
- Batch Processing - Patterns for bulk conversion
- Integration Guide - Chaining with analyze/summarize
External References
Troubleshooting
| Issue | Cause | Solution |
| --------------------------- | ------------------------- | ---------------------------------------------- |
| convert command not found | asciinema too old | Upgrade: brew upgrade asciinema (need v2.4+) |
| asciinema not installed | Missing CLI | brew install asciinema |
| Empty output file | Corrupted .cast input | Verify .cast file has valid NDJSON structure |
| Conversion failed | Invalid cast format | Check header line is valid JSON with jq |
| numfmt not found | macOS missing coreutils | Use raw byte count or brew install coreutils |
| stat syntax error | Linux vs macOS difference | Script handles both; check stat version |
| Batch skipping all files | All .txt already exist | Use --skip-existing=false to reconvert |
| Permission denied on output | Directory not writable | Check output directory permissions |
Post-Execution Reflection
After this skill completes, check before closing:
- Did the command succeed? — If not, fix the instruction or error table that caused the failure.
- Did parameters or output change? — If the underlying tool's interface drifted, update Usage examples and Parameters table to match.
- Was a workaround needed? — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.
Only update if the issue is real and reproducible — not speculative.
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/asciinema-converter-mryiqgkn/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/asciinema-converter-mryiqgkn' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/asciinema-converter-mryiqgkn/download' --output '.skill-downloads/asciinema-converter-mryiqgkn/SKILL.md.part' && mv '.skill-downloads/asciinema-converter-mryiqgkn/SKILL.md.part' '.skill-downloads/asciinema-converter-mryiqgkn/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Read, Bash, Glob, Write, AskUserQuestion
Original excerpt: Requirements
| Component | Required | Installation | Notes |
|---|---|---|---|
| asciinema | Yes | brew install asciinema | v2.4+ for convert cmd |
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/asciinema-converter-mryiqgkn/SKILL.md' && test -s '.skill-downloads/asciinema-converter-mryiqgkn/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/asciinema-converter' && cp -R '.skill-downloads/asciinema-converter-mryiqgkn' '.claude/skills/asciinema-converter'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/asciinema-converter-mryiqgkn'openskills read 'asciinema-converter-mryiqgkn'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/asciinema-converter-mryiqgkn/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.