feat: wire RightPanel with Browser + Artifacts, add A2UI rendering to chat

- RightPanel: replace placeholder content with BrowserPanel + ArtifactsPanel
  components, routing sessionId to whichever tab is active
- ChatPanel: import A2UIRenderer + parseA2UIBlocks; render A2UI blocks between
  markdown and tool-call cards in assistant messages; onAction sends
  '[action] {json}' back via onSend
- ChatPanel: add parseVisualBlocks() helper, VisualBlock wrapper component
  (loads runtime.html via MCPAppRenderer, view-source toggle, pop-out),
  rendered after A2UI blocks in assistant messages
- MCPAppRenderer: on ui/initialize route runtime='visual-artifact' data to a
  render dispatch instead of tool/input; add render forwarding case
- Fix pre-existing TS6133 unused-import errors in A2UIRenderer + BrowserPanel test
- All 216 tests pass; npm run build succeeds
This commit is contained in:
Ken
2026-05-26 20:43:28 +00:00
parent ab99259bcc
commit b895a1c94b
7 changed files with 400 additions and 43 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
import { useState } from 'react'
import { IconFilter, IconTable, IconCards, IconForms } from '@tabler/icons-react'
import { IconFilter, IconTable, IconForms } from '@tabler/icons-react'
import type { A2UIBlock } from '../lib/types'
interface A2UIRendererProps {