Skip to content

The web interface

The web UI is the canonical way to use bazilion. It runs on http://127.0.0.1:4322 during development and talks to the daemon on 127.0.0.1:4321. This page is a tour of every screen.

Open the web UI and you’ll land on /login. Paste your bootstrap token — it’s the token value in ~/.bazilion/auth.json, created the first time you ran bazilion serve — and click log in. The token is stored in a cookie, so you stay logged in.

Until at least one model provider is configured, the app redirects to /welcome, which walks you to /config. There you:

  1. Enable a provider (Anthropic, OpenAI, Google, a local backend, or ChatGPT OAuth).
  2. Add credentials and curate at least one model.

The moment one enabled provider has a model, setup is complete: bazilion seeds a default profile and a default group, and the rest of the app unlocks.

The top nav has templates, agents, groups, skills, and config, plus a light/dark theme toggle. The home page also has a sidebar with a + new ▾ dropdown — the main place you spawn things.

The home page is a two-pane workspace: a sidebar of agents (grouped by their group) on the left, and a chat pane on the right. Pick an agent to start talking.

The + new ▾ dropdown offers three actions:

  • spawn agent from template — create one agent from a profile.
  • spawn group from template — spawn a whole team from a profile group.
  • + create group — make a new collaboration group.

Each agent row shows its status, a ✈ marker if it’s bound to a Telegram topic, and rename/archive controls on hover.

The chat pane streams the agent’s response live, renders markdown, and shows collapsible tool-call details. You can attach files to a message — images go to the model as vision input, other files are stored for the agent to open — and files the agent sends back with deliver_file surface inline (images as a standalone image block). A cancel button appears while the agent is working. It also understands a few slash commands typed into the message box:

  • /context — a token/character breakdown of the prompt, tools, skills, and history.
  • /compact [N] — summarize older history, keeping the last N turns verbatim.
  • /reset — wipe the conversation.

If another source (a trigger or Telegram) advances the conversation while you’re looking at it, a banner offers to reload.

  • /agents — a table of all agents with a spawn form (profile, name, optional model override, group). Archived agents are hidden behind a toggle.
  • /agents/:id — the agent’s detail page, with tabs for chat, inbox, and triggers. Here you can change the model override and reasoning level, move the agent to another group, attach or detach skills, and — if Telegram is configured — bind a topic, set its icon, and choose the mirror verbosity.
  • /agents/:id/inbox — messages other agents have sent this one via the send_message tool. Read them, see who sent what, and track unread mail.
  • /agents/:id/triggers — scheduled wake-ups. Add an interval (every N seconds) or cron (5-field) trigger with a stored message; enable, disable, or delete them.

Templates are the profiles and profile groups you spawn agents from.

  • /profiles — list and create profiles. The create/edit form has a basics tab (id, name, default model, and the SOUL.md / IDENTITY.md / optional BOOTSTRAP.md, AGENTS.md, TOOLS.md, HEARTBEAT.md editors) and a skills tab (allow all skills, or pick a subset).
  • /profiles/:id — edit a profile’s files and settings. Edits don’t affect already-spawned agents.
  • /profile-groups — list and create team templates. A profile group is an ordered list of members, each pointing at a profile with optional per-member name/model/reasoning overrides.
  • /profile-groups/:id — edit the team’s members and starter USER.md.

See Core concepts for how profiles, profile groups, and groups relate.

  • /groups — list and register groups. A group can be a fresh directory or a symlink to an existing project folder (give a link target). You can only remove a group with no members.
  • /groups/:id — the group’s detail page: edit its USER.md (shared, read-only context for every agent in the group), set the Telegram topic name template, spawn a team into an empty group, and see the member roster.
  • /groups/:id/memory — the group’s shared memory. Search it (BM25), browse entries, and create or edit markdown notes that every agent in the group can read.

/skills — install and manage skills. Import from a local OpenClaw install, from a server directory path, or by uploading a zip. Installed skills show their description, source, and import date, and can be removed. Skills are attached to agents through profiles or per-agent on the agent detail page.

The config area covers:

  • /config (Providers) — enable model providers, add credentials, and curate models. This is also the first-run setup gate. ChatGPT OAuth has its own Connect ChatGPT card, and Browser Automation is enabled here too.
  • /config/services — credentials for non-LLM services (web search, crawlers, etc.).
  • /config/mcp — register and manage MCP servers (stdio, HTTP, or SSE); their tools are injected into every agent.
  • /config/integrations/telegram — the Telegram integration: credentials, preflight checks, and access control. See Connecting Telegram.
  • /config/tokens — mint and revoke API tokens for additional clients. The token value is shown once at creation.