Skip to content

bug(skills): user's explicit skill invocation silently ignored due to scope conflict #17

@WesleyMFrederick

Description

@WesleyMFrederick

Problem

When user explicitly invokes a skill (e.g., /syncing-skills-with-hub), Claude silently ignores the request if the skill's scope gate says "Do NOT use when .claude is a submodule." The user's explicit request is overridden without acknowledgment.

Reproduction Steps

  1. In a project where .claude is a git submodule, run /syncing-skills-with-hub
  2. Claude reads the skill's "Do NOT use when" gate
  3. Claude silently does manual work instead of invoking the skill
  4. User must repeat request with emphasis to get compliance

Root Cause

No conflict-resolution protocol exists between using-superpowers ("you MUST use skills") and individual skill scope gates ("Do NOT use when X"). Claude defaults to the skill's gate, silently ignoring the user's explicit request.

Architecture Principles Violated

Baseline violates:

  • ^fail-fast: Conflict between user intent and skill scope is not surfaced early. Claude silently picks a side instead of exposing the error.
  • ^clear-contracts: No defined contract for what happens when user intent conflicts with skill scope gates. Ambiguous behavior.
  • ^dry-run-capability: No preview of "I'm about to skip this skill because X" before taking the silent override action.

Ideal incorporates:

  • ^fail-fast: Surface the scope conflict immediately when detected, before proceeding.
  • ^clear-contracts: Define explicit protocol — user explicit request > skill scope gate, but conflict must be surfaced.
  • ^dry-run-capability: Present the conflict and let user decide before any action is taken.

Expected Behavior

Claude surfaces the scope conflict: "This skill says it shouldn't be used for submodule projects. Want me to proceed anyway, or use an alternative?" Never silently ignore.

Related

  • ~/.claude/skills/using-superpowers/SKILL.md - mandatory skill usage directive
  • ~/.claude/skills/syncing-skills-with-hub/SKILL.md:18-19 - scope gate

Note

User's explicit request is the highest-priority signal. Skill scope gates are guardrails, not overrides for explicit user intent.


Acceptance Criteria

  • When user explicitly invokes a skill with a scope conflict, Claude surfaces the conflict before proceeding
  • Claude never silently skips an explicitly requested skill
  • Conflict surfacing includes: what the conflict is, recommendation, and user choice

Definition of Done

  • Skill or CLAUDE.md rule updated with conflict-resolution protocol
  • Tested with subagent skill evaluation
  • Committed with conventional commit

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions