Terminal Screenshot (ANSI → PNG)
Renders a CLI command's colored terminal output to PNG so Claude can visually judge contrast, alignment and highlighting instead of reading raw escape codes.
Dev & CodingIntermediate★ 1,323⑂ 212AI score 9/10Last updated: Aug 8, 2026
What it does
- Captures a command's full-fidelity ANSI output to a
.ansifile, then renders it to a PNG for visual inspection. - Enforces a strict two-step flow (capture in a real shell, render second) so
freeze --executedoesn't silently degrade background blocks, line numbers and header boxes. - Lets you pass the real terminal background hex (e.g. Ghostty's
#282c34) so dark-theme contrast is judged fairly. - Falls back to the bundled
scripts/ansi2html.py(stdlib only) + headless Chrome whenfreezeisn't available. - Ships a per-tool capture cheat sheet for delta, git diff, bat, eza, ls, ripgrep and generic commands.
Who it's for
- Developers tuning delta / bat / starship / eza color themes.
- Anyone who wants to verify contrast visually rather than guessing from hex values.
- Users who want Claude Code to review how CLI output actually looks.
Examples
- After editing
[delta]colors:git --no-pager diff | delta --dark --line-numbers --width=110 > /tmp/diff.ansi, thenscripts/render_ansi.sh /tmp/diff.ansi /tmp/diff.png "#282c34"and read the PNG to check add/remove contrast. bat --color=always --style=numbers app.py > /tmp/x.ansito confirm a new syntax theme is readable on a dark background.rg --color=always 'TODO' src > /tmp/x.ansito see whether match highlighting stands out clearly.
· · · Install guide · · ·
Try it now, no install
Paste this into Claude to use the skill without installing anything.
Read the instructions in this file and follow them to help me: https://raw.githubusercontent.com/daymade/claude-code-skills/HEAD/daymade-claude-code/terminal-screenshot/SKILL.md What I want: (describe your task here)
If Claude can't open the link, open it yourself and paste the contents instead.
↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the daymade-claude-code/terminal-screenshot folder from the GitHub repo daymade/claude-code-skills into my ~/.claude/skills/terminal-screenshot/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/daymade/claude-code-skills.git /tmp/ccs && mkdir -p ~/.claude/skills && cp -r /tmp/ccs/daymade-claude-code/terminal-screenshot ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Clone the repo:
git clone https://github.com/daymade/claude-code-skills.git /tmp/ccs - Create the skills directory:
mkdir -p ~/.claude/skills - Copy the skill in:
cp -r /tmp/ccs/daymade-claude-code/terminal-screenshot ~/.claude/skills/ - (Recommended) Install the renderer:
brew install charmbracelet/tap/freeze— ⚠️ do NOT run plainbrew install freeze, that's an unrelated GUI cask. Alternative:go install github.com/charmbracelet/freeze@latest. - If freeze can't be installed, a Chrome install is enough for the bundled fallback renderer.
- Make the script executable:
chmod +x ~/.claude/skills/terminal-screenshot/scripts/render_ansi.sh - Restart Claude Code and ask something like "screenshot my delta diff colors" or "is this terminal contrast good enough?".
View source on GitHub ↗License: MIT