Writing & Content wechat-official-accounthtml-typesettingmarkdown-conversiontheme-librarydocx-normalizationpdf-conversionhtml-validationtheme-generator

gzh-design — WeChat Official Account Typesetting Skill

Turns Markdown (or Word/PDF/plain text) into paste-ready HTML for the WeChat Official Account editor with zero style loss, shipping 6 curated themes plus a theme generator.

FollowSkills review · FSRS-2.0
Recommended
58/ 100 5-point scale 2.9 / 5
1 2 3 4 5 6
1Trust16 / 25 · 3.2/5

SKILL.md only reads/writes local files and runs two local Python scripts; no network calls, credential access, or destructive operations; signature uses {{author}} placeholder instead of a hard-coded name; data flow is transparent. Deductions: script sources are not among the provided files so their behavior cannot be statically verified; theme selection confirms with users, but there is no explicit rollback/overwrite guidance for file writes.

2Reliability8 / 20 · 2.0/5

The workflow is self-consistent and layered (theme-index as single source, no cross-theme mixing, mandatory validation gate), with abnormal-path handling (stop if theme-index is empty). Deductions: the two validation scripts themselves are not provided, so runnability and error-message quality cannot be statically confirmed; no direct CI/committed-test evidence, only descriptions in README/CONTRIBUTING.

3Adaptability13 / 15 · 4.3/5

Trigger scenarios are explicitly enumerated in the frontmatter; non-fit boundaries are clear (no web pages/PPT/article writing); native Chinese support; fully local, no dependence on overseas services. Deductions: the eval-cases regression file referenced is not in the provided material, and evidence for edge conditions (very long articles, unusual Markdown) is limited.

4Convention11 / 15 · 3.7/5

Good documentation layering (SKILL.md workflow + references component libraries + scripts + CONTRIBUTING + eval-cases), AGPL-3.0 with full LICENSE text, clear author attribution. Deductions: license metadata is NOASSERTION, no version number or changelog, update path is informal, and some external image links (picgo.net) raise reachability concerns.

5Effectiveness6 / 15 · 2.0/5

The output design (clean section fragment + copy-button preview page) directly targets WeChat paste pain points with a clear value proposition over manual layout. Deductions: static review cannot confirm outputs paste cleanly with styles intact; showcase screenshots are author-supplied and representative outputs were not independently reproduced.

6Verifiability4 / 10 · 2.0/5

Auditable primary material exists (library specs, two-gate script conventions, eval cases, sample article) supporting reproduction. Deductions: the scripts and eval-cases files themselves are absent from the provided material, third-party execution evidence (CI plus tests) is missing, and most effectiveness claims rest on author description.

Evidence confidence:Low Reviewed Sep 18, 2026 Reviewed revision ba1f4175519b
Before you use it
  • Static review executed nothing: the actual behavior and error quality of validate_gzh_html.py and component_lint.py are unverified; run them yourself before relying on the quality gates.
  • License metadata is NOASSERTION; although LICENSE declares AGPL-3.0, integrators must confirm compliance obligations themselves (including the network-service source-disclosure clause).
  • No version numbers or CHANGELOG; update tracking relies on git history. Some images depend on a third-party image host (picgo.net), raising long-term availability concerns.
  • Publisher is not verified by the FollowSkills registry; identity is treated as unknown, which is not itself a deduction or a suspicion.
Review evidence [1][2][3][4][5]
See the full review method →

What does this skill do, and when should you use it?

gzh-design-skill is an AI-agent skill for typesetting WeChat Official Account articles, driven by the workflow defined in SKILL.md. It reads theme component libraries (with references/theme-index.md as the single source of truth), parses Markdown into sections, quotes, code blocks and images, then assembles them with real HTML components from the selected theme. All output uses fully inlined styles and <span leaf>-wrapped text to survive the WeChat editor's filtering, with deterministic script checks for platform rules and full-width punctuation. Beyond the 6 built-in themes, it can generate a brand-new theme component library from a one-line description or a reference image and reuse it locally.

Accepts Markdown, .docx, .pdf or plain-text input (non-Markdown is normalized first per format-normalize.md; .docx via extract_docx.py); reads the selected theme's component library plus the shared incremental library (code blocks / images & GIFs / label headings); parses article structure, classifies the article type, and picks the component combination from the theme's recipe table; automates chapter numbering (final chapter may use an ∞ variant), 1–3 keyword underlines per paragraph, intro quote card, curated 3-item table of contents, English labels, author-signature deduplication and full-width punctuation; outputs a clean <section>-only HTML fragment, then runs wrap_preview.py to produce a preview page with a 'Copy to WeChat' button; delivery requires validate_gzh_html.py to pass with zero ERRORs and zero half-width-punctuation warnings.

  1. An official-account author with a finished Markdown tutorial or tool roundup who wants one-click 'Moyu Green' themed, paste-ready HTML
  2. An editor publishing long-form opinion pieces who wants the red-white or graphite-minimal theme with automatic keyword underlines and quote cards
  3. Someone holding a Word or PDF draft who needs it normalized to Markdown first, then typeset for WeChat
  4. A creator unsatisfied with all 6 built-in themes who wants a bespoke component library generated from a style description or reference image
  5. A zen/minimalist essayist who wants the whitespace-zen theme's airy, centered layout
  6. A team publishing many similar articles who needs consistent visual tone per article type (via recipe tables rather than model improvisation)

What are this skill's strengths and limitations?

Pros
  • Fully inlined styles, <span leaf> wrapping and deterministic script validation mean pasted HTML keeps its formatting in the WeChat editor, with an explicit quality gate
  • Six polished theme component libraries covering tutorials, opinion, reviews and essays, each with per-article-type recipe tables for consistent tone
  • Supports Word/PDF/plain-text input normalization and a fully automatic 'one-click' mode
  • The theme generator can create new themes from a description or reference image, which then enjoy equal standing with built-in themes
  • Typesetting logic lives in component libraries and scripts, so per the README it works consistently across Claude, GPT, Gemini and Chinese domestic models
Limitations
  • Typesetting only, no writing — you must supply your own Markdown; unsuitable for regular web pages, landing pages, PPT, or non-WeChat platforms
  • Output HTML is constrained by WeChat platform rules (no style/script/div/class/grid, etc.), so it is not portable to other channels
  • The GitHub License field shows NOASSERTION; the actual terms should be confirmed against the repo's LICENSE file (README states AGPL-3.0)
  • Half-width punctuation is self-documented as the most frequent rework point and must be fixed to zero before delivery; no evidence of an independent automated test suite (there is an eval-cases.md regression document)
  • Results depend on your agent executing a multi-step workflow correctly; aside from README screenshots, no third-party evaluation data exists

How do you install this skill?

Option 1 (recommended): npx skills add https://github.com/isjiamu/gzh-design-skill. Option 2: ask any agent (Claude Code / Codex / Cursor, etc.): 'Please find and automatically install this skill: https://github.com/isjiamu/gzh-design-skill'. Option 3: git clone https://github.com/isjiamu/gzh-design-skill.git ~/.claude/skills/gzh-design. The validation scripts require Python 3 on your machine.

How do you use this skill?

After installing, just ask your agent, e.g.: 'Typeset this article as WeChat HTML using the Moyu Green theme: article.md'. Trigger phrases include '公众号排版', '微信排版', 'gzh'; saying 'just typeset it / one-click' skips questions for full-auto mode; 'generate a WeChat theme from this image' invokes the theme generator. Output is a clean HTML file plus a preview page with a copy button — open the preview in a browser, click 'Copy to WeChat', then paste into the editor.

FAQ

Will styles break after pasting into WeChat?
By design, no: all styles are inlined and every text node is wrapped in <span leaf>, and validate_gzh_html.py must pass with zero ERRORs before delivery. Missing <span leaf> is the most common fatal mistake, caught by the script.
Is it Claude Code-only? Any model requirements?
No. Per the README, any agent that can read the skill directory (Codex, Cursor, etc.) works; the logic lives in component libraries and scripts, so domestic and international models both produce consistent results, with hard constraints enforced by the validator.
Is it free? What does it need to run?
The project is free and open source (README states AGPL-3.0). You need local Python 3 for the validation/helper scripts and an agent environment with shell access and local file read/write; no network API dependency is documented (aside from image URLs).
What if I want a style beyond the 6 built-in themes?
Two ways: have the AI follow theme-generator.md to generate a 45–75 block component library from a description or reference image and register it for reuse; or hand-write a new theme per CONTRIBUTING.md and pass component_lint.py with 0 ERRORs before submitting a PR.

Related skills