token-dashboard
Opens a browser-based dashboard to visualize AI session data and token usage metrics.
Install
mkdir -p .claude/skills/token-dashboard && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/16940" && unzip -o skill.zip -d .claude/skills/token-dashboard && rm skill.zipInstalls to .claude/skills/token-dashboard
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Open the Token Optimizer dashboard. Collects latest session data, regenerates the dashboard, and opens it in your browser.Key capabilities
- →Resolve the runtime environment for Token Optimizer
- →Locate the newest installed copy of measure.py
- →Collect the latest session data into the trends database
- →Regenerate the Token Optimizer dashboard HTML
- →Open the dashboard in the default browser
How it works
The skill automatically resolves the Token Optimizer runtime and measure.py path, then collects session data, regenerates the dashboard, and opens it in the user's browser.
Inputs & outputs
When to use token-dashboard
- →Reviewing token usage trends
- →Checking quality scores
- →Inspecting session history
- →Managing installed skills
About this skill
Token Optimizer Dashboard
Opens an up-to-date dashboard showing your context usage trends, quality scores, session history, and skill management.
Instructions
- Resolve runtime and measure.py path:
RUNTIME="${TOKEN_OPTIMIZER_RUNTIME:-}"
if [ -z "$RUNTIME" ]; then
if [ -n "$CLAUDE_PLUGIN_ROOT" ] || [ -n "$CLAUDE_PLUGIN_DATA" ]; then
RUNTIME="claude"
elif [ -n "$OPENCODE" ] || [ -n "$OPENCODE_BIN" ] || [ -n "$OPENCODE_CONFIG_DIR" ] || [ -n "$OPENCODE_CONFIG" ]; then
RUNTIME="opencode"
elif [ -n "$CODEX_HOME" ]; then
RUNTIME="codex"
elif [ -n "$CLAUDECODE" ] || [ -n "$CLAUDE_CODE_ENTRYPOINT" ] || [ -n "$CLAUDE_CODE_SESSION_ID" ]; then
RUNTIME="claude"
elif [ -d "$HOME/.config/opencode" ] && [ ! -d "$HOME/.codex" ]; then
RUNTIME="opencode"
elif [ -d "$HOME/.codex" ]; then
RUNTIME="codex"
else
RUNTIME="claude"
fi
fi
# Resolve measure.py to the NEWEST installed copy across channels so a stale
# plugin-cache copy never shadows a fresh install (issue #57). find -L follows the
# install.sh symlink under ~/.claude/skills; cd -P resolves it before reading each
# copy's plugin.json for its version. find (not bare globs) never errors under zsh.
MEASURE_PY=""; _best_ver=""
while IFS= read -r _cand; do
[ -f "$_cand" ] || continue
_root="$(cd -P -- "$(dirname -- "$_cand")/../../.." 2>/dev/null && pwd)"
_ver="$(sed -n 's/.*"version"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' "$_root/.claude-plugin/plugin.json" 2>/dev/null | head -1)"
[ -n "$_ver" ] || _ver="0.0.0"
if [ -z "$_best_ver" ] || [ "$(printf '%s\n%s\n' "$_ver" "$_best_ver" | sort -t. -k1,1n -k2,2n -k3,3n -k4,4n | tail -n1)" = "$_ver" ]; then
_best_ver="$_ver"; MEASURE_PY="$_cand"
fi
done <<EOF
$(find -L "$HOME/.claude/skills" "$HOME/.claude/plugins/cache" "$HOME/.claude/token-optimizer" "$HOME/.codex/skills" "$HOME/.codex/plugins/cache" "$HOME/.config/opencode/plugins/cache" "$HOME/.config/opencode/plugins" -type f -name measure.py -path '*token-optimizer*/scripts/measure.py' 2>/dev/null)
EOF
if [ -z "$MEASURE_PY" ]; then echo "[Error] measure.py not found. Is Token Optimizer installed?"; exit 1; fi
export TOKEN_OPTIMIZER_RUNTIME="$RUNTIME"
- Collect and open:
# TOKEN_OPTIMIZER_INTERACTIVE=1 marks this as a user-initiated open so the 20s
# hook budget does NOT kill a heavy rebuild (Bug B: on a large history the
# dashboard would otherwise be skipped and served stale). The user is actively
# waiting for this open, so it runs unbounded.
TOKEN_OPTIMIZER_INTERACTIVE=1 python3 "$MEASURE_PY" collect --quiet && \
TOKEN_OPTIMIZER_INTERACTIVE=1 python3 "$MEASURE_PY" dashboard
This collects the latest session data into the trends database, regenerates the dashboard HTML, and opens it in your default browser.
- Tell the user the dashboard is open. Probe the daemon BEFORE mentioning any URL (v5.3.3+):
- Probe daemon:
python3 "$MEASURE_PY" daemon-status 2>/dev/null - If DAEMON_RUNNING: lead with
URL: http://localhost:24842/token-optimizer(bookmarkable, auto-updates), then mention the file fallback. - If DAEMON_NOT_RUNNING: do NOT print the
localhost:24842URL. Tell the user the dashboard opened as a file, and suggestpython3 $MEASURE_PY setup-daemon(macOS and Windows) if they want a bookmarkable URL. - File path: never hardcode it. It is install-dependent. Cite the
Dashboard:line from the step-2 output. - For Codex when DAEMON_NOT_RUNNING: do not imply the Claude daemon is required; the generated file works, and Stop hooks refresh it when balanced hooks are installed.
- Probe daemon:
When not to use it
- →When measure.py is not found
- →When Token Optimizer is not installed
- →When the daemon is not running and the user expects auto-updates
Limitations
- →Requires measure.py to be found
- →Requires Token Optimizer to be installed
- →Daemon status affects URL-first ordering and auto-updates
How it compares
This skill automates the entire process of generating and opening an up-to-date Token Optimizer dashboard, unlike manually collecting data and rendering reports.
Compared to similar skills
token-dashboard side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| token-dashboard (this skill) | 0 | 1mo | Review | Beginner |
| model-usage | 5 | 3mo | Review | Beginner |
| analytics-tracking | 7 | 6mo | No flags | Intermediate |
| splunk-analysis | 5 | 6mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
model-usage
openclaw
Use CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
analytics-tracking
davila7
When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," or "tracking plan." For A/B test measurement, see ab-test-setup.
splunk-analysis
incidentfox
Splunk log analysis using SPL (Search Processing Language). Use when investigating issues via Splunk logs, saved searches, or alerts.
tracking-crypto-derivatives
jeremylongshore
Track cryptocurrency futures, options, and perpetual swaps with funding rates, open interest, liquidations, and comprehensive derivatives market analysis. Use when monitoring derivatives markets, analyzing funding rates, tracking open interest, finding liquidation levels, or researching options flow. Trigger with phrases like "funding rate", "open interest", "perpetual swap", "futures basis", "liquidation levels", "options flow", "put call ratio", "derivatives analysis", or "BTC perps".
weights-and-biases
davila7
Track ML experiments with automatic logging, visualize training in real-time, optimize hyperparameters with sweeps, and manage model registry with W&B - collaborative MLOps platform
perf-analyzer
ComposioHQ
Use when synthesizing perf findings into evidence-backed recommendations and decisions.