DGP (Decision Graph Protocol)
Open protocol for decision-based agents: apps expose evidence and typed decisions, Jev assesses, and app code guards commits.
Overview
Decision Graph Protocol (DGP), from Numerous ApS, is an open protocol for building decision-based AI agents. Applications expose immutable frames containing evidence and the currently offered typed decisions; an assessor, typically Jev, produces a typed assessment; the agent requests a commit; and application code checks current state and authorisation before applying effects and returning a receipt and the next frame.
It is designed for Jev-first orchestration with bounded LLM help when text or analysis is needed, but the core is assessor-neutral so deterministic resolvers, other models and humans can use the same contracts. The repository includes a specification, schemas, a Jev integration guide, an example with simulated demo actions, and optional Jev harness profiles for coding-tool contracts. It is independent and not an official TypeSafe specification.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which offered decision option does the evidence in this frame support?(inferred) | — |
How it works
- Application publishes a frame with evidence and offered decisions
- Jev or another assessor returns a typed assessment
- Agent requests a commit; application guards check state and permissions
- Receipt returned and next frame fetched
Strengths
- Application keeps control of permissions and effects
- Assessor-neutral contracts
- Immutable frames and receipts aid auditing
Caveats
- Experimental; demo actions are simulated
- Not an official TypeSafe spec
Getting started
See SPECIFICATION.md and the Run the example section of the README.At a glance
- Type
- App
- Status
- prototype
- Language
- TypeScript
- Runtime
- protocol + example app
- Has code
- yes
- Has tests
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Experimental decision protocol whose Jev adapter evaluates framed evidence with typed choices, while application code validates permissions and commits simulated demo actions.
hellogumbo/awesome-jev
Frequently asked questions
What is DGP?
A protocol where apps expose evidence and typed decisions, an assessor chooses, and app code guards commits.
Must I use Jev?
No, the core is assessor-neutral; Jev is the primary design target.
Is it official?
No, it is an independent Numerous ApS project.
Related projects
Datadog Labs Rust library for observability control loops where Jev recommends an action and declared guards decide if it commits.
LibraryprototypeRustopencode plugin that routes the agent's small multiple-answer decisions to Jev and labels each answer auto or escalate by confidence.
PluginbetaTypeScriptRust template for multi-agent orchestration with Jev as the L0 layer for typed routing, risk and escalation decisions.
ProjectprototypeRustNative macOS agent app wiring 23 LLM providers into a task loop, listed with an optional Jev command-risk advisor via a TypeSafeKit client.
LibraryproductionSwiftx402 pre-payment risk-check provider combining sanctions lists, phishing feeds and simulation with Jev checks for injected instructions.
ProjectproductionAuditable Zig terminal agent pairing Codex for coding with Jev typed preflight and postflight checks under deterministic policy gates.
CLIproductionZig