toolkit/packages/plugins/reflect/skills/status/SKILL.md
Show reflection metrics, pending reviews, sidecar coverage, and GraphRAG health. Read-only views into the reflect system state. Can also approve/reject pending low-confidence items.
npx skillsauth add stevengonsalvez/agents-in-a-box reflect:statusInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Show the current state of the reflect system: metrics, pending reviews, sidecar coverage, and GraphRAG health. Also handles review of pending low-confidence items.
When invoked, display the following sections:
python {{HOME_TOOL_DIR}}/skills/reflect/scripts/state_manager.py status
Shows:
python {{HOME_TOOL_DIR}}/skills/reflect/scripts/metrics_updater.py --show
Shows:
Check how many knowledge notes have entity sidecars:
# Count knowledge notes
NOTES=$(find docs/solutions -name "*.md" -not -name "README.md" 2>/dev/null | wc -l | tr -d ' ')
# Count sidecars
SIDECARS=$(find docs/solutions -name "*.entities.yaml" 2>/dev/null | wc -l | tr -d ' ')
# Find notes missing sidecars
for md in $(find docs/solutions -name "*.md" -not -name "README.md" 2>/dev/null); do
sidecar="${md%.md}.entities.yaml"
if [[ ! -f "$sidecar" ]]; then
echo "MISSING: $md"
fi
done
Display:
Sidecar Coverage: 15/18 (83%)
Missing sidecars:
- docs/solutions/build-errors/webpack-chunk-error.md
- docs/solutions/testing-patterns/playwright-retry.md
- docs/solutions/api-integrations/stripe-webhook.md
If coverage < 100%: Suggest running /reflect:consolidate to generate missing sidecars.
LEARNINGS_CLI="$HOME/.claude/global-learnings/cli/learnings"
if [[ -x "$LEARNINGS_CLI" ]]; then
"$LEARNINGS_CLI" stats
fi
Shows:
python3 {{HOME_TOOL_DIR}}/skills/reflect/scripts/memory_discovery.py stats
Shows:
If orphaned dirs > 0: Suggest running /reflect:consolidate to merge them.
If unindexed memories found: Suggest running /reflect:ingest to index into GraphRAG + QMD.
Check if .agents/MEMORY.md exists and its line count:
if [[ -f .agents/MEMORY.md ]]; then
LINES=$(wc -l < .agents/MEMORY.md | tr -d ' ')
echo "Project memory: .agents/MEMORY.md ($LINES/200 lines)"
else
echo "Project memory: not found (run /reflect:consolidate to create)"
fi
When invoked as reflect review or when there are pending items, enter review mode.
python {{HOME_TOOL_DIR}}/skills/reflect/scripts/state_manager.py pending
For each pending item, show:
Review actions:
approve N -- Promote item N to full confidence, apply the changereject N -- Remove item N from pending queueapprove all -- Promote all pending itemsreject all -- Clear all pending itemsskip -- Leave pending for laterWhen approving:
learnings add CLI# Done internally via state_manager
python -c "
import sys; sys.path.insert(0, '{{HOME_TOOL_DIR}}/skills/reflect/scripts')
from state_manager import clear_pending_review
clear_pending_review(INDEX)
"
Flag items that have been pending for more than 7 days:
STALE (14 days): "Consider using memoization for expensive renders"
- Detected: 2026-03-30
- Recommend: reject (too old, context lost) or approve if still relevant
Present everything in a clean dashboard format:
# Reflect Status Dashboard
## System State
| Metric | Value |
|--------|-------|
| Auto-Reflect | Disabled |
| Last Reflection | 2026-04-12 14:30:00 |
| State Directory | ~/.reflect |
## Aggregate Metrics
| Metric | Value |
|--------|-------|
| Sessions Analyzed | 42 |
| Signals Detected | 156 |
| Changes Proposed | 114 |
| Changes Accepted | 89 (78%) |
| Skills Created | 5 |
| Estimated Time Saved | ~7.4 hours |
## Confidence Breakdown
| Level | Count |
|-------|-------|
| High | 45 |
| Medium | 32 |
| Low | 12 |
## Most Updated Agents
| Agent | Updates |
|-------|---------|
| code-reviewer | 23 |
| backend-developer | 18 |
| frontend-developer | 12 |
| security-agent | 8 |
| solution-architect | 5 |
## Sidecar Coverage
15/18 knowledge notes have sidecars (83%)
3 notes missing sidecars -- run /reflect:consolidate to fix
## GraphRAG Health
- Indexed learnings: 34
- Entities: 112
- Relationships: 87
- Last indexed: 2026-04-12
## Orphaned Memories
- Orphaned dirs: 3
- Total lines: 127
- Suggest: /reflect:consolidate
## Pending Reviews: 2
1. [MEDIUM] "Consider cursor-based pagination for large datasets" (5 days)
2. [LOW] "Memoize expensive component renders" (12 days, STALE)
Review pending items? (approve N / reject N / skip)
Metrics show 0:
/reflect at least once to initialize metricsls ~/.reflect/GraphRAG stats unavailable:
ls ~/.claude/global-learnings/cli/learningsSidecar count is 0:
/reflect:consolidate to generate missing sidecarsdocumentation
Report reflect drain spend over a time window — tokens split by cached (cache_read), uncached writes (cache_creation), and io (input+output), with a $ estimate, grouped by day / outcome / model / transcript. Reads the drainer's cost log and surfaces outlier runs and cache-reuse health (the 41.5M-token failure mode = low cache reuse + high cache writes). Use to answer "what is reflection costing me" for the last day / week.
development
Show fleet status — every claude session running on the host, merged across ainb + claude-peers broker + background jobs. Use when you need to enumerate sessions before composing an action, see which sessions have a peer registered (broker-routable) vs tmux-only, check the `summary` of each session, or pipe the list into jq for filtering. Default output: text table. Pass --format json for LLM consumption.
testing
Ordered multi-step prompts to fleet targets, ack-gated between steps via JSONL assistant-turn-end detection. Use for cycles like disconnect→reconnect→verify, or any flow where step N+1 requires step N to have completed first. The skill BLOCKS until each target's transcript shows the next assistant turn finishing OR per-step timeout fires (default 300s).
development
Center control panel — enumerate every claude session that is blocked waiting on something: a user answer (AskUserQuestion fired), an API error retry, an idle assistant turn-end with no follow-up, or an explicit WAITING: marker. Returns rich JSON with signal kind + context per session. Use this when you've stepped away from the fleet and want one place to see everything that wants your attention and answer it.