home / skills / alekspetrov / navigator / nav-stats

nav-stats skill

/skills/nav-stats

This skill shows a real-time Navigator efficiency report with token savings, cache metrics, and actionable recommendations to optimize your session.

npx playbooks add skill alekspetrov/navigator --skill nav-stats

Review the files below or copy the command above to add this skill to your agents.

Files (3)
SKILL.md
9.0 KB
---
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
# Check if enhanced script exists
if [ ! -f "scripts/session-stats.sh" ]; then
  echo "❌ Session stats script not found"
  echo "This feature requires Navigator v3.5.0+"
  exit 1
fi

# Run stats script
bash 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
# Extract metrics from session-stats.sh
source <(bash scripts/session-stats.sh)

# Calculate efficiency score using predefined function
EFFICIENCY_SCORE=$(python3 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
# Generate formatted report
python3 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 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
python3 skills/nav-stats/functions/efficiency_scorer.py \
  --tokens-saved-percent 92 \
  --cache-efficiency 100 \
  --context-usage 35
```

**Output**: `94` (integer score)

### `report_formatter.py`

Format efficiency metrics into visual, shareable report.

**Usage**:
```bash
python3 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.**

Overview

This skill displays a session efficiency report that quantifies Navigator's impact on token usage, cache performance, and time savings. It produces a clear, shareable ASCII report with an overall efficiency score and targeted recommendations. Use it to prove value, diagnose waste, and prioritize optimizations in your interactive sessions.

How this skill works

The skill gathers session metrics from a small script that outputs baseline tokens, loaded tokens, tokens saved, cache efficiency, context usage, and estimated time saved. It computes an efficiency score using a weighted scorer (tokens saved 40%, cache 30%, context 30%) and renders a formatted report with interpretation and action items. The report highlights token savings, cache health, context window usage, a numeric score, and concise recommendations tailored to the measured state.

When to use it

  • User asks: "show my stats", "show session metrics", or "how efficient am I?"
  • When you want to quantify token savings and time saved from Navigator
  • To validate Navigator's caching and lazy-loading behavior for a session
  • Before sharing progress or screenshots demonstrating efficiency gains
  • To get actionable recommendations when session metrics look suboptimal

Best practices

  • Run only after at least five exchanges to collect meaningful metrics
  • Ensure Navigator is initialized and the session-stat script is available
  • Use lazy-loading: load docs on demand, not all at once, to maximize savings
  • Monitor cache efficiency and enable prompt caching if below target
  • Compact context when usage exceeds healthy thresholds (e.g., >80%)

Example use cases

  • A developer asks "show my Navigator report" to demonstrate token savings to teammates
  • Ops investigating degraded session length runs metrics to check cache efficiency
  • A user optimizing workflows checks context usage to decide when to compact
  • Team lead shares a screenshot of a high efficiency score to promote best practices
  • Developer receives low score and follows recommendations to improve lazy-loading

FAQ

What does the efficiency score represent?

A 0–100 score combining token savings (40%), cache efficiency (30%), and context usage (30%) to summarize session efficiency.

When should I not invoke this skill?

Do not run it within the first few messages (<5) or if Navigator is not initialized; also ask directly if you only need a single metric.