Skip to Content
ドキュメントフレームワークエージェンティックUICopilotKitを使用

CopilotKitをMastraと統合する

CopilotKitは、カスタマイズ可能なAIコパイロットをアプリケーションに素早く統合するためのReactコンポーネントを提供します。Mastraと組み合わせることで、双方向の状態同期とインタラクティブなUIを特徴とする洗練されたAIアプリを構築できます。

CopilotKitの概念、コンポーネント、高度な使用パターンについて詳しく学ぶには、CopilotKitドキュメントをご覧ください。

このガイドでは、2つの異なる統合アプローチを紹介します:

  1. 別のReactフロントエンドを持つMastraサーバーにCopilotKitを統合する
  2. Next.jsアプリにCopilotKitを統合する

React依存関係をインストール

Reactフロントエンドで、必要なCopilotKitパッケージをインストールします:

npm install @copilotkit/react-core @copilotkit/react-ui

CopilotKitコンポーネントを作成

Reactフロントエンドでコンポーネントを作成します:

components/copilotkit-component.tsx
import { CopilotChat } from "@copilotkit/react-ui"; import { CopilotKit } from "@copilotkit/react-core"; import "@copilotkit/react-ui/styles.css"; export function CopilotKitComponent({ runtimeUrl }: { runtimeUrl: string}) { return ( <CopilotKit runtimeUrl={runtimeUrl} agent="weatherAgent" > <CopilotChat labels={{ title: "Your Assistant", initial: "Hi! 👋 How can I assist you today?", }} /> </CopilotKit> ); }

依存関係をインストール

まだMastraサーバーをセットアップしていない場合は、はじめにガイドに従って新しいMastraプロジェクトをセットアップしてください。

MastraサーバーでCopilotKit統合用の追加パッケージをインストールします:

npm install @copilotkit/runtime @ag-ui/mastra

Mastraサーバーを設定

CopilotKitのランタイムエンドポイントを含むようにMastraインスタンスを設定します:

src/mastra/index.ts
import { Mastra } from "@mastra/core/mastra"; import { registerCopilotKit } from "@ag-ui/mastra"; import { weatherAgent } from "./agents/weather-agent"; type WeatherRuntimeContext = { "user-id": string; "temperature-scale": "celsius" | "fahrenheit"; }; export const mastra = new Mastra({ agents: { weatherAgent }, server: { cors: { origin: "*", allowMethods: ["*"], allowHeaders: ["*"] }, apiRoutes: [ registerCopilotKit<WeatherRuntimeContext>({ path: "/copilotkit", resourceId: "weatherAgent", setContext: (c, runtimeContext) => { runtimeContext.set("user-id", c.req.header("X-User-ID") || "anonymous"); runtimeContext.set("temperature-scale", "celsius"); } }) ] } });

ReactアプリでのUsage

MastraサーバーのURLを使用してReactアプリでコンポーネントを使用します:

App.tsx
import { CopilotKitComponent } from "./components/copilotkit-component"; function App() { return ( <CopilotKitComponent runtimeUrl="http://localhost:4111/copilotkit" /> ); } export default App;

未来の構築を始めましょう!


CopilotKit output

次のステップ