Open source · self-hosted · pre-alpha

Run untrusted code inside a boundary you control.

jhansi is a self-hosted runtime for untrusted and AI-generated code — simple to run, provable by design. It runs on infrastructure you control, with a durable record of what was authorised and how the execution ended.

View on GitHub → See how it works
Stage
Pre-alpha
Not production-ready
Engine
Go
In active development
Licence
Apache-2.0
Built in public
The problem

Generating the code is the easy part.

It can reach anything the process can

Generated code touches files, networks, credentials and host resources.

Your own infrastructure isn't a control

Running it inside your perimeter doesn't make the execution bounded or provable.

Logs are written after the fact

They aren't a trustworthy account of what was authorised and what actually happened.

Architecture

Between the agent and your infrastructure.

AI agents can generate the code. jhansi gives that code a controlled place to run — and records what happened while the execution is taking place, rather than reconstructing it afterwards.

AI agent or application
execution request
Your infrastructure
jhansi · execution boundary
01
Authorise the run
Confirm who may request this execution.
02
Isolate the execution
A dedicated sandbox, separate from the host.
03
Run it under limits
Designed to bound runtime, resources and access.
04
Record what happened
Structured events as the lifecycle progresses.
Execution result
What the code produced, returned to the caller.
Evidence record
A durable account of the run and how it ended.
Most sandboxes return the result. The evidence path is the difference. View the implementation →
Why jhansi

Simple to run. Provable by design.

For developers building agent workflows, platform teams defining an execution standard, and regulated teams that need the boundary to stay inside their environment.

Simple to run

Self-hosted, complete on its own.

One machine is a first-class deployment, not a cut-down cluster install. The direction is a single binary you install and start.

No Kubernetes, no Helm and no mandatory cloud control plane for the core product.

Provable by design

Evidence designed into the engine.

Structured events come off the execution lifecycle itself — including the transitions that fail and the ones that get denied — rather than being reconstructed later.

That provides a durable execution history now and a path toward exportable, tamper-evident evidence as the runtime evolves. These are controls and evidence that can support compliance work — not a compliance claim.

Execution evidence

A record, not just a log file.

Every state change produces a structured event, including failures and denied transitions. The record is created as the execution moves through its lifecycle.

Execution record append-only
+0.000sandbox.createdsbx_7f3a91
+0.014run.createdrun_2c8e40
+0.021run.started_rejectedrun_2c8e40
+0.118run.startedrun_2c8e40
+0.204run.succeededrun_2c8e40
+0.209sandbox.deletedsbx_7f3a91
event name · timestamp · aggregate — representative of the current event envelope

The current design provides an append-only execution history. Export and tamper-evidence capabilities will evolve with the runtime.

Current build

Shape it before it ships.

jhansi is being rebuilt in Go around the core create → execute → destroy lifecycle, with the evidence spine designed into the foundation. Nothing to install yet — the execution model, evidence format and isolation boundaries are being developed in public. Join the discussion on GitHub or follow progress on the roadmap.

Done Domain state machines, in-memory registry and append-only event sink
Now Service layer and the first HTTP execution path
Next Docker isolation behind a replaceable boundary, then real execution
Join the discussion → Follow the roadmap
© 2026 jhansi.io · pre-alpha GitHub Roadmap Contact Licence