claude-code icon indicating copy to clipboard operation
claude-code copied to clipboard

[FEATURE] Add fine-grained permissions to SKILL.md using "tools" NOT "allowed-tools"

Open sylvansys opened this issue 5 months ago • 2 comments

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

I prefer to define permissions at the skill level rather than the agent level to enable more granular permissions control. However, agent permissions are defined using tools while skill permissions are defined using allowed-tools. The allowed-tools format on skills introduces inconsistent metadata and also does not respect path-based matching for Edit and Write tools in my experience. It likely does not respect fine-grained permissions of this matching type and only allows listing base tools.

Proposed Solution

SKILL.md metadata should be updated to use tools and should respect fine-grained permissions in the same manner that agent files already do.

Alternative Solutions

I've managed to enforce fine-grained skill permissions using hooks but this is tedious.

Priority

Medium - Would be very helpful

Feature Category

Configuration and settings

Use Case Example

Example schenario:

  1. I am developing a new claude skill and want to give it fine-grained permissions.
  2. I add tools metadata to SKILL.md.
  3. When a skill is invoked, its permissions take precedence over the subagent and main agent (also hoping permissions/tools can be defined specific to the main agent).

Additional Context

It may also be nice to have a SkillStop hook event like Stop and SubagentStop but I currently use PostToolUse for SubagentStop as the params of SubagentStop are insufficient for my hooks.

sylvansys avatar Nov 05 '25 23:11 sylvansys

Good idea

Mindgames avatar Nov 06 '25 09:11 Mindgames

This issue has been inactive for 30 days. If the issue is still occurring, please comment to let us know. Otherwise, this issue will be automatically closed in 30 days for housekeeping purposes.

github-actions[bot] avatar Dec 12 '25 10:12 github-actions[bot]