skill-i18n について
skill-i18nは、SKILL.mdやREADME.mdなどのスキル文書を複数言語に翻訳するスキルです。スキルごとの設定やコマンドラインオプションに対応し、自動ワークフローにも組み込めます。
主な機能
- 01SKILL.mdとREADME.mdの翻訳
- 02全体およびスキル別の言語設定
- 03対象言語とファイルの指定
- 04プロンプト省略と翻訳の上書き
- 05原文更新時の差分翻訳
活用シーン
- 01スキル文書の中国語・日本語版作成
- 02スキル別の言語と対象ファイル設定
- 03share-skillの文書生成から翻訳を実行
- 04スキル文書の翻訳自動化
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ guo-yu/ skills --skill skill-i18nインストール後、Claude Code で/skill-i18nを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreSKILL.ja.mdSKILL.zh-CN.md.claude-plugin/plugin.json詳細
スキルの i18n
スキルのドキュメントファイル(SKILL.md、README.md)を複数の言語に翻訳し、世界中のユーザーとスキルを共有しやすくします。
使い方
| コマンド | 説明 |
|---|---|
/skill-i18n | 現在のスキルディレクトリにあるファイルを翻訳します |
/skill-i18n <skill-name> | 指定したスキルのファイルを翻訳します |
/skill-i18n config | 既定の言語とファイル形式を設定します |
/skill-i18n --lang zh-CN,ja | 指定した言語に翻訳します(連携用) |
/skill-i18n --files SKILL.md,README.md | 指定したファイルを翻訳します |
対応言語
| 言語 | コード | 出力ファイル |
|---|---|---|
| 簡体字中国語 | zh-CN | SKILL.zh-CN.md |
| 日本語 | ja | SKILL.ja.md |
| 韓国語 | ko | SKILL.ko.md |
| スペイン語 | es | SKILL.es.md |
| カスタム | ユーザー定義 | SKILL.<code>.md |
設定
すべての設定は ~/.claude/skill-i18n-config.json に保存されます。
{
"default_languages": ["zh-CN", "ja"],
"default_files": ["SKILL.md"],
"skills_config": {
"port-allocator": {
"languages": ["zh-CN", "ja", "ko"],
"files": ["SKILL.md", "README.md"]
}
}
}
設定項目:
| 項目 | 説明 | 既定値 |
|---|---|---|
default_languages | 既定で翻訳する言語 | ["zh-CN", "ja"] |
default_files | 既定で翻訳するファイル | ["SKILL.md"] |
skills_config | スキルごとの設定 | {} |
実行手順
コマンド:/skill-i18n
現在のスキルディレクトリにあるファイルを翻訳します。
-
現在のディレクトリを検出
# Check if current directory contains SKILL.md if [ ! -f SKILL.md ]; then echo "Error: SKILL.md not found in current directory" exit 1 fi -
設定を読み込む
# Read config file CONFIG=$(cat ~/.claude/skill-i18n-config.json 2>/dev/null || echo '{}') # Get skill name from directory SKILL_NAME=$(basename "$(pwd)") # Check for skill-specific config SKILL_CONFIG=$(echo "$CONFIG" | jq -r ".skills_config[\"$SKILL_NAME\"] // null") -
初回実行時の選択(設定がない場合)
このスキルの設定が存在しない場合、TUI の選択画面を表示します。
{ "questions": [ { "question": "Which languages should be generated?", "header": "Languages", "multiSelect": true, "options": [ { "label": "简体中文 (zh-CN)", "description": "Simplified Chinese" }, { "label": "日本語 (ja)", "description": "Japanese" }, { "label": "한국어 (ko)", "description": "Korean" }, { "label": "Español (es)", "description": "Spanish" } ] }, { "question": "Which files should be translated?", "header": "Files", "multiSelect": true, "options": [ { "label": "SKILL.md", "description": "Skill documentation (recommended)" }, { "label": "README.md", "description": "Repository readme" } ] } ] } -
設定を保存
# Save selection to config for future runs jq --arg skill "$SKILL_NAME" \ --argjson langs '["zh-CN", "ja"]' \ --argjson files '["SKILL.md"]' \ '.skills_config[$skill] = {"languages": $langs, "files": $files}' \ ~/.claude/skill-i18n-config.json > tmp.json && mv tmp.json ~/.claude/skill-i18n-config.json -
翻訳を実行
- 選択したファイルと言語の組み合わせごとに翻訳を生成します
- 下記の「翻訳ルール」を参照してください
コマンド:/skill-i18n <skill-name>
指定したスキルのファイルを翻訳します。
-
スキルの場所を検索
# Search in common locations SKILL_PATH="" # Check ~/.claude/skills/ if [ -d ~/.claude/skills/"$SKILL_NAME" ]; then SKILL_PATH=~/.claude/skills/"$SKILL_NAME" fi # Check code repository (if configured) if [ -z "$SKILL_PATH" ] && [ -d ~/Codes/skills/"$SKILL_NAME" ]; then SKILL_PATH=~/Codes/skills/"$SKILL_NAME" fi if [ -z "$SKILL_PATH" ]; then echo "Error: Skill '$SKILL_NAME' not found" exit 1 fi -
翻訳を実行(既定のコマンドと同じ)
コマンド:/skill-i18n config
既定の設定を構成します。
-
現在の設定を表示
echo "Current configuration:" cat ~/.claude/skill-i18n-config.json | jq . -
AskUserQuestion で対話形式の設定を行う
{ "questions": [ { "question": "Select default languages for new skills:", "header": "Defaults", "multiSelect": true, "options": [ { "label": "简体中文 (zh-CN)", "description": "Simplified Chinese" }, { "label": "日本語 (ja)", "description": "Japanese" }, { "label": "한국어 (ko)", "description": "Korean" }, { "label": "Español (es)", "description": "Spanish" } ] } ] } -
設定ファイルを更新
コマンドラインフラグ
他のスキル(例:share-skill)との連携に使用します。
| フラグ | 説明 | 例 |
|---|---|---|
--lang <codes> | カンマ区切りの言語コード | --lang zh-CN,ja,ko |
--files <names> | カンマ区切りのファイル名 | --files SKILL.md,README.md |
--skill <name> | 対象のスキル名 | --skill port-allocator |
--no-prompt | TUI をスキップし、フラグまたは設定を直接使用します | 自動化されたワークフロー用 |
--overwrite | 既存の翻訳を上書きします | 確認をスキップ |
優先順位:
- コマンドラインフラグ(最優先)
skills_config内のスキル固有の設定- グローバル設定の
default_languagesとdefault_files - 対話型 TUI の選択(設定が存在しない場合)
連携の例:
# share-skill calls skill-i18n internally
/skill-i18n --lang zh-CN,ja --files SKILL.md --skill port-allocator --no-prompt
翻訳ルール
変更せずに保持
次の要素は翻訳しないでください。
- コードブロック(
bash、json など) - ファイルパス(
~/.claude/settings.json、~/Codes/skills/) - コマンド名(
/port-allocator、/skill-i18n、git push) - 技術識別子(変数名、JSON キー)
- URL とリンク
自然に翻訳
- 対象言語に合わせて文の構造を調整します
- 適切な敬語レベルを使用します:
- 日本語:丁寧体(です・ます)
- 中国語:標準的な書き言葉
- 韓国語:丁寧体(합니다/습니다)
- スペイン語:usted を使った敬体
- 適切な場合は例をローカライズします
Frontmatter の扱い
---
name: port-allocator # Keep unchanged (identifier)
description: Translate this # Translate to target language
---
スタイルの調整
言語によって、視覚的なスタイルが異なる場合があります。
| 言語 | 絵文字の使用 | 例 |
|---|---|---|
| 中国語(zh-CN) | よく使う | ✅ 正しい / ❌ 間違い |
| 日本語(ja) | 最小限 | 正しい / 間違い |
| 韓国語(ko) | 適度 | ✅ 올바름 / ❌ 잘못됨 |
| スペイン語(es) | 最小限 | Correcto / Incorrecto |
利用可能な場合は、プロジェクト内の既存の翻訳スタイルに従ってください。
出力形式
翻訳の成功
Translation complete
Skill: port-allocator
Source: SKILL.md
Generated:
- SKILL.zh-CN.md (简体中文)
- SKILL.ja.md (日本語)
Config saved for: port-allocator
Next run will auto-translate to: zh-CN, ja
既存ファイルの検出
Existing translations detected:
- SKILL.zh-CN.md (modified 2 days ago)
- SKILL.ja.md (modified 2 days ago)
Options:
[ ] Overwrite all
[ ] Skip existing
[ ] Select individually
設定が保存されました
Configuration updated
Default languages: zh-CN, ja
Default files: SKILL.md
Skill-specific config:
port-allocator: zh-CN, ja, ko (SKILL.md, README.md)
share-skill: zh-CN, ja (SKILL.md)
share-skill との連携
skill-i18n は、ドキュメント生成のために share-skill と連携します。
# share-skill docs with i18n
/share-skill docs --i18n
# This internally calls:
/skill-i18n --lang <configured-langs> --files SKILL.md --no-prompt
share-skill が --i18n フラグを検出すると、次の処理を行います。
- skill-i18n が利用可能か確認します
- 言語設定を読み込みます
- skill-i18n を呼び出して翻訳を生成します
- 翻訳済みファイルをドキュメントサイトに含めます
注意事項
- ソースファイルの保護 - ソースの
SKILL.mdファイルを上書きしないでください - 初回実行時のプロンプト - 初回の翻訳では言語の選択が必要です
- スキルごとの設定 - スキルごとに異なる言語設定を使用できます
- 増分更新 - ソースファイルが翻訳より新しい場合にのみ翻訳します
- 連携しやすい設計 - コマンドラインフラグにより、ほかのスキルから skill-i18n を呼び出せます
コメント
Markdown 対応