executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
linkedin-humanizerRemove AI tells from LinkedIn posts/comments: 2026 vocabulary density, reveal bridges, staccato fragments, stacked triads, performed sincerity. Tiered rewriter plus `--mode audit` LinkedIn post auditor and `--mode profile` voice builder. Not for drafting from scratch (use linkedin-post-writer) or beating AI detectors. Keywords: humanize, de-AI, post audit, …
Independent GitHub snapshot · Automated classification · Original documentation governs
--mode audit LinkedIn post auditor and --mode profile voice builder. Not for drafting from scratch (use linkedin-post-writer) or beating AI detectors. Keywords: humanize, de-AI, post audit, post auditor, audit before posting."Rewrites any text to remove the AI tells that human readers notice and that LinkedIn's "AI slop" filter reacts to. Based on Wikipedia's "Signs of AI writing" taxonomy, the 2025-2026 stylometry literature, and our own length-controlled corpus. V3 (2026-09): recalibrated on 2026 evidence. Vocabulary is scored by density, em dashes are capped instead of banned, forced rhythm is now a tell instead of a fix, and there is an over-correction guard.
What this skill does not do: it does not make text "pass" GPTZero, Pangram, Turnitin or Originality. Those are trained classifiers keyed on the instruction-tuning style signature; prompt-style "sound like a real person" rewrites are caught 92-95% of the time (VUB IJEI 2026, Russell 2025), and light mechanical rewriting raises detectability (arXiv 2603.17522). No post-hoc edit reliably beats a Pangram-class detector, and detector scores on LinkedIn-length text (100-300 words) are noise. The real value is elsewhere: expert human readers cite vocabulary (53%) and sentence structure (36%) as what gives AI text away, and LinkedIn's July 2026 slop-report button costs a flagged post roughly 40% of its views. This skill removes what those readers and that filter react to.
Evidence tier in brackets: [strong] = replicated across 2+ independent 2025-2026 studies or our own length-controlled corpus; [vendor] = single platform or vendor dataset; [weak] = one study or expert-panel report.
See sub-skills/rules-explainer.md for per-rule justification, defenses, and citations, and references/tier-rationale.md §V3 for the evidence.
sub-skills/post-audit.md)Any text (post, comment, reply, DM). Optional: target voice samples (past human posts by the user).
# Default: forensic + strict (recommended for LinkedIn)
linkedin-humanizer <text>
# Forensic only: minimum-touch, just kill the leakage
linkedin-humanizer --mode forensic <text>
# Strict: forensic + density-scored 2026 vocabulary, reveal bridges, staccato (the LinkedIn-default config)
linkedin-humanizer --mode strict <text>
# Aesthetic: strict + style rules (single natural triads, passive voice, defendable vocab)
# Use when target audience is Wikipedia editors / academic readers / AI-tell hunters
linkedin-humanizer --mode aesthetic <text>
# All: every rule. Maximum scrub. Will flatten literary writing and trip the Pass 4 guard.
linkedin-humanizer --mode all <text>
# Audit: detection-only pass-fail review. No rewrite.
# Runs the 2026 algorithm checklist: length, hook, CTA, structure, AI tells.
# Returns Blockers + Warnings + suggested fixes. See sub-skills/post-audit.md.
linkedin-humanizer --mode audit <text>
# Profile: build/update the user's Voice & Brand Profile so every writing
# skill drafts in their real voice. Learns from 3-6 pasted posts (portable, no
# token) or, if APIFY_TOKEN is set, from pulled activity. Writes
# ../../references/voice-profile.md. See sub-skills/voice-profile.md.
linkedin-humanizer --mode profile
The scrub pass applies tiered catalogs to delete or replace AI tells. The unit of judgement is the paragraph, not the word: count markers per paragraph, rewrite the paragraph at 3+, leave a single marker alone unless it is a reveal bridge or forensic leakage. Full regex source, replacement maps, and detection functions live in references/scrub-rules.md; load that file when actually executing the scrub.
FORENSIC tier (always on): real model leakage no human produces. Covers AI tool markers (oaicite, contentReference, turn0search0, attached_file, grok_card), knowledge-cutoff disclaimers ("As of my last update..."), phrasal templates ([Your Name], 2025-XX-XX), em dash density above 1 per 100 words, and outline-formula closers ("Despite its X... Looking ahead...").
STRICT tier (default on): what readers and the slop filter react to. Covers punctuation normalization (curly to straight quotes, -- to a comma or rewrite; excess em dashes to comma, colon or parentheses, never a period), the durable 2026 vocabulary set scored by density (significant, crucial, notably, particularly, comprehensive, insights, robust, leverage, foster, landscape, nuanced, multifaceted, holistic, streamline, elevate, empower), grammatical markers (nominalisations, sentence-opening "-ing" clauses), the 2026 LinkedIn layer (quietly, matters, compound, signal, "the work", "built different", load-bearing, "doing the heavy lifting", "let that sink in", "that's the real story"), reveal bridges measured reach-negative ("The result?" -4.8%, "It's not X, it's Y" -4.9%, "Stop X, start Y" -6.7%, "Here's what/how" -4.3%), all 6 forms of negative parallelism, stacked or perfectly parallel triads and any 3rd triad in a post, and cliché closer tells ("What do you think?", "Tag someone who needs this").
AESTHETIC tier (opt-in only, will flatten literary writing): patterns AI uses but humans use legitimately. Covers the one remaining natural triad, decaying 2023-24 vocabulary that is now mostly harmless (delve, tapestry, realm, intricate, journey, paradigm), defendable normal English (cultivate, vibrant, garner, showcase, underscore), and passive voice (academic-writing defense ignored).
Detectors do not score burstiness, and on LinkedIn sentence-length variance is not an engagement lever in either direction. What readers do notice is the mechanical-uniformity tell (every sentence the same length, machine-flat; structure is 36% of expert judgments) and, worse, the staged variance that second-generation humanizers add. So Pass 2 has two jobs: fix rhythm only where it reads machine-flat, and remove manufactured variance everywhere. It never adds variance as a tactic.
Target: Flesch reading ease >55. No sentence-length variance target. The check is "does any paragraph read machine-flat, and did I add a staccato pattern," not a number.
Require at least:
Forbidden as openers or pivots (sincerity announcements, a named 2026 tell): "let me be honest", "I'll be real", "honestly?", "to be direct", "the honest version is", "honest caveat", "real talk", "I'll say the quiet part", "can I be vulnerable for a second", "unpopular opinion:" as a preface to a popular one. Also forbidden as insertions: hedges the author did not write ("perhaps", "I might be wrong but", "it seems"). Performed hesitancy is 2x more common in LLM text than in expert human text; adding it makes the draft read more AI, not less.
Varied sentence length is Pass 2's job. Do not add rhythm here.
If the input lacks these, ask the user for a specific number, name, or moment to plug in. Don't fabricate.
Humanizer output has its own fingerprint. Before returning, re-read the result once and answer three questions:
(a) Did Pass 2 create staccato stacks, "The result?" reveal bridges, one-word paragraphs, or a long/short/long/short seesaw? If yes, merge fragments back into full sentences. (b) Did Pass 3 add a framed confession, a sincerity announcement, or a hedge the author never wrote? If yes, strip the frame and keep only the flat fact, or remove the insertion. (c) Did scrubbing flatten the author's voice: uniform tone, no reaction, no concrete detail left, every em dash gone, every triad gone, every long sentence chopped? If yes, restore what the author had. Zero em dashes and zero triads is a tell in its own right.
If any answer is yes, dial back rather than scrub harder. Edits must be proportional to real problems: a clean draft gets two or three touches, not a fixed quota. When in doubt whether a pattern is the author or the model, leave it.
Global voice rules: see root SKILL.md §Voice rules. Additional skill-specific rules (V3):
.. soft pauses, one em dash, one natural triad).sub-skills/detector-tester.md exists to demonstrate the spread, not to certify a draft.The forensic tier exists because oaicite tokens, knowledge-cutoff disclaimers, and Mad-Libs blanks are pure model leakage that no human writer ever produces. Catching them is undefendable. The strict tier exists because the durable 2026 markers (common words at 3+ per paragraph, reveal bridges, staccato stacks, stacked triads) are exactly what expert readers cite when they spot AI text and what LinkedIn's slop filter reacts to, so stripping them improves the post even if the writer is human. The aesthetic tier exists because a single natural triad, passive voice, and the decaying 2023-24 vocabulary appear in AI output but also appear in Lincoln, every epidemiologist, and every book printed since 1500. Banning them blindly catches Hemingway as AI. Run aesthetic mode only when audience-fit demands it.
For per-rule justification and famous human defenders, see sub-skills/rules-explainer.md (and the rule index at references/rules-explainer.md). For the V3 evidence and confidence labels, see references/tier-rationale.md §V3.
For the unreliability of AI detectors generally (61.3% false positive on TOEFL essays per Stanford 2023; 92-95% catch rate on prompt-style humanizers per VUB 2026), see sub-skills/detector-tester.md. Run it via python3 scripts/test_detectors.py --text "..." --demo (offline) or with paid keys configured in scripts/detectors.env.example. It documents disagreement; it does not certify drafts.
For emoji-pattern detection (lightbulb, rocket, sparkles signature), see sub-skills/emoji-detector.md and the per-emoji frequency table at references/emoji-patterns.md.
See references/examples.md for worked examples.
SKILL.md — this file (rewrite scrubber + audit-mode entry)references/scrub-rules.md — full regex patterns by tier, density scoring, rhythm rulesreferences/voice-fingerprint.md — how to preserve user voice while scrubbingreferences/tier-rationale.md — long-form per-rule justification plus the V3 evidence sectionreferences/rules-explainer.md — machine-readable index of every rule with citationsreferences/emoji-patterns.md — AI-correlated emoji frequency tablereferences/detector-list.md — supported AI detectors with API endpoints and accuracy notesreferences/audit-ai-tells.md — blacklist + regex used in audit modereferences/audit-checklist.md — 20-point pre-publish checklist with thresholdsreferences/audit-examples.md — worked audit examplessub-skills/post-audit.md — pre-publish audit workflow (detection-only, no rewrite)sub-skills/rules-explainer.md — when to defend a flagged rule (em dash, rule of three, passive voice)sub-skills/emoji-detector.md — scan / score / suggest workflow for emoji densitysub-skills/detector-tester.md — run text through 5 AI detectors in parallel and report disagreementsub-skills/voice-profile.md — build/update the user's Voice & Brand Profile (--mode profile); the filled ../../references/voice-profile.md is then read by every writing skill so drafts match the user's real voicescripts/test_detectors.py — runs the parallel detector test (supports --demo for offline mode)requests, python-dotenv) come from the bundle's root requirements.txt / requirements-lock.txt, not a manifest of their ownscripts/test_detectors.py is the only code in this bundle that sends your text to third parties: it uploads the draft to each hosted detector you hold a key for. See the disclosure at the top of sub-skills/detector-tester.md before running it.scripts/detectors.env.example — template for the 5 detector API keyslinkedin-post-writer — generates drafts that already pass the humanizer