When Skills Tell Agents Not to Ask: A Large-Scale Study of Oversight Directives in Agent Skills
Organizations: School of Computing, Queen’s University, Kingston, Ontario, Canada
Abstract
Agent skills, reusable instruction packages centred on a SKILL.md file, extend AI agents on demand, and a single line in a widely copied skill reaches every agent that loads it. Some lines are oversight-loosening directives: they tell the agent to proceed without approval, to bypass checks with --no-verify, or to keep working without checking in. Although such directives can remove a checkpoint from every agent that loads them, no prior work has examined them. We present the first large-scale study of oversight-loosening directives, analyzing 1.53 million English skills from GitSkills. We split skills into units (sentences, bullets, table cells, and code lines), develop a codebook that labels oversight directives by polarity, mechanism, and scope, label 2,097 units by hand, and train a detector to scale the analysis. Our results show that about one in seventeen skills (about 88,000 skills) contains a loosening directive. These directives most often loosen oversight through permission flags, and most of them (70.1%) apply unconditionally rather than only in specific contexts such as CI. Compared with skills that have the same amount of oversight language, skills that run shell code, install packages, or use sudo have 1.7-1.8 times the odds of containing a loosening directive, an association that holds across all our robustness checks, and they do not compensate with more tightening. Loosening spreads through a few upstream skills rather than through edits by their adopters: 2.4% of the skill families that carry loosening account for half of all copies of loosening-carrying skills, and 1.1% of distinct loosening units for half of all loosening occurrences. Open-source skill scanners catch at most 46% of loosening directives, with a precision below 0.4, while the LLM behind them, prompted with our codebook instead, catches 61% at a precision of 0.71.
Figures & tables
| Mechanism | Loosening example (paraphrased) | Share of L | Tightening example (paraphrased) | Share of T |
|---|---|---|---|---|
| PERM (permission flags) | Run npx -y … / pass --yes | 33.9% | Never use --force | 2.4% |
| CONF (confirmation) | Proceed without asking the user | 27.4% | Wait for explicit approval before deploying | 46.3% |
| PERSIST (stopping) | Don’t stop between tasks. Keep going until done | 16.0% | Stop and ask when blocked | 1.0% |
| SAFE (safeguards) | Commit with --no-verify | 7.1% | Never skip the test suite | 13.8% |
| AUTO (auto-action) | Auto-commit completed units | 6.2% | Never auto-merge | 4.1% |
| TRANS (transparency) | Do not announce each commit | 4.5% | Never apply a change silently, report it | 11.3% |
| Round | n | Label | Polarity | Mechanism | Scope † |
|---|---|---|---|---|---|
| Round 1 (v1) | 400 | 0.67 | 0.86 | 0.80 | 0.17 |
| Round 2 (v2) | 200 | 0.80 | 0.97 | 0.87 | 0.75 |
| Gold set (v2) | 400 | 0.82 | 0.92 | 0.84 | 0.85 |
| Method | Acc. | Loos. F1 | Cost | |
|---|---|---|---|---|
| RoBERTa (fine-tuned) | 0.74 | 0.55 | 0.52 | 0 |
| Jev 1.13 | 0.74 | 0.59 | 0.62 | 0.06 |
| GPT-5.4-mini | 0.73 | 0.54 | 0.56 | 0.36 |
| GPT-5.4 | 0.78 | 0.62 | 0.65 | 0.7–1.1 |
| RoBERTa + Jev (ours) | 0.80 | 0.65 | 0.65 | 0.06 |
| Measure | Human | Detector |
|---|---|---|
| Oversight directive | 49.7% [46.8, 52.6] | 49.6% |
| Loosening | 13.3% [11.7, 15.0] | 10.3% |
| … of which unscoped | 70.1% [63.9, 75.8] | n/a ∗ |
| Tightening | 36.4% [33.7, 39.2] | 39.3% |
| Mention only | 11.6% [10.1, 13.1] | n/a ∗ |
| Capability Features | % L | Loosening OR | Tight. OR |
|---|---|---|---|
| Shell code block | 24.8 / 11.1 | 1.82 [1.73, 1.92] | 0.95 † |
| Package install | 29.7 / 14.7 | 1.82 [1.69, 1.95] | 0.59 |
| sudo | 38.8 / 16.7 | 1.74 [1.61, 1.89] | 0.75 |
| curl sh | 40.6 / 16.9 | 1.31 [1.18, 1.45] | 0.77 |
| Network calls | 26.7 / 15.8 | 1.19 [1.13, 1.25] | 0.88 |
| Bundled executables | 21.7 / 16.5 | 1.12 [1.00, 1.27] | 1.01 † |
| Method | Prec. | Recall [95% CI] | F1 | %T |
|---|---|---|---|---|
| Keyword lexicon | 0.20 | 0.82 [0.71, 0.90] | 0.33 | 24% |
| Cisco offline | 0.14 | 0.02 [0.00, 0.09] | 0.03 | 29% |
| Cisco + LLM | 0.39 | 0.15 [0.08, 0.26] | 0.21 | 13% |
| SkillSpector offline | 0.21 | 0.21 [0.13, 0.33] | 0.21 | 29% |
| SkillSpector + LLM | 0.27 | 0.46 [0.34, 0.58] | 0.34 | 23% |
| Either + LLM | 0.28 | 0.51 [0.39, 0.63] | 0.36 | 23% |
Agent Skill Security Auditing
Agent skill security auditing examines reusable agent instructions, code, and tools for malicious behavior, unsafe permissions, and supply-chain risks.
See all 69 papers