Skip to main content

kollabor-webui

kollabor-webui is the browser UI shell for kollabor-engine.

It serves the assistant-ui single-page app, proxies engine configuration to the browser, and connects to the local engine API for sessions, assistant-transport streaming, permission prompts, profiles, MCP, and hub controls.

Architecture

Module/Asset Responsibility
src/kollabor_webui/__init__.py kollabor-webui command entrypoint and uvicorn launcher
src/kollabor_webui/server.py FastAPI config endpoint, Vite assets, and SPA fallback
frontend/src/ assistant-ui React/TypeScript source
frontend/dist/ local Vite output (ignored; regenerated for package builds)
src/kollabor_webui/static/ legacy static fallback and packaged assistant-ui output

The checked-in frontend source is the source of truth. hatch_build.py runs npm ci and npm run build when npm is available, then force-includes Vite's frontend/dist output in a wheel under kollabor_webui/static/assistant. The source checkout also serves frontend/dist directly, which makes editable installs useful without copying generated files into git. Python-only builds continue to serve the legacy static/index.html and static/app.js fallback if Node/npm is unavailable.

Usage

Quickest path — kollab --web-ui spawns the engine and this package together (reusing an already-running engine on 7433 if one is healthy) and cleans both up on Ctrl+C or SIGTERM:

kollab --web-ui

To run the two pieces separately (useful when iterating on one of them):

Start the engine:

python -m kollabor_engine serve --host 127.0.0.1 --port 7433

Start the web UI:

KOLLAB_ENGINE_URL=http://127.0.0.1:7433 \
KOLLAB_WEBUI_PORT=8080 \
kollabor-webui

Then open:

http://127.0.0.1:8080

For an editable checkout without installed console scripts:

python -c "from kollabor_webui import main; main()"

Frontend development

cd packages/kollabor-webui/frontend
npm ci
npm run typecheck
npm run build
npm run dev

Vite proxies /api, /sessions, /profiles, /mcp, and /hub to the local engine while developing. The production build uses relative asset paths, so FastAPI can serve hashed assets from any mount path and route client-side navigation back to index.html.

Engine endpoints used

  • POST /sessions
  • GET /sessions
  • DELETE /sessions/{session_id}
  • POST /sessions/{session_id}/assistant
  • POST /sessions/{session_id}/cancel
  • POST /sessions/{session_id}/permission
  • GET /sessions/{session_id}/permissions
  • POST /sessions/{session_id}/permissions/mode
  • GET/DELETE /sessions/{session_id}/history
  • GET/POST/PUT/DELETE /profiles...
  • GET/POST/PUT/DELETE /mcp/servers...
  • GET/POST /sessions/{session_id}/mcp...
  • GET /hub/agents
  • POST /hub/messages

Authentication

The browser gets the current engine bearer token from /api/config, which reads ~/.kollab/engine.token. Frontend requests retry once after a 401 by refreshing that config, covering engine restarts that rotate the token.

Validation

python -m py_compile packages/kollabor-webui/src/kollabor_webui/*.py
python -m pytest tests/unit/test_webui_auth_wiring.py -q
cd packages/kollabor-webui/frontend
npm run typecheck
npm run build

License

MIT

Metadata

Release files for kollabor-webui 0.10.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kollabor-webui 0.10.3
File Size Uploaded
kollabor_webui-0.10.3.tar.gz 468.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kollabor-webui 0.10.3
File Interpreter ABI Platform
kollabor_webui-0.10.3-py3-none-any.whl Python 3 none any Details

Total release size: 815.4 kB

Release files / kollabor_webui-0.10.3.tar.gz

Download URL kollabor_webui-0.10.3.tar.gz
Size 468.4 kB
Tags Source
SHA-256 checksum
How to use checksums
7d7105e7ea4ab3ea8fc8b858c8d9bfc32946eb44697a6acf3ecd5d142dd85866
BLAKE2b-256 checksum
How to use checksums
76714e9f03869ade1e822d3a7eeca1dd6cf1f222b256751b606553b5a445eae3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / kollabor_webui-0.10.3-py3-none-any.whl

Download URL kollabor_webui-0.10.3-py3-none-any.whl
Size 346.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
30355428c77c2604f661642ae57837a362b5bd116c74314ac763397388fbe55f
BLAKE2b-256 checksum
How to use checksums
515d8008b663ee092be86e3d97410e094ab9df939546d280042b0cc0a37840e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

1.0.1

2 release files

1.0.0

2 release files

0.15.6

2 release files

0.15.5

2 release files

0.15.4

2 release files

0.15.3

2 release files

0.15.2

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.10.7

2 release files

0.10.6

2 release files

0.10.5

2 release files

0.10.4

2 release files

This release

0.10.3 This release

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.24

2 release files

0.5.23

2 release files

0.5.22

2 release files

0.5.19

2 release files

0.5.18

2 release files

0.5.16

2 release files

0.5.15

2 release files

0.5.14

2 release files

0.5.13

2 release files

0.5.12

2 release files

0.5.11

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.5

2 release files

0.4.22

2 release files

0.4.21

2 release files

0.4.19

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page