mirror of
https://github.com/CopilotKit/CopilotKit.git
synced 2026-09-14 16:26:20 +08:00
cce5177af9
## Summary - Adds a new example app at `examples/v2/react-router` demonstrating CopilotKit with React Router v7 (SSR/framework mode) and TanStack AI as the default agent - `TanStackAIAgent` wraps TanStack AI's `chat()` via a factory callback pattern, giving users full type safety over adapter/model configuration - CopilotKit runtime is mounted as a Hono route on the same server that serves React Router SSR ## Key files | File | Purpose | |------|---------| | `app/agent.ts` | `TanStackAIAgent` — thin `AbstractAgent` wrapping a `chat()` factory, with AG-UI event normalization | | `app/server.ts` | Hono server config mounting CopilotKit endpoint + React Router SSR | | `app/routes/_index.tsx` | Full-page `CopilotChat` UI | ## Notes Discovered that TanStack AI's AG-UI events have subtle differences from `@ag-ui/core` spec (extra fields, own type definitions instead of importing from `@ag-ui/core`, own `runId`/no `threadId`). The `TanStackAIAgent` normalizes these by consuming only text/tool deltas from the stream and re-emitting clean `@ag-ui/client`-compatible events. Will follow up with TanStack AI team on aligning their event types with `@ag-ui/core`. ## Test plan - [x] `pnpm build` passes - [x] Dev server starts and serves the app - [x] CopilotChat renders and streams responses from TanStack AI via CopilotKit runtime - [x] TypeScript type checks pass with zero errors 🤖 Generated with [Claude Code](https://claude.com/claude-code)