Back to home@whh110112

human-writing-skills

Advanced multilingual AI humanizer and writing toolkit for natural prose, voice preservation, long-form continuity, and focused audits.

Stars
2
Language
Python
Created
Jun 15, 2026
Updated
Sep 1, 2026
GitHub repo

Introduction

Advanced Human Writing & AI Humanizer

Reusable multilingual writing SKILLS for natural prose, genre-aware style, and long-form continuity.

Advanced AI humanizer and de-AI writing toolkit for natural rewriting, AI text cleanup, fiction editing, novel continuation, chunked long-form audit, writing style unification, and character consistency review.

License: MIT Python Zero Dependencies

中文说明 | English | Español | Português (Brasil) | Français

Advanced Human Writing & AI Humanizer is an open-source, modular skill pack and lightweight prompt compiler for natural multilingual AI-assisted writing. The package, repository, and ClawHub slug remain human-writing-skills for compatibility.

This is not an empty prompt collection. The repository contains two deliberately different capability layers:

  • Executable Python tools: humanwriting/ provides the installable human-writing-skills CLI for deterministic lint findings with evidence spans, text statistics, conservative fix previews, protected-content verification, prompt compilation, and staged audit-file generation.
  • Model-executed editorial modules: skills/*.md contains genre and review instructions selected on demand by that compiler. These modules guide the writing model; they do not falsely present subjective literary judgment as a deterministic algorithm.

The test suite exercises both the executable layer and module-selection gates.

Agent Orchestration, MCP, And DeepSeek Harness Plugin

For book-length novels, report series, or research coverage that cannot be trusted to one chat window, install the dependency-free human-writing-mcp server. It makes the long-form task graph executable across Codex, Claude Code, OpenCode, DeepSeek Harness, Manus, and Hermes: agents claim bounded tasks, submit coverage receipts, and cannot unlock reconciliation until every required review is complete. The service stays inside a chosen project root and does not call a model or upload drafts.

human-writing-mcp --root C:\writing-project

The repository also ships a native DeepSeek Harness npm/Cordis bundle under plugins/deepseek-harness. It mounts the official DSH MCP client and starts the same verified local coordination service. See the agent orchestration guide and DeepSeek Harness plugin guide.

It helps a writing agent move away from generic, template-shaped output and toward prose that has intention, texture, continuity, and genre discipline. The project is especially useful for long-form generation, where characters, settings, arguments, facts, and unresolved threads often drift after several passages.

The goal is not deception. The goal is better writing: clearer instructions, stronger revision habits, and reusable style constraints that make AI-assisted drafts feel edited by a human.

Long-Form Audit And Style Unification

The executable chunk-audit workflow splits a year-long novel, article series, or large report at natural boundaries. Each body span is audited once, with a small read-only lead-in and the same user-confirmed style baseline plus outline or project ledger. It writes independent chunk prompts, deterministic cross-chunk style diagnostics, and a reconciliation prompt for model- or prompt-version drift in narration, character dialogue, terminology, and section function.

For fiction, --outline or --context makes supported goals, knowledge, relationships, limits, abilities, and speaker voice canonical. Without it, character inferences remain provisional. News, academic, official, and report workflows instead align terminology, facts, attribution, claim scope, and section purpose without loading fiction rules.

human-writing-skills chunk-audit --draft full-novel.md --style fiction --outline novel-outline.md --output-dir novel-audit

Discovery terms: long-form audit, chunked manuscript audit, writing style unification, style consistency review, character consistency audit, cross-chapter continuity, novel audit, and report review. See the long-form consistency guide.

Earned Scene And Document Endings

AI-assisted drafts often reach a real stopping point and then append a scenic dissolve, shared silence, life lesson, future-facing reflection, or summary of what the scene already showed. The earned-ending-audit finds this reflective bookend / false closure pattern in Chinese and English by locating the last meaningful change and applying a deletion test. It does not ban sunsets, silence, reflection, or lyrical prose.

  • Fiction and webnovels stop on an earned consequence, decision, discovery, changed object, live pressure, or image whose meaning changed inside the scene.
  • Hard news ends on the last useful verified fact, response, constraint, or next step; feature kickers must add meaning instead of manufacturing uplift.
  • Academic, technical, and official writing ends with supported findings, limits, implications, decisions, owners, or deadlines rather than a ceremonial conclusion.
human-writing-skills audit --draft chapter.md --document-type fiction --profile ending
human-writing-skills lint --draft chapter.md --style fiction

The full module loads only through the explicit ending profile, while END001 provides a lightweight deterministic preflight for narrative endings. Discovery terms: AI story ending, reflective ending, scene ending audit, chapter ending audit, formulaic conclusion, false closure, AI reflective bookend, and can't-help-but-reflect ending.

Why This Exists

AI writing often fails in predictable ways:

ProblemWhat this project adds
Generic "AI voice"Concrete revision checks for rhythm, specificity, and empty phrasing
Repeated not-X/is-Y, is-X/not-Y, or chained Chinese 比 framesFamily- and density-based checks that preserve necessary correction and real comparison
Rewriting silently changes facts, uncertainty, or causal meaningAn opt-in original-text fidelity pass with a claim ledger and invention checks
Humanizing washes out hesitation, motifs, subtext, or speaker identityA source-backed preservation ledger that separates useful ambiguity from real defects
Fluent-looking sentences drop a word, object, or connector clauseA separate final pass over predicate slots, parallel structure, and references
Surface AI patterns recur across a passageGenre-aware checks for vague attribution, inflated significance, false ranges, synonym cycling, formatting habits, and comparison ladders
Fiction is chopped up by time/place mini-headingsNarrative-only checks that preserve titles and chapters but require scene changes to move through prose
A finished scene grows a scenic, reflective, or moralizing tailLast-meaningful-change and deletion tests for false closure, with genre-specific ending contracts
One style fits every genreSeparate Markdown SKILLS for different writing forms
Long text loses continuityA compact ledger for facts, plot, promises, and voice anchors
Prose and character dialogue drift across months or model versionsA fixed baseline, canonical outline, unique audit chunks, and cross-chunk reconciliation
Dialogue sounds interchangeable or out of characterGeneration and review against baseline voice, scene goal, knowledge, audience, and pressure
Dialogue ends in a stock gesture or scenic gloss instead of a real exchangeA dialogue-performance pass checks listener uptake, purposeful physical beats, and the changed option or carried debt
Dialect, honorifics, particles, or foreign language jump between charactersAn evidence-backed language-identity card with motivated switch gates
A consequential line or action receives no uptake before the prose cuts awayResponse-obligation checks and deferred interaction debt
Power, skill, authority, equipment, injury, or resources driftPermanent/temporary state separation and earned transition gates
Prompts become messyA CLI that compiles style, context, and task into one clean instruction pack
Advice stays abstractRules are written as observable editing actions

Built-In Style Skills

SkillUse it forMain focus
fictionliterary or commercial fictionpoint of view, scene pressure, character behavior
argumentativeessays and opinion piecesthesis, evidence, counterargument, logical flow
news-reportnews-style reportsfactual order, attribution, neutral wording
self-mediasocial posts and creator essaysuseful voice without empty hype
academic-paperresearch writingcautious claims, structure, terminology
formal-documentofficial and administrative documentsauthority, scope, responsibility, action, deadline, restrained register
webnovelserialized genre fictionhooks, payoffs, power rules, continuity

Deep Human-Trace Modules

These modules target deeper AI-writing artifacts, not only surface phrases.

ModuleWhat it repairs
controlled-driftoverly smooth logic, no associative movement, no unfinished thought
narrative-bridgesweak scene turns, generic transitions, paragraphs that do not cause each other
relationship-staterelationships that reset, dialogue without leverage, forgotten secrets or boundaries
relationship-stance-auditaudience-specific stance checks for rivalries, affairs, factions, hierarchy, sects, and family politics
logic-causality-auditcause, timeline, knowledge, motive, rule, resource, and consequence failures
character-consistency-auditcharacter goal, voice, competence, boundary, knowledge, and change-gate drift
dialogue-voice-auditcharacter-fit dialogue plus verbal, physical, silent, interrupted, or deferred uptake for consequential turns
dialogue-performance-audituses the voice audit's response map to test whether a physical beat changes the exchange rather than decorating it
speech-register-continuityevidence-backed language, dialect exposure, honorifics, particles, address, and switch gates
capability-state-auditpower, skill, authority, equipment, injury, resources, cooldowns, counters, and transitions
serial-reentryrecap dumps and chapter resets when prior chapters or a ledger are supplied
long-form-style-consistencychunked long-form style, character-setting, and speaker-voice reconciliation
chapter-momentum-auditatmosphere-only chapters, missing payoffs, discarded residue, and unsupported hooks
world-ontology-auditincompatible era, technology, institution, social practice, or speculative rule
process-earnedness-auditpromised processes skipped before an unsupported result
attention-budget-auditlow-value expansion and semantic echoes displacing consequential material
chapter-pattern-auditrepeated chapter architecture across three or more chapters
narrative-distance-controlunmotivated zoom, missing orientation, and viewpoint-distance drift
imagery-load-auditstacked comparisons, competing sensory channels, and show-then-gloss repetition
paragraph-rhythm-auditmechanical one-line paragraph runs and overloaded long blocks
detail-disclosure-auditbiography and appearance inventories delivered before the scene uses them
scene-entry-auditexact-time/location/weather/outfit opening bundles before pressure-bearing action
natural-measurementfalse precision: tiny exact measures and counted micro-actions in narrative prose
cliche-phrase-auditstock phrases, generic body cues, empty emotion labels, and dead transitions
formulaic-structure-audittriplets, bidirectional contrast frames, chained comparisons, and overly neat closure
prose-progress-auditstatic paragraphs and pressure-bearing interactions abandoned before uptake or explicit deferral
narrative-naturalness-auditin deep or explicit AI-trace review, catches recurring six-beat scene recipes and copied entry/closure cadence
earned-ending-auditreflective bookends, scenic dissolves, false closure, stock kickers, and conclusions added after the last meaningful change
imperfect-proseprose that is too clean, too symmetrical, or too polished
vocal-rhythmflat cadence and missing read-aloud breath points
embodied-emotionemotion labels without body, action, contradiction, or perception
cultural-anchorsvacuum prose with no era, place, community, or material detail
spatial-blockingcharacter teleportation and confused front/back/left/right blocking
occupancy-capacityover-occupied or mode-ambiguous seats, benches, beds, stools, aisles, and surfaces
appearance-prop-continuityclothing, shoes, props, injuries, and daily-detail drift
physical-continuity-auditoptional light manual checklist; do not combine with the forensic physical profile
proofreading-auditfinal omissions, predicate slots, stranded connectors, references, punctuation, naming, and layout
style-matrixthe mistake of applying one generic "human voice" to every genre
editor-loopone-shot drafting without a critical human-editor pass
ai-trace-rubricvague feedback like "sounds AI" without diagnosis
reference-style-alignmentexplicit reference material into transferable voice features without copying content
rewrite-fidelitymeaning drift, invented specificity, reversed polarity, and altered uncertainty when an original is supplied
voice-ambiguity-preservationover-clean rewrites that erase useful ambiguity, repetition, motifs, hesitation, subtext, or speaker markers
humanize-examplesan explicit-only before/after repair library; never loaded as a source or default style sample
surface-pattern-auditrecurrent formatting, false ranges, synonym cycling, and narrative mini-headings without global bans
protected-contentaccidental changes to numbers, citations, equations, URLs, code, quotes, and required terms
source-groundingclaim-to-source checks for serious documents with explicit factual sources

Quick Start

git clone https://github.com/whh110112/human-writing-skills.git
cd human-writing-skills
python -m pip install .

human-writing-skills list --kind style
human-writing-skills list --kind module
human-writing-skills build --style fiction --context examples/story-ledger.md --task "Write the next scene."
human-writing-skills humanize --draft chapter.md --style fiction --mode quick
human-writing-skills chunk-audit --draft full-novel.md --style fiction --outline novel-outline.md --output-dir novel-audit
human-writing-skills lint --draft chapter.md --style fiction
human-writing-skills verify --source original.md --candidate revised.md

You can also run directly from the source checkout with python -m humanwriting.cli .... The build and humanize commands print instruction packs that can be pasted into Codex, ChatGPT, Claude, local LLM tools, or another writing agent.

Quick Humanize

humanize is the low-friction rewrite route. It treats --draft as the original, keeps the same language and genre by default, and preserves meaning before changing surface style.

# Minimum stack: surface patterns + fidelity + voice/ambiguity preservation
human-writing-skills humanize --draft chapter.md --style fiction

# Add structural editor passes only when the draft needs them
human-writing-skills humanize --draft article.md --style self-media --mode deep

# Examples remain opt-in and are never treated as factual or stylistic source material
human-writing-skills humanize --draft chapter.md --style fiction --with-examples

quick does not load cliche, formulaic-structure, paragraph-progress, or editor-loop modules. deep adds those high-cost passes. humanize-examples loads only with --with-examples; voice-ambiguity-preservation loads only for supplied-text humanization or an explicit preservation audit.

Multilingual Scope

The skill instructions have no Chinese-only gate: they can guide fiction and serious prose in English, Japanese, French, Spanish, Portuguese, Arabic, Latin, and other languages supported by the selected model. Deterministic lexical rules are naturally language-specific, while structural continuity and review remain language-agnostic. The narrative heading scanner recognizes time cards across the languages above, and stats profiles Han, kana, Arabic, and several Latin-script language families. Use genre context and human review for mixed-language or low-resource text.

Example Output Shape

# Core Directive
# Continuity Protocol
# Selected Skill: fiction
# Project Context
# Task
# Output Contract

This format keeps the model focused on the current task while still carrying the previous facts, style decisions, and unresolved threads.

Explicit Reference Style

Reference matching is opt-in. It activates only with --reference, --reference-style, or explicit task wording such as "match this voice." A continuity ledger by itself never activates it.

human-writing-skills build `
  --style fiction `
  --context examples/story-ledger.md `
  --reference examples/reference-style-source.zh-CN.md `
  --task "Continue the scene while matching the reference's restrained rhythm."

human-writing-skills audit `
  --draft my-chapter.md `
  --reference examples/reference-style-source.zh-CN.md `
  --profile style-match

The compiler extracts point of view, rhythm, register, imagery, description, dialogue cadence, emotion handling, and transitions. Plot facts still come from --context; names, events, and distinctive phrases must not be copied from the reference. See docs/reference-style.md.

Original-Text Fidelity

Use --original only when revising an existing text and meaning must remain stable. It activates a dedicated fidelity module for rewrite and review; ordinary drafting does not pay this token cost.

human-writing-skills build `
  --style self-media `
  --original original.md `
  --task "Rewrite for clarity without adding facts or strengthening claims."

human-writing-skills audit `
  --draft revised.md `
  --original original.md `
  --profile fidelity

--original is semantic authority, --reference is style evidence, and --source is factual evidence for serious documents. They are deliberately isolated so a style sample cannot rewrite facts and an original cannot silently become a style target. See docs/editing-tools.md.

Serious-Document Sources

--source is separate from --reference. It activates source-grounding only for academic, news, legal, or technical work and builds a claim-to-source evidence map. Fiction, webnovels, self-media, and casual answers do not auto-load it.

human-writing-skills audit `
  --draft paper.md `
  --document-type academic-paper `
  --source study-a.md `
  --source study-b.md `
  --profile sources

The audit separates source existence from claim support. Without external registry access, it marks citation metadata as unverified instead of inventing a verdict.

Long-Form Continuity

For longer works, this project recommends a small ledger instead of relying only on a large context window. Use context in this order: canonical ledger, latest confirmed state, recent chapters, relevant retrieved older spans, then explicitly uncertain inference. Retrieved text is recall evidence and cannot overwrite a later canonical state.

The ledger tracks:

  • fixed facts: names, dates, locations, relationships, rules, timeline
  • active threads: unresolved conflicts, clues, promises, open arguments
  • relationship state: who knows, wants, hides, owes, refuses, or holds leverage
  • relationship stance: public/private posture, current audience, mention policy, forbidden leaks, and exception motives
  • voice anchors: point of view, diction, directness, disclosure habits, domain limits, audience shifts, taboo phrases
  • language identity: shared scene language, demonstrated dialect/second-language exposure, address forms, particles, and switch gates
  • capability state: permanent power/skill/authority plus temporary injury, equipment, resources, cooldowns, counters, costs, and transition gates
  • dialogue contract: who speaks to whom, why now, desired listener action, protected information, and intended state change
  • interaction debt: which consequential line or action still awaits uptake, refusal, interruption, consequence, or delayed payoff
  • current state: where the previous passage ended and what must connect next
  • beat bridge: previous residue, entry pressure, micro-turn, and exit hook
  • change log: what became newly true in the latest output

See examples/story-ledger.md for a fiction example.

speech-register-continuity auto-loads only for fiction/webnovel dialogue when the task or ledger contains explicit language, regional, dialect, honorific, or register evidence. It can also be selected with audit --profile register; region or nationality never licenses an invented accent.

capability-state-audit loads during generation only when the current task names a capability constraint. Automatic pipeline review additionally requires context, so ordinary dialogue scenes do not pay its Token cost. Select it explicitly with audit --profile capability --context ledger.md when needed.

Chatbox

Yes, this project works in Chatbox because it outputs plain text prompt packs. For long writing sessions, use the continuity ledger as the source of truth and paste the compiled prompt pack into Chatbox's system prompt or first message.

Physical Continuity

For scenes where space matters, such as cars, elevators, hospital rooms, dining tables, and bedrooms, use --strict-continuity. It adds occupancy, spatial blocking, and appearance/prop generation guards. Use audit --profile physical for one evidence-first forensic pass on an existing draft; it owns capacity, blocking, appearance, props, barriers, reach, and body-state contradictions in one ledger.

python -m humanwriting.cli build `
  --style fiction `
  --strict-continuity `
  --review `
  --context examples/vehicle-scene-ledger.md `
  --task "Continue the car argument. Every seat change must have an on-page transition. Keep clothing and props consistent."

Relationship Stance Continuity

For scenes with rival factions, secret relationships, hierarchy, family politics, office politics, or sect leaders, use --deep-review or add relationship-stance-audit. It extracts each dialogue line as speaker -> listener/audience -> referenced party and checks whether praise, criticism, comparison, naming, secrecy, and rank fit the established relationship graph.

Character- and Situation-Fit Dialogue

dialogue-voice-audit and dialogue-performance-audit separate stable speaker baseline, situation-driven modulation, and the action each turn is trying to perform. Occupation, class, region, and trait labels supply possible knowledge, incentives, duties, and register pressure; they do not substitute for personality. An explicit speech-centered generation task activates the module on demand. Review an existing scene with an independent voice pass:

human-writing-skills audit `
  --draft my-dialogue-scene.md `
  --context my-novel-ledger.md `
  --profile voice

The audit separates contradiction from motivated contrast and checks scene purpose, knowledge boundaries, practical constraints, response linkage, audience, and power. A consequential line or action does not require a mechanical spoken reply, but it must receive verbal, physical, silently legible, interrupted, or deliberately deferred uptake before the prose shifts away. A physical beat is retained only when it changes access, attention, leverage, permission, distance, or the next available action; the module does not prescribe touch, gestures, weather, clothing, or scenery after every line.

If the draft already exists, use audit:

python -m humanwriting.cli audit `
  --draft examples/problem-car-scene-draft.md `
  --context examples/vehicle-scene-ledger.md

Project Layout

humanwriting/        Python package and CLI
skills/              reusable writing SKILLS in Markdown
examples/            sample continuity ledgers and article briefs
tests/               standard-library unit tests

CLI Usage

Optional Narrative Modules

The narrative controls use progressive disclosure. Generation adds the dialogue modules only when a fiction or webnovel task explicitly asks for a speech-centered or character-interaction scene such as dialogue, negotiation, reunion, testing, reconciliation, confrontation, a meeting, interrogation, or argument. Narration-only and serious-document tasks do not trigger them. The voice, serial, world, process, momentum, salience, recurrence, texture, and sources and preservation audit profiles remain outside broad full review:

human-writing-skills build --style fiction --task "Write a negotiation in which both speakers want different outcomes."
human-writing-skills build --style webnovel --context ledger.md --module serial-reentry --task "Continue chapter 18."
human-writing-skills audit --draft chapters.md --profile momentum
human-writing-skills audit --draft chapter.md --profile texture
human-writing-skills audit --draft chapter.md --profile process
human-writing-skills audit --draft chapters.md --profile recurrence

The dialogue modules model baseline speech, practical incentives, knowledge limits, scene goals, response linkage, and purposeful performance beats without treating a job as a personality. dialogue-voice-audit owns response obligation and deferred interaction debt; dialogue-performance-audit only tests whether a selected physical beat earns its place. Use speech-register-continuity for evidence-backed language identity, particles, honorifics, and code-switching; use capability-state-audit for power and resource state. Use serial-reentry only with prior chapters or a ledger, momentum for a multi-chapter draft, and texture for narrative distance, cinematic opening stacks, imagery load, paragraph fragmentation, emotional over-explanation, and detail inventory. Use world only with explicit setting constraints, process for consequential domain work, salience for long drafts, recurrence for at least three chapters, and sources only with serious documents and factual source files.

During generation, world, process, and attention-budget modules activate only from explicit setting, consequential-process, expansion, long-form, or dilution signals; ordinary --deep-review does not load them.

Audit Profiles

audit can load only the checks needed for the current pass:

ProfilePurpose
fullBroad default audit; high-cost and strongly gated profiles remain separate
logicCause, timeline, knowledge, motive, rules, resources, and consequences
characterCharacter goal, voice, competence, boundaries, and change gates
voiceSpeaker baseline, scene goal, role/knowledge limits, audience register, change gates, and response obligations
registerLanguage identity, dialect exposure, honorifics, particles, vocabulary, and code-switch gates
capabilityPower, skill, authority, equipment, injury, resources, counters, and transition gates; requires --context
serialRecap dumps, missing carryovers, and chapter resets; requires --context
momentumMulti-chapter entry pressure, irreversible turns, payoff, residue, and exit pressure
worldEra, technology, institution, social-practice, and world-rule compatibility
processPromise, attempt, resistance, judgment, cost, evidence, and earned result
salienceLong-draft attention allocation, dilution, and semantic echoes
recurrenceChapter fingerprints and repeated architecture across three or more chapters
textureNarrative distance, scene-entry load, imagery, paragraph cadence, and detail disclosure
physicalPosition, capacity, reach, clothing, props, and injuries
relationshipAudience, stance, information permissions, rank, and secret leaks
ai-traceCliches, formulaic structure, static paragraphs, and other AI traces
endingLast meaningful change, reflective bookends, false closure, and genre-specific ending function
numbersFalse precision in action and emotion
proofreadOmissions, sentence slots, stranded connectors, references, punctuation, naming, and layout
fidelityMeaning, entity, polarity, uncertainty, chronology, attribution, and invention checks; requires --original
preservationUseful ambiguity, repetition, motifs, hesitation, subtext, and speaker identity; requires --original and explicit selection
style-matchDrift from explicitly supplied reference material; unavailable without a reference signal
sourcesClaim grounding against factual sources; requires a serious document and --source

Profiles can be combined, for example --profile relationship --profile ai-trace.

Ordinary generation loads only a lightweight sentence-completeness guard. Full omission, missing-object, stranded-connector, and reference checks load only in the proofread profile or pipeline proofreading stage, preserving the generation token budget.

Chunked Long-Form Audit

Use chunk-audit when a manuscript exceeds one reliable context window or was written across model, prompt, or time changes. It complements pipeline: chunking handles manuscript size and cross-block drift, while the pipeline separates different review responsibilities for one draft.

human-writing-skills chunk-audit `
  --draft full-novel.md `
  --style fiction `
  --outline novel-outline.md `
  --reference approved-sample.md `
  --output-dir novel-consistency-audit

Without an explicit reference, --baseline-chunk selects a candidate manuscript block; approve or correct it during baseline extraction. Reference prose supplies style evidence only. Fiction uses the outline or ledger for character canon and permits earned development; serious reports protect facts, numbers, terminology, attribution, and conclusion scope. Default body, context, and baseline budgets keep the workflow usable on smaller-context models.

Verified Agent Review For Long Documents

Add --agent-mode deep when coverage matters more than token cost. It writes an explicit task graph in agent-plan.json, requires a Coverage Receipt from every reviewer, and reserves report paths under reports/. After the baseline is approved, tasks that depend only on baseline may run in parallel in fresh model conversations or API calls.

human-writing-skills chunk-audit `
  --draft full-novel.md `
  --style fiction `
  --outline novel-outline.md `
  --agent-mode deep `
  --output-dir novel-agent-audit

human-writing-skills verify-chunk-audit `
  --package-dir novel-agent-audit

Do not run 9999-reconcile-prompt.md until verification reports complete coverage. Deep mode adds a paragraph-level prose pass for every block, a dialogue pass only where dialogue exists, and an evidence pass only for serious documents with explicit --source files. Standard mode remains one complete audit per unique block. For an explicitly translated or localized long document, add --translationese; it never activates merely because the text uses another language.

Multi-Stage Pipeline

For high-precision review, generate independent single-purpose passes instead of asking one model to check everything at once:

human-writing-skills pipeline `
  --draft my-chapter.md `
  --context my-novel-ledger.md `
  --auto `
  --output-dir chapter-audit

Run every stage in a fresh model conversation or independent API request. Automatic mode keeps logic, AI-trace, and proofreading stages, then adds focused stages only when their cues and gates match. serial and capability require context; fidelity requires an original; salience requires a long narrative of at least 4,000 characters; recurrence requires at least three chapters; and sources requires both a serious document and explicit factual sources. The higher-cost preservation comparison is explicit-only: use --stage preservation --original original.md. Add --with-stats only when distributional diagnostics are useful. The manifest explains every selection and skip.

Deterministic Safeguards

Use lint for evidence-located pattern checks, stats for optional distributional diagnostics, fix for conservative mechanical cleanup, and verify to catch protected facts changed during rewriting. Scores and statistics are editing heuristics, not authorship proof.

Protected-content instructions auto-load only for academic papers, formal documents, news reports, and strongly identified legal or technical documents. Fiction, webnovels, casual Q&A, playful text, and self-media do not auto-load them; use --protect-content or --protect-term to override this gate.

With --style fiction or --style webnovel, lint also flags unrequested narrative mini-headings and multilingual standalone time cards. It preserves work/chapter titles and does not apply the rule to news or academic section headings. The repair restores a prose transition; it does not merely delete the label and join two disconnected blocks.

human-writing-skills lint --draft my-chapter.md --style fiction
human-writing-skills stats --draft my-chapter.md --style fiction
human-writing-skills fix --draft my-chapter.md --preview
human-writing-skills verify --source original.md --candidate revised.md --protect-term "Project Atlas"

Number Sense

Use this to catch false precision such as unnecessary exact centimeters, seconds, or micro-counts in emotional and bodily action, while preserving necessary numbers in medicine, forensics, engineering, architecture, news, and technical writing.

python -m humanwriting.cli audit `
  --draft examples/false-precision-draft.zh-CN.md `
  --profile numbers

Common Writing Problems

The project converts recurring long-form writing problems into executable checks: stock phrasing, plastic prose, triplet structures, over-smooth transitions, static paragraphs, hollow emotion, cultural vacuum, and long-form drift.

List styles:

python -m humanwriting.cli list

Build a prompt pack:

python -m humanwriting.cli build `
  --style webnovel `
  --module narrative-bridges `
  --module relationship-state `
  --module natural-measurement `
  --module embodied-emotion `
  --module vocal-rhythm `
  --strict-continuity `
  --review `
  --context examples/story-ledger.md `
  --task "Continue chapter 3. Keep the confrontation unresolved but reveal one new clue."

The compact --review flag adds only:

  • editor-loop: draft, diagnose, locally rewrite, then finalize
  • ai-trace-rubric: score cognitive smoothness, generic diction, emotional flatness, rhythm monotony, context drift, weak beat bridges, relationship resets, false precision, cultural vacuum, over-clean prose, and closure addiction

The --deep-review flag adds the compact review plus:

  • relationship-stance-audit: check speaker, listener, referenced party, secrecy, stance, rank, and audience permissions
  • cliche-phrase-audit: check stock phrases, generic body cues, empty emotion labels, and dead transitions
  • formulaic-structure-audit: check triplets, bidirectional contrasts, chained comparisons, and paragraphs that close too neatly
  • surface-pattern-audit: check recurring significance, attribution, range, lexical, formatting, and mini-heading patterns in genre context
  • prose-progress-audit: check whether each paragraph advances facts, relationships, evidence, action, or pressure
  • narrative-naturalness-audit: in deep or explicit AI-trace review, check recurring scene-entry/closure recipes across six or more beats; local phrase, structure, and uptake findings stay with their owning modules
  • natural-measurement: check false precision in fiction, webnovels, and self-media

The --strict-continuity flag adds:

  • spatial-blocking: position and movement checks
  • occupancy-capacity: physical resource mode, capacity, occupancy, and transformation checks
  • appearance-prop-continuity: clothing, shoes, props, and body-state checks

Use audit --profile physical for the final physical-state contradiction pass. The optional physical-continuity-audit is a light manual checklist and cannot be combined with this forensic profile.

Run tests:

python -m unittest discover -s tests -v

Writing Philosophy

Good AI-assisted prose should be:

  • situated: it knows who is speaking, what changed, and why this passage exists
  • specific: it uses details that belong to this topic, not any topic
  • continuous: it respects previous facts, costs, injuries, claims, and promises
  • shaped: it understands the genre before choosing structure and diction
  • revised: it removes filler, canned transitions, and decorative certainty

Editorial Guardrails

This project avoids claiming that any tool can perfectly hide authorship or beat detectors. It focuses on craft: voice, context, genre, revision, and continuity.

When studying published work, use short analysis, public-domain sources, licensed material, or your own examples. Do not copy protected passages into skills.

Contributing

Contributions are welcome. Useful additions include:

  • new Markdown skills
  • Chinese and multilingual style packs
  • model-specific adapters
  • stronger continuity ledger examples
  • tests for prompt compilation and context preservation

Please keep each skill practical. A good rule should tell the model what to do, what to avoid, and how to check the result.

License

MIT. See LICENSE.