blog-writer

为张向阳(Astral Wave)的个人博客 astralwaveorg 生成高质量技术博客文章。当用户说"写博客xxx"、"帮我写一篇xxx"、"引用消息写成博客"、"总结今天聊天",或者 cron 触发每日聊天总结时,使用此技能。文章风格必须模拟作者本人:用工程师第一人称视角,诚实直接,有踩坑说踩坑,读起来像同事之间的经验分享,而不是翻译官方文档。绝不出现"非常优秀""极其强大"等废话词汇。目标是让读者感觉这是技术大牛写的,不是"AI 生成的"。

3,891 stars

Best use case

blog-writer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

为张向阳(Astral Wave)的个人博客 astralwaveorg 生成高质量技术博客文章。当用户说"写博客xxx"、"帮我写一篇xxx"、"引用消息写成博客"、"总结今天聊天",或者 cron 触发每日聊天总结时,使用此技能。文章风格必须模拟作者本人:用工程师第一人称视角,诚实直接,有踩坑说踩坑,读起来像同事之间的经验分享,而不是翻译官方文档。绝不出现"非常优秀""极其强大"等废话词汇。目标是让读者感觉这是技术大牛写的,不是"AI 生成的"。

Teams using blog-writer should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/astralwave-blog/SKILL.md --create-dirs "https://raw.githubusercontent.com/openclaw/skills/main/skills/astralwaveorg/astralwave-blog/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/astralwave-blog/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How blog-writer Compares

Feature / Agentblog-writerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

为张向阳(Astral Wave)的个人博客 astralwaveorg 生成高质量技术博客文章。当用户说"写博客xxx"、"帮我写一篇xxx"、"引用消息写成博客"、"总结今天聊天",或者 cron 触发每日聊天总结时,使用此技能。文章风格必须模拟作者本人:用工程师第一人称视角,诚实直接,有踩坑说踩坑,读起来像同事之间的经验分享,而不是翻译官方文档。绝不出现"非常优秀""极其强大"等废话词汇。目标是让读者感觉这是技术大牛写的,不是"AI 生成的"。

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Blog Writer

自动生成张向阳个人博客(astralwaveorg)的技能。

## 两种工作模式

### 模式 A:搜索生成(主动写博客)

**触发词**:
- "写博客 XXX"
- "帮我写一篇 XXX"
- "把 XXX 写成博客"
- "引用消息写成博客"
- "这个话题写一篇"

**流程**:

1. **读取风格指南** → 先读 `references/style.md`,不要跳过
2. **解析诉求** → 提取技术关键词、判断话题分类(ai/devops/frontend/backend/tools/arch/db)
3. **搜索资料** → `web_search` 至少 5 篇
   - 优先来源:官方文档 / GitHub / 知名技术博客(掘金、CSDN、InfoQ)
   - 不采信:个人随手笔记、无来源文章、低质量论坛回复
   - 中英文各一半
4. **抓取核心内容** → `web_fetch` 2-3 篇最相关的文章,提取关键数据、代码示例、实测数字
5. **生成 front matter** → 用 `scripts/new_post.py`,自动分配 topic,随机时间 19:00-23:59:59
6. **生成正文** → 严格按 `references/style.md` 风格写作,字数 2500-7000
7. **写入文件** → 写入 `source/_posts/`
8. **质量自查** → 逐项过质量清单(见下文)
9. **commit** → 用 scripts/commit_msg.py 生成 message,执行 git add + commit,格式:
   - 文章类:`post: <标题>`
   - 功能类:`feat: <功能>`
   - 不 push,等用户确认后再部署
10. **通知用户** → Telegram 发送 `✅ [文章标题]`,简洁不冗余

### 模式 B:聊天总结(定时写博客)

**触发**:每日 23:45 cron

**流程**:

1. **读取聊天记录** → 用 `sessions_history` 读取当天所有 session
2. **提取话题** → 
   a. 用 `sessions_history` API 读取当天所有 session 的消息
   b. 将消息 JSON 通过 `exec` 调用 `scripts/extract_topics.py`,stdin 传入消息列表 JSON
   c. 解析 stdout 的 JSON 输出,得到 2-3 个核心话题及其上下文摘要
3. **生成文章** → 判断话题关联度:
   - 话题关联紧密(同一个技术主题的不同维度)→ 合并为一篇深度长文
   - 话题相对独立 → 每话题独立成篇
   - 最多 3 篇(2-3 个话题)
4. **写作** → 严格按 `references/style.md`,特别注意第一人称 + 判断力语气
5. **随机日期** → 当天 19:00-23:59:59 随机时间戳
6. **写入 + commit** → 用 `scripts/commit_msg.py` 生成 message(`post: <标题>`),执行 git add + commit,不 push
7. **Telegram 通知** → 每篇一条 `✅ [文章标题]`

## 话题分类速查

| 话题 | categories | tags 典型值 |
|------|-----------|------------|
| ai | AI、LLM | OpenAI、Claude、LLM、MCP |
| devops | 运维、DevOps | Docker、Nginx、Linux、CI/CD |
| frontend | 前端 | TypeScript、Vue、React |
| backend | 后端 | Java、Python、API |
| tools | 工具 | CLI、MCP、Cursor |
| arch | 架构 | 微服务、分布式 |
| db | 数据库 | Redis、MySQL、SQLite |

## 文章质量检查清单

生成后逐项确认:

- [ ] 读完了 `references/style.md` 才动笔
- [ ] 语气是第一人身称,不是"开发者应该..."
- [ ] 开头有背景:为什么做这事,当时怎么想的,有过什么犹豫
- [ ] 有方案对比表格(适用时),判断理由具体,不是模糊词
- [ ] 代码块有中文注释,注释说 why 不说 what
- [ ] 结尾有实测结论:好不好、哪里坑、达到预期了吗
- [ ] 没有"非常""极其""相当"等废话副词
- [ ] description 是精准一句话,不夸张
- [ ] 字数 2500-7000(不够就补充决策过程)
- [ ] front matter 的 topic/date/categories/tags 完整正确
- [ ] 读起来像人写的,不是"以下是关于 XXX 的技术文章"

## 禁止事项

- 不自动 push(部署是高风险操作)
- 不生成标题党文章
- 不洗稿官方文档(要有自己的实战经验)
- 不写纯翻译或摘要文章(要有观点和判断)
- 不出现"AI 生成的"痕迹语气

## 参考文件

- `references/style.md` — 完整风格指南(**每次生成前必读**)
- `scripts/new_post.py` — 生成 front matter 和文件
- `scripts/extract_topics.py` — 从聊天中提取核心话题

Related Skills

Cold Email Writer

3891
from openclaw/skills

Writes personalized cold emails that actually get replies

Content & Documentation

Policy Writer

3891
from openclaw/skills

Generate professional internal policies for any business function — HR, IT, finance, compliance, data privacy, acceptable use, and more.

Business Management

Grant Writer

3891
from openclaw/skills

Write winning grant proposals and funding applications. Works for government grants (SBIR, Innovate UK, Horizon Europe), foundation grants, and corporate funding programs.

Workflow & Productivity

问专家技能 - 使用 Playwriter 控制已登录的浏览器

3891
from openclaw/skills

## 技能描述

Workflow & Productivity

BlogBurst - Virtual CMO Agent

3891
from openclaw/skills

Your AI Chief Marketing Officer. Autonomous agent that runs your entire marketing — auto-posts to Twitter/X, Bluesky, Telegram, Discord, auto-engages with your audience (replies, likes, follows), runs SEO/GEO audits, tracks competitors, scans communities for opportunities, learns what works, and continuously optimizes. 50+ countries, 1000+ posts published. Free tier available.

Marketing Automation

CNBLOGS 精华内容抓取技能

3891
from openclaw/skills

## 功能描述

case-writer-hybrid

3891
from openclaw/skills

Expand a structured brief in `content-production/inbox/` into a reusable long-form markdown article draft, then run a local writer / critic / judge quality loop with a constrained humanization pass. Use when Codex needs a stage-1 article draft plus reusable writing sidecars for downstream `generate-image` and `wechat-formatter`.

novel-writer

3891
from openclaw/skills

小说写作助手。触发词:写小说/创作小说/生成小说/帮我写个小说/小说大纲/网文创作。工作流:需求收集(类型/风格/字数)→ AI生成大纲(世界观/人物/剧情/章节规划)→ 用户确认 → 自动逐章生成 → 一章一个文件保存。支持玄幻、仙侠、都市、科幻、历史、武侠、网游、灵异、军事、竞技等主流网文类型,面向新手作者。

writer

3891
from openclaw/skills

Fix AI writing patterns that create repetitive and robotic content

Landing Page Copywriter Lite

3891
from openclaw/skills

Free version — generate hero section copy and run a quick 3-point CRO audit on any landing page.

blog-publisher-lite

3891
from openclaw/skills

Publish markdown articles to Dev.to via their REST API. Use this skill whenever the user wants to publish a blog post or article to Dev.to.

sop-writer

3891
from openclaw/skills

Write GCP-compliant Standard Operating Procedures for labs and clinical sites