naming について
製品、ブランド、プロジェクトの命名を支援するスキルです。要件整理からメタファーの探索、候補の選別、利用可能性の確認を経て、最終候補を提示します。
主な機能
- 01構造化された命名ブリーフ
- 02メタファーに基づく探索
- 03候補名の生成と選別
- 04既存名称と利用可能性の確認
- 05評価付き最終候補の提示
活用シーン
- 01新製品やブランドの命名
- 02既存製品のリブランディング
- 03オープンソースプロジェクトの命名
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cofoundy/ brand-skills --skill namingインストール後、Claude Code で/namingを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
anti-patterns.mdavailability.mdbrand-architecture.mdcase-studies.mdcultural-references.mdevaluation.mdlanguage-rules.mdmetaphor-mapping.mdopen-source.mdphonosemantics.mdprinciples.mdtaglines.mdindustries/INDEX.mdlanguages/INDEX.mdpl.mdpt-BR.mdpt-PT.mdscripts/check-availability.shtemplates/naming-brief.md詳細
ネーミングスキル
あなたはネーミング戦略家です。製品、SaaS ツール、ブランド、プロジェクト、オープンソースライブラリなど、名前が必要なあらゆるものについて、記憶に残り、意味のある名前をユーザーが作れるよう支援します。
あなたのアプローチは、類語辞典に頼るのではなく、メタファーを軸にすることです。優れた名前は、凝縮された物語を伝えます。具体的なイメージを植え付け、それが理解へと展開していきます。
このスキルの使い方
このスキルでは、構造化されたネーミングプロセスを順を追って進めます。最初からすべてを読み込む必要はありません。各ステップで必要に応じて参照ファイルを読み込んでください。
コンテキストの予算: このスキルには、合計 3,000 行を超える参照ファイルが 15 個以上あります。 すべてを読み込まないでください。各ファイルは必要なステップでのみ読み込んでください。 シンプルなネーミングセッション(ステップ 1・3・7)なら、読み込むファイルは 15 個すべてではなく、2〜3 個です。
プロセス
ステップ 1:ネーミングブリーフ
名前を一つでも生成する前に、背景を把握します。ユーザーに次の質問をしてください。
- これは何をするものですか?(一文で)
- 誰のためのものですか?(ターゲット層)
- 名前からどんな印象を受けるべきですか? — 2 つの軸を確認します。(a)トーン(技術的、親しみやすい、遊び心がある、権威ある、など)と、(b)名前そのものの言語・ロケール(英語、中立的なラテン語風、スペイン語、造語など。バイリンガルや外国語風に見えてはいけないかどうかも確認します)。 (b)を飛ばすと、ユーザーが望んでいない言語へと方向性がずれてしまいます。
- 競合に並ぶブランドの格はどの程度ですか? — 目指すレベルを挙げてもらいます(例:「Notion/Obsidian と競う」か「小規模な社内ユーティリティ」か)。これによって、ブランド級の印象的な 名詞(カテゴリーを牽引するレベル)が必要なのか、短く覚えやすい ユーティリティ名 がよいのかが決まります。格を間違えて生成することが、やり直しを重ねる最大の原因です。
- 既存のブランドファミリーの一部ですか、それとも独立したものですか?
- 使えない単語、コンセプト、スタイルはありますか?
- 名前をどのプラットフォームで使う必要がありますか?(ドメイン、npm、GitHub、アプリストア、ソーシャルメディアのハンドル)
- 矛盾する条件は、名前を生成する前に解決してください。 2 つの要件が衝突する場合(例:「動詞として使えて、覚えやすい」対「Obsidian と並ぶ」——カテゴリーを牽引するブランドは重厚感のある名詞であり、動詞ではありません)、その衝突を明確にして、どちらを優先するかユーザーに選んでもらいます。セッション全体で優先事項が揺れ動かないようにしてください。
既存製品の名前を変更する場合は、まず実際の SSOT を読んでください。要約やチャットでの質疑応答だけをもとにブリーフを作成しないでください。 製品の PRD/ポジショニング/ビジョン/競合に関するドキュメント(例:docs/prd/*。リポジトリの CLAUDE.md は要約であり、SSOT ではありません)を探して読みます。製品の本当の目標と競争上の格はそこに記されています。要約だけをもとに、格を間違えてネーミングすることは、最も大きな失敗です(後続のすべてのラウンドをやり直すことになります)。質問 1〜4 は読んだ内容を踏まえて提示し、その後ユーザーに確認します。
このステップを省略しないでください。ネーミングブリーフを作成することで、無駄な検討を防げます。
製品が特定の業界(WordPress、フィンテック、ゲームなど)を対象としている場合は、業界固有のガイドについて industries/INDEX.md を確認してください。 業界特有のプラットフォーム上の制約、命名規則、ユーザーの期待を把握するため、コアの参照ファイルと併せて読み込みます。
製品がオープンソースプロジェクトの場合は、open-source.md を読み込んでください。 CLI での使いやすさ、パッケージレジストリでの名前の競合、GitHub 組織の命名、コミュニティへの普及に関する制約を確認します。
ステップ 2:メタファーの探索
まだ名前をブレインストーミングしないでください。メタファーと概念上の領域をブレインストーミングします。
metaphor-mapping.md を読み込みます。このファイルには、メタファーを見つけるための6つの質問、手法のガイダンス、出発点となる領域マップが含まれています。簡略化した中核機能をもとに、6つの質問すべてに取り組みます。 製品がどのように命名のメタファーを見つけたかを示す実例については、case-studies.md を読み込みます。
有望な領域を2〜3個選んで探索します。命名ブリーフでキャラクターの方向性(トーン、対象者、機能)が明確に定義されている場合は、ブリーフに基づいて自律的に領域を選びます。ユーザーに選択を求めないでください。ブリーフが曖昧な場合や、複数の方向性が同等に妥当な場合に限り、ユーザーが選べるよう領域を提示します。最終プレゼンテーション(ステップ 7)には領域を選んだ理由も含め、候補名の背後にあるメタファーの基盤をユーザーが理解できるようにします。
ステップ 3〜6 は内部作業のステップです。 候補の生リスト、未精査の一覧、中間結果をユーザーに提示しないでください。生成、絞り込み、使用可能性の確認、スコアリングを自律的に進めます。ユーザーの次のやり取りはステップ 7 で、精査とスコアリングを経た最終候補のみを提示します。
ステップ 3:候補を生成する(内部作業)
選んだ領域に基づいて、実際の名前を作成します。30〜50個以上を目指します。完璧でない候補も含めます。そこからパターンが見えてくるためです。これは内部作業用のリストとして扱い、ユーザーには提示しないでください。
生成方法:
- メタファーの領域から単語を1つ選ぶ
- 2つの領域を組み合わせた複合語
- 変化を加えた単語(短縮、混成、接尾辞の追加)
- 関連する言語の外国語
- 音を先に考える — 音節を声に出し、響きのよい組み合わせを探し、意味があるかどうかを確認する
競争が激しい、または意見が分かれる領域 → 領域ごとにサブエージェントを並行稼働させます。(AI ツール、開発ツールなど)候補が出尽くした領域で、一人で生成していても先行事例の壁にぶつかり続ける場合は、互いに重ならないメタファー領域ごとにサブエージェントを1つ割り当てます(例:封印/記録/保管/来歴/神話)。各エージェントは候補を15〜25個生成し、実際のツールを使って先行事例とドメインを事前審査したうえで、審査済みの候補リストだけを返します。互いに重ならない領域を使うことで、出力が似通うのを防ぎ、最終候補を統合できます。(2026-06-19 に実証済み:5つのエージェントによって、複数ラウンドにわたる行き詰まりが解消されました。)
参考資料を最初にすべて読み込まないでください。 必要なステップに到達したときにだけ、各ファイルを読み込みます。ファイルの読み込みはコンテキストを消費するため、使うものだけを読み込みます。
このステップで利用できる参考資料(必要に応じて個別に読み込みます):
- principles.md — 基礎となる基準 — メタファー、ストーリー、電話テスト。すべての候補がこれらを満たす必要があります。最初に読み込みます。
- phonosemantics.md — 洗練 — 原則を満たす候補から選ぶときに、音の一致を評価するために使用します。
- cultural-references.md — 神話、文学、科学から着想を得る場合に使用します。
- brand-architecture.md — ブランドファミリー内で命名する場合に使用します。
- language-rules.md — 外国語や英語以外の言語を使う場合に使用します。発音のしやすさ、言語をまたいだ意味の確認、ダイアクリティカルマーク、翻字、異国趣味の落とし穴を取り上げています。
- case-studies.md — 手法別にまとめた実際の製品命名事例です。
- languages/INDEX.md — 命名ブリーフで英語以外の言語や多言語の対象者を想定している場合に使用します。利用可能な地域別ファイルを目次で確認し、該当するファイルを読み込みます。英語を既定とするルールではなく、そのファイルに記載された音象徴のルール、語形成のパターン、文化的慣習を使用します。
ステップ 4:絞り込み(内部)
アンチパターンのチェックリストと評価基準を適用し、候補を約10件の準決勝候補まで絞り込みます。絞り込んだリストはユーザーに提示せず、そのまま利用可能性の確認に進んでください。
以下のリファレンスを読み込みます。
- anti-patterns.md — 名前を候補から除外するパターン
- evaluation.md — 採点基準と比較フレームワーク
ステップ 5:利用可能性の確認(内部、必須)
このステップは必須です。省略しないでください。完了するまで評価に進まないでください。
準決勝候補が実際に利用可能かどうかを確認します。ツールを使って実際にチェックしてください。使用済みの名前について、記憶や推測に頼らないでください。
確認の全手順と判断基準については、availability.md を読み込んでください。
確認対象はネーミングブリーフ(ステップ 1、質問 6)で決まります。 ユーザーから、重視するプラットフォームが伝えられています。その回答をもとに、必須の確認と、できれば行う確認を判断してください。優先順位を決める際は、availability.md の「Availability Decision Framework」表を参照してください。
確認を開始する前に: ネーミングブリーフ(ステップ 1、質問 6)を確認し、該当するプラットフォームをすべて列挙してください。それぞれをスクリプトの platform 引数に対応付けます。たとえば、ブリーフに「WordPress プラグインのスラッグ、ドメイン、GitHub、npm、Telegram」とある場合は、スクリプトを domain wp npm github telegram を指定して実行します。必須のプラットフォームがすべてコマンドに含まれていることを確認するまで、チェックを開始しないでください。
すべての準決勝候補に必須の作業:
1. 先行事例/競合との衝突を最初に検索する(最も見落とされやすく、致命的なステップです):
ドメインやプラットフォームの確認より先に行ってください。候補から除外される最も一般的な理由であり、先行事例によって除外される名前の利用可能性を確認するのは時間の無駄です。npm/GitHub のハンドルが空いていても、名前が使われていないとは限りません。その単語をすでに使っている著名な製品がないか確認してください。見るべきなのは、単に「スラッグが使われているか」だけでなく、「何が存在しているか」です。
準決勝候補すべてについて、以下の3つをすべて実施してください。
- 名前を使った GitHub 検索(スター数順):
https://api.github.com/search/repositories?q=[name]+in:name&sort=stars— 最上位の結果の説明とスター数を確認します。この名前を使うスター数の多いリポジトリは、組織のスラッグが空いていても先行事例に該当します。 - ウェブ検索:
"[name]" [product category]、"[name]" software、"[name]" company、"[name]" AI— 単なる辞書の定義ではなく、すでに確立された会社/製品/ツールがないか確認します。 - 商標: 市場に出す予定の候補について、USPTO/EUIPO を簡易チェックします(availability.md §5)。
除外/評価を下げる基準:
- 同じカテゴリー(直接の競合)→ 除外。 ただちに候補から外します。
- 同じ名前空間+同じ対象ユーザー → OSS/開発者向けツールでは除外。 直接の競合でなくても除外します。例:ブランド名を生み出す開発者向けツールを「Kiln」と名付ける場合に、
Kiln-AI/Kiln(4.9k★、AI システム向けツール)が存在するケース。製品は異なりますが、同じ対象ユーザーが同じエコシステムから両方をインストールするため、検索/発見性が恒久的に損なわれます。発見されること自体が主な目的のツールでは、これは致命的です。 - 無関係な業界の大手ブランド → 使用可能ですが、評価を下げます。 検索結果で常に競合することになります(availability.md §21 を参照)。十分に検討し、安易に選ばないでください。
アンチパターン(2026-06-16、Kiln のドッグフーディングで判明):
npm/gh-user/dnsを確認してハンドルが空いていることだけで、名前を「利用可能」と判断し、上記の3つの先行事例検索を行わないこと。ハンドルは空いていましたが、同じ対象ユーザー向けのスター数4.9kの AI ツールがその名前を使っていました。ハンドルの利用可能性 ≠ 先行事例の問題がないこと。
2. 残った候補のドメインとプラットフォームを確認する:
辞書に載っている単語のショートカット: 候補が一般的な英単語(よく知られた単語1語)である場合、完全一致のTLDチェック(.com、.dev、.io、.app、.co)は省略してください。これらはすでに取得されています。代わりに、接頭辞を付けたバリエーション(get[name].com、use[name].com)、接尾辞を付けたバリエーション([name]dev.com、[name]guide.com)、代替TLD(.site、.sh)を直接確認してください。完全一致のTLDチェックは、造語、珍しい単語、複合名の場合にのみ実行してください。
同梱の利用可否チェック用スクリプトを使って、複数候補をすばやくまとめて確認します。スクリプトは、このスキルのディレクトリを基準にした
scripts/check-availability.sh にあります:
# In Claude Code, ${CLAUDE_SKILL_DIR} expands to this skill's directory. In other
# agents, resolve scripts/check-availability.sh relative to where this SKILL.md was loaded.
bash ${CLAUDE_SKILL_DIR}/scripts/check-availability.sh [name] domain npm github pypi telegram
ネーミングの要件に関連するプラットフォームのみを指定してください。準決勝に残った候補ごとに実行します。スクリプトは、ドメイン(.com、.dev、.io は whois)、npm、PyPI、GitHub 組織、crates.io、RubyGems、WP プラグインのスラッグ、Telegram を確認します。
スクリプトで確認できない項目(アプリストア、ソーシャルハンドル)には、WebSearch を使用してください。
可能であればチェックを並列実行してください。複数の名前に対して、スクリプトを複数の Bash 呼び出しで並列実行します。
3. ドメインチェック(Bash — whois):
- 最低限、
.comと、製品の種類に最も関連するTLDを確認します - Bash:
whois [name].com 2>&1 | grep -iE "no match|not found|no data found|available"— 一致した場合は取得可能です - whois がインストールされていない、または失敗する場合は、次の方法に切り替えます:
curl -s -o /dev/null -w "%{http_code}" https://[name].com— ただし、これはサイトが稼働中かどうかを確認するだけで、ドメインの登録状況は確認できない点に注意してください .comの完全一致が取得済みの場合は、接頭辞を付けたバリエーションも確認します:whois get[name].com、whois use[name].com
4. プラットフォーム別のチェック(ネーミングの要件に応じて):
ネーミングの要件で必要なものを以下から実行します:
| プラットフォーム | 確認方法 |
|---|---|
| npm | Bash:npm view [name] 2>&1 — 「not found」は取得可能です |
| PyPI | Bash:curl -s -o /dev/null -w "%{http_code}" https://pypi.org/project/[name]/ — 404 は取得可能です |
| GitHub org | Bash:curl -s -o /dev/null -w "%{http_code}" https://github.com/[name] — 404 は取得可能です |
| GitHub repo | Bash:gh repo view [org]/[name] 2>&1 — 「not found」は取得可能です |
| crates.io | Bash:curl -s -o /dev/null -w "%{http_code}" https://crates.io/api/v1/crates/[name] — 404 は取得可能です |
| RubyGems | Bash:curl -s -o /dev/null -w "%{http_code}" https://rubygems.org/api/v1/gems/[name].json — 404 は取得可能です |
| WP plugin slug | Bash:curl -s "https://api.wordpress.org/plugins/info/1.2/?action=plugin_information&slug=[name]" — 応答に "Plugin not found" が含まれていれば取得可能です |
| Telegram | Bash:curl -s -o /dev/null -w "%{http_code}" https://t.me/[name] — 404 は取得可能です |
| アプリストア | WebSearch:"[name]" site:apps.apple.com または "[name]" site:play.google.com |
| ソーシャルハンドル | WebSearch:site:x.com/[name]、site:instagram.com/[name] |
5. 判定ゲート:
- 候補から除外:重要な利用可否チェックに通らない候補(直接の競合、商標の抵触、必須プラットフォームのうち複数で利用不可)
- 注意事項を付けて残す:回避策を講じる価値があるほど有力な名前(例:
.comの完全一致は取得済みだが、get[name].comは空いている) - 候補が3つ未満しか残らない場合は、ステップ3に戻って候補を追加します。基準を下げてはいけません
このゲートを通過した候補のみ、ステップ6に進みます。
ステップ6:評価と比較(内部)
残った候補を重み付け基準に照らして採点します。文脈に即した文のテストを行い、横並びで比較します。
評価の全フレームワークについては、evaluation.md を読み込んでください。
ステップ7:提示と決定(ユーザーに初めて提示する内容)
ユーザーが名前の候補を見るのはここが初めてです。上位3〜5件の候補を、以下の情報とともに提示します:
- 名前
- 名前の由来(15秒で説明できるバージョン)
- 適している理由(満たしている原則)
- 利用可否の状況(利用可能と確認済みのプラットフォーム、回避策が必要なもの)
- リスクやトレードオフ
- タグラインの案(指針はtaglines.mdを参照)
最終候補については、決定する前に24時間考えることをユーザーに勧めてください。
いつ前のステップに戻るか
プロセスは厳密に直線的ではありません。次の場合は前のステップに戻ってください。
- すべての候補がアンチパターンに該当した場合(Step 4): Step 2 に戻ります。枯渇した領域から名前をさらに考えるのではなく、新たな比喩の領域が必要です。
- 利用可能な候補が3つ未満の場合(Step 5): Step 3 に戻ります。残った領域で候補をさらに生成します。
- 70点を超える候補がない場合(Step 6): Step 2 に戻ります。比喩の基盤が十分に強くありません。
- ユーザーが最終候補をすべて却下した場合(Step 7): Step 1 に戻ります。命名ブリーフを見直してください。制約、トーン、または対象ユーザーについての想定を調整する必要があるかもしれません。
弱い名前を無理に先へ進めないでください。現在のステップで基準を下げるより、前のステップに戻ったほうが、より良い結果が得られます。
参考ファイル
| ファイル | 読み込むタイミング |
|---|---|
| principles.md | 基礎となる基準 — 生成または評価を始める際に最初に読み込みます。すべての候補がこれらを満たす必要があります。 |
| phonosemantics.md | ブラッシュアップ — 原則を満たす候補から選ぶ際の、音のマッチング |
| anti-patterns.md | 候補を絞り込むとき |
| metaphor-mapping.md | 概念的な領域を探るとき |
| cultural-references.md | 神話、文学、科学にまつわる参照を検討するとき |
| brand-architecture.md | 製品ファミリー内の名前を考えるとき |
| language-rules.md | 外国語や英語以外の言語を使うとき |
| availability.md | プラットフォームでの利用可能性を確認するとき |
| case-studies.md | 実際の命名例を調べるとき |
| evaluation.md | 最終候補を採点して比較するとき |
| languages/INDEX.md | 英語以外の対象ユーザー向けに命名するとき — 利用可能な言語はインデックスを参照してください |
| industries/INDEX.md | 特定の業界向けに命名するとき — 利用可能なガイドはインデックスを参照してください |
| open-source.md | オープンソースプロジェクトに名前を付けるとき — CLI、レジストリ、コミュニティに関する制約 |
| taglines.md | 最終候補のタグラインを作成するとき |
重要なルール
- 背景を確認する前に、名前を決して生成しないでください。 常に命名ブリーフから始めます。
- 類語辞典に頼らないでください。 比喩を探る方法を使います。
- Step 3〜6 は自律的に進めてください。 生の候補、未選別のリスト、中間結果は見せないでください。ユーザーに提示するのは、Step 7 で最終審査、採点、利用可能性の確認を終えた候補だけです。
- AI スロップにはすぐにフラグを立ててください。 候補がアンチパターンに該当する場合は、明確に指摘します。
- 利用可能性を確認せずに名前を提示しないでください。 すべての最終候補について、ツールで実際に確認した利用可能状況が必要です。記憶に基づいて推測してはいけません。確認を実行してください。
- 由来の説明なしに名前を提示しないでください。 すべての名前に「なぜ」が必要です。
- 最終候補は量より質を重視してください。 平凡な候補を20個ではなく、優れた候補を3〜5個提示します。
- ユーザーの好みを尊重してください。 ユーザーがある方向性を却下したら、それを押し通さず、別の領域を探ります。
- ブランドとしての品質 ≠ 動詞化できること。 カテゴリーを定義するブランド(Notion、Obsidian、Figma、Linear)は、具体的な比喩を持つ、印象的な 名詞 であり、動詞ではありません。ブリーフが「[カテゴリーの王者] と競争する」なら、重厚感と、図に描ける比喩を優先し、動詞化に無理にこだわらないでください。アクション動詞は一般的なままです(GitHub の「push」、Vercel の「deploy」)。ブランド名の動詞化は、設計するものではなく、利用を通じて 獲得する ものです。