Skip to main content
Added

The private beta opens

Onecortex deploys an AI agent from your GitHub repository to an authenticated HTTPS endpoint. Today:
  • Python and TypeScript agents on LangGraph, the OpenAI Agents SDK, Strands Agents, CrewAI, LangChain, LlamaIndex, Mastra, the Vercel AI SDK, LangChain.js, or a plain function.
  • Builds that are smoke tested before they serve, and never take down the live version when they fail.
  • Rollback to any of the last ten versions, automatic deploys on push, secrets, logs, alerts and a chat console.
  • One endpoint that streams text, tool calls, tool results and steps.
Access is by invitation. Start with the quickstart.
Breaking

One contract for agent code

Every agent is now served the same way: Onecortex imports the object named by entrypoint and calls it. Agents that ran their own server are no longer supported.Does it affect you? Only if your agent.yml has a mode, server or streaming key, or your agent was built before this change.What to do:
  • Point entrypoint at your agent object or a function. See Entrypoints.
  • Remove mode, server and streaming from agent.yml. Until you do, each is ignored with a warning: Unknown key `mode` will be ignored.
  • Redeploy agents built before this change. Until you do, calls answer 502 with This version was built by an older version of Onecortex. Redeploy the agent to serve it.
Before:
agent.yml
After:
agent.yml
ChangedBreaking

The invoke API carries every event

Calls now report what the agent did, not only what it said: tool calls, tool results and steps, as events, in the stream and in the JSON body’s events.Does it affect you? Yes, if you call agents with input or message instead of prompt, or if you treat any non 200 as a failure without reading the body.What to do:
  • Send prompt. A request without it answers 400 with Request must include a 'prompt' field. Fields named input or message now reach your agent as params, and are not read as the prompt.
  • A run in which your agent raised now answers 502, with the full body: status is failed, error holds the code and message, and result the text sent before the failure.
  • In a stream, handle event: error. See the invoke API.
Before:
After:
Last modified on September 28, 2026