https://github.com/openresponses/openresponses
https://github.com/openresponses/openresponses
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/openresponses/openresponses
- Owner: openresponses
- License: apache-2.0
- Created: 2026-01-15T01:53:57.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-01-27T15:11:30.000Z (about 1 month ago)
- Last Synced: 2026-01-28T02:02:29.098Z (about 1 month ago)
- Language: TypeScript
- Homepage: https://openresponses.org
- Size: 519 KB
- Stars: 706
- Watchers: 13
- Forks: 43
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING
- License: LICENSE
Awesome Lists containing this project
- awesome - openresponses/openresponses - (TypeScript)
README
# 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:
```bash
bun run test:compliance --base-url http://localhost:8000/v1 --api-key $API_KEY
```
Filter to specific tests:
```bash
bun run test:compliance --base-url http://localhost:8000/v1 --api-key $API_KEY --filter basic-response,streaming-response
```
For all flags:
```bash
bun run test:compliance --help
```