Ken 389a8fb655 refactor: extract parseA2UIBlocks to lib/a2ui.ts; remove unused import re
- Extract parseA2UIBlocks() from A2UIRenderer.tsx into its own
  frontend/src/lib/a2ui.ts module to satisfy react-refresh/only-export-
  components ESLint rule (A2UIRenderer should only export React components)
- Update ChatPanel.tsx and test files to import from lib/a2ui
- Split ChatPanel.test.tsx mock: separate vi.mock for lib/a2ui
  (parseA2UIBlocks) and A2UIRenderer (component only)
- Remove unused 'import re' from tests/test_runtime_html.py (ruff F401)

All 216 frontend tests and 242 bash tests still pass. TypeScript and
Vite builds are clean. Remaining ESLint warnings (react-hooks/set-state-
in-effect in MCPAppRenderer and useSessions) are pre-existing patterns
not introduced by Phase 3.
2026-05-26 21:14:10 +00:00

Research Workbench

AI-powered research tool: chat + live browser + artifacts. Backed by amplifierd.

See DESIGN.md for the full architecture.

Quick Start

# Build
docker build -t research-workbench .

# Run
docker run -d --name research-workbench \
  -p 8080:8080 \
  -p 6080:6080 \
  -e ANTHROPIC_API_KEY="$ANTHROPIC_API_KEY" \
  research-workbench

research.ampbox.io -- the app vnc.ampbox.io -- the live browser

S
Description
Research Workbench
Readme 406 KiB
Languages
TypeScript 51.6%
Python 24.2%
Shell 17.8%
HTML 2.7%
CSS 2%
Other 1.7%