One public surface.
Create sessions, send input, and stream events through the API. Use the TypeScript SDK or build directly on HTTP.
Build the experience that makes you different. Opengeni handles the durable sessions, tools, and execution underneath.
API · SDK · ReactDurable state. Governed execution.
Your product talks to the API. The runtime coordinates the work, and the durable record stays in infrastructure you operate.
Create sessions, send input, and stream events through the API. Use the TypeScript SDK or build directly on HTTP.
Temporal coordinates session lifecycle and long-running work. Separate control and turn workers keep orchestration and execution distinct.
Postgres stores durable history. NATS distributes live events, while object storage retains files and sandbox archives.
The same open stack, with a deployment path that fits your environment.
Install Bun, start Docker, and configure your model credentials. The launcher installs dependencies, starts infrastructure, runs migrations, and brings up the API, workers, and web app.
Follow the local setupgit clone https://github.com/Cloudgeni-ai/opengeni.git
cd opengeni
cp .env.example .env
# Configure model credentials in .env
bun run devOpen the app at the URL printed by the launcher. Ports are selected per checkout.
Choose managed sandbox execution or a Connected Machine you own. The compute target is an explicit part of the session.
Choose the integration surface you need. Keep authentication and tenant mapping on your backend.
@opengeni/sdk/chatA server-side chat handler with product, tenant, user, and conversation mapping.
@opengeni/sdkA TypeScript client for sessions, workspaces, tools, files, and event streams.
@opengeni/reactSession hooks, a composer, and timeline surfaces you can style for your product.
Apache 2.0, from the runtime to the deployment tooling. Inspect the source and contribute to the stack you depend on.
Contributing guideGet a feel for the runtime in the app. Then bring it into your own product.