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 SonicGarden/copy-tuner-ruby-client --skill copy-tuner-to-locales-migrate-prefixgit clone --depth 1 https://github.com/SonicGarden/copy-tuner-ruby-clientWrote 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/sonicgarden/copy-tuner-ruby-client/copy-tuner-to-locales-migrate-prefix)<a href="https://agentmods.dev/skills/sonicgarden/copy-tuner-ruby-client/copy-tuner-to-locales-migrate-prefix"><img src="https://agentmods.dev/badge/skills/sonicgarden/copy-tuner-ruby-client/copy-tuner-to-locales-migrate-prefix/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/sonicgarden/copy-tuner-ruby-client/copy-tuner-to-locales-migrate-prefix"><img src="https://agentmods.dev/badge/skills/sonicgarden/copy-tuner-ruby-client/copy-tuner-to-locales-migrate-prefix.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Agent Snooping · line 182 Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.Fix: Remove all code or instructions that list or read other skills' files or directories. Skills should operate independently; cross-skill access is a privilege escalation.
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.00179 | $0.06395 |
| Opus 5 | $0.00089 | $0.03197 |
| Sonnet 5 | $0.00036 | $0.01279 |
| Haiku 4.5 | $0.00018 | $0.00639 |
Grade A, and why
copy-tuner-to-locales-migrate-prefix 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 12d 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 — 298 lines — stays where its author put it; the contents beside it link to each section on GitHub.
copy_tuner → config/locales prefix 単位ローカル化スキル
copy_tuner(copy_tuner_client gem)で集中管理している i18n データを、prefix(正規表現)単位で
Rails 標準の config/locales 配下の YAML 管理へ移すためのワークフロー。1 回の実行で 1 prefix だけ扱う。
使い方は 2 つある:
- 部分ローカル化 — 特定 prefix だけを恒久的に
config/locales管理にする。gem は残したままで、 CopyTuner 管理と locales 管理の二層が定常状態になる。 - 全移行 — 上記を全 prefix ぶん繰り返す。全 prefix の移行が完了したら
copy-tuner-to-locales-cleanupスキルで gem・CI・deploy・docs・MCP をまとめて撤去する。
どちらの用途でもこのスキルがやること(手順 0〜10)は同一で、差は「何回回すか」と「最後に cleanup へ 進むか」だけ。
このスキルは特定のリポジトリに依存しない。project_id・ファイルパス・CI 構成はプロジェクトごとに異なるので、
固有値を覚えるのではなく毎サイクル、自分が編集する箇所(initializer の regexp・config/locales)を探索して
見つけ直す(手順 2)。種別ごとの典型例は references/example-touchpoints.md を参照。
なぜ prefix 単位で切るのか
一発で全 i18n をローカル化すると、移行漏れ(ローカル YAML に書き忘れたキー)が一斉に未訳化して事故になる。 prefix 単位なら、移した範囲だけが影響を受け、移行漏れはその範囲の未訳として小さく顕在化する。安全な prefix から 順に潰していける。
前提となる gem 機能(local_first_key_regexp)
copy-tuner-ruby-client #110 で追加された
local_first_key_regexp を使う。挙動の要点(references/local-first-regexp.md に詳細):
- locale を除いたキー(
views.foo等)が regexp にマッチすると、I18nBackend#lookupは CopyTuner キャッシュもアップロードキューも一切見ず、Rails 標準バックエンド(I18n::Backend::Simple)に委譲して ローカル YAML だけを引く。これを完全分離と呼ぶ。 - 完全分離なので、マッチキーがローカル YAML に無ければ即
nil(未訳)。CopyTuner へフォールバックしない。 これが「移行漏れを未訳として顕在化させる」仕組み。 - マッチしないキーは従来どおり CopyTuner キャッシュ優先 → 無ければローカル、という動作のまま。
- regexp は単一(配列非対応)。複数 prefix は
Regexp.unionで 1 本に積み上げる。
gem を残したまま regexp に prefix を足していくだけなので、CopyTuner と config/locales は安全に共存する。 部分ローカル化ならこの共存が定常状態、全移行なら移行途中の状態としてそのまま成り立つ。
ワークフロー(1 サイクル = 1 prefix)
0. 対象 prefix の受け取り(引数)
スキル引数で対象 prefix を渡せる(例: devise / activerecord.attributes / views.users)。
- 引数あり … それを今回の対象とし、手順 4 の選定はスキップする。ただし手順 3 の全件 export は
実行する(手順 6 の
--export入力として必須なので省けない)。 - 引数の prefix が export に存在しなければ、その旨をユーザーに報告して中断する(手順 6 のスクリプトも 同じ条件で異常終了するが、手順 3 の時点で気づけるほうが早い)。
- 引数なし … 従来どおり手順 4 の基準で 1 つ選び、選定結果をユーザーに提示してから手順 5 へ進む。
What ships with it
5 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.
- 12d ago First seen · 298 lines · 179 tokens per session scan A da503fc465b4
copy-tuner-to-locales-migrate-prefix is a skill published in the GitHub repository SonicGarden/copy-tuner-ruby-client (11 stars, last pushed 4d ago), licensed MIT. It adds 179 tokens to every session and 6,395 once invoked, about $0.0009 per session on Opus 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
new
Create a new project to start development quickly.
rspec-conventions
Rootstrap RSpec conventions. Use when writing, reviewing, or editing RSpec test files (spec//spec.rb, spec/railshelper.rb, spec/spechelper.rb, spec/support//.rb) or factories. Covers describe/context structure, let/subject, matchers, factories, mocking/stubbing, shared examples, and spec types (model, request…
ruby-patterns
Ruby/Rails: blocks, metaprogramming, ActiveRecord, Sidekiq, RSpec, Sorbet, Hanami. Triggers: Ruby, Rails, ActiveRecord, Sidekiq, RSpec, Gemfile, bundler, Hanami, Sorbet.
ruby-rules
Ruby coding rules: style, patterns, security, testing. Triggers: .rb, Gemfile, .gemspec, Rails, ActiveRecord, Sidekiq, RSpec, Sorbet, rubocop.
simplify
Simplifies and refines Ruby on Rails code following 37signals patterns and the One Person Framework philosophy, while preserving exact functionality. Focuses on recently modified code unless instructed otherwise. Use this skill when simplifying or refactoring Rails code, reviewing recently written Rails code for…
ruby-expert
Expert-level Ruby development with Rails, modern features, testing, and best practices. Use when the user mentions Ruby on Rails, RSpec, gem, Sinatra, or metaprogramming, or when the task involves Ruby 3+ Features, Object-Oriented, Functional Features, or Pattern Matching.