--- name: format description: Reference for asciinema v3 .cast NDJSON format. TRIGGERS - cast format, asciicast spec, event codes. allowed-tools: Read, AskUserQuestion, Bash argument-hint: "[header|events|parsing|all] [-f file] [--live]" model: haiku --- # /asciinema-tools:format Display reference documentation for the asciinema v3 .cast format. > **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. ## Arguments | Argument | Description | | ------------ | ------------------------------- | | `header` | Show header field specification | | `events` | Show event codes deep-dive | | `parsing` | Show jq/bash parsing examples | | `all` | Show complete format reference | | `-f, --file` | Use specific .cast for examples | | `--live` | Run parsing examples on file | ## Execution Invoke the `asciinema-cast-format` skill with user-selected section. ### Skip Logic - If section provided -> skip Phase 1 (section selection) - If `-f` provided with `parsing` -> skip Phase 2 (example file) ### Workflow 1. **Selection**: AskUserQuestion for section 2. **Example**: AskUserQuestion for example file (if parsing) 3. **Display**: Show requested documentation ## Examples ```bash # Show header format /asciinema-tools:format header # Show event codes /asciinema-tools:format events # Parse specific file with live examples /asciinema-tools:format parsing -f session.cast --live ``` ## Troubleshooting | Issue | Cause | Solution | | -------------- | --------------- | -------------------------------------------- | | File not found | Invalid path | Use absolute path or ensure file exists | | Parse error | Invalid NDJSON | Check file is valid asciinema v3 format | | No output | Missing section | Specify one of: header, events, parsing, all | ## Post-Execution Reflection After this skill completes, check before closing: 1. **Did the command succeed?** — If not, fix the instruction or error table that caused the failure. 2. **Did parameters or output change?** — If the underlying tool's interface drifted, update Usage examples and Parameters table to match. 3. **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.