A cross-cutting specialized skill for diagnosing AI slop, with methodology from Li Jiu'er's "What the Fuck Is Fucking Human Flavor" (subtraction/addition/four-layer outliers/three red lines).
Positioning:The human-flavor mirror between the writing side and the review side. It intervenes as the 4.5 writing-side self-check step after the writing side's 4.4 (diagram) and before the review side's 4.6 (gate-structure).Diagnose only, do not revise the draft in place。
Wake ConditionsCalled by the main skill after each chapter completes the writing side's four skills (draft/code/layout/diagram) and before automatically entering the review side's six gates (four at the technique layer + two at the experience layer).
Inputbook_state.chapter_laid_out(this chapter's stylized final draft)book_state.research_pack(used to verify the real source of details for concreteness and stance density)- Cross-chapter context (the set of presence anchors available from existing final drafts)
book_state.slop_log Append one verdict:
{
"status": "pass" | "reject",
"items": [
{
"dim": "concreteness" | "stance" | "presence" | "over_slop_reduction",
"location": "<小节/行>",
"problem": "<一句话>",
"owner_skill": "handbook-draft" | "handbook-topic-research",
"fix_hint": "<修复方向(不直接给文本)>"
}
]
}
Neverrevise the draft in place, and never treat an external detector score as a pass threshold.
Three Lines of DefenseOne, subtraction pitfalls (diagnose whether the writing side misuses subtraction moves)
The following practices are explicitly judged by the author as "only fooling detectors, prone to expiring, collapsing under Goodhart's law"; if any appear on the writing side, they must be sent back:
- Treating "deleting connectives/em dashes" as an optimization goal
- Treating "raising sentence-length variance" as a human-flavor recipe
- Treating "replacing high-frequency AI words" as a core technique
- Treating an external detector score as a pass threshold
- Any highlight/annotation traces left by a previous round of humanizer tools
Two, addition moves (three diagnostic moves)
1) Concreteness
Scan for abstract nouns / adjective stacking / nominalization (operate → operation). Every abstract claim must have at least one concrete item that can be supplied: a concrete noun (person name/place name/model number) / an exact number (with a data-caliber source) / a real detail (date/time/scene).
2) Stance density
Scan for replaceable attitude markers ("I think this is important," "we should," "obviously"). Each chapter should have at least one explicit judgment (for/against/qualifying condition), one hedge (perhaps/but/except/not yet), and one self-mention or attitude marker (Hyland engagement marker).
3) Presence (non-substitutability) — the strongest criterion
Scan for first-person statements that would still hold if the author were replaced by anyone else. Each chapter should have at least onenon-substitutable anchor, shaped like "I was screwed over by this bug in Hangzhou for three hours yesterday." Criterion: if the author is replaced by any reader in the same field, this sentence should not hold.
If any presence dimension fails → directly reject. This is the dimension AI is least capable of writing, and the human-flavor mirror must watch it closely.
Three, three red lines (the boundaries of the diagnostic tool)
See references/red-lines.md。
status = passif and only if all dims pass and subtraction pitfalls are not misused- Any
dim = presencefailing to meet the standard → reject status = reject, the main skill follows the verdict'sowner_skillbackflow to the corresponding writer side
- Read
chapter_laid_out+research_pack+ cross-chapter context - Run the "Subtraction Pitfall Avoidance" self-check (dim: over_slop_reduction)
- Run the "Three Additive Moves" diagnosis (concreteness / stance / presence)
- Run the "Redline Boundaries" self-check (do not fabricate numbers for the author / do not automatically rewrite / do not treat detector scores as a threshold)
- Summarize the verdict and write it back to
slop_log, and never directly revise the draft
- ❌ Automatically revising the draft → violates Redline 2 (mirror, not target)
- ❌ Treating the AI detector score as a pass threshold → violates Redline 1 (no-optimization principle)
- ❌ Fabricating for the author an anchor of the "yesterday I..." type → violates Redline 3 (honesty boundary)
- ❌ Reducing "concreteness" to "add a few numbers" → loses the original meaning of concreteness (precise numbers ≠ vague numbers)
- ❌ Giving a fix_hint of the form "it should be changed to: 'a specific sentence'" → slides into automatic rewriting, violating the mirror boundary