Cedar-OS を Mastra と統合する
Cedar-OS は、最先端の AI ネイティブアプリケーションを構築するために特化して設計された、オープンソースのエージェント型 UI フレームワークです。Cedar は Mastra を前提に設計・構築されています。
Cedar を使うべきか?
Cedar が重視する柱となる考え方がいくつかあり、詳しくはこちら をご覧ください。
1. 開発者エクスペリエンス
- 各コンポーネントを shadcn スタイルで個別取得 – すべてのコードを自分で所有し、自由にスタイリングできます
- すぐに使える – チャットコンポーネントを置くだけで、そのまま動作します
- 完全に拡張可能 - Zustand ストアアーキテクチャ 上に構築されており、自由にカスタマイズ可能。内部のあらゆる関数を1行でオーバーライドできます。
2. 真に AI ネイティブなアプリケーションを実現
歴史上初めて、プロダクトが命を宿す時代になりました。Cedar は、生命感のある体験を備えたプロダクトづくりを支援します。
- Spells - キーボードショートカット、マウスイベント、テキスト選択などから AI を呼び出せます
- State Diff Management - エージェントの出力を採用/却下する権限をユーザーに付与
- Voice Integration - ユーザーが音声でアプリを操作できるようにする
クイックスタート
プロジェクトをセットアップする
Cedar の CLI コマンドを実行します:
npx cedar-os-cli plant-seed
ゼロから始める場合は、モノレポ内でフロントエンドとバックエンドが揃った完全なセットアップが行える Mastra starter テンプレートを選択してください。
すでに Mastra のバックエンドがある場合は、代わりに blank frontend cedar repo オプションを使用してください。
- Cedar 用のコンポーネントや依存関係一式をダウンロードするオプションが表示されます。最初の一歩として、少なくとも 1 つのチャットコンポーネントをダウンロードすることを推奨します。
アプリを CedarCopilot でラップする
アプリケーションを CedarCopilot プロバイダーでラップして、Mastra バックエンドに接続します:
import { CedarCopilot } from 'cedar-os';
function App() {
return (
<CedarCopilot
llmProvider={{
provider: 'mastra',
baseURL: 'http://localhost:4111', // Mastra のデフォルト開発ポート
apiKey: process.env.NEXT_PUBLIC_MASTRA_API_KEY, // 任意 — バックエンド認証のみ
}}>
<YourApp />
</CedarCopilot>
);
}
Mastra のエンドポイントを設定する
Mastra Configuration Options に従って、Cedar と連携するように Mastra バックエンドを設定します。
Mastra サーバー(モノレポの場合は Next.js のサーバーレスルート)で API ルートを登録 します:
import { registerApiRoute } from '@mastra/core/server';
// POST /chat
// チャットの非ストリーミング用デフォルトエンドポイント
registerApiRoute('/chat', {
method: 'POST',
// …zod で入力を検証
handler: async (c) => {
/* your agent.generate() logic */
},
});
// POST /chat/stream (SSE)
// チャットのストリーミング用デフォルトエンドポイント
registerApiRoute('/chat/stream', {
method: 'POST',
handler: async (c) => {
/* SSE 形式でエージェントの出力をストリーミング */
},
});
Cedar コンポーネントを追加する
Cedar コンポーネントをフロントエンドに組み込みます。詳しくは Chat Overview を参照してください。
これでバックエンドとフロントエンドの連携は完了です。Mastra エージェントを使った AI ネイティブな体験づくりを始めましょう。
詳細情報
- 追加の設定オプションについては、Mastra 連携の詳細ガイド をご確認ください(問題が発生した場合の手動インストール手順もこちら)
- Cedar が提供する Mastra 向けの最適化と機能をチェック
- シームレスなイベントストリーミング - Mastra のストリーミングイベント を自動レンダリング
- 音声エンドポイント対応 - 組み込みの音声バックエンド連携
- エンドツーエンドの型安全性 - アプリと Mastra バックエンド間の通信のための型定義
- Discord に参加しよう! Cedar チームは皆さんをお迎えできるのを楽しみにしています :)