Research into practice / Agent harnesses

Jaz

One task. Smaller calls. A clear record of what happened.

An independent AffixIO exploration of JAZ.
Based on research published 22 September 2026. Not the official JAZ project or an endorsed integration.

Recursive workflow playground

Local simulation. No model calls or charges.
Ready
Calls consumed
0 / 16
Final result
Not returned
Recorded events
0

Call tree Parent > child > return

Call inspector

No call selected.

Execution history

    This browser demo uses deterministic JavaScript, not the JAZ Python runtime or an LLM. Each call splits inputs until a branch contains at most two values. The root is depth 0. The trace is unsigned and is not an AffixIO proof. Input values stay in this browser; normal site visit analytics remain active.

    Real AffixIO API

    Sign the result. Verify it. Change it.

    Live ML-DSA-65 attestation

    The server recalculates the task using the input values above. AffixIO signs that payload, then checks its signature against both the original result and a copy changed by 0.01.

    Only press this with sample data. This sends your input values to the AffixIO website server. The API receives a digest, count and calculated result, not the raw values. It does not send money, call a language model or verify user consent. No customer API key is required in the browser.

    Not requested

    Server-calculated result
    Not requested
    Original payload
    Not requested
    Altered payload
    Not requested
    Live API receipt and signature
    No live receipt returned.

    A valid signature authenticates the API's attestation of this payload, not an agent's authority to act. This is not a zero-knowledge proof or a JAZ runtime execution. The altered payload is deliberately checked with the original signature. Demo requests are rate-limited and use a finite service allocation.

    The paper

    What is JAZ?

    JAZ is a Python framework built around invoke: a model writes executable code, observes its results and can delegate through further calls. Its distinctive idea is that the inputs and interaction history are also accessible as program variables. Hooks provide observation, validation and resource controls. The paper explores long-horizon memory and continual self-improvement through this minimal agent loop. Read Li and colleagues' paper.

    Those research results are specific to the authors' evaluations. This page does not reproduce their benchmarks, compare model performance or promise the same results in production.

    The practical question

    What should an agent be allowed to do next?

    A useful result and permission to act are different things. A workflow can calculate the correct total and still lack authority to place an order, send a message or access another account.

    Our playground makes one narrow boundary tangible: a branch cannot start after its shared budget is exhausted, and a blocked branch cannot become a completed answer. Production permissions need the same explicit treatment, backed by the systems that own the real authority.

    Explore verification before action

    September 2026 research context

    Agent harnesses, context engineering and recursive workflows

    14 September

    Harness self-improvement

    ModularRSI studies separate improvements to agent-loop, tool-use, observation, context and completion components. It is a useful counterpoint when choosing between a minimal loop and a more structured harness.

    Read ModularRSI

    17 September

    Token-efficient agent execution

    SoL-Pi examines recursive auto-research for agent harnesses, including context compaction and delegated reading. Its focus highlights why the cost of a workflow includes the context passed between calls, not just the final answer.

    Read SoL-Pi

    22 September

    Recursive language model agents

    JAZ brings recursive calls and accessible history into the same execution environment. It connects the discussion of agent memory to the way a program passes data between functions.

    Read Harness as a Language

    These are current topics evidenced by public research, not a search-volume ranking. AffixIO is not affiliated with these research projects.

    Where AffixIO fits

    Keep the action boundary outside the model's discretion.

    For an application using a code-generating agent, put privileged operations behind controlled services. Resolve the current user mandate, evaluate the exact proposed action and enforce the decision before the external effect occurs.

    AffixIO's SDK and proof services are a separate part of that design. This page does not ship a native JAZ connector. The AffixIO SDK documentation describes the supported integration; the consent guide explains scope and revocation.

    A trace helps reconstruct execution. It does not, by itself, authenticate an actor, prove user consent or make a false input true. Do not confuse an unsigned log with a cryptographically verified decision.

    A production checklist

    • Isolate execution. Generated code must not inherit unrestricted access to your production host or secrets.
    • Own the limits. Enforce resource and permission limits where the agent cannot rewrite them.
    • Check current authority. Recheck expiry, revocation and action scope at the point of use.
    • Record the boundary. Link the attempted action, decision and external outcome without collecting unnecessary personal data.
    • Test denied paths. Budget exhaustion, invalid output and unavailable dependencies need explicit outcomes.
    Tool-call permission checks

    Use the real framework

    From the playground to Python

    The upstream package is jaz-lang, imported as jaz. The repository documents Python requirements, provider configuration, hooks and local-model backends. A real run needs a configured model and an appropriately isolated environment; model providers may charge for usage.

    The browser demo above does not install the package, execute Python or connect to your model credentials.

    Different responsibilities

    JAZ: execution and orchestration of model-generated work.

    Your application: accepted credentials, isolation, permission enforcement and the actual side effect.

    AffixIO: the separately integrated verification and evidence layer for supported decisions.

    Agentic Pay Kit applies that separation to payment-related workflows. Verification is not a substitute for payment authorisation.

    Common questions

    Before you build

    Is this the official JAZ website?

    No. This is an independent AffixIO explainer and browser simulation. The official code belongs to the jaz-lang project linked above.

    Does this demo use an AI model?

    No. It performs real calculations with a deterministic recursive JavaScript workflow. It illustrates call delegation, shared limits and inspectable history without claiming to reproduce model reasoning or the paper's results.

    Is the downloaded trace a signed proof?

    The browser simulation trace is unsigned. The separate live API demo returns an ML-DSA-65 attestation and checks it through AffixIO. Its signed receipt covers the calculation payload, not user consent, payment authority or a JAZ model run.

    Does a recursion limit make generated code safe?

    No. It limits one aspect of execution. Production systems still need isolation, access controls and enforcement around privileged operations.

    Can I run JAZ with a local model?

    The upstream repository documents local OpenAI-compatible backends. Check its current configuration and model requirements. This page neither configures nor exposes a local model service.