Repository navigation
trail init: find extension claude, tick learnings - #612
anirudhkumar-nanonets wants to merge 3 commits into
Conversation
🌱 graft blast radiusNothing outside this diff depends on it. 2 areas changed; no indexed dependents at depth 2. Who knows this code — 1 person across 2 areas
Ownership is git history over each area's own files, weighted towards recent work (120-day half-life). Merge commits and bots are dropped, and you are dropped from your own PR. A name with no Test signal per changed area — 2 ✓Reached = a node under a test path has a resolved edge into the changed symbol. It undercounts anything called indirectly — through a CLI, a spawned process or a dynamic import — so read a low ratio as “look here”, never as a coverage gate.
Open the interactive graph → — click an area to see its dependent symbols at file:line. |
Moves:
learnings_committed, the number of clones whose committed learnings went up in the last 7 days. The PostHog query is indaily/project.md. I didn't check its value today: this session has no Metabase access. The direct signal iscold_startevents withoutcome = no_claude, which should drop.What changes
trail initreads the repo's past Claude sessions by running Claude Code headless, and it only looked forclaudeon PATH. Someone who uses Claude Code only through the VS Code or Cursor extension has noclaudeon PATH, so init skipped their sessions without a word and saved no learnings. Someone on the PA team hit this on airflow-dags.claudeBin()insrc/notes/cold-start.tsnow looks in this order:claudeon PATH~/.local/bin/claude, then~/.claude/local/claudeanthropic.claude-code-*/resources/native-binary/claudeunder~/.vscode,~/.cursor,~/.vscode-insidersor~/.windsurfThe read runs whichever it finds. When there's none, init stays quiet as before.
A failed read never marked the repo as read, so anyone who hit this gets their learnings by running
trail initagain once this ships.Each learning says how many sessions it came from. From rushabh's 13 Oct suggestion for init's opening ("you've corrected claude 6 times about using pnpm, not npm"):
You tick which learnings to keep. The other half of the same suggestion ("you can tick the ones to keep. claude will follow them from the first prompt"). On a terminal, once the read finishes, init shows what it found, all ticked, in the same picker as the agent choice (↑↓ move, space toggle, a all, enter confirm, esc cancel):
Only the ticked ones are saved, and init reports "kept 1 of the 2 things…". Esc saves none and leaves the repo unread, so the next
trail initasks again. A run without a terminal, or with--yes, keeps them all as before, so an agent running init isn't blocked.cold_startalready hadoffered_bucketandpicked_bucket;picked_bucketnow counts what the person kept, andoutcomegainscancelled(inTELEMETRY.md).Tests
claudeBincases intrail-cold-start: it usesclaudeon PATH, picks the newest extension copy across VS Code and Cursor (2.1.296 over 2.1.289 over 2.1.99), prefers a standalone install, and skips an extension folder without the binary.trail initend to end: the list showstold Claude in 2 sessions:before each title.finishPastReadsaves only what was kept and marks the repo read; cancelling saves nothing and leaves it unread.--version(2.1.289).🤖 Generated with Claude Code