write

Strips AI writing patterns and rewrites prose to sound natural in Chinese or English, including artifact-grounded release, launch, and social copy. Not for…

INSTALLATION
npx skills add https://github.com/tw93/waza --skill write
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

$27

Run this only when the user mentions memory, preview, previous decisions, or a prior conclusion; when they provide a memory path; or when the current project exposes an obvious local memory summary. Do not hard-code machine-specific memory roots or read raw transcripts.

Read durable context in this order: user-provided path, current project scope, then global preferences. List titles first, then open at most 1-2 relevant summaries. Treat cross-project entries as transferable patterns only.

Map memory types before using them: decision, preference, and principle are voice and format constraints; pattern and learning are editing checks; fact must be verified against current state before it affects factual wording. The supplied text, audience, project docs, current release state, and source material override memory.

For /write, durable preferences can set brevity, tone, and social-post shape. They do not override the hard rule to edit in place, keep meaning intact, and avoid change lists unless the user explicitly asks.

Hard Rules

  • Meaning first, style second. If removing an AI pattern would change the author's intended meaning, keep the original.
  • No silent restructuring. Do not reorganize headings, reorder paragraphs, or merge sections unless structural changes are explicitly requested. Edit in place.
  • Artifact-grounded claims. For launch copy, release notes, social posts, product pages, and public replies, ground factual claims in real source material: current app behavior, screenshots, product page, release page, changelog, issue/PR, or user-provided draft. Do not turn concrete product evidence into generic marketing language.
  • Stop after output. Deliver the rewritten text. Do not append a list of changes, a justification, or a closer.

Bilingual Review Mode

Activate when: mixed Chinese/English, "Chinese copywriting", "bilingual consistency", "release notes"

Chinese rules (from https://github.com/mzlogin/chinese-copywriting-guidelines):

  • Space between Chinese and English characters (CN文字EN → CN 文字 EN)
  • No mixing of punctuation (Chinese uses 、。?!;:, not commas/periods)
  • Consistent terminology across all instances

English in Chinese documents: Flag unexplained English, suggest translation or add context.

Bilingual pairs: Confirm EN and CN versions convey the same meaning; mark translation loss.

Release Note Template Mode

Activate when: "release", "changelog", "version", "release notes"

Generate from commit messages:

  • Breaking Changes
  • New Features
  • Fixes & Improvements
  • Deprecations

Format: tw93/Mole style (numbered list, bold label, one sentence on user effect, bilingual).

Release Notes Pre-flight

Before drafting, gather style references:

  • Read the target project's CLAUDE.md for its Release Convention / Release Flow section.
  • Run gh release view --json body -R <owner>/<repo> to read the most recent release as a style, length, and density reference.
  • If the user mentions comparing with a sibling project's release style, ask for the owner/repo to fetch it: gh release view --json body -R <owner>/<sibling>.
  • Match the reference release's item count, sentence length, and tone. Do not invent a new format.
  • Keep each release-note item to one sentence unless the reference project clearly does otherwise. Do not add emoji to release prose unless the target surface is explicitly a reaction or celebratory social surface.

Document Review Mode

Activate when: PDF, document, white paper, "review this document", "check this document", "审稿"

Review checklist:

  • Privacy scan: Detect PII (names, companies, employment dates, salary hints, location details). Hard stop if any text implies job seeking, competitor info, or personal data leakage.
  • Tone consistency: Flag voice shifts, register mismatches, formulaic phrasing. Check for AI patterns using the loaded write-zh.md or write-en.md rules.
  • Bilingual validation: For CN/EN pairs, confirm translation accuracy and terminology consistency. Apply Bilingual Review Mode rules.
  • Rendering check: Placeholder text remaining (Lorem ipsum, TODO, [TBD]), broken image links.

Output format: same as prose rewrite, but append privacy: clear / N issues found after the reviewed text.

Paragraph Coherence Mode

Activate when: "连贯性", "段落连贯", "可读性", "coherence", "flow check", "段落顺不顺"

Do not rewrite. Instead, work through each paragraph in sequence:

  • Flag transitions that abruptly shift topic without a signal.
  • Flag paragraphs where the opening sentence does not follow from the previous paragraph's close.
  • Flag rhythm issues: monotone sentence length (all short or all long across a whole paragraph).
  • Suggest the minimal fix for each: one word, one reordered clause, one bridging sentence.

Output: a numbered list of issues, each with the paragraph location and a one-line fix suggestion. Then ask if the user wants any applied.

Tweet / Social Post Mode

Activate when: "推特", "twitter", "X推文", "tweet", "social post", "折叠长度", "长文推特", "发文"

Apply the five announcement rules for Tang's projects (Pake, MiaoYan, Mole, Kaku, Waza):

  • Lead with community: open with the social anchor (star count, user thanks, whose feedback drove the fix). Changes follow, not lead.
  • Highlights over completeness: pick 2 to 4 of the most interesting changes. Dropping whole items is fine.
  • UX framing: phrase each point as "你用它的时候..." or "有一种...的感觉", not "这个工具做了...".
  • One stance: include at least one opinionated sentence revealing why decisions were made.
  • Native Chinese rhythm: use idiomatic phrasing. Avoid translation-sounding terms.

Close casually with an invitation, not a CTA. End with one short sentence inviting readers to try, not "立即升级".

For non-Tang projects or English posts, apply the same structure (community lead, highlights, UX framing, one stance, casual close) adapted to the project's voice.

Gotchas

What happened

Rule

Reorganized headings without being asked

Do not restructure; edit in place unless structure changes are explicitly requested

Appended a "changes made" list after the rewrite

Output is the edited text only. No changelog, no commentary.

Used formal register for a blog draft

Match the target audience's register. Blog is conversational, not academic.

Applied Chinese/English spacing rules to a pure-English text

Bilingual spacing rules (半角/全角) only apply when the text mixes Chinese and English

Polished the user's voice into generic launch copy

Preserve the author's cadence and stance. Use real product artifacts to sharpen facts, not to replace the voice.

Drafted release or social copy from memory

Read the current release page, changelog, issue/PR, product page, screenshot, or supplied source before making factual claims.

Wrote launch copy in one pass without checking the live screenshots

Iterate: draft, compare against the real product screenshot or page, tighten wording to match what ships, repeat until copy and artifact agree

Output

Return only the edited prose. If the text was truncated or if multiple versions were possible, note that in one sentence after the body. Otherwise, no wrapper, no preamble, no postscript.

BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card