feat(evolve): add --skill flag for cross-project skill review - #672
Conversation
`--recent` only scans the current project + worktree siblings, so skills exercised mostly in other repos (e.g. `research`) never surface. `--skill <name>` scans the entire ~/.claude/projects tree for sessions that actually invoked the skill (by the `Base directory for this skill:` injection, not a bare path mention), capped to the most recent N, filtered to that skill. Also fixes a stale-detection bug this exposed: when a slash command is invoked with arguments, the injected body gains a trailing `ARGUMENTS: …` block. That tail was hashed along with the body, so an *identical* skill body was misjudged stale (dropped, events emptied) whenever it had been called with args. stripBaseDirLine now strips the ARGUMENTS tail too. This affected `--recent` as well, not just `--skill`. Tests: +6 (ARGUMENTS regression, --skill cross-project/filter/exit codes).
Multi-session review (--skill research) surfaced session 9277012e: research was launched to investigate a frontend bug at a live backoffice URL, and the user immediately interrupted with "mcp chrome 써봐" — wanting the running page inspected, not the source read. Add a Depth Selection row routing live UI/page bugs to `me:browse` before code, and a matching Red Flag.
A correction that fires while skill X is running may expose a gap that belongs to a *related* skill Y (the one carrying the missing responsibility), not X. Phase 1 now instructs the analyst to ask "which skill's contract would have prevented this?" and target that skill — preferring to fix the owning skill's trigger/body over special-casing the skill that merely happened to be active. Resolve the related skill's own repo_path as the editable target.
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughThe PR extends the ChangesCross-project skill analysis and
Research skill guidance refinement
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
# [17.19.0](v17.18.1...v17.19.0) (2026-06-01) ### Features * **evolve:** add --skill flag for cross-project skill review ([#672](#672)) ([e214e29](e214e29))
Summary
/me:evolvecould only review skills used in the current project + worktree siblings. Skills exercised mostly in other repos (e.g.research, used while exploring real codebases, not in this meta repo) never surfaced. This adds a--skill <name>mode that scans all projects, and fixes a stale-detection bug it exposed.Changes
--skill <name>flag — scans the entire~/.claude/projects/tree for sessions that actually invoked the skill (by theBase directory for this skill:injection, not a bare path mention), capped to the most recent N, filtered to that skill. Cross-project, unlike--recent.ARGUMENTS: …block. That tail was hashed with the body, so an identical skill body was misjudged stale (dropped, events emptied) whenever called with args.stripBaseDirLinenow strips it. This affected--recenttoo. (Verified:researchwent fromdropped (stale), events=0tostale:false, events=91.)me:browsefirst.Tests
bats tests/me/evolve-build-index.bats— 33 passing (27 existing + 6 new: ARGUMENTS regression,--skillcross-project/filter/exit codes).Summary by CodeRabbit
Release Notes
New Features
--skill <name>option to/me:evolvecommand for cross-project skill analysis with--recentfiltering support.Bug Fixes
Documentation
/me:evolvecommand documentation with exit-code semantics and cross-skill targeting guidance.Tests
--skillmode and edge cases.