Skip to content

The Kadmo runtime ​

The Kadmo runtime is the part of Kadmo that runs on a computer: yours, or an agent's machine. It is one npm package, kadmo, holding the kadmo command, the MCP server, the agent service and its dashboard. It runs workflows, serves the skill packs installed on that computer to AI clients, and drives the computer's Chrome through the Kadmo extension.

Every Kadmo agent runs it. You run it on your own computer when you want Claude Code, Cursor or another MCP client to use your packs and your browser.

The three pieces ​

PieceWhat it isPage
kadmo serveThe agent service on http://localhost:9876: the dashboard, the REST API the extension and the dashboard use, the extension's WebSocket and the HTTP MCP endpoint for agents. Bare kadmo does the same.Install the runtime, The dashboard
kadmo mcpThe MCP server over stdio. Your MCP client starts it itself; it opens the extension's socket on loopback beside it.The MCP server
The Kadmo extensionA Chrome extension that lets the runtime drive the browser: navigate, read and act on pages. Its only peer is the runtime on localhost:9876.The Kadmo extension

Workflow, run-log and pack tools work without the extension; the browser tools need it.

What the package is ​

  • Compiled only: one minified bundle with the dashboard, no source, no sourcemaps and no prompts.
  • No packs: a fresh install has no skill packs and no workflows. They come from the Kadmo app, the public catalogue, a registry, a git repository or a local directory (kadmo install), or from YAML files you write.
  • Node.js 22 or newer.
  • Proprietary: the published package carries the Kadmo EULA.

Where it keeps its data ​

Everything lives under ~/.kadmo: settings.json, the installed packs, registries, plugins, run logs and the token kadmo login stores. The layout is on Install the runtime.

Packs and which copy wins ​

Each pack is installed once per domain, under ~/.kadmo/skills/<domain>, and recorded with a layer. The layer decides which copy wins when two sources hold the same domain or the same workflow:

LayerRankComes from
overridehighestan account pack whose skill-pack.json says "layer": "override", and your own ~/.kadmo/roles/ files
accounta registry, a git URL or a local directory
opsthe Kadmo app, for an agent: kadmo install agents with the agent's token
librarylowestthe public catalogue
  • An install onto a domain that a higher layer holds is kept as it is, even with --force. A higher layer replaces a lower one. Within one layer the same version is skipped, and a different version needs --force.
  • The domain agents belongs to the ops layer: a registry, a git repository, a local directory or the catalogue cannot install a pack with that domain.
  • A workflow id present in several packs runs the highest layer's copy. Workflows in ~/.kadmo/actions/ and ~/.kadmo/workflows/ win over every pack.
  • Role guides of the same role are all given to the model, lowest layer first, so an account's se.md extends the one from the ops layer. A pack-root guide whose frontmatter says replace: true drops the lower layers' pack-root guides of that role; a module's own guide is never dropped.

kadmo install --list shows each installed pack with its layer. What a pack contains and how to write one is on Skill packs.

Next steps ​

  1. Install the runtime — install, first start, settings
  2. Install the Kadmo extension — let the runtime drive Chrome
  3. Register the MCP server — Claude Code, Claude Desktop, Codex, Cursor, VS Code, Windsurf, Gemini CLI
  4. The kadmo commands — every command and flag