Communitygithub.com

copy-check (i18nコピーチェック)

next-intlメッセージカタログとコード内のsv/en COPYオブジェクト間のキーパリティを比較し、プレースホルダーや配列の不一致、他言語の単語の混入(英語の中の「och」バグ)を検出。その後、クレーム、価格、禁止フレーズを手動でレビューします。コピーや翻訳の編集後、新しいテキストを含むページをリリースする前、または校正・翻訳チェックを依頼されたときに使用します。

copy-check (i18nコピーチェック) とは?

このスキルは、多言語対応のUIテキスト(コピー)の品質を機械的かつ人間的な判断でチェックするためのものです。主にnext-intlメッセージカタログ(JSON)とコード内に直接書かれたsv/enの`COPY`オブジェクトを比較し、キーの欠落、プレースホルダー(`{name}`、`${x}`、`{{x}}`)の不一致、配列長の違いを自動的に検出します。また、「och」などのスウェーデン語の機能語が英語テキストに漏れ込む典型的な国際化バグを警告します。機械的パスの後、開発者はCLAUDE.mdやプロジェクトメモリに基づいて禁止フレーズの有無を確認し、価格、試用期間、機能制限などの主張が実際の設定や利用規約と一致しているかを精査します。さらに、スウェーデン語と英語それぞれのロケール品質(語順、文法、通貨書式、日付形式)をチェックし、ページ間での用語の一貫性を確認します。このスキルはBash、Node.js、Read、Grep、Glob、Editツールを使用し、Claude CodeなどのAIエージェントがプロジェクトルートまたは指定されたディレクトリに対して実行できます。最終的には、すべてのエラーが修正され、警告が判断され、禁止フレーズがなく、事実に基づく主張が設定やソースと一致していることを確認した後、簡単なサマリーをユーザーに提供します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/iamk3nnyt/claude-skills/tree/HEAD/skills/copy-check

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

copy-check

1. 機械的パス

引数: $ARGUMENTS

node ${CLAUDE_SKILL_DIR}/scripts/i18n-parity.mjs <dir, デフォルト: カレントプロジェクトのアプリルート> --locales sv,en

このスクリプトは、**/messages|locales|i18n/<locale>.json カタログと、TS/JS内の兄弟 sv: {…} / en: {…} オブジェクトリテラルを検出します。以下の内容を報告します:

  • ERROR: キー不足、配列長の不一致、プレースホルダーの不一致 ({name}, ${x}, {{x}})。これらはすべて修正してください。
  • warn: 英語文字列中のスウェーデン語機能語(och, att, för, med, inte, är, …)、およびその逆。また、長く同一の文字列(未翻訳?)。それぞれを判断してください。製品名や引用されたスウェーデン語の用語は問題ありません。
  • unparsed: ミニパーサーが読み取れなかったブロック。該当ファイルを目視で確認してください。

これらのパターン外で構築された文字列(JSXリテラル、インラインデフォルト値を持つ t() など)は対象外です。変更されたファイルを、誤ったロケールのハードコードされたテキストについてgrepしてください。

2. 判断パス(最初に変更ファイル、次にそれらが表示されるページ)

  • 禁止または古いフレーズ: リポジトリのCLAUDE.mdとプロジェクトのメモリエントリを読んでください。プロジェクトは、廃止されたタグライン、必須のリード行、公に言ってはいけないことのリストを保持していることがよくあります。
  • 主張と現実の一致: 価格、試用期間、制限および「無料」を実際の価格設定、Stripeの製品、利用規約ページと照合してください。カバレッジの主張は、表示上限をカバレッジとして引用してはいけません。「最速」、「すべての」、「あらゆる」には出典が必要です。
  • 法律/同意の文言: マーケティング同意は決して利用規約にバンドルされてはならず、スウェーデン法の用語が正しいこと(ångerrätt, personuppgifter)を確認してください。
  • ロケール品質(スウェーデン語の例): 自然な語順、複合語の誤った分割(「hyres lägenhet」)がないこと、正しい en/ett、小数点カンマと数値の後ろの kr(1 299 kr)、日付は 19 okt / 2026-10-19 の形式であること。
  • 英語品質: 文頭のみ大文字(sentence case)であること、スウェーデン語の句読点習慣がないこと、通貨がロケールに合わせてフォーマットされていること。
  • 一貫性: 同じものを指す用語がページ間で同一であること(既存のものを採用してください)。

終了条件

  • i18n-parity が終了コード0で終了するか、残っているすべての警告が判断されている。
  • 禁止フレーズがなく、すべての事実に基づく主張が設定、規約、または出典と一致している。
  • 修正はコピーのみに行われ、デザインの変更が紛れ込んでいない。
  • ユーザー向けの短いサマリーが提供されている。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

iamk3nnyt/claude-skills

Turns a feature idea into a one-page spec covering problem, audience, MVP scope, non-goals, numbered Given/When/Then acceptance criteria, affected routes, data and emails, and open questions. Use when the user says "brief", "spec this", "scope this" or "what would it take", or before starting a feature whose scope is unclear.

iamk3nnyt/claude-skills

Applies an agreed visual direction to a page or component by reusing existing components first, then verifies every width and dark mode with the headless-Chrome audit plus a before/after pixel diff, and reviews against Refactoring UI, Nielsen and WCAG 2.2. Use when asked to redesign, restyle, polish or "make it look like the reference", after design-ref or when the direction is already clear.

iamk3nnyt/claude-skills

Extracts the visual system from a reference site or pasted HTML (colour roles, type scale, spacing scale, radii, shadows, button/card/eyebrow anatomy, tone) and maps it onto the current project's existing tokens as a short token table. Use when the user shares a reference ("make it look like <site>", "in this style", a URL or HTML paste) before a redesign.

iamk3nnyt/claude-skills

QAs a project's transactional and digest emails by rendering every template without DB or network, screenshotting at 600 and 375 px in light, dark and images-off, and checking for placeholder leaks (undefined, NaN, {{…}}), preheader, unsubscribe, alt text, absolute links, Outlook-safe buttons, viewport meta and Gmail's 102 KB clip. Use when email templates change, before sending a campaign, or when asked to check how emails look.

関連スキル