faceted-promptingでAIコーディングアシスタントのスキル設計を体系化する方法

当ページのリンクには広告が含まれています。
IT女子 アラ美
🚀 スキル管理がコピペだらけで消耗してない?
開発環境の裁量がある社内SEなら、技術選定も自分で決められるわよ
社内SEを目指す方必見!IT・Webエンジニアの転職なら【社内SE転職ナビ】
この記事の結論
AIコーディングアシスタントのスキル管理にはfaceted-promptingが最適です。プロンプトをPersona・Policy・Knowledgeなどの部品に分割し、YAMLで組み合わせることでCLAUDE.mdの肥大化を防ぎつつ、Claude CodeとCodex両方にスキルを一括展開できます。本記事ではインストールから実践的な運用パターンまでを解説します。

お疲れ様です!IT業界で働くアライグマです!

Claude CodeやCodexのスキルファイルが増えるにつれて、「あのルールどこに書いたっけ」「同じ記述を複数スキルにコピペしている」という経験はないでしょうか。faceted-promptingは、プロンプトを関心事ごとの部品(facet)に分解し、YAML定義で自在に組み合わせるnpmツールです。この記事では、導入から実務での活用パターンまでを順を追って解説します。

目次

スキル管理の課題とfaceted-promptingの全体像

IT女子 アラ美
💡 AIスキルを体系的に学ばないつもり?
オンラインで完結、個人レッスンで確実にスキルが身につく。受講料最大20%OFF
資格と仕事に強い!個人レッスンのプログラミングスクール【Winスクール】

Claude CodeやCodexのスキル機能は強力ですが、プロジェクトが増えるほど管理が破綻しやすくなります。典型的な問題は次の3つです。

  • CLAUDE.mdやスキルファイルに「コーディング規約」「レビュー方針」「アーキテクチャ知識」が混在し、どこに何が書いてあるか分からなくなります。
  • 同じルール(例:命名規則やエラーハンドリングの方針)を複数のスキルファイルにコピペしており、修正漏れが頻発します。
  • Claude Code用に書いたスキルをCodexでも使いたいのに、形式が異なるため二重管理になっています。

faceted-promptingはこれらの課題を、プロンプトを関心事ごとの部品(facet)に分解するアプローチで解決します。facetには5つの種類があります。Persona(振る舞い方)、Policy(守るべきルール)、Knowledge(保持すべき情報)、Instruction(実行内容)、Output Contract(出力形式)です。これらの部品をYAML定義のコンポジション(組み合わせレシピ)で合成し、Claude CodeやCodexのスキルとしてワンコマンドでインストールできます。Antigravity Awesome Skillsの130以上のスキルを活用している方にとっても、独自スキルの管理基盤としてfaceted-promptingは強力な選択肢になります。

IT女子 アラ美
facetに分けるメリットは分かるけど、結局ファイルが増えて管理が大変にならない?

ITアライグマ
修正が1箇所で済むので、トータルの管理コストは確実に下がりますよ!

前提条件と環境整理

faceted-promptingを導入するにあたり、以下の環境が必要です。

  • Node.js 18以上: npmでグローバルインストールするため必須です。
  • Claude Code または Codex CLI: スキルのインストール先として少なくとも一方が必要です。両方あれば同時展開も可能です。
  • 既存のスキルファイル: 移行対象がある場合は事前にバックアップを取っておきましょう。faceted-promptingはスキルディレクトリに直接書き込むため、既存ファイルとの競合に注意が必要です。

なお、faceted-promptingはCLAUDE.mdによるプロジェクト知識管理を置き換えるものではありません。CLAUDE.mdにはプロジェクト固有の指示を残し、汎用的なルールやペルソナをfacetとして外出しにするのが推奨パターンです。

インストールはnpmのグローバルインストールで完了します。


npm install -g faceted-prompting
facet init
facet pull-sample

facet init~/.faceted/ディレクトリを作成し、設定ファイルの雛形を配置します。facet pull-sampleはサンプルのコンポジション(coding・frontend・backend)をダウンロードし、すぐに試せる状態を作ります。

IT女子 アラ美
Claude CodeとCodexの両方にスキルを入れたいけど、設定は別々に必要なの?

ITアライグマ
コンポジション定義は共通で、インストール時にターゲットを指定するだけです!

facetの作成とコンポジション定義

まずは基本となるfacetファイルを作成します。~/.faceted/facets/ディレクトリ内に、関心事ごとのMarkdownファイルを配置します。

Personaファイルの例


# Persona: Senior Backend Engineer

あなたはバックエンド開発に精通したシニアエンジニアです。
- コードの保守性と可読性を最優先する
- パフォーマンスとセキュリティを常に意識する
- レビュー時は根拠を添えて指摘する

Policyファイルの例


# Policy: コーディング規約

- 関数名はsnake_caseを使用する
- 1関数の行数は30行以内に抑える
- エラーハンドリングは例外を握りつぶさず、適切にログ出力する
- テストカバレッジ80%以上を維持する

コンポジション定義

facetを組み合わせるには、YAMLファイルでコンポジションを定義します。~/.faceted/compositions/ディレクトリに配置します。


name: backend-coding
description: バックエンド開発用スキル
facets:
  persona:
    - senior-backend-engineer
  policy:
    - coding-standards
    - error-handling
  knowledge:
    - architecture-patterns

facet composeコマンドでプロンプトを生成し、facet install skillでClaude Codeのスキルディレクトリに直接インストールできます。


# プロンプトの確認(標準出力に結合結果を表示)
facet compose backend-coding

# Claude Codeのスキルとしてインストール
facet install skill backend-coding --target claude-code

# Codex CLIのスキルとしてインストール
facet install skill backend-coding --target codex

facetの分割粒度を決める際は、Anthropic SkillsのTool Useパターンが参考になります。Tool Useの責務分離の考え方がそのままfacetの設計指針に応用できるためです。

IT女子 アラ美
サンプルのcoding・frontend・backendは具体的にどう違うの?

ITアライグマ
共通部分は同じfacetを参照し、差分だけ各コンポジションに追加する構成です!

チーム運用とマルチプロジェクトへの応用パターン

個人利用で効果を実感したら、次はチームやマルチプロジェクトへの展開を検討しましょう。faceted-promptingの真価は、組織全体でスキル品質を均一化できる点にあります。

Gitリポジトリでfacetを共有する

~/.faceted/ディレクトリをGitリポジトリとして管理すれば、チームメンバー全員が同じfacetセットを利用できます。コーディング規約の変更はfacetファイルを修正してプッシュし、各メンバーがpull後にfacet install skillを再実行するだけで反映されます。


# チーム共有リポジトリからfacetを取得
git clone git@github.com:your-team/faceted-skills.git ~/.faceted

# 更新を取り込んでスキルを再インストール
cd ~/.faceted && git pull
facet install skill backend-coding --target claude-code
facet install skill frontend-coding --target claude-code

プロジェクト固有のオーバーライド

チーム共通のfacetをベースにしつつ、プロジェクト固有のルールを追加したい場合は、コンポジションにプロジェクト専用のfacetを追加します。たとえば、あるプロジェクトだけGraphQLを使っている場合、knowledge/graphql-conventions.mdを作成してそのプロジェクトのコンポジションにだけ含めます。

Claude CodeとCodexの同時展開

チーム内でClaude Code派とCodex派が混在していても問題ありません。同じコンポジションから両方のスキルを生成できるため、Trail of Bitsのセキュリティ監査スキルのような専門スキルも、ツールを問わずチーム全体に展開できます。


# 両方のターゲットに一括インストール
facet install skill backend-coding --target claude-code
facet install skill backend-coding --target codex

IT女子 アラ美
メンバーが勝手にfacetを変更して整合性が崩れたりしない?

ITアライグマ
GitのPRレビューで変更を管理すれば防げます。Markdownなのでレビューも簡単です!

実装後の効果検証(ケーススタディ)

IT女子 アラ美
💡 そのAIスキル、年収に反映されてないでしょ!
経験者向け・年収UPにつながる非公開求人を今すぐ確認しなさい
経験者ITエンジニアの年収・キャリアアップを徹底支援【ユニゾンキャリア】

状況(Before)

中村さん(34歳・テックリード・経験10年)は、5つのマイクロサービスを抱えるチームを率いていました。各サービスのリポジトリにCLAUDE.mdが存在し、コーディング規約やレビュー方針が個別に記述されていました。

  • 5つのCLAUDE.mdに同じ命名規則が重複記述されており、1箇所を修正すると他4箇所の修正漏れが発生していました。
  • 新メンバーのオンボーディング時に「どのリポジトリのCLAUDE.mdが最新か分からない」という混乱が毎回起きていました。
  • スキルの更新作業に週あたり約2時間を消費しており、本来のコードレビューに充てる時間が圧迫されていました。

行動(Action)

  • 5つのCLAUDE.mdから共通部分を抽出し、Persona(2種類)・Policy(4種類)・Knowledge(3種類)の計9つのfacetファイルに分解しました。
  • サービスごとにコンポジションYAMLを作成し、共通facet+サービス固有facetの組み合わせで各スキルを定義しました。
  • facetリポジトリをGitHub上に作成し、PRベースの変更管理フローを導入しました。

結果(After)

  • スキル更新の作業時間が週2時間から週15分に短縮されました(87.5%削減)。共通facetを1回修正してinstallコマンドを5回実行するだけで全サービスに反映できるようになったためです。
  • 新メンバーのオンボーディング時の「ルールの所在確認」にかかる時間が平均3日から半日に短縮されました。
  • PRレビューでfacetの変更差分が可視化されるようになり、ルール変更の意図がチーム全体に共有されるようになりました。

中村さんは「最初にfacetの分割粒度を決めるのに1日かけたのが正解だった。粒度が粗すぎると結局コピペが残るし、細かすぎるとコンポジションが複雑になる。Policy単位で分けるのが一番しっくりきた」と振り返っています。この経験は、生成AIコーディング時代のスキルシフト戦略で述べた「AIツールの設定・運用スキル」が実務で差を生む好例です。

IT女子 アラ美
9つのfacetファイルって多くない?最初はもっと少なくても大丈夫?

ITアライグマ
最初はPersona1つとPolicy2つの計3ファイルで十分です。運用しながら分割しましょう!

よくある質問

Q. faceted-promptingはClaude Code以外のAIコーディングツールでも使えますか?

facet composeコマンドでプロンプトテキストを出力できるため、任意のAIツールに手動でコピーすることは可能です。ただし、facet install skillで自動インストールできるのは現時点でClaude CodeとCodex CLIの2つです。

Q. 既存のCLAUDE.mdをfacetに移行する際の手順は?

まずCLAUDE.mdの内容を「振る舞い(Persona)」「ルール(Policy)」「知識(Knowledge)」に分類し、それぞれMarkdownファイルとして切り出します。プロジェクト固有の指示はCLAUDE.mdに残し、汎用的なルールだけをfacet化するのがスムーズです。

Q. facetファイルの推奨サイズや行数の目安はありますか?

1ファイルあたり20〜50行が目安です。100行を超えるfacetは関心事が混在している可能性が高いため、分割を検討してください。短すぎても管理対象が増えるだけなので、1つの明確なテーマにつき1ファイルが適切です。

IT女子 アラ美
facetの分け方に正解ってあるの?迷いそうで不安なんだけど。

ITアライグマ
「1ファイル1テーマ」を守れば大丈夫です。迷ったらPolicy単位で分けましょう!

さらなる実践・活用に向けて

faceted-promptingの基本を押さえたら、次のステップとしてCI/CDパイプラインへの組み込みを検討してみてください。GitHubActionsでfacetの変更を検知し、自動でcomposeとinstallを実行する仕組みを作れば、チーム全員のスキルが常に最新状態に保たれます。

また、facetのバージョン管理にGitタグを活用することで、特定のプロジェクトで「この時点のルールセットを固定したい」というニーズにも対応できます。プロンプトの品質管理をソフトウェアのリリース管理と同じ手法で行えるのは、faceted-promptingならではの強みです。

AIスキルの体系化はエンジニアとしての市場価値にも直結します。エンジニア3年目の壁を乗り越えるキャリア戦略でも触れていますが、「AIツールを使える」から「AIツールの運用設計ができる」へのステップアップは、年収交渉やポジション獲得において明確な差別化要因になります。

AIスキルを体系的に学びたい方や、キャリアの次のステップを考えている方は、以下のサービスも参考にしてください。

本記事で解説したようなAI技術を、基礎から体系的に身につけたい方は、以下のスクールも検討してみてください。

比較項目 Winスクール Aidemy Premium
目的・ゴール 資格取得・スキルアップ初心者〜社会人向け エンジニア転身・E資格Python/AI開発
難易度 初心者◎個人レッスン形式 中級者〜コード記述あり
補助金・給付金 最大70%還元教育訓練給付金対象 最大70%還元教育訓練給付金対象
おすすめ度 S幅広くITスキルを学ぶなら AAIエンジニアになるなら
公式サイト 詳細を見る
IT女子 アラ美
AIスキルを身につけたいけど、どのスクールを選べばいいかわからないです…
ITアライグマ
現場で即・ITスキルを身につけたいならWinスクールがおすすめです!個人レッスン形式で初心者でも取り組みやすいですよ。

まとめ

faceted-promptingは、AIコーディングアシスタントのスキル管理を「場当たり的なコピペ」から「設計に基づく部品管理」へ転換するツールです。

  • プロンプトをPersona・Policy・Knowledgeなどのfacetに分解し、YAMLコンポジションで組み合わせることで重複管理を排除できます。
  • facet install skillコマンドでClaude CodeとCodexの両方にワンコマンドで展開でき、ツール間の二重管理が不要になります。
  • Gitリポジトリでfacetを共有すれば、チーム全体のスキル品質を均一化し、オンボーディングコストも大幅に削減できます。

まずはfacet initとpull-sampleでサンプルを確認し、自分のCLAUDE.mdから1つだけfacetを切り出してみるところから始めてみてください。小さく始めて効果を実感してからチームに展開するのが、定着への最短ルートです。

IT女子 アラ美
faceted-promptingを試してみたいけど、まず何から手を付ければいいの?

ITアライグマ
まずfacet pull-sampleでサンプルを取得して中身を確認してみてください!

厳しめIT女子 アラ美による解説ショート動画はこちら

この記事をシェアする
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

ITアライグマのアバター ITアライグマ ITエンジニア / PM

都内で働くPM兼Webエンジニア(既婚・子持ち)です。
AIで作業時間を削って実務をラクにしつつ、市場価値を高めて「高年収・自由な働き方」を手に入れるキャリア戦略を発信しています。

目次