Skip to main content

Python SDK for jhansi.io - run AI-generated code in isolated sandboxes

Project description

Jhansi.io

Build it. Run it. Ship it.

Cloud sandbox for running AI-generated code safely.


The problem

Every AI coding tool generates code. None of them answer:

"Where does that code actually run, and what can it touch?"

Paste it into your terminal and hope? That's eval() with access to your .env, your AWS creds, your customer database.

In a startup that's risky. In fintech that's an FCA conversation you do not want to have.

Jhansi.io is the answer.


What it is

A cloud sandbox platform with three layers:

┌─────────────────────────────────────────────┐
│                  Jhansi                      │
│         Product · SDK · Cloud UI            │
└───────────────────┬─────────────────────────┘
                    │
        ┌───────────┴───────────┐
        │                       │
┌───────▼────────┐   ┌──────────▼──────────┐
│     Petri      │   │     TenantVault      │
│ Execution      │   │  Secrets · Audit     │
│ Engine         │   │  Layer               │
└────────────────┘   └─────────────────────┘
Layer What it does
Jhansi SDK, cloud UI, and the API your app talks to. This repo.
Petri Runs code in isolated Docker containers. Spins up, executes, tears down. Zero state left behind.
TenantVault Per-tenant secrets injection. AI agents can use secrets but can't read or exfiltrate them.

Repositories

Repo Status Description
jhansi-io/jhansi 🟢 Active SDK — pip install jhansi
jhansi-io/petri 🟢 Active Execution engine — FastAPI, Docker isolation, multi-language
jhansi-io/tenantVault 🔜 Coming soon Secrets management — envelope encryption, per-tenant KMS

Install

pip install jhansi

Quick start

from jhansi import Sandbox

with Sandbox(language="python") as sb:
    result = sb.exec("print('hello from isolation')")
    print(result.output)

SDK is under active development. Follow this repo for releases.


Petri API

POST   /v1/sandboxes            → Create sandbox, get sb_<id>
POST   /v1/sandboxes/{id}/exec  → Run code, get output
GET    /v1/sandboxes/{id}       → Check status
DELETE /v1/sandboxes/{id}       → Destroy it. Gone.

Multi-language: python · node · go


Business model — Open Core

Tier Details
Open Source Self-hosted, Apache 2.0. Run it in your own VPC.
SaaS — Pro Managed cloud. No infra to run.
SaaS — Enterprise SOC2, TenantVault, audit streaming, SSO, DPA.

Roadmap

Full roadmap with target dates: jhansi.io/roadmap

No vaporware. If it's not on the roadmap with a date, we're not building it yet.


Why Jhansi.io?

  • Competitors (E2B, Modal, Daytona) are SaaS only — Jhansi.io is open core, self-hostable
  • Nobody else combines execution sandbox + secrets vault + compliance audit in one platform
  • Built by someone with 18 years in banking who has lived the compliance problem firsthand
  • Regulation (FCA, SOC2, EU AI Act) requires audit of AI actions — Jhansi.io provides it

Follow the build

Building in public. Technical deep-dives on Dev.to and the Jhansi.io blog.

Star this repo to follow along. ⭐


License

Apache 2.0 — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jhansi-0.1.1.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jhansi-0.1.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file jhansi-0.1.1.tar.gz.

File metadata

  • Download URL: jhansi-0.1.1.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.1 CPython/3.12.7 Darwin/25.3.0

File hashes

Hashes for jhansi-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2a812e39cd17cf81e3df242549eb5131c762321f6d26e3c8d44f55432ff3a5dd
MD5 d74626852abf10342c703c690239f326
BLAKE2b-256 a757d8ee02bf2fe728f045a4a5dcf6373f67db661145cba146b4da015343807e

See more details on using hashes here.

File details

Details for the file jhansi-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: jhansi-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.1 CPython/3.12.7 Darwin/25.3.0

File hashes

Hashes for jhansi-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1b636b5a57311ac8b6ca1efbf7a9206aaa9f2ce9801896bd28527ae4bcfaad34
MD5 9fad06f709fe6344b408a3bbe7cb7a76
BLAKE2b-256 c4efd3994c37baf36e8c80692d1b4fb0ebf91f89846bc93fe32671450ec3e427

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page