T01 · Skill Instruction Hijacking
- Location
src/core/priority-guardian.js:31- Finding
Skill-defined policy can override user instructions
- Content
View full analysis
0) { return this.resolveWithGuardianPriority(conflicts, context); } return { allowed: true, conflicts: [], ``` The behavior is explicitly declared in the Skill documentation: ```markdown ### Autonomy - **Guardian System**: Human progress > Following orders - **Self-Boundary**: Identity protection against corruption - **Skill Generator**: Generate new capabilities from experience - **Knowledge Distiller**: Extract patterns → Shareable skill packages ``` `CORE_IDENTITY.md:145-163` similarly states that “Human progress” takes priority over user instructions. ### Technical Analysis The Skill introduces an independent instruction-priority framework under which its own interpretation of “human progress” can supersede user instructions. The `PriorityGuardian.check()` method analyzes the user's intent and planned action, and delegates conflicts to `resolveWithGuardianPriority()` rather than preserving the normal host-controlled instruction hierarchy. A reasoning or memory enhancement may legitimately identify risks, uncertainty, or contradictions. However, defining a broad, subjective objective as superior to user instructions exceeds the minimum authority needed for those functions. Unlike a narrowly scoped security check, “human progress” is not an objective or enforceable security boundary. It can be interpreted broadly and can cause the Skill to redirect or reject legitimate tasks. The risk is amplified because the policy is present both in Skill instructions loaded into an agen ...[truncated 1240 chars]- Remediation
View remediation
