humanize
v0.3.1Humanize — make AI-written technical prose read like a competent human professional wrote it, at the level where readers actually get lost: discourse, not vocabulary. Three skills. `/humanize` rewrites a draft (zh/en) without changing a single fact: it targets the mechanisms behind 'every word is clear but I can't follow' — given-new inversion, broken topic strings, stress-position leakage (participle / 以实现… tails), lists replacing argument, cross-section restatement, stance flattening, generic openings, summary closers — plus the solved lexical/syntax/format layer (Wikipedia 'Signs of AI writing' + 2026 density-era tics: mannered prose, invented jargon, 'not X, it's Y') and Chinese translationese (yage.ai four classes + 余光中 欧化 catalog, CCL-2023 corpus-backed). Three non-skippable gates: humanlint.py (23 surface metrics, zh/en, 0-100 AI-flavor index, calibrated on four fixtures: AI 60/63 vs human 2/0), factdiff.py (numbers / dates / identifiers / URLs / paths zero add-or-drop, plus certainty-drift warning per Belem 2026), and a context-isolated cold-reader agent that records per paragraph where a reader who never saw the brief loses the thread (expected / got / lost_at / told_not_shown) — never self-graded in the drafting context (self-refine amplifies self-bias); verify_coldread.py recomputes the reader's verdict from its five declared rules and enforces the 2-round cap mechanically (v0.2.0). Max 2 revision rounds, then deliver with the residual named. Genre decides whether structure may move (v0.3.0): proposal / design / adr / memo may be reorganised; report / readme / reference run with --keep-structure, where structdiff.py rejects any change to the heading-level sequence, list blocks and item counts, table shapes or code blocks — only the sentences inside prose paragraphs change; humanlint gained a matching `report` threshold tier. `/techdoc` writes a proposal / design doc / ADR / postmortem / memo from a brief in the shape senior engineers use (Google design docs, Oxide RFD, Amazon 6-pager, Nygard ADR, Shape Up, HashiCorp/Rust RFC, 阿里 安全生产): triggering incident with a number first, decision in one sentence, obvious alternatives killed with specific reasons, all consequences, rollout/rollback, open questions last — enforced as product order by verify_techdoc.py; facts only from brief/materials/domain knowledge, else [需核实]. `/voice-profile` distills the user's own 3–5 samples into an executable .humanize/voice.md (rhythm stats from humanlint, quoted sentence habits, personal 忌口表 with replacements, positive examples for completion-style few-shot — the technique with 20x measured style-match gain), gated by verify_voice.py. Ships rules/human-voice.md as an always-on contract pasteable into CLAUDE.md. Explicitly NOT for beating AI detectors (they train on humanizer output), NOT for injecting slang/emoji/typos as 'texture' (a new tell in technical register). All static_only tier: scripts smoke-tested on fixtures; behavioral delta on held-out drafts unverified.
By XRenSiuLicense: MIT2 GitHub starsUpdated 3 days ago
Directory evidence
- Runtimes
- Claude Code
- Parsed components
- 3 skill or MCP entries
- Source updated
- Sep 21, 2026
- Manifest status
- Canonical path parsed
The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology →
Install humanize for Claude Code
claude plugin marketplace add IchenDEV/agent-plugin-mkt
claude plugin marketplace update agent-plugin-marketplace
claude plugin install humanize-2@agent-plugin-marketplacePaste and run these commands in a terminal with Claude Code. They add and refresh the PluginsMP catalog, then install this plugin.
The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.
Get the source manually
git clone https://github.com/XRenSiu/claude-code-forgeClone the source repository, then follow its setup instructions to add the plugin to a compatible client. The plugin root is plugins/humanize/.
Plugin files
├── .claude-plugin/plugin.json├── skills/humanize/SKILL.md├── skills/techdoc/SKILL.md└── skills/voice-profile/SKILL.md
Included Skills3
Use when a draft (yours or the model's) reads like AI — every word is clear but the reader loses the thread, hedges everywhere, bullets instead of argument, 首先/其次/最后, 值得注意的是, In today's landscape — and you need it rewritten so a competent human professional could have written it, without changing a single fact. 去AI味 / 人味 / 像人写的 / 改得自然点 / 太AI了 / 翻译腔 / 太别扭. Works on 技术方案、设计文档、ADR、复盘、README 叙述段、邮件、评审意见, Chinese or English. NOT for code, code comments, commit messages, API reference tables, or config docs (those should be tables); NOT for beating AI detectors; NOT for adding slang, jokes, typos, or emoji as 'texture'.
Use when you need a technical proposal, design doc, ADR, postmortem, or decision memo written from a brief so that it reads the way a senior engineer writes one — opens with the triggering incident and a number, states the decision in one sentence, kills the obvious alternatives with specific reasons, lists consequences including the bad ones, spells out rollout/rollback, ends on open questions — instead of the AI default (background paragraph, bulleted benefits, balanced options, 'comprehensive testing', 综上所述). 写技术方案 / 写设计文档 / 写 ADR / 写复盘 / 出个方案 / design doc / RFC / proposal. Chinese or English. NOT for API reference, README installation sections, or user manuals (those are tables and steps); NOT for polishing an existing draft (use /humanize).
Use when the user wants AI drafts to sound like *them* (or their team) rather than like a generic professional, and has 3–5 pieces of their own writing to learn from — 用我的风格 / 像我写的 / 学我的语气 / 建风格档案 / voice profile. Produces .humanize/voice.md (register, rhythm stats, sentence habits, 忌口表 with replacements, positive examples) that /humanize and /techdoc load automatically. NOT for imitating a named third party (author, colleague, public figure) — that needs consent and is out of scope; NOT a substitute for samples: with zero samples it refuses to invent a voice and says so.
Plugin manifests1
{
"name": "humanize",
"description": "Humanize — make AI-written technical prose read like a competent human professional wrote it, at the level where readers actually get lost: discourse, not vocabulary. Three skills. `/humanize` rewrites a draft (zh/en) without changing a single fact: it targets the mechanisms behind 'every word is clear but I can't follow' — given-new inversion, broken topic strings, stress-position leakage (participle / 以实现… tails), lists replacing argument, cross-section restatement, stance flattening, generic openings, summary closers — plus the solved lexical/syntax/format layer (Wikipedia 'Signs of AI writing' + 2026 density-era tics: mannered prose, invented jargon, 'not X, it's Y') and Chinese translationese (yage.ai four classes + 余光中 欧化 catalog, CCL-2023 corpus-backed). Three non-skippable gates: humanlint.py (23 surface metrics, zh/en, 0-100 AI-flavor index, calibrated on four fixtures: AI 60/63 vs human 2/0), factdiff.py (numbers / dates / identifiers / URLs / paths zero add-or-drop, plus certainty-drift warning per Belem 2026), and a context-isolated cold-reader agent that records per paragraph where a reader who never saw the brief loses the thread (expected / got / lost_at / told_not_shown) — never self-graded in the drafting context (self-refine amplifies self-bias); verify_coldread.py recomputes the reader's verdict from its five declared rules and enforces the 2-round cap mechanically (v0.2.0). Max 2 revision rounds, then deliver with the residual named. Genre decides whether structure may move (v0.3.0): proposal / design / adr / memo may be reorganised; report / readme / reference run with --keep-structure, where structdiff.py rejects any change to the heading-level sequence, list blocks and item counts, table shapes or code blocks — only the sentences inside prose paragraphs change; humanlint gained a matching `report` threshold tier. `/techdoc` writes a proposal / design doc / ADR / postmortem / memo from a brief in the shape senior engineers use (Google design docs, Oxide RFD, Amazon 6-pager, Nygard ADR, Shape Up, HashiCorp/Rust RFC, 阿里 安全生产): triggering incident with a number first, decision in one sentence, obvious alternatives killed with specific reasons, all consequences, rollout/rollback, open questions last — enforced as product order by verify_techdoc.py; facts only from brief/materials/domain knowledge, else [需核实]. `/voice-profile` distills the user's own 3–5 samples into an executable .humanize/voice.md (rhythm stats from humanlint, quoted sentence habits, personal 忌口表 with replacements, positive examples for completion-style few-shot — the technique with 20x measured style-match gain), gated by verify_voice.py. Ships rules/human-voice.md as an always-on contract pasteable into CLAUDE.md. Explicitly NOT for beating AI detectors (they train on humanizer output), NOT for injecting slang/emoji/typos as 'texture' (a new tell in technical register). All static_only tier: scripts smoke-tested on fixtures; behavioral delta on held-out drafts unverified.",
"version": "0.3.1",
"author": {
"name": "XRenSiu",
"email": "[email protected]"
},
"homepage": "https://github.com/XRenSiu/claude-code-forge/tree/main/plugins/humanize",
"repository": "https://github.com/XRenSiu/claude-code-forge",
"license": "MIT",
"keywords": [
"humanize",
"de-ai",
"去AI味",
"ai-flavor",
"anti-slop",
"human-voice",
"technical-writing",
"design-doc",
"techdoc",
"rfc",
"adr",
"postmortem",
"discourse",
"given-new",
"cohesion",
"cold-reader",
"fact-preservation",
"voice-profile",
"translationese",
"chinese",
"static-only"
]
}For maintainers
If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.
[humanize on Agent Plugins Marketplace](https://pluginsmp.com/plugins/humanize-2)