DEV Community

zu
zu

Posted on

Elegant Writing - Open-Sourcing Two of My Article-Writing Skills

A Faster Way to Write in the AI Era—and the New Problems It Creates

LLMs have delivered an enormous productivity boost. I now use Codex for most of my day-to-day tasks, and writing is no exception. As general-purpose language models, LLMs are naturally good at working with text. But while they make writing more convenient, they also introduce new problems. In my own writing process, two issues have stood out:

1. LLM-generated sentences, structures, and grammar are highly repetitive—in short, they sound like AI

Around 80% of the explainer content I come across from smaller creators on Douyin has a very obvious AI-generated feel. It makes the content unpleasant to listen to and quickly gives the impression that the script has no personal point of view. The first impression is that the creator is not professional. If you publish content, this is a serious problem.

This matters even more when you are new to AI, have not yet developed strong editorial judgment, and are using it to generate technical talks, speeches, or spoken scripts. You need to consider the setting. Delivering an obviously AI-written script in public is deeply awkward. (Imagine imitating Doubao's speaking style at a formal event 😂.) The most common patterns I notice today are the unmistakable styles associated with GPT and Doubao.

2. Creating illustrations is far more cumbersome than using an LLM to help write the article itself

There are already many AI image-generation tools and models, but design is itself a creative discipline and requires some expertise. I tried several Skills designed to help illustrate articles, but none matched what I wanted. The problem came down to two requirements:

  1. Automatically identify the right places for illustrations based on the article's meaning.
  2. Quickly propose illustration types, styles, and visual treatments that fit the article, while making them easy to edit and fine-tune at any time.

Solving these two problems greatly reduces the mental overhead of adding illustrations.

To address these issues in my daily writing, I created two Skills and open-sourced them on GitHub. After using them for some time, they have proven to be close to what I wanted and have significantly shortened my writing process.

Stars are welcome.

1. zu-article-image-skill: An Editable Visual Illustration Skill for Long-Form Articles

Project: github.com/wwenj/zu-article-image-skill

zu-article-image-skill logo

zu-article-image-skill

Core Design

This Skill solves only two problems:

  1. Where an illustration should appear
  2. What the illustration should look like

It separates the workflow into two layers:

  1. Prompt layer: Based on the article's structure, insert inspectable and editable illustration pre-rendering Prompt tags into the article.
  2. Image-generation layer: After the user confirms them, generate images from those Prompts, save them to imgs/, and insert the image references back into their original positions.

The article's Markdown file is the single source of truth. The Skill does not create planning documents, separate Prompt files, task JSON, or additional state files.

Technical Design

1. Intermediate Tags

The first run only writes hidden tags. It does not generate images immediately:

<!-- article-illustration id="01-agent-runtime" preset="process-flow" type="flowchart" style="sketch-notes" palette="macaron" ratio="16:9" alt="Agent execution flow"
Create a horizontal flowchart for a technical article that helps readers understand how an Agent request moves from input to output.

Layout: A five-stage flow from left to right, with generous whitespace throughout.
Content: User input, Router, Planner, Executor, Validator, and final answer.
Style: A sketch-notes, hand-drawn educational infographic with a warm paper background and black hand-drawn lines.
Palette: macaron. Use light blue for system modules, mint green for successful output, and coral red only for risk warnings.
Text: Use only short Chinese labels, with large, clearly readable text.
Aspect: 16:9.
-->
Enter fullscreen mode Exit fullscreen mode

The Skill generates an intermediate image description Prompt and inserts it directly into the source article as a placeholder. The Prompt can then evolve alongside the article, effectively serving as the image's “source code” within the draft. Once all editing and fine-tuning are complete, the images can be generated in one batch and inserted into the article.

2. Built-In Style System

The Agent automatically selects styles using the rules in references/, although users can also specify or modify them.

Layer Count Purpose
preset 8 Common scenario combinations, such as knowledge diagrams, architecture diagrams, flowcharts, and comparisons
type 6 Information structure: infographic, flowchart, comparison, framework, scene, timeline
style 7 Visual language: hand-drawn, blueprint, vector, whiteboard, editorial, poster, and warm scenes
palette 6 Color semantics: soft educational, technical blue, balanced, monochrome ink, two-color poster, and warm

3. Illustration Style Previews

All examples use a “Markdown article illustration workflow” as their theme and are generated with the built-in style options.

sketch-notes style preview
sketch-notes
A hand-drawn educational infographic style for explaining concepts, tutorials, and processes.
blueprint style preview
blueprint
A technical blueprint style for architecture, system boundaries, and data flows.
vector-illustration style preview
vector-illustration
A flat vector style for solution comparisons and knowledge cards.
ink-notes style preview
ink-notes
A whiteboard note style for methodologies, frameworks, and shifts in thinking.
editorial style preview
editorial
A magazine infographic style for data, metrics, and report summaries.
screen-print style preview
screen-print
A screen-printed poster style for strong viewpoints and symbolic hero visuals.
warm style preview
warm
A gentle narrative illustration style for personal experiences and light metaphors.

4. State Machine

scripts/article_tags.py handles deterministic scanning and insertion:

Command Purpose
scan Parse tags, validate attributes, and report the status and save path of each image
sync When an image exists, insert ![alt](imgs/{id}.png) after its tag

State definitions:

State Meaning
needs_generation The tag exists, but imgs/{id}.png does not
needs_insertion The image exists, but its reference has not yet been inserted into the article
complete Both the image file and image reference exist
error The tag is invalid, an ID is duplicated, or an image reference is duplicated

Usage

Plan the illustrations:

Use zu-article-image-skill to plan illustrations for article.md
Enter fullscreen mode Exit fullscreen mode

After the first run, the Skill summarizes the placement, purpose, and style of each illustration. At this point, you can:

  • Confirm that it should continue generating the images.
  • Manually edit the Prompt tags in the article.
  • Ask it to switch to another preset or style and regenerate the Prompts.

After confirmation, generate and insert the images:

Generate images from the existing `article-illustration` tags in the article.
Enter fullscreen mode Exit fullscreen mode

Best Suited For

  • Chinese technical articles, tutorials, opinion pieces, and project retrospectives
  • Markdown drafts that need flowcharts, architecture diagrams, concept diagrams, or comparisons
  • Writers who want to maintain illustration Prompts directly inside the article instead of splitting them into separate configuration files

2. zu-article-polisher-skill: Precisely Removing the “AI Feel” from Chinese Writing

Project: github.com/wwenj/zu-article-polisher-skill

zu-article-polisher-skill logo

zu-article-polisher-skill

zu-article-polisher-skill is designed for Chinese technical writing. Its goal is to dismantle the templated scaffolding commonly found in AI-generated content while preserving the author's original judgments, facts, and technical boundaries. The result should read more like it was written by a real, experienced engineer.

It is suitable for:

  • Chinese technical articles, long-form opinion pieces, and WeChat Official Account drafts
  • Spoken scripts, speeches, and presentations
  • Editing AI-generated drafts and checking them before publication

Core Capabilities

1. Remove the “AI Feel” from Chinese Writing

It identifies and addresses common signs of AI-generated Chinese writing, including:

  • Formulaic openings and fake questions
  • Classic GPT-style negative parallel constructions such as 不是...而是... (“not...but...”) and 不仅仅是...更是... (“not only...but more importantly...”)
  • Three-part structures, forced lists, and lists of bold subheadings
  • Empty attempts at profundity and forced summaries at the end of sentences
  • Marketing language, white-paper language, and industry jargon
  • Vague attribution and claims backed by no source
  • Excessive balance and formulaic sections on challenges and future prospects
  • Leftover chat responses and model disclaimers

2. Preserve the Author's Real Judgment

The Skill prioritizes the author's own opinions, experience, and technical caveats. It does not invent years, numbers, examples, sources, user feedback, or more aggressive claims simply to make the writing sound more natural.

When editing technical opinion pieces, it takes particular care to preserve:

  • Explicit judgments
  • Engineering boundaries
  • Real constraints involving cost, permissions, stability, evaluation, migration, and maintenance
  • Existing facts and attribution of opinions in the source text

3. Rebuild the Article's Structure

It first extracts the article's actual argument, then rewrites the paragraphs around that argument instead of merely swapping in synonyms.

Common changes include:

  • Turning fake questions into declarative statements
  • Removing empty setup and repetitive conclusions
  • Reordering paragraphs so that the core argument appears earlier
  • Keeping the outline, body headings, and section numbering in sync
  • Tightening titles, lists, tables, and Markdown formatting

4. Support Pre-Publication Checks

The repository includes a helper script:

python3 zu-article-polisher/scripts/check_article_style.py <markdown-file>
Enter fullscreen mode Exit fullscreen mode

The script only identifies potential issues; it does not rewrite the article automatically. It can check for:

  • Mismatches between the outline and body headings
  • Non-sequential section numbering
  • Fixed AI phrasing and formulaic structures
  • Inconsistent capitalization of technical terms
  • Overuse of bold text, blank-line issues, trailing whitespace, and other Markdown problems

It includes a large collection of common AI-generated sentence patterns for matching, which is the most effective approach. You cannot expect AI to reliably detect its own AI writing style.

When to Use It

Once the article's overall structure is mostly complete and you no longer need AI to substantially rewrite or generate its content, you can use this Skill to polish the entire article.

Project Link

Stars are welcome!!

Project: github.com/wwenj/zu-article-polisher-skill

Project: github.com/wwenj/zu-article-image-skill

Original Content Notice

This is an original article. If you republish it, please credit the author and link to the original article. The illustrations were generated with AI. Follow my WeChat Official Account for more articles.

AI Content Creation Self-Discipline Statement

AI Content Creation Self-Discipline Statement

Top comments (0)