{ "openapi": "3.1.0", "info": { "title": "opencode HttpApi", "version": "0.0.1", "description": "Experimental HttpApi surface for selected instance routes." }, "paths": { "/api/health": { "get": { "tags": ["health"], "operationId": "v2.health.get", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "healthy": { "type": "boolean", "enum": [true] }, "version": { "type": "string" }, "pid": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] } }, "required": ["healthy", "version", "pid"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Check whether the API server is ready to accept requests.", "summary": "Check server health" } }, "/api/server": { "get": { "tags": ["server"], "operationId": "v2.server.get", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "urls": { "type": "array", "items": { "type": "string" } } }, "required": ["urls"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Return the URLs that can be used to connect to this server.", "summary": "Get server information" } }, "/api/location": { "get": { "tags": ["location"], "operationId": "v2.location.get", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Location.Info", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Location.Info" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Resolve the requested location or the server default location.", "summary": "Get location" } }, "/api/agent": { "get": { "tags": ["agent"], "operationId": "v2.agent.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Agent.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve currently registered agents.", "summary": "List agents" } }, "/api/plugin": { "get": { "tags": ["plugin"], "operationId": "v2.plugin.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Plugin.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve currently loaded plugins.", "summary": "List plugins" } }, "/api/session": { "get": { "tags": ["session"], "operationId": "v2.session.list", "parameters": [ { "name": "workspace", "in": "query", "schema": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^wrk" } ] }, { "type": "null" } ] }, "required": false }, { "name": "limit", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Maximum number of sessions to return. Defaults to the newest 50 sessions." }, "required": false }, { "name": "order", "in": "query", "schema": { "anyOf": [ { "type": "string", "enum": ["asc", "desc"] }, { "type": "null" } ], "description": "Session order for the first page. Use desc for newest first or asc for oldest first." }, "required": false }, { "name": "search", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false }, { "name": "parentID", "in": "query", "schema": { "anyOf": [ { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, { "type": "string", "enum": ["null"] } ], "description": "Filter by parent session. Use null to return only root sessions." }, { "type": "null" } ] }, "required": false }, { "name": "directory", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false }, { "name": "project", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false }, { "name": "subpath", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false }, { "name": "cursor", "in": "query", "schema": { "anyOf": [ { "type": "string", "description": "Opaque pagination cursor returned as cursor.previous or cursor.next in the previous response." }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "SessionsResponse", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionsResponse" } } } }, "400": { "description": "InvalidCursorError | InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidCursorError" }, { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve sessions in the requested order. Items keep that order across pages; use cursor.next or cursor.previous to move through the ordered list.", "summary": "List sessions" }, "post": { "tags": ["session"], "operationId": "v2.session.create", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Session.Info" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Create a session at the requested location.", "summary": "Create session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, { "type": "null" } ] }, "agent": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "model": { "anyOf": [ { "$ref": "#/components/schemas/Model.Ref" }, { "type": "null" } ] }, "location": { "anyOf": [ { "$ref": "#/components/schemas/Location.Ref" }, { "type": "null" } ] } }, "additionalProperties": false } } }, "required": true } } }, "/api/session/active": { "get": { "tags": ["session"], "operationId": "v2.session.active", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "object", "patternProperties": { "^ses": { "$ref": "#/components/schemas/SessionActive" } } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve foreground Session drains currently owned by this OpenCode process. Sessions absent from the result are inactive.", "summary": "List active sessions" } }, "/api/session/{sessionID}": { "get": { "tags": ["session"], "operationId": "v2.session.get", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Session.Info" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve a session by ID.", "summary": "Get session" }, "delete": { "tags": ["session"], "operationId": "v2.session.remove", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Delete a session and its child sessions.", "summary": "Delete session" } }, "/api/session/{sessionID}/fork": { "post": { "tags": ["session"], "operationId": "v2.session.fork", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Session.Info" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | MessageNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MessageNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Create a child session by copying projected history from the parent. When messageID is supplied, copy messages before that boundary.", "summary": "Fork session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "messageID": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, { "type": "null" } ] } }, "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/agent": { "post": { "tags": ["session"], "operationId": "v2.session.switchAgent", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Switch the agent used by subsequent provider turns.", "summary": "Switch session agent", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "agent": { "type": "string" } }, "required": ["agent"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/model": { "post": { "tags": ["session"], "operationId": "v2.session.switchModel", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Switch the model used by subsequent provider turns.", "summary": "Switch session model", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "model": { "$ref": "#/components/schemas/Model.Ref" } }, "required": ["model"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/rename": { "post": { "tags": ["session"], "operationId": "v2.session.rename", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Update the session title.", "summary": "Rename session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "title": { "type": "string" } }, "required": ["title"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/move": { "post": { "tags": ["session"], "operationId": "v2.session.move", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Move a session to another project directory, optionally transferring local changes.", "summary": "Move session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "destination": { "type": "object", "properties": { "directory": { "type": "string" } }, "required": ["directory"], "additionalProperties": false }, "moveChanges": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["destination"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/prompt": { "post": { "tags": ["session"], "operationId": "v2.session.prompt", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/SessionInput.Admitted" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "ConflictError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConflictError" } } } } }, "description": "Durably admit one session input and schedule agent-loop execution unless resume is false.", "summary": "Send message", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, { "type": "null" } ] }, "prompt": { "$ref": "#/components/schemas/PromptInput" }, "delivery": { "anyOf": [ { "type": "string", "enum": ["steer", "queue"] }, { "type": "null" } ] }, "resume": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["prompt"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/command": { "post": { "tags": ["session"], "operationId": "v2.session.command", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/SessionInput.Admitted" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | CommandNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/CommandNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "ConflictError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConflictError" } } } }, "500": { "description": "CommandEvaluationError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CommandEvaluationError" } } } } }, "description": "Resolve a slash command into prompt input, admit it durably, and schedule execution unless resume is false.", "summary": "Run command", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, { "type": "null" } ] }, "command": { "type": "string" }, "arguments": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "agent": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "model": { "anyOf": [ { "$ref": "#/components/schemas/Model.Ref" }, { "type": "null" } ] }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/PromptInput.FileAttachment" } }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/Prompt.AgentAttachment" } }, "delivery": { "anyOf": [ { "type": "string", "enum": ["steer", "queue"] }, { "type": "null" } ] }, "resume": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["command"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/skill": { "post": { "tags": ["session"], "operationId": "v2.session.skill", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | SkillNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SkillNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Activate a skill for a session by appending a skill message and resuming execution.", "summary": "Activate skill", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, { "type": "null" } ] }, "skill": { "type": "string" }, "resume": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["skill"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/synthetic": { "post": { "tags": ["session"], "operationId": "v2.session.synthetic", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Append a synthetic message to a session and resume execution.", "summary": "Add synthetic message", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "text": { "type": "string" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "metadata": { "type": "object" }, "resume": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["text"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/shell": { "post": { "tags": ["session"], "operationId": "v2.session.shell", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Execute one shell command in the session's working directory. Emits a shell.started event before execution and a shell.ended event with the merged output after.", "summary": "Run shell command", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, { "type": "null" } ] }, "command": { "type": "string" } }, "required": ["command"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/compact": { "post": { "tags": ["session"], "operationId": "v2.session.compact", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/SessionInput.Compaction" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "ConflictError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConflictError" } } } } }, "description": "Queue a durable session compaction request.", "summary": "Compact session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, { "type": "null" } ] } }, "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/wait": { "post": { "tags": ["session"], "operationId": "v2.session.wait", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "503": { "description": "ServiceUnavailableError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceUnavailableError" } } } } }, "description": "Wait for a session agent loop to become idle.", "summary": "Wait for session" } }, "/api/session/{sessionID}/revert/stage": { "post": { "tags": ["session"], "operationId": "v2.session.revert.stage", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Session.Revert" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "MessageNotFoundError | SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MessageNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "SessionBusyError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionBusyError" } } } }, "500": { "description": "UnknownError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnknownError" } } } } }, "description": "Stage or move a reversible session boundary and optionally apply its file changes.", "summary": "Stage session revert", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "messageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "files": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["messageID"], "additionalProperties": false } } }, "required": true } } }, "/api/session/{sessionID}/revert/clear": { "post": { "tags": ["session"], "operationId": "v2.session.revert.clear", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "SessionBusyError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionBusyError" } } } }, "500": { "description": "UnknownError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnknownError" } } } } }, "summary": "Clear staged revert" } }, "/api/session/{sessionID}/revert/commit": { "post": { "tags": ["session"], "operationId": "v2.session.revert.commit", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "SessionBusyError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionBusyError" } } } } }, "summary": "Commit staged revert" } }, "/api/session/{sessionID}/context": { "get": { "tags": ["session"], "operationId": "v2.session.context", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Session.Message.Info" } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "500": { "description": "UnknownError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnknownError" } } } } }, "description": "Retrieve the active context messages for a session (all messages after the last compaction).", "summary": "Get session context" } }, "/api/session/{sessionID}/instructions/entries": { "get": { "tags": ["session"], "operationId": "v2.session.instructions.entry.list", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/InstructionEntry.Info" } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "List API-managed instruction entries attached to the session.", "summary": "List instruction entries" } }, "/api/session/{sessionID}/instructions/entries/{key}": { "put": { "tags": ["session"], "operationId": "v2.session.instructions.entry.put", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "key", "in": "path", "schema": { "$ref": "#/components/schemas/InstructionEntry.Key" }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Attach or replace one durable instruction entry. Changes announce as updates at the next step boundary.", "summary": "Put instruction entry", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "value": {} }, "required": ["value"], "additionalProperties": false } } }, "required": true } }, "delete": { "tags": ["session"], "operationId": "v2.session.instructions.entry.remove", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "key", "in": "path", "schema": { "$ref": "#/components/schemas/InstructionEntry.Key" }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Remove one instruction entry; the removal is announced to the model at the next step boundary.", "summary": "Remove instruction entry" } }, "/api/experimental/session/{sessionID}/log": { "get": { "tags": ["session"], "operationId": "v2.session.log", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "after", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false }, { "name": "follow", "in": "query", "schema": { "anyOf": [ { "type": "string", "enum": ["true", "false"] }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "Success", "content": { "text/event-stream": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "event": { "type": "string" }, "data": { "$ref": "#/components/schemas/SessionLogItemStream" } }, "required": ["id", "event", "data"], "additionalProperties": false }, "x-effect-stream": { "encoding": "sse", "causeSchema": { "type": "array", "items": { "anyOf": [ { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["Fail"] }, "error": { "not": {} } }, "required": ["_tag", "error"], "additionalProperties": false }, { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["Die"] }, "defect": {} }, "required": ["_tag", "defect"], "additionalProperties": false }, { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["Interrupt"] }, "fiberId": { "anyOf": [ { "type": "number" }, { "type": "null" } ] } }, "required": ["_tag", "fiberId"], "additionalProperties": false } ] } }, "errorSchema": { "not": {} }, "failureEvent": "effect/httpapi/stream/failure" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Experimental durable session event log. Reads events after an exclusive aggregate sequence and continues with live events when follow=true.", "summary": "Read the session log" } }, "/api/session/{sessionID}/interrupt": { "post": { "tags": ["session"], "operationId": "v2.session.interrupt", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Interrupt active execution owned by this OpenCode process. Idle interruption is a no-op.", "summary": "Interrupt session execution" } }, "/api/session/{sessionID}/background": { "post": { "tags": ["session"], "operationId": "v2.session.background", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Move active foreground backgroundable tools for this session into background observation. Idle requests are a no-op.", "summary": "Background blocking session tools" } }, "/api/session/{sessionID}/message/{messageID}": { "get": { "tags": ["session"], "operationId": "v2.session.message", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "messageID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Session.Message.Info" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | MessageNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MessageNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve one projected message owned by the Session.", "summary": "Get session message" } }, "/api/session/{sessionID}/message": { "get": { "tags": ["session"], "operationId": "v2.message.list", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "limit", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Maximum number of messages to return. When omitted, the endpoint returns its default page size." }, "required": false }, { "name": "order", "in": "query", "schema": { "anyOf": [ { "type": "string", "enum": ["asc", "desc"] }, { "type": "null" } ], "description": "Message order for the first page. Use desc for newest first or asc for oldest first." }, "required": false }, { "name": "cursor", "in": "query", "schema": { "anyOf": [ { "type": "string", "description": "Opaque pagination cursor returned as cursor.previous or cursor.next in the previous response. Do not combine with order." }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "SessionMessagesResponse", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionMessagesResponse" } } } }, "400": { "description": "InvalidCursorError | InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidCursorError" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "500": { "description": "UnknownError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnknownError" } } } } }, "description": "Retrieve projected messages for a session. Items keep the requested order across pages; use cursor.next or cursor.previous to move through the ordered timeline.", "summary": "Get session messages" } }, "/api/model": { "get": { "tags": ["model"], "operationId": "v2.model.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Model.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "503": { "description": "ServiceUnavailableError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceUnavailableError" } } } } }, "description": "Retrieve available models ordered by release date.", "summary": "List models" } }, "/api/model/default": { "get": { "tags": ["model"], "operationId": "v2.model.default", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "anyOf": [ { "$ref": "#/components/schemas/Model.Info" }, { "type": "null" } ] } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "503": { "description": "ServiceUnavailableError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceUnavailableError" } } } } }, "description": "Retrieve the model used when a session has no explicit model selection.", "summary": "Get default model" } }, "/api/generate": { "post": { "tags": ["generate"], "operationId": "v2.generate.text", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "GenerateTextResponse", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GenerateTextResponse" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "503": { "description": "ServiceUnavailableError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceUnavailableError" } } } } }, "description": "Run one stateless model generation at the requested location and return the assistant text. Uses the location's default model when none is specified.", "summary": "Generate text", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "prompt": { "type": "string" }, "model": { "anyOf": [ { "$ref": "#/components/schemas/Model.Ref" }, { "type": "null" } ] } }, "required": ["prompt"], "additionalProperties": false } } }, "required": true } } }, "/api/provider": { "get": { "tags": ["provider"], "operationId": "v2.provider.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/ProviderV2.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "503": { "description": "ServiceUnavailableError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceUnavailableError" } } } } }, "description": "Retrieve active AI providers so clients can show provider availability and configuration.", "summary": "List providers" } }, "/api/provider/{providerID}": { "get": { "tags": ["provider"], "operationId": "v2.provider.get", "parameters": [ { "name": "providerID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/ProviderV2.Info" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "ProviderNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProviderNotFoundError" } } } }, "503": { "description": "ServiceUnavailableError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ServiceUnavailableError" } } } } }, "description": "Retrieve a single AI provider so clients can inspect its availability and endpoint settings.", "summary": "Get provider" } }, "/api/integration": { "get": { "tags": ["integration"], "operationId": "v2.integration.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Integration.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve available integrations and their authentication methods.", "summary": "List integrations" } }, "/api/integration/{integrationID}": { "get": { "tags": ["integration"], "operationId": "v2.integration.get", "parameters": [ { "name": "integrationID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "anyOf": [ { "$ref": "#/components/schemas/Integration.Info" }, { "type": "null" } ] } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve one integration and its authentication methods.", "summary": "Get integration" } }, "/api/integration/{integrationID}/connect/key": { "post": { "tags": ["integration"], "operationId": "v2.integration.connect.key", "parameters": [ { "name": "integrationID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Run a key authentication method and store the resulting credential.", "summary": "Connect with key", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "key": { "type": "string" }, "label": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["key"], "additionalProperties": false } } }, "required": true } } }, "/api/integration/{integrationID}/connect/oauth": { "post": { "tags": ["integration"], "operationId": "v2.integration.connect.oauth", "parameters": [ { "name": "integrationID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Integration.Attempt" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Start an OAuth attempt and return the authorization details.", "summary": "Begin OAuth connection", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "methodID": { "type": "string" }, "inputs": { "type": "object", "additionalProperties": { "type": "string" } }, "label": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["methodID", "inputs"], "additionalProperties": false } } }, "required": true } } }, "/api/integration/attempt/{attemptID}": { "get": { "tags": ["integration"], "operationId": "v2.integration.attempt.status", "parameters": [ { "name": "attemptID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Integration.AttemptStatus" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Poll the current status of an OAuth attempt.", "summary": "Get OAuth attempt status" }, "delete": { "tags": ["integration"], "operationId": "v2.integration.attempt.cancel", "parameters": [ { "name": "attemptID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Cancel an OAuth attempt and release its resources.", "summary": "Cancel OAuth connection" } }, "/api/integration/attempt/{attemptID}/complete": { "post": { "tags": ["integration"], "operationId": "v2.integration.attempt.complete", "parameters": [ { "name": "attemptID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Complete a code-based OAuth attempt and store the resulting credential.", "summary": "Complete OAuth connection", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "code": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false } } }, "required": true } } }, "/api/mcp": { "get": { "tags": ["mcp"], "operationId": "v2.mcp.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Mcp.Server" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve configured MCP servers and their connection status.", "summary": "List MCP servers" } }, "/api/mcp/resource": { "get": { "tags": ["mcp"], "operationId": "v2.mcp.resource.catalog", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Mcp.ResourceCatalog" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve resources and resource templates from connected MCP servers.", "summary": "List MCP resources" } }, "/api/credential/{credentialID}": { "patch": { "tags": ["credential"], "operationId": "v2.credential.update", "parameters": [ { "name": "credentialID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Update a stored credential label.", "summary": "Update credential", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "label": { "type": "string" } }, "required": ["label"], "additionalProperties": false } } }, "required": true } }, "delete": { "tags": ["credential"], "operationId": "v2.credential.remove", "parameters": [ { "name": "credentialID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Remove a stored integration credential.", "summary": "Remove credential" } }, "/api/project": { "get": { "tags": ["project"], "operationId": "v2.project.list", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Project" } } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List known projects.", "summary": "List projects" } }, "/api/project/current": { "get": { "tags": ["project"], "operationId": "v2.project.current", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Project.Current", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project.Current" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Resolve the project for the requested location.", "summary": "Get current project" } }, "/api/project/{projectID}/directories": { "get": { "tags": ["project"], "operationId": "v2.project.directories", "parameters": [ { "name": "projectID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Project.Directories", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project.Directories" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List known local absolute directories for a project.", "summary": "List project directories" } }, "/api/form/request": { "get": { "tags": ["form"], "operationId": "v2.form.request.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Form.FormInfo" }, { "$ref": "#/components/schemas/Form.UrlInfo" } ] } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve pending forms for a location.", "summary": "List pending form requests" } }, "/api/session/{sessionID}/form": { "get": { "tags": ["form"], "operationId": "v2.session.form.list", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string" }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Form.FormInfo" }, { "$ref": "#/components/schemas/Form.UrlInfo" } ] } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve pending forms for a session.", "summary": "List session forms" }, "post": { "tags": ["form"], "operationId": "v2.session.form.create", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string" }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "anyOf": [ { "$ref": "#/components/schemas/Form.FormInfo" }, { "$ref": "#/components/schemas/Form.UrlInfo" } ] } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/InvalidRequestError1" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "ConflictError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConflictError" } } } } }, "description": "Create a form for a session.", "summary": "Create session form", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Form.CreatePayload" } } }, "required": true } } }, "/api/session/{sessionID}/form/{formID}": { "get": { "tags": ["form"], "operationId": "v2.session.form.get", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "formID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "anyOf": [ { "$ref": "#/components/schemas/Form.FormInfo" }, { "$ref": "#/components/schemas/Form.UrlInfo" } ] } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | FormNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/FormNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve a form for a session.", "summary": "Get session form" } }, "/api/session/{sessionID}/form/{formID}/state": { "get": { "tags": ["form"], "operationId": "v2.session.form.state", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "formID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Form.State" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | FormNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/FormNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve the current state for a form.", "summary": "Get form state" } }, "/api/session/{sessionID}/form/{formID}/reply": { "post": { "tags": ["form"], "operationId": "v2.session.form.reply", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "formID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "FormInvalidAnswerError | InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/FormInvalidAnswerError" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | FormNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/FormNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "FormAlreadySettledError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FormAlreadySettledError" } } } } }, "description": "Submit an answer to a pending form.", "summary": "Reply to form", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Form.Reply" } } }, "required": true } } }, "/api/session/{sessionID}/form/{formID}/cancel": { "post": { "tags": ["form"], "operationId": "v2.session.form.cancel", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "formID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | FormNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/FormNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } }, "409": { "description": "FormAlreadySettledError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FormAlreadySettledError" } } } } }, "description": "Cancel a pending form.", "summary": "Cancel form" } }, "/api/permission/request": { "get": { "tags": ["permission"], "operationId": "v2.permission.request.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionV2.Request" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve pending permission requests for a location.", "summary": "List pending permission requests" } }, "/api/permission/saved": { "get": { "tags": ["permission"], "operationId": "v2.permission.saved.list", "parameters": [ { "name": "projectID", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionSaved.Info" } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve saved permissions, optionally filtered by project.", "summary": "List saved permissions" } }, "/api/permission/saved/{id}": { "delete": { "tags": ["permission"], "operationId": "v2.permission.saved.remove", "parameters": [ { "name": "id", "in": "path", "schema": { "type": "string" }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Remove a saved permission by ID.", "summary": "Remove saved permission" } }, "/api/session/{sessionID}/permission": { "post": { "tags": ["permission"], "operationId": "v2.session.permission.create", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "effect": { "$ref": "#/components/schemas/PermissionV2.Effect" } }, "required": ["id", "effect"], "additionalProperties": false } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Evaluate and, when approval is required, create a permission request for a session.", "summary": "Create permission request", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^per" } ] }, { "type": "null" } ] }, "action": { "type": "string" }, "resources": { "type": "array", "items": { "type": "string" } }, "save": { "type": "array", "items": { "type": "string" } }, "metadata": { "type": "object" }, "source": { "$ref": "#/components/schemas/PermissionV2.Source" }, "agent": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["action", "resources"], "additionalProperties": false } } }, "required": true } }, "get": { "tags": ["permission"], "operationId": "v2.session.permission.list", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionV2.Request" } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve pending permission requests owned by a session.", "summary": "List session permission requests" } }, "/api/session/{sessionID}/permission/{requestID}": { "get": { "tags": ["permission"], "operationId": "v2.session.permission.get", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "requestID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/PermissionV2.Request" } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | PermissionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/PermissionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve a pending permission request owned by a session.", "summary": "Get permission request" } }, "/api/session/{sessionID}/permission/{requestID}/reply": { "post": { "tags": ["permission"], "operationId": "v2.session.permission.reply", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "requestID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | PermissionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/PermissionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Respond to a pending permission request owned by a session.", "summary": "Reply to pending permission request", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "reply": { "$ref": "#/components/schemas/PermissionV2.Reply" }, "message": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["reply"], "additionalProperties": false } } }, "required": true } } }, "/api/fs/read/*": { "get": { "tags": ["filesystem"], "operationId": "v2.fs.read", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/octet-stream": { "schema": { "type": "string", "format": "binary" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Serve one file relative to the requested location.", "summary": "Read file" } }, "/api/fs/list": { "get": { "tags": ["filesystem"], "operationId": "v2.fs.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true }, { "name": "path", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/FileSystem.Entry" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List direct children of one directory relative to the requested location.", "summary": "List directory" } }, "/api/fs/find": { "get": { "tags": ["filesystem"], "operationId": "v2.fs.find", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true }, { "name": "query", "in": "query", "schema": { "type": "string" }, "required": true }, { "name": "type", "in": "query", "schema": { "type": "string", "enum": ["file", "directory"] }, "required": false }, { "name": "limit", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/FileSystem.Entry" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Find recursively ranked filesystem entries relative to the requested location.", "summary": "Find files" } }, "/api/command": { "get": { "tags": ["command"], "operationId": "v2.command.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Command.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve currently registered commands.", "summary": "List commands" } }, "/api/skill": { "get": { "tags": ["skill"], "operationId": "v2.skill.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Skill.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve currently registered skills.", "summary": "List skills" } }, "/api/event": { "get": { "tags": ["event"], "operationId": "v2.event.subscribe", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "text/event-stream": { "schema": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "event": { "type": "string" }, "data": { "$ref": "#/components/schemas/V2EventStream" } }, "required": ["id", "event", "data"], "additionalProperties": false }, "x-effect-stream": { "encoding": "sse", "causeSchema": { "type": "array", "items": { "anyOf": [ { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["Fail"] }, "error": { "not": {} } }, "required": ["_tag", "error"], "additionalProperties": false }, { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["Die"] }, "defect": {} }, "required": ["_tag", "defect"], "additionalProperties": false }, { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["Interrupt"] }, "fiberId": { "anyOf": [ { "type": "number" }, { "type": "null" } ] } }, "required": ["_tag", "fiberId"], "additionalProperties": false } ] } }, "errorSchema": { "not": {} }, "failureEvent": "effect/httpapi/stream/failure" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Subscribe to native event payloads for the server. Volatile by contract: a slow consumer overflows and fails the stream, and events during disconnection are missed.", "summary": "Subscribe to events" } }, "/api/pty": { "get": { "tags": ["pty"], "operationId": "v2.pty.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Pty" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List PTY sessions for a location, including exited sessions retained until removal.", "summary": "List PTY sessions" }, "post": { "tags": ["pty"], "operationId": "v2.pty.create", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Pty" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Create a pseudo-terminal session for a location.", "summary": "Create PTY session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "command": { "type": "string" }, "args": { "type": "array", "items": { "type": "string" } }, "cwd": { "type": "string" }, "title": { "type": "string" }, "env": { "type": "object", "additionalProperties": { "type": "string" } } }, "additionalProperties": false } } }, "required": true } } }, "/api/pty/{ptyID}": { "get": { "tags": ["pty"], "operationId": "v2.pty.get", "parameters": [ { "name": "ptyID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Pty" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "PtyNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PtyNotFoundError" } } } } }, "description": "Get one PTY session, including its exit code once exited.", "summary": "Get PTY session" }, "put": { "tags": ["pty"], "operationId": "v2.pty.update", "parameters": [ { "name": "ptyID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Pty" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "PtyNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PtyNotFoundError" } } } } }, "description": "Update the title or viewport size of one PTY session.", "summary": "Update PTY session", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "title": { "type": "string" }, "size": { "type": "object", "properties": { "rows": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] }, "cols": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] } }, "required": ["rows", "cols"], "additionalProperties": false } }, "additionalProperties": false } } }, "required": true } }, "delete": { "tags": ["pty"], "operationId": "v2.pty.remove", "parameters": [ { "name": "ptyID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "PtyNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PtyNotFoundError" } } } } }, "description": "Terminate and remove one PTY session.", "summary": "Remove PTY session" } }, "/api/pty/{ptyID}/connect-token": { "post": { "tags": ["pty"], "operationId": "v2.pty.connect.token", "parameters": [ { "name": "ptyID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/PtyTicket.ConnectToken" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "403": { "description": "ForbiddenError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenError" } } } }, "404": { "description": "PtyNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PtyNotFoundError" } } } } }, "description": "Create a short-lived single-use ticket for opening a PTY WebSocket connection.", "summary": "Create PTY WebSocket token" } }, "/api/pty/{ptyID}/connect": { "get": { "tags": ["pty"], "operationId": "v2.pty.connect", "parameters": [ { "name": "ptyID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "required": true }, { "in": "query", "name": "location[directory]", "schema": { "type": "string" } }, { "in": "query", "name": "location[workspace]", "schema": { "type": "string" } }, { "in": "query", "name": "cursor", "schema": { "type": "string" } }, { "in": "query", "name": "ticket", "schema": { "type": "string" } } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "boolean" } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "403": { "description": "ForbiddenError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForbiddenError" } } } }, "404": { "description": "PtyNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PtyNotFoundError" } } } } }, "description": "Establish a WebSocket connection streaming PTY output and accepting terminal input.", "summary": "Connect to PTY session", "x-websocket": true } }, "/api/shell": { "get": { "tags": ["shell"], "operationId": "v2.shell.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Shell1" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List currently running shell commands for a location. Exited commands are not included.", "summary": "List running shell commands" }, "post": { "tags": ["shell"], "operationId": "v2.shell.create", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Shell1" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Spawn one non-interactive shell command for a location. Combined stdout/stderr is captured to a file pageable via output.", "summary": "Run shell command", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "command": { "type": "string" }, "cwd": { "type": "string" }, "timeout": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "metadata": { "type": "object" } }, "required": ["command", "timeout"], "additionalProperties": false } } }, "required": true } } }, "/api/shell/{id}": { "get": { "tags": ["shell"], "operationId": "v2.shell.get", "parameters": [ { "name": "id", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Shell1" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "ShellNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ShellNotFoundError" } } } } }, "description": "Get one shell command, including its status and exit code once exited.", "summary": "Get shell command" }, "delete": { "tags": ["shell"], "operationId": "v2.shell.remove", "parameters": [ { "name": "id", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "ShellNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ShellNotFoundError" } } } } }, "description": "Terminate and remove one shell command and its retained output.", "summary": "Remove shell command" } }, "/api/shell/{id}/timeout": { "patch": { "tags": ["shell"], "operationId": "v2.shell.timeout", "parameters": [ { "name": "id", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "$ref": "#/components/schemas/Shell1" } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "ShellNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ShellNotFoundError" } } } } }, "description": "Replace a running shell command's timeout from now, or clear it with zero.", "summary": "Update shell timeout", "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "timeout": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["timeout"], "additionalProperties": false } } }, "required": true } } }, "/api/shell/{id}/output": { "get": { "tags": ["shell"], "operationId": "v2.shell.output", "parameters": [ { "name": "id", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true }, { "name": "cursor", "in": "query", "schema": { "type": "string", "allOf": [ { "pattern": "^[+-]?\\d*\\.?\\d+(?:[Ee][+-]?\\d+)?$" } ] }, "required": false }, { "name": "limit", "in": "query", "schema": { "type": "string", "allOf": [ { "pattern": "^[+-]?\\d*\\.?\\d+(?:[Ee][+-]?\\d+)?$" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "object", "properties": { "output": { "type": "string" }, "cursor": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "size": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "truncated": { "type": "boolean" } }, "required": ["output", "cursor", "size", "truncated"], "additionalProperties": false } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "ShellNotFoundError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ShellNotFoundError" } } } } }, "description": "Page through captured combined output by absolute byte cursor.", "summary": "Read shell output" } }, "/api/question/request": { "get": { "tags": ["question"], "operationId": "v2.question.request.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Request" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Retrieve pending question requests for a location.", "summary": "List pending question requests" } }, "/api/session/{sessionID}/question": { "get": { "tags": ["question"], "operationId": "v2.session.question.list", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Request" } } }, "required": ["data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Retrieve pending question requests owned by a session.", "summary": "List session question requests" } }, "/api/session/{sessionID}/question/{requestID}/reply": { "post": { "tags": ["question"], "operationId": "v2.session.question.reply", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "requestID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | QuestionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/QuestionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Answer a pending question request owned by a session.", "summary": "Reply to pending question request", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QuestionV2.Reply" } } }, "required": true } } }, "/api/session/{sessionID}/question/{requestID}/reject": { "post": { "tags": ["question"], "operationId": "v2.session.question.reject", "parameters": [ { "name": "sessionID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "required": true }, { "name": "requestID", "in": "path", "schema": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "required": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } }, "404": { "description": "SessionNotFoundError | QuestionNotFoundError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/QuestionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" }, { "$ref": "#/components/schemas/SessionNotFoundError" } ] } } } } }, "description": "Reject a pending question request owned by a session.", "summary": "Reject pending question request" } }, "/api/reference": { "get": { "tags": ["reference"], "operationId": "v2.reference.list", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Reference.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List references available in the requested location.", "summary": "List references" } }, "/experimental/project/{projectID}/copy": { "post": { "tags": ["projectCopy"], "operationId": "v2.projectCopy.create", "parameters": [ { "name": "projectID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "ProjectCopy.Copy", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectCopy.Copy" } } } }, "400": { "description": "ProjectCopyError | InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/ProjectCopyError" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "strategy": { "type": "string" }, "directory": { "type": "string" }, "name": { "type": "string" } }, "required": ["strategy", "directory"], "additionalProperties": false } } }, "required": true } }, "delete": { "tags": ["projectCopy"], "operationId": "v2.projectCopy.remove", "parameters": [ { "name": "projectID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "ProjectCopyError | InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/ProjectCopyError" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "directory": { "type": "string" }, "force": { "type": "boolean" } }, "required": ["directory", "force"], "additionalProperties": false } } }, "required": true } } }, "/experimental/project/{projectID}/copy/refresh": { "post": { "tags": ["projectCopy"], "operationId": "v2.projectCopy.refresh", "parameters": [ { "name": "projectID", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "ProjectCopyError | InvalidRequestError", "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/ProjectCopyError" }, { "$ref": "#/components/schemas/InvalidRequestError" } ] } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } } } }, "/api/vcs/status": { "get": { "tags": ["vcs"], "operationId": "v2.vcs.status", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Vcs.FileStatus" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List uncommitted working-copy changes relative to the requested location.", "summary": "VCS status" } }, "/api/vcs/diff": { "get": { "tags": ["vcs"], "operationId": "v2.vcs.diff", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true }, { "name": "mode", "in": "query", "schema": { "$ref": "#/components/schemas/Vcs.Mode" }, "required": true }, { "name": "context", "in": "query", "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "required": false } ], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "location": { "$ref": "#/components/schemas/Location.Info" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/FileDiff.Info" } } }, "required": ["location", "data"], "additionalProperties": false } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Diff the working copy against HEAD (mode git) or the default-branch merge base (mode branch) for the requested location.", "summary": "VCS diff" } }, "/api/debug/location": { "get": { "tags": ["debug"], "operationId": "v2.debug.location.list", "parameters": [], "security": [], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Location.Ref" } } } } }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "List locations currently loaded by the server.", "summary": "List loaded locations" }, "delete": { "tags": ["debug"], "operationId": "v2.debug.location.evict", "parameters": [ { "name": "location", "in": "query", "schema": { "anyOf": [ { "type": "object", "properties": { "directory": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "workspace": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false }, { "type": "null" } ] }, "required": false, "style": "deepObject", "explode": true } ], "security": [], "responses": { "204": { "description": "" }, "400": { "description": "InvalidRequestError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidRequestError" } } } }, "401": { "description": "UnauthorizedError", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UnauthorizedError" } } } } }, "description": "Dispose the requested location's cached services so its next use boots them fresh.", "summary": "Evict a loaded location" } } }, "components": { "schemas": { "UnauthorizedError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["UnauthorizedError"] }, "message": { "type": "string" } }, "required": ["_tag", "message"], "additionalProperties": false }, "InvalidRequestError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["InvalidRequestError"] }, "message": { "type": "string" }, "kind": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "field": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["_tag", "message"], "additionalProperties": false }, "Location.Info": { "type": "object", "properties": { "directory": { "type": "string" }, "workspaceID": { "type": "string", "allOf": [ { "pattern": "^wrk" } ] }, "project": { "type": "object", "properties": { "id": { "type": "string" }, "directory": { "type": "string" } }, "required": ["id", "directory"], "additionalProperties": false } }, "required": ["directory", "project"], "additionalProperties": false }, "Model.Ref": { "type": "object", "properties": { "id": { "type": "string" }, "providerID": { "type": "string" }, "variant": { "type": "string" } }, "required": ["id", "providerID"], "additionalProperties": false }, "Provider.Settings": { "type": "object" }, "Provider.Request": { "type": "object", "properties": { "settings": { "$ref": "#/components/schemas/Provider.Settings" }, "headers": { "type": "object", "additionalProperties": { "type": "string" } }, "body": { "type": "object" } }, "required": ["settings", "headers", "body"], "additionalProperties": false }, "Agent.Color": { "type": "string", "allOf": [ { "pattern": "^#[0-9a-fA-F]{6}$" } ] }, "PermissionV2.Effect": { "type": "string", "enum": ["allow", "deny", "ask"] }, "PermissionV2.Rule": { "type": "object", "properties": { "action": { "type": "string" }, "resource": { "type": "string" }, "effect": { "$ref": "#/components/schemas/PermissionV2.Effect" } }, "required": ["action", "resource", "effect"], "additionalProperties": false }, "PermissionV2.Ruleset": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionV2.Rule" } }, "Agent.Info": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "model": { "$ref": "#/components/schemas/Model.Ref" }, "request": { "$ref": "#/components/schemas/Provider.Request" }, "system": { "type": "string" }, "description": { "type": "string" }, "mode": { "type": "string", "enum": ["subagent", "primary", "all"] }, "hidden": { "type": "boolean" }, "color": { "$ref": "#/components/schemas/Agent.Color" }, "steps": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] }, "permissions": { "$ref": "#/components/schemas/PermissionV2.Ruleset" } }, "required": ["id", "name", "request", "mode", "hidden", "permissions"], "additionalProperties": false }, "Plugin.Info": { "type": "object", "properties": { "id": { "type": "string" } }, "required": ["id"], "additionalProperties": false }, "Money.USD": { "type": "number" }, "TokenUsage.Info": { "type": "object", "properties": { "input": { "type": "number" }, "output": { "type": "number" }, "reasoning": { "type": "number" }, "cache": { "type": "object", "properties": { "read": { "type": "number" }, "write": { "type": "number" } }, "required": ["read", "write"], "additionalProperties": false } }, "required": ["input", "output", "reasoning", "cache"], "additionalProperties": false }, "Location.Ref": { "type": "object", "properties": { "directory": { "type": "string" }, "workspaceID": { "type": "string", "allOf": [ { "pattern": "^wrk" } ] } }, "required": ["directory"], "additionalProperties": false }, "FileDiff.Info": { "type": "object", "properties": { "file": { "type": "string" }, "patch": { "type": "string" }, "additions": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "deletions": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "status": { "type": "string", "enum": ["added", "deleted", "modified"] } }, "required": ["file", "patch", "additions", "deletions", "status"], "additionalProperties": false }, "Session.Revert": { "type": "object", "properties": { "messageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "partID": { "type": "string" }, "snapshot": { "type": "string" }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/FileDiff.Info" } } }, "required": ["messageID"], "additionalProperties": false }, "Session.Info": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "parentID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "fork": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID"], "additionalProperties": false }, "projectID": { "type": "string" }, "agent": { "type": "string" }, "model": { "$ref": "#/components/schemas/Model.Ref" }, "cost": { "$ref": "#/components/schemas/Money.USD" }, "tokens": { "$ref": "#/components/schemas/TokenUsage.Info" }, "time": { "type": "object", "properties": { "created": { "type": "number" }, "updated": { "type": "number" }, "archived": { "type": "number" } }, "required": ["created", "updated"], "additionalProperties": false }, "title": { "type": "string" }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "subpath": { "type": "string" }, "revert": { "$ref": "#/components/schemas/Session.Revert" } }, "required": ["id", "projectID", "cost", "tokens", "time", "title", "location"], "additionalProperties": false }, "SessionsResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Session.Info" } }, "cursor": { "type": "object", "properties": { "previous": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "next": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false } }, "required": ["data", "cursor"], "additionalProperties": false }, "InvalidCursorError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["InvalidCursorError"] }, "message": { "type": "string" } }, "required": ["_tag", "message"], "additionalProperties": false }, "InvalidRequestError1": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["InvalidRequestError"] }, "message": { "type": "string" }, "kind": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "field": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["_tag", "message"], "additionalProperties": false }, "SessionActive": { "type": "object", "properties": { "type": { "type": "string", "enum": ["running"] } }, "required": ["type"], "additionalProperties": false }, "SessionNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["SessionNotFoundError"] }, "sessionID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "sessionID", "message"], "additionalProperties": false }, "MessageNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["MessageNotFoundError"] }, "sessionID": { "type": "string" }, "messageID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "sessionID", "messageID", "message"], "additionalProperties": false }, "Prompt.Mention": { "type": "object", "properties": { "start": { "type": "number" }, "end": { "type": "number" }, "text": { "type": "string" } }, "required": ["start", "end", "text"], "additionalProperties": false }, "PromptInput.FileAttachment": { "type": "object", "properties": { "uri": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string" }, "mention": { "$ref": "#/components/schemas/Prompt.Mention" } }, "required": ["uri"], "additionalProperties": false }, "Prompt.AgentAttachment": { "type": "object", "properties": { "name": { "type": "string" }, "mention": { "$ref": "#/components/schemas/Prompt.Mention" } }, "required": ["name"], "additionalProperties": false }, "PromptInput": { "type": "object", "properties": { "text": { "type": "string" }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/PromptInput.FileAttachment" } }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/Prompt.AgentAttachment" } } }, "required": ["text"], "additionalProperties": false }, "Prompt.Base64": { "type": "string", "allOf": [ { "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$" } ] }, "Prompt.FileSource": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": ["inline"] } }, "required": ["type"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["uri"] }, "uri": { "type": "string" } }, "required": ["type", "uri"], "additionalProperties": false } ] }, "Prompt.FileAttachment": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Prompt.Base64" }, "mime": { "type": "string" }, "source": { "$ref": "#/components/schemas/Prompt.FileSource" }, "name": { "type": "string" }, "description": { "type": "string" }, "mention": { "$ref": "#/components/schemas/Prompt.Mention" } }, "required": ["data", "mime", "source"], "additionalProperties": false }, "Prompt": { "type": "object", "properties": { "text": { "type": "string" }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/Prompt.FileAttachment" } }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/Prompt.AgentAttachment" } } }, "required": ["text"], "additionalProperties": false }, "SessionInput.Admitted": { "type": "object", "properties": { "admittedSeq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "prompt": { "$ref": "#/components/schemas/Prompt" }, "delivery": { "type": "string", "enum": ["steer", "queue"] }, "timeCreated": { "type": "number" }, "promotedSeq": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["admittedSeq", "id", "sessionID", "prompt", "delivery", "timeCreated"], "additionalProperties": false }, "ConflictError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["ConflictError"] }, "message": { "type": "string" }, "resource": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["_tag", "message"], "additionalProperties": false }, "CommandNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["CommandNotFoundError"] }, "command": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "command", "message"], "additionalProperties": false }, "CommandEvaluationError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["CommandEvaluationError"] }, "command": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "command", "message"], "additionalProperties": false }, "SkillNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["SkillNotFoundError"] }, "skill": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "skill", "message"], "additionalProperties": false }, "SessionInput.Compaction": { "type": "object", "properties": { "type": { "type": "string", "enum": ["compaction"] }, "admittedSeq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "timeCreated": { "type": "number" }, "handledSeq": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["type", "admittedSeq", "id", "sessionID", "timeCreated"], "additionalProperties": false }, "ServiceUnavailableError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["ServiceUnavailableError"] }, "message": { "type": "string" }, "service": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["_tag", "message"], "additionalProperties": false }, "SessionBusyError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["SessionBusyError"] }, "sessionID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "sessionID", "message"], "additionalProperties": false }, "UnknownError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["UnknownError"] }, "message": { "type": "string" }, "ref": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["_tag", "message"], "additionalProperties": false }, "Session.Message.AgentSelected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "type": { "type": "string", "enum": ["agent-switched"] }, "agent": { "type": "string" } }, "required": ["id", "time", "type", "agent"], "additionalProperties": false }, "Session.Message.ModelSelected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "type": { "type": "string", "enum": ["model-switched"] }, "model": { "$ref": "#/components/schemas/Model.Ref" }, "previous": { "$ref": "#/components/schemas/Model.Ref" } }, "required": ["id", "time", "type", "model"], "additionalProperties": false }, "Session.Message.User": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "text": { "type": "string" }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/Prompt.FileAttachment" } }, "agents": { "type": "array", "items": { "$ref": "#/components/schemas/Prompt.AgentAttachment" } }, "type": { "type": "string", "enum": ["user"] } }, "required": ["id", "time", "text", "type"], "additionalProperties": false }, "Session.Message.Synthetic": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "text": { "type": "string" }, "description": { "type": "string" }, "type": { "type": "string", "enum": ["synthetic"] } }, "required": ["id", "time", "text", "type"], "additionalProperties": false }, "Session.Message.System": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "type": { "type": "string", "enum": ["system"] }, "text": { "type": "string" } }, "required": ["id", "time", "type", "text"], "additionalProperties": false }, "Session.Message.Skill": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "type": { "type": "string", "enum": ["skill"] }, "skill": { "type": "string" }, "name": { "type": "string" }, "text": { "type": "string" } }, "required": ["id", "time", "type", "skill", "name", "text"], "additionalProperties": false }, "Session.Message.Shell": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" }, "completed": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "type": { "type": "string", "enum": ["shell"] }, "shellID": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "command": { "type": "string" }, "status": { "type": "string", "enum": ["running", "exited", "timeout", "killed"] }, "exit": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "output": { "type": "object", "properties": { "output": { "type": "string" }, "cursor": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "size": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "truncated": { "type": "boolean" } }, "required": ["output", "cursor", "size", "truncated"], "additionalProperties": false } }, "required": ["id", "time", "type", "shellID", "command", "status"], "additionalProperties": false }, "Session.Message.Assistant.Text": { "type": "object", "properties": { "type": { "type": "string", "enum": ["text"] }, "text": { "type": "string" } }, "required": ["type", "text"], "additionalProperties": false }, "Session.Message.ProviderState": { "type": "object" }, "Session.Message.Assistant.Reasoning": { "type": "object", "properties": { "type": { "type": "string", "enum": ["reasoning"] }, "text": { "type": "string" }, "state": { "$ref": "#/components/schemas/Session.Message.ProviderState" }, "time": { "type": "object", "properties": { "created": { "type": "number" }, "completed": { "type": "number" } }, "required": ["created"], "additionalProperties": false } }, "required": ["type", "text"], "additionalProperties": false }, "Session.Message.ToolState.Streaming": { "type": "object", "properties": { "status": { "type": "string", "enum": ["streaming"] }, "input": { "type": "string" } }, "required": ["status", "input"], "additionalProperties": false }, "Tool.TextContent": { "type": "object", "properties": { "type": { "type": "string", "enum": ["text"] }, "text": { "type": "string" } }, "required": ["type", "text"], "additionalProperties": false }, "Tool.FileContent": { "type": "object", "properties": { "type": { "type": "string", "enum": ["file"] }, "uri": { "type": "string" }, "mime": { "type": "string" }, "name": { "type": "string" } }, "required": ["type", "uri", "mime"], "additionalProperties": false }, "LLM.ToolContent": { "anyOf": [ { "$ref": "#/components/schemas/Tool.TextContent" }, { "$ref": "#/components/schemas/Tool.FileContent" } ] }, "Session.Message.ToolState.Running": { "type": "object", "properties": { "status": { "type": "string", "enum": ["running"] }, "input": { "type": "object" }, "structured": { "type": "object" }, "content": { "type": "array", "items": { "$ref": "#/components/schemas/LLM.ToolContent" } } }, "required": ["status", "input", "structured", "content"], "additionalProperties": false }, "Session.Message.ToolState.Completed": { "type": "object", "properties": { "status": { "type": "string", "enum": ["completed"] }, "input": { "type": "object" }, "content": { "type": "array", "items": { "$ref": "#/components/schemas/LLM.ToolContent" } }, "structured": { "type": "object" }, "result": {} }, "required": ["status", "input", "content", "structured"], "additionalProperties": false }, "Session.StructuredError": { "type": "object", "properties": { "type": { "type": "string" }, "message": { "type": "string" } }, "required": ["type", "message"], "additionalProperties": false }, "Session.Message.ToolState.Error": { "type": "object", "properties": { "status": { "type": "string", "enum": ["error"] }, "input": { "type": "object" }, "content": { "type": "array", "items": { "$ref": "#/components/schemas/LLM.ToolContent" } }, "structured": { "type": "object" }, "error": { "$ref": "#/components/schemas/Session.StructuredError" }, "result": {} }, "required": ["status", "input", "content", "structured", "error"], "additionalProperties": false }, "Session.Message.Assistant.Tool": { "type": "object", "properties": { "type": { "type": "string", "enum": ["tool"] }, "id": { "type": "string" }, "name": { "type": "string" }, "executed": { "type": "boolean" }, "providerState": { "$ref": "#/components/schemas/Session.Message.ProviderState" }, "providerResultState": { "$ref": "#/components/schemas/Session.Message.ProviderState" }, "state": { "anyOf": [ { "$ref": "#/components/schemas/Session.Message.ToolState.Streaming" }, { "$ref": "#/components/schemas/Session.Message.ToolState.Running" }, { "$ref": "#/components/schemas/Session.Message.ToolState.Completed" }, { "$ref": "#/components/schemas/Session.Message.ToolState.Error" } ] }, "time": { "type": "object", "properties": { "created": { "type": "number" }, "ran": { "type": "number" }, "completed": { "type": "number" } }, "required": ["created"], "additionalProperties": false } }, "required": ["type", "id", "name", "state", "time"], "additionalProperties": false }, "Session.Message.Assistant.Retry": { "type": "object", "properties": { "attempt": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] }, "at": { "type": "number" }, "error": { "$ref": "#/components/schemas/Session.StructuredError" } }, "required": ["attempt", "at", "error"], "additionalProperties": false }, "Session.Message.Assistant": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" }, "completed": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "type": { "type": "string", "enum": ["assistant"] }, "agent": { "type": "string" }, "model": { "$ref": "#/components/schemas/Model.Ref" }, "content": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Session.Message.Assistant.Text" }, { "$ref": "#/components/schemas/Session.Message.Assistant.Reasoning" }, { "$ref": "#/components/schemas/Session.Message.Assistant.Tool" } ] } }, "snapshot": { "type": "object", "properties": { "start": { "type": "string" }, "end": { "type": "string" }, "files": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false }, "finish": { "type": "string", "enum": ["stop", "length", "tool-calls", "content-filter", "error", "unknown"] }, "cost": { "$ref": "#/components/schemas/Money.USD" }, "tokens": { "$ref": "#/components/schemas/TokenUsage.Info" }, "error": { "$ref": "#/components/schemas/Session.StructuredError" }, "retry": { "$ref": "#/components/schemas/Session.Message.Assistant.Retry" } }, "required": ["id", "time", "type", "agent", "model", "content"], "additionalProperties": false }, "Session.Message.Compaction.Running": { "type": "object", "properties": { "type": { "type": "string", "enum": ["compaction"] }, "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "status": { "type": "string", "enum": ["running"] }, "reason": { "type": "string", "enum": ["auto", "manual"] }, "summary": { "type": "string" }, "recent": { "type": "string" } }, "required": ["type", "id", "time", "status", "reason", "summary", "recent"], "additionalProperties": false }, "Session.Message.Compaction.Completed": { "type": "object", "properties": { "type": { "type": "string", "enum": ["compaction"] }, "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "status": { "type": "string", "enum": ["completed"] }, "reason": { "type": "string", "enum": ["auto", "manual"] }, "summary": { "type": "string" }, "recent": { "type": "string" } }, "required": ["type", "id", "time", "status", "reason", "summary", "recent"], "additionalProperties": false }, "Session.Message.Compaction.Failed": { "type": "object", "properties": { "type": { "type": "string", "enum": ["compaction"] }, "id": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "number" } }, "required": ["created"], "additionalProperties": false }, "status": { "type": "string", "enum": ["failed"] }, "reason": { "type": "string", "enum": ["auto", "manual"] }, "error": { "$ref": "#/components/schemas/Session.StructuredError" } }, "required": ["type", "id", "time", "status", "reason", "error"], "additionalProperties": false }, "Session.Message.Compaction": { "anyOf": [ { "$ref": "#/components/schemas/Session.Message.Compaction.Running" }, { "$ref": "#/components/schemas/Session.Message.Compaction.Completed" }, { "$ref": "#/components/schemas/Session.Message.Compaction.Failed" } ] }, "Session.Message.Info": { "anyOf": [ { "$ref": "#/components/schemas/Session.Message.AgentSelected" }, { "$ref": "#/components/schemas/Session.Message.ModelSelected" }, { "$ref": "#/components/schemas/Session.Message.User" }, { "$ref": "#/components/schemas/Session.Message.Synthetic" }, { "$ref": "#/components/schemas/Session.Message.System" }, { "$ref": "#/components/schemas/Session.Message.Skill" }, { "$ref": "#/components/schemas/Session.Message.Shell" }, { "$ref": "#/components/schemas/Session.Message.Assistant" }, { "$ref": "#/components/schemas/Session.Message.Compaction" } ] }, "InstructionEntry.Key": { "type": "string", "allOf": [ { "pattern": "^[a-z0-9][a-z0-9._-]*$", "description": "Instruction entry key (lowercase alphanumerics plus . _ -)" } ] }, "InstructionEntry.Info": { "type": "object", "properties": { "key": { "$ref": "#/components/schemas/InstructionEntry.Key" }, "value": {} }, "required": ["key", "value"], "additionalProperties": false }, "session.agent.selected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.agent.selected"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "agent": { "type": "string" } }, "required": ["sessionID", "agent"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.model.selected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.model.selected"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "model": { "$ref": "#/components/schemas/Model.Ref" } }, "required": ["sessionID", "model"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.moved": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.moved"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "subpath": { "type": "string" } }, "required": ["sessionID", "location"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.renamed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.renamed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "title": { "type": "string" } }, "required": ["sessionID", "title"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.deleted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.deleted"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [2] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] } }, "required": ["sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.forked": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.forked"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "parentID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "from": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID", "parentID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.prompt.promoted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.prompt.promoted"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "inputID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID", "inputID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.prompt.admitted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.prompt.admitted"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "inputID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "prompt": { "$ref": "#/components/schemas/Prompt" }, "delivery": { "type": "string", "enum": ["steer", "queue"] } }, "required": ["sessionID", "inputID", "prompt", "delivery"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.execution.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.execution.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] } }, "required": ["sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.execution.succeeded": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.execution.succeeded"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] } }, "required": ["sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.execution.failed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.execution.failed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "error": { "$ref": "#/components/schemas/Session.StructuredError" } }, "required": ["sessionID", "error"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.execution.interrupted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.execution.interrupted"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "reason": { "type": "string", "enum": ["user", "shutdown", "superseded"] } }, "required": ["sessionID", "reason"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.instructions.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.instructions.updated"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "text": { "type": "string" } }, "required": ["sessionID", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.synthetic": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.synthetic"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "text": { "type": "string" }, "description": { "type": "string" }, "metadata": { "type": "object" } }, "required": ["sessionID", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.skill.activated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.skill.activated"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "id": { "type": "string" }, "name": { "type": "string" }, "text": { "type": "string" } }, "required": ["sessionID", "id", "name", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Shell": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "status": { "type": "string", "enum": ["running", "exited", "timeout", "killed"] }, "command": { "type": "string" }, "cwd": { "type": "string" }, "shell": { "type": "string" }, "file": { "type": "string" }, "pid": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "exit": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "started": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "completed": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] } }, "required": ["started"], "additionalProperties": false } }, "required": ["id", "status", "command", "cwd", "shell", "file", "metadata", "time"], "additionalProperties": false }, "session.shell.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.shell.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "shell": { "$ref": "#/components/schemas/Shell" } }, "required": ["sessionID", "shell"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.shell.ended": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.shell.ended"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "shell": { "$ref": "#/components/schemas/Shell" }, "output": { "type": "object", "properties": { "output": { "type": "string" }, "cursor": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "size": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "truncated": { "type": "boolean" } }, "required": ["output", "cursor", "size", "truncated"], "additionalProperties": false } }, "required": ["sessionID", "shell", "output"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.step.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.step.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "agent": { "type": "string" }, "model": { "$ref": "#/components/schemas/Model.Ref" }, "snapshot": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "agent", "model"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.step.ended": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.step.ended"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "finish": { "type": "string", "enum": ["stop", "length", "tool-calls", "content-filter", "error", "unknown"] }, "cost": { "$ref": "#/components/schemas/Money.USD" }, "tokens": { "$ref": "#/components/schemas/TokenUsage.Info" }, "snapshot": { "type": "string" }, "files": { "type": "array", "items": { "type": "string" } } }, "required": ["sessionID", "assistantMessageID", "finish", "cost", "tokens"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.step.failed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.step.failed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "error": { "$ref": "#/components/schemas/Session.StructuredError" }, "cost": { "$ref": "#/components/schemas/Money.USD" }, "tokens": { "$ref": "#/components/schemas/TokenUsage.Info" } }, "required": ["sessionID", "assistantMessageID", "error"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.text.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.text.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "ordinal": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["sessionID", "assistantMessageID", "ordinal"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.text.ended": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.text.ended"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "ordinal": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "text": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "ordinal", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Session.Message.ProviderState3": { "type": "object" }, "session.reasoning.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.reasoning.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "ordinal": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "state": { "$ref": "#/components/schemas/Session.Message.ProviderState3" } }, "required": ["sessionID", "assistantMessageID", "ordinal"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Session.Message.ProviderState4": { "type": "object" }, "session.reasoning.ended": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.reasoning.ended"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "ordinal": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "text": { "type": "string" }, "state": { "$ref": "#/components/schemas/Session.Message.ProviderState4" } }, "required": ["sessionID", "assistantMessageID", "ordinal", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.tool.input.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.input.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "name": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "callID", "name"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.tool.input.ended": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.input.ended"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "text": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "callID", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Session.Message.ProviderState5": { "type": "object" }, "session.tool.called": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.called"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "input": { "type": "object" }, "executed": { "type": "boolean" }, "state": { "$ref": "#/components/schemas/Session.Message.ProviderState5" } }, "required": ["sessionID", "assistantMessageID", "callID", "input", "executed"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.tool.progress": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.progress"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "structured": { "type": "object" }, "content": { "type": "array", "items": { "$ref": "#/components/schemas/LLM.ToolContent" } } }, "required": ["sessionID", "assistantMessageID", "callID", "structured", "content"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Session.Message.ProviderState6": { "type": "object" }, "session.tool.success": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.success"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "structured": { "type": "object" }, "content": { "type": "array", "items": { "$ref": "#/components/schemas/LLM.ToolContent" } }, "result": {}, "executed": { "type": "boolean" }, "resultState": { "$ref": "#/components/schemas/Session.Message.ProviderState6" } }, "required": ["sessionID", "assistantMessageID", "callID", "structured", "content", "executed"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Session.Message.ProviderState7": { "type": "object" }, "session.tool.failed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.failed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "error": { "$ref": "#/components/schemas/Session.StructuredError" }, "result": {}, "executed": { "type": "boolean" }, "resultState": { "$ref": "#/components/schemas/Session.Message.ProviderState7" } }, "required": ["sessionID", "assistantMessageID", "callID", "error", "executed"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.retry.scheduled": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.retry.scheduled"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "attempt": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] }, "at": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "error": { "$ref": "#/components/schemas/Session.StructuredError" } }, "required": ["sessionID", "assistantMessageID", "attempt", "at", "error"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.compaction.admitted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.compaction.admitted"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "inputID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID", "inputID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.compaction.started": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.compaction.started"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "reason": { "type": "string", "enum": ["auto", "manual"] }, "recent": { "type": "string" }, "inputID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID", "reason", "recent"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.compaction.ended": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.compaction.ended"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "reason": { "type": "string", "enum": ["auto", "manual"] }, "text": { "type": "string" }, "recent": { "type": "string" } }, "required": ["sessionID", "reason", "text", "recent"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.compaction.failed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.compaction.failed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "reason": { "type": "string", "enum": ["auto", "manual"] }, "error": { "$ref": "#/components/schemas/Session.StructuredError" }, "inputID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID", "reason", "error"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.revert.staged": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.revert.staged"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "revert": { "$ref": "#/components/schemas/Session.Revert" } }, "required": ["sessionID", "revert"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.revert.cleared": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.revert.cleared"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] } }, "required": ["sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.revert.committed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.revert.committed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "to": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] } }, "required": ["sessionID", "to"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "Session.Event.Durable": { "oneOf": [ { "$ref": "#/components/schemas/session.agent.selected" }, { "$ref": "#/components/schemas/session.model.selected" }, { "$ref": "#/components/schemas/session.moved" }, { "$ref": "#/components/schemas/session.renamed" }, { "$ref": "#/components/schemas/session.deleted" }, { "$ref": "#/components/schemas/session.forked" }, { "$ref": "#/components/schemas/session.prompt.promoted" }, { "$ref": "#/components/schemas/session.prompt.admitted" }, { "$ref": "#/components/schemas/session.execution.started" }, { "$ref": "#/components/schemas/session.execution.succeeded" }, { "$ref": "#/components/schemas/session.execution.failed" }, { "$ref": "#/components/schemas/session.execution.interrupted" }, { "$ref": "#/components/schemas/session.instructions.updated" }, { "$ref": "#/components/schemas/session.synthetic" }, { "$ref": "#/components/schemas/session.skill.activated" }, { "$ref": "#/components/schemas/session.shell.started" }, { "$ref": "#/components/schemas/session.shell.ended" }, { "$ref": "#/components/schemas/session.step.started" }, { "$ref": "#/components/schemas/session.step.ended" }, { "$ref": "#/components/schemas/session.step.failed" }, { "$ref": "#/components/schemas/session.text.started" }, { "$ref": "#/components/schemas/session.text.ended" }, { "$ref": "#/components/schemas/session.reasoning.started" }, { "$ref": "#/components/schemas/session.reasoning.ended" }, { "$ref": "#/components/schemas/session.tool.input.started" }, { "$ref": "#/components/schemas/session.tool.input.ended" }, { "$ref": "#/components/schemas/session.tool.called" }, { "$ref": "#/components/schemas/session.tool.progress" }, { "$ref": "#/components/schemas/session.tool.success" }, { "$ref": "#/components/schemas/session.tool.failed" }, { "$ref": "#/components/schemas/session.retry.scheduled" }, { "$ref": "#/components/schemas/session.compaction.admitted" }, { "$ref": "#/components/schemas/session.compaction.started" }, { "$ref": "#/components/schemas/session.compaction.ended" }, { "$ref": "#/components/schemas/session.compaction.failed" }, { "$ref": "#/components/schemas/session.revert.staged" }, { "$ref": "#/components/schemas/session.revert.cleared" }, { "$ref": "#/components/schemas/session.revert.committed" } ] }, "EventLog.Synced": { "type": "object", "properties": { "type": { "type": "string", "enum": ["log.synced"] }, "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["type", "aggregateID"], "additionalProperties": false, "description": "Marker emitted once when a log read reaches its captured watermark. The reader holds every event committed at or below seq." }, "SessionLogItem": { "anyOf": [ { "$ref": "#/components/schemas/Session.Event.Durable" }, { "$ref": "#/components/schemas/EventLog.Synced" } ] }, "SessionLogItemStream": { "type": "string", "contentSchema": { "$ref": "#/components/schemas/SessionLogItem" }, "contentMediaType": "application/json" }, "SessionMessagesResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Session.Message.Info" } }, "cursor": { "type": "object", "properties": { "previous": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "next": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "additionalProperties": false } }, "required": ["data", "cursor"], "additionalProperties": false }, "Model.Capabilities": { "type": "object", "properties": { "tools": { "type": "boolean" }, "input": { "type": "array", "items": { "type": "string" } }, "output": { "type": "array", "items": { "type": "string" } } }, "required": ["tools", "input", "output"], "additionalProperties": false }, "Model.Variant": { "type": "object", "properties": { "id": { "type": "string" }, "settings": { "type": "object" }, "headers": { "type": "object", "additionalProperties": { "type": "string" } }, "body": { "type": "object" } }, "required": ["id"], "additionalProperties": false }, "Money.USDPerMillionTokens": { "type": "number" }, "Model.Cost": { "type": "object", "properties": { "tier": { "type": "object", "properties": { "type": { "type": "string", "enum": ["context"] }, "size": { "type": "integer" } }, "required": ["type", "size"], "additionalProperties": false }, "input": { "$ref": "#/components/schemas/Money.USDPerMillionTokens" }, "output": { "$ref": "#/components/schemas/Money.USDPerMillionTokens" }, "cache": { "type": "object", "properties": { "read": { "$ref": "#/components/schemas/Money.USDPerMillionTokens" }, "write": { "$ref": "#/components/schemas/Money.USDPerMillionTokens" } }, "required": ["read", "write"], "additionalProperties": false } }, "required": ["input", "output", "cache"], "additionalProperties": false }, "Model.Info": { "type": "object", "properties": { "id": { "type": "string" }, "modelID": { "type": "string" }, "providerID": { "type": "string" }, "family": { "type": "string" }, "name": { "type": "string" }, "package": { "type": "string" }, "settings": { "type": "object" }, "headers": { "type": "object", "additionalProperties": { "type": "string" } }, "body": { "type": "object" }, "capabilities": { "$ref": "#/components/schemas/Model.Capabilities" }, "variants": { "type": "array", "items": { "$ref": "#/components/schemas/Model.Variant" } }, "time": { "type": "object", "properties": { "released": { "type": "number" } }, "required": ["released"], "additionalProperties": false }, "cost": { "type": "array", "items": { "$ref": "#/components/schemas/Model.Cost" } }, "status": { "type": "string", "enum": ["alpha", "beta", "deprecated", "active"] }, "enabled": { "type": "boolean" }, "limit": { "type": "object", "properties": { "context": { "type": "integer" }, "input": { "type": "integer" }, "output": { "type": "integer" } }, "required": ["context", "output"], "additionalProperties": false } }, "required": [ "id", "modelID", "providerID", "name", "capabilities", "variants", "time", "cost", "status", "enabled", "limit" ], "additionalProperties": false }, "GenerateTextResponse": { "type": "object", "properties": { "data": { "type": "object", "properties": { "text": { "type": "string" } }, "required": ["text"], "additionalProperties": false } }, "required": ["data"], "additionalProperties": false }, "ProviderV2.Info": { "type": "object", "properties": { "id": { "type": "string" }, "integrationID": { "type": "string" }, "name": { "type": "string" }, "disabled": { "type": "boolean" }, "package": { "type": "string" }, "settings": { "type": "object" }, "headers": { "type": "object", "additionalProperties": { "type": "string" } }, "body": { "type": "object" } }, "required": ["id", "name", "package"], "additionalProperties": false }, "ProviderNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["ProviderNotFoundError"] }, "providerID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "providerID", "message"], "additionalProperties": false }, "Integration.When": { "type": "object", "properties": { "key": { "type": "string" }, "op": { "type": "string", "enum": ["eq", "neq"] }, "value": { "type": "string" } }, "required": ["key", "op", "value"], "additionalProperties": false }, "Integration.TextPrompt": { "type": "object", "properties": { "type": { "type": "string", "enum": ["text"] }, "key": { "type": "string" }, "message": { "type": "string" }, "placeholder": { "type": "string" }, "when": { "$ref": "#/components/schemas/Integration.When" } }, "required": ["type", "key", "message"], "additionalProperties": false }, "Integration.SelectPrompt": { "type": "object", "properties": { "type": { "type": "string", "enum": ["select"] }, "key": { "type": "string" }, "message": { "type": "string" }, "options": { "type": "array", "items": { "type": "object", "properties": { "label": { "type": "string" }, "value": { "type": "string" }, "hint": { "type": "string" } }, "required": ["label", "value"], "additionalProperties": false } }, "when": { "$ref": "#/components/schemas/Integration.When" } }, "required": ["type", "key", "message", "options"], "additionalProperties": false }, "Integration.OAuthMethod": { "type": "object", "properties": { "id": { "type": "string" }, "type": { "type": "string", "enum": ["oauth"] }, "label": { "type": "string" }, "prompts": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Integration.TextPrompt" }, { "$ref": "#/components/schemas/Integration.SelectPrompt" } ] } } }, "required": ["id", "type", "label"], "additionalProperties": false }, "Integration.KeyMethod": { "type": "object", "properties": { "type": { "type": "string", "enum": ["key"] }, "label": { "type": "string" } }, "required": ["type"], "additionalProperties": false }, "Integration.EnvMethod": { "type": "object", "properties": { "type": { "type": "string", "enum": ["env"] }, "names": { "type": "array", "items": { "type": "string" } } }, "required": ["type", "names"], "additionalProperties": false }, "Integration.Method": { "anyOf": [ { "$ref": "#/components/schemas/Integration.OAuthMethod" }, { "$ref": "#/components/schemas/Integration.KeyMethod" }, { "$ref": "#/components/schemas/Integration.EnvMethod" } ] }, "Connection.CredentialInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["credential"] }, "id": { "type": "string" }, "label": { "type": "string" } }, "required": ["type", "id", "label"], "additionalProperties": false }, "Connection.EnvInfo": { "type": "object", "properties": { "type": { "type": "string", "enum": ["env"] }, "name": { "type": "string" } }, "required": ["type", "name"], "additionalProperties": false }, "Connection.Info": { "anyOf": [ { "$ref": "#/components/schemas/Connection.CredentialInfo" }, { "$ref": "#/components/schemas/Connection.EnvInfo" } ] }, "Integration.Info": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "methods": { "type": "array", "items": { "$ref": "#/components/schemas/Integration.Method" } }, "connections": { "type": "array", "items": { "$ref": "#/components/schemas/Connection.Info" } } }, "required": ["id", "name", "methods", "connections"], "additionalProperties": false }, "Integration.Attempt": { "type": "object", "properties": { "attemptID": { "type": "string" }, "url": { "type": "string" }, "instructions": { "type": "string" }, "mode": { "type": "string", "enum": ["auto", "code"] }, "time": { "type": "object", "properties": { "created": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "expires": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["created", "expires"], "additionalProperties": false } }, "required": ["attemptID", "url", "instructions", "mode", "time"], "additionalProperties": false }, "Integration.AttemptStatus": { "anyOf": [ { "type": "object", "properties": { "status": { "type": "string", "enum": ["pending"] }, "time": { "type": "object", "properties": { "created": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "expires": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["created", "expires"], "additionalProperties": false } }, "required": ["status", "time"], "additionalProperties": false }, { "type": "object", "properties": { "status": { "type": "string", "enum": ["complete"] }, "time": { "type": "object", "properties": { "created": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "expires": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["created", "expires"], "additionalProperties": false } }, "required": ["status", "time"], "additionalProperties": false }, { "type": "object", "properties": { "status": { "type": "string", "enum": ["failed"] }, "message": { "type": "string" }, "time": { "type": "object", "properties": { "created": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "expires": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["created", "expires"], "additionalProperties": false } }, "required": ["status", "message", "time"], "additionalProperties": false }, { "type": "object", "properties": { "status": { "type": "string", "enum": ["expired"] }, "time": { "type": "object", "properties": { "created": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "expires": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["created", "expires"], "additionalProperties": false } }, "required": ["status", "time"], "additionalProperties": false } ] }, "Mcp.Status.Connected": { "type": "object", "properties": { "status": { "type": "string", "enum": ["connected"] } }, "required": ["status"], "additionalProperties": false }, "Mcp.Status.Pending": { "type": "object", "properties": { "status": { "type": "string", "enum": ["pending"] } }, "required": ["status"], "additionalProperties": false }, "Mcp.Status.Disabled": { "type": "object", "properties": { "status": { "type": "string", "enum": ["disabled"] } }, "required": ["status"], "additionalProperties": false }, "Mcp.Status.Failed": { "type": "object", "properties": { "status": { "type": "string", "enum": ["failed"] }, "error": { "type": "string" } }, "required": ["status", "error"], "additionalProperties": false }, "Mcp.Status.NeedsAuth": { "type": "object", "properties": { "status": { "type": "string", "enum": ["needs_auth"] } }, "required": ["status"], "additionalProperties": false }, "Mcp.Status.NeedsClientRegistration": { "type": "object", "properties": { "status": { "type": "string", "enum": ["needs_client_registration"] }, "error": { "type": "string" } }, "required": ["status", "error"], "additionalProperties": false }, "Mcp.Server": { "type": "object", "properties": { "name": { "type": "string" }, "status": { "anyOf": [ { "$ref": "#/components/schemas/Mcp.Status.Connected" }, { "$ref": "#/components/schemas/Mcp.Status.Pending" }, { "$ref": "#/components/schemas/Mcp.Status.Disabled" }, { "$ref": "#/components/schemas/Mcp.Status.Failed" }, { "$ref": "#/components/schemas/Mcp.Status.NeedsAuth" }, { "$ref": "#/components/schemas/Mcp.Status.NeedsClientRegistration" } ] }, "integrationID": { "type": "string" } }, "required": ["name", "status"], "additionalProperties": false }, "Mcp.Resource": { "type": "object", "properties": { "server": { "type": "string" }, "name": { "type": "string" }, "uri": { "type": "string" }, "description": { "type": "string" }, "mimeType": { "type": "string" } }, "required": ["server", "name", "uri"], "additionalProperties": false }, "Mcp.ResourceTemplate": { "type": "object", "properties": { "server": { "type": "string" }, "name": { "type": "string" }, "uriTemplate": { "type": "string" }, "description": { "type": "string" }, "mimeType": { "type": "string" } }, "required": ["server", "name", "uriTemplate"], "additionalProperties": false }, "Mcp.ResourceCatalog": { "type": "object", "properties": { "resources": { "type": "array", "items": { "$ref": "#/components/schemas/Mcp.Resource" } }, "templates": { "type": "array", "items": { "$ref": "#/components/schemas/Mcp.ResourceTemplate" } } }, "required": ["resources", "templates"], "additionalProperties": false }, "Project.Vcs": { "type": "string", "enum": ["git", "hg"] }, "Project.Icon": { "type": "object", "properties": { "url": { "type": "string" }, "override": { "type": "string" }, "color": { "type": "string" } }, "additionalProperties": false }, "Project.Commands": { "type": "object", "properties": { "start": { "type": "string", "description": "Startup script to run when creating a new workspace (worktree)" } }, "additionalProperties": false }, "Project.Time": { "type": "object", "properties": { "created": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "updated": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "initialized": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["created", "updated"], "additionalProperties": false }, "Project": { "type": "object", "properties": { "id": { "type": "string" }, "worktree": { "type": "string" }, "vcs": { "$ref": "#/components/schemas/Project.Vcs" }, "name": { "type": "string" }, "icon": { "$ref": "#/components/schemas/Project.Icon" }, "commands": { "$ref": "#/components/schemas/Project.Commands" }, "time": { "$ref": "#/components/schemas/Project.Time" }, "sandboxes": { "type": "array", "items": { "type": "string" } } }, "required": ["id", "worktree", "time", "sandboxes"], "additionalProperties": false }, "Project.Current": { "type": "object", "properties": { "id": { "type": "string" }, "directory": { "type": "string" } }, "required": ["id", "directory"], "additionalProperties": false }, "Project.Directory": { "type": "object", "properties": { "directory": { "type": "string" }, "strategy": { "type": "string" } }, "required": ["directory"], "additionalProperties": false }, "Project.Directories": { "type": "array", "items": { "$ref": "#/components/schemas/Project.Directory" } }, "Form.Metadata": { "type": "object" }, "Form.When": { "type": "object", "properties": { "key": { "type": "string" }, "op": { "type": "string", "enum": ["eq", "neq"] }, "value": { "anyOf": [ { "type": "string" }, { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, { "type": "boolean" } ] } }, "required": ["key", "op", "value"], "additionalProperties": false }, "Form.Option": { "type": "object", "properties": { "value": { "type": "string" }, "label": { "type": "string" }, "description": { "type": "string" } }, "required": ["value", "label"], "additionalProperties": false }, "Form.StringField": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When" } }, "type": { "type": "string", "enum": ["string"] }, "format": { "type": "string", "enum": ["email", "uri", "date", "date-time"] }, "minLength": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "maxLength": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "pattern": { "type": "string" }, "placeholder": { "type": "string" }, "default": { "type": "string" }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/Form.Option" } }, "custom": { "type": "boolean" } }, "required": ["key", "type"], "additionalProperties": false }, "Form.NumberField": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When" } }, "type": { "type": "string", "enum": ["number"] }, "minimum": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "maximum": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "default": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["key", "type"], "additionalProperties": false }, "Form.IntegerField": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When" } }, "type": { "type": "string", "enum": ["integer"] }, "minimum": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "maximum": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "default": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["key", "type"], "additionalProperties": false }, "Form.BooleanField": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When" } }, "type": { "type": "string", "enum": ["boolean"] }, "default": { "type": "boolean" } }, "required": ["key", "type"], "additionalProperties": false }, "Form.MultiselectField": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When" } }, "type": { "type": "string", "enum": ["multiselect"] }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/Form.Option" } }, "minItems": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "maxItems": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "custom": { "type": "boolean" }, "default": { "type": "array", "items": { "type": "string" } } }, "required": ["key", "type", "options"], "additionalProperties": false }, "Form.FormInfo": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "sessionID": { "type": "string" }, "title": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/Form.Metadata" }, "mode": { "type": "string", "enum": ["form"] }, "fields": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Form.StringField" }, { "$ref": "#/components/schemas/Form.NumberField" }, { "$ref": "#/components/schemas/Form.IntegerField" }, { "$ref": "#/components/schemas/Form.BooleanField" }, { "$ref": "#/components/schemas/Form.MultiselectField" } ] } } }, "required": ["id", "sessionID", "title", "mode", "fields"], "additionalProperties": false }, "Form.UrlInfo": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "sessionID": { "type": "string" }, "title": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/Form.Metadata" }, "mode": { "type": "string", "enum": ["url"] }, "url": { "type": "string" } }, "required": ["id", "sessionID", "title", "mode", "url"], "additionalProperties": false }, "Form.CreatePayload": { "type": "object", "properties": { "id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, { "type": "null" } ] }, "title": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/Form.Metadata" }, "mode": { "type": "string", "enum": ["form", "url"] }, "fields": { "anyOf": [ { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Form.StringField" }, { "$ref": "#/components/schemas/Form.NumberField" }, { "$ref": "#/components/schemas/Form.IntegerField" }, { "$ref": "#/components/schemas/Form.BooleanField" }, { "$ref": "#/components/schemas/Form.MultiselectField" } ] } }, { "type": "null" } ] }, "url": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["title", "mode"], "additionalProperties": false }, "FormNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["FormNotFoundError"] }, "id": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "id", "message"], "additionalProperties": false }, "Form.Value": { "anyOf": [ { "type": "string" }, { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, { "type": "boolean" }, { "type": "array", "items": { "type": "string" } } ] }, "Form.Answer": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Form.Value" } }, "Form.State": { "anyOf": [ { "type": "object", "properties": { "status": { "type": "string", "enum": ["pending"] } }, "required": ["status"], "additionalProperties": false }, { "type": "object", "properties": { "status": { "type": "string", "enum": ["answered"] }, "answer": { "$ref": "#/components/schemas/Form.Answer" } }, "required": ["status", "answer"], "additionalProperties": false }, { "type": "object", "properties": { "status": { "type": "string", "enum": ["cancelled"] } }, "required": ["status"], "additionalProperties": false } ] }, "Form.Reply": { "type": "object", "properties": { "answer": { "$ref": "#/components/schemas/Form.Answer" } }, "required": ["answer"], "additionalProperties": false }, "FormAlreadySettledError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["FormAlreadySettledError"] }, "id": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "id", "message"], "additionalProperties": false }, "FormInvalidAnswerError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["FormInvalidAnswerError"] }, "id": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "id", "message"], "additionalProperties": false }, "PermissionV2.Source": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": ["tool"] }, "messageID": { "type": "string" }, "callID": { "type": "string" } }, "required": ["type", "messageID", "callID"], "additionalProperties": false } ] }, "PermissionV2.Request": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "action": { "type": "string" }, "resources": { "type": "array", "items": { "type": "string" } }, "save": { "type": "array", "items": { "type": "string" } }, "metadata": { "type": "object" }, "source": { "$ref": "#/components/schemas/PermissionV2.Source" } }, "required": ["id", "sessionID", "action", "resources"], "additionalProperties": false }, "PermissionSaved.Info": { "type": "object", "properties": { "id": { "type": "string" }, "projectID": { "type": "string" }, "action": { "type": "string" }, "resource": { "type": "string" } }, "required": ["id", "projectID", "action", "resource"], "additionalProperties": false }, "PermissionNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["PermissionNotFoundError"] }, "requestID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "requestID", "message"], "additionalProperties": false }, "PermissionV2.Reply": { "type": "string", "enum": ["once", "always", "reject"] }, "FileSystem.Entry": { "type": "object", "properties": { "path": { "type": "string" }, "type": { "type": "string", "enum": ["file", "directory"] } }, "required": ["path", "type"], "additionalProperties": false }, "Command.Info": { "type": "object", "properties": { "name": { "type": "string" }, "template": { "type": "string" }, "description": { "type": "string" }, "agent": { "type": "string" }, "model": { "$ref": "#/components/schemas/Model.Ref" }, "subtask": { "type": "boolean" } }, "required": ["name", "template"], "additionalProperties": false }, "Skill.Info": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "description": { "type": "string" }, "slash": { "type": "boolean" }, "autoinvoke": { "type": "boolean" }, "location": { "type": "string" }, "content": { "type": "string" } }, "required": ["id", "name", "location", "content"], "additionalProperties": false }, "models-dev.refreshed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["models-dev.refreshed"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "integration.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["integration.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "integration.connection.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["integration.connection.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "integrationID": { "type": "string" } }, "required": ["integrationID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "catalog.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["catalog.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "agent.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["agent.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "FileDiff.LegacyInfo": { "type": "object", "properties": { "file": { "type": "string" }, "patch": { "type": "string" }, "additions": { "type": "number" }, "deletions": { "type": "number" }, "status": { "type": "string", "enum": ["added", "deleted", "modified"] } }, "required": ["additions", "deletions"], "additionalProperties": false }, "PermissionAction": { "type": "string", "enum": ["allow", "deny", "ask"] }, "PermissionRule": { "type": "object", "properties": { "permission": { "type": "string" }, "pattern": { "type": "string" }, "action": { "$ref": "#/components/schemas/PermissionAction" } }, "required": ["permission", "pattern", "action"], "additionalProperties": false }, "PermissionRuleset": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionRule" } }, "SessionV1.Info": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "slug": { "type": "string" }, "projectID": { "type": "string" }, "workspaceID": { "type": "string", "allOf": [ { "pattern": "^wrk" } ] }, "directory": { "type": "string" }, "path": { "type": "string" }, "parentID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "summary": { "type": "object", "properties": { "additions": { "type": "number" }, "deletions": { "type": "number" }, "files": { "type": "number" }, "diffs": { "type": "array", "items": { "$ref": "#/components/schemas/FileDiff.LegacyInfo" } } }, "required": ["additions", "deletions", "files"], "additionalProperties": false }, "cost": { "type": "number" }, "tokens": { "type": "object", "properties": { "input": { "type": "number" }, "output": { "type": "number" }, "reasoning": { "type": "number" }, "cache": { "type": "object", "properties": { "read": { "type": "number" }, "write": { "type": "number" } }, "required": ["read", "write"], "additionalProperties": false } }, "required": ["input", "output", "reasoning", "cache"], "additionalProperties": false }, "share": { "type": "object", "properties": { "url": { "type": "string" } }, "required": ["url"], "additionalProperties": false }, "title": { "type": "string" }, "agent": { "type": "string" }, "model": { "type": "object", "properties": { "id": { "type": "string" }, "providerID": { "type": "string" }, "variant": { "type": "string" } }, "required": ["id", "providerID"], "additionalProperties": false }, "version": { "type": "string" }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "created": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "updated": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "compacting": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "archived": { "type": "number" } }, "required": ["created", "updated"], "additionalProperties": false }, "permission": { "$ref": "#/components/schemas/PermissionRuleset" }, "revert": { "type": "object", "properties": { "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "partID": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "snapshot": { "type": "string" }, "diff": { "type": "string" } }, "required": ["messageID"], "additionalProperties": false } }, "required": ["id", "slug", "projectID", "directory", "title", "version", "time"], "additionalProperties": false }, "session.created": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.created"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "info": { "$ref": "#/components/schemas/SessionV1.Info" } }, "required": ["sessionID", "info"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.updated"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "info": { "$ref": "#/components/schemas/SessionV1.Info" } }, "required": ["sessionID", "info"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.deleted1": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.deleted"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "info": { "$ref": "#/components/schemas/SessionV1.Info" } }, "required": ["sessionID", "info"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "JSONSchema": { "type": "object" }, "OutputFormat": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": ["text"] } }, "required": ["type"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["json_schema"] }, "schema": { "$ref": "#/components/schemas/JSONSchema" }, "retryCount": { "anyOf": [ { "anyOf": [ { "type": "integer", "allOf": [ { "minimum": 0 } ] }, { "type": "null" } ] }, { "type": "null" } ] } }, "required": ["type", "schema"], "additionalProperties": false } ] }, "UserMessage": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "role": { "type": "string", "enum": ["user"] }, "time": { "type": "object", "properties": { "created": { "type": "number", "allOf": [ { "minimum": 0 } ] } }, "required": ["created"], "additionalProperties": false }, "format": { "anyOf": [ { "$ref": "#/components/schemas/OutputFormat" }, { "type": "null" } ] }, "summary": { "anyOf": [ { "type": "object", "properties": { "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "body": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "diffs": { "type": "array", "items": { "$ref": "#/components/schemas/FileDiff.LegacyInfo" } } }, "required": ["diffs"], "additionalProperties": false }, { "type": "null" } ] }, "agent": { "type": "string" }, "model": { "type": "object", "properties": { "providerID": { "type": "string" }, "modelID": { "type": "string" }, "variant": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["providerID", "modelID"], "additionalProperties": false }, "system": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "tools": { "anyOf": [ { "type": "object", "additionalProperties": { "type": "boolean" } }, { "type": "null" } ] } }, "required": ["id", "sessionID", "role", "time", "agent", "model"], "additionalProperties": false }, "ProviderAuthError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["ProviderAuthError"] }, "data": { "type": "object", "properties": { "providerID": { "type": "string" }, "message": { "type": "string" } }, "required": ["providerID", "message"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "UnknownError1": { "type": "object", "properties": { "name": { "type": "string", "enum": ["UnknownError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" }, "ref": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["message"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "MessageOutputLengthError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["MessageOutputLengthError"] }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["name", "data"], "additionalProperties": false }, "MessageAbortedError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["MessageAbortedError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" } }, "required": ["message"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "StructuredOutputError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["StructuredOutputError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" }, "retries": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["message", "retries"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "ContextOverflowError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["ContextOverflowError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" }, "responseBody": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["message"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "ContentFilterError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["ContentFilterError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" } }, "required": ["message"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "APIError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["APIError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" }, "statusCode": { "anyOf": [ { "type": "integer", "allOf": [ { "minimum": 0 } ] }, { "type": "null" } ] }, "isRetryable": { "type": "boolean" }, "responseHeaders": { "anyOf": [ { "type": "object", "additionalProperties": { "type": "string" } }, { "type": "null" } ] }, "responseBody": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "metadata": { "anyOf": [ { "type": "object", "additionalProperties": { "type": "string" } }, { "type": "null" } ] } }, "required": ["message", "isRetryable"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "AssistantMessage": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "role": { "type": "string", "enum": ["assistant"] }, "time": { "type": "object", "properties": { "created": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "completed": { "anyOf": [ { "type": "integer", "allOf": [ { "minimum": 0 } ] }, { "type": "null" } ] } }, "required": ["created"], "additionalProperties": false }, "error": { "anyOf": [ { "anyOf": [ { "$ref": "#/components/schemas/ProviderAuthError" }, { "$ref": "#/components/schemas/UnknownError1" }, { "$ref": "#/components/schemas/MessageOutputLengthError" }, { "$ref": "#/components/schemas/MessageAbortedError" }, { "$ref": "#/components/schemas/StructuredOutputError" }, { "$ref": "#/components/schemas/ContextOverflowError" }, { "$ref": "#/components/schemas/ContentFilterError" }, { "$ref": "#/components/schemas/APIError" } ] }, { "type": "null" } ] }, "parentID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "modelID": { "type": "string" }, "providerID": { "type": "string" }, "mode": { "type": "string" }, "agent": { "type": "string" }, "path": { "type": "object", "properties": { "cwd": { "type": "string" }, "root": { "type": "string" } }, "required": ["cwd", "root"], "additionalProperties": false }, "summary": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "cost": { "type": "number" }, "tokens": { "type": "object", "properties": { "total": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "input": { "type": "number" }, "output": { "type": "number" }, "reasoning": { "type": "number" }, "cache": { "type": "object", "properties": { "read": { "type": "number" }, "write": { "type": "number" } }, "required": ["read", "write"], "additionalProperties": false } }, "required": ["input", "output", "reasoning", "cache"], "additionalProperties": false }, "structured": { "anyOf": [ {}, { "type": "null" } ] }, "variant": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "finish": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "id", "sessionID", "role", "time", "parentID", "modelID", "providerID", "mode", "agent", "path", "cost", "tokens" ], "additionalProperties": false }, "Message": { "anyOf": [ { "$ref": "#/components/schemas/UserMessage" }, { "$ref": "#/components/schemas/AssistantMessage" } ] }, "message.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["message.updated"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "info": { "$ref": "#/components/schemas/Message" } }, "required": ["sessionID", "info"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "message.removed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["message.removed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] } }, "required": ["sessionID", "messageID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "TextPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["text"] }, "text": { "type": "string" }, "synthetic": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "ignored": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "time": { "anyOf": [ { "type": "object", "properties": { "start": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "end": { "anyOf": [ { "type": "integer", "allOf": [ { "minimum": 0 } ] }, { "type": "null" } ] } }, "required": ["start"], "additionalProperties": false }, { "type": "null" } ] }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type", "text"], "additionalProperties": false }, "SubtaskPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["subtask"] }, "prompt": { "type": "string" }, "description": { "type": "string" }, "agent": { "type": "string" }, "model": { "anyOf": [ { "type": "object", "properties": { "providerID": { "type": "string" }, "modelID": { "type": "string" } }, "required": ["providerID", "modelID"], "additionalProperties": false }, { "type": "null" } ] }, "command": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type", "prompt", "description", "agent"], "additionalProperties": false }, "ReasoningPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["reasoning"] }, "text": { "type": "string" }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ] }, "time": { "type": "object", "properties": { "start": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "end": { "anyOf": [ { "type": "integer", "allOf": [ { "minimum": 0 } ] }, { "type": "null" } ] } }, "required": ["start"], "additionalProperties": false } }, "required": ["id", "sessionID", "messageID", "type", "text", "time"], "additionalProperties": false }, "FilePartSourceText": { "type": "object", "properties": { "value": { "type": "string" }, "start": { "type": "number" }, "end": { "type": "number" } }, "required": ["value", "start", "end"], "additionalProperties": false }, "FileSource": { "type": "object", "properties": { "text": { "$ref": "#/components/schemas/FilePartSourceText" }, "type": { "type": "string", "enum": ["file"] }, "path": { "type": "string" } }, "required": ["text", "type", "path"], "additionalProperties": false }, "Range": { "type": "object", "properties": { "start": { "type": "object", "properties": { "line": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "character": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["line", "character"], "additionalProperties": false }, "end": { "type": "object", "properties": { "line": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "character": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["line", "character"], "additionalProperties": false } }, "required": ["start", "end"], "additionalProperties": false }, "SymbolSource": { "type": "object", "properties": { "text": { "$ref": "#/components/schemas/FilePartSourceText" }, "type": { "type": "string", "enum": ["symbol"] }, "path": { "type": "string" }, "range": { "$ref": "#/components/schemas/Range" }, "name": { "type": "string" }, "kind": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["text", "type", "path", "range", "name", "kind"], "additionalProperties": false }, "ResourceSource": { "type": "object", "properties": { "text": { "$ref": "#/components/schemas/FilePartSourceText" }, "type": { "type": "string", "enum": ["resource"] }, "clientName": { "type": "string" }, "uri": { "type": "string" } }, "required": ["text", "type", "clientName", "uri"], "additionalProperties": false }, "FilePartSource": { "anyOf": [ { "$ref": "#/components/schemas/FileSource" }, { "$ref": "#/components/schemas/SymbolSource" }, { "$ref": "#/components/schemas/ResourceSource" } ] }, "FilePart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["file"] }, "mime": { "type": "string" }, "filename": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "url": { "type": "string" }, "source": { "anyOf": [ { "$ref": "#/components/schemas/FilePartSource" }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type", "mime", "url"], "additionalProperties": false }, "ToolStatePending": { "type": "object", "properties": { "status": { "type": "string", "enum": ["pending"] }, "input": { "type": "object" }, "raw": { "type": "string" } }, "required": ["status", "input", "raw"], "additionalProperties": false }, "ToolStateRunning": { "type": "object", "properties": { "status": { "type": "string", "enum": ["running"] }, "input": { "type": "object" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ] }, "time": { "type": "object", "properties": { "start": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["start"], "additionalProperties": false } }, "required": ["status", "input", "time"], "additionalProperties": false }, "ToolStateCompleted": { "type": "object", "properties": { "status": { "type": "string", "enum": ["completed"] }, "input": { "type": "object" }, "output": { "type": "string" }, "title": { "type": "string" }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "start": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "end": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "compacted": { "anyOf": [ { "type": "integer", "allOf": [ { "minimum": 0 } ] }, { "type": "null" } ] } }, "required": ["start", "end"], "additionalProperties": false }, "attachments": { "anyOf": [ { "type": "array", "items": { "$ref": "#/components/schemas/FilePart" } }, { "type": "null" } ] } }, "required": ["status", "input", "output", "title", "metadata", "time"], "additionalProperties": false }, "ToolStateError": { "type": "object", "properties": { "status": { "type": "string", "enum": ["error"] }, "input": { "type": "object" }, "error": { "type": "string" }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ] }, "time": { "type": "object", "properties": { "start": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "end": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["start", "end"], "additionalProperties": false } }, "required": ["status", "input", "error", "time"], "additionalProperties": false }, "ToolState": { "anyOf": [ { "$ref": "#/components/schemas/ToolStatePending" }, { "$ref": "#/components/schemas/ToolStateRunning" }, { "$ref": "#/components/schemas/ToolStateCompleted" }, { "$ref": "#/components/schemas/ToolStateError" } ] }, "ToolPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["tool"] }, "callID": { "type": "string" }, "tool": { "type": "string" }, "state": { "$ref": "#/components/schemas/ToolState" }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type", "callID", "tool", "state"], "additionalProperties": false }, "StepStartPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["step-start"] }, "snapshot": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type"], "additionalProperties": false }, "StepFinishPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["step-finish"] }, "reason": { "type": "string" }, "snapshot": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "cost": { "type": "number" }, "tokens": { "type": "object", "properties": { "total": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "input": { "type": "number" }, "output": { "type": "number" }, "reasoning": { "type": "number" }, "cache": { "type": "object", "properties": { "read": { "type": "number" }, "write": { "type": "number" } }, "required": ["read", "write"], "additionalProperties": false } }, "required": ["input", "output", "reasoning", "cache"], "additionalProperties": false } }, "required": ["id", "sessionID", "messageID", "type", "reason", "cost", "tokens"], "additionalProperties": false }, "SnapshotPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["snapshot"] }, "snapshot": { "type": "string" } }, "required": ["id", "sessionID", "messageID", "type", "snapshot"], "additionalProperties": false }, "PatchPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["patch"] }, "hash": { "type": "string" }, "files": { "type": "array", "items": { "type": "string" } } }, "required": ["id", "sessionID", "messageID", "type", "hash", "files"], "additionalProperties": false }, "AgentPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["agent"] }, "name": { "type": "string" }, "source": { "anyOf": [ { "type": "object", "properties": { "value": { "type": "string" }, "start": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "end": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["value", "start", "end"], "additionalProperties": false }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type", "name"], "additionalProperties": false }, "RetryPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["retry"] }, "attempt": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "error": { "$ref": "#/components/schemas/APIError" }, "time": { "type": "object", "properties": { "created": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["created"], "additionalProperties": false } }, "required": ["id", "sessionID", "messageID", "type", "attempt", "error", "time"], "additionalProperties": false }, "CompactionPart": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^prt" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "type": { "type": "string", "enum": ["compaction"] }, "auto": { "type": "boolean" }, "overflow": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "tail_start_id": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, { "type": "null" } ] } }, "required": ["id", "sessionID", "messageID", "type", "auto"], "additionalProperties": false }, "Part": { "anyOf": [ { "$ref": "#/components/schemas/TextPart" }, { "$ref": "#/components/schemas/SubtaskPart" }, { "$ref": "#/components/schemas/ReasoningPart" }, { "$ref": "#/components/schemas/FilePart" }, { "$ref": "#/components/schemas/ToolPart" }, { "$ref": "#/components/schemas/StepStartPart" }, { "$ref": "#/components/schemas/StepFinishPart" }, { "$ref": "#/components/schemas/SnapshotPart" }, { "$ref": "#/components/schemas/PatchPart" }, { "$ref": "#/components/schemas/AgentPart" }, { "$ref": "#/components/schemas/RetryPart" }, { "$ref": "#/components/schemas/CompactionPart" } ] }, "message.part.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["message.part.updated"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "part": { "$ref": "#/components/schemas/Part" }, "time": { "type": "number" } }, "required": ["sessionID", "part", "time"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "message.part.removed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["message.part.removed"] }, "durable": { "type": "object", "properties": { "aggregateID": { "type": "string" }, "seq": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "version": { "type": "number", "enum": [1] } }, "required": ["aggregateID", "seq", "version"], "additionalProperties": false }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "partID": { "type": "string", "allOf": [ { "pattern": "^prt" } ] } }, "required": ["sessionID", "messageID", "partID"], "additionalProperties": false } }, "required": ["id", "created", "type", "durable", "data"], "additionalProperties": false }, "session.usage.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.usage.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "cost": { "$ref": "#/components/schemas/Money.USD" }, "tokens": { "$ref": "#/components/schemas/TokenUsage.Info" } }, "required": ["sessionID", "cost", "tokens"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "session.text.delta": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.text.delta"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "ordinal": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "delta": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "ordinal", "delta"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "session.reasoning.delta": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.reasoning.delta"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "ordinal": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "delta": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "ordinal", "delta"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "session.tool.input.delta": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.tool.input.delta"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "assistantMessageID": { "type": "string", "allOf": [ { "pattern": "^msg_" } ] }, "callID": { "type": "string" }, "delta": { "type": "string" } }, "required": ["sessionID", "assistantMessageID", "callID", "delta"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "session.compaction.delta": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.compaction.delta"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "text": { "type": "string" } }, "required": ["sessionID", "text"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "filesystem.changed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["filesystem.changed"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "file": { "type": "string" }, "event": { "type": "string", "enum": ["add", "change", "unlink"] } }, "required": ["file", "event"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "reference.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["reference.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "permission.v2.asked": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["permission.v2.asked"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "action": { "type": "string" }, "resources": { "type": "array", "items": { "type": "string" } }, "save": { "type": "array", "items": { "type": "string" } }, "metadata": { "type": "object" }, "source": { "$ref": "#/components/schemas/PermissionV2.Source" } }, "required": ["id", "sessionID", "action", "resources"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "permission.v2.replied": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["permission.v2.replied"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "requestID": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "reply": { "$ref": "#/components/schemas/PermissionV2.Reply" } }, "required": ["sessionID", "requestID", "reply"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "plugin.added": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["plugin.added"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string" } }, "required": ["id"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "plugin.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["plugin.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "project.directories.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["project.directories.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "projectID": { "type": "string" } }, "required": ["projectID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "command.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["command.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "config.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["config.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "skill.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["skill.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "Pty": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "title": { "type": "string" }, "command": { "type": "string" }, "args": { "type": "array", "items": { "type": "string" } }, "cwd": { "type": "string" }, "status": { "type": "string", "enum": ["running", "exited"] }, "pid": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "exitCode": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["id", "title", "command", "args", "cwd", "status", "pid"], "additionalProperties": false }, "pty.created": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["pty.created"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "info": { "$ref": "#/components/schemas/Pty" } }, "required": ["info"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "pty.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["pty.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "info": { "$ref": "#/components/schemas/Pty" } }, "required": ["info"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "pty.exited": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["pty.exited"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^pty" } ] }, "exitCode": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["id", "exitCode"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "pty.deleted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["pty.deleted"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^pty" } ] } }, "required": ["id"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "shell.created": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["shell.created"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "info": { "$ref": "#/components/schemas/Shell" } }, "required": ["info"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "shell.exited": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["shell.exited"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "exit": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "status": { "type": "string", "enum": ["running", "exited", "timeout", "killed"] } }, "required": ["id", "status"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "shell.deleted": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["shell.deleted"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] } }, "required": ["id"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "QuestionV2.Option": { "type": "object", "properties": { "label": { "type": "string", "description": "Display text (1-5 words, concise)" }, "description": { "type": "string", "description": "Explanation of choice" } }, "required": ["label", "description"], "additionalProperties": false }, "QuestionV2.Info": { "type": "object", "properties": { "question": { "type": "string", "description": "Complete question" }, "header": { "type": "string", "description": "Very short label (max 30 chars)" }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Option" }, "description": "Available choices" }, "multiple": { "type": "boolean" }, "custom": { "type": "boolean" } }, "required": ["question", "header", "options"], "additionalProperties": false }, "QuestionV2.Tool": { "type": "object", "properties": { "messageID": { "type": "string" }, "callID": { "type": "string" } }, "required": ["messageID", "callID"], "additionalProperties": false }, "question.v2.asked": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["question.v2.asked"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Info" }, "description": "Questions to ask" }, "tool": { "$ref": "#/components/schemas/QuestionV2.Tool" } }, "required": ["id", "sessionID", "questions"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "QuestionV2.Answer": { "type": "array", "items": { "type": "string" } }, "question.v2.replied": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["question.v2.replied"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "requestID": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "answers": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Answer" } } }, "required": ["sessionID", "requestID", "answers"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "question.v2.rejected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["question.v2.rejected"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "requestID": { "type": "string", "allOf": [ { "pattern": "^que" } ] } }, "required": ["sessionID", "requestID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "Form.Metadata1": { "type": "object" }, "Form.When1": { "type": "object", "properties": { "key": { "type": "string" }, "op": { "type": "string", "enum": ["eq", "neq"] }, "value": { "anyOf": [ { "type": "string" }, { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "boolean" } ] } }, "required": ["key", "op", "value"], "additionalProperties": false }, "Form.StringField1": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When1" } }, "type": { "type": "string", "enum": ["string"] }, "format": { "type": "string", "enum": ["email", "uri", "date", "date-time"] }, "minLength": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "maxLength": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "pattern": { "type": "string" }, "placeholder": { "type": "string" }, "default": { "type": "string" }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/Form.Option" } }, "custom": { "type": "boolean" } }, "required": ["key", "type"], "additionalProperties": false }, "Form.NumberField1": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When1" } }, "type": { "type": "string", "enum": ["number"] }, "minimum": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "maximum": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "default": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] } }, "required": ["key", "type"], "additionalProperties": false }, "Form.IntegerField1": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When1" } }, "type": { "type": "string", "enum": ["integer"] }, "minimum": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "maximum": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, "default": { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] } }, "required": ["key", "type"], "additionalProperties": false }, "Form.BooleanField1": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When1" } }, "type": { "type": "string", "enum": ["boolean"] }, "default": { "type": "boolean" } }, "required": ["key", "type"], "additionalProperties": false }, "Form.MultiselectField1": { "type": "object", "properties": { "key": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "required": { "type": "boolean" }, "when": { "type": "array", "items": { "$ref": "#/components/schemas/Form.When1" } }, "type": { "type": "string", "enum": ["multiselect"] }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/Form.Option" } }, "minItems": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "maxItems": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "custom": { "type": "boolean" }, "default": { "type": "array", "items": { "type": "string" } } }, "required": ["key", "type", "options"], "additionalProperties": false }, "Form.FormInfo1": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "sessionID": { "type": "string" }, "title": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/Form.Metadata1" }, "mode": { "type": "string", "enum": ["form"] }, "fields": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Form.StringField1" }, { "$ref": "#/components/schemas/Form.NumberField1" }, { "$ref": "#/components/schemas/Form.IntegerField1" }, { "$ref": "#/components/schemas/Form.BooleanField1" }, { "$ref": "#/components/schemas/Form.MultiselectField1" } ] } } }, "required": ["id", "sessionID", "title", "mode", "fields"], "additionalProperties": false }, "Form.UrlInfo1": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "sessionID": { "type": "string" }, "title": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/Form.Metadata1" }, "mode": { "type": "string", "enum": ["url"] }, "url": { "type": "string" } }, "required": ["id", "sessionID", "title", "mode", "url"], "additionalProperties": false }, "form.created": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["form.created"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "form": { "anyOf": [ { "$ref": "#/components/schemas/Form.FormInfo1" }, { "$ref": "#/components/schemas/Form.UrlInfo1" } ] } }, "required": ["form"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "Form.Value1": { "anyOf": [ { "type": "string" }, { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "boolean" }, { "type": "array", "items": { "type": "string" } } ] }, "Form.Answer1": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Form.Value1" } }, "form.replied": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["form.replied"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "sessionID": { "type": "string" }, "answer": { "$ref": "#/components/schemas/Form.Answer1" } }, "required": ["id", "sessionID", "answer"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "form.cancelled": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["form.cancelled"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^frm_" } ] }, "sessionID": { "type": "string" } }, "required": ["id", "sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "SessionStatus": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": ["idle"] } }, "required": ["type"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["retry"] }, "attempt": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "message": { "type": "string" }, "action": { "type": "object", "properties": { "reason": { "type": "string" }, "provider": { "type": "string" }, "title": { "type": "string" }, "message": { "type": "string" }, "label": { "type": "string" }, "link": { "type": "string" } }, "required": ["reason", "provider", "title", "message", "label"], "additionalProperties": false }, "next": { "type": "integer", "allOf": [ { "minimum": 0 } ] } }, "required": ["type", "attempt", "message", "next"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["busy"] } }, "required": ["type"], "additionalProperties": false } ] }, "session.status": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.status"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "status": { "$ref": "#/components/schemas/SessionStatus" } }, "required": ["sessionID", "status"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "session.idle": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.idle"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] } }, "required": ["sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "tui.prompt.append": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["tui.prompt.append"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "text": { "type": "string" } }, "required": ["text"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "tui.command.execute": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["tui.command.execute"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "command": { "anyOf": [ { "type": "string", "enum": [ "session.list", "session.new", "session.share", "session.interrupt", "session.background", "session.compact", "session.page.up", "session.page.down", "session.line.up", "session.line.down", "session.half.page.up", "session.half.page.down", "session.first", "session.last", "prompt.clear", "prompt.submit", "agent.cycle" ] }, { "type": "string" } ] } }, "required": ["command"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "tui.toast.show": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["tui.toast.show"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "title": { "type": "string" }, "message": { "type": "string" }, "variant": { "type": "string", "enum": ["info", "success", "warning", "error"] }, "duration": { "anyOf": [ { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] }, { "type": "null" } ] } }, "required": ["message", "variant"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "tui.session.select": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["tui.session.select"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses", "description": "Session ID to navigate to" } ] } }, "required": ["sessionID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "installation.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["installation.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "version": { "type": "string" } }, "required": ["version"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "installation.update-available": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["installation.update-available"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "version": { "type": "string" } }, "required": ["version"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "vcs.branch.updated": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["vcs.branch.updated"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "branch": { "type": "string" } }, "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "mcp.status.changed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["mcp.status.changed"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "server": { "type": "string" } }, "required": ["server"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "mcp.resources.changed": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["mcp.resources.changed"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "server": { "type": "string" } }, "required": ["server"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "permission.asked": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["permission.asked"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "permission": { "type": "string" }, "patterns": { "type": "array", "items": { "type": "string" } }, "metadata": { "type": "object" }, "always": { "type": "array", "items": { "type": "string" } }, "tool": { "anyOf": [ { "type": "object", "properties": { "messageID": { "type": "string" }, "callID": { "type": "string" } }, "required": ["messageID", "callID"], "additionalProperties": false }, { "type": "null" } ] } }, "required": ["id", "sessionID", "permission", "patterns", "metadata", "always"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "permission.replied": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["permission.replied"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "requestID": { "type": "string", "allOf": [ { "pattern": "^per" } ] }, "reply": { "type": "string", "enum": ["once", "always", "reject"] } }, "required": ["sessionID", "requestID", "reply"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "QuestionOption": { "type": "object", "properties": { "label": { "type": "string", "description": "Display text (1-5 words, concise)" }, "description": { "type": "string", "description": "Explanation of choice" } }, "required": ["label", "description"], "additionalProperties": false }, "QuestionInfo": { "type": "object", "properties": { "question": { "type": "string", "description": "Complete question" }, "header": { "type": "string", "description": "Very short label (max 30 chars)" }, "options": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionOption" }, "description": "Available choices" }, "multiple": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Allow selecting multiple choices" }, "custom": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Allow typing a custom answer (default: true)" } }, "required": ["question", "header", "options"], "additionalProperties": false }, "QuestionTool": { "type": "object", "properties": { "messageID": { "type": "string", "allOf": [ { "pattern": "^msg" } ] }, "callID": { "type": "string" } }, "required": ["messageID", "callID"], "additionalProperties": false }, "question.asked": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["question.asked"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionInfo" }, "description": "Questions to ask" }, "tool": { "anyOf": [ { "$ref": "#/components/schemas/QuestionTool" }, { "type": "null" } ] } }, "required": ["id", "sessionID", "questions"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "QuestionAnswer": { "type": "array", "items": { "type": "string" } }, "question.replied": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["question.replied"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "requestID": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "answers": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionAnswer" } } }, "required": ["sessionID", "requestID", "answers"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "question.rejected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["question.rejected"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "requestID": { "type": "string", "allOf": [ { "pattern": "^que" } ] } }, "required": ["sessionID", "requestID"], "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "session.error": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "created": { "type": "number" }, "metadata": { "type": "object" }, "type": { "type": "string", "enum": ["session.error"] }, "location": { "$ref": "#/components/schemas/Location.Ref" }, "data": { "type": "object", "properties": { "sessionID": { "anyOf": [ { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, { "type": "null" } ] }, "error": { "anyOf": [ { "anyOf": [ { "$ref": "#/components/schemas/ProviderAuthError" }, { "$ref": "#/components/schemas/UnknownError1" }, { "$ref": "#/components/schemas/MessageOutputLengthError" }, { "$ref": "#/components/schemas/MessageAbortedError" }, { "$ref": "#/components/schemas/StructuredOutputError" }, { "$ref": "#/components/schemas/ContextOverflowError" }, { "$ref": "#/components/schemas/ContentFilterError" }, { "$ref": "#/components/schemas/APIError" } ] }, { "type": "null" } ] } }, "additionalProperties": false } }, "required": ["id", "created", "type", "data"], "additionalProperties": false }, "V2Event.server.connected": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^evt_" } ] }, "metadata": { "anyOf": [ { "type": "object" }, { "type": "null" } ] }, "location": { "anyOf": [ { "$ref": "#/components/schemas/Location.Ref" }, { "type": "null" } ] }, "type": { "type": "string", "enum": ["server.connected"] }, "data": { "anyOf": [ { "type": "object" }, { "type": "array" } ] } }, "required": ["id", "type", "data"], "additionalProperties": false }, "V2Event": { "anyOf": [ { "$ref": "#/components/schemas/models-dev.refreshed" }, { "$ref": "#/components/schemas/integration.updated" }, { "$ref": "#/components/schemas/integration.connection.updated" }, { "$ref": "#/components/schemas/catalog.updated" }, { "$ref": "#/components/schemas/agent.updated" }, { "$ref": "#/components/schemas/session.created" }, { "$ref": "#/components/schemas/session.updated" }, { "$ref": "#/components/schemas/session.deleted1" }, { "$ref": "#/components/schemas/message.updated" }, { "$ref": "#/components/schemas/message.removed" }, { "$ref": "#/components/schemas/message.part.updated" }, { "$ref": "#/components/schemas/message.part.removed" }, { "$ref": "#/components/schemas/session.agent.selected" }, { "$ref": "#/components/schemas/session.model.selected" }, { "$ref": "#/components/schemas/session.moved" }, { "$ref": "#/components/schemas/session.renamed" }, { "$ref": "#/components/schemas/session.usage.updated" }, { "$ref": "#/components/schemas/session.deleted" }, { "$ref": "#/components/schemas/session.forked" }, { "$ref": "#/components/schemas/session.prompt.promoted" }, { "$ref": "#/components/schemas/session.prompt.admitted" }, { "$ref": "#/components/schemas/session.execution.started" }, { "$ref": "#/components/schemas/session.execution.succeeded" }, { "$ref": "#/components/schemas/session.execution.failed" }, { "$ref": "#/components/schemas/session.execution.interrupted" }, { "$ref": "#/components/schemas/session.instructions.updated" }, { "$ref": "#/components/schemas/session.synthetic" }, { "$ref": "#/components/schemas/session.skill.activated" }, { "$ref": "#/components/schemas/session.shell.started" }, { "$ref": "#/components/schemas/session.shell.ended" }, { "$ref": "#/components/schemas/session.step.started" }, { "$ref": "#/components/schemas/session.step.ended" }, { "$ref": "#/components/schemas/session.step.failed" }, { "$ref": "#/components/schemas/session.text.started" }, { "$ref": "#/components/schemas/session.text.delta" }, { "$ref": "#/components/schemas/session.text.ended" }, { "$ref": "#/components/schemas/session.reasoning.started" }, { "$ref": "#/components/schemas/session.reasoning.delta" }, { "$ref": "#/components/schemas/session.reasoning.ended" }, { "$ref": "#/components/schemas/session.tool.input.started" }, { "$ref": "#/components/schemas/session.tool.input.delta" }, { "$ref": "#/components/schemas/session.tool.input.ended" }, { "$ref": "#/components/schemas/session.tool.called" }, { "$ref": "#/components/schemas/session.tool.progress" }, { "$ref": "#/components/schemas/session.tool.success" }, { "$ref": "#/components/schemas/session.tool.failed" }, { "$ref": "#/components/schemas/session.retry.scheduled" }, { "$ref": "#/components/schemas/session.compaction.admitted" }, { "$ref": "#/components/schemas/session.compaction.started" }, { "$ref": "#/components/schemas/session.compaction.delta" }, { "$ref": "#/components/schemas/session.compaction.ended" }, { "$ref": "#/components/schemas/session.compaction.failed" }, { "$ref": "#/components/schemas/session.revert.staged" }, { "$ref": "#/components/schemas/session.revert.cleared" }, { "$ref": "#/components/schemas/session.revert.committed" }, { "$ref": "#/components/schemas/filesystem.changed" }, { "$ref": "#/components/schemas/reference.updated" }, { "$ref": "#/components/schemas/permission.v2.asked" }, { "$ref": "#/components/schemas/permission.v2.replied" }, { "$ref": "#/components/schemas/plugin.added" }, { "$ref": "#/components/schemas/plugin.updated" }, { "$ref": "#/components/schemas/project.directories.updated" }, { "$ref": "#/components/schemas/command.updated" }, { "$ref": "#/components/schemas/config.updated" }, { "$ref": "#/components/schemas/skill.updated" }, { "$ref": "#/components/schemas/pty.created" }, { "$ref": "#/components/schemas/pty.updated" }, { "$ref": "#/components/schemas/pty.exited" }, { "$ref": "#/components/schemas/pty.deleted" }, { "$ref": "#/components/schemas/shell.created" }, { "$ref": "#/components/schemas/shell.exited" }, { "$ref": "#/components/schemas/shell.deleted" }, { "$ref": "#/components/schemas/question.v2.asked" }, { "$ref": "#/components/schemas/question.v2.replied" }, { "$ref": "#/components/schemas/question.v2.rejected" }, { "$ref": "#/components/schemas/form.created" }, { "$ref": "#/components/schemas/form.replied" }, { "$ref": "#/components/schemas/form.cancelled" }, { "$ref": "#/components/schemas/session.status" }, { "$ref": "#/components/schemas/session.idle" }, { "$ref": "#/components/schemas/tui.prompt.append" }, { "$ref": "#/components/schemas/tui.command.execute" }, { "$ref": "#/components/schemas/tui.toast.show" }, { "$ref": "#/components/schemas/tui.session.select" }, { "$ref": "#/components/schemas/installation.updated" }, { "$ref": "#/components/schemas/installation.update-available" }, { "$ref": "#/components/schemas/vcs.branch.updated" }, { "$ref": "#/components/schemas/mcp.status.changed" }, { "$ref": "#/components/schemas/mcp.resources.changed" }, { "$ref": "#/components/schemas/permission.asked" }, { "$ref": "#/components/schemas/permission.replied" }, { "$ref": "#/components/schemas/question.asked" }, { "$ref": "#/components/schemas/question.replied" }, { "$ref": "#/components/schemas/question.rejected" }, { "$ref": "#/components/schemas/session.error" }, { "$ref": "#/components/schemas/V2Event.server.connected" } ] }, "V2EventStream": { "type": "string", "contentSchema": { "$ref": "#/components/schemas/V2Event" }, "contentMediaType": "application/json" }, "PtyNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["PtyNotFoundError"] }, "ptyID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "ptyID", "message"], "additionalProperties": false }, "PtyTicket.ConnectToken": { "type": "object", "properties": { "ticket": { "type": "string" }, "expires_in": { "type": "integer", "allOf": [ { "exclusiveMinimum": 0 } ] } }, "required": ["ticket", "expires_in"], "additionalProperties": false }, "ForbiddenError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["ForbiddenError"] }, "message": { "type": "string" } }, "required": ["_tag", "message"], "additionalProperties": false }, "Shell1": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^sh_" } ] }, "status": { "type": "string", "enum": ["running", "exited", "timeout", "killed"] }, "command": { "type": "string" }, "cwd": { "type": "string" }, "shell": { "type": "string" }, "file": { "type": "string" }, "pid": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "exit": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "metadata": { "type": "object" }, "time": { "type": "object", "properties": { "started": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] }, "completed": { "anyOf": [ { "anyOf": [ { "type": "number" }, { "type": "string", "enum": ["NaN"] }, { "type": "string", "enum": ["Infinity"] }, { "type": "string", "enum": ["-Infinity"] } ] }, { "type": "string", "enum": ["Infinity", "-Infinity", "NaN"] } ] } }, "required": ["started"], "additionalProperties": false } }, "required": ["id", "status", "command", "cwd", "shell", "file", "metadata", "time"], "additionalProperties": false }, "ShellNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["ShellNotFoundError"] }, "id": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "id", "message"], "additionalProperties": false }, "QuestionV2.Request": { "type": "object", "properties": { "id": { "type": "string", "allOf": [ { "pattern": "^que" } ] }, "sessionID": { "type": "string", "allOf": [ { "pattern": "^ses" } ] }, "questions": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Info" }, "description": "Questions to ask" }, "tool": { "$ref": "#/components/schemas/QuestionV2.Tool" } }, "required": ["id", "sessionID", "questions"], "additionalProperties": false }, "QuestionV2.Reply": { "type": "object", "properties": { "answers": { "type": "array", "items": { "$ref": "#/components/schemas/QuestionV2.Answer" }, "description": "User answers in order of questions (each answer is an array of selected labels)" } }, "required": ["answers"], "additionalProperties": false }, "QuestionNotFoundError": { "type": "object", "properties": { "_tag": { "type": "string", "enum": ["QuestionNotFoundError"] }, "requestID": { "type": "string" }, "message": { "type": "string" } }, "required": ["_tag", "requestID", "message"], "additionalProperties": false }, "Reference.LocalSource": { "type": "object", "properties": { "type": { "type": "string", "enum": ["local"] }, "path": { "type": "string" }, "description": { "type": "string" }, "hidden": { "type": "boolean" } }, "required": ["type", "path"], "additionalProperties": false }, "Reference.GitSource": { "type": "object", "properties": { "type": { "type": "string", "enum": ["git"] }, "repository": { "type": "string" }, "branch": { "type": "string" }, "description": { "type": "string" }, "hidden": { "type": "boolean" } }, "required": ["type", "repository"], "additionalProperties": false }, "Reference.Source": { "anyOf": [ { "$ref": "#/components/schemas/Reference.LocalSource" }, { "$ref": "#/components/schemas/Reference.GitSource" } ] }, "Reference.Info": { "type": "object", "properties": { "name": { "type": "string" }, "path": { "type": "string" }, "description": { "type": "string" }, "hidden": { "type": "boolean" }, "source": { "$ref": "#/components/schemas/Reference.Source" } }, "required": ["name", "path", "source"], "additionalProperties": false }, "ProjectCopy.Copy": { "type": "object", "properties": { "directory": { "type": "string" } }, "required": ["directory"], "additionalProperties": false }, "ProjectCopyError": { "type": "object", "properties": { "name": { "type": "string", "enum": ["ProjectCopyError"] }, "data": { "type": "object", "properties": { "message": { "type": "string" }, "forceRequired": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ] } }, "required": ["message"], "additionalProperties": false } }, "required": ["name", "data"], "additionalProperties": false }, "Vcs.FileStatus": { "type": "object", "properties": { "file": { "type": "string" }, "additions": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "deletions": { "type": "integer", "allOf": [ { "minimum": 0 } ] }, "status": { "type": "string", "enum": ["added", "deleted", "modified"] } }, "required": ["file", "additions", "deletions", "status"], "additionalProperties": false }, "Vcs.Mode": { "type": "string", "enum": ["working", "branch"] } }, "securitySchemes": {} }, "security": [], "tags": [ { "name": "health" }, { "name": "server" }, { "name": "location" }, { "name": "agent" }, { "name": "plugin", "description": "Experimental plugin routes." }, { "name": "session", "description": "Experimental session routes." }, { "name": "session", "description": "Experimental message routes." }, { "name": "model", "description": "Experimental model routes." }, { "name": "generate", "description": "Experimental one-shot generation routes." }, { "name": "provider", "description": "Experimental provider routes." }, { "name": "integration", "description": "Integration discovery and authentication routes." }, { "name": "mcp", "description": "MCP server and resource routes." }, { "name": "credential" }, { "name": "project", "description": "Location-scoped project routes." }, { "name": "form", "description": "Session form routes." }, { "name": "permission", "description": "Experimental permission routes." }, { "name": "filesystem", "description": "Experimental location-scoped filesystem routes." }, { "name": "command", "description": "Experimental command routes." }, { "name": "skill", "description": "Experimental skill routes." }, { "name": "event", "description": "Experimental event stream routes." }, { "name": "pty", "description": "Experimental location-scoped PTY routes." }, { "name": "shell", "description": "Experimental location-scoped shell command routes." }, { "name": "question", "description": "Experimental session question routes." }, { "name": "reference", "description": "Location-scoped project references." }, { "name": "projectCopy", "description": "Project copy management routes." }, { "name": "vcs", "description": "Location-scoped version control routes." }, { "name": "debug" } ] }