Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Italink/UnrealClientProtocol --skill unreal-plugin-localizationgit clone --depth 1 https://github.com/Italink/UnrealClientProtocolWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/italink/unrealclientprotocol/unreal-plugin-localization)<a href="https://agentmods.dev/skills/italink/unrealclientprotocol/unreal-plugin-localization"><img src="https://agentmods.dev/badge/skills/italink/unrealclientprotocol/unreal-plugin-localization/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/italink/unrealclientprotocol/unreal-plugin-localization"><img src="https://agentmods.dev/badge/skills/italink/unrealclientprotocol/unreal-plugin-localization.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00064 | $0.01753 |
| Opus 5.5 | $0.00026 | $0.00701 |
| Sonnet 5.5 | $0.00013 | $0.00351 |
| Haiku 4.5 | $0.00006 | $0.00175 |
Grade A, and why
unreal-plugin-localization scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 131 lines — stays where its author put it; the contents beside it link to each section on GitHub.
插件本地化
将 Unreal Engine 插件的编辑器 UI 文本翻译为目标语言。工作流使用 Python 辅助脚本完成所有重活(PO 解析、commandlet 调用),Agent 只负责翻译精简 JSON。
脚本路径
读取本 SKILL.md 时你已知其绝对路径,将文件名替换为 scripts/ue_localization.py 即为脚本路径。不要搜索或 glob 查找。
工作流
用户提供 .uplugin 路径和目标语言。在执行之前,先询问用户是否启用「语境增强模式」:
是否启用语境增强模式?该模式会扫描插件源码和蓝图资产,为每个待翻译条目附加代码上下文(所在文件、行号、周围注释、蓝图变量/函数的 DisplayName 和 Tooltip),帮助产出更准确的翻译。启用后需要更多时间和Token。
用户确认后,按以下三个阶段依次执行。
阶段 1 — 采集与导出
运行 gather 子命令。脚本自动从 .uplugin 向上查找 .uproject,通过 EngineAssociation + Windows 注册表推断引擎路径,确保 .uplugin 中存在 LocalizationTargets,然后一次 commandlet 调用完成采集 + 导出 PO,最后将可翻译条目提取为精简 JSON。
# 标准模式
python "<脚本路径>" gather --uplugin "<路径>.uplugin" --cultures zh-Hans
# 语境增强模式(加 --context)
python "<脚本路径>" gather --uplugin "<路径>.uplugin" --cultures zh-Hans --context
用户选择启用语境增强模式时,加上 --context 标志。
脚本通过 stdout 输出 JSON 结果:
status: "ok" 或 "error"pending_files:pending_translation.json路径列表(每个目标语言一个)context_enhanced: (仅语境增强模式)truecontext_entries: (仅语境增强模式)成功提取到上下文的条目总数(C++ + 蓝图)context_blueprint_entries: (仅语境增强模式且 UCP 可用)从蓝图资产中提取到上下文的条目数量
脚本支持增量翻译:PO 文件中已有 msgstr(非空翻译)的条目不会出现在 pending 列表中,同时已有翻译会保存到同目录的 existing_translations.json。因此 pending_translation.json 中的 total 可能为 0(表示无需翻译)。
阶段 2 — 翻译
先检查 pending_translation.json 的 total 字段:
- 若
total为 0,跳过该文件的翻译,直接进入阶段 3 - 若
total> 0,对每个条目执行翻译
对每个需要翻译的 pending_translation.json:
- 读取该文件,内容为精简条目数组:
{
"source_lang": "en",
"target_lang": "zh-Hans",
"total": 42,
"entries": [
{"id": 0, "ctx": "Namespace.Key", "src": "Static Mesh"},
{"id": 1, "ctx": "Namespace.Key2", "src": "Check resource usage",
"hint": "[Utils/MeshValidator.cpp:45] | Validates static mesh LOD count"}
]
}
若启用了语境增强模式,部分条目会包含 hint 字段。hint 来源有两种:
- C++ 源码:格式为
[文件:行号] | 周围注释/代码摘要 - 蓝图资产(需 UCP 可用):格式为
[BP_MyActor.Variable:Health] | ToolTip: Current health points
翻译时务必参考 hint 来判断术语在具体场景中的含义,从而选用更恰当的译法。例如同一个 "Instance" 在不同上下文中可能译为 "实例"(对象实例)或 "副本"(场景实例化)。
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 131 lines · 64 tokens per session scan A 565cbe366aa0
unreal-plugin-localization is a skill published in the GitHub repository Italink/UnrealClientProtocol (128 stars, last pushed 1mo ago), licensed MIT. It adds 64 tokens to every session and 1,753 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
roblox-localization
Use when adding or fixing Roblox translation: localization tables, auto-translation, locale-specific content, or region detection.
chinese-documentation
A Chinese technical-documentation style guide covering spacing, punctuation, numbers, terminology, and links when Chinese and English appear together.
dialogue-systems
Build branching dialogue and narrative — a node/choice graph with conditions, variables, and localization hooks — and choose between authoring tools Ink and Yarn Spinner or a custom data-driven runner. Engine-neutral. Use when the user mentions dialogue system, branching dialogue, conversation tree, choices, Ink…
extract-source-sample
Given the path to a finished content-goose ad-run folder, extract everything that defines that ad — recipe shot list, VO script, characters, voices, world, atom-skills, master mp4 — and emit a source-sample.json in the exact shape the upload-ad-sample skill writes to the Goose Ads library. Also links every character…
localization
Use when implementing localization (i18n/l10n) — TranslationServer, CSV/PO translation files, locale switching, RTL support, and pluralization in Godot 4.3+.
oma-translation
Translate or revise localized UI strings and prose while preserving meaning, terminology, placeholders, and structure.