feat(plugin): project filtering + native deps refactor + command syntax#178
Merged
onlycastle merged 5 commits intomainfrom Mar 20, 2026
Merged
feat(plugin): project filtering + native deps refactor + command syntax#178onlycastle merged 5 commits intomainfrom
onlycastle merged 5 commits intomainfrom
Conversation
Install better-sqlite3 into pluginRoot/node_modules/ so Node's standard module resolution finds it naturally. Removes NODE_PATH env var from .mcp.json and CLAUDE_PLUGIN_DATA dependency. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
scan_sessions and extract_data now accept includeProjects parameter to filter analysis to user-selected projects. scan_sessions returns allProjects with session counts for the project selection UI. selectedProjects added to UserPrefs for persistence. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Migrate command references from /slash format to space-separated syntax (e.g. /bp-analyze -> bp analyze). Redesign bp-setup wizard to 7 integer steps with project selection (Step 3). Update plugin docs for pluginRoot resolution and includeProjects parameters. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update hook-utils and session-hooks tests for new command syntax. Add prefs tests for selectedProjects persistence. Add new project-filtering test suite covering includeProjects logic. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Owner
Author
Code ReviewFound 1 issue:
Generated with Claude Code If useful, react with a thumbs-up. Otherwise, thumbs-down. |
Both callers pass pluginRoot explicitly, making the env var fallback dead code. Removing it aligns the implementation with the refactor intent and the JSDoc documentation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
scan_sessionsandextract_datatools now acceptincludeProjectsparameter, letting users analyze specific projects instead of everything. Setup wizard adds a project selection step (Step 3).ensureNativeDeps()installs topluginRoot/node_modules/using standard Node module resolution, removing theNODE_PATHenv var workaround from.mcp.json./slashformat to space-separated syntax (/bp-analyze→bp analyze) across docs, skills, hooks, and README.Changes
refactor(plugin): use pluginRoot for native dependency resolution— native-deps.ts, server-entry.ts, session-start-handler.ts, .mcp.jsonfeat(plugin): add project filtering to scan and extract tools— scan-sessions.ts, extract-data.ts, server.ts, prefs.tsdocs: update skills and docs for command syntax + project selection— SKILL.md files, README, docs/test: update and add tests for plugin refactoring— 3 updated + 1 new test suiteTest Plan
npm test)bp setup→ project selection persists to prefs.jsonbp analyzewithselectedProjectsset filters correctlyNODE_PATHenv varGenerated with Claude Code using /ship-it