Files
wehub-resource-sync e30e75b5d4
Changesets / Create Version PR (push) Waiting to run
Code Quality / Oxlint + Oxfmt (push) Waiting to run
Code Quality / Template Sync (push) Waiting to run
Code Quality / Build Changed Packages (push) Waiting to run
Code Quality / Test Changed Packages (push) Waiting to run
Deploy Expo Example / Deploy Production (push) Waiting to run
Deploy Ink Example / Deploy Production (push) Waiting to run
Python Tests / pytest (assistant-stream, 3.10) (push) Waiting to run
Python Tests / pytest (assistant-stream, 3.12) (push) Waiting to run
Python Tests / pytest (assistant-ui-sync-server-api, 3.10) (push) Waiting to run
Python Tests / pytest (assistant-ui-sync-server-api, 3.12) (push) Waiting to run
Deploy Shadcn Registry / Deploy Production (push) Waiting to run
Template Metrics / LOC + Bundle Size (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 13:40:13 +08:00
..

Welcome to the assistant-ui ink web demo 👋

This app runs the @assistant-ui/react-ink terminal chat in the browser against a real LLM. It powers the live demo embedded at assistant-ui.com/ink and is deployed at assistant-ui-ink.vercel.app.

Get started

  1. Install dependencies

    pnpm install
    
  2. Start the docs app, which serves the chat endpoint on localhost:3000

    pnpm --filter @assistant-ui/docs dev
    
  3. Start the app

    pnpm dev
    

The terminal opens on localhost:8081, and the docs app embeds this URL on its /ink page in development.

How it works

Ink has no official web target, so this app renders the real @assistant-ui/react-ink component tree through ink-web's browser build of Ink, bridged to a wterm terminal. wterm renders to the DOM, so text selection, copy, find, and screen readers work natively.

Chat requests go to the assistant-ui docs site's /api/chat, the same pattern as the React Native demo at assistant-ui-expo.vercel.app. This app holds no API keys; set NEXT_PUBLIC_CHAT_ENDPOINT_URL to point at a different endpoint.

Learn more