Repository navigation
fix(skills): drop broad allowed-tools grant from research - #1206
Merged
Merged
Conversation
The plugin marketplace validator flagged research's allowed-tools line (ALLOWED_TOOLS_BROAD for unscoped Bash, ALLOWED_TOOLS_UNSCOPED_WRITE for unscoped Write). No step in the skill needs unprompted execution, so the grant is removed and research uses the normal permission prompts like the other 28 skills.
The pinned v2.13.1 (x/tools 0.49.0) cannot read go1.27 export data
("export data version 5 is greater than maximum supported version 4"),
so the go.lint gate failed on every PR after the toolchain bump in #1201.
v2.14.0 ships x/tools 0.50.0 and lints the tree clean (0 findings).
… fix/plugin-skill-allowed-tools
boshu2
added a commit
that referenced
this pull request
Oct 10, 2026
…1208) ## Why Since #1201 moved `cli/go.mod` to `toolchain go1.27.2`, the pinned golangci-lint v2.13.1 (x/tools 0.49.0) fails typecheck on every package: `export data version 5 is greater than maximum supported version 4`. That turned the `go.lint` gate red for any PR that runs the correctness job (see #1206 CI, test 186 in `tests/scripts/check-go-lint.bats`). ## What Pin bumped from v2.13.1 to v2.14.0 (x/tools 0.50.0) in `scripts/golangci-lint-v2.sh` and the three workflows that install it. ## Checks - `bash scripts/check-go-lint.sh` locally under `GOTOOLCHAIN=go1.27.2`: `golangci-lint clean (0 findings)`. - CI on this PR is the authoritative confirmation.
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.
Findings (Claude Code plugin marketplace validator, main @ f9c4b1c)
ALLOWED_TOOLS_BROAD:skills/research/SKILL.mdpre-approves Bash (any shell command).ALLOWED_TOOLS_UNSCOPED_WRITE: the same file pre-approves Write with no path scope.RUNTIME_FETCH_EXEC(warning):skills/skill-eval/SKILL.md"contains a download-and-execute shell pattern".Decision
This removes
allowed-tools: Read, Grep, Glob, Bash, Writefrom research. research was the only one of 29 skills with this field. The skill body names itsvalidate-output.shscripts only as paths and never depends on running them unprompted, so normal permission prompts work as they do for the other 28 skills. The validator explicitly accepts dropping the field, and every consumer treats it as optional:validate-skill-schema.sh,skillshealth/evidence.goandskill-frontmatter.v1.schema.json.skill-eval is unchanged. It contains no curl, wget, npx, uvx, pipe-to-shell or download step. The only plausible match is the word
evalinclaude plugin eval, a local Claude Code CLI shown as documentation. The validator's own text says a documentation-only match needs no change.skills/using-gc/SKILL.mdis unchanged because it reads no credentials. That hold comes from pairing it with.github/workflows/release.yml, and it clears when the workflow leaves the plugin tree in another lane.Checks
bash scripts/validate-skill-schema.sh skills/researchand the full-repo run: 29/29 passbash scripts/validate-skill-frontmatter.sh: 29/29 okbash skills/skill-builder/scripts/heal.sh --check --strict: cleanbash scripts/regen-all.sh: no projection changes.--check: "All generated projections are current."ao gate check(freshgo install ./cmd/ao): fast/head 47 checks, 47 pass, 0 failclaude plugin validate .: Validation passedcd cli && go test ./internal/skillshealth/...: ok