{
  "schema": "leumas.docs.page/1",
  "id": "adapter:domain/functioncalls",
  "slug": "adapters/domain/functioncalls",
  "kind": "capabilities",
  "bucket": "package",
  "title": "functioncalls (adapter system)",
  "name": "functioncalls",
  "eyebrow": "adapter system",
  "chip": null,
  "summary": "Function-call toolbank: a registry of small, named, executable tools (webSearch, sendApiRequest, runShellCommand, generateHelloWorld, ...) each with an execute(options, api) contract, grouped into...",
  "keywords": [
    "functioncalls",
    "sendapirequest",
    "runshellcommand",
    "generatehelloworld",
    "websearch",
    "functioncalls api",
    "leumas functioncalls",
    "function-call"
  ],
  "audience": "both",
  "funnel": {
    "product": null,
    "cta": null
  },
  "body": "# functioncalls (adapter system)\n\nFunction-call **toolbank**. Ported from `leumas-middleware/lib/a.functioncalls` — the portable core:\na registry of small named tools plus the toolbank (named allow-list) grouping contract. Stripped: the\n`ollama`/`openai`/`gemini`/`dalle`/`sora` LLM client helpers (they belong to the LLM engine) and the\ndesktop-only tools that need native binaries (`screenCapture`, `inputEmulator`, `serialPortControl`,\n`readClipboard`, ws/serial control).\n\nFeeds chatbot toolbanks alongside [`chatbots`](../chatbots).\n\n## Each function call\n\n`{ name, description, execute(options, api) -> { success, data | error } }`\n\nBundled: `generateHelloWorld`, `webSearch` (needs `api.google_web_search`), `sendApiRequest`,\n`runShellCommand` (whitelisted read-only commands only).\n\n## Tools (`adapters`)\n\n| tool | args | result |\n|------|------|--------|\n| `list` | — | `{ functionCalls, toolbanks }` |\n| `run` | `{ name, options, api }` | the call's `{ success, ... }` |\n| `getToolbank` | `{ name }` | `{ name, function_calls }` |\n| `registerToolbank` | `{ name, function_calls }` | `{ ok, toolbank }` |\n| `runToolbank` | `{ toolbank, name, options, api }` | dispatches only if `name` is in the toolbank |\n",
  "source": {
    "path": "shared/engines/adapters/domain/functioncalls/README.md",
    "blobSha": "",
    "commit": "",
    "committedAt": "",
    "provenance": "no-git",
    "bytes": 1441,
    "hash": "8066b9a865be7df112533fe543205cb1089808e6"
  },
  "urls": {
    "html": "/p/adapters/domain/functioncalls",
    "json": "/docs/adapters/domain/functioncalls.json",
    "md": "/docs/adapters/domain/functioncalls.md"
  },
  "links": {
    "composes": [],
    "usedBy": [],
    "product": [],
    "howTo": [],
    "skills": []
  }
}
