v0.1.0 - Workflows on Hermes natives
Hermes Workflows v0.1.0 - Workflows on Hermes natives
The first release of Hermes Workflows - a dashboard plugin for Hermes Agent that lets you draw a multi-step automation as a graph and run it on Hermes' own primitives, with a human in the loop only where you put one. It is not a second engine: every node compiles to a native Hermes Kanban card, Cron job, or profile run, so a workflow is something you can read, schedule, deliver, and observe with the tools Hermes already gives you. Where a single scheduled prompt (an Automation Blueprint) isn't enough, a workflow is the layer above it.
What ships
- Visual authoring lifecycle. Create a workflow from a modal, grow the graph in an
@xyflow/reacteditor (every node field, duplicate, auto-layout), validate, preview the compiled Hermes plan, then press Play to run it in place - the canvas shows live per-node progress and hands off to the run inspector when it settles. - Five node types.
agent_task(a prompt assigned to a profile, with a per-node model and skills picked from the host/api/skillscatalog),script(a deterministic shell step, gated by an enable flag and an env allowlist),condition(branch on a node outcome or a review decision),human_review(pause for a channel-agnostic decision), andfinish. - Triggers.
manual,cron, and declarablewebhook/github/apievent triggers. - Inter-node data flow. A node consumes a prior node's output via
input_mapping: { x: "{{nodes.<id>.output}}" }, substituted at schedule time and failing loud if an expected output never materialised - the workflow stays portable, no host path baked in. - First-class delivery. A workflow declares where its result is delivered (Hermes
DeliveryTargetsyntax, ororigin); a result containing[SILENT]suppresses delivery so nothing-to-say runs stay quiet. - Runs, Schedules, Settings. Open / cancel / retry / export-logs; pause / resume / run-now / edit cron schedules (tagged
Workflow, distinct from blueprint jobs); a settings view backed by the Hermes config. Runs are single-flight. - Observability. Per-node telemetry (duration, tokens, tool calls, errors), pending dangerous-command approvals, and an opt-in per-run JSONL trace.
Built on Hermes natives
flowchart LR
WF["Workflow graph"] -->|compiles to, no second engine| N["Kanban · Cron · Profiles · delivery router · /api/skills"]
N --> Run["Autonomous run<br/>branching · data flow · review gates"]
Run -->|"result (or [SILENT])"| Ch["your channel"]
style WF fill:#5d3a9b,stroke:#ce93d8,color:#fff
style N fill:#1e3a5f,stroke:#90caf9,color:#fffThe TypeScript engine is the single interpreter of the spec; the Python orchestrator only executes its decisions. Cron runs through cron.jobs, delivery through the gateway's own router, skills from the host catalog - there is no parallel runtime to learn or trust.
Notes
- Native alignment with Automation Blueprints. Workflows reuse the same primitives and conventions as Hermes blueprints (delivery +
[SILENT], the/api/skillscatalog, typed template parameters that render across surfaces, and the Schedules surface). - Host-gated, deferred upstream (no stubs): firing an event trigger and the live
/workflowslash command +hermes://deep-link need host handlers the plugin cannot add - the host webhook system dispatches events only to agent prompts / direct delivery, andcron.jobs.create_jobis time-only. v0.1.0 ships the real, tested schema and pure emitters those surfaces will consume.
Install
hermes plugins install itechmeat/hermes-workflows --enable
hermes gateway restartOpen the Workflows tab and create your first graph. Full tour: the README and docs/.
