Oh, so that's what Claude's been doing! β A visual dashboard for your Claude Code harness.
Parses your entire Claude Code configuration and usage data, then generates an interactive single-file HTML dashboard you can open locally.
- Harness overview β skills, agents, plugins, hooks, memory, MCP servers, rules, principles, commands, teams, plans
- Context budget β estimated token distribution between visible and invisible contexts (startup, tools, user messages)
- Token analytics β usage by model, daily trends, cache efficiency, prompt statistics, response latency
- Token Breakdown β per-item token attribution by context type (skill / agent / MCP / built-in tool). Shows startup context cost estimate (CLAUDE.md, skill descriptions, principles, MCP tool listings) multiplied by session count, plus a Top 5 per type and an expandable drill-down by type
- Cache TTL Impact β detects cost waste from short cache TTL. Shows best/worst 7-day rolling efficiency, estimated waste cost, and a daily hit-rate trend chart with reference lines
- Month-end cost projection β trailing 7-day average extrapolated to month end, compared against your monthly budget
- Skill & agent efficiency β per-item call count, avg tokens/call, total cost, and category cost share. Sidebar marks the top 3 cost contributors with a π₯ badge so optimization targets are obvious
- Context Window Explorer β replay any past session turn-by-turn to see exactly how the context window filled up
- Activity heatmaps β daily usage patterns across skills, agents, and commands
- Task categories β auto-classified token usage by work type (code editing, docs, planning, etc.)
- Multi-workspace β switch between global and per-project scopes
Breaks down token usage by context type and individual item. Shows which skills, agents, MCP servers, and built-in tools are consuming the most tokens β and how much of that cost comes from startup context that loads on every session.
Startup context cost estimates the cumulative token cost of items that load automatically before every session (CLAUDE.md, skill descriptions, principles, MCP tool listings). Multiplied by session count for the selected period, it gives you a concrete number to act on β trim a large CLAUDE.md or remove unused skills to reduce your baseline cost per session.
Tracks how much the cache TTL regression (5 min vs 1 hr) may be costing you. Compares 7-day rolling cache hit rates to estimate excess re-creation cost β drops in the trend chart indicate periods when caches expired before being reused.
Pick a real session from your Claude Code history and replay it turn-by-turn. The explorer breaks down every API turn into its contribution to the context window β system prompt, CLAUDE.md, memory, skill descriptions, MCP tools, user prompts, model responses, tool calls β so you can see exactly where your tokens went and when /compact kicked in.
You can also view a guided example session to walk through the mechanics before loading your own:
claude plugin marketplace add netil/oh-my-hi
claude plugin install oh-my-hi/plugin marketplace add netil/oh-my-hi
/plugin install oh-my-hi@oh-my-hiRun in Claude Code:
/omh
This will parse your harness data, build the dashboard, and open it in your browser.
| Command | Description |
|---|---|
/omh |
Full build β parse data, build web-ui, open in browser |
/omh --data-only |
Lightweight data collection (skip dashboard build) |
/omh --enable-auto |
Auto-rebuild on session end (registers Stop hook) |
/omh --disable-auto |
Disable auto-rebuild |
/omh --update |
Check and install latest version |
/omh --status |
Check auto-rebuild status |
/omh <path> |
Build with specific project paths only |
Enable automatic data refresh so the dashboard stays up to date:
/omh --enable-auto
This registers a Stop hook that collects data whenever a Claude Code session ends. The dashboard data (data.js) is updated incrementally β just refresh the browser tab to see the latest data.
/omh --update
Checks for new versions and updates the plugin. An update check also runs automatically once per day when using /omh.
See GUIDE.md for a detailed walkthrough of each dashboard section β overview, token analytics, cost estimation, structure view, category pages, and more.
- Parse β Reads your Claude Code config directory for skills, agents, plugins, hooks, memory, MCP servers, rules, principles, commands, teams, plans, and usage transcripts
- Analyze β Extracts token usage, prompt stats, response latency, activity patterns from
.jsonltranscripts - Classify β Auto-categorizes token usage into work types (code editing, docs, planning, etc.) based on skill/agent descriptions. Saves to
task-categories.jsonfor user customization - Build β Generates
index.html(shell with CSS/JS) +data-core.js(515KB, instant load) +data-usage.js(~9MB, deferred). Progressive loading ensures the dashboard renders immediately while full usage data loads in the background - Open β On macOS, reuses an existing browser tab if found (AppleScript). On Windows/Linux, opens a new tab
- English: Built-in default
- Other languages: A template locale file is auto-generated on first build. Translate it and rebuild
All data stays on your machine. oh-my-hi reads only local Claude Code config files and transcripts β nothing is sent to external servers. The generated dashboard is a standalone HTML file opened via file:// protocol, with no network requests. Your usage data, token statistics, and configuration details never leave your local environment.
The dashboard opens as a local file:// HTML file. No web server required.
On macOS, subsequent builds will refresh the existing browser tab instead of opening a new one (Chrome and Safari supported).






