translate-skills-87fdb7 — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited translate-skills-87fdb7 (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
扫描全局 agent 目录和当前项目目录,对 SKILL.md 的 frontmatter 中 name 和 description 尚无中文的 skill 自动添加中文翻译,仅修改这两个字段,不动其他内容。
~/.claude/skills/
~/.cursor/skills/
~/.trae-cn/skills/
~/.trae/skills/
~/.qoder/skills/<cwd>/.claude/skills/
<cwd>/.cursor/skills/
<cwd>/.trae-cn/skills/
<cwd>/.trae/skills/
<cwd>/.qoder/skills/scope 说明(默认扫描全部):
.cursor/skills.claude/skills<cwd>/ 下的所有 skills 目录~/ 下的所有 skills 目录除非用户明确指定范围,否则一律全量扫描。
每个目录下的结构: <skill-name>/SKILL.md
禁止只处理第一个找到的目录就汇报完成。必须先收集所有目录的完整文件列表,确认无遗漏后再翻译。
用单条命令扫描全部目标目录,输出所有 SKILL.md 路径:
# 全局目录(一条命令,2>/dev/null 忽略不存在的目录)
find ~/.claude/skills ~/.cursor/skills ~/.trae-cn/skills ~/.trae/skills ~/.qoder/skills \
-name "SKILL.md" 2>/dev/null | sort
# 当前项目目录(先获取 CWD)
CWD=$(pwd)
find "$CWD/.claude/skills" "$CWD/.cursor/skills" "$CWD/.trae-cn/skills" \
"$CWD/.trae/skills" "$CWD/.qoder/skills" \
-name "SKILL.md" 2>/dev/null | sort扫描完成后,列出所有找到的路径(按目录分组),直接进入第二步,无需等待用户确认。
对第一步找到的每一个路径,读取其 frontmatter,检查 name 和 description 字段:
\u4e00-\u9fff 字符)→ 标记为「跳过」输出格式示例(必须列出全部,不能省略):
待翻译(5个):
~/.claude/skills/canvas-design/SKILL.md
~/.trae-cn/skills/canvas-design/SKILL.md
~/.cursor/skills/docx/SKILL.md
...
跳过(已有中文,12个):
~/.claude/skills/find-skills/SKILL.md
...翻译规则:
| 字段 | 原格式 | 翻译后格式 | 要求 |
|---|---|---|---|
name | find-skills | find-skills 技能查找 | 英文名保留,后加中文(4-6 字) |
description | 英文描述 | 完整中文描述 | 保持原意,中文写详细,保留 "Use when..." 的触发条件语义 |
翻译格式示例:
# ❌ 改前
name: find-skills
description: Helps users discover and install agent skills when they ask "how do I do X"
# ✅ 改后
name: find-skills 技能查找
description: 当用户询问"如何做 X"、"有没有 skill 能做 X"、或希望扩展 agent 能力时使用。此技能帮助用户在 skills.sh 和 skillsmp.com 等来源中搜索并安装合适的 agent 技能包。name 中文部分命名原则:
description 翻译原则:
使用 Edit 工具只替换 frontmatter 中的 name: 和 description: 行,不修改其他内容。
old_string: "name: find-skills\ndescription: Helps users discover..."
new_string: "name: find-skills 技能查找\ndescription: 当用户询问..."注意 description 引号格式:若原 description 为 description: "..." 带引号格式,替换后去掉引号,改为普通格式:
description: 当用户...(无引号)汇报前必须确认:第一步扫描到的每个目录都已处理完毕,无遗漏。
完成后输出汇总表,按目录分组:
## 翻译完成
| 来源目录 | Skill | 修改内容 |
|---------|-------|---------|
| ~/.claude/skills | find-skills | name + description |
| ~/.trae-cn/skills | canvas-design | name + description |
| ~/.cursor/skills | xlsx | name + description |
| <cwd>/.claude/skills | my-custom-skill | name + description |
| ... | ... | ... |
共修改 X 个 skill,跳过 Y 个(已有中文)。
扫描目录:~/.claude/skills ✓ ~/.cursor/skills ✓ ~/.trae-cn/skills ✓ ~/.trae/skills -(不存在) ~/.qoder/skills -(不存在)--- 之间的 name 和 description,正文内容不动| 错误 | 原因 | 修复 |
|---|---|---|
| 只翻译了第一个目录就汇报完成 | 未先收集全量清单 | 必须先执行第一步单条命令扫描全部目录 |
| name 中文超过 6 字 | 过度描述 | 精简到 4-6 字动宾结构 |
| description 只翻译了一句 | 省略触发条件 | 完整翻译,保留 "Use when..." 对应的中文句式 |
| 把代码命令也翻译了 | 误译技术术语 | 保留 npx、skill add、文件名等原文 |
| 修改了 frontmatter 之外的内容 | 替换范围过大 | 严格限定在 --- 之间的两行 |
| description 写入后换行丢失 | 引号格式替换时 \n 被吞 | 替换后检查 description 末尾是否有换行,若无则补上 |
description 末尾出现 \x01 控制字符 | Python re.sub 中 \1 反向引用被误当字面字符 | 写入后用 repr() 检查原始字节,发现则 content.replace('\x01', '') 清除 |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.