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 mxyhi/ok-skills --skill bopomofo-rescuegit clone --depth 1 https://github.com/mxyhi/ok-skillsWrote 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/mxyhi/ok-skills/bopomofo-rescue)<a href="https://agentmods.dev/skills/mxyhi/ok-skills/bopomofo-rescue"><img src="https://agentmods.dev/badge/skills/mxyhi/ok-skills/bopomofo-rescue/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/mxyhi/ok-skills/bopomofo-rescue"><img src="https://agentmods.dev/badge/skills/mxyhi/ok-skills/bopomofo-rescue.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00332 | $0.02741 |
| Opus 5.5 | $0.00133 | $0.01096 |
| Sonnet 5.5 | $0.00066 | $0.00548 |
| Haiku 4.5 | $0.00033 | $0.00274 |
Grade A, and why
bopomofo-rescue 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 today.
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 — 164 lines — stays where its author put it; the contents beside it link to each section on GitHub.
注音鍵盤誤打還原 (Bopomofo Input Recovery)
安裝前提 (Prerequisite)
這個 skill 需要上游 repo 內附的解碼腳本與注音詞典(約 5 MB)才能運作;本目錄
只收錄 SKILL.md 與參考資料。請直接從來源安裝:
git clone https://github.com/Oliviaiii/bopomofo-rescue.git ~/.claude/skills/bopomofo-rescue
安裝後會一併掛上 UserPromptSubmit hook,訊息送出當下就自動解碼,不需任何前綴指令。
需要 Python 3,且 python 在 PATH 上。
This skill requires the decoder script and Bopomofo dictionary (~5 MB) bundled in the
upstream repository — only SKILL.md and references/ are vendored here. Install from
source with the command above. Requires Python 3 on PATH.
這個 skill 在解決什麼
台灣工程師常用注音輸入法。忘記把輸入法從英文切回中文時,本來想打的中文會
變成一串按鍵序列 —— 例如想打「你好嗎」卻打出 su3cl3a8。這串不是英文、也
不是亂碼,而是注音鍵盤的實體按鍵。這個 skill 把它還原回中文,讓你不必
重打就能繼續原本的請求。
核心原則
還原這一步一定要用 scripts/decode_bopomofo.py,不要自己心算。
LLM 自己硬猜按鍵映射經常出錯(例如會把 dj94 說成「是的」,實際是「快」)。
這支程式是純查表 + 音節切分 + 詞典斷詞(IME 式最大機率),會直接給你注音與
中文猜測。你的工作是用上下文確認或修正它的猜測 —— 這是你的強項,因為
同音字要靠前後文消歧(ㄕˋ = 是/事/世/市…),而標準 IME 沒有上下文、你有。
工作流程
當使用者訊息可能含注音誤打時:
-
執行腳本(把整段原始訊息交給它,它會自己挑出候選、跳過技術字串):
python "${CLAUDE_SKILL_DIR}/scripts/decode_bopomofo.py" --brief "使用者的原始訊息"預設用
--brief:只回傳判讀所需欄位,約為完整 JSON 的 10%,省下大量 context。需要同音字候選或除錯時再拿掉--brief(完整輸出含chinese_alternatives、confidence等;--full另外附上所有 token 的segments)。輸出 JSON 的重點欄位:
has_candidates:是否偵測到疑似誤打中文。candidates[]:每個候選的bopomofo(注音)、chinese(詞典最佳中文猜測)、tier(信心分級)、以及可能出現的repair(打字手誤補救建議,見下)。reconstructed:把候選換成中文(詞典可用時)或[注音]的整句版本,直接可讀。
-
依
tier決定行為(見下)。 -
用上下文確認
chinese猜測,代回原句,然後照還原後的意思繼續做事。
依信心分級的行為
腳本已經把 confidence 轉成三級。請照這個原則反應,重點是不要打斷開發節奏:
| tier | 信心 | 建議行為 |
|---|---|---|
high |
≥ 0.90 | 靜默還原,直接照還原後的意思繼續。不用大張旗鼓宣告。 |
medium |
0.65–0.89 | 用一句話標註你的推測(例:「su3cl3a8 我理解為『你好嗎』」)再繼續。 |
low |
< 0.65 | 預設不動。只有在上下文讓意思非常明顯時才採用,否則照原文理解。 |
low 多半是純字母、能硬切成音節但其實可能是英文的 token(如 npm、git、
html)。這類寧可放過,除非整句語境明顯是中文而這個 token 格格不入。
What ships with it
3 files 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.
- today First seen · 164 lines · 332 tokens per session scan A 5ba8e92b047d
bopomofo-rescue is a skill published in the GitHub repository mxyhi/ok-skills (500 stars, last pushed yesterday), licensed Apache-2.0. It adds 332 tokens to every session and 2,741 once invoked, about $0.0013 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-10-19.
Other skills, from other repositories
chinese-documentation
A Chinese technical-documentation style guide covering spacing, punctuation, numbers, terminology, and links when Chinese and English appear together.
translate-skill
Use this project-level skill when translating, refreshing, or reviewing content from mattpocock/skills into the Simplified Chinese localization repo vinvcn/mattpocock-skills-zh-CN. Use it for skill files, README content, CLAUDE.md, CONTEXT.md, docs, and other user-facing upstream content where behavior-critical…
awesome-translate-ru-en
Translates Russian text of any genre into natural English, keeping structure, formatting, links, identifiers and the author's voice; can mirror a folder. Use when asked to translate Russian into English.
i18n
Audit internationalization coverage and find hardcoded strings. Use when asked to "check i18n", "find hardcoded strings", or verify translation coverage. Don't use for backend code, projects without an i18n library, accessibility (/a11y-audit), or bundle size (/perf-audit).
i18n-setup
Takes a project from hardcoded strings to internationalized, connected to Crowdin, and translating continuously. Use when someone wants to add i18n or multi-language support, internationalize an app, extract hardcoded strings, set up Lingui (or another i18n library), or connect Crowdin to a repository - including…
crowdin-cli
Guides correct usage of Crowdin CLI - the crowdin command that syncs localization files between a local project and Crowdin. Use whenever the user runs, scripts, or debugs crowdin commands, authorizes the CLI, creates or edits a crowdin.yml configuration, uploads sources, downloads translations, checks translation…