writing-dna-skill: distilling an author's style into reusable Writing DNA
写作蒸馏器.skill|蒸馏复刻任意写作风格的 agent skill | Writing DNA Distiller - distill and recreate any writing style as an agent skill
At a glance
- What is it?
- writing-dna-skill is an agent skill that turns a corpus of at least 20 complete articles into layered style documents an agent re-reads before writing. It is MIT licensed, and the repository's own examples folder is format-only, not a quality benchmark.
- Who is it for?
- Adopt writing-dna-skill if you can assemble 20 or more complete articles from one author and want a checked, layered style context instead of a one-line imitation prompt. Do not adopt it for one-off ghostwriting, for short social posts, or for any use that impersonates the author or reuses copyrighted text without permission, which the README's usage boundaries explicitly rule out.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 26 days ago.
- What is it written in?
- GitHub does not report a main language for this repository.
Answers come from the project's GitHub data, last synced on September 17, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The problem writing-dna-skill solves, and who it is for
The README names the failure mode directly: people hand an agent a few sample articles and say "write in this style." The agent then guesses at surface tone. writing-dna-skill takes the opposite route. It asks the agent to analyse a batch of complete articles first and turn the style into rules that can be recorded, reused and checked, then write from those rules.
The intended users are narrow. Someone who wants to analyse the stable style of one account or author. Someone who wants to build a personal writing asset out of their own back catalogue. Someone comparing how different authors treat the same topic. And anyone who wants a steadier style context to feed an agent before drafting. It is not a general-purpose copywriting tool, and the README's usage boundaries say it is for study, analysis, style research and personal writing assets, not for impersonating an author, misleading readers or infringing copyright.
Six distillation layers and the files they produce
The mechanism is a fixed decomposition. The README splits style into six layers. L1 covers surface language: word frequency, sentence length, punctuation, rhetoric, habitual expressions, and it lands in 语言DNA.md. L2 covers article structure: opening hook, body architecture, how the piece turns, how it closes, landing in 文章结构模板.md. L3, L4 and L5 cover topic selection, material strategy and cognitive framework (worldview, value judgements, core assumptions, recurring propositions), and they all land in 写作视角与认知框架.md. L6 covers visual style: image strategy, layout, type hierarchy, colour, landing in 视觉风格指南.md.
The README compresses this to three questions. L1 and L2 answer how to write. L3 to L5 answer how to think. L6 answers how to present. It also states the failure of doing only one: language-only reproduction "reads similar but thinks differently," structure-only reproduction "frames similar but tone different," and skipping visual style makes illustrated content "text similar but visually different."
A full run ends with Writing-DNA.md, an integrated document the README describes as the most-used entry point for later style reproduction. The output layout is fixed:
作者或账号名称/
├── raw/ # 原始文章语料
├── _meta/ # 元数据标注
├── 语言DNA.md # L1 分析产物
├── 文章结构模板.md # L2 分析产物
├── 写作视角与认知框架.md # L3-L5 分析产物
├── 视觉风格指南.md # L6 分析产物
└── Writing-DNA.md # 最终整合文档One design point deserves attention: the skill separates the language of the conversation from the language of the product. A user can give instructions in Chinese and still get an English Writing DNA for an English newsletter. Chinese products use templates/author-corpus/zh/ and Chinese filenames; English products use templates/author-corpus/en/ and English filenames. When the user states a preference, that wins; otherwise the skill follows the main language of the corpus.
Running a distillation: corpus, prompt and the re-read step
The README recommends at least 20 complete articles, preferably .md or .txt, spread across different periods, topics and article types. It is explicit that examples/format-only/ only demonstrates directory format and does not represent real distillation quality, and that a handful of short pieces will not show the skill's ceiling.
The six-step flow is: collect raw articles into raw/ or raw-corpus/; build _meta/ with title, date, type, topic, hook, structure and source notes per article; analyse language DNA; extract structure templates; induce the cognitive framework; and, if the originals contain images or unusual layout, analyse visual style. Then the agent consolidates everything into Writing-DNA.md.
The quick-start instruction in the README is a single sentence to the agent:
请使用 writing-dna-skill 蒸馏分析这个目录里的所有文章。What you should see afterwards is the five markdown products listed above. The more interesting part is what happens before the next draft. Section 6 of SKILL.md makes pre-writing reading a hard step, not a suggestion: assign the writing task with enough context, have the agent re-read all four layered products plus Writing-DNA.md without skipping any, then have it read the five raw/ originals closest in genre and topic, filtered by article_type and topic_tags in _meta/ and taking the most recent when more than five match. The README's reason for reading originals is calibration, not sourcing: sentence breathing, how paragraphs connect, when a sudden short sentence appears.
Conflict priority is stated in order: the user's explicit instruction for this task, then the structure template matching the current genre, then language features and visual style, then the cognitive framework. Specific opinions and facts from the originals must not be copied into new articles. What is reproduced is the method, not the content.
The lieflat-less-ai-tone pass and where it can hurt
Distillation and AI-tone removal are, in the README's framing, two different problems. Distillation answers whether the text sounds like this author. AI tone answers whether it sounds like a machine. A style can be correct while the sentences still fall into "not A but B" constructions, numbered headings, or a paragraph opening with "sounds like...".
skills/lieflat-less-ai-tone/ ships in the same repository and installs with it. The README describes it as a whitelist rewriter: it only touches rules on its list, leaves unmatched sentences word for word, and does not restructure the article. Each rule has a locatable trigger, and the README reports a comparison of 300 AI outputs against 329 real articles behind the rule set, with the methodology and rejected assumptions in a separate repository.
The important constraint is the tie-break. When the distilled product conflicts with the AI-tone rules, the distilled product wins, because it reflects the target author's real habits. The README's example: if an author genuinely uses dashes, the generic rule should not delete them. This is a sensible ordering, but it also means the de-AI pass is only as good as the distillation. If the layered products are thin, the whitelist has nothing to defer to and will normalise the author's actual quirks away.
Usage is a two-part instruction:
请用 lieflat-less-ai-tone 的规则,检查并改写刚才那篇文章。
先读这个作者的语言DNA.md,冲突时以蒸馏产物为准。The README does not document rollback for the rewrite, and it does not describe how to audit which sentences a rule changed.
Where writing-dna-skill is the wrong tool
The corpus requirement is the first hard limit. Twenty complete articles from one author is a real collection job, and the README says to have the agent fetch them or gather them by hand. If you have three blog posts, this skill has nothing to work with, and the README warns against judging its ceiling from a small set of short pieces.
The second limit is the legal and ethical one, stated in the README's own boundaries. Open repositories should not contain unauthorised source corpora. You may ship directory templates, field templates, documentation and sample text you own the copyright to. Using the output to pass as the original author, to mislead readers, or to infringe copyright is outside the project's purpose. That is not a technical caveat; it removes a whole class of use cases.
The third limit is scope. The skill reproduces method, not content, so it will not help you produce a piece that makes the same argument as the source. It is also a poor fit for one-off ghostwriting where a single prompt and two examples would do, because the six-step flow and the mandatory re-read of four layered documents plus five originals cost more than the task is worth. And the README does not describe a way to measure whether a draft matches the target style beyond the self-check step, where the agent compares its output against 语言DNA.md, 文章结构模板.md and 写作视角与认知框架.md and rewrites. That check is run by the same model that wrote the draft.
How it differs from plain style prompts and from general writing assistants
The obvious alternative is a style prompt: paste several samples into the context and ask for imitation. The difference is where the work happens. A prompt puts the analysis inside the generation step, so the same context window has to infer the rules and apply them at once, and nothing survives the session. writing-dna-skill moves the analysis into a separate pass with named outputs on disk, so the rules persist, can be inspected, and can be re-read before every draft. The cost is a corpus and a multi-step run.
A second alternative is a general writing assistant or a built-in style feature, which typically adapts tone at the sentence level. The README's layering argues that tone is only L1, and that structure, topic logic, material strategy, worldview and visual presentation sit above it. Whether that layering is worth the overhead depends on the genre. For an essay-driven newsletter with a recognisable voice, it plausibly is. For product copy or a changelog, it is overkill.
A third comparison is worth naming because it ships in the same repository: lieflat-less-ai-tone addresses the opposite direction. It strips generic machine patterns rather than installing an author's patterns. Running both is the intended pipeline, and the README fixes the order of authority when they disagree.
Editorial conclusion
Adopt writing-dna-skill if you can assemble 20 or more complete articles from one author and want a checked, layered style context instead of a one-line imitation prompt. Do not adopt it for one-off ghostwriting, for short social posts, or for any use that impersonates the author or reuses copyrighted text without permission, which the README's usage boundaries explicitly rule out. Before committing, verify three things on your own corpus: that your files are .md or .txt and cover different periods and topics as the README asks, that the agent actually produces all four layered products plus Writing-DNA.md, and that a draft written from them reads like the source rather than like the model. The repository states its own examples/format-only directory is a directory-format demo, so it cannot tell you whether distillation works on your material.
Frequently asked questions
How many articles does writing-dna-skill need for a distillation?
The README recommends at least 20 complete articles, in .md or .txt, covering different periods, topics and article types. It also warns that a small set of short pieces will not show the skill's ceiling.
Does writing-dna-skill work for English articles as well as Chinese ones?
Yes. The skill separates the language of the conversation from the language of the output, using templates/author-corpus/zh/ for Chinese products and templates/author-corpus/en/ for English ones. If the user states a preference, that takes priority; otherwise the skill follows the main language of the corpus.
What files does writing-dna-skill produce?
A full distillation outputs 语言DNA.md for L1, 文章结构模板.md for L2, 写作视角与认知框架.md for L3 to L5, 视觉风格指南.md for L6, and Writing-DNA.md as the integrated document. Writing-DNA.md is the entry point the README recommends for later style reproduction.
Community notes