Bots plugin thumbnail

Bots

Adds a WhatsApp-style Agents list to the sidebar with persistent profile chats, pinning, hiding, and quick agent management.

Author 3clyp50 2 stars Version 1.2.0 Updated

Screenshots

Bots screenshot 1

README

Bots

Bots plugin artwork

WhatsApp-style Agents list in the Agent Zero sidebar with an inline Chats / Agents switcher in the section header.

Bots Agents tab

Install

Install Bots from Agent Zero's Plugin Hub, or clone this repository as usr/plugins/a0_bots, enable it in Settings → Plugins, and reload the WebUI.

What it does

  • Segmented header Chats / Agents replaces the Chats section header; the unselected word is dimmed and clickable. Selected tab persists per browser (localStorage key a0_bots_tab).
  • Agents tab: lists enabled agent profiles with a round avatar (exact same colors/avatars as the core agents popover via modelConfigStore.getAgentProfileVisual), title, and description snippet. A header button (people icon) opens the core Agent Editor "Manage agents" modal.
  • Clicking an agent opens one persistent chat per profile, named [Agent] <Profile Title>. The first click creates it; later clicks return to the same chat. Rows use the core chat-container/chat-selected classes, so hover/selected states match core chats 1:1.
  • Three-dots row menu: Pin to top / Unpin and Hide, persisted server-side in the plugin config.
  • Chats tab: the core chat list, with the core New Chat button mirrored in the header.

Persistence & migration

  • Profile binding is stored as context data key a0_bots_profile (serialized by chat persistence, survives reloads/restarts).
  • Legacy bindings from the plugin's previous name (profile_chats_profile) are still recognized and are migrated to the new key (and renamed to the [Agent] ... scheme) the next time the profile is opened.
  • Pin/hide state lives in usr/plugins/a0_bots/config.json, also editable in Settings → Bots (plugin config page).

Structure

  • plugin.yaml — manifest (name a0_bots, title "Bots").
  • api/profiles.pyPOST /api/plugins/a0_bots/profiles
  • api/open_chat.pyPOST /api/plugins/a0_bots/open_chat (get-or-create + migrations)
  • api/prefs.pyPOST /api/plugins/a0_bots/prefs (pin/hide get/set)
  • api/avatar.pyGET /api/plugins/a0_bots/avatar?profile=<key>
  • helpers/common.py — data keys, naming scheme, avatar lookup.
  • webui/bots-store.js — Alpine store $store.a0Bots.
  • webui/config.html — settings page.
  • extensions/webui/sidebar-chats-list-start/bots.html — sidebar UI.

Notes

  • Deleting an agent's chat unbinds it; the next click creates a fresh persistent chat.
  • Reload the WebUI page (hard reload) after installing or renaming the plugin.

License

MIT