Five parts, one rule: everything is declared, and everything is recorded.
Part 1
Workflows are configuration, not code
A process is a declarative JSON document: a list of steps, the conditions between them, and named policies for what happens when something fails. It lives in your Git repository, which means it is versioned, reviewable and yours.A running execution is pinned to the definition version it started under, so deploying a new version never rewrites work already in flight.No executable code appears inside a definition, in any language. That is a deliberate constraint with a real cost — when nothing in the library fits, you need a component built rather than five lines of script — and it buys three things that matter more: definitions that can be reviewed by a person, statically validated by a machine, and run safely inside someone else’s datacentre.
Part 2
Every capability declares itself
A component — read a mailbox, extract a document, post to an ERP, ask a human — ships with a manifest stating its inputs and outputs as JSON Schema, the credentials it needs, the permissions it claims, its retry and timeout policy, and whether it is safe to retry.The platform reads manifests to route work, validate payloads, generate forms and check compatibility. Nothing is hardcoded, which is what will later let the platform reason about its own capabilities.Interfaces are defined against the capability, never the vendor. A mail component speaks messages, folders and attachments; the Gmail implementation and the Microsoft Graph implementation are interchangeable behind one manifest. We have swapped a provider in a live deployment without changing a workflow definition.
Part 3
Durable by construction
Long-running processes are not a scheduler and a status column. ProcessWeave executions survive restarts and failures, wait as long as the business takes, and resume precisely where they stopped.Retries are automatic and bounded by policy — and because every external write is idempotent, keyed on something the target system already uses to identify the request, a retry is safe rather than hopeful.A durable execution engine sits underneath all of this, and none of its vocabulary reaches your users. They see "waiting for manager approval", never "signal with a fourteen-day timer".
Part 4
People are part of the process, not an exception to it
Approval and manual-entry screens are generated from the same JSON Schemas that define component inputs — one schema investment producing validation, forms, documentation and tests.Tasks route to a pool rather than an individual; the first decision wins; membership resolves from your own directory.Fields can be locked, required, or deliberately left blank where a human judgement must not be pre-filled by a machine. Every edit is recorded with its before and after value.
Part 5
Everything emits
Every step, decision, correction, failure and external write produces a structured event in an append-only log.This costs very little and it is the reason the rest of the roadmap is possible: you cannot build a system that understands a process without a complete record of how the process actually ran.Today that record runs the operations dashboard and answers audit questions. It is also the substrate everything on our roadmap is built on.
The modules, with honest status
Connect
The components — what the platform can reach and do.
Available
Runtime
The workflow engine that executes definitions durably.
Available
Knowledge
The record of everything the platform has done.
Available — event log
Intelligence
Validation, simulation, optimisation, process mining.
On the roadmap
Studio
Designing a process by describing it.
On the roadmap
What we deliberately do not do
No arbitrary code inside a workflow+
Other platforms give you a script step as a universal escape hatch. We do not, because a definition containing code cannot be reviewed, statically checked, or safely deployed into a regulated environment. The cost is real: when nothing fits, you need a component. We are building a plugin SDK so that your team can build one without waiting for us.
No raw "call a model" step+
Model calls live inside a declared component with a typed output and a confidence score, or behind the approval pipeline. You cannot wire a language model directly into a process and let its output flow onward unchecked, because that is precisely the failure mode this product exists to prevent.
No vendor cloud+
There is no hosted control plane phoning home, no telemetry pipeline, and no managed tier where your data is easier for us to reach. Single-tenant, on your infrastructure, is the only way ProcessWeave runs.