A Claude Code Skill that turns any material, topic, or product into publish-ready, illustrated, SEO + GEO-optimized articles — automated end-to-end, in Markdown + Word, with multi-platform copy (website / LinkedIn / X).
The human only reviews, confirms, and publishes. The AI does the rest: filing, topic selection, scheduling, drafting, figures, fact-checking, optimization, export, and multi-platform repurposing.
一句话:任意素材 → 自动建档、选题、排期、创作、配图、校准、生成多平台文案。人只负责审核、确认、发布。
📖 New here? Read the User Guide — English · 中文. Install, your first article in 5 minutes, what you (the human) do, a real worked example, and troubleshooting.
Writing a good article is actually a standardizable assembly line: each station has a defined input, output, and pass/fail gate — so it can be automated, while humans guard the gates.
- Found + trusted — content exists to give the most complete, credible, machine-parseable answer to one intent.
- SEO + GEO together — rank in Google and get cited by ChatGPT / Perplexity / AI Overviews. Shared optimum: every heading is an independently answerable question.
- Evidence before sentences — every claim is backed by a primary source before it's written.
- Single-piece flow — one article = one self-contained folder.
- PDCA — Plan (topic/schedule) → Do (create) → Check (QA) → Act (publish + monitor + refresh). Each loop feeds the next.
P0 product profile → P1 topic → P2 evidence ledger★ → P3 angle → P4 outline → P5 draft
→ P6 visuals → P7 SEO/GEO → P8 QA★ → P9 export MD+Word → P10 publish → P11 monitor
★ = hard gate (human confirm / auto-block).
This is a Claude Code skill. Drop it into your skills directory:
# Option A: clone into your project/user skills folder
git clone https://github.com/weitzu-com/ai-article-factory \
~/.claude/skills/ai-article-factory
# Option B: via the skills CLI (Claude Code & others)
npx -y skills@latest add weitzu-com/ai-article-factoryA plain Markdown draft works with zero dependencies. Add tools only for the extras:
| Want | Install | If missing |
|---|---|---|
| Word (.docx) export | brew install pandoc |
skip — you still get Markdown |
| Flow/structure figures | npm install -g @mermaid-js/mermaid-cli |
render-figures.sh auto-skips .mmd |
| Data figures | python3 -m pip install matplotlib numpy |
skip — use a Markdown table instead |
First-time on a clean Mac you need Homebrew (for pandoc) and Node (for mmdc). The cover image is generated by you with any image tool and dropped into assets/img/cover.png — a placeholder is used until then, so it never blocks.
This is a suite: the orchestrator + six first-party worker skills under skills/ that run the whole core pipeline standalone:
| Stage | Skill | Owns |
|---|---|---|
| P1–P2 | article-research |
topic brief · intent/SERP · content gap · evidence ledger |
| P5 | article-write |
answer-first draft · anti-AI-slop · evidence tagging |
| P6 | article-visuals |
Mermaid + matplotlib figures + cover (图文并茂) |
| P7 | article-optimize |
SEO + GEO + JSON-LD schema + internal links |
| P8 | article-qa |
CORE-EEAT scoring + fact reconciliation (ship gate) |
| P9 | article-export |
MD → Word (.docx), images embedded |
Optional enhancement (not required): aaron-he-zhu/seo-geo-claude-skills + inhouseseo/superseo-skills add deeper research data and scoring.
npx -y skills@latest add aaron-he-zhu/seo-geo-claude-skills # optional
npx -y skills@latest add inhouseseo/superseo-skills # optionalcd into your own project folder first (so output doesn't land inside the skill install), then just say what you want — the skill auto-triggers and does the rest:
"Write an article about <product> for my website."
"Scan ~/Downloads/research/ and give me 3 topic ideas, then write the best one."
"用这个文件夹里的资料,写一篇面向采购经理的选型指南。"
What happens (you only review, confirm, publish):
your sentence / materials
→ AI auto-files + drafts a blueprint (confirm ①, optional)
→ AI writes the draft (every fact sourced)
→ AI self-checks + figures + export (confirm ②: glance & approve)
→ 文章.md + 文章.docx (ready to publish)
Defaults stay out of your way: AI infers the profile (no forms to fill), cover uses a placeholder, only the website version is produced unless you ask for LinkedIn/X. Want the full 11-stage control or multi-platform copy? Just say so.
CLI (optional, for power users):
cd ~/my-content-project # output lands here
bash <skill>/scripts/new-article.sh my-topic-slug # scaffold articles/<date-slug>/
bash <skill>/scripts/render-figures.sh articles/<date-slug>/
bash <skill>/scripts/export.sh articles/<date-slug>/ my-topic-slugarticles/<YYYY-MM-DD-slug>/
├── 00-产品档案.md 01-选题brief.md 02-证据台账.md★ 03-主题角度.md 04-大纲.md 05-初稿.md
├── assets/{src,img}/ + 图清单.md
├── 06-审核报告.md★
├── <slug>-final.md (illustrated) · <slug>-final.docx (Word)
├── <slug>-wp.md (website) · <slug>-linkedin.md · <slug>-x.md
ai-article-factory/
├── SKILL.md # orchestrator (drives the pipeline + the worker skills)
├── AGENTS.md # ← agent guide (single source of truth for any AI agent)
├── CLAUDE.md · GEMINI.md · GROK.md # thin per-tool pointers to AGENTS.md
├── skills/ # ← bundled first-party worker skills (self-contained suite)
│ ├── article-research/ article-write/ article-visuals/
│ └── article-optimize/ article-qa/ article-export/
├── scripts/ # figlib.py · render-figures.sh · export.sh · new-article.sh
├── templates/ # article project template + brand reference.docx
├── references/ # on-demand detail: pipeline, materials, visuals, multi-platform, publishing, skills+MCP, PDCA
├── tests/ # harness.sh (unit stress) + e2e-smoke.sh (end-to-end pipeline gate)
├── LICENSE · NOTICE # Apache-2.0 + attribution
- Bundled worker skills (first-party, self-contained):
article-research·article-write·article-visuals·article-optimize·article-qa·article-export. - MCP: filesystem (materials from any path), web fetch/search, Google Drive, Notion, WordPress.
- Tools: pandoc (Word), mermaid-cli + matplotlib (figures).
- Claude Code:
/schedule&/loop(automation), hooks (evidence gate), subagents (independent QA). - Optional: the SEO/GEO companion packs for deeper research/scoring.
See references/ and each skills/*/SKILL.md for full detail.
render-figures.sh executes the *.py / *.mmd figure sources under an article's assets/src/, and export.sh runs pandoc on its Markdown. These are your files by design — don't run the scripts on an untrusted article folder you didn't create. Inputs are otherwise hardened: the slug and date args are strictly validated (no spaces/unicode/newlines/path-traversal), and scripts quote all variables.
Apache-2.0 · see NOTICE for attribution. The worker skills are original, concise reimplementations distilled from the Apache-2.0 SEO/GEO Claude skill packs.