Osyra sits between your application code and the model providers you enable. What you get: one API path, one policy surface, one attributable event trail, and usage finance can explain.
Every vendor contract comes with its own SDK, quota, retry semantics, and outage window. Applications that talk to three providers end up with three integrations, three failure modes, and three invoices.
Native and OpenAI-compatible providers sit behind stable Osyra model IDs. The console shows only providers enabled by your signed runtime registry.
Address a configured logical model while routing policy selects among the providers your runtime enables. Swap the target without an application deploy.
Enabled routing policies define primary, fallback, and forbidden providers per workspace, with circuit-breaker state carried by the runtime.
// Route one logical model through the enabled provider registry.
const response = await client.chat.completions.create({
model: "<configured-model-id>",
messages: [{ role: "user", content: "..." }],
});
// Osyra applies the workspace's enabled routing policy.
// Performance, cost, and jurisdiction are inputs only when configured
// and available in that runtime.Model spend compounds faster than any other line item on an engineering org’s budget. By the time finance sees the invoice, three product teams have already shipped something expensive.
Usage events retain prompt and completion token counts with provider, model, and workspace context. Signed rate-card enforcement is an activation gate, not a universal request-time guarantee today.
Configure budgets and observe threshold state by workspace. Request-time hard stops are still being wired through Billing, Broker, and Edge; do not rely on a budget as a guaranteed 429 stop yet.
Usage and cost events retain workspace, model, provider, and policy context so finance and engineering can explain where spend came from.
# Query spend across workspaces for the current billing period.
osyra spend \
--workspace eng-prod \
--group-by model \
--since 2026-04-01
Responsible use is a policy problem, not a model problem. Redaction, topic blocks, PII scrubbing, and per-workspace allow-lists all belong at the edge — not scattered across ten application repos.
Review policy in git, compile it to WASM, and distribute signed runtime bundles with fail-closed verification.
Detect and mask sensitive identifiers on the served path before a request reaches the selected provider.
Deterministic first-party detection scores prompt-injection, system-prompt-leak, and jailbreak patterns against versioned guardrail thresholds.
package osyra.gateway
default allow := false
has_required_permissions if {
startswith(input.path, "/v1/chat/")
has_ai_permission
}
has_ai_permission if {
has_any_permission([
"osyra:llm:model:invoke",
"osyra:llm:model:*",
"osyra:*",
])
}A model call without evidence leaves security, legal, and engineering reconstructing decisions from provider logs. Osyra records the model, policy, usage, and provenance behind each governed call.
Governed events preserve actor, workspace, policy, route, usage, and outcome context. Signed-receipt delivery is not yet universal across public inference surfaces.
The signed formats and verifiers exist; customer-facing export coverage is still being completed before Osyra claims portable evidence for every governed call.
Keep record location, data residency, and retention responsibility visible instead of hiding them behind a provider-specific log.
CURRENT EVIDENCE PATH
actor + workspace recorded on governed events
policy + route context preserved when evaluated
usage + outcome attributed to the request
ACTIVATION IN PROGRESS
signed receipt delivery across every public inference surface
portable signed evidence archives for customer exportStart on the Free tier. No credit card, no sales call — a generous free allowance to prove Osyra on your real traffic.
Start building free →