HOW IT WORKS
Three components. One causal record.
podblocks splits cleanly into a control plane that orchestrates, workers that execute, and a UI that watches. The control plane never runs your code. Workers connect outbound only. Every boundary speaks one format, the Poset Interchange Format.
ARCHITECTURE
Orchestrate, execute, watch.
React UI
Canvas, block editor, causal overlay. Talks to the control plane over WebSocket and REST.
Control plane (Go)
A single static binary. Stores definitions, schedules runs, persists posets, evaluates triggers. Never executes your code.
Worker (Python)
Connects outbound over one WebSocket, runs blocks and CrewAI crews, captures causality with PyRapide, streams events back.
CONCEPTS
Pods, blocks, runs.
A pod is the unit of work: a DAG of typed blocks, defined in a git-friendly pod.yaml and compiled on the worker into a CrewAI Flow. Pods run to completion (triggered) or stay resident and react continuously. Project groups contain projects; projects contain pods; pods may embed sub-pods, each with its own poset.
schema_version: "2.0"
pod:
name: "Research Pod"
slug: research-pod
mode: triggered
nodes:
- id: load_listings
type: sql
source: blocks/load_listings.sql
- id: analyst_crew
type: crew
config:
agents: [researcher, reporter]
process: sequential
edges:
- {from: load_listings, to: analyst_crew}
constraints:
- id: no_tool_errors
type: never
pattern: 'match("agent.tool.error")'
policy: route
route_to: publish_failureTHE RUN LIFECYCLE
From dispatch to a persisted poset.
- 01
Dispatch
The control plane resolves secrets, seals the pod bundle, and dispatches it to an eligible worker over one WebSocket.
- 02
Compile
The worker compiles the pod to a CrewAI Flow: root nodes start, downstream nodes listen, conditional edges become routers.
- 03
Stream
Incremental PIF event windows stream back every 500ms, so the UI lights up the graph live.
- 04
Persist
On completion the full poset persists; the run view serves causal queries over it.
Want the deep version?
Causality is the part worth understanding. It is what the rest is built on.
How causality works