Playground

Run flows in the browser.

Write a PrismPath flow in Markdown, script the worker outcomes, and watch the JS kernel parse, check, and route through your graph. It runs entirely client-side, the same module our cross-language conformance vectors certify. Nothing you type leaves this page.

Build a flow, hit Share, and send the link. The entire flow is compressed into the URL; no account, no server storage, nothing to sign up for. Anyone with the link sees exactly what you see.

Write a flow, click Share; the entire flow is compressed into the URL. No server, no account, no storage. Send the link to anyone.

Consumed in visit order; {"__raise__": "msg"} throws an error.

P0every reachable edge is decidable: zero ML, runs anywhere (this page is the proof)

Targets · one flow, where it runs

Python reference
Portable · JS / Rust / Go
Level M hardware · FPGA / eBPF

✓ predicates safe & parseable

nodeedgetiercondition
write_coderun_testsdeterministicalways
run_testsdonedeterministicwhen tests_pass
run_testsgive_updeterministicwhen visits > 3
run_testswrite_codedeterministicelse
doneterminal
give_upterminal

Pick a node and press ◇ Prove reachability. Proven client-side, no model, no server.

Press ▶ Run to replay the scripted outcomes.

P1

Semantic routing, locked

This support router has no when predicates; it routes on meaning. The condition vectors are pre-baked into a lockfile, so the engine only embeds the incoming message and compares. The scripted messages below run the real routing with zero model download. Load the full embedder to route your own text.

Try a customer message

0.22

If the top score falls below this, the engine escalates to a human instead of guessing.

Pick a message above to watch the router score every desk and choose.

Route your own text

Downloads the MiniLM model (~30 MB, one-time) and runs it in your browser via ONNX Runtime Web. Still nothing leaves your machine; the model comes to you.

Try it on your own data

Paste an event. See the approximate saving.

Drop a JSON event below and we approximate what its decision would cost on the wire as a single PrismPath symbol. It is an estimate, not a benchmark.

Paste an event, or use the example, to see the estimate.

This is an approximation.It assumes your JSON is one decision's worth of telemetry and every scalar is decision-relevant, and models the decision as one self-framing index at about 2.8 bits per field plus framing (anchored to the measured spiral bench). Your real numbers depend on your actual policy — the only way to know them is to write it and measure. Compared against minified JSON, the fair floor; a real OTLP envelope is larger.