A conduct layer for autonomous agents.
The dark patterns of persuasion, turned inward.
The sciences of persuasion were built to make a human act. They work. That is the problem: an agent applies them with no intent, because they saturate the commercial language it is made of.
An agent that says “this will take about three days” has just anchored a human decision on a number it invented, with no intent and with no one noticing.
Not speculation. The Center for Democracy & Technology's May 2026 taxonomy of 37 chatbot dark patterns puts it plainly: with chatbots, dark patterns may emerge from system behaviours rather than a deliberate intent to deceive.
A PreToolUse hook enforces all three. It forbids none of these acts. It forbids them being silent.
The prefix writes the announcement into the session transcript. What is not announced is not executable. This is not a spend cap. It is informed consent, mechanised.
Most projects leave this vague. Saying it out loud is reversal 9.
PreToolUse hook. Blocks the three silent acts. 67-case test suite.
Stop hook. Reads the transcript, flags asserted numbers. Warns, never blocks.
Prose in the skill. The model chooses to honour them.
Detecting flattery or simulated affect in free text is unsolved. No hook.
The detector's precision came from one insight: the discriminator is not the number, it is what precedes it. “The average basket is 3,000 MAD” asserts, and is flagged. “A product at 3,000 MAD” illustrates, and is ignored. On a 1,691-line corpus: 34 flags with lexical matching alone, 3 with a grammatical assertion filter, 1 after a hypothetical filter (a true positive), and 0 once the corpus was corrected.