Skip to content

hidekingerz/MAGI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MAGI

エヴァンゲリオンのMAGIシステムにインスパイアされた意思決定支援システム

概要

MAGIは、ユーザーの質問や提案に対して3つの異なる視点から判断を行い、総合的な意思決定をサポートするシステムです。

3つの判断システム

  1. MELCHIOR (メルキオール) - ITエンジニアの視点

    • 技術的実現可能性、効率性、セキュリティなどを評価
  2. BALTHASAR (バルタザール) - エンターテイナーの視点

    • ユーザー体験、創造性、感情的インパクトを評価
  3. CASPER (キャスパー) - 一市民としての視点

    • 社会的影響、倫理性、実用性を評価

スクリーンショット

初期画面

初期画面

サイバーパンク風のUIで、質問を入力します。

判断結果画面

判断結果画面

3つのMAGIシステムの判断結果と、最終的な意思決定が表示されます。各システムの判断理由も確認できます。

セットアップ

必要なもの

  • Go 1.21以上
  • Node.js 18以上
  • Anthropic API Key

バックエンドのセットアップ

cd backend

# 環境変数の設定
cp .env.example .env
# .envファイルを編集して、ANTHROPIC_API_KEYを設定

# 依存関係のインストール
go mod tidy

# サーバーの起動
go run cmd/server/main.go

サーバーは http://localhost:8080 で起動します。

フロントエンドのセットアップ

cd frontend

# 依存関係のインストール
npm install

# 開発サーバーの起動
npm run dev

フロントエンドは http://localhost:5173 で起動します。

API使用方法

判断をリクエスト

curl -X POST http://localhost:8080/api/judge \
  -H "Content-Type: application/json" \
  -d '{"query": "週末に新しいプログラミング言語を学ぶべきか?"}'

レスポンス例

{
  "decisions": [
    {
      "system": "MELCHIOR",
      "status": "Approve",
      "reasoning": "新しい技術の習得は技術的スキルの向上につながる..."
    },
    {
      "system": "BALTHASAR",
      "status": "Approve",
      "reasoning": "学習は創造的な活動であり、楽しさをもたらす..."
    },
    {
      "system": "CASPER",
      "status": "Conditional",
      "reasoning": "生活のバランスを考慮する必要がある..."
    }
  ],
  "final_decision": "Approved",
  "approval_count": 2,
  "summary": "MAGIシステムは承認を推奨します(2/3が賛成)"
}

プロジェクト構造

MAGI/
├── backend/           # Goバックエンド
│   ├── cmd/
│   │   └── server/   # メインサーバー
│   ├── internal/
│   │   ├── magi/     # MAGIシステムのコアロジック
│   │   ├── handler/  # HTTPハンドラー
│   │   └── model/    # データモデル
│   └── .env.example
└── frontend/          # React + TypeScript + Tailwind CSS
    ├── src/
    │   ├── components/  # Reactコンポーネント
    │   ├── api.ts      # APIクライアント
    │   └── types.ts    # TypeScript型定義
    └── package.json

技術スタック

  • バックエンド: Go
    • goroutineによる並列処理
    • 標準ライブラリ中心の軽量実装
  • LLM: Claude API (Anthropic)
    • Claude 3 Haiku
    • 各MAGIシステムに異なるシステムプロンプト
  • フロントエンド: TypeScript + React + Tailwind CSS
    • Vite(ビルドツール)
    • レスポンシブデザイン

ライセンス

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •