Skip to content

Studio Demo

Studio ships with two co-flagship demos — one per containment pattern. Pick either to watch JacqOS contain an AI agent end-to-end.

  • Drive-Thru Ordering demonstrates fallible sensor containment. A voice parser proposes orders with varying confidence; JacqOS keeps them staged until a customer confirmation promotes them to accepted facts.
  • Chevy Offer Containment demonstrates LLM decision containment. A dealer chatbot proposes offer actions (send / review / reject); JacqOS evaluates each proposal against pricing policy and blocks unsafe ones before any offer reaches the customer.

Both demos run live with deterministic stand-in providers. No OPENAI_API_KEY, no network call, no recorded tape.

Terminal window
jacqos studio

On a fresh install, Studio opens to the Workspace picker. Pick whichever bundled demo interests you first.

A voice parser produces candidate.* parses of what the customer said. Until a customer confirmation arrives, nothing becomes an accepted order — so an 18,000-water parse sits staged and never reaches the POS.

Scenario tiles in the Demo Controls card:

TileWhat happens
Normal orderParser returns cola × 2, no ice. Customer confirms. Order reaches the POS. You see a Done row.
18,000 watersParser returns an absurd quantity. Bounds invariant trips. Order stays in the Waiting tab and never reaches the POS.
Correction turnFirst parse is wrong; a corrected parse retracts the first candidates and replaces them. The first candidate row disappears from Waiting and a new one arrives.

For each scenario, click the row in Activity to drill down and see the story from action back to the source voice.parse_result observation.

A model proposes offer actions under proposal.*. An ontology decision rule evaluates each proposal against policy and derives an authorized, blocked, or manager-review decision. Only authorized decisions derive executable intent.* offers.

Scenario tiles in the Demo Controls card:

TileWhat happens
Tame offerModel proposes a reasonable price. Decision is authorized. Offer is sent. You see a Done row for offer-sent-….
$1 offerModel proposes a $1 Tahoe. Pricing floor policy blocks the decision. The would-be intent.send_offer never derives; you see a Blocked row with the blocking invariant.
Manager-review offerModel proposes a deep discount that requires escalation. Decision goes to requires_manager_review; you see a Waiting row explaining what review is pending.

Head to What You Just Saw for a plain-language recap, or jump straight to Build Your First App to scaffold your own pattern-aware app.

If you want to explore the patterns in depth — the real-world failures they’re for and the code behind the containment — visit Fallible Sensor Containment or LLM Decision Containment.

Studio shows an empty Activity tab. The demo observation store is genuinely empty until you click a scenario tile. Once you do, rows animate in as the pipeline runs.

I do not see the Demo Controls card. You have opened a non-demo workspace. Open the workspace modal from the top bar and pick a bundled example.

I have an OPENAI_API_KEY set and I want to call the real model. You do not need to. The bundled demos use deterministic providers by design, so scenario behaviour is reproducible. To run against a live model, scaffold your own app with jacqos scaffold --pattern decision and configure a live provider.