使用AI维护Hugo多语言博客的Agent Skill

一篇可直接复用的 sync-post-translations 技能详解:目标、规则、配置代码、调用示例与质量保障清单。

如果你在维护 Hugo 多语言博客,经常会遇到一个高频痛点:

  • 中文写完后,需要同步生成英文和繁体版本
  • 三个语言文件要保持结构一致
  • front matter 既要翻译又要遵守 Hugo 格式

sync-post-translations 就是为这个场景设计的 Agent Skill。

这个技能解决什么问题

sync-post-translations 的定位很清晰:

  1. index.zh-cn.md 为源文件
  2. 在同目录生成或更新 index.en.mdindex.zh-tw.md
  3. 保持 Markdown 结构一致
  4. 对 front matter 执行明确规则(尤其是 dateslug

适用触发词示例:

  • “同步翻译英文繁体”
  • “把这篇文章同步成英文和繁体”

技能目录结构

1
2
3
4
.\sync-post-translations\
├─ SKILL.md
└─ agents\
   └─ openai.yaml

核心代码一:SKILL.md

下面是该技能的核心规则文件:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
---
name: sync-post-translations
description: 将 Hugo 文章从简体中文源文件(`index.zh-cn.md`)同步翻译为英文(`index.en.md`)和繁体中文(`index.zh-tw.md`)。当用户提出“en 繁体”“同步翻译英文繁体”或要求同时生成/更新两种语言版本且需保持 front matter 与 Markdown 结构一致时使用。
---

# 同步文章翻译

使用此技能为同一篇文章生成或更新多语言版本。

## 工作流程

1. 在目标文章目录中定位源文件 `index.zh-cn.md`2. 读取完整 front matter 与正文内容。
3. 在同目录创建或更新 `index.en.md``index.zh-tw.md`4. 确保三语结构对齐后执行 Hugo 构建检查。

## 翻译规则

1. 严格保留 `slug` 原值。
2. `date` 统一规范为 Hugo 常用带时间格式(RFC3339),示例:`2026-04-05T10:00:00+08:00`3. 自然翻译以下 front matter 字段:`title``description``tags``categories`4. 保持 Markdown 结构不变:标题层级、列表形态、代码块、链接与命令行示例。
5. 技术标识符保持原样:文件名、CLI 参数、模型名、设备名、URL、包名等。
6. 若 YAML 的 `title` 含有 `:`,必须加引号,避免解析报错。
7. 在不改变语义前提下,使用目标语言自然标点与表达习惯(`en``zh-tw`)。

## 输出约定

1. 仅在源文章同目录写入目标文件。
2. 汇报变更的文件路径。
3. 条件允许时执行 `hugo --source . --destination public`,并反馈通过/失败;失败时给出关键报错行。

## 质量标准

1. 全文术语前后一致。
2. 避免机器直译感,优先可发布文风。
3. 章节内容完整,不省略示例、注意点与总结。

核心代码二:agents/openai.yaml

这个文件定义了技能在 Agent 侧的展示和默认提示词:

1
2
3
4
interface:
  display_name: "同步文章翻译"
  short_description: "生成或更新 EN + ZH-TW 翻译稿"
  default_prompt: "使用该技能在同一 Hugo 文章目录中,从 `index.zh-cn.md` 生成或同步 `index.en.md` 与 `index.zh-tw.md`,保留 `date` 与 `slug`,保持 Markdown 结构一致,并执行 Hugo 构建校验。"

实战调用示例

1) 面向人的自然语言触发

1
2
请把 content/post/2026/04/06/index.zh-cn.md 同步翻译成英文和繁体,
要求 date 用 RFC3339,slug 不变,最后跑 hugo 校验。

2) 你应当期待的输出结果

1
2
3
4
5
6
7
已更新:
- content/post/2026/04/06/index.en.md
- content/post/2026/04/06/index.zh-tw.md

构建校验:
- hugo --source . --destination public
- 结果:PASS

为什么这些规则很关键

  1. slug 保持不变,能稳定 URL 与历史外链。
  2. date 统一 RFC3339(带时区)可避免 Hugo/主题在时间解析上的歧义。
  3. Markdown 结构不变,能避免翻译后目录、代码块、短代码渲染错位。
  4. 技术标识符不翻译,可显著降低“命令不可用/文件名不匹配”问题。

常见坑位与规避

  1. title 里有 : 却没加引号,YAML 会解析失败。
  2. --flag、URL、包名翻译了,示例命令会直接失效。
  3. 三语标题层级不一致(如中文 ## 变成英文 ###),目录锚点会错位。
  4. 只翻译正文不处理 front matter,页面列表与 SEO 信息会异常。
记录并分享
使用 Hugo 构建
主题 StackJimmy 设计