10 Jac Walkers
guarding your AI agent
Deterministic policy evaluation. No LLM opinions. No probabilistic guessing.
Pure graph traversal that returns PASS, CONFIRM, or BLOCK.
Why Jac for Policy Evaluation?
Deterministic
LLMs are probabilistic -- ask the same question twice, get different answers. Safety policies must be deterministic. Jac walkers traverse a graph and return the same verdict every time.
Graph-Native
Jac is built around graphs. Policy evaluation is graph traversal -- walkers visit nodes, check conditions, and report verdicts. No ORM, no SQL. Just root --> node.
Composable
Each walker is independent. Stack 10 built-in policies, then add your own custom walkers. Each one checks a specific concern -- no tangled if-else chains.
How Jac Walkers Evaluate Policies
Every action your AI agent takes is evaluated by Jac walkers traversing a policy graph.
No LLM opinions. No probabilistic guessing. Pure deterministic graph traversal.
Built-in Policy Walkers
Click any walker to see its Jac source code
Write Your Own Policy in 5 Lines
Corpus uses Jac walkers for policy evaluation. A walker is a function that traverses a graph and reports a verdict. Here is a custom policy that blocks production API calls in dev:
walker CheckNoProductionCalls {
can check with entry {
if self.action_type == "api_call" and "production" in self.target {
report {"verdict": "BLOCK", "reason": "No production API calls in dev"};
disengage;
}
report {"verdict": "PASS"};
}
}Save as policies/custom/my_policy.jac and Corpus picks it up automatically.
Built with the Jac programming language
Learn more at jaseci.org