ia-writing
by @iliaal
Prose editing, rewriting, and humanizing text for natural tone. Use when asked to write, rewrite, edit, humanize, proofread, fix tone, or remove AI language....
clawhub install compound-eng-writingπ About This Skill
name: ia-writing class: discipline description: >- Prose editing, rewriting, and humanizing text for natural tone. Use when asked to write, rewrite, edit, humanize, proofread, fix tone, or remove AI language. For copy, docs, blog posts, emails, or PRs.
Human Writing
Core Principles
AI Patterns -- Kill on Sight
Vocabulary: delve, crucial, pivotal, foster, leverage, tapestry, testament, underscore, vibrant, landscape (abstract), shape (abstract, as in "previous shape" / "the shape of the problem"), interplay, multifaceted, enhance, enduring, garner, showcase, Additionally, seamless, robust, cutting-edge, groundbreaking, nestled, renowned
Structural tells:
Formatting tells:
Banned phrases -- delete and rewrite on sight. See references/phrases.md for the full list.
Core offenders:
Communication artifacts (remove entirely):
False Agency
AI avoids naming actors by giving inanimate things human verbs. Find the person; put them at the front of the sentence.
| AI slop | Fix | |---------|-----| | "the complaint becomes a fix" | Someone fixed it | | "the data tells us" | Name who read it and what they concluded | | "the decision emerges" | Someone decided | | "the culture shifts" | People changed their behavior | | "the market rewards" | Buyers paid for it | | "the conversation moves toward" | Someone steered it | | "a bet lives or dies" | Someone kills or ships it |
If no specific person fits, use "you" to put the reader in the seat. Person rules: use "you" when addressing the reader directly, "we" for organizational actions, "I" for personal voice. Avoid third-person passive ("it was decided") -- name the actor.
Quality Gate
Before delivering prose, run two checks:
Quick audit (binary, kill anything that triggers):
Five-dimension scoring (rate 1-10 each):
| Dimension | Question | |-----------|----------| | Directness | Statements or announcements? | | Rhythm | Varied or metronomic? | | Trust | Respects reader intelligence? | | Authenticity | Sounds human? | | Density | Anything cuttable? |
Below 35/50: revise before delivering.
Long-form audit workflow -- for documents, essays, and research content, run a two-phase pass to avoid fix-as-you-go bias (fixing one tell while missing three others). This section reuses the vocabulary and structural tells from "AI Patterns -- Kill on Sight" above but adds named tags for tracking and a structured fix table. Short-form edits can use the Kill-on-Sight list directly; long-form audits should use the tag-based workflow below.
*Phase 1 -- Audit*: Read the full text without changing anything. Quote the shortest offending snippet (β€12 words) and append every applicable tag. Stack tags if multiple tells land in one sentence. One numbered line per offense. End with β END AUDIT: [n] issues found β. If zero, write β AUDIT COMPLETE: 0 issues β and skip Phase 2.
Tag vocabulary (extend the earlier prose rules with these named IDs):
| Tag | What it catches |
|-----|-----------------|
| [FALSE-AGENCY] | Inanimate subject with a human verb ("the data tells us") |
| [BINARY-CONTRAST] | "Not X, it's Y" / "It's not about X. It's about Y." constructions |
| [STACCATO] | Punchy fragment sequences simulating manufactured rhythm ("This matters. A lot. Here's why.") |
| [ELEGANT-VAR] | Synonym cycling: four names for the same entity across four sentences |
| [NOT-ONLY-BUT] | False-pivot contrasts: "Not only X, but also Y" and variants |
| [RULE-OF-3] | Forced triads ("streamline, optimize, and enhance") |
| [INFLATED] / [PROMO] | Puffery and promotional gloss without a verifiable claim |
| [SUPERFICIAL-ING] | Trailing -ing phrases that add no information ("ensuring reliability") |
| [AI-LEX] | Vocabulary tells (delve, crucial, pivotal, leverage, tapestry, robust...) |
| [VAGUE-ATTR] / [WEASEL] | "Experts argue", "studies show" without specific source |
| [META-COMMENTARY] | Structural self-reference ("In this section, we'll...", "Let me walk you through...") |
| [EM-DASH] | Any em or en dash -- restructure, don't preserve |
| [INLINE-BOLD] / [INLINE-LIST] / [TITLE-CASE] | Mechanical formatting tells |
| [VAGUE-DECLARATIVE] | "The implications are significant" without naming the implication |
| [PASSIVE] / [ADVERB] / [BANNED-PHRASE] | Standard corrections |
| [CURLY-QUOTES] | Curly single or double quotes (β β β β) in running prose. AI autocorrect artifact β replace with straight ASCII quotes. |
| [EMOJI] | Emoji in running text or headings. Functional UI emoji in product copy is fine; editorial/promotional emoji is an AI tell. |
| [FALSE-RANGE] | "From X to Y" where X and Y aren't on a coherent scale ("from code review to cultural shift"). Restructure to state both items without implying a continuum. |
Severity suffixes when tagging: +H for high severity (strong tell or compound patterns), +S for structural (affects document structure, not just wording).
*Phase 2 -- Rewrite*: Correct tagged items in a single pass using the fix table below. Preserve everything not flagged; no scope creep. Verify no new tells were introduced during rewriting.
| Tags | Fix action |
|------|------------|
| [INFLATED] [PROMO] [VAGUE-DECLARATIVE] | Delete puffery or replace with a specific factual claim. If no fact exists, cut entirely. |
| [SUPERFICIAL-ING] | Remove the -ing phrase or convert to a separate sentence with substance. |
| [AI-LEX] | Replace with a plainer synonym or restructure to eliminate the word. |
| [NOT-ONLY-BUT] [RULE-OF-3] [BINARY-CONTRAST] | Break the pattern. State Y directly. |
| [STACCATO] | Reconstruct into a single flowing sentence that matches the source material's natural rhythm. |
| [ELEGANT-VAR] | Pick one term and use it consistently (or use pronouns). |
| [VAGUE-ATTR] [WEASEL] | Name the source, add a quantifier, or delete the claim. |
| [EM-DASH] | Remove entirely. Restructure the sentence: split, comma, colon, or rewrite. Never preserve the dash. |
| [FALSE-AGENCY] | Name the human actor; put them at the front of the sentence. |
| [META-COMMENTARY] | Delete. Let the text move without announcing itself. |
| [INLINE-BOLD] [INLINE-LIST] [TITLE-CASE] | Strip excess formatting; sentence case for headings. |
For documents with references or citations, also tag: [OAICITE] (malformed AI citation artifacts), [LINK-ROT] (dead or placeholder URLs), [ISBN-DOI-FAIL] (invalid identifiers), [REF-BUG] (misformatted references, wrong numbering, dangling footnotes). See references/audit-workflow.md for the full procedure.
Output format:
## AUDIT
1. "quoted snippet" [TAG] [TAG +H]
2. "quoted snippet" [TAG]
...
β END AUDIT: [n] issues found βCORRECTED TEXT
[full corrected text]CHANGELOG
Line/section: brief description of change
Line/section: brief description of change
Voice
Composition
Self-Check
Short-form (commits, PR descriptions, comments): checks 1-4 only. Long-form (blog posts, docs, essays): run the full Quality Gate above, then checks 1-5.
1. Read every sentence aloud. If it sounds like a press release, Wikipedia, or chatbot -- rewrite. 2. Ctrl-F the banned-phrases list. Zero matches required. 3. Check for false agency: any inanimate thing performing a human verb? Name the person. 4. Check for em dash overuse, mechanical bold, and synonym cycling. 5. Cut quotables: if a sentence sounds like a pull-quote or aphorism, rewrite it.
Changelog Voice
PR / MR Descriptions
For pull-request and merge-request descriptions, match length to change complexity (1 sentence for trivial, full narrative for architecturally significant). Lead with Before / After / Scope rationale; describe net end state, not iteration journey; pick Mermaid for topology, tables for grids. See references/pr-descriptions.md for the sizing matrix, narrative frame, GitHub-specific hazards (#NN auto-link trap), and the self-check list.
See references/examples.md for before/after transformations.