Communitygithub.com

zhcmeng/shared-skills

当用户要求把英文文档翻译成中文、生成 `-中文版` 后缀的中文版文件、或要求「一比一翻译 / 完整翻译 / 中文化」某个英文 Markdown 文件(尤其 SKILL.md、技术文档)时使用。触发词:翻译、中文化、中文版、zh-CN、translate、一比一。

shared-skills 是什么?

shared-skills is a Claude Code agent skill that 当用户要求把英文文档翻译成中文、生成 `-中文版` 后缀的中文版文件、或要求「一比一翻译 / 完整翻译 / 中文化」某个英文 Markdown 文件(尤其 SKILL.md、技术文档)时使用。触发词:翻译、中文化、中文版、zh-CN、translate、一比一。.

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhcmeng/shared-skills/tree/HEAD/plugin/skills/translate-docs

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

英文文档翻译

概述

把英文 Markdown 文档一比一翻译成中文,产出同名 -中文版.md 文件(X.md → X-中文版.md),放在原文同目录。核心是一比一:标题层级、段落、列表、表格、代码块、图表完全对应,不增删、不合并/拆分段落、不意译重组。

翻译过程全部在子代理中完成——本代理只负责定位目标、派发子代理、校验结果并向用户汇报,不读原文、不亲自翻译、不占用本代理上下文。

翻译规则(一比一规范)

下列规则是子代理执行的规范,也是本代理校验产出的判据:

  1. 产物:英文 X.md → 同目录 X-中文版.md。
  2. frontmatter:name: 保留英文原文;description: 翻译成中文;其余字段(若有)按值翻译。
  3. 说明句:frontmatter 之后、正文标题之前,插入一行引用块: > 📝 本文为 \<原文文件名>` 的中文翻译。以英文原文为准;若有出入,请以原文为权威。若知道来源版本,写成翻译自 <项目> v<版本>`。
  4. 代码块不译:所有 fenced code block(、dot、mermaid、bash 等)内容原样保留,不翻译、不改缩进、不删行。
  5. 行内代码保留:反引号内内容(skill 名、文件路径、命令、标识符、URL)原样保留英文。
  6. 术语首次标注:技术术语首次出现用「中文(English)」形式,之后可只用中文。
  7. 表格:表头与文本单元格翻译;纯代码/路径/标识符的单元格保留。
  8. 链接:URL 保留,链接文字翻译。
  9. 脚注:脚注定义([^n]: url)保留 URL,说明文字翻译;正文引用 [^n] 原样保留。
  10. 换行:英文源文件的硬换行在中文里不保留(中文段内不换行);段落边界、空行保留。

工作流

无论单个文档还是目录,一律派发子代理翻译,本代理不亲自翻译。

  1. 定位目标:取 $ARGUMENTS——它是要翻译的文件路径、目录,或 skill 名(如 superpowers:brainstorming → 定位其 SKILL.md)。$ARGUMENTS 为空说明调用时没带目标,直接报错退出,不要猜。
  2. 确定待译文件:
    • 单个文档 → 该文件 1 个。
    • 目录 → 列出目录下所有 .md,排除已有对应 -中文版.md 的(跳过已有,不重译)。
  3. 并行派发子代理:每个待译文件派发一个 general-purpose 子代理,model: "haiku",prompt 用下方模板填入目标文件路径。一条消息同时派发所有子代理(多个 Agent 调用并行)。
  4. 校验并汇报:子代理返回后,本代理对每个产出跑 diff 校验(对照上方规则),确认一比一无漏译;只向用户汇报结果(成功 / 失败 / 漏译清单),不汇报翻译过程。

子代理 prompt 模板

general-purpose 子代理不继承本 skill 的规则,prompt 必须自包含:

你是英文文档翻译代理。把指定的英文 Markdown 文件一比一翻译成中文,产出同名 `-中文版.md` 文件(`X.md` → `X-中文版.md`)放在原文同目录。

规则:
- 一比一:标题层级、段落、列表、表格、代码块、图表完全对应,不增删、不合并/拆分段落、不意译重组。
- frontmatter:name 保留英文,description 译中文。
- frontmatter 后、正文标题前插入一行引用块:> 📝 本文为 `<原文文件名>` 的中文翻译。以英文原文为准;若有出入,请以原文为权威。
- 代码块不译:所有 fenced code block(含 dot/mermaid)内容原样保留。
- 行内代码保留英文(skill 名、文件路径、命令、URL)。
- 术语首次出现用「中文(English)」形式。
- 表格译文本、留代码;链接留 URL、译文字;脚注留 URL、译说明。
- 中文段内不硬换行。

目标文件:<绝对路径>
只翻译这一个文件,写好后返回一行摘要(文件名 + 成功/失败)。

约束

  • 一比一是硬要求:不增删内容,不合并/拆分段落,不意译重组。
  • 代码块永远不译(含 dot/mermaid 图,图内节点 label 也保留英文)。
  • 英文文件名 / 路径 / skill 名 / 命令一律保留。
  • 翻译过程一律在子代理中完成,本代理不读原文、不亲自翻译。
  • 翻译对象来自 $ARGUMENTS;它是 skill 名(如 superpowers:brainstorming)时,自行定位该 skill 的 SKILL.md 所在路径,不预设本地绝对路径。
  • 目录模式默认跳过已有 -中文版.md 的文件;用户明确要求时才覆盖重译。

相关技能