Show HN: Open-source, searchable HTML workspace for Claude Code
The GitHub page was too noisy (raw HTML). I have enough from the product page to write the piece. Let me now write the analytical post based strictly on what…
By Dillip Chowdary • Aug 09, 2026 • Source: HN Claude/Codex/Fable
What happened
The GitHub page was too noisy (raw HTML). I have enough from the product page to write the piece. Let me now write the analytical post based strictly on what was found. Here's the piece, saved to [mirror_analysis.md](file:///home/ubuntu/.gemini/antigravity-cli/brain/31aed102-b957-4954-847c-cf956c87bc27/mirror_analysis.md):
---
The technical detail
Show HN: Open-source, searchable HTML workspace for Claude Code

Anona Labs has published Mirror, an open-source Claude Code plugin that renders your ongoing AI coding sessions as a live, searchable HTML workspace running entirely on localhost. The project surfaced on Hacker News as a Show HN submission and carries a self-described promise: no API cost, no external dependencies, no cloud hop. It is hosted as a static GitHub Pages site at anona-labs.github.io/mirror, meaning the marketing page itself demonstrates the principle — a zero-backend deliverable that exists purely as static HTML and CSS.
Advertisement
Tech Pulse Daily
Get tomorrow's pulse first
Join engineers who read Tech Pulse before stand-up. Free, weekday mornings.
Why it matters for builders
Mirror works as a Claude Code plugin, which means it hooks into Claude Code's existing plugin system rather than proxying or intercepting API calls. When active, it watches the conversation session in progress and writes a local HTML representation that the user can open in any browser pointed at localhost. That representation is fully searchable, meaning prior tool calls, code blocks, model reasoning, and file paths become addressable text rather than scroll-buried terminal output. The page is built with vanilla CSS and no JavaScript dependencies beyond what the browser already provides — the design tokens visible in the source use OKLCH color space for the UI chrome, and the carousel and search components are implemented without a bundler or framework. The project explicitly claims zero-dependency status, which in this context means the plugin itself introduces no npm packages or Python wheels that the user does not already have.
For engineers and builders, the practical gap Mirror addresses is real. Claude Code's native interface is a terminal. Terminals are not searchable across sessions in any structured way, do not render markdown fidelity at a glance, and give no persistent spatial view of which files were touched, which commands were run, or what the model said about a particular decision three exchanges ago. Mirror turns that ephemeral stream into a document. That matters most during long agentic sessions — multi-hour refactors, open-ended bug hunts — where tracking the model's chain of tool calls is itself a cognitive task. Having a browser tab open alongside the terminal gives a second surface with text selection, Ctrl+F, and a rendered diff view that the terminal cannot provide natively.
Market and competitive context
The competitive backdrop here is that Claude Code already has a web-based companion in the form of its Projects feature and cloud conversation history, but that requires a signed-in Anthropic account and sends data to Anthropic's servers. Several third-party terminal session recorders exist — Asciinema being the most established — but they replay raw terminal output as video, not structured, searchable prose. Tools like Warp and the newer AI-native terminals offer richer rendering, but they are full application replacements rather than thin overlays. Mirror's angle is that it adds nothing to the stack and removes nothing from the workflow: the user keeps their existing terminal, keeps their existing Claude Code installation, and gains an HTML file as a side effect of working normally. The localhost-only constraint is a design choice that eliminates an entire category of questions about data routing.
The practical takeaway is to watch how Anona Labs handles session persistence and cross-session search. Right now the value is a live view of the current session. The more durable version of this tool would index past sessions, let you search across conversations, and surface things like "every time I asked Claude Code to edit this file" or "all the shell commands Claude Code proposed in the last two weeks." That is the search problem that makes developer tooling genuinely sticky rather than novel. The plugin model is also worth watching: if Claude Code's plugin API stabilizes and gains broader adoption, Mirror is a thin proof that third-party tooling can layer presentation concerns onto the agent runtime without touching the inference layer at all.
What to watch next
One open question is file security. Mirror writes a local HTML file that contains the full text of your conversation, including any file contents, credentials-adjacent paths, or internal hostnames that the model echoed back during a session. The localhost-only framing addresses network exposure but not disk exposure. On shared developer machines or CI environments where home directories are readable by other processes, a file containing the full transcript of an agentic coding session is a meaningful artifact. The project does not appear to document any rotation, expiry, or redaction policy for that file. A second open question is compatibility scope: the plugin is described specifically for Claude Code, and the Claude Code plugin system is still relatively young and subject to API changes. Tight coupling to one tool's plugin interface is a maintenance liability if Anthropic restructures how plugins receive session data. Prior art worth noting includes the Claude Code conversation JSONL logs that Anthropic already writes to disk at ~/.claude/projects — Mirror is essentially a prettier consumer of the same data stream, which suggests a future where it reads historical session files rather than only the live one.
Advertisement