How Praxa Works
Every unit of work in Praxa is a mission. When you create a mission, you supply two things:- A goal specification (
goalSpec) — a structured description of the task you want the agent to accomplish. - A resource budget (
resourceBudget) — explicit limits on how many steps, tool calls, elapsed milliseconds, and parallel sub-tasks the mission may consume.
runId and a stream of structured events, not raw provider output.
An accepted mission request is not proof that an external effect has occurred. The gateway records your intent durably and enforces policy independently.
Key Principles
Credential-free design. Your application never holds or supplies provider API keys. The gateway manages provider credentials server-side. The SDK, CLI, and MCP contracts contain no provider adapters and no embedded secrets. OAuth governance. Every Praxa API operation requires a specific OAuth scope. Tokens are short-lived, delegated, and scoped to the minimum set of operations your integration needs. A scope grants access to gateway policy evaluation — it does not itself authorize a provider effect. Idempotency. Every mutating operation requires a stable idempotency key. If you retry acreateMission call with the same key, the gateway returns the existing mission rather than creating a duplicate. Safe read operations are also retried automatically by the SDK.
Resource budgets. Missions cannot exceed the resourceBudget you declare at creation time. Setting explicit limits on steps, tool calls, elapsed time, and parallelism protects both your application and downstream provider resources.
What You Need
To integrate with Praxa, you need three things:- A gateway HTTPS URL — the origin of your Praxa Integration Gateway deployment (e.g.,
https://api.your-praxa-gateway.example). HTTP origins are rejected by the SDK. - A short-lived OAuth access token — issued by your Praxa deployment for a specific tenant, principal, and scope set. Tokens are obtained through your gateway’s token issuance flow; see the Authentication guide for details.
- Node.js 20 or newer — required by
@praxa/sdkand@praxa/cli.
Quickstart
Get your gateway connection configured and run your first mission in under 5 minutes.
Mission Concepts
A deeper look at goal specifications, resource budgets, idempotency, and the event stream lifecycle.