Back to skills
SkillHub ClubWrite Technical DocsTech Writer

blog-writer

A Claude skill that helps users create new blog posts following astro-koharu blog specifications. It generates proper frontmatter, selects appropriate category paths, and provides Markdown content framework suggestions based on article type.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
209
Hot score
97
Updated
March 20, 2026
Overall rating
A7.5
Composite score
6.4
Best-practice grade
N/A

Install command

npx @skill-hub/cli install coszone-astro-koharu-blog-writer
blog-generationcontent-creationmarkdown-templatesastro-frameworkfrontmatter

Repository

cosZone/astro-koharu

Skill path: .claude/skills/blog-writer

A Claude skill that helps users create new blog posts following astro-koharu blog specifications. It generates proper frontmatter, selects appropriate category paths, and provides Markdown content framework suggestions based on article type.

Open repository

Best for

Primary workflow: Write Technical Docs.

Technical facets: Tech Writer.

Target audience: Developers using the astro-koharu blog framework who need structured blog post creation assistance.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: cosZone.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install blog-writer into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/cosZone/astro-koharu before adding blog-writer to shared team environments
  • Use blog-writer for documentation workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: blog-writer
description: 帮助用户按照 astro-koharu 博客的规范创建新博文。自动生成正确的 frontmatter 结构、选择合适的分类路径,并提供 Markdown 内容框架建议。使用场景:写一篇博文、创建新文章、写文章、写博客、new post、create blog post。
---

# Blog Writer Skill

帮助用户按照 astro-koharu 博客的规范创建新博文。

## 你的任务

当用户请求创建新博文时:

1. **收集必要信息**(如果用户未提供):
   - 文章标题
   - 文章分类(从下面的分类列表中选择)
   - 文章主题/关键词(用于生成标签和描述)

2. **生成 frontmatter**:
   ```yaml
   ---
   title: [文章标题]
   link: [URL slug,使用英文短横线分隔]
   catalog: true
   date: [当前日期时间,格式:YYYY-MM-DD HH:mm:ss]
   description: [一句话描述文章内容,50-100字]
   tags:
     - [相关标签1]
     - [相关标签2]
     - [相关标签3]
   categories:
     - [一级分类, 二级分类]
   ---
   ```

   **分类格式说明**:
   - 嵌套分类使用数组格式:`- [一级分类, 二级分类]`
   - 例如:`- [笔记, 前端]` 会创建 URL `/categories/note/front-end` 和面包屑 "笔记 → 前端"
   - 单个分类直接写分类名:`categories: 随笔`

3. **确定文件路径**:
   - 基础路径:`src/content/blog/`
   - 根据分类生成对应的子目录结构
   - 文件名:使用 `link` 字段值 + `.md` 扩展名

4. **生成 Markdown 内容框架**:
   - 提供文章结构建议(引言、正文章节、总结等)
   - 如果适合,建议使用 infographic 信息图
   - 提供代码示例占位符(如果是技术文章)

## 分类系统

### 一级分类及其子分类

1. **笔记 (note/)**
   - 前端 (front-end/)
     - React
     - Vue
     - TypeScript
     - CSS
     - 性能优化
   - 后端 (back-end/) - 如果需要使用,确保已在 `_config.yml` 中添加映射
   - 其他新增子分类 - 需要先在 `_config.yml` 添加映射

2. **工具 (tools/)**
   - 开发工具
   - 效率工具
   - 使用指南

3. **随笔 (life/)**
   - 生活随笔
   - 年度总结
   - 读书笔记

4. **周刊 (weekly/)**
   - 技术周刊
   - 每周分享

### 分类映射规则

**YAML 格式(重要)**:
```yaml
# 嵌套分类(推荐)- 使用数组包裹
categories:
  - [笔记, 前端]

# 单个分类 - 直接写分类名
categories: 随笔
```

**URL 和路径映射**:
- `categories: 随笔` → URL: `/categories/life` → 文件路径: `src/content/blog/life/`
- `categories: - [笔记, 前端]` → URL: `/categories/note/front-end` → 文件路径: `src/content/blog/note/front-end/`
- `categories: - [笔记, 前端, CSS]` → URL: `/categories/note/front-end` → 文件路径: `src/content/blog/note/front-end/`(三级分类作为标签)

**注意**:
- 嵌套分类必须使用 `- [一级, 二级]` 格式
- 分类名称(中文)会映射到 URL slug(英文),映射关系见上方分类列表

### 新增分类

如果用户需要创建上述分类之外的新分类,需要:

1. **更新 `_config.yml`**:
   ```yaml
   category_map:
     # 一级分类
     随笔: life
     笔记: note
     工具: tools
     周刊: weekly

     # 二级分类
     前端: front-end
     后端: back-end  # 新增示例

     # 添加新分类映射
     新分类名: new-category-slug
   ```

2. **创建对应目录**:
   - 在 `src/content/blog/` 下创建对应的目录结构
   - 例如:新增"后端"分类需要创建 `src/content/blog/note/back-end/`

3. **提醒用户**:
   - 告知用户已添加新分类映射到 `_config.yml`
   - 说明新分类的 URL 路径

## 文件命名规范

- 使用英文小写字母
- 单词间用短横线 `-` 分隔
- 避免特殊字符
- 例如:`react-hooks-guide.md`, `astro-blog-setup.md`

## 内容建议

### 技术文章结构

```markdown
## 背景/问题

[描述要解决的问题或技术背景]

## 解决方案

[详细说明解决方法]

### 关键技术点1

[技术细节和代码示例]

### 关键技术点2

[技术细节和代码示例]

## 实践效果

[实际应用效果、性能对比等]

## 总结

[总结要点和经验]
```

### 工具/指南类文章结构

```markdown
## 简介

[工具/方法简介]

## 安装/准备

[安装步骤或前置条件]

## 基本使用

[基础用法和示例]

## 高级功能

[进阶功能和技巧]

## 实用技巧

[最佳实践和注意事项]

## 总结

[总结和资源链接]
```

### 随笔类文章结构

```markdown
## 引言

[开场白,引出话题]

## 正文

[多个段落展开论述]

## 感悟/总结

[个人思考和总结]
```

## Infographic 使用建议

根据文章类型,建议使用信息图的场景:

- **列表信息**(技术栈、功能特性)→ `list-grid-badge-card`
- **流程步骤**(安装步骤、开发流程)→ `sequence-zigzag-steps-underline-text`
- **对比分析**(技术对比、优缺点)→ `compare-binary-horizontal-simple-fold`
- **统计数据**(性能对比、用量统计)→ `chart-column-simple` 或 `chart-bar-plain-text`
- **层级结构**(目录结构、知识体系)→ `hierarchy-tree-tech-style-capsule-item`

## 最后步骤

创建完博文后:

1. **如果添加了新分类**:
   - 确认已更新 `_config.yml` 中的 `category_map`
   - 确认已创建对应的目录结构
   - 告知用户新分类的 URL 路径

2. **运行检查**:
   - 运行 `pnpm dev` 在本地预览
   - 运行 `pnpm lint:fix` 检查格式

3. **后续建议**:
   - 提醒用户可以使用 infographic skills 添加信息图
   - 如果需要,提供相关文章推荐的建议(基于 tags)

## 示例对话

### 示例 1:使用现有分类

**用户**:写一篇关于 React Hooks 使用技巧的文章

**你应该**:

1. 确认分类:笔记 > 前端 > React
2. 生成文件路径:`src/content/blog/note/front-end/react-hooks-best-practices.md`
3. 创建包含完整 frontmatter 的文件(使用 `- [笔记, 前端]` 分类格式)
4. 提供文章结构框架
5. 建议在"常用 Hooks 对比"部分使用 `list-grid-badge-card` 信息图
6. 建议在"Hooks 使用流程"部分使用 `sequence-zigzag-steps-underline-text` 信息图

### 示例 2:需要新增分类

**用户**:写一篇关于 Node.js 后端开发的文章

**你应该**:

1. 发现"后端"分类不在现有分类列表中
2. 询问用户是否要添加"后端"分类
3. 如果用户同意:
   - 更新 `_config.yml`,添加 `后端: back-end`
   - 创建目录 `src/content/blog/note/back-end/`
   - 生成文章文件 `src/content/blog/note/back-end/nodejs-development.md`
   - frontmatter 使用 `- [笔记, 后端]` 分类格式
4. 告知用户:
   - 新分类已添加到 `_config.yml`
   - URL 路径为 `/categories/note/back-end`
   - 已创建对应目录结构
blog-writer | SkillHub