プロジェクトのセットアップ
🛠 開発環境の準備
このレッスンでは、プロジェクトの開発環境をセットアップします。
📋 必要な環境
以下のツールがインストールされていることを確認してください:
- Node.js:v22以上
- npmまたはyarn:パッケージマネージャー
- Git:バージョン管理
🚀 プロジェクトの作成
まず、スターターリポジトリをクローンしてきます。
スターターリポジトリは以下のリンクからアクセスできます:
https://github.com/unchain-tech/jpyc-ai-agent
自分のGitHubアカウントにフォークしていない場合は、まずフォークしてきましょう!
git clone https://github.com/<your_github_account_name>/jpyc-ai-agent
cd jpyc-ai-agent
📦 依存関係のインストールとコンパイル
必要なパッケージをインストールします:
pnpm install
# JPYC SDK Coreパッケージをコンパイル
cd external/jpyc-sdk/packages/core
pnpm run compile
これでexternal/jpyc-sdk/packages/core/distフォルダが作成され、TypeScriptの型定義とコンパイル済みのコードが生成されます。
📁 プロジェクト構造の作成
jpyc-ai-agent以下のディレクトリ構造が以下のようになっているかを確認します。
ai-agent-jpyc-chat/
├── src/
│ ├── app/
│ │ ├── api/
│ │ │ └── chat/
│ │ │ └── route.ts
│ │ ├── layout.tsx
│ │ └── page.tsx
│ ├── lib/
│ │ ├── mastra/
│ │ │ ├── agent.ts
│ │ │ └── tools.ts
│ │ └── mcp/
│ │ └── server.ts
│ └── components/
│ └── ChatInterface.tsx
├── .env.local
├── package.json
└── tsconfig.json
必要なディレクトリを作成します:
mkdir -p src/lib/mastra
mkdir -p src/app/api/chat
mkdir -p src/components
🔑 環境変数の設定
.env.localファイルを作成し、必要な環境変数を設定します:
cp .env.local.example .env.local
以下の値を設定します。
LLMはGPT、Gemini、Claudeのいずれを使用しても良いですが、Claudeの利用を推奨します。
Claudeの利用にはAnthropicのコンソールでAPIキーを発行する必要があります。
以下のサイトにアクセスしてAPIキーを発行してください。
https://console.anthropic.com/settings/keys
# JPYC AI Agent - 環境変数設定
# ⚠️ 本番環境では絶対に使用しないでください!テストネット専用です
# ⚠️ このファイルをGitにコミットしないでください!
# サーバーサイドでのトランザクション署名用(Sepolia Testnet)
PRIVATE_KEY=0x...
# AI API Keys(Claudeの利用を推奨します。)
OPENAI_API_KEY=sk-...
GOOGLE_GENERATIVE_AI_API_KEY=
ANTHROPIC_API_KEY=
# JPYC MCPサーバーURL
JPYC_MCP_SERVER_URL="http://localhost:3001/sse"
次に、MCPサーバー用の環境変数ファイルも作成します。MCPサーバーは独立したプロセスとして動作するため、external/mcpディレクトリに.envファイルを作成する必要があります。
# external/mcpディレクトリに移動
cd external/mcp
# .env.exampleをコピーして.envを作成(.env.exampleが存在する場合)
# 存在しない場合は直接.envファイルを作成してください
cp .env.example .env
touch .env
external/mcp/.envファイルに環境変数を設定します:
# MCPサーバー用の環境変数
PRIVATE_KEY=0x... # ウォレットの秘密鍵(.env.localと同じ値を使用)
重要:
.env.localは.gitignoreに含まれていることを確認してくださいexternal/mcp/.envも.gitignoreに含まれていることを確認してください- ルートディレクトリの
.env.localとは別に、external/mcp/.envも必要です - 本番環境では、秘密鍵を環境変数として安全に管理してください
🙋♂️ 質問する
ここまでの作業で何かわからないことがある場合は、Discordの#jpycで質問をしてください。
ヘルプをするときのフローが円滑になるので、エラーレポートには下記の4点を記載してください ✨
- 質問が関連しているセクション番号とレッスン番号
- 何をしようとしていたか
- エラー文をコピー&ペースト
- エラー画面のスクリーンショット
次のレッスンでは、MCPサーバーの実装を始めます!