{
  "schema": "leumas.docs.page/1",
  "id": "adapter:domain/chatbots",
  "slug": "adapters/domain/chatbots",
  "kind": "capabilities",
  "bucket": "package",
  "title": "chatbots (adapter system)",
  "name": "chatbots",
  "eyebrow": "adapter system",
  "chip": null,
  "summary": "Persona chatbot toolbank: register/list bot persona adapters (system prompt, model, wakewords, theme, function-call banks) and build a packed context string from attachments for a turn. Feeds the...",
  "keywords": [
    "chatbots",
    "attachments",
    "toolbank",
    "persona",
    "banks",
    "leumas chatbots",
    "feeds",
    "context"
  ],
  "audience": "both",
  "funnel": {
    "product": null,
    "cta": null
  },
  "body": "# chatbots (adapter system)\n\nPersona-chatbot **toolbank**. Ported from `leumas-middleware/lib/a.chatbots` — the pure core only:\nan in-memory persona registry plus a context-packer. The express server, Vite frontend, sqlite\n`bot-databases/`, embedded avatar/cover data-URIs, and the ollama runtime were stripped (the LLM\nruntime lives in `@leumas/chatbots` / Leviathan).\n\nFeeds the chatbot engine's bank/tool registry alongside [`functioncalls`](../functioncalls).\n\n## Tools (`adapters`)\n\n| tool | args | result |\n|------|------|--------|\n| `registerBot` | persona object `{ slug, name, model, system, functionCalls, functionCallBanks, theme, ... }` | `{ ok, slug, bot }` |\n| `listBots` | — | `{ bots: [...] }` |\n| `getBot` | `{ slug }` | the stored bot record |\n| `resolveTools` | `{ slug, bankRegistry }` | `{ tools: [name,...] }` — explicit calls + banks expanded |\n| `buildContextPack` | `{ attachments, budget, allowFetch }` | `{ context }` — numbered `[ctx:n]` system prefix |\n\n`buildContextPack` is network-free unless `allowFetch:true` and a `url` attachment is present.\n",
  "source": {
    "path": "shared/engines/adapters/domain/chatbots/README.md",
    "blobSha": "",
    "commit": "",
    "committedAt": "",
    "provenance": "no-git",
    "bytes": 1248,
    "hash": "96f8a89fcc8f7baef66d3b7e4a672a72c9be36d2"
  },
  "urls": {
    "html": "/p/adapters/domain/chatbots",
    "json": "/docs/adapters/domain/chatbots.json",
    "md": "/docs/adapters/domain/chatbots.md"
  },
  "links": {
    "composes": [],
    "usedBy": [],
    "product": [],
    "howTo": [],
    "skills": []
  }
}
