Fmt Tool
用于重排段落、去除多余空格,清理文本文件的简单工具。
精准翻译技术与法律文档,保留格式与术语一致性。
openclaw skills install @harrylabsj/document-translation-assistant命令、参数、文件名以原文为准
在不破坏文档结构的前提下进行翻译。保留 Markdown 结构、代码块、表格、链接和图片引用,同时确保全文术语一致性——专为技术与法律内容设计,准确优先于流畅性。
输入:用户提供的内容包括:
tech | legal | marketing | generalbilingual(侧边对照) | translated-only(仅翻译) | both(两者都输出)输出:解析后的文档及其结构树(包含标题、段落、代码块、表格、列表、链接、图片等)
逻辑:使用置信度评分自动检测语言;若置信度低于 90%,提示用户确认
输入:已解析的文档
操作:构建结构树,识别可翻译与不可翻译节点:
| 节点类型 | 是否可翻译 | 示例 |
|---|---|---|
| 标题 | ✅ 可翻译 | ## 快速开始 → ## Getting Started |
| 段落文本 | ✅ 可翻译 | 正文、描述内容 |
| 列表项 | ✅ 可翻译 | 项目符号列表、编号列表 |
| 表格单元格文本 | ✅ 可翻译 | 单元格内容(不包括表格结构本身) |
| 代码块 | ❌ 保留原样 | 所有代码、命令、配置内容 |
| 内联代码 | ❌ 保留原样 | npm install, const x = 1 |
| 链接 | ❌ 保留 URL | [text](url) — 仅翻译文字部分,保留 URL |
| 图片 | ❌ 保留原样 |  — 仅翻译 alt 文本,保留 URL |
| Frontmatter | ⚠️ 选择性处理 | 翻译 description,保留 slug / tags |
| HTML 标签 | ❌ 保留标签 | <div>, <span> — 仅翻译标签内的文本内容 |
| 占位符 | ❌ 保留原样 | {{variable}}, %s, {0} |
输出:带有可翻译段落标记的结构树
输入:可翻译段落 + 领域模式
操作:提取领域相关术语:
输出:候选术语列表,附带出现次数与上下文片段
输入:候选术语 + 用户输入
操作:向用户展示提取出的术语并请求确认:
已提取 23 个专业术语:
| # | 原始术语 | 出现次数 | 建议翻译 | 你的翻译 |
|---|--------|----------|---------|----------|
| 1 | 微服务 | 15 | microservices | [确认/编辑] |
| 2 | 熔断器 | 8 | circuit breaker | [确认/编辑] |
| 3 | 服务降级 | 5 | service degradation | [确认/编辑] |用户可执行以下操作:
输出:最终确定的术语词典。按项目保存,支持后续复用
逻辑:存在多种可能翻译的术语将标记为需用户审查;常见术语若仅有单一标准翻译则自动应用
输入:可翻译段落 + 术语词典 + 领域模式
操作:对每个段落进行翻译,遵循以下规则:
**粗体**、*斜体*、` 代码 {{name}}、%d、位置参数输出:完成格式保留校验的翻译结果
逻辑:每批处理约 5 个段落以维持局部上下文;大文档分批次处理,并显示进度指示
输入:所有已翻译段落 + 术语词典
操作:翻译后扫描:
输出:一致性报告:
✅ 术语检查:23/23 条目一致
⚠️ 发现不一致:“负载均衡” → “load balancing”(18 次)
→ “load balancer”(2 次 — 已修正)输入:已翻译的完整文档。
操作:通读整个翻译后的文档,修复上下文断裂问题:
输出:经过连贯性调整的翻译版本。
逻辑:AI 以人类编辑的方式通读整篇翻译文档,标记出读起来不连贯的部分。
输入:连贯的翻译文档。
操作:按请求格式生成输出:
双语模式(默认用于审阅):
## 快速开始 | ## Getting Started
本指南将帮助您搭建项目。 | This guide will help you set up the project.
1. 克隆仓库 | 1. Clone the repository
`git clone https://...` | `git clone https://...`仅翻译模式(用于发布):
目标语言的完整文档,保留所有格式。
输出:文件保存在原目录或指定目录中。
输入:最终确定的术语表 + 项目标识符。
操作:保存术语表以供未来复用:
{
"project": "user-service-docs",
"domain": "tech",
"source_lang": "zh",
"target_lang": "en",
"terms": {
"微服务": "microservices",
"服务网格": "service mesh",
"熔断器": "circuit breaker"
},
"updated": "2026-06-17"
}输出:术语表已保存。下次针对该项目的翻译将自动加载该术语表。
逻辑:术语表本地存储。用户可控制保存、删除或导出。
用户:“帮我把这个中文 README 翻译成英文 [upload: README_zh.md]”
预期输出:双语视图,保留所有代码块、命令和链接。术语表自动提取(微服务→microservices,部署→deploy),并保持一致应用。
用户:“这份中文合同需要翻译成英文给海外同事看,保持法律术语准确 [upload: contract_zh.docx]”
预期输出:正式法律语气的翻译版 DOCX 文件。术语表:甲方→Party A,违约责任→Breach of Contract,不可抗力→Force Majeure。警告:“此为参考翻译,非认证法律文件。”
用户:“我们的产品文档需要中英双语版本,以后每次更新都要同步翻译 [path: ~/docs/]”
预期输出:docs/ 目录下所有 Markdown 文件完成翻译,并保存术语表。后续运行时:仅检测变更文件,翻译差异部分,保持一致性。
用户:“之前翻译的文档里同一个术语翻了好几种,帮我统一 [upload: translated_zh.md]”
预期输出:扫描不一致术语 → 列出冲突项 → 用户选择首选翻译 → 统一应用。报告:“已修复 14 处不一致,涉及‘API网关’(原为:api-gateway, API Gateway, ApiGateway → 现为:API Gateway)。”
用户:“翻译后帮我检查文档格式有没有被破坏 [upload: translated.md + original.md]”
预期输出:结构对比结果:标题数量、代码块数量、链接数量、表格行数。 “所有结构元素均保留(42 个标题,7 个代码块,12 个链接,3 个表格)。✅”
用户:“这个开源项目的 README 需要翻译成中文、日文、韩文 [upload: README.md]”
预期输出:生成三个翻译文件(README_zh.md, README_ja.md, README_ko.md),每种语言配有独立术语表。备注:“日文和韩文翻译的置信度可能较低——建议人工审阅。”
场景:维护者希望让一个中文开源项目对国际用户更友好。
输入:“帮我翻译整个项目的文档:README、CONTRIBUTING,以及 docs/ 下的所有文件”
步骤:
输出:完整的 English docs/ 目录 + 双语 README。术语表保存为项目根目录下的 .translation-glossary.json。
场景:中国公司向美国合作伙伴提供保密协议,双方需理解内容。
输入:“翻译这份保密协议,法律术语要准确,格式不能乱 [upload: nda_zh.docx]”
步骤:
输出:双语 DOCX 文件。免责声明:“此翻译仅作参考。若存在歧义,以中文版本为准。”
场景:工程团队每周更新文档,但翻译滞后。
输入:“我们每周更新中文文档,每次帮我翻译新增和修改的部分 [path: ~/docs/]”
步骤:
~/docs/.translation-glossary.json 中保存的术语表。输出:同步后的翻译文件 + 已翻译内容的变更日志。
translation-assistant.sh parse README_zh.md —— 解析文档,识别结构和语言translation-assistant.sh glossary README_zh.md —— 提取并审核术语表translation-assistant.sh translate README_zh.md en --domain tech —— 生成保留格式的翻译文档| 条件 | 行为 |
|---|---|
| 文档字数 >50,000 | 分批处理并显示进度指示;提示处理时间约为 X 分钟 |
| 扫描版/图像型 PDF(无文字层) | 触发 OCR 处理;提示因 OCR 错误可能导致翻译质量下降 |
| 代码内容占比 >50% | 跳过代码块;仅翻译注释和正文部分;注明文本比例偏低 |
| 多语言混合文档 | 检测主要语言;标记混合段落以进行特殊处理 |
| 包含嵌入式 JSON/YAML 的文档 | 保留 JSON/YAML 结构;若用户请求,仅翻译字符串值 |
| 请求了不支持的输出格式 | 提供转换路径(例如:“可输出 MD、DOCX、HTML。如需 PDF,可先输出后转换。”) |
| 未检测到领域术语 | 跳过术语表步骤;直接进入通用模式翻译 |
| 目标语言与源语言相同 | 发出警告:“源语言与目标语言相同。是否继续使用校对模式?” |
| 错误代码 | 场景 | 处理方式 |
|---|---|---|
| E-PARSE-FAIL | 文档结构无法解析 | 提供纯文本回退选项(会丢失格式);提醒用户 |
| E-FORMAT-CORRUPT | 翻译后格式验证失败 | 显示结构元素差异对比;提供手动修复或回滚选项 |
| E-GLOSSARY-CONFLICT | 术语在保存的术语表中存在冲突翻译 | 展示冲突项;询问用户选择或合并 |
| E-OCR-FAIL | 扫描文档的 OCR 处理结果为乱码 | 返回原始图片 + 说明;建议提升扫描质量 |
| E-ENCODING | 文档使用非标准编码 | 自动检测并转换为 UTF-8;若字符丢失则发出警告 |
| E-TERM-OVERLAP | 领域术语同时也是常见词汇(如“bug”在技术语境中) | 标记为歧义项;询问用户澄清上下文或接受启发式处理 |
| E-TRANSLATION-LOW-CONFIDENCE | 某段翻译置信度低于阈值 | 在输出中标注 ⚠️“低置信度” |
已收录 11 个 Skill