VeryGoodOpenSource / VeryGoodOpenSource/vgv-wingspan

feat: preflight check for skill-required permissions vs user-level denies

Open
#181 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature
Dominant language
Shell
Stars
105
Forks
15
Avg merge
13h 12m
Merged PRs (30d)
2

Description

Description

Skills declare required tool access via allowed-tools frontmatter (e.g. Bash(git push *) Bash(gh *) in skills/create-pr/SKILL.md). Per Claude Code permissions model, rules evaluate deny → ask → allow. Skill allowed-tools can only add permission — cannot override higher-scope deny.

Result: user with conflicting deny at user or project level starts skill, does partial work, fails mid-session. Session ends half-baked, context lost.

Add preflight check that validates current permission ruleset against invoked skill's allowed-tools before work begins, and surfaces conflicts with clear remediation message.

Requirements
  • Detect conflicts between resolved permission ruleset (user + project + local scopes) and invoked skill's allowed-tools.
  • Emit preflight error listing:
    • Each tool pattern skill needs
    • Which scope denies or asks for it
    • Remediation command or config path
  • Run at skill entry, before any tool call that would trip deny.
  • Apply across every skill declaring allowed-tools (create-pr, create-branch, review, build, hotfix, etc.).
  • Alternative surface: document required permissions per skill in README or skill frontmatter rendering for self-audit.
Additional Context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting skills/create-pr/SKILL.md and the other skills that declare allowed-tools, then locate how skill entry and permission configuration are represented. Define how user, project, and local rules are resolved before choosing between a preflight check and documentation. Done means every affected skill exposes required permissions and conflicting deny or ask rules have a clear remediation path.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
security, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.