Agent skill

Nav Stats

by qf-studio in qf-studio/navigator

Display session efficiency report showing token savings, cache performance, and optimization recommendations.

MITAuto-check: notes

Install Nav Stats

skills CLI
$ npx skills add qf-studio/navigator --skill nav-stats -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install qf-studio/navigator nav-stats --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/qf-studio/navigator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/nav-stats .claude/skills/nav-stats && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
nav-stats
GitHub stars
355
Token cost
~2.7k tokens
SKILL.md length
649 words
Files
3
Skills in repo
32
Repo updated
First seen
Licence
MIT

At a glance

Display session efficiency report showing token savings, cache performance, and optimization recommendations.

  • Works in 7 steps: Check Navigator Initialized → Run Enhanced Session Stats → Calculate Efficiency Score → …
  • User asks show my stats
  • SKILL.md covers When to Invoke, Execution Steps, Predefined Functions and Philosophy Integration, plus 3 more sections
  • Runs Python scripts from its folder; calls python3 and bash

What it does

Nav Stats is an agent skill from qf-studio/navigator. Display session efficiency report showing token savings, cache performance, and optimization recommendations. Use when user asks "show my stats", "how efficient am I?", "show session metrics", or wants to see Navigator's impact.

Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `functions/efficiency_scorer.py` and `functions/report_formatter.py`).

The repository describes itself as: Finish What You Start — Context engineering for Claude Code. Sessions last 20+ exchanges instead of crashing at 7. The licence is MIT.

When your agent uses it

  • User asks show my stats
  • How efficient am I?
  • Show session metrics
  • Wants to see Navigators impact

Example prompts

  • “show my stats”
  • “how efficient am I?”
  • “show session metrics”
  • “/nav-stats”

Requirements

  • Python 3
  • Pre-approved tools (allowed-tools): Bash, Read

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Check Navigator Initialized
  2. Run Enhanced Session Stats
  3. Calculate Efficiency Score
  4. Format and Display Report
  5. 4: Judge Telemetry Row (v7.7.1+)
  6. 5: Tier-1 Telemetry Row (v7.0.0+)
  7. Add Context-Specific Recommendations

What it can do on your machine

Read from SKILL.md and the folder at commit 3bb9eac. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Nav Stats loads about 2.7k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 649 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~60
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from qf-studio/navigator at commit 3bb9eac, republished under its MIT licence (© qf-studio). 649 words, ~2,660 tokens.

Download SKILL.mdSave it as .claude/skills/nav-stats/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
nav-stats
description
Display session efficiency report showing token savings, cache performance, and optimization recommendations. Use when user asks "show my stats", "how efficient am I?", "show session metrics", or wants to see Navigator's impact.
allowed-tools
Bash, Read
version
1.0.0

Navigator Session Statistics Skill

Show real-time efficiency reporting with baseline comparisons, making Navigator's value quantifiable and shareable.

When to Invoke

Invoke this skill when the user:

  • Says "show my stats", "show session stats", "show metrics"
  • Asks "how efficient am I?", "how much did I save?"
  • Says "show my Navigator report", "efficiency report"
  • Wants to see token savings or session performance
  • Says "show impact", "prove Navigator works"

DO NOT invoke if:

  • User just started session (< 5 messages)
  • Navigator not initialized in project
  • User asking about specific metrics only (answer directly)

Execution Steps

Step 1: Check Navigator Initialized

Verify Navigator is set up:

bash
if [ ! -f ".agent/DEVELOPMENT-README.md" ]; then
  echo "❌ Navigator not initialized in this project"
  echo "Run 'Initialize Navigator' first"
  exit 1
fi
Step 2: Run Enhanced Session Stats

Execute the enhanced session statistics script:

bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"

# Check if enhanced script exists
if [ ! -f "$PLUGIN_DIR/scripts/session-stats.sh" ]; then
  echo "❌ Session stats script not found"
  echo "Reinstall or update Navigator to restore scripts/session-stats.sh"
  exit 1
fi

# Run stats script
bash "$PLUGIN_DIR/scripts/session-stats.sh"

This script outputs shell-parseable variables:

  • BASELINE_TOKENS - Total size of all .agent/ docs
  • LOADED_TOKENS - Actually loaded in session (estimated)
  • TOKENS_SAVED - Difference
  • SAVINGS_PERCENT - Percentage saved
  • EFFICIENCY_SCORE - 0-100 score
  • CACHE_EFFICIENCY - From OpenTelemetry
  • CONTEXT_USAGE_PERCENT - Estimated context fill
  • TIME_SAVED_MINUTES - Estimated time saved
Step 3: Calculate Efficiency Score

Use predefined function to calculate score:

bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"

# Extract metrics from session-stats.sh
source <(bash "$PLUGIN_DIR/scripts/session-stats.sh")

# Calculate efficiency score using predefined function
EFFICIENCY_SCORE=$(python3 "$PLUGIN_DIR/skills/nav-stats/functions/efficiency_scorer.py" \
  --tokens-saved-percent ${SAVINGS_PERCENT} \
  --cache-efficiency ${CACHE_EFFICIENCY} \
  --context-usage ${CONTEXT_USAGE_PERCENT})
Step 4: Format and Display Report

Use predefined function to format visual report:

bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"

# Generate formatted report
python3 "$PLUGIN_DIR/skills/nav-stats/functions/report_formatter.py" \
  --baseline ${BASELINE_TOKENS} \
  --loaded ${LOADED_TOKENS} \
  --saved ${TOKENS_SAVED} \
  --savings-percent ${SAVINGS_PERCENT} \
  --cache-efficiency ${CACHE_EFFICIENCY} \
  --context-usage ${CONTEXT_USAGE_PERCENT} \
  --efficiency-score ${EFFICIENCY_SCORE} \
  --time-saved ${TIME_SAVED_MINUTES}

Output Format:

╔══════════════════════════════════════════════════════╗
║          NAVIGATOR EFFICIENCY REPORT                 ║
╚══════════════════════════════════════════════════════╝

📊 TOKEN USAGE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Documentation loaded:        12,000 tokens
Baseline (all docs):        150,000 tokens
Tokens saved:               138,000 tokens (92% ↓)

💾 CACHE PERFORMANCE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Cache efficiency:              100.0% (perfect)

📈 SESSION METRICS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Context usage:                      35% (excellent)
Efficiency score:                94/100 (excellent)

⏱️  TIME SAVED
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Estimated time saved:          ~42 minutes

💡 WHAT THIS MEANS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Navigator loaded 92% fewer tokens than loading all docs.
Your context window is 65% available for actual work.

🎯 RECOMMENDATIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✅ Excellent efficiency - keep using lazy-loading strategy
✅ Context usage healthy - plenty of room for work

Share your efficiency: Take a screenshot! #ContextEfficiency
Step 4.4: Judge Telemetry Row (v7.7.1+)

If .agent/.nav-runtime-state.json carries a judge section with calls > 0, append one row:

Typed judge ({model}): {calls} calls | {failed} failed | {latency_last_ms} ms last, {latency_max_ms} ms max
  axes: {overridden} overridden / {agreed} agreed / {undecided} undecided

Sum the per-axis axes.<axis>.<outcome> counters for the three outcome totals. "Overridden" means the judge changed a decision the keyword heuristic had made; "undecided" means the answer fell inside the noul band or below the confidence floor and the heuristic answered. Many undecided → the band is too wide for this project; many overrides on an axis that keeps being wrong → tighten it or disable. Omit the row when the section is absent or calls is 0.

Step 4.5: Tier-1 Telemetry Row (v7.0.0+)

If .agent/.nav-runtime-state.json (schema 2) carries a tier1 section, append one row to the report:

Tier-1 responder: {hits} zero-token answers | {false_positives} suspected false positives

A false positive = a Tier-1 hit followed by a near-identical re-prompt (the user wanted the model after all). Rising false positives mean the exact-match table is intercepting prompts it should not — suggest disabling the offending rule via tier1.rules.<id>: false. Omit the row when the section is absent or tier1 is disabled.

Step 5: Add Context-Specific Recommendations

Based on efficiency score, provide actionable advice:

If efficiency_score < 70:

⚠️  RECOMMENDATIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️  Token savings below target (70%+)
→ Check: Are you loading more docs than needed?
→ Tip: Use navigator to find docs, don't load all upfront

Read more: .agent/philosophy/CONTEXT-EFFICIENCY.md

If context_usage > 80%:

⚠️  RECOMMENDATIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️  Context usage high (80%+)
→ Consider: Create context marker and compact
→ Tip: Compact after completing sub-tasks

Read more: .agent/philosophy/ANTI-PATTERNS.md

If cache_efficiency < 80%:

⚠️  RECOMMENDATIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️  Cache efficiency low (<80%)
→ Check: CLAUDE.md properly configured?
→ Tip: Ensure prompt caching enabled

Read more: .agent/philosophy/PATTERNS.md (Caching pattern)

Predefined Functions

efficiency_scorer.py

Calculate Navigator efficiency score (0-100) based on:

  • Token savings (40 points)
  • Cache efficiency (30 points)
  • Context usage (30 points)

Usage:

bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"

python3 "$PLUGIN_DIR/skills/nav-stats/functions/efficiency_scorer.py" \
  --tokens-saved-percent 92 \
  --cache-efficiency 100 \
  --context-usage 35

Output: 94 (integer score)

Show full SKILL.md (261 more words)Show less
report_formatter.py

Format efficiency metrics into visual, shareable report.

Usage:

bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"

python3 "$PLUGIN_DIR/skills/nav-stats/functions/report_formatter.py" \
  --baseline 150000 \
  --loaded 12000 \
  --saved 138000 \
  --savings-percent 92 \
  --cache-efficiency 100 \
  --context-usage 35 \
  --efficiency-score 94 \
  --time-saved 42

Output: Formatted ASCII report (see Step 4)

Philosophy Integration

Context Engineering Principle: Measurement validates optimization

From .agent/philosophy/PATTERNS.md:

"Measure to validate. Navigator tracks real metrics, not estimates."

This skill proves:

  • Token savings are real (baseline comparison)
  • Cache efficiency works (OpenTelemetry data)
  • Context usage is healthy (window not overloaded)
  • Time saved is quantifiable (6s per 1k tokens)

User Experience

User says: "Show my stats"

Skill displays:

  1. Visual efficiency report
  2. Clear metrics (tokens, cache, context)
  3. Interpretation ("What this means")
  4. Actionable recommendations

User can:

  • Screenshot and share (#ContextEfficiency)
  • Understand Navigator's impact
  • Optimize workflow based on recommendations
  • Validate context engineering principles

Example Output Scenarios

Scenario 1: Excellent Efficiency (Score 94)

User following lazy-loading pattern, cache working perfectly:

  • 92% token savings ✅
  • 100% cache efficiency ✅
  • 35% context usage ✅
  • Score: 94/100

Recommendation: Keep it up! Share your efficiency.

Scenario 2: Fair Efficiency (Score 72)

User loading too many docs upfront:

  • 65% token savings ⚠️
  • 95% cache efficiency ✅
  • 55% context usage ✅
  • Score: 72/100

Recommendation: Review lazy-loading strategy. Load docs on-demand.

Scenario 3: Poor Efficiency (Score 48)

User not using Navigator patterns:

  • 45% token savings ❌
  • 70% cache efficiency ⚠️
  • 85% context usage ❌
  • Score: 48/100

Recommendation: Read philosophy docs. Consider /nav:compact. Review CLAUDE.md.

Success Metrics

After using this skill, users should:

  • Understand their efficiency score
  • See quantified token savings
  • Know what to improve (if anything)
  • Feel motivated to share results

Long-term impact:

  • Users screenshot reports and share
  • "Navigator saved me 138k tokens" becomes common
  • Efficiency becomes visible, not abstract
  • Continuous improvement through measurement

This skill makes Navigator's value tangible and shareable.

© qf-studio, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in skills/nav-stats of qf-studio/navigator.

  • SKILL.md
  • functions/efficiency_scorer.py
  • functions/report_formatter.py

Open the folder on GitHubat commit 3bb9eac

Compare with similar skills

Nav Stats next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Nav Stats compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Nav Stats this skillqf-studio/navigator355—~2.7kAutomated safety check: NotesMIT
Prompt Cachingsickn33/agentic-awesome-skills47k2 repos~3.4kAutomated safety check: PassMIT
Prompt Cachingdavila7/claude-code-templates33k5 repos~452Automated safety check: PassMIT
Turborepo Cachingwshobson/agents40k9 repos~2kAutomated safety check: NotesMIT
OmniRoute LLM Cachediegosouzapw/OmniRoute75k—~529Automated safety check: PassMIT
Cachingzebbern/claude-code-guide4.7k—~1.5kAutomated safety check: PassMIT

Similar skills

  • Prompt Caching

    sickn33/agentic-awesome-skills

    Caching strategies for LLM prompts including Anthropic prompt caching, response caching, and CAG (Cache Augmented Generation)

    47k GitHub starsUsed in 2 repos~3.4k tokens
    AI & LLM EngineeringAuto-check passed
  • Prompt Caching

    davila7/claude-code-templates

    Caching strategies for LLM prompts including Anthropic prompt caching, response caching, and CAG (Cache Augmented Generation) Use when: prompt caching, cache prompt, response cache, cag, cache…

    33k GitHub starsUsed in 5 repos~452 tokens
    Backend & APIsAuto-check passed
  • Turborepo Caching

    wshobson/agents

    Configures Turborepo pipelines and local or remote caching for monorepo builds, including Vercel remote cache, a self-hosted cache and cache-miss debugging.

    40k GitHub starsUsed in 9 repos~2k tokens
    DevelopmentAuto-check: notes
  • OmniRoute LLM Cache

    diegosouzapw/OmniRoute

    Documents OmniRoute's cache endpoints for reading cache statistics and clearing entries, statistics or the reasoning cache, with notes on TTL and similarity settings.

    75k GitHub stars~529 tokensUpdated today
    Backend & APIsAuto-check passed
  • Caching

    zebbern/claude-code-guide

    Caching strategies — invalidation, TTL guidelines, cache keys, cache layers, and when not to cache.

    4.7k GitHub stars~1.5k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Caches slow file processing results in Python keyed by a SHA-256 hash of the file content, so renames still hit the cache and edits invalidate it automatically.

    277k GitHub starsUsed in 5 repos~1.4k tokens
    DevelopmentAuto-check passed

More from qf-studio/navigator

All 32 skills in this repo
  • Nav Start

    qf-studio/navigator

    Load Navigator documentation navigator when starting development session, resuming work, or beginning new feature.

    355 GitHub stars~4.7k tokensUpdated 2 days ago
    Auto-check: notes
  • Backend Endpoint

    qf-studio/navigator

    Create REST/GraphQL API endpoint with validation, error handling, and tests.

    355 GitHub stars~4.5k tokensUpdated 2 days ago
    Auto-check: notes
  • Backend Test

    qf-studio/navigator

    Generate backend tests (unit, integration, mocks) for existing code.

    355 GitHub stars~1.5k tokensUpdated 2 days ago
    Auto-check: notes
  • Database Migration

    qf-studio/navigator

    Create database migration with schema changes and rollback. An agent skill from qf-studio/navigator.

    355 GitHub stars~3.7k tokensUpdated 2 days ago
    Auto-check: notes
  • Frontend Component

    qf-studio/navigator

    Create React/Vue component with TypeScript, tests, and styles.

    355 GitHub stars~4.5k tokensUpdated 2 days ago
    Auto-check: notes
  • Frontend Test

    qf-studio/navigator

    Generate frontend component tests (React Testing Library, Vue Test Utils, snapshot) for existing components.

    355 GitHub stars~1.6k tokensUpdated 2 days ago
    Auto-check: notes

Questions about Nav Stats

What does Nav Stats do?

Display session efficiency report showing token savings, cache performance, and optimization recommendations. Nav Stats is an agent skill from qf-studio/navigator. Display session efficiency report showing token savings, cache performance, and optimization recommendations.

When should I use Nav Stats?

Nav Stats fits situations like: user asks show my stats; how efficient am I?; show session metrics; wants to see Navigators impact.

How do I install Nav Stats in Claude Code?

Run `npx skills add qf-studio/navigator --skill nav-stats -a claude-code`. Or copy the skill folder (skills/nav-stats in qf-studio/navigator) into .claude/skills/nav-stats in your project. Claude Code loads it when a task matches its description.

How do I install Nav Stats in Codex?

Run `npx skills add qf-studio/navigator --skill nav-stats -a codex`. Or copy the skill folder (skills/nav-stats in qf-studio/navigator) into .agents/skills/nav-stats in your project. Codex loads it when a task matches its description.

Can I use Nav Stats in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add qf-studio/navigator --skill nav-stats -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nav-stats, .gemini/skills/nav-stats, .github/skills/nav-stats and .opencode/skills/nav-stats in your project.

What does Nav Stats need to run?

Going by SKILL.md and its folder, Nav Stats needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and bash). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Bash, Read.

Does Nav Stats access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Nav Stats safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Nav Stats use?

Nav Stats is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Nav Stats use?

About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Nav Stats?

Skills that share tags, products or a category with Nav Stats: Prompt Caching (sickn33/agentic-awesome-skills, 47k stars), Prompt Caching (davila7/claude-code-templates, 33k stars), Turborepo Caching (wshobson/agents, 40k stars) and OmniRoute LLM Cache (diegosouzapw/OmniRoute, 75k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Nav Stats?

qf-studio (a GitHub organization) maintains it in qf-studio/navigator, which has 355 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on October 8, 2026.

Source: qf-studio/navigator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.