- Ox Alpha streaming sends generated output incrementally through OpenRouter.
- API access uses the model slug
stealth/ox-alphawith an OpenAI-compatible request format. - Streaming control requires
"stream": truein the request body. - Best workflow starts with a secure API key, a small test prompt, and visible error handling.
- Performance check should consider latency, throughput, uptime, and tool-call reliability.
Ox Alpha streaming: What It Does
Ox Alpha streaming is an API workflow for receiving a response as it is generated instead of waiting for the entire completion. OpenRouter lists Ox Alpha as a reasoning model intended for coding, sustained agentic work, production workloads, and tasks that combine text with visual context. The model is identified by the slug stealth/ox-alpha.
The provider is described as an anonymous third-party operator during the preview period. OpenRouter routes requests to that provider but does not identify itself as the model’s developer, owner, or provider. This distinction matters when you review retention terms, operational responsibility, and production suitability.
The OpenRouter model page lists a 1M context window, text, image, and video input support, and text output. The page also shows a listed release date of August 20, 2026. Because this is a preview-style stealth model, verify current behavior before depending on a specific modality, limit, or provider policy in a critical application.
Incremental Output
Receive response chunks as they become available rather than waiting for one final payload.
Coding Workflows
Suitable for long-horizon software engineering, codebase tasks, and agent-style development loops.
Large Context
The model page lists a 1M-token context window for handling substantial inputs.
Multimodal Input
The reference page describes support for text, images, and video input with text responses.
| Item | Published detail | Practical meaning |
|---|---|---|
| Model slug | stealth/ox-alpha | Use this exact identifier in the request |
| Context | 1M tokens | Large prompts may fit, but application limits still apply |
| Output mode | Text | Read generated text from response chunks |
| Listed price | $0 per input and output million tokens | Confirm current terms before production use |
| Provider model | One provider | OpenRouter forwards requests directly to the listed provider |
Treat the published specifications as a snapshot from August 22, 2026. Test the exact endpoint, modality, and response shape in your own integration before release.
API Setup and Authentication
The fastest setup path is to create an OpenRouter API key, store it as an environment variable, and send a request using stealth/ox-alpha. OpenRouter describes its API as OpenAI-compatible, so many existing SDK patterns can be adapted by changing the base URL, authentication configuration, and model slug.
Never place a production API key directly in browser code, public repositories, screenshots, or client-side applications. A server-side route should receive the user request, attach the secret key, call the provider, and return only the data your application needs.
The basic environment setup is:
export OPENROUTER_API_KEY=sk-or-v1-...
The request endpoint is a POST operation. The essential headers are the content type and bearer authorization. OpenRouter also documents optional HTTP-Referer and X-Title headers for identifying an application on its rankings and related platform displays.
| Request element | Required status | Example |
|---|---|---|
| HTTP method | Required | POST |
| Authorization | Required | Bearer $OPENROUTER_API_KEY |
| Content-Type | Required | application/json |
| Model | Required | stealth/ox-alpha |
| Stream flag | Required for streaming | true |
| HTTP-Referer | Optional | Your application URL |
| X-Title | Optional | Your application name |
Create an API Key
Open the OpenRouter dashboard and create an API key. Give it the narrowest practical permissions, then keep it outside source control.
Store the Secret
Set OPENROUTER_API_KEY in the server environment. Use a secret manager for deployed applications rather than a plain configuration file.
Select the Model
Set the model field to stealth/ox-alpha. Avoid relying on a display name alone because the slug is what determines routing.
Send a Small Test
Start with a short prompt and confirm that authentication, model selection, and response parsing work before sending large context windows.
Enable Streaming
Add "stream": true to the JSON body, then process the returned server-sent event stream until the completion ends.
Do not expose OPENROUTER_API_KEY in frontend JavaScript. Proxy requests through a protected server endpoint and add rate limits before allowing public traffic.
How to Enable and Read the Stream
OpenRouter documents streaming as a server-sent event workflow. In the request body, set "stream": true; the server then returns incremental event data as the model produces output. Your client should append each non-empty text delta to a buffer and render it progressively.
A minimal cURL request looks like this:
curl -N -H "Content-Type: application/json" -H "Authorization: Bearer $OPENROUTER_API_KEY" -d '{"model":"stealth/ox-alpha","stream":true,"messages":[{"role":"user","content":"Explain recursion in simple terms."}]}'
The -N option helps cURL display the stream without unnecessary buffering. In an application, the equivalent behavior requires an SSE-aware parser or an SDK that exposes an asynchronous iterator.
The OpenRouter TypeScript SDK example uses openrouter.chat.send, passes the model and messages, and iterates over returned chunks. Text is read from chunk.choices[0]?.delta?.content. The final chunk may also contain usage information, including reasoning-token details when available.
| Stream stage | What to inspect | Recommended action |
|---|---|---|
| Connection | HTTP status and headers | Reject unauthorized or malformed requests early |
| First chunk | Choice and delta fields | Initialize the visible response safely |
| Middle chunks | Incremental content | Append text without replacing earlier output |
| Empty chunk | Missing or blank content | Skip it without treating it as failure |
| Final chunk | Usage and completion state | Save metrics and close the UI state |
| Error event | Provider or routing message | Show a retry-safe message and log diagnostics |
For user-facing applications, separate the accumulated answer from the transport state. This lets you display “connecting,” “generating,” “completed,” or “failed” without corrupting the text already received.
A robust stream handler should also:
- Stop reading when the server signals completion.
- Handle a connection ending before a final usage object arrives.
- Avoid rendering raw provider errors to end users.
- Preserve partial text when a retry is offered.
- Cancel the request when the user navigates away or presses Stop.
- Record request duration without logging private prompt content unnecessarily.
The safest pattern is append-only rendering: read each available content delta, add it to the buffer, and treat usage data as optional rather than guaranteed.
Performance, Availability, and Production Use
OpenRouter’s published snapshot provides several operational signals for Ox Alpha. The listed provider showed a P50 latency of 5.30 seconds and throughput of 23 tokens per second on the provider summary. The wider performance panel displayed additional percentile averages, including average P50 throughput of 36 tokens per second and average P50 latency of 3.38 seconds across the shown measurement view.
These figures should not be treated as a promise for every region, prompt, SDK, or time period. Latency can change with prompt size, output length, traffic, provider load, tool use, and the complexity of the task. Streaming improves perceived responsiveness because users can see output before the full completion arrives, but it does not necessarily reduce total generation time.
The page showed 99.99% uptime and 99.51% availability over three days in the captured period. It also showed an average tool-call error rate of 2.27% and an average cache hit rate of 81.72% for the listed provider. Monitor your own workload because these metrics may differ from the public aggregate.
| Metric | Snapshot value | How to use it |
|---|---|---|
| Provider P50 latency | 5.30 seconds | Set realistic first-response expectations |
| Provider throughput | 23 tokens/second | Estimate visible output speed |
| Uptime, three days | 99.99% | Review short-term responsiveness |
| Availability, three days | 99.51% | Plan retries for occasional failures |
| Tool-call error rate | 2.27% average | Add validation and recovery paths |
| Cache hit rate | 81.72% average | Avoid assuming every request receives the same cache behavior |
For production agent workflows, use bounded retries with exponential backoff. A retry should be safe for the operation being performed; do not automatically repeat an external action merely because the response stream disconnected. Tool calls deserve additional validation because a partial answer and a completed action are different states.
Track time to first visible token, total completion time, interrupted streams, HTTP failures, tool-call errors, and output length. These measures are more useful than throughput alone.
Recommended Workflow and Troubleshooting
Use a staged rollout for Ox Alpha streaming. First validate a simple text-only request. Then test longer prompts, structured output, image or video inputs where supported, and tool-enabled agent tasks. This progression isolates integration errors before they become difficult to diagnose.
A practical troubleshooting sequence is:
- Confirm the environment variable exists on the server.
- Check that the bearer token is attached exactly once.
- Verify the model slug is
stealth/ox-alpha. - Confirm the request body is valid JSON.
- Check that
"stream": trueis a Boolean rather than a quoted string. - Inspect the first response status before attempting to parse events.
- Log transport metadata while redacting prompts, keys, and sensitive output.
- Retry only when the failure is safe to repeat.
| Symptom | Likely cause | Fix |
|---|---|---|
| 401 or 403 response | Missing, invalid, or restricted key | Recreate or update the server-side key |
| Model not found | Incorrect model identifier | Use stealth/ox-alpha exactly |
| Blank interface | Delta parser ignores nested content | Inspect choices[0].delta.content |
| Delayed visible output | Client or proxy buffering | Use SSE-compatible handling and flush output |
| Stream stops early | Network interruption or upstream failure | Preserve partial text and offer a safe retry |
| Tool result is unreliable | Missing validation or timeout logic | Validate tool arguments and define recovery states |
Streaming Readiness Checklist:
- Create and protect an OpenRouter API key
- Use the stealth/ox-alpha model slug
- Send stream as a Boolean true value
- Parse incremental delta content safely
- Preserve partial output after interruptions
- Add timeout, retry, and cancellation handling
For a maintained integration, link your implementation to the Ox Alpha model and provider page on OpenRouter. It is the primary reference used for the published model slug, capabilities, provider information, performance snapshot, pricing display, and quick-start examples.
Build the first version around plain text generation, then add multimodal inputs and tools only after stream parsing and failure recovery are stable.
Ox Alpha streaming FAQ
Q: What is Ox Alpha streaming?
It is an API method that returns Ox Alpha output incrementally through OpenRouter rather than waiting for one complete response. Add stream: true to the request body and process the incoming server-sent event data.
Q: Which model identifier should I use?
Use the OpenRouter model slug stealth/ox-alpha. The display name is Ox Alpha, but the slug is the identifier required in API requests.
Q: Is Ox Alpha free to stream?
The OpenRouter page captured on August 22, 2026 displays zero-dollar input and output pricing for the listed provider. Pricing and access terms can change, so confirm the current page before production deployment.
Q: How should I handle a disconnected stream?
Keep the partial text already received, mark the response as interrupted, and offer a retry only when repeating the request is safe. Log the transport error without exposing API keys or sensitive prompt data.
Ox Alpha is described as a third-party stealth model in preview. Review the current provider terms and live availability before using it for sensitive or mission-critical workloads.