Skip to content

Extension paths

Like pi’s extensions/skills/themes: compose at the edges. Do not fork the hub to change a bubble.

  1. Message plugins — custom render for a role or custom type → Message plugins
  2. Theme — light/dark and tokens → Themes
  3. UI chrome — sidebar, status bar, palette labels, layout → UI chrome
  4. New API capability — hub method + route + client → Server API

Always re-read Change boundaries if unsure.

  • Replacing SSE with WebSockets “for simplicity”
  • Adding Express / tRPC / socket.io
  • Duplicating model/auth config outside pi
  • Vendoring a second UI kit beside web/src/lib/kit
  • Wide refactors of hub.js / chat-stream.ts for a feature request
Terminal window
npm test # stream + server contracts
npm run check # Svelte and TypeScript checks
npm run build # dist/ for prod / git install