fix(create-expert): add pick to internal experts for minimal privilege#364
Merged
fix(create-expert): add pick to internal experts for minimal privilege#364
Conversation
Add pick lists to all 8 internal PBT framework experts to follow the minimal privilege principle documented in docs/making-experts/skills.md. Each expert now only has access to the tools it requires: - create-expert: ["attemptCompletion"] (only orchestrates via delegates) - property-extractor: ["attemptCompletion"] - ecosystem-builder: ["readTextFile", "appendTextFile", "attemptCompletion"] - integration-manager: ["attemptCompletion"] - functional-manager: ["attemptCompletion"] - usability-manager: ["attemptCompletion"] - expert-tester: ["exec", "attemptCompletion"] - report-generator: ["attemptCompletion"] Closes #350 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
| type = "mcpStdioSkill" | ||
| command = "npx" | ||
| packageName = "@perstack/base" | ||
| pick = ["readTextFile", "appendTextFile", "attemptCompletion"] |
There was a problem hiding this comment.
Ecosystem-builder pick list mismatches its instruction
The ecosystem-builder instruction explicitly states "Use editTextFile to APPEND the Expert ecosystem" and "Do NOT use writeTextFile", but the pick list provides appendTextFile instead of editTextFile. The expert won't have access to the tool its own instructions tell it to use, causing it to fail when attempting to add experts to perstack.toml.
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
Add
picklists to all 8 internal PBT framework experts to follow the minimal privilege principle.Changes
create-expert["attemptCompletion"]property-extractor["attemptCompletion"]ecosystem-builder["readTextFile", "appendTextFile", "attemptCompletion"]integration-manager["attemptCompletion"]functional-manager["attemptCompletion"]usability-manager["attemptCompletion"]expert-tester["exec", "attemptCompletion"]report-generator["attemptCompletion"]Rationale
Per
docs/making-experts/skills.md:Most experts only need
attemptCompletionbecause they orchestrate via delegation.ecosystem-builderneeds file access to read/append to perstack.tomlexpert-testerneedsexecto run perstack commandsTest plan
Closes #350
🤖 Generated with Claude Code
Note
Implements least-privilege tool access for internal PBT experts.
apps/create-expert/src/lib/create-expert-toml.tsto addpicklists per expert: most use"attemptCompletion"only;ecosystem-builderadds"readTextFile"and"appendTextFile";expert-testeradds"exec"..changeset/add-pick-to-experts.mdto publish the patch and document the exactpicksets.Written by Cursor Bugbot for commit 18e71db. This will update automatically on new commits. Configure here.