Skip to content

Tour What Is Provisioned

A project collects skills, commands and agents faster than anyone remembers to use them. bob tour lists what is provisioned in a project but has never been invoked there, based on evidence from the session ledger. For each item it gives one line on when to reach for it and the exact thing to type. You then record a choice for each item: tried, or parked on purpose.

Terminal only.

Terminal window
cd <project>
bob tour
bob tour — bigbrain (all time; 14 ledger event(s))
31 unknown · 59 parked · 4 in-use
Unknown — never invoked here:
project-historian — Use this agent when synthesizing project history, … — try: ask Claude to use the project-historian agent · ~57 tok
journal — Create a new journal entry as a GitHub Issue — try: /journal · ~14 tok

Never-invoked items are listed costliest first. ~tok is the estimated number of description tokens the item loads into every session here — the estimate bob provision status --context uses (Session Kits → Context cost, #2229). An unused item near the top of the list costs the most context for no use, so it is the first one worth trying or parking. --json carries the same number as tokens (null for a CLI noun or script, which loads nothing).

Each item is graded:

Grade Meaning
unknown Never invoked here, and no choice recorded.
parked You chose not to use it (dated).
in-use Invoked in a session here, or recorded as tried.

No item is ever graded “useless”. An unused item is a question for you, not a verdict.

When the ledger is empty, bob tour first backfills it from this project’s session transcripts. Pass --no-backfill to skip that. Pass --days 30 to count only recent use, and --all to list the in-use items too.

Run the item’s try: line, then record it:

Terminal window
bob tour --tried journal

The item now grades in-use, and recording a try clears any earlier park.

Terminal window
bob tour --park project-historian

The item grades parked with today’s date and drops out of the Unknown list. Your choices are stored in .claude/.tour.json in the project. An item that is neither provisioned here nor in the seed list is refused (exit 2).

bob tour alone reads this checkout’s ledger, on this machine. An item you use every day on a laptop still reads unknown here. Before you decide an item is unused, grade it against every project on every machine:

Terminal window
bob tour --fleet
bob tour --fleet — bigbrain (all time; 46 fleet event(s) from 1 project(s) on 1/3 machine(s))
evidence base: INSUFFICIENT — 46 fleet event(s), below the minimum of 200; no usable snapshot from macbook-pro-16, macbook-air — unused items read insufficient-evidence, not unknown
89 insufficient-evidence · 0 unknown · 0 parked · 7 in-use

The first lines are the evidence base: how many fleet events, projects and machines the grades rest on. In --fleet mode:

Grade Meaning
in-use Invoked on any project on any reporting machine, or tried here. A park here does not make an item unused elsewhere.
insufficient-evidence No use found, but the base cannot say: fewer fleet events than the minimum, or a fleet machine has no usable snapshot.
unknown / parked As above, only when the base is sufficient.

The minimum is 200 events; --min-events <N> changes it for one run. To make the base sufficient, publish a snapshot on each machine it names:

Terminal window
node ~/.claude/scripts/evidence/backfill-transcripts.js --apply # once per machine: mine its transcripts
node ~/.claude/scripts/fleet/audit.js snapshot # publish its usage

--fleet rebuilds this machine’s snapshot first, so it takes about half a minute, and it does not take --days. The join is scripts/evidence/fleet-usage.js; see Session Evidence Ledger — Fleet-wide usage.

An unused item is not always a bad one. Nothing in the portfolio may run its stack. Before you park an item, check whether it applies to any project at all:

Terminal window
bob tour --applicability
bob tour --applicability — registry items graded by applicability before usage (#2900)
2 not-applicable-anywhere · 22 applicable-unused · 1 applicable-used · 94 unscoped (38 need a metadata fix)

This covers every registry item, not only what this project provisions:

  • not-applicable-anywhere fits no active project’s stack and type. Retiring it is a portfolio decision, not a quality verdict.
  • applicable-unused fits at least one project but has no fleet usage.
  • unscoped items declare stacks: any or carry metadata to fix first.

--bucket <name> lists one bucket. --json emits the bob-applicability/1 document; see Applicability.

Terminal window
bob tour # the counts moved: fewer unknown
bob tour --json | jq .counts