Local service APIs
Authenticated integration surfaces for delegation and desktop operations.

Two retained local services
A2A provides task delegation to the high-level agent. The desktop service provides supported actions and application bridges. The former /api/chat, /api/realtime, /api/vision and /api/memory WebUI endpoints are not the current API.
Task delegation
A2A exposes public GET /health and GET /.well-known/agent-card.json. POST / accepts authenticated JSON-RPC task requests with X-JARVIS-API-Key. The combined runtime generates an ephemeral key when none is configured; standalone mode needs an explicit shared key.
Use the A2A SDK and the source's HighLevelDelegator for message serialization, streaming task results and cancellation. Bind local services to loopback for the documented local workflow.
Desktop operations
DesktopClient discovers or starts the local desktop service. All its routes require a bearer token; browser-origin requests are rejected. GET /tools returns current schemas, POST /call executes a grouped function, and GET /activity provides structured local state.
Application adapters use the native bridge. Treat credentials and connection metadata as private local state; a marketing page should not call this service.
uv run jarvis desktop tools
uv run jarvis desktop activityReconcile results before retrying
Calls carry request identities. An accepted result can mean a background job, while unconfirmed means the outcome needs inspection. Use the returned job, command or action identity and events to reconcile before submitting another mutation.