Skip to content

Repository files navigation

Awesome SEO Writing Skill

Created by Flaq.ai — a comprehensive, all-in-one Agentic API solution that gives AI agents and production applications unified access to advanced image, video, and LLM models.

This writing skill distills nearly two years of hands-on SEO writing, content production, fact-checking, image packaging, and publishing experience. It also incorporates useful community ideas, especially Zimu's SEO audit workflow and the reader-focused humanization approach documented by blader/humanizer.

References and acknowledgements:


English 简体中文 繁體中文 日本語 한국어 ไทย Tiếng Việt Bahasa Indonesia Español Français Deutsch Italiano Português Русский العربية हिन्दी Türkçe Nederlands Polski


What This Skill Does

Awesome SEO Writing Skill is a reusable workflow for AI coding agents such as Codex and Claude Code. It turns a content request into a structured process covering the task brief, outline, writing, fact-checking, SEO audit, image generation, and file delivery.

  • Writes SEO-focused how-to articles, comparisons, listicles, and explainers.
  • Aligns the title, introduction, headings, FAQ, conclusion, and metadata with one search intent.
  • Checks product features, prices, dates, statistics, policies, and comparison claims.
  • Separates deterministic SEO checks from semantic editorial judgment.
  • Humanizes the audit-corrected draft while preserving verified facts, search intent, citations, code, links, and the author's intended voice.
  • Produces 16:9 article images and uses local Markdown paths by default.
  • Optionally compresses and uploads images to Cloudflare R2 when local configuration exists.
  • Includes a dedicated linkedin-writer workflow for LinkedIn search-led topic discovery, professional thought leadership, native long-form SEO settings, discussion design, auditing, and publishing packages.
  • Includes a dedicated medium-writer workflow for Medium Topic research, publication matching, author-led long-form storytelling, responsible AI disclosure, editorial review, and publishing packages.
  • Includes a dedicated wechat-writer workflow for Chinese WeChat Official Account topics, source-led writing, mobile readability, style calibration, editorial review, and publish-ready packaging.

Design Principles

1. Search intent before keyword density

The article must answer why the reader searched. The title, first 100 words, sections, FAQ, and conclusion should solve the same core problem instead of repeating an exact keyword.

2. Outline before body copy

The workflow starts with a task card of no more than ten lines, followed by title selection and an outline. Even one-shot article requests internally follow task card -> outline -> draft to reduce drift and repetition.

3. Facts and opinions stay separate

Dates, prices, product capabilities, policies, statistics, and comparative claims require evidence. Recommendations are editorial judgment. Unverified claims should be cited, softened, or removed rather than invented for SEO completeness.

4. Audit-driven improvement

The skill checks measurable items such as title length, keyword position, H1 count, FAQ presence, and metadata before evaluating intent, depth, credibility, and prose quality. Factual risks and high-impact issues are fixed first.

5. Humanize after the audit, then verify again

Once factual and SEO issues are fixed, the workflow runs a dedicated humanization pass inspired by blader/humanizer. It looks for clusters of mechanical writing such as inflated significance, promotional language, vague attribution, repetitive transitions, forced symmetry, uniform rhythm, generic conclusions, and chatbot artifacts. It does not invent personal experience or promise to bypass AI detectors. Any changed facts, keywords, metadata, links, code, or image paths are rechecked before delivery.

6. Files are the primary deliverable

General SEO articles live under writer/output/<article-slug>/. Platform-specific skills use isolated output directories: LinkedIn packages live under writer/linkedin-writer/output/<article-slug>/, and Medium packages live under writer/medium-writer/output/<story-slug>/. The article, audit, images, and optional upload manifest stay together for publishing, review, and handoff.

7. Local images first, R2 as progressive enhancement

Every article starts with portable local references:

![AI video workflow](./section-01-16x9.png)

The skill uploads images only when writer/config/r2.config.json exists and is valid. Without that file, the local article remains a complete deliverable: no credentials are requested and the writing task does not fail.

Repository Structure

.
├── README.md
├── README_*.md
└── writer/
    ├── SKILL.md
    ├── medium-writer/
    │   ├── SKILL.md
    │   ├── references/
    │   │   ├── medium-article-template.md
    │   │   ├── medium-review-rubric.md
    │   │   └── medium-topic-research.md
    │   ├── scripts/
    │   │   └── audit-medium-markdown.mjs
    │   └── output/  # Generated Medium story packages; Git-ignored
    ├── linkedin-writer/
    │   ├── SKILL.md
    │   ├── references/
    │   │   ├── linkedin-article-template.md
    │   │   ├── linkedin-business-depth-and-humanization.md
    │   │   ├── linkedin-review-rubric.md
    │   │   └── linkedin-topic-research.md
    │   ├── scripts/
    │   │   └── audit-linkedin-markdown.mjs
    │   └── output/  # Generated LinkedIn article packages; Git-ignored
    ├── wechat-writer/
    │   ├── SKILL.md
    │   ├── profile/
    │   │   └── style-profile.example.md
    │   ├── references/
    │   │   ├── frameworks-and-hooks.md
    │   │   ├── mobile-writing-and-packaging.md
    │   │   ├── wechat-brief-and-evidence.md
    │   │   └── wechat-review-rubric.md
    │   └── scripts/
    │       └── audit-wechat-markdown.mjs
    ├── config/
    │   └── r2.config.example.json
    ├── references/
    │   ├── fact-check-and-style.md
    │   ├── humanization.md
    │   ├── output-packaging.md
    │   ├── r2-image-upload.md
    │   ├── r2-security.md
    │   ├── seo-article-template.md
    │   └── seo-audit-checklist.md
    ├── scripts/
    │   └── upload-r2.mjs
    └── output/
        └── <article-slug>/
            ├── article.md
            ├── seo-audit.md
            ├── hero-16x9.png
            └── image-urls.json  # Created only after a successful R2 upload

How to Use

Copy the writer/ directory into the root of your target project, then explicitly ask your agent to use it:

Use the writer skill to create an English how-to article about
"AI music detector" for YouTube creators.

Main keyword: AI music detector
Supporting keywords: AI-generated music, Content ID, music copyright
Length: 1,200-1,500 words
Requirements: fact-checking, three 16:9 images, SEO audit, and file output.

The agent should read writer/SKILL.md first and load only the references needed for the task:

  • Complete article or reusable prompt: writer/references/seo-article-template.md
  • SEO audit and optimization: writer/references/seo-audit-checklist.md
  • Fact-heavy writing and comparisons: writer/references/fact-check-and-style.md
  • Post-audit humanization: writer/references/humanization.md
  • File and image packaging: writer/references/output-packaging.md
  • Optional R2 upload: writer/references/r2-image-upload.md
  • Credential safety: writer/references/r2-security.md
  • LinkedIn Article and newsletter workflow: writer/linkedin-writer/SKILL.md
  • LinkedIn business-depth research and final humanization: writer/linkedin-writer/references/linkedin-business-depth-and-humanization.md
  • Medium long-form and publication workflow: writer/medium-writer/SKILL.md
  • WeChat Official Account workflow: writer/wechat-writer/SKILL.md

Standard Workflow

  1. Infer or create the article task card.
  2. Generate and select the SEO title.
  3. Build the outline and section notes.
  4. Write the Markdown article.
  5. Generate 16:9 images and insert local relative paths.
  6. Verify current and high-risk claims.
  7. Run the SEO audit and fix high-priority findings.
  8. Humanize the corrected draft and run the post-humanization integrity check.
  9. Save everything under writer/output/<article-slug>/.
  10. Upload images only if valid local R2 configuration exists.
  11. Re-audit changed sections and deliver exact file paths.

Optional Cloudflare R2 Configuration

No cloud configuration is required. To enable R2 uploads:

cp writer/config/r2.config.example.json writer/config/r2.config.json

Fill in the ignored local file, then run:

node writer/scripts/upload-r2.mjs \
  --file writer/output/<article-slug>/hero-16x9.png \
  --article writer/output/<article-slug>/article.md \
  --manifest writer/output/<article-slug>/image-urls.json \
  --seoName "AI music detector hero" \
  --keyword "AI music detector" \
  --alt "AI music detector workflow hero image"

Behavior:

  • Valid default config: compress and upload the image, update the article URL, and write image-urls.json.
  • Missing default config: return skipped: true without compressing, uploading, or editing the article.
  • Missing or invalid explicit --config <path>: fail with a clear configuration error.
  • The original local image is always retained.

Use --dryRun before the first upload to preview the object key and public URL.

Output Contract

A normal article package contains at least:

writer/output/<article-slug>/article.md
writer/output/<article-slug>/hero-16x9.png

It may also contain seo-audit.md, section images, compressed *-r2.webp copies, and image-urls.json after successful uploads.

The article should use one H1, useful H2/H3 sections, an FAQ, a conclusion, and an SEO meta pack containing SEO Title, Excerpt, Meta Description, and Tags.

LinkedIn Writer

Use writer/linkedin-writer/SKILL.md for LinkedIn Articles, newsletter editions, LinkedIn-native thought leadership, B2B long-form content, and search-led topic planning.

The LinkedIn workflow adds platform-specific safeguards and outputs:

  • a two-surface topic-research pass combining LinkedIn search with Google site:linkedin.com discovery across public Posts, Articles/Pulse pages, newsletters, and Company material;
  • a query/evidence log that keeps Google snippets, creator conversations, practitioner experience, vendor claims, and verified facts separate;
  • a refreshable 2026 seed map covering AI-enabled work, leadership, skills-first hiring, career development, business growth, B2B thought leadership, governance, and human capabilities;
  • a professional task card defining the reader's role, work situation, decision, thesis, expertise basis, and discussion tension;
  • a business insight map covering the decision trigger, buying group, economics, implementation, measurement, risks, scenarios, and next action;
  • a claim-source ledger for current data, product claims, platform rules, and commercial disclosure;
  • native article structures for practitioner playbooks, decision guides, change analysis, leadership memos, career guides, and evidence-led points of view;
  • LinkedIn SEO settings with a maximum 60-character SEO title and a 140-160-character SEO description target;
  • a separate publishing pack covering profile/Page voice, Article/newsletter choice, cover, feed commentary, hashtags, mentions, disclosure, and measurement;
  • an eight-dimension editorial gate, a LinkedIn-specific final humanization/去 AI 化 pass, and deterministic warnings for mechanical style clusters and thin business context.

All generated LinkedIn files are isolated under writer/linkedin-writer/output/<article-slug>/, rather than the parent writer's general writer/output/ directory.

Example:

Use the linkedin-writer skill to create an English LinkedIn Article about
how product leaders should evaluate AI agents before production.

Audience: B2B SaaS product leaders
Requirements: refresh LinkedIn topic signals, use Google to inspect public
LinkedIn conversations, verify current claims, develop stakeholder/economic/
implementation context, include a decision framework and one counterargument,
run final LinkedIn humanization, and prepare the complete local package.
Do not publish.

Run the mechanical audit with:

node writer/linkedin-writer/scripts/audit-linkedin-markdown.mjs \
  writer/linkedin-writer/output/<article-slug>/article-linkedin.md \
  --keyword "<primary topic phrase>"

The script validates deterministic structure, packaging, mechanical-style clusters, and common business-depth signals only. It does not determine human or AI authorship, verify facts or originality, confirm professional authority or publication, predict performance, or guarantee an AI-detector result.

Medium Writer

Use writer/medium-writer/SKILL.md for Medium stories, publication submissions, field notes, tutorials, essays, explainers, reviews, and evidence-led opinion pieces. It treats Medium as a reader network and editorial ecosystem rather than a generic SEO syndication endpoint.

The Medium workflow adds:

  • a refreshable Topic radar using Medium search, Topic pages, recent stories, publications, external search demand, and adjacent community signals without inventing search volume;
  • a dated 2026 seed map spanning applied AI, data science, software engineering, product and UX, careers, leadership, entrepreneurship, self-improvement, writing, science, climate, society, and ethics;
  • a Medium Story Brief that records the reader transformation, author reason, original contribution, evidence plan, primary Topic, publication fit, language, canonical choice, and AI-assistance state;
  • up to five relevant Medium Topics selected by reader fit instead of keyword repetition, plus a publication scorecard based on current rules and recent-story evidence;
  • native long-form structures for lived-experience essays, reported explainers, tutorials, field notes, arguments, case studies, and reflective reviews;
  • selective imagery: no forced image after every heading, with rights, credit, alt text, and AI-image captions recorded when applicable;
  • an explicit authorship gate: fabricated experience is blocked, material generated prose is disclosed according to current Medium policy, and primarily AI-generated writing is not presented as paywall-eligible;
  • a separate publishing pack for title, subtitle, preview, cover, Topics, publication status, canonical setting, disclosure, distribution state, and post-publication learning;
  • a nine-dimension editorial rubric and a deterministic Markdown audit script.

All generated Medium files are isolated under writer/medium-writer/output/<story-slug>/, rather than the parent writer's general writer/output/ directory.

Example:

Use the medium-writer skill to create an English Medium story about what
small product teams learn when evaluating AI agents beyond the demo.

Audience: product builders and engineering leaders
Requirements: refresh current Medium Topics and publication candidates,
verify current claims, use only author-confirmed experience, prepare the
complete local Medium publishing package, and do not publish.

Run the mechanical audit with:

node writer/medium-writer/scripts/audit-medium-markdown.mjs \
  writer/medium-writer/output/<story-slug>/article-medium.md \
  --pack writer/medium-writer/output/<story-slug>/medium-publishing-pack.md \
  --topic "<primary Medium Topic>"

Add --ai-assisted when generated prose remains in the final story and --ai-images when AI-generated or AI-assisted images are used. The script checks deterministic structure, disclosure placement, image captions, Topics, and publishing-pack fields. It cannot verify facts, originality, authorship, rights, publication acceptance, paywall eligibility, or distribution outcomes.

WeChat Writer

Use writer/wechat-writer/SKILL.md for Chinese WeChat Official Account articles, topic planning, title and digest creation, source-led drafting, article review, style calibration, mobile-first editing, and local publishing packages.

The WeChat workflow adds safeguards that are not part of a normal SEO draft:

  • a brief that records the reader problem, thesis, added value, counterargument, boundaries, and allowed personal material;
  • a claim-source ledger that separates facts, inference, opinion, and user-provided experience;
  • seven article frameworks instead of one generic content template;
  • a five-dimension editorial gate covering accuracy, viewpoint, usefulness, voice, and readability;
  • separate draft.md and article.md files so an unreviewed draft cannot be mistaken for final copy;
  • optional style learning where a single edit remains a candidate rule until repeated or confirmed;
  • a deterministic Markdown audit for headings, digest, mobile paragraph length, local image paths, source signals, generic phrases, and personal-event provenance.

Example:

Use the wechat-writer skill to create a Chinese WeChat Official Account article
about how small AI teams should evaluate image-generation APIs.

Audience: AI product founders
Article type: comparison and decision guide
Requirements: current source verification, a claim ledger, two revision passes,
a mobile-first final article, and a local image plan. Do not publish.

Run the mechanical audit with:

node writer/wechat-writer/scripts/audit-wechat-markdown.mjs \
  writer/output/<article-slug>/article.md \
  --keyword "<core topic>"

The script reports deterministic signals only. It does not verify facts, originality, authorship, or editorial quality.

Security

  • Never commit writer/config/r2.config.json.
  • Never include R2 credentials in prompts, articles, audits, manifests, logs, screenshots, or final responses.
  • Do not automatically search for or download remote credential files.
  • Prefer a bucket-scoped R2 token with the minimum required permissions.
  • Rotate credentials immediately if they appear in chat, Git history, logs, or screenshots.

Related Skill Projects

About Flaq.ai

Flaq.ai provides unified API access to image, video, music, and language models for AI agents and production applications. The Flaq AI team maintains this repository as an open-source resource for practical, verifiable, and reusable content workflows. Model availability, capabilities, and pricing can change, so verify current details on the official site before publishing time-sensitive claims.

More Prompt Projects from Flaq AI

The following public, non-archived prompt libraries were verified from the Flaq AI GitHub organization:

Project Focus
Awesome MiniMax H3 Video Prompts Production-oriented audiovisual prompts and MiniMax H3 workflows
Awesome Seedance 2.5 Prompts Seedance 2.5 video prompts for marketing, social, cinematic, UGC, and advertising use cases
Awesome Qwen Image 3 Prompts Multilingual Qwen Image 3 prompt library with visual examples
Awesome Wan 3.0 Prompts Wan 3.0 video prompt patterns and creative workflows
Awesome FLUX 3 Prompts FLUX 3 video prompts for commercial and creative production

License

See LICENSE.

Flaq.ai Affiliate Program

Flaq.ai now offers an affiliate program for developers and creators. After registering, you can share your unique referral link, recommend Flaq.ai services, and earn commissions on eligible orders from referred users. Join the Flaq.ai Affiliate Program and review the official page for current commission rates and program rules.

About

Share the awesome skills for SEO Writing. All the skills are developed by Flaq AI Team

Topics

Resources

Stars

38 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages