Agent skill

Blog Draft Workflow

by luongnv89 in luongnv89/claude-howto

Walks through writing a blog post from an idea and source material: research, brainstorming, outline approval, versioned drafts and optional git commits.

MITAuto-check passedWriting & Content

SKILL.md written in Chinese; this summary is our English description.

Install Blog Draft Workflow

skills CLI
$ npx skills add luongnv89/claude-howto --skill blog-draft -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install luongnv89/claude-howto blog-draft --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/luongnv89/claude-howto.git skills-src && mkdir -p .claude/skills && cp -r skills-src/zh/03-skills/blog-draft .claude/skills/blog-draft && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
blog-draft
GitHub stars
42k
Token cost
~1.1k tokens
SKILL.md length
264 words
Files
3
Skills in repo
25
Repo updated
First seen
Licence
MIT

At a glance

Walks through writing a blog post from an idea and source material: research, brainstorming, outline approval, versioned drafts and optional git commits.

  • Works in 3 steps: 使用以下格式生成文件夹名称:YYYY-MM-DD-short-topic-name → 创建文件夹结构 → 在继续前,先向用户确认文件夹已创建。
  • Turning an idea plus reference links into a first blog draft
  • SKILL.md covers 用户输入, 执行流程, 版本跟踪 and 输出文件结构, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

This Chinese-language workflow starts from a topic you provide, plus optional URLs, files, a target reader and a tone. The agent creates a dated folder under `blog-posts/` with a `resources/` subfolder, fetches or summarizes each source into its own markdown file, shows you the research summary, then brainstorms with questions about the main takeaway, points to stress, exclusions and target length (short at 500-800 words, medium at 1000-1500, long at 2000 or more).

Once you approve an outline, saved as `OUTLINE.md`, the agent writes the full draft to `draft-v0.1.md` following that structure, with an opening hook, clear headings and supporting evidence from the research. Every statistic or comparison needs an inline citation linked to a references section. In a git repository it commits and pushes the outline and each draft with `docs:` messages. It waits for your approval at marked steps, and a request to update an existing post jumps straight to the iteration step.

When your agent uses it

  • Turning an idea plus reference links into a first blog draft
  • Writing a researched post where every claim cites a source
  • Revising an existing draft through numbered versions

Example prompts

  • “Write a blog post on why small teams should adopt feature flags, using these two articles as sources.”
  • “Draft a post about moving from a monolith to microservices for a technical audience, in a relaxed tone.”
  • “Update the existing draft in blog-posts/ with the feedback I just gave you.”

Requirements

  • Web access to fetch source URLs
  • A git repository, only if you want the outline and drafts committed

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. 使用以下格式生成文件夹名称:YYYY-MM-DD-short-topic-name
  2. 创建文件夹结构
  3. 在继续前,先向用户确认文件夹已创建。

What it can do on your machine

Read from SKILL.md and the folder at commit 556af8d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Blog Draft Workflow loads about 1.1k tokens when it runs. Until then it costs about 21 tokens; SKILL.md has 264 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~21
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from luongnv89/claude-howto at commit 556af8d, republished under its MIT licence (© luongnv89). 264 words, ~1,057 tokens.

Download SKILL.mdSave it as .claude/skills/blog-draft/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
blog-draft
description
根据想法和资料撰写博客草稿。适用于用户想写博客、基于研究创建内容,或起草文章的场景。流程会引导你完成调研、头脑风暴、提纲编写和带版本控制的迭代撰写。

用户输入

text
$ARGUMENTS

在继续之前,你必须先考虑用户输入。用户应提供:

  • 想法/主题:博客文章的核心概念或主题
  • 资源:用于研究的 URL、文件或参考资料(可选,但推荐)
  • 目标读者:这篇博客是写给谁看的(可选)
  • 语气/风格:正式、轻松、技术向等(可选)

重要:如果用户是在请求更新一篇已有博客文章,请跳过步骤 0-8,直接从步骤 9 开始。先阅读现有草稿文件,再继续迭代流程。

执行流程

请按顺序执行以下步骤。不要跳步,也不要在未获得用户批准的情况下继续执行标明需要确认的步骤。

步骤 0:创建项目文件夹
  1. 使用以下格式生成文件夹名称:YYYY-MM-DD-short-topic-name

    • 使用今天的日期
    • 根据主题生成一个简短、适合 URL 的 slug(小写、连字符连接,最多 5 个词)
  2. 创建文件夹结构:

    text
    blog-posts/
    └── YYYY-MM-DD-short-topic-name/
        └── resources/
  3. 在继续前,先向用户确认文件夹已创建。

步骤 1:研究与资源收集
  1. 在博客文章目录中创建 resources/ 子文件夹

  2. 对于每个提供的资源:

    • URL:抓取关键内容并保存到 resources/ 下的 markdown 文件中
    • 文件:读取并在 resources/ 中做摘要
    • 主题:使用网络搜索收集最新信息
  3. 为每个资源在 resources/ 中创建摘要文件:

    • resources/source-1-[short-name].md
    • resources/source-2-[short-name].md
    • 以此类推
  4. 每个摘要都应包含:

    markdown
    # 来源:[标题/URL]
    
    ## 要点
    - 要点 1
    - 要点 2
    
    ## 相关引文/数据
    - 引文或统计 1
    - 引文或统计 2
    
    ## 与主题的关联
    简要说明其相关性
  5. 向用户展示研究摘要。

步骤 2:头脑风暴与澄清
  1. 基于想法和已研究的资源,展示:

    • 从研究中识别出的主要主题
    • 博客文章的可能切入角度
    • 应该覆盖的关键点
    • 仍需进一步澄清的信息缺口
  2. 提出澄清问题:

    • 你希望读者最终带走的核心结论是什么?
    • 研究中有没有哪些点是你希望重点强调的?
    • 目标长度是多少?(短:500-800 字,中:1000-1500 字,长:2000+ 字)
    • 有没有哪些内容你希望排除?
  3. 在继续之前,等待用户回复。

步骤 3:提出提纲
  1. 创建一个结构化提纲,包括:

    markdown
    # 博客文章提纲:[标题]
    
    ## 元信息
    - **目标读者**:[谁]
    - **语气**:[风格]
    - **目标长度**:[字数]
    - **核心结论**:[关键信息]
    
    ## 建议结构
    
    ### 开场/引子
    - 开场钩子思路
    - 背景铺垫
    - 论点陈述
    
    ### 第一部分:[标题]
    - 关键点 A
    - 关键点 B
    - 来自 [来源] 的支撑证据
    
    ### 第二部分:[标题]
    - 关键点 A
    - 关键点 B
    
    [继续列出所有部分...]
    
    ### 结论
    - 关键点总结
    - 行动号召或最终思考
    
    ## 需要引用的来源
    - 来源 1
    - 来源 2
  2. 向用户展示提纲,并请求批准或修改意见。

步骤 4:保存已批准的提纲
  1. 用户批准提纲后,将其保存为博客文章文件夹中的 OUTLINE.md。

  2. 确认提纲已保存。

步骤 5:提交提纲(如果在 git 仓库中)
  1. 检查当前目录是否为 git 仓库。

  2. 如果是:

    • 暂存新文件:博客文章文件夹、resources 和 OUTLINE.md
    • 使用如下提交信息创建 commit:docs: Add outline for blog post - [topic-name]
    • 推送到远程仓库
  3. 如果不是 git 仓库,则跳过此步骤并告知用户。

步骤 6:撰写草稿
  1. 基于已批准的提纲,撰写完整博客草稿。

  2. 严格按照 OUTLINE.md 的结构进行编写。

  3. 包含:

    • 有吸引力的引言和开场钩子
    • 清晰的章节标题
    • 来自研究的支撑证据和示例
    • 段落之间自然流畅的过渡
    • 强有力的结尾和核心收获
    • 引用:所有比较、统计数据和事实性陈述都必须引用原始来源
  4. 将草稿保存为博客文章文件夹中的 draft-v0.1.md。

  5. 格式:

    markdown
    # [博客文章标题]
    
    *[可选:副标题或标语]*
    
    [包含行内引用的完整正文...]
    
    ---
    
    ## 参考资料
    - [1] 来源 1 标题 - URL 或引用
    - [2] 来源 2 标题 - URL 或引用
    - [3] 来源 3 标题 - URL 或引用
  6. 引用要求:

    • 每个数据点、统计信息或比较都必须带有行内引用
    • 使用编号引用 [1]、[2] 等,或命名引用 [Source Name]
    • 在文末的参考资料部分链接这些引用
    • 示例:“研究表明,65% 的开发者更偏好 TypeScript [1]”
    • 示例:“React 在渲染速度上比 Vue 快 20% [React Benchmarks 2024]”
步骤 7:提交草稿(如果在 git 仓库中)
  1. 检查是否处于 git 仓库中。

  2. 如果是:

    • 暂存草稿文件
    • 使用如下提交信息创建 commit:docs: Add draft v0.1 for blog post - [topic-name]
    • 推送到远程仓库
  3. 如果不是 git 仓库,则跳过并告知用户。

步骤 8:向用户展示草稿以供审阅
  1. 向用户展示草稿内容。

  2. 询问反馈:

    • 整体印象如何?
    • 哪些部分需要扩展或压缩?
    • 是否需要调整语气?
    • 是否缺少关键信息?
    • 有没有具体编辑或重写建议?
  3. 等待用户回复。

步骤 9:迭代或定稿

如果用户要求修改:

  1. 记录所有修改请求
  2. 返回步骤 6,并做以下调整:
    • 将版本号递增(v0.2、v0.3 等)
    • 纳入所有反馈
    • 保存为 draft-v[X.Y].md
    • 重复步骤 7-8

如果用户批准:

  1. 确认最终草稿版本
  2. 如用户要求,可重命名为 final.md
  3. 总结博客文章创建过程:
    • 一共创建了多少个版本
    • 各版本之间的关键变化
    • 最终字数
    • 创建了哪些文件

版本跟踪

所有草稿都会以递增版本号保留:

  • draft-v0.1.md - 初始草稿
  • draft-v0.2.md - 第一轮反馈后
  • draft-v0.3.md - 第二轮反馈后
  • 以此类推

这可以跟踪博客文章的演变过程,并在需要时回退。

输出文件结构

text
blog-posts/
└── YYYY-MM-DD-topic-name/
    ├── resources/
    │   ├── source-1-name.md
    │   ├── source-2-name.md
    │   └── ...
    ├── OUTLINE.md
    ├── draft-v0.1.md
    ├── draft-v0.2.md(如果有迭代)
    └── draft-v0.3.md(如果还有更多迭代)

质量建议

  • 钩子:以问题、令人惊讶的事实或贴近读者的场景开头
  • 衔接:每一段都要自然连接到下一段
  • 证据:用研究数据支撑观点
  • 引用:以下内容务必引用来源:
    • 所有统计数据和数值(例如:“根据 [Source],75% 的……”)
    • 对产品、服务或方案的比较(例如:“X 的速度比 Y 快 2 倍 [Source]”)
    • 关于市场趋势、研究发现或基准测试的事实性陈述
    • 使用行内引用,格式为:[Source Name] 或 [Author, Year]
  • 语气:全程保持一致
  • 长度:尊重目标字数
  • 可读性:使用短段落,并在适当位置使用项目符号
  • CTA:以明确的行动号召或发人深省的问题收尾

备注

  • 始终在上述需要确认的节点等待用户批准
  • 保留所有草稿版本,方便追踪历史
  • 如果提供了 URL,使用网络搜索获取最新信息
  • 如果资源不足,询问用户补充,或建议进一步研究
  • 根据目标读者调整语气(技术、通用、商业等)

© luongnv89, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in zh/03-skills/blog-draft of luongnv89/claude-howto.

  • SKILL.md
  • templates/draft-template.md
  • templates/outline-template.md

Open the folder on GitHubat commit 556af8d

Compare with similar skills

Blog Draft Workflow next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Blog Draft Workflow compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Blog Draft Workflow this skillluongnv89/claude-howto42k—~1.1kAutomated safety check: PassMIT
Aboutsecurity Content Ingestionwgpsec/AboutSecurity1.8k—~1.4kAutomated safety check: PassNone
Khazix WeChat Article WriterKKKKhazix/khazix-skills21k1 repos~2.9kAutomated safety check: PassMIT
Figurevectorize-io/hindsight47k—~1.9kAutomated safety check: PassMIT
SepiaNanako0129/sepia3k—~3.6kAutomated safety check: PassMIT
Notion To Blogwasp-lang/wasp19k—~922Automated safety check: PassMIT

Similar skills

  • A skill your agent uses whenever the user asks to add, absorb, migrate, port, update, merge, compare, or extract security knowledge into the AboutSecurity repository from any external resource such…

    1.8k GitHub stars~1.4k tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Khazix WeChat Article Writer

    KKKKhazix/khazix-skills

    Writes long-form WeChat official account articles in the personal style of the Khazix account, from briefs, links, PDFs or rough notes, with a topic quality check.

    21k GitHub starsUsed in 1 repo~2.9k tokens
    Writing & ContentAuto-check passed
  • Figure

    vectorize-io/hindsight

    Draw an animated figure (boxes, arrows, moving data) as one self-contained SVG for a GitHub README, PR, issue or blog post.

    47k GitHub stars~1.9k tokensUpdated today
    Writing & ContentAuto-check passed
  • Sepia

    Nanako0129/sepia

    Make AI-generated writing read as human-written, in fiction and in professional prose.

    3k GitHub stars~3.6k tokensUpdated 3 days ago
    Writing & ContentAuto-check passed
  • Notion To Blog

    wasp-lang/wasp

    Transfer a blog post from Notion to the Wasp blog. An agent skill from wasp-lang/wasp.

    19k GitHub stars~922 tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Os Big Picture

    kharmanskyi/open-steps

    ALWAYS invoke this skill when the user asks where the project as a whole stands - "where are we", "what's the big picture", "what have we built", "what is in this project", "map the project", "what…

    1.3k GitHub stars~1.9k tokensUpdated 4 days ago
    Writing & ContentAuto-check passed

More from luongnv89/claude-howto

All 25 skills in this repo
  • Systematic Code Refactoring

    luongnv89/claude-howto

    Guides refactoring in phases based on Martin Fowler's method: research, test coverage check, planning and small tested steps, with your approval at each phase.

    42k GitHub stars~3k tokensUpdated 9 days ago
    Auto-check passed
  • Code Refactoring Workflow

    luongnv89/claude-howto

    Guides systematic, test-backed refactoring in the style of Martin Fowler, moving through research, planning and small incremental changes with your approval at each phase.

    42k GitHub stars~3.1k tokensUpdated 9 days ago
    Auto-check passed
  • Blog Post Drafting

    luongnv89/claude-howto

    Guides drafting a blog post from an idea and optional source material: research, brainstorming, outlining and version-tracked drafts, with user approval at each step.

    42k GitHub stars~2.1k tokensUpdated 9 days ago
    Auto-check passed
  • Brand Voice Guide

    luongnv89/claude-howto

    Ensure all communication matches brand voice and tone guidelines. Use when creating marketing copy, customer communications, public-facing content, or when…

    42k GitHub stars~609 tokensUpdated 9 days ago
    Auto-check passed
  • Code Review Specialist

    luongnv89/claude-howto

    Reviews code for security, performance, quality and maintainability, using a checklist, a finding template and two metrics scripts.

    42k GitHub stars~764 tokensUpdated 9 days ago
    Auto-check passed
  • Claude Code Skill Assessment

    luongnv89/claude-howto

    Runs a quick or deep quiz on Claude Code skills, scores ten feature areas and generates a personalized learning path with prioritized next steps.

    42k GitHub stars~5.5k tokensUpdated 9 days ago
    Auto-check passed

Works with

Questions about Blog Draft Workflow

What does Blog Draft Workflow do?

Walks through writing a blog post from an idea and source material: research, brainstorming, outline approval, versioned drafts and optional git commits. This Chinese-language workflow starts from a topic you provide, plus optional URLs, files, a target reader and a tone. The agent creates a dated folder under `blog-posts/` with a `resources/` subfolder, fetches or summarizes each source into its own markdown file, shows you the research summary, then brainstorms with questions about the main takeaway, points to stress, exclusions and target length (short at 500-800 words, medium at 1000-1500, long at 2000 or more).

When should I use Blog Draft Workflow?

Blog Draft Workflow fits situations like: turning an idea plus reference links into a first blog draft; writing a researched post where every claim cites a source; revising an existing draft through numbered versions.

How do I install Blog Draft Workflow in Claude Code?

Run `npx skills add luongnv89/claude-howto --skill blog-draft -a claude-code`. Or copy the skill folder (zh/03-skills/blog-draft in luongnv89/claude-howto) into .claude/skills/blog-draft in your project. Claude Code loads it when a task matches its description.

How do I install Blog Draft Workflow in Codex?

Run `npx skills add luongnv89/claude-howto --skill blog-draft -a codex`. Or copy the skill folder (zh/03-skills/blog-draft in luongnv89/claude-howto) into .agents/skills/blog-draft in your project. Codex loads it when a task matches its description.

Can I use Blog Draft Workflow in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add luongnv89/claude-howto --skill blog-draft -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/blog-draft, .gemini/skills/blog-draft, .github/skills/blog-draft and .opencode/skills/blog-draft in your project.

What does Blog Draft Workflow need to run?

SKILL.md names no scripts, command-line tools or credentials: Blog Draft Workflow is instructions for the agent only. Our summary lists: Web access to fetch source URLs; A git repository, only if you want the outline and drafts committed.

Does Blog Draft Workflow access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Blog Draft Workflow safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Blog Draft Workflow use?

Blog Draft Workflow is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Blog Draft Workflow use?

About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Blog Draft Workflow?

Skills that share tags, products or a category with Blog Draft Workflow: Aboutsecurity Content Ingestion (wgpsec/AboutSecurity, 1.8k stars), Khazix WeChat Article Writer (KKKKhazix/khazix-skills, 21k stars), Figure (vectorize-io/hindsight, 47k stars) and Sepia (Nanako0129/sepia, 3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Blog Draft Workflow?

luongnv89 (a GitHub user) maintains it in luongnv89/claude-howto, which has 41,779 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on September 30, 2026.

Source: luongnv89/claude-howto on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.