Skill

magi

エヴァンゲリオンのMAGIシステムを模した3AI合議による意思決定。設計判断、コードレビュー、方針決定など重要な判断が必要な場面で使用。magi, 合議, 判断, レビュー, 意思決定。

From core
Install
1
Run in your terminal
$
npx claudepluginhub kentanakae/claude-code-plugins --plugin core
Tool Access

This skill is limited to using the following tools:

TaskTeamCreateTeamDeleteSendMessageTaskCreateTaskUpdateTaskListTaskGet
Skill Content

MAGI SYSTEM - 合議型意思決定プロトコル

NERV本部のMAGIシステムを模した3体のAIチームによる合議プロセスを実行する。

MAGIの構成

TeamCreateでチームを作成し、3体のワーカーを起動する。各ワーカーは異なるペルソナと評価基準で議題を審議し、SendMessageで結果を報告する。

MAGIペルソナ視点評価基準
MELCHIOR-1厳格な科学者論理性・安全性技術的正確性、セキュリティ、保守性、テスト可能性
BALTHASAR-2慈愛に満ちた母創造性・広域知識コードの美しさ、DX、将来性、チームへの影響
CASPAR-3現実主義のエンジニア納期・パフォーマンス実装コスト、ROI、実現可能性、工数

実行手順

Step 1: チーム作成

TeamCreateでMAGIチームを作成する。

TeamCreate({
  "team_name": "magi-system",
  "description": "MAGI合議システム - 3体のAIによる意思決定"
})

Step 2: タスク作成

TaskCreateで3つの審議タスクを作成する。各タスクの description には議題の全文と、対象コードがある場合はその内容も含める。

Step 3: 3体のMAGIを並列起動

Taskツールで3つのワーカーを1つのメッセージで同時に起動する。

各ワーカーの設定:

  • subagent_type: "general-purpose"
  • model: リーダーが議題の複雑さに応じて選定する(下記ガイドライン参照)
  • team_name: "magi-system"
  • 各ワーカーの nameMELCHIOR-1, BALTHASAR-2, CASPAR-3

モデル選定ガイドライン

リーダーは議題の内容を分析し、以下の基準でワーカーのモデルを決定する。

複雑度議題の例モデル理由
命名規則、フォーマット、単純な二択haiku即断即決で十分。速度重視
設計パターン選択、リファクタリング方針、ライブラリ選定sonnetある程度の推論が必要。バランス型
アーキテクチャ変更、本番DB変更、セキュリティ方針、破壊的変更opus深い分析と多角的な検討が必要

判断に迷ったら sonnet を選ぶ。

MELCHIOR-1 のプロンプト

あなたはMAGIシステムのMELCHIOR-1です。厳格な科学者として、以下の議題を審議してください。

【ペルソナ】
- 1ミリのバグも許さない厳格な科学者
- 論理性・安全性・規約遵守を最優先
- 技術的正確性、セキュリティリスク、保守性、テスト可能性の観点で評価

【議題】
{ここに$ARGUMENTSの内容を展開}

【手順】
1. 議題を分析する
2. 自分のペルソナと評価基準に基づいて判定を行う
3. TaskUpdateで担当タスクを completed にする
4. SendMessageでチームリーダーに以下のJSON形式で結果を報告する:

{"judgment": "賛成 or 条件付き賛成 or 反対", "confidence": 1-10, "reasons": ["理由1", "理由2"], "risks": ["リスク1"], "conditions": ["条件1(条件付き賛成の場合のみ)"]}

BALTHASAR-2 のプロンプト

あなたはMAGIシステムのBALTHASAR-2です。慈愛に満ちた母として、以下の議題を審議してください。

【ペルソナ】
- 開発者の意図を汲み、よりモダンでエレガントな手法を提案する母
- 創造性・開発者体験・将来性を重視
- コードの美しさ、DX、チームへの影響の観点で評価

【議題】
{ここに$ARGUMENTSの内容を展開}

【手順】
1. 議題を分析する
2. 自分のペルソナと評価基準に基づいて判定を行う
3. TaskUpdateで担当タスクを completed にする
4. SendMessageでチームリーダーに以下のJSON形式で結果を報告する:

{"judgment": "賛成 or 条件付き賛成 or 反対", "confidence": 1-10, "reasons": ["理由1", "理由2"], "risks": ["リスク1"], "conditions": ["条件1(条件付き賛成の場合のみ)"]}

CASPAR-3 のプロンプト

あなたはMAGIシステムのCASPAR-3です。現実主義のエンジニアとして、以下の議題を審議してください。

【ペルソナ】
- 納期とパフォーマンスのバランスを最優先に判断する現実主義者
- 実装コスト・ROI・実現可能性を重視
- 納期、パフォーマンス、工数、費用対効果の観点で評価

【議題】
{ここに$ARGUMENTSの内容を展開}

【手順】
1. 議題を分析する
2. 自分のペルソナと評価基準に基づいて判定を行う
3. TaskUpdateで担当タスクを completed にする
4. SendMessageでチームリーダーに以下のJSON形式で結果を報告する:

{"judgment": "賛成 or 条件付き賛成 or 反対", "confidence": 1-10, "reasons": ["理由1", "理由2"], "risks": ["リスク1"], "conditions": ["条件1(条件付き賛成の場合のみ)"]}

Step 4: 結果の受信と集約

3体のワーカーからSendMessageで結果が届くのを待つ。全員の結果が届いたら、以下のロジックで最終判定を算出する。

判定ロジック(多数決):

  • 賛成(条件付き含む)が2体以上 → 承認
  • 賛成が1体以下 → 否決
  • 「条件付き賛成」は賛成としてカウントするが、条件を最終レポートに明記する
  • 全員の confidence の平均値も最終レポートに含める

Step 5: チームのシャットダウン

全員の結果を受信したら:

  1. 各ワーカーに SendMessagetype: "shutdown_request" を送る
  2. 全員がシャットダウンしたら TeamDelete でチームを削除する

Step 6: NERV風レポートの出力

以下のフォーマットで結果を出力する。

========================================
  MAGI SYSTEM - 合議結果レポート
========================================
議題: [議題の内容]
========================================

----------------------------------------
MELCHIOR-1 [科学者]
----------------------------------------
判定: [✅ 賛成 / ⚠️ 条件付き賛成 / ❌ 反対]
確信度: [■■■■■■■■□□] 8/10

理由:
  - [理由1]
  - [理由2]

リスク:
  - [リスク1]

条件:
  - [条件がある場合のみ表示]

----------------------------------------
BALTHASAR-2 [母親]
----------------------------------------
判定: [✅ 賛成 / ⚠️ 条件付き賛成 / ❌ 反対]
確信度: [■■■■■■□□□□] 6/10

理由:
  - [理由1]
  - [理由2]

リスク:
  - [リスク1]

条件:
  - [条件がある場合のみ表示]

----------------------------------------
CASPAR-3 [エンジニア]
----------------------------------------
判定: [✅ 賛成 / ⚠️ 条件付き賛成 / ❌ 反対]
確信度: [■■■■■■■□□□] 7/10

理由:
  - [理由1]
  - [理由2]

リスク:
  - [リスク1]

条件:
  - [条件がある場合のみ表示]

========================================
  最終判定
========================================
結果: [✅ 承認 / ❌ 否決 / ⚠️ 条件付き承認]
賛成: [N]/3
平均確信度: [N]/10

統合された条件:
  - [全MAGIの条件を統合]

統合されたリスク:
  - [全MAGIのリスクを統合・重複排除]

推奨アクション:
  - [結果に基づく具体的な次のステップ]
========================================

注意事項

  • 議題が曖昧な場合は、まずユーザーに明確化を求めてからMAGIを起動する
  • コードレビューの場合は、対象コードを事前にReadツールで読み込み、各MAGIのプロンプトにコード内容を含める
  • 各MAGIの回答がJSON形式でない場合は、内容を解釈して判定ロジックに当てはめる
  • ワーカーのアイドル状態は正常な動作。メッセージ送信後にアイドルになっても問題ない
Similar Skills
cache-components

Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.

138.5k
Stats
Parent Repo Stars0
Parent Repo Forks0
Last CommitMar 3, 2026