mcpField
C
config-export

config-export

github.com/fearovex-labsエージェントワークフロー52 回インストール
リポジトリ

config-export について

config-export は、CLAUDE.md と ai-context/ の設定を Copilot、Gemini、Codex、Cursor 向けの指示ファイルに変換するエージェントスキルです。生成内容を事前表示し、確認後に書き込みます。元のファイルは変更しません。

主な機能

  1. 014つのツール向けに指示を出力
  2. 02core/project のソースモード
  3. 03ドライランで内容を表示
  4. 04書き込み前に確認
  5. 05元ファイルを維持

活用シーン

  1. 01プロジェクトの指針を Copilot に移行
  2. 02Gemini または Codex 用の設定を準備
  3. 03プロジェクトの指針を Cursor ルールに分割

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/fearovex-labs/agent-config --skill config-export

インストール後、Claude Code で/config-exportを入力して読み込まれたか確認します。

同梱ファイルcommand-mode.mdtransformation-prompts.md

詳細

config-export

CLAUDE.md と ai-context/ を、GitHub Copilot、Google Gemini、Cursor 用のツール固有の指示ファイルにエクスポートします。

トリガー:/config-export、設定のエクスポート、Copilot の指示、Gemini の設定、Cursor のルール


目的

config-export はソース設定バンドルを読み込み、ユーザーが1つ以上の対象 AI アシスタントを選択できるようにし、LLM による変換でツール固有の指示ファイルを生成して、ドライランのプレビューを表示した後、確認済みのファイルを標準の保存先に書き込みます。ソースファイルを変更することはなく、ユーザーの明示的な確認なしにファイルを書き込むこともありません。

2つのソースモード:

  • コアモード(core/ が存在する場合に優先): agent-config リポジトリのツールに依存しない core/ ディレクトリ(ペルソナ、プロトコル、方法論、フォーマットタイプ)を唯一の信頼できる情報源として使用します。core/ には不要な要素がすでに含まれていないため(~/.claude/ のパスやスラッシュコマンドがありません)、大がかりな STRIP プリアンブルは簡素なガードに置き換えられます。詳しくは、下記の「コアモードでの STRIP」を参照してください。リポジトリのルートに core/PORTABILITY.md があるかどうかで判定します。
  • プロジェクトモード(フォールバック): 手順1で説明する、利用側プロジェクトの CLAUDE.md と ai-context/ ファイルを使用します。core/ が存在しない場合に使用します(agent-config リポジトリ自体ではなく、下流の利用側プロジェクトが対象です)。

プロセス

手順1 — ソースの収集

モードの判定(最初に実行): リポジトリのルートに core/PORTABILITY.md が存在する場合は、コアモードを使用します。core/instructions/*.md、core/protocols/*.md、core/methodology/*.md、core/format-types.md をソースとしてまとめます。以下の CLAUDE.md/ai-context のガードはスキップします(これらはプロジェクトモード専用です)。その後、手順2に進みます。変換コンテキストには「コアモード — 中立的なソース」と記載します。 それ以外の場合は、プロジェクトモードを使用し、以下のガードを適用します。

ガード — CLAUDE.md がない場合: 現在の作業ディレクトリに CLAUDE.md が存在しない場合は、ユーザーに次の2つの選択肢を提示します。

No CLAUDE.md found in the current directory.

Choose an option:
  1. project-setup first  — run /project-setup to scaffold CLAUDE.md + ai-context/ in this project,
                            then re-run /config-export (recommended for new projects with SDD workflow)
  2. SDD bootstrap         — generate a minimal .github/copilot-instructions.md from the global SDD
                            template only (no project-specific stack or conventions)

Enter 1 or 2 (or press Enter to cancel):
  • ユーザーが 1 を選択した場合:Run /project-setup, then re-run /config-export を出力して停止します。ファイルは書き込みません。
  • ユーザーが 2 を選択した場合:グローバルな SDD 方法論のみをソースバンドルとして使用して続行します(ai-context/ の収集はスキップし、変換コンテキストに「プロジェクトの CLAUDE.md がありません — ブートストラップモード」と記載します)。
  • ユーザーがキャンセルした場合:Export cancelled — no files written を出力して停止します。

ガード — ai-context/ がない場合: ai-context/ ディレクトリが存在しない場合は、次を出力します。

WARNING: ai-context/ not found — export quality will be lower; only CLAUDE.md will be used as source

続行します。CLAUDE.md のみで十分です。

優先順位に従ってソースファイルを読み込み、バンドルにまとめます:

#ファイル必須?存在しない場合の動作
1CLAUDE.mdはい停止(上記のガードを参照)
2ai-context/stack.mdいいえスキップし、変換コンテキストに「stack.md がありません」と記載
3ai-context/architecture.mdいいえスキップし、変換コンテキストに「architecture.md がありません」と記載
4ai-context/conventions.mdいいえスキップし、変換コンテキストに「conventions.md がありません」と記載
5ai-context/known-issues.mdいいえ存在しない場合は何もせずスキップ

存在するファイルはすべて、変換を開始する前にコンテキスト内バンドルに読み込みます。


ステップ 2 — ターゲットの選択

ユーザーが CLI 引数でターゲットを指定した場合(例:/config-export copilot)、対話型メニューをスキップし、そのターゲットを指定してステップ 3 に直接進みます。

それ以外の場合は、ターゲットメニューを表示します:

Available export targets:

  1. copilot  →  .github/copilot-instructions.md
  2. gemini   →  GEMINI.md
  3. codex    →  AGENTS.md
  4. cursor   →  .cursor/rules/conventions.mdc
               →  .cursor/rules/stack.mdc
               →  .cursor/rules/architecture.mdc
               (adapter spec: adapters/cursor/target.md)
  5. agents   →  per-tool custom-agent render (deterministic)
               →  copilot: .github/agents/<name>.agent.md
               →  cursor:  .cursor/rules/agent-<name>.mdc

Enter targets (comma-separated numbers or names, or "all"):

決定論的な委譲(エージェント+コマンドモード): agents ターゲットとコマンドモード(ステップ 3-CMD)は、スタンドアロンのスプリッターに実装を一元化した、決定論的なエンベロープラップです。Bash が利用可能な場合は、コンテキスト内でラップを再実装せず、レンダリングを core/scripts/config-export.sh <tool> <target-project-dir> --constructs=agents(または --constructs=commands)に委譲してください。実装は 1 つに集約され、差異はゼロです。スクリプトを実行できない場合に限り、コンテキスト内の決定論的な手順(adapters/<tool>/target.md のエンベロープセクションと command-mode.md に準拠)にフォールバックします。エージェントのエンベロープ仕様: adapters/copilot/target.md §「Agent envelope」、adapters/cursor/target.md §「Agent envelope (PROVISIONAL)」。

Claude ターゲットの拒否: ユーザーがターゲット claude または CLAUDE.md を指定した場合、次のように応答します:

The Claude target is not supported in V1 — refresh CLAUDE.md manually

ファイルは書き込まず、ユーザーの選択に応じてメニューを再表示するか、処理を終了します。


ステップ 3 — ドライラン生成と確認

選択された各ターゲットに対して、対応する変換プロンプトを適用します(完全なプロンプトは transformation-prompts.md にあります。下記の「変換プロンプト」を参照してください)。その後:

  1. 生成された各ファイルの内容全体と保存先パスを表示します。
  2. ターゲットの出力ファイルが正規のパスにすでに存在する場合は、確認プロンプトの前に警告を表示します:
    WARNING: Overwriting existing file: <path>
    
  3. ユーザーに確認します:
    Write these files? [y/N]
    
    デフォルトは N です。
  4. ユーザーが y 以外を入力した場合は、正常に終了します:
    Export cancelled — no files written
    
    ファイルは書き込まれません。
  5. ユーザーが y を入力した場合は、ステップ 4 に進みます。
変換プロンプト(ターゲット別)

完全な変換仕様(Shared STRIP Preamble と、ターゲット別の 4 つの STRIP/ADAPT/RETAIN/FORMAT プロンプト)は、この SKILL.md を 450 行以内に収めるため(docs/config-guidelines.md Principle 4)、transformation-prompts.md に記載されています。いずれかのターゲットを生成する前に、このファイルを読んでください。以下の概要は参考情報であり、仕様そのものではありません。プロンプトは、コンテキスト内での LLM 推論を通じて適用する自己指示です。外部 API 呼び出しやサブプロセスは使用しません。

ターゲット出力変換の要点
copilot.github/copilot-instructions.md — 固定された H2 セクション順の単一フラットファイルClaude Code の仕組みと Plan Mode を除去する。SDD ワークフローを宣言的な文章と ## Active SDD Coaching Instructions に適用する。最大限の同等性を備えた ## Rules(簡潔さより同等性を優先)
geminiプロジェクトルートの GEMINI.md — CLAUDE.md に似た H2/H3 階層SDD DAG と Claude 固有のアーティファクト保存方法を除去する。コマンドテーブルを文章に変換し、スラッシュコマンドは使用しない
codexプロジェクトルートの AGENTS.md — フラット形式、約 32 KiB の上限、Codex によってルートから cwd へマージCopilot と同じコンテンツ仕様。SDD ワークフローは宣言的な文章にする
cursor.cursor/rules/{conventions,stack,architecture}.mdc — ドメイン別ファイルをちょうど 3 つドメイン別に分割する。MDC フロントマター仕様(description/globs/alwaysApply。パターンを推測できない場合は globs: "" とする。決して推測しない)

すべてのターゲットで、Shared STRIP Preamble を適用し(コアモードでは薄いガード)、生成ファイルのバナー(ステップ 4 を参照)を先頭に付け、今日の日付を記載し、BOM なしの UTF-8 を使用します。


Step 3-CMD — コマンドモード(呼び出し可能な SDD コマンド)

コマンドモードでは、SDD パイプラインのスキルを、Copilot、Gemini、Codex 用の呼び出し可能なコマンドとして出力します(/config-export --commands で選択)。これは、中立的なロジック(ADR-006 を参照)を決定的なエンベロープでラップし、BLOCKING STRIP ガードで制御したうえで、ガードを通過した後にファイルごとに一度だけメモリーコントラクトの前置文を挿入します。

コマンドモードの完全な仕様(ソースの範囲、ツールごとのエンベロープ表、STRIP ガード、メモリーコントラクトの前置文の挿入)は、この SKILL.md を 450 行以内に保つため(docs/config-guidelines.md の原則 4)、command-mode.md に記載されています。コマンドモードを実行する前にお読みください。

Step 4 — ファイルの書き込み

確認済みの各ターゲットについて、次の手順を行います。

  1. 存在しない場合は、必要なディレクトリを通知せずに作成します。

    • Copilot:.github/
    • Cursor:.cursor/rules/
    • Gemini:ディレクトリは不要(プロジェクトルートにファイルを配置)
    • Codex:ディレクトリは不要(プロジェクトルートに AGENTS.md を配置)
    • 作成に失敗した場合を除き、ディレクトリの作成について出力してはなりません。
  2. 生成ファイルのバナーを先頭に付けて、生成したファイルを正規のパスに書き込みます。

    
    
    
    

    YYYY-MM-DD を今日の日付に置き換えます。

  3. 正規のパスに既存のファイルがある場合は上書きします。これは冪等な動作です。上書きしてもエラーは発生しません。


Step 5 — サマリー

確認済みのファイルをすべて書き込んだ後、サマリー表を出力します。

Export complete — files written:

  File                                  Status
  ──────────────────────────────────    ───────
  .github/copilot-instructions.md       written
  GEMINI.md                             written
  AGENTS.md                             written
  .cursor/rules/conventions.mdc         written
  .cursor/rules/stack.mdc               written
  .cursor/rules/architecture.mdc        written

(この実行で書き込んだターゲットの行のみを含めてください。)

続けて、スナップショットのリマインダーを出力します。

Exported files are snapshots. Re-run /config-export after significant changes to CLAUDE.md or ai-context/

ルール

  • CWD に CLAUDE.md が見つからない場合、ファイルを書き込む前に、スキルは必ず 2 つの選択肢(project-setup または bootstrap)を提示します。ハード ERROR の経路をデフォルトにしてはなりません
  • bootstrap モード(オプション 2)では、プロジェクトに CLAUDE.md が存在しない場合でも、SDD ワークフローとコーチング指示を完全に含む有効な Copilot 指示ファイルを生成しなければなりません
  • Copilot 向けの変換では、SDD のフェーズワークフローやアーティファクトのパスを削除してはなりません。文章と Copilot のコーチング指示に適合させなければなりません
  • Copilot の出力には、project モードか bootstrap モードかにかかわらず、## SDD Development Workflow と ## Active SDD Coaching Instructions のセクションを常に含めなければなりません
  • ドライランのプレビューは、ファイルの書き込み前に必ず行わなければなりません。ドライランを省略するフラグはありません
  • 上書きに関する警告は、ユーザーの確認後ではなく、ドライランのステップで(確認前に)表示しなければなりません
  • スキルは CLAUDE.md または ai-context/ 内のファイルを変更してはなりません。すべてのソースファイルは読み取り専用です
  • ディレクトリ(.github/、.cursor/rules/)の作成は通知せずに行わなければなりません。作成に失敗した場合を除き、出力してはなりません
  • Claude ターゲット(CLAUDE.md)は V1 ではサポートされません。定義済みの拒否メッセージを返し、そのターゲットのファイルは書き込まないでください
  • 生成するファイルはすべて BOM なしの UTF-8 でなければなりません
  • 各 Cursor .mdc ファイルには、description、globs、alwaysApply フィールドを含む有効な YAML フロントマターが必要です
  • Cursor .mdc ファイル名は、有効なスラッグでなければなりません。小文字の英字、数字、ハイフンのみを使用し、拡張子は .mdc とします
  • Copilot の出力は、.github/copilot-instructions.md に置く単一ファイルでなければなりません。分割してはなりません
  • Gemini の出力は、プロジェクトルートの GEMINI.md に置く単一ファイルでなければなりません。サブディレクトリには配置しません
  • 意味のあるパターンを推測できない場合、Cursor MDC ファイルの globs フィールドには "" を使用しなければなりません。決して推測してはなりません
  • 生成ファイルの内容には、Claude Code 固有の実行構文を含めてはなりません。Task ツールの呼び出し、サブエージェントのパターン、~/.claude/skills/ のファイルパスは禁止です
  • Copilot は SDD の内容(ワークフロー、フェーズ、アーティファクト)を適合させなければなりません。削除ルールの対象は Claude Code 固有の実行レイヤー構文のみであり、SDD の方法論はすべてのターゲット向けに保持して適合させます
  • どのターゲットにも CLAUDE.md の内容をそのままコピーしてはなりません

コメント