Build Apps for Agents

Turn app capabilities into structured actions for CLI, HTTP, MCP, OpenAI / AI SDK tools, React hooks, and typed clients.

BOOTSTRAP.md|Feed this to your coding assistant (Cursor, Claude Code, etc.) to start instantly.
$npm install @ageniti/core
Built on standard surfaces
ReactReact
TypeScriptTypeScript
Node.jsNode.js
npmnpm
Next.jsNext.js
OpenAI
Vercel
Claude
ReactReact
TypeScriptTypeScript
Node.jsNode.js
npmnpm
Next.jsNext.js
OpenAI
Vercel
Claude
Choose Your Path

Start from the entry point that matches your app

Mature documentation sites usually make the next step obvious. Start fresh, integrate into an existing app, or jump in with a template.

Core Model

Define once, observe everywhere

An action is the unit of agentic capability. Every surface and every consumer reads from the same contract and the same streaming runtime.

Input
Artifact
RUNTIME
Runtime

Streaming Runtime

Validation, permissions, retries with per-attempt cancellation, idempotency, concurrency limits, redaction — and live event streams any consumer can subscribe to.

Surfaces

CLI / HTTP / MCP

All three are thin adapters over the same action contract. MCP stdio auto-detects Content-Length and newline framing; HTTP returns detailed error codes.

AI Tooling

OpenAI / AI SDK / Typed Client

Generate OpenAI Chat & Responses tool specs, Vercel AI SDK tools, and a typed client (.d.ts) — all from the same action manifest.

Open in your coding assistant

Download a bootstrap markdown file for your local coding assistant. It tells the assistant to clone the repo, find the SDK package root, read the right docs, and start from there without extra setup from the user.

Download bootstrap
Why Ageniti

One contract, every surface

Ageniti gives you the action contract and the runtime that observes it. CLI, HTTP, MCP, OpenAI / AI SDK tools, React hook, and the typed client are all derived from the same definition.

One contract, every surface

CLI flags, HTTP routes, MCP tools, OpenAI / AI SDK tool specs, React hooks, and the typed client are all derived from the same action. You never describe an action twice.

Bring your own schema

Zod, Valibot, ArkType, anything implementing Standard Schema v1 — Ageniti detects and wraps foreign schemas, so your existing typed validation keeps working.

Streaming events as a primitive

Logs, progress, and artifacts emit live as events any consumer can subscribe to. Build chat UIs, agent loops, or log shippers on top without owning the action.

Production-ready controls

Validation, permissions, timeouts, retries with per-attempt cancellation, idempotency keys, concurrency limits, secret redaction, and detailed error codes — all in the runtime.

Surfaces

Cover the main integration paths

Expose selected application capabilities to the environments where agents and operators actually work.

CLI
MCP
OpenAI Tools
AI SDK Tools
JSON Runner
React
Starter Patterns

Use patterns to skip integration guesswork

Use focused starter patterns to wire one app capability into CLI, MCP, HTTP, React, or tool-calling surfaces without guessing the package shape.

See All Patterns
Workflow

Integrate gradually

Ageniti works best when you start from a narrow, stable capability and grow outward.

1

Wrap one capability

Choose an existing flow like search, invoice creation, or account lookup, then define it with a typed action contract.

2

Add a headless entry

Keep your existing React or Next.js structure, and add a small Node-safe app entry for runtime and launcher wiring.

3

Expose where needed

Generate the surfaces you need for external tools, operators, internal automation, or local development.

Scope

What's in the box

Ageniti is the action primitive layer. It stays focused on the contract and the runtime, and stays unopinionated about how you compose actions on top.

Built in

+A typed action contract every surface is derived from
+A runtime that handles validation, retries, cancellation, idempotency, redaction
+Streaming events any consumer (UI, agent, log shipper) can subscribe to
+A typed client and codegen for autocomplete across processes

Up to you

-How you orchestrate prompts or agent loops
-How you pick tools and plan multi-step work
-Where you store memory or session state
-How you compose long-running workflows

Start with one capability, not a rewrite

Read the docs, define a first action, and expose a real part of your application to external tools, automation systems, and agent callers through explicit, reviewable contracts.

Explore Documentation

We are building a standard application capability layer: explicit contracts, safe surfaces, and reusable product capabilities.