Borrowing it
Nothing to install: this file belongs to SonicGarden/copy-tuner-ruby-client. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/SonicGarden/copy-tuner-ruby-client/master/CLAUDE.mdgit 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/instructions/sonicgarden/copy-tuner-ruby-client/claude-md)<a href="https://agentmods.dev/instructions/sonicgarden/copy-tuner-ruby-client/claude-md"><img src="https://agentmods.dev/badge/instructions/sonicgarden/copy-tuner-ruby-client/claude-md/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/instructions/sonicgarden/copy-tuner-ruby-client/claude-md"><img src="https://agentmods.dev/badge/instructions/sonicgarden/copy-tuner-ruby-client/claude-md.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.01349 | $0.01349 |
| Opus 5.5 | $0.00540 | $0.00540 |
| Sonnet 5.5 | $0.00270 | $0.00270 |
| Haiku 4.5 | $0.00135 | $0.00135 |
Grade A, and why
copy-tuner-ruby-client CLAUDE.md 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 2mo 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 — 52 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CLAUDE.md
CopyTuner の Ruby クライアント gem。Rails アプリの I18n を CopyTuner サーバと同期する。
コマンド
- テスト:
bundle exec rspec(単一ファイル:bundle exec rspec spec/copy_tuner_client/cache_spec.rb) - 特定の Rails バージョンでテスト:
BUNDLE_GEMFILE=gemfiles/8.0.gemfile bundle exec rspec - Lint:
bundle exec rubocop(sgcopを継承) - フロントエンドビルド:
pnpm build(開発:pnpm dev) - フロントエンド Lint/Format:
pnpm check(Biome) - gem リリース:
bundle exec rake build|install|release
Node.js / pnpm は mise(mise.toml)で管理。フロントエンドのツールチェーンは pnpm + Biome + Vite + TypeScript。
アーキテクチャ
Configuration#apply(lib/copy_tuner_client/configuration.rb)が全コンポーネントを組み立てる起点:
Client— CopyTuner サーバ / S3 との HTTP 通信Cache— Mutex で保護された blurb ストア。Hash のように振る舞う。アップロードキューを管理I18nBackend— デフォルトの I18n backend を置き換える(I18n.backend = ...)。lookup で Cache を参照Poller/ProcessGuard— バックグラウンド同期スレッド- Rack middleware
RequestSync/CopyrayMiddleware— 開発環境でのリクエスト毎同期とオーバーレイ Rails 統合は engine.rb のイニシャライザ経由(ヘルパー/SimpleForm フック、アセット precompile)。
開発スタイル
- RED/TDD で進める: 実装前に必ず失敗するテストを書き、テストが RED になることを確認してから実装する
- 新機能・バグ修正ともに「テスト追加 → RED 確認 → 実装 → GREEN」のサイクルを守る
- テストを書かずに実装を先行させない
- コメントは WHY のみ日本語で書く: 識別子やコードから読み取れる WHAT は書かない (例外: RuboCop Style/Documentation 対応でクラス/モジュール直前に追加する一行の説明コメントは、名前だけでは把握しづらいクラスの役割を一目で示す目的のため、WHAT の説明も可)
- テストの
describe/context/itの説明文は日本語で書く: 識別子(クラス名・メソッド名など)はそのまま
Gotchas
- フロントエンドは
src/*.tsを編集する。app/assets/*は Vite のビルド成果物なので直接編集しない (vite.config.ts がsrc/main.ts→app/assets/javascripts/copytuner.jsを出力)。 local_first_key_regexp— locale を除いたキー対象・lookup 時に作用(ローカル YAML 優先)。 local_first キーのアップロード抑止はCache#[]=に集約されている。- poller スレッドの fork 対応は
ForkHook(Process._forkに prepend)に集約する (fork の直前にPoller#stopで協調的に停止し、fork 後に親子の両方で張り直す。理由: fork 後の子に残る Thread オブジェクトの見え方(alive?/joinの結果)はドキュメント化されていない CRuby の実装依存なので、 pid を記録して差分を見るような後始末には寄せない。子でも張り直すので、Puma のfork_workerのように worker が worker を fork する構成でもサーバ固有のフックなしで poller が立つ。 アプリケーションサーバごとのフック(ProcessGuard#register_*_hook)を増やす前にここで足りるか確認する)。 起動方法・モードごとにどのプロセスで poller が起動するかはdocs/poller-startup.mdに実測結果がある。 Poller#pollは例外をスレッドの外へ漏らさない (Poller#stopは fork 経路から呼ばれ、Thread#joinはスレッドの例外を再送出するため、漏らすと poller の失敗がアプリ側のforkを壊す)。- アップロード抑止の新ルールは
Cache#[]=に足す。I18nBackendの書き込み経路(lookup/default/store_item)ごとに個別ガードを足さない (理由: cache への書き込みは全経路が最終的にCache#[]=を通る単一の関門。経路ごとにガードを足すと付け忘れの穴が生まれ、同じチェックが分散して保守負担になる。実際 local_first の抑止は当初default個別に足したが穴が残り、Cache#[]=への集約に作り直した)。
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.
- 2mo ago Changed · +10 lines · +344 tokens per session 4060f13d3763
- 2mo ago First seen · 42 lines · 1,005 tokens per session scan A 23d83e9d7b0d
copy-tuner-ruby-client CLAUDE.md is an instructions file published in the GitHub repository SonicGarden/copy-tuner-ruby-client (11 stars, last pushed yesterday), licensed MIT. It adds 1,349 tokens to every session, about $0.0054 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.
copy-tuner-ruby-client CLAUDE.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| copy-tuner-ruby-client CLAUDE.mdSonicGarden/copy-tuner-ruby-client | Instructions file | 11 | yesterday | MIT | A | 1,349 | Claude Code |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | yesterday | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |