openresponses.org
  • TypeScript 43.1%
  • Python 32%
  • MDX 13.2%
  • Astro 9.6%
  • CSS 1.8%
  • Other 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-03-10 09:28:21 -07:00
.github/workflows add github tests 2026-01-27 10:10:56 -05:00
.husky Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
.vscode Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
bin Merge branch 'main' into main 2026-02-01 23:28:15 -05:00
public Merge pull request #54 from franciscojavierarceo/redhat 2026-03-05 09:54:48 -08:00
schema Make logprobs optional 2026-02-02 11:12:06 -08:00
src Merge pull request #54 from franciscojavierarceo/redhat 2026-03-05 09:54:48 -08:00
.gitignore add nvidia logo to community section 2026-01-20 15:26:12 -08:00
.prettierignore Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
.python-version Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
.tool-versions swap node for bun in .tool-versions 2026-01-27 09:48:07 -05:00
astro.config.mjs Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
bun.lock add @typespec/prettier-plugin-typespec dev dep 2026-01-16 14:48:01 -08:00
CONTRIBUTING update core maintainer list 2026-03-10 09:26:33 -07:00
kubb.config.ts Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
LICENSE Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
package.json Merge branch 'main' into main 2026-02-01 23:28:15 -05:00
prettier.config.js Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
pyproject.toml Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
README.md Merge pull request #17 from kesku/add-cli-compliance-runner 2026-01-29 12:47:32 -05:00
tailwind.config.ts Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
tsconfig.json Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
tspconfig.yaml Initial commit of Open Responses 2026-01-15 09:57:02 -08:00
uv.lock Initial commit of Open Responses 2026-01-15 09:57:02 -08:00

Open Responses

Open Responses is an open-source specification for multi-provider, interoperable LLM interfaces inspired by the OpenAI Responses API. It defines a shared request/response model, streaming semantics, and tool invocation patterns so clients and providers can exchange structured inputs and outputs in a consistent shape.

At a high level, the spec centers on:

  • An agentic loop that lets models emit tool calls, receive results, and continue.
  • Items as the atomic unit of context, with clear state machines and streaming updates.
  • Semantic streaming events (not raw text deltas) for predictable, provider-agnostic clients.
  • Extensibility for provider-specific tools and item types without breaking the core schema.

What's in this repo

  • Full specification: public/openapi/openapi.json
  • Website documentation content (source): src/pages
  • Compliance tests: bin/compliance-test.ts

Compliance testing

This repo includes an interactive compliance tester in the docs site (/compliance) and a CLI runner for faster local iteration and CI (bin/compliance-test.ts).

Web UI

The interactive compliance tester is available at https://www.openresponses.org/compliance.

CLI

Run the same compliance suite as the web UI from the command line. For example:

bun run test:compliance --base-url http://localhost:8000/v1 --api-key $API_KEY

Filter to specific tests:

bun run test:compliance --base-url http://localhost:8000/v1 --api-key $API_KEY --filter basic-response,streaming-response

For all flags:

bun run test:compliance --help