{
  "schema": "leumas.docs.page/1",
  "id": "pkg:@leumas/actions",
  "slug": "engines/actions",
  "kind": "capabilities",
  "bucket": "package",
  "title": "@leumas/actions",
  "name": "@leumas/actions",
  "eyebrow": null,
  "chip": null,
  "summary": "The Action adapter base + the rule engine. An action DOES things (open chatbot, run a workflow cell, run an MCP tool, notify). Rules wire trigger → [actions].",
  "keywords": [
    "actions",
    "notify",
    "workflow",
    "actions triggers",
    "wire",
    "actions api",
    "leumas actions",
    "base"
  ],
  "audience": "both",
  "funnel": {
    "product": null,
    "cta": null
  },
  "body": "# @leumas/actions\n\nThe **Action adapter base** (the third adapter base) + the **rule engine**. An action DOES things:\n`run(props) → result`. A **Rule** wires `trigger → [actions]`. Programmed in Studio → Triggers.\n\n```js\nimport { defineAction, createActionRegistry, createRuleEngine } from '@leumas/actions';\nimport { createTriggerRegistry } from '@leumas/triggers';\n\nconst actions = createActionRegistry([\n  defineAction({ id: 'send-sms', metadata: { name: 'Send SMS' }, inputs: [{ key: 'to' }, { key: 'body' }], run: async (p) => sms(p) }),\n]);\nconst triggers = createTriggerRegistry();\nconst rules = createRuleEngine({ triggers, actions });\nrules.arm({ id: 'r1', triggerId: 'webhook', actions: [{ actionId: 'notify', props: { message: 'hook!' } }] });\n```\n\n**Built-ins:** `notify`, `open-chatbot`, `run-cell` (workflow/grid), `run-mcp-tool`. Add more per the\nroadmap (deploy config, call a connected account, run any capability adapter). Rules persist via the\ndynamic `rules` collection and are armed on API start.\n",
  "source": {
    "path": "shared/engines/actions/README.md",
    "blobSha": "",
    "commit": "",
    "committedAt": "",
    "provenance": "no-git",
    "bytes": 1190,
    "hash": "c4f2d58c6e9fd0b974b295c6d3af6a5b06d66e7f"
  },
  "urls": {
    "html": "/p/engines/actions",
    "json": "/docs/engines/actions.json",
    "md": "/docs/engines/actions.md"
  },
  "links": {
    "composes": [
      "pkg:@leumas/schemas"
    ],
    "usedBy": [
      "pkg:@leumas/consensus",
      "pkg:@leumas/progression",
      "pkg:@leumas/research",
      "pkg:@leumas/revenue"
    ],
    "product": [],
    "howTo": [
      "how-to:programmability"
    ],
    "skills": []
  },
  "exports": null
}
