Open Source · Apache-2.0/github.com/Cloudgeni-ai/opengeni

ProductionAIinfrastructure.
Outofthebox.

Durable execution, sandboxed tools, approvals, multi-tenancy and metering — built in, ready to plug into your product or your org.

durable
runs for days, survives restarts
governed
approvals · budgets · audit trail
yours
your cloud · data · model
§ 01Why OpenGeni

Four things, one runtime. Most products give you some. You need all four.

open

You host all of it

One API, one runtime. Readable, changeable, Apache-2.0.

permanent

Permanent sessions

Sessions don't end. Attach a client tomorrow — the history is still there.

your hardware

Your hardware counts

Connect the machine that already has the data, GPU or network route.

governed

Governance built in

Approvals on risky actions, session-scoped credentials, full audit trail.

Built for agents that have to work in the real world.

01
Embed agents in your product

Ship agent features without building durable execution, sandboxing, approvals and metering yourself.

02
Run agents across your organization

Give internal agents governed access to your systems, data and compute — in your own environment.

§ 02Compute targets

Pick where every session runs. A managed sandbox, or your own machine.

A fresh isolated environment we create and tear down, or a machine you already own — with your repos and files mounted in. Choose per session.

WORKERrunStream()OpenAI Agents SDKINTERFACESandboxClient.createSession().applyManifest().deserialize().delete()containerremote sandboxtrusted localno-op (none)your own ↗
$ implements SandboxClient

Bring your own runtime.

Any backend that satisfies the SandboxClient contract works: create, resume, delete, and materialize resources. Add yours next to the ones we ship.

Surface
createSandboxClient(settings)
Resources
Manifest with gitRepo + s3Mount entries
State
deserialize / serialize SandboxSessionState
OPENGENI_SANDBOX_BACKEND=docker
Docker
default for self-host
OPENGENI_SANDBOX_BACKEND=modal
Modal
remote, burstable
OPENGENI_SANDBOX_BACKEND=local
Local
dev convenience — not isolation
OPENGENI_SANDBOX_BACKEND=none
No-sandbox
talk-only / planning

Plus anything else that implements the contract.

Sandbox preparation profiles

Secure by default. Nothing leaks in unless you say so.

No host environment enters the sandbox by default. Opt into a profile — Azure, GitHub — or allowlist variables explicitly. Model keys stay with the worker.

Default image

Tuned for infra work out of the box.

Terraform, Checkov, Azure CLI, GitHub CLI and shell utilities included. Swap in your own image any time.

§ 03Architecture

The event log is the truth. The bus is just the wire.

Clients talk only to the API. Durable execution coordinates the work and every session is written down — so a crash or a deploy doesn't lose it.

active path request packet
hover any node to isolate its connections
The log is truth.

Miss live events and the API backfills them in order. Nothing is inferred after the fact — sessions replay exactly as they happened.

Live is just delivery.

Streaming is a convenience layer, not the record. That separation is why the hot path stays cheap and the history stays honest.

Workers do the work.

Model calls, tools, sandbox commands, repo edits — each runs once and is written down, so a restart never re-charges or re-sends.

under the hood · Postgres, Temporal, NATS, S3, the OpenAI Agents SDK and MCP — boring, proven pieces, none of them hidden from you.

§ 04Quick start

One stack. Every cloud.

Where agents run is a compliance question, not a preference. Pick a profile, point it at your cloud — the stack you develop against is the one that ships.

~/opengeni · azure-managed
bash
$
values.yaml (excerpt)helm · terraform
  • product access modelocal · configured · managed
  • billing modedisabled · stripe
  • sandbox backenddocker · modal · local · none
  • secretsSecret · ExternalSecret · Key Vault / Secrets Manager
  • availabilityrolling · PDB · topology spread · HPA opt-in
full chart in deploy/helm/opengeni
§ 05API

Sessions are just an endpoint. No magic SDK required.

Drive the runtime over plain HTTP. The app we ship is just another client.

/// Sessionsstart, stream, reply
/// Contextfiles and knowledge
/// Scheduleswork that runs itself

Routes shown without the /v1 path prefix for clarity. The shipped API mounts everything except /healthz under /v1.

Built in the open

Built in the open.

Apache-2.0, with contribution and security guides in place. Next up: agents and environments as first-class resources, webhooks, and more sandbox backends.