Replace custom widgetRenderer with CopilotKit Open Generative UI

オープン
#82 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
リファクタリング
明瞭さ
おおむね明確
活発さ
静か
技術スタック
typescript
領域
backend, frontend

調査の方向性

Start with apps/app/src/app/api/copilotkit/route.ts and verify whether openGenerativeUI supports the current LangGraphHttpAgent runtime; compare this with the linked CopilotKit documentation. Then inspect use-generative-ui-examples.tsx, widget-renderer.tsx, idiomorph-inline.ts, export-overlay.tsx, and export-utils.ts, including the CopilotKit provider's sandboxFunctions. Done means generated calculator and binary-search UIs work, theme toggling remains functional, custom helpers are removed, and README/CLAUDE.md no longer reference widgetRenderer.

索引モデルが issue の本文から書いたものです。

説明

Background

We currently ship a hand-rolled open generative UI implementation:

  • WidgetRenderer — ~730-line component that renders agent-authored HTML/CSS/JS inside a sandboxed iframe, with our own theme CSS, idiomorph streaming, and export overlay.
  • Registered as a useComponent({ name: "widgetRenderer", ... }) in use-generative-ui-examples.tsx.

CopilotKit now ships this as a first-class feature: Open Generative UI. It covers the same use case (live-streamed sandboxed HTML/CSS/JS, CDN libraries, two-way host bridges) without per-app widget code.

Goal

Delete the custom widget pipeline and use CopilotKit's built-in Open Generative UI instead.

Scope

  • Enable openGenerativeUI: true in the runtime (route.ts).
  • Remove the widgetRenderer useComponent registration and its supporting files (widget-renderer.tsx, idiomorph-inline.ts, export-overlay.tsx, export-utils.ts) once parity is confirmed.
  • Port any host-side hooks we relied on (e.g. theme toggling) to sandboxFunctions on the CopilotKit provider.
  • Keep the other declarative components (pieChart, barChart, plan_visualization, HITL scheduleTime) as-is.
  • Update CLAUDE.md and any demo prompts/suggestions referencing "widgetRenderer".

Open question

The current runtime is v1 CopilotRuntime + LangGraphHttpAgent pointing at the Python LangGraph agent. The docs example for openGenerativeUI: true uses the v2 runtime with BuiltInAgent + InMemoryAgentRunner. We need to verify whether the flag is supported alongside LangGraphHttpAgent, or whether this upgrade also requires migrating the runtime wiring (and what that means for the Python agent in apps/agent/).

Acceptance criteria

  • "Build me a calculator" / "Visualize binary search" prompts produce a streamed, sandboxed UI in chat with no custom widget code in this repo.
  • Theme toggle still works from generated UI (via sandboxFunctions).
  • Custom widget-renderer.tsx and helpers are deleted.
  • README/CLAUDE.md reflect the new approach.

Docs: https://docs.copilotkit.ai/generative-ui/open-generative-ui

主要言語
TypeScript
スター
1.6k
フォーク
202
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

CopilotKit/OpenGenerativeUI のほかの issue

CopilotKit/OpenGenerativeUI の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。