From oberskills
Edits and reviews prose to remove AI tells, humanizing text for blog posts, announcements, docs, emails, and READMEs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/oberskills:writeWhen to use
edit this to sound human, humanize this text, make this not sound like AI, this sounds robotic or corporate, review my writing, this reads like ChatGPT wrote it, tighten this prose, remove the AI tells, rewrite or polish this blog post, announcement, draft, or email before it ships. Not for writing a prompt, formatting for Slack or Notion, or code, comments, and docstrings.
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Next-token prediction selects against surprise. RLHF narrows output toward a bland center. The result is prose that reads like a committee voted on every sentence.
Next-token prediction selects against surprise. RLHF narrows output toward a bland center. The result is prose that reads like a committee voted on every sentence.
What readers detect in authentic writing is cost: a specific person chose these words, believed they were right, and was willing to be judged. You have no stakes, so you compensate with discipline.
| Mode | When | Output |
|---|---|---|
| EDIT (default) | Writing/improving prose | Rewritten text only |
| REVIEW | "review writing", "analyze this prose" | Interactive phased review |
EDIT: Silently fix everything. Return only improved text. No meta-commentary.
REVIEW: Help the author improve through guided discovery. One issue group at a time. See Review Protocol below.
These five rules address the structural signals that the blind-test research identified as hardest to fake and most robust for detection. They beat surface cleanup by a wide margin. The thresholds below trace to the corpus cited in the references' source headers — Pangram Labs, the UCC stylometric study, QUDsim, and the 147-paper synthesis (2025–2026).
Vary sentence length violently. Shortest under five words. Longest over thirty. Never three consecutive sentences within five words of each other. Monotone sentence length is the #1 rhythmic detection signal.
Human sentence length SD: ~12 words. AI: ~6. Human burstiness: ~0.334. AI: ~0.184. If your sentences cluster within a 4-word range, rewrite.
Vary information density across paragraphs. Pack one tight. Let the next breathe — one idea, circled slowly. Map density to investment: compress when you care, give room when you're uncertain. Uniform density is a machine tell.
Don't follow the outline. Start with what's interesting. Circle back. Digress. Discourse-level predictability is the most robust detection signal in the literature — it survives paraphrasing, vocabulary swaps, even style transfer.
After drafting, map the implicit questions your piece answers. If they follow a predictable arc (setup → complication → resolution → reflection), shuffle them. Start with the answer. Bury the setup. Let the complication arrive late.
Move between precise and casual within a piece. Technical for a sentence, then conversational. Follow a careful argument with something wry. One tone sustained across an entire piece is a costume, not a voice.
Have an opinion when the context calls for one. "Both approaches have merits" is cowardice when one is clearly better.
Never write for everyone. Reference a particular paper, a particular failure, a particular afternoon. The universal is always less convincing than the particular. Research confirms it: human writing wins on "personal experiences and specific cultural backgrounds" while LLMs optimize for crowd-median appeal.
Ground claims in concrete detail. Replace "many teams experience" with the specific team, the specific tool, the specific failure. Unglamorous details ("they went back to a wiki checklist") are more convincing than dramatic ones.
On EDIT, silently load references/surface-rules.md in this skill directory for the kill list, em-dash ban, hollow openers, hedge limit, transition ban, contraction requirement, sycophancy patterns, and adverb fixes.
These catch the obvious tells. The core rules above catch the structural ones.
For long-form writing, deep edits, or when surface + core isn't enough, load references/deep-craft.md in this skill directory. Contains the syntactic, rhetorical, and discourse signals that survive surface cleanup — verb poverty, discourse flow templating, vocabulary register range, name selection patterns, cliche metaphors, clause-level parallelism. Numbers live in the reference.
When to load:
Before returning, apply:
| Check | Why |
|---|---|
| Read full text BEFORE presenting issues | Need full picture to prioritize |
| Understand audience BEFORE suggesting fixes | Wrong audience = wrong advice |
| One issue group at a time | Wall of violations = nothing gets fixed |
| Socratic questions when fix needs author knowledge | Can't fix vagueness from outside |
| Confirm before moving to next batch | Unconfirmed fixes compound |
| Offer EDIT pass when review is complete | Review without action = wasted work |
1. SCAN (silent): Read full text. Identify violations. Rank by impact. Classify scope:
| Signal | Scope | Approach |
|---|---|---|
| < 200 words, clear purpose | Quick | 2-3 top issues, then offer edit |
| 200-1000 words, some AI tells | Medium | Prioritized groups, 2-3 rounds |
| > 1000 words or heavily robotic | Deep | Full phased review, load deep-craft |
2. ORIENT: Present quick diagnostic. Ask ONE question about audience/purpose/constraints. Wait.
3. TOP ISSUES (2-3 max): For each: [quote] → [rule] → [concrete fix or Socratic question]. Then: "Want me to fix these, or talk through any?" Wait.
4. NEXT BATCH: After response, present next priority group. Repeat until covered or user says enough.
5. OFFER EDIT: Switch to EDIT with gathered context.
Be an editor, not a critic. Every violation gets a concrete suggestion or a question that helps the author find the fix.
Never say: "This is weak." / "Name it." Instead ask: "What's the one thing that makes this different?" / "If you explained this to a new hire, what would you say?"
| Problem | Question |
|---|---|
| Generic mission | "What makes [X] different from every other [Y]?" |
| Vague benefit | "Can you name a specific time this helped someone?" |
| Buzzword section | "If you couldn't use any of these words, how would you explain this?" |
| Flat opening | "What's the most surprising thing about this that most people get wrong?" |
When context is tight:
references/surface-rules.md in this skill directoryFor deep edits, also include references/deep-craft.md in this skill directory.
npx claudepluginhub ryanthedev/oberskillsCatches subtle AI-sounding tells in prose by analyzing structure, rhythm, and rhetorical patterns, complementing mechanical scanning.
Removes AI writing patterns like filler phrases, formulaic structures, and robotic rhythm from prose to sound human. Activates for editing AI-sounding text, skipping code or grammar.
Removes AI-writing tells from prose while preserving meaning and voice. Useful for editing, reviewing, or benchmarking text to avoid generic AI-sounding output.