JEVANY / DOCUMENTATION

Harness and symbolic control

Jev-Harness uses an external LLM to compile tasks into typed questions. The planner sees an evidence schema by default. The caller retains control of the state, which passes unchanged to JevAny for the bounded decision.

With the JevAny server running, install the Bedrock adapter:

python -m pip install -e '.[bedrock]'

Use standard AWS credentials with access to the chosen Bedrock model. This example uses the same planner model as the recorded harness run:

from jevany.bedrock import BedrockGenerator
from jevany.harness import HTTPDecisionClient, JevHarness

planner = BedrockGenerator("us.anthropic.claude-opus-4-7")
harness = JevHarness(planner, HTTPDecisionClient("http://127.0.0.1:8008"))
result = harness.run(
    "Choose an execution mode and decide whether rollback is required.",
    {"environment": "staging", "tests": "passed", "snapshot": "available"},
)
print(result["decision"]["answers"])

Jev-Symbolic asks an LLM to write a compact decision tree, validates branch coverage and acyclicity, then sends each internal node to JevAny. Every result records the outcome ID and complete branch trace.

For command-line entry points, see the harness example and the symbolic example. The saved harness and symbolic outputs include the compiled requests and decisions.