Miragon AIExecute

Pulse CLIWhat is stuck on your engine, in one command.

Pulse CLI is a command line tool for Camunda 7, CIB seven and Operaton. It groups incidents by root cause and names the next command, whether you, your coding agent or a CI job runs it.

pulse-cli 0.22.0 · local Operaton 2.1.5
# 3 orders failed at the same service taskpulse-cli statusEngine http://localhost:8080/engine-rest (version 2.1.5, 25ms)Status warning Findings: warning 3 failedJob incidents at order/charge: ClassNotFoundException: com.example.payment.ChargeCardDelegate next: pulse-cli retry --process-definition-key order --activity-id charge --dry-run Definitions:KEY VERSIONS INSTANCES INCIDENTS FAILED JOBSorder 1 3 3 3invoice 2 6 0 0

The problem

One stuck order means a chain of REST requests

To find out why order ORD-1001 stopped moving, you work through the engine's REST API one request at a time. You look up the instance by business key, list its activity instances, read its incidents and jobs and fetch the stack trace, and each answer shapes the next request. A coding agent on the same path reads every full response, copies ids by hand and guesses at endpoints it doesn't know.

Today

  • A chain of REST requests per question
  • Ids copied by hand between responses
  • Agents guessing endpoints they don't know
  • No single call that tells CI if the engine is healthy

With Pulse CLI

  • One command for the engine, one for a single instance
  • The next command under every finding, ready to run
  • Agents looking commands up in the CLI itself
  • pulse-cli status --fail-on fails the CI job with exit code 9

How it works

From the engine's state to the next command

Pulse CLI runs in your shell or your pipeline and speaks the Camunda 7 REST API, which Operaton and CIB seven share.

  1. Connect

    Pulse CLI talks to the engine's REST API. A profile holds the URL and the Basic auth, OAuth or bearer token settings, and a project file (.pulse-cli.json) shares the profiles with your team.

  2. Triage

    pulse-cli status reads the engine in parallel requests and groups root incidents by activity and message, each with a root-cause line from the stack trace.

  3. Inspect

    pulse-cli inspect shows where one instance waits and why, across called sub-instances, with its incidents and variables.

  4. Act

    Every finding names the next command to run, and --dry-run previews any write first.

Workflow commands

Six commands for the questions you ask most

Each one combines several REST requests into one answer and lists the commands to run next.

  • Readpulse-cli statusEngine triage. Root incidents by root cause, overdue jobs, external task topics with waiting tasks or expired locks, and failed batches.
  • Readpulse-cli inspectWhere one instance waits and why, across called sub-instances. Select it by id, business key or the latest instance of a definition.
  • Readpulse-cli waitReplaces sleep and poll loops. An incident ends the wait at once, with exit code 9.
  • Writepulse-cli advanceCompletes the user task, external task, message or timer the instance waits for. You name the instance, for example by business key, not the task.
  • Writepulse-cli retrySets the retries behind open incidents. After you deploy a fix, --now runs the jobs again at once.
  • Writepulse-cli deployDeploys only the changed .bpmn, .dmn and .form files and can start an instance right away.

Underneath, Pulse CLI turns all 396 operations of the Camunda 7 REST API into commands such as pulse-cli task list, and pulse-cli api sends a raw request.

Agents and safety

Your team decides what an agent may change

The agent collects the state of the engine and proposes the next step. What it may change depends on the profile your team hands it.

  • Commands an agent can look up

    pulse-cli guide, pulse-cli commands --search and pulse-cli describe tell an agent which commands exist and what they take.

  • JSON in a pipe, a table on a terminal

    Piped output is JSON that a script or an agent reads as it is. An error is one JSON line with a hint and a stable exit code.

  • Read-only profiles

    A profile created with --read-only refuses every command that writes, with exit code 2.

  • A preview before every write

    --dry-run previews any write, and delete and bulk commands refuse to run without --yes.

Get started

Install it, then run a first process

You need an engine, such as a local Operaton container, and Node.js 22.12 or later, Homebrew, the standalone binary or the container image. The Pulse CLI docs have the install and a first triage.

Status

Where Pulse CLI stands on 26 October 2026

Pulse CLI is at version 0.22.0, released on 25 October 2026 to npm as @miragon/pulse-cli, through Homebrew (miragon/tap/pulse-cli), as standalone binaries and as the container image ghcr.io/miragon/pulse-cli. Up to 0.10.0 it was operate, from the repo Miragon/operate, now archived. 0.22.0 moved it into the repo Miragon/pulse, onto Pulse's version numbers and onto new names for its package, command, image, formula, variables and files; it still reads operate's variables and files, with a warning, until the first release after 31 January 2027. It is pre-1.0, so pin the version you run. The repo Miragon/pulse is public under the MIT licence.

  • Binaries not notarized

    The macOS binaries are signed ad hoc and not notarized, and the Windows binary has no Authenticode signature, so your system may block or warn about a copy you download in a browser.

  • No Camunda 8

    Pulse CLI does not support Camunda 8, whose API is a different one.

  • No hosted playground

    You try it against a local engine, such as the Operaton container above.

  • No published savings

    There are no published measurements of token or time savings.

Point Pulse CLI at your own engines.

Tell us which engines you run and where a health check in your pipeline would help. We go through it with you and say where Pulse CLI fits today.

Talk to us

A 30-minute first call.