mirror of
https://github.com/wshobson/agents
synced 2026-06-21 14:13:58 +00:00
112197c6bf
The static-layer trigger heuristic was a literal substring match on "Use when …" / "Use this skill when …" / "Use proactively" / "Trigger when …". Three real-world phrasings were missed: 1. Third-person canonical form recommended by Anthropic's own plugin-dev skill-development skill: "This skill should be used when …" (contains "used when", not "use when"). Running the previous regex on plugin-dev itself produces 7 false-positive MISSING_TRIGGER flags. 2. Prepositional temporal triggers: "Use after …", "Use before …", "Use immediately before …", "Use whenever …". Common in self-audit and hook-adjacent skills (e.g. functional-emotions: 6 flags). 3. Path-triggered self-documenting skills: "Auto-loads when …". Extract the pattern to a module-level `_TRIGGER_PATTERN` and share it between the anti-pattern detector and `_description_pushiness` so the two sites stay in sync. Expand it to match `(should be )?use(d)? (this skill )?(immediately )?(when|after|before|whenever)` plus `auto-loads when` and `trigger when`. Verification: - plugin-dev (Anthropic's own): 33.82 → 55.18, MISSING_TRIGGER cleared - functional-emotions: 39.04 → 59.68, all 6 false positives cleared - 22 tests pass, including 11 new positive-form parametrised cases and 2 regression tests against canonical Anthropic phrasings.