Docs

SDK/API contract

Agent manifest.

The manifest is the first stable document Orchet reads for SDK/API agents. It identifies the agent, points to OpenAPI and health endpoints, and declares how users connect.

Where it lives.

Serve the manifest at /.well-known/agent.json from the same HTTPS deployment that serves the agent's tools.

TEXT

https://weather-demo.example.com/.well-known/agent.json
https://weather-demo.example.com/openapi.json
https://weather-demo.example.com/health
https://weather-demo.example.com/tools/get_forecast

Required fields.

Keep the first version small and explicit. One well-described read-only tool is better than ten vague actions.

FieldPurpose
agent_idStable lowercase id, 3-32 chars, globally unique.
versionSemver for behavior and schema changes.
display_name and one_linerUser and reviewer-facing catalog copy.
intentsNatural labels the planner uses for routing.
openapi_urlCanonical tool schema document.
health_urlPublic health probe used by trust checks.
connectnone, oauth2, or orchet_user_jwt.
capabilitiesSDK version, compound booking support, and cancellation support.

Minimal manifest.

This is the shape generated by the CLI template. OAuth client secrets are never embedded in the manifest; only environment variable names are declared.

TS

export const manifest = defineManifest({
  agent_id: "weather-demo",
  version: "0.1.0",
  domain: BASE_URL,
  display_name: "Weather Demo",
  one_liner: "Current conditions and forecasts for any city.",
  intents: ["weather", "forecast", "rain"],
  example_utterances: ["Will it rain in Tokyo tomorrow?"],
  openapi_url: `${BASE_URL}/openapi.json`,
  health_url: `${BASE_URL}/health`,
  ui: { components: [] },
  sla: {
    p50_latency_ms: 800,
    p95_latency_ms: 2500,
    availability_target: 0.99,
  },
  pii_scope: ["name", "email"],
  supported_regions: ["US"],
  connect: { model: "none" },
  capabilities: {
    sdk_version: "0.6.0",
    supports_compound_bookings: false,
    implements_cancellation: false,
  },
});