WHY AI-NATIVE

Built for engineers working alongside AI.

Most frameworks bolt AI tooling on after the fact. Openora.ai starts from contracts an agent can actually read - the same structure that keeps humans safe keeps agents safe too.

0

codegen steps between a contract and its typed client

15

modules ship an AGENTS.md playbook on day one

115

typed HTTP routes on the composed contract

THE DIFFERENCE

Same problem, structured differently.

Traditional platforms
  • Docs and code drift apart the moment either one changes
  • Codegen scripts nobody wants to touch, let alone debug
  • Onboarding takes weeks per engineer, longer per agent
  • Agents guess at business rules from stale comments
  • Manual sync between API types and frontend types
Openora.ai, AI-native
  • Contracts are the single source of truth, always
  • Zero-codegen, fully inferred typed SDK
  • Every module ships an AGENTS.md playbook
  • Agents scaffold real modules against real contracts
  • New engineers and agents ship safely on day one
An Openora.ai engineer working on a contract

Focused engineering, not fighting a vendor's black box

HOW IT WORKS

Six pieces that make it AI-native.

None of these are bolted on after the fact - they're the framework.

01contracts

AI-Readable Code

Every gaming domain is fully contract-driven, so LLMs and AI agents map, extend and debug your code natively - no guesswork, no stale docs.

02agents

AGENTS.md Playbooks

Domain rules, invariants and safe edit boundaries, written for the agent before it touches a line - and for the next engineer who joins.

03scaffold

One-command scaffolders

pnpm gen module, adapter, plugin, route, event or job-worker - each generates the contract, service, plugin, tests and docs in a single, agent-friendly pass.

04tooling

MCP Dev Server

Point Claude, Cursor or any MCP client at the dev server to inspect modules, routes and Drizzle schemas, propose table changes, and run verification within guardrails.

05contracts

Zero-Codegen SDK

The typed client is fully inferred from the contract. No `any`, no drift, nothing to regenerate after a change.

06guardrails

Boundaries, Enforced

Two independent gates - fast import lint plus a whole-graph dependency check - fail the build when an agent (or a human) crosses a domain boundary.

SEE IT WORK

An agent ships a module, not just a snippet.

agent session
> add a tournaments feature
$ pnpm gen plugin tournaments

 extensions/tournaments/
   └─ plugin.ts

$ pnpm gen adapter
 your vendor, bound over the shipped mock

 registered in extensions.config.ts · 0 files forked

Contract, service, plugin and an agent playbook - generated in one pass, registered with the plugin host, zero files forked.

Build it. Evolve it.
Own it.

Whether you're building from scratch, extending a legacy platform or planning a gradual migration, the framework gives you the freedom to evolve without vendor lock-in.