localize-skill-descriptions — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited localize-skill-descriptions (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.
Document the correct workflow for localizing skill descriptions (or any skill metadata) while protecting local modifications from being overwritten by git pull.
This skill applies to any skills installed via git repositories in AI coding assistants (OpenCode, Claude Code, etc.).
When you want to customize skill descriptions (e.g., translate to Chinese, add custom tags, modify triggers) for skills installed via a git repository, you face a conflict:
git pull updates will overwrite your local changes--assume-unchanged is dangerous — git may still overwrite those filesEdit the SKILL.md files directly in the git-tracked directory.
# Example: Translate description to Chinese
cd ~/.config/opencode/superpowers
for skill in skills/*/SKILL.md; do
# Edit the description field in YAML frontmatter
sed -i '' 's/old description/新描述/' "$skill"
donecd ~/.config/opencode/superpowers
git update-index --skip-worktree skills/*/SKILL.mdThis tells git to ignore local changes to these files during git pull, git checkout, etc.
If the skill discovery mechanism scans a different directory than the git repo, create a symlink:
ln -s ~/.config/opencode/superpowers/skills ~/.config/opencode/skills/superpowersThis avoids duplicating files — the symlink points to the git repo, which already has your localized descriptions.
# Don't do this — you now maintain two copies of each file
cp ~/.config/opencode/superpowers/skills/*/SKILL.md ~/.config/opencode/skills/# Don't use --assume-unchanged — it's for performance optimization, not local overrides
git update-index --assume-unchanged skills/*/SKILL.md# Modify in-place, protect with skip-worktree, symlink for discovery
git update-index --skip-worktree skills/*/SKILL.md
ln -s ~/.config/opencode/superpowers/skills ~/.config/opencode/skills/superpowers| Flag | Purpose | Safe for local overrides? |
|---|---|---|
--skip-worktree | "I modified this locally, don't touch it" | ✅ Yes |
--assume-unchanged | "This file is huge, skip checking it for performance" | ❌ No — git may overwrite it |
# Verify skip-worktree status (S = skip-worktree set)
git ls-files -v skills/*/SKILL.md | grep '^S'
# Verify working tree is clean
git status
# Verify symlink exists
ls -la ~/.config/opencode/skills/superpowersTo restore tracking:
git update-index --no-skip-worktree skills/*/SKILL.md
git checkout -- skills/*/SKILL.md # restores upstream versiongit status and git ls-files -v after setup--- 块中的 name 和 description 字段发现和展示技能。没有 frontmatter 的技能不会出现在 /skill-name 命令列表中。---
name: your-skill-name
description: 简短描述技能用途和触发条件(会被 OpenCode 展示给用户)
---错误路径:直接写 # Skill Title 开头,没有 frontmatter → 技能不被发现。 正确路径:文件必须以 --- 开头,包含 name 和 description。
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.