mirror of
https://github.com/anomalyco/opencode.git
synced 2026-07-10 03:58:29 +00:00
26962 lines
666 KiB
JSON
26962 lines
666 KiB
JSON
{
|
|
"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": [
|
|
"server.health"
|
|
],
|
|
"operationId": "v2.health.get",
|
|
"parameters": [],
|
|
"security": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"healthy": {
|
|
"type": "boolean",
|
|
"enum": [
|
|
true
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"healthy"
|
|
],
|
|
"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/location": {
|
|
"get": {
|
|
"tags": [
|
|
"server.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": [
|
|
"server.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/AgentV2.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": [
|
|
"plugins"
|
|
],
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.create",
|
|
"parameters": [],
|
|
"security": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/components/schemas/SessionV2.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": [
|
|
"sessions"
|
|
],
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"watermarks": {
|
|
"$ref": "#/components/schemas/SessionWatermarks"
|
|
}
|
|
},
|
|
"required": [
|
|
"data",
|
|
"watermarks"
|
|
],
|
|
"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. Watermarks are the durable log positions read alongside the activity snapshot; activity itself is process state, so the pairing is advisory rather than transactional.",
|
|
"summary": "List active sessions"
|
|
}
|
|
},
|
|
"/api/session/{sessionID}": {
|
|
"get": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"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/SessionV2.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"
|
|
}
|
|
},
|
|
"/api/session/{sessionID}/fork": {
|
|
"post": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"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/SessionV2.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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.switchAgent",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.switchModel",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.rename",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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}/prompt": {
|
|
"post": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"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": {
|
|
"$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": [
|
|
"sessions"
|
|
],
|
|
"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": {
|
|
"$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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.skill",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.synthetic",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"required": [
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
}
|
|
}
|
|
},
|
|
"/api/session/{sessionID}/compact": {
|
|
"post": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.compact",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"503": {
|
|
"description": "ServiceUnavailableError",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ServiceUnavailableError"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"description": "Compact a session conversation.",
|
|
"summary": "Compact session"
|
|
}
|
|
},
|
|
"/api/session/{sessionID}/wait": {
|
|
"post": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.wait",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"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/Revert.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": "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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.revert.clear",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.revert.commit",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"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}/context-entry": {
|
|
"get": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.context.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/SessionContextEntry.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 context entries attached to the session's system context.",
|
|
"summary": "List context entries"
|
|
}
|
|
},
|
|
"/api/session/{sessionID}/context-entry/{key}": {
|
|
"put": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.context.entry.put",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "key",
|
|
"in": "path",
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SessionContextEntry.Key"
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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 context entry. The value is rendered into the session's system context; changes announce as updates at the next turn boundary.",
|
|
"summary": "Put context entry",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"value": {}
|
|
},
|
|
"required": [
|
|
"value"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.context.entry.remove",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "key",
|
|
"in": "path",
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SessionContextEntry.Key"
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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 context entry; the removal is announced to the model at the next turn boundary.",
|
|
"summary": "Remove context entry"
|
|
}
|
|
},
|
|
"/api/session/{sessionID}/log": {
|
|
"get": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"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": "Durable, ordered, gap-free read of public session events after an exclusive aggregate sequence. Emits a synced marker once replay reaches the captured watermark, then completes; with follow=true it continues with live events instead. The only event API that promises reliability: attach after a snapshot watermark to compose fetch and stream without a race window.",
|
|
"summary": "Read the session log"
|
|
}
|
|
},
|
|
"/api/session/{sessionID}/interrupt": {
|
|
"post": {
|
|
"tags": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.interrupt",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"operationId": "v2.session.background",
|
|
"parameters": [
|
|
{
|
|
"name": "sessionID",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"sessions"
|
|
],
|
|
"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"
|
|
}
|
|
},
|
|
"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": [
|
|
"messages"
|
|
],
|
|
"operationId": "v2.session.messages",
|
|
"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": [
|
|
"models"
|
|
],
|
|
"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/ModelV2.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": [
|
|
"models"
|
|
],
|
|
"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/ModelV2.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": [
|
|
"providers"
|
|
],
|
|
"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": [
|
|
"providers"
|
|
],
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"integrations"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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/credential/{credentialID}": {
|
|
"patch": {
|
|
"tags": [
|
|
"server.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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"server.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": "<No Content>"
|
|
},
|
|
"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/current": {
|
|
"get": {
|
|
"tags": [
|
|
"projects"
|
|
],
|
|
"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": [
|
|
"projects"
|
|
],
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"forms"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"operationId": "v2.permission.saved.remove",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"required": true
|
|
}
|
|
],
|
|
"security": [],
|
|
"responses": {
|
|
"204": {
|
|
"description": "<No Content>"
|
|
},
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"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": [
|
|
"permissions"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"commands"
|
|
],
|
|
"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/CommandV2.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": [
|
|
"skills"
|
|
],
|
|
"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/SkillV2.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": [
|
|
"events"
|
|
],
|
|
"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. Consumers that need reliability should combine the changes feed with durable session log reads.",
|
|
"summary": "Subscribe to events"
|
|
}
|
|
},
|
|
"/api/event/changes": {
|
|
"get": {
|
|
"tags": [
|
|
"events"
|
|
],
|
|
"operationId": "v2.event.changes",
|
|
"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/EventLog.ChangeStream"
|
|
}
|
|
},
|
|
"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": "Payload-free hint channel: after an event commits, a subscriber eventually receives a hint for that aggregate with seq at or beyond the event, or a sweep-required marker. Hints coalesce to the latest seq per aggregate under backpressure and the stream never fails from overflow. No consumer may derive correctness from receiving a hint; correctness always comes from durable log reads plus the consumer's own checkpoint. A sweep-required marker is emitted first on every (re)subscribe and whenever hint retention is exceeded: treat every aggregate as potentially dirty and recover via bounded sweep plus log reads.",
|
|
"summary": "Subscribe to change hints"
|
|
}
|
|
},
|
|
"/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": "<No Content>"
|
|
},
|
|
"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.connectToken",
|
|
"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",
|
|
"x-websocket": true,
|
|
"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"
|
|
}
|
|
},
|
|
"/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"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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}/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": [
|
|
"session questions"
|
|
],
|
|
"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": [
|
|
"session questions"
|
|
],
|
|
"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": [
|
|
"session questions"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": [
|
|
"session questions"
|
|
],
|
|
"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": "<No Content>"
|
|
},
|
|
"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": "<No Content>"
|
|
},
|
|
"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": "<No Content>"
|
|
},
|
|
"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/SnapshotFileDiff"
|
|
}
|
|
}
|
|
},
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"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": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^#[0-9a-fA-F]{6}$"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"primary",
|
|
"secondary",
|
|
"accent",
|
|
"success",
|
|
"warning",
|
|
"error",
|
|
"info"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"AgentV2.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"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",
|
|
"request",
|
|
"mode",
|
|
"hidden",
|
|
"permissions"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Plugin.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Location.Ref": {
|
|
"type": "object",
|
|
"properties": {
|
|
"directory": {
|
|
"type": "string"
|
|
},
|
|
"workspaceID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^wrk"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"directory"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"File.Diff": {
|
|
"type": "object",
|
|
"properties": {
|
|
"path": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"added",
|
|
"modified",
|
|
"deleted"
|
|
]
|
|
},
|
|
"additions": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"deletions": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"patch": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"path",
|
|
"status",
|
|
"additions",
|
|
"deletions",
|
|
"patch"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Revert.State": {
|
|
"type": "object",
|
|
"properties": {
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"partID": {
|
|
"type": "string"
|
|
},
|
|
"snapshot": {
|
|
"type": "string"
|
|
},
|
|
"diff": {
|
|
"type": "string"
|
|
},
|
|
"files": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/File.Diff"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"messageID"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"SessionV2.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"parentID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"projectID": {
|
|
"type": "string"
|
|
},
|
|
"agent": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"$ref": "#/components/schemas/Model.Ref"
|
|
},
|
|
"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
|
|
},
|
|
"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/Revert.State"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"projectID",
|
|
"cost",
|
|
"tokens",
|
|
"time",
|
|
"title",
|
|
"location"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"SessionWatermarks": {
|
|
"type": "object",
|
|
"patternProperties": {
|
|
"^ses": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"description": "Durable log seq each session's snapshot was computed at. Attach a live log read after the watermark to compose fetch and stream gap-free; apply a snapshot only where its watermark is at or beyond already-applied events. Sessions without durable events are absent."
|
|
},
|
|
"SessionsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/SessionV2.Info"
|
|
}
|
|
},
|
|
"watermarks": {
|
|
"$ref": "#/components/schemas/SessionWatermarks"
|
|
},
|
|
"cursor": {
|
|
"type": "object",
|
|
"properties": {
|
|
"previous": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"next": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"data",
|
|
"watermarks",
|
|
"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.Source": {
|
|
"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"
|
|
},
|
|
"source": {
|
|
"$ref": "#/components/schemas/Prompt.Source"
|
|
}
|
|
},
|
|
"required": [
|
|
"uri"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Prompt.AgentAttachment": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"source": {
|
|
"$ref": "#/components/schemas/Prompt.Source"
|
|
}
|
|
},
|
|
"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.FileAttachment": {
|
|
"type": "object",
|
|
"properties": {
|
|
"uri": {
|
|
"type": "string"
|
|
},
|
|
"mime": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"source": {
|
|
"$ref": "#/components/schemas/Prompt.Source"
|
|
}
|
|
},
|
|
"required": [
|
|
"uri",
|
|
"mime"
|
|
],
|
|
"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
|
|
},
|
|
"SessionBusyError": {
|
|
"type": "object",
|
|
"properties": {
|
|
"_tag": {
|
|
"type": "string",
|
|
"enum": [
|
|
"SessionBusyError"
|
|
]
|
|
},
|
|
"sessionID": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"_tag",
|
|
"sessionID",
|
|
"message"
|
|
],
|
|
"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
|
|
},
|
|
"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.AgentSwitched": {
|
|
"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.ModelSwitched": {
|
|
"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"
|
|
}
|
|
},
|
|
"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
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"synthetic"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"time",
|
|
"sessionID",
|
|
"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"
|
|
]
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"time",
|
|
"type",
|
|
"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"
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"command": {
|
|
"type": "string"
|
|
},
|
|
"output": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"time",
|
|
"type",
|
|
"callID",
|
|
"command",
|
|
"output"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Session.Message.Assistant.Text": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"text"
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"id",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LLM.ProviderMetadata": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"Session.Message.Assistant.Reasoning": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"reasoning"
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"providerMetadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata"
|
|
},
|
|
"time": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created": {
|
|
"type": "number"
|
|
},
|
|
"completed": {
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"created"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"id",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Session.Message.ToolState.Pending": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pending"
|
|
]
|
|
},
|
|
"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"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Prompt.FileAttachment"
|
|
}
|
|
},
|
|
"content": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/LLM.ToolContent"
|
|
}
|
|
},
|
|
"outputPaths": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"structured": {
|
|
"type": "object"
|
|
},
|
|
"result": {}
|
|
},
|
|
"required": [
|
|
"status",
|
|
"input",
|
|
"content",
|
|
"structured"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Session.Error.Unknown": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"unknown"
|
|
]
|
|
},
|
|
"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.Error.Unknown"
|
|
},
|
|
"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"
|
|
},
|
|
"provider": {
|
|
"type": "object",
|
|
"properties": {
|
|
"executed": {
|
|
"type": "boolean"
|
|
},
|
|
"metadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata"
|
|
},
|
|
"resultMetadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata"
|
|
}
|
|
},
|
|
"required": [
|
|
"executed"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"state": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Session.Message.ToolState.Pending"
|
|
},
|
|
{
|
|
"$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"
|
|
},
|
|
"pruned": {
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"created"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"id",
|
|
"name",
|
|
"state",
|
|
"time"
|
|
],
|
|
"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"
|
|
},
|
|
"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
|
|
},
|
|
"error": {
|
|
"$ref": "#/components/schemas/Session.Error.Unknown"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"time",
|
|
"type",
|
|
"agent",
|
|
"model",
|
|
"content"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Session.Message.Compaction": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"compaction"
|
|
]
|
|
},
|
|
"reason": {
|
|
"type": "string",
|
|
"enum": [
|
|
"auto",
|
|
"manual"
|
|
]
|
|
},
|
|
"summary": {
|
|
"type": "string"
|
|
},
|
|
"recent": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"time": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created": {
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"created"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"reason",
|
|
"summary",
|
|
"recent",
|
|
"id",
|
|
"time"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Session.Message": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Session.Message.AgentSwitched"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/Session.Message.ModelSwitched"
|
|
},
|
|
{
|
|
"$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"
|
|
}
|
|
]
|
|
},
|
|
"SessionContextEntry.Key": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^[a-z0-9][a-z0-9._-]*$",
|
|
"description": "Context entry key (lowercase alphanumerics plus . _ -)"
|
|
}
|
|
]
|
|
},
|
|
"SessionContextEntry.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"$ref": "#/components/schemas/SessionContextEntry.Key"
|
|
},
|
|
"value": {}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"value"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.agent.switched": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.agent.switched"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"agent": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"agent"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.model.switched": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.model.switched"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"model": {
|
|
"$ref": "#/components/schemas/Model.Ref"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"model"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.moved": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.moved"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"subdirectory": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"location"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.renamed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.renamed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"title"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.forked": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.forked"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"parentID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"parentID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.prompted": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.prompted"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"prompt": {
|
|
"$ref": "#/components/schemas/Prompt"
|
|
},
|
|
"delivery": {
|
|
"type": "string",
|
|
"enum": [
|
|
"steer",
|
|
"queue"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"prompt",
|
|
"delivery"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.prompt.admitted": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.prompt.admitted"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"prompt": {
|
|
"$ref": "#/components/schemas/Prompt"
|
|
},
|
|
"delivery": {
|
|
"type": "string",
|
|
"enum": [
|
|
"steer",
|
|
"queue"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"prompt",
|
|
"delivery"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.context.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.context.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.synthetic": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.synthetic"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.skill.activated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.skill.activated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"name",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.shell.started": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.shell.started"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"command": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"callID",
|
|
"command"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.shell.ended": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.shell.ended"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"output": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"callID",
|
|
"output"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.step.started": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.step.started"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"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": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"agent",
|
|
"model"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.step.ended": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.step.ended"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"finish": {
|
|
"type": "string"
|
|
},
|
|
"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
|
|
},
|
|
"snapshot": {
|
|
"type": "string"
|
|
},
|
|
"files": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"finish",
|
|
"cost",
|
|
"tokens"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.step.failed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.step.failed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"error": {
|
|
"$ref": "#/components/schemas/Session.Error.Unknown"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"error"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.text.started": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.text.started"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"textID": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"textID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.text.ended": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.text.ended"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"textID": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"textID",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.tool.input.started": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.input.started"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"name"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.tool.input.ended": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.input.ended"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LLM.ProviderMetadata3": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"session.next.tool.called": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.called"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"tool": {
|
|
"type": "string"
|
|
},
|
|
"input": {
|
|
"type": "object"
|
|
},
|
|
"provider": {
|
|
"type": "object",
|
|
"properties": {
|
|
"executed": {
|
|
"type": "boolean"
|
|
},
|
|
"metadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata3"
|
|
}
|
|
},
|
|
"required": [
|
|
"executed"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"tool",
|
|
"input",
|
|
"provider"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.tool.progress": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.progress"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"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": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"structured",
|
|
"content"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LLM.ProviderMetadata4": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"session.next.tool.success": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.success"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"outputPaths": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"result": {},
|
|
"provider": {
|
|
"type": "object",
|
|
"properties": {
|
|
"executed": {
|
|
"type": "boolean"
|
|
},
|
|
"metadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata4"
|
|
}
|
|
},
|
|
"required": [
|
|
"executed"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"structured",
|
|
"content",
|
|
"provider"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LLM.ProviderMetadata5": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"session.next.tool.failed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.failed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"error": {
|
|
"$ref": "#/components/schemas/Session.Error.Unknown"
|
|
},
|
|
"result": {},
|
|
"provider": {
|
|
"type": "object",
|
|
"properties": {
|
|
"executed": {
|
|
"type": "boolean"
|
|
},
|
|
"metadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata5"
|
|
}
|
|
},
|
|
"required": [
|
|
"executed"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"error",
|
|
"provider"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LLM.ProviderMetadata6": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"session.next.reasoning.started": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.reasoning.started"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"reasoningID": {
|
|
"type": "string"
|
|
},
|
|
"providerMetadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata6"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"reasoningID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LLM.ProviderMetadata7": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"session.next.reasoning.ended": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.reasoning.ended"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"reasoningID": {
|
|
"type": "string"
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"providerMetadata": {
|
|
"$ref": "#/components/schemas/LLM.ProviderMetadata7"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"reasoningID",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.retry_error": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"statusCode": {
|
|
"type": "number"
|
|
},
|
|
"isRetryable": {
|
|
"type": "boolean"
|
|
},
|
|
"responseHeaders": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"responseBody": {
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"message",
|
|
"isRetryable"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.retried": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.retried"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"attempt": {
|
|
"type": "number"
|
|
},
|
|
"error": {
|
|
"$ref": "#/components/schemas/session.next.retry_error"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"attempt",
|
|
"error"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.compaction.started": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.compaction.started"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"reason": {
|
|
"type": "string",
|
|
"enum": [
|
|
"auto",
|
|
"manual"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"reason"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.compaction.ended": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.compaction.ended"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"reason": {
|
|
"type": "string",
|
|
"enum": [
|
|
"auto",
|
|
"manual"
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"recent": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"reason",
|
|
"text",
|
|
"recent"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.revert.staged": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.revert.staged"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"revert": {
|
|
"$ref": "#/components/schemas/Revert.State"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"revert"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.revert.cleared": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.revert.cleared"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.revert.committed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.revert.committed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"SessionDurableEvent": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/session.next.agent.switched"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.model.switched"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.moved"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.renamed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.forked"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.prompted"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.prompt.admitted"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.context.updated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.synthetic"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.skill.activated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.shell.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.shell.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.step.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.step.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.step.failed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.text.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.text.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.input.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.input.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.called"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.progress"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.success"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.failed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.reasoning.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.reasoning.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.retried"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.compaction.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.compaction.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.revert.staged"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.revert.cleared"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.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/SessionDurableEvent"
|
|
},
|
|
{
|
|
"$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"
|
|
}
|
|
},
|
|
"watermark": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"cursor": {
|
|
"type": "object",
|
|
"properties": {
|
|
"previous": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"next": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"data",
|
|
"cursor"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Model.Api": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"aisdk"
|
|
]
|
|
},
|
|
"package": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"settings": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"package"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"native"
|
|
]
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"settings": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"settings"
|
|
],
|
|
"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.Cost": {
|
|
"type": "object",
|
|
"properties": {
|
|
"tier": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"context"
|
|
]
|
|
},
|
|
"size": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"size"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"input": {
|
|
"type": "number"
|
|
},
|
|
"output": {
|
|
"type": "number"
|
|
},
|
|
"cache": {
|
|
"type": "object",
|
|
"properties": {
|
|
"read": {
|
|
"type": "number"
|
|
},
|
|
"write": {
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"read",
|
|
"write"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"input",
|
|
"output",
|
|
"cache"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"ModelV2.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"providerID": {
|
|
"type": "string"
|
|
},
|
|
"family": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"api": {
|
|
"$ref": "#/components/schemas/Model.Api"
|
|
},
|
|
"capabilities": {
|
|
"$ref": "#/components/schemas/Model.Capabilities"
|
|
},
|
|
"request": {
|
|
"type": "object",
|
|
"properties": {
|
|
"settings": {
|
|
"$ref": "#/components/schemas/Provider.Settings"
|
|
},
|
|
"headers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"body": {
|
|
"type": "object"
|
|
},
|
|
"variant": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"settings",
|
|
"headers",
|
|
"body"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"variants": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"settings": {
|
|
"$ref": "#/components/schemas/Provider.Settings"
|
|
},
|
|
"headers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"body": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"settings",
|
|
"headers",
|
|
"body"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"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",
|
|
"providerID",
|
|
"name",
|
|
"api",
|
|
"capabilities",
|
|
"request",
|
|
"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
|
|
},
|
|
"Provider.AISDK": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"aisdk"
|
|
]
|
|
},
|
|
"package": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"settings": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"package"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Provider.Native": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"native"
|
|
]
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"settings": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"settings"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Provider.Api": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Provider.AISDK"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/Provider.Native"
|
|
}
|
|
]
|
|
},
|
|
"ProviderV2.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"integrationID": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"disabled": {
|
|
"type": "boolean"
|
|
},
|
|
"api": {
|
|
"$ref": "#/components/schemas/Provider.Api"
|
|
},
|
|
"request": {
|
|
"$ref": "#/components/schemas/Provider.Request"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"api",
|
|
"request"
|
|
],
|
|
"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.Disconnected": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"disconnected"
|
|
]
|
|
}
|
|
},
|
|
"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.Disconnected"
|
|
},
|
|
{
|
|
"$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
|
|
},
|
|
"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",
|
|
"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",
|
|
"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": [
|
|
"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
|
|
},
|
|
"CommandV2.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
|
|
},
|
|
"SkillV2.Info": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"slash": {
|
|
"type": "boolean"
|
|
},
|
|
"autoinvoke": {
|
|
"type": "boolean"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"content": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"location",
|
|
"content"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"models-dev.refreshed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"models-dev.refreshed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"integration.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"integration.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"integration.connection.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"integration.connection.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"integrationID": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"integrationID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"catalog.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"catalog.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"agent.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"agent.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"SnapshotFileDiff": {
|
|
"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"
|
|
}
|
|
},
|
|
"Session": {
|
|
"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/SnapshotFileDiff"
|
|
}
|
|
}
|
|
},
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.created"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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/Session"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionID",
|
|
"info"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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/Session"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionID",
|
|
"info"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.deleted": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.deleted"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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/Session"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionID",
|
|
"info"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"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/SnapshotFileDiff"
|
|
}
|
|
}
|
|
},
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"message.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"message.removed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"message.removed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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",
|
|
"type",
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"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": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"message.part.removed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"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": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.execution.settled": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.execution.settled"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"outcome": {
|
|
"type": "string",
|
|
"enum": [
|
|
"success",
|
|
"failure",
|
|
"interrupted"
|
|
]
|
|
},
|
|
"error": {
|
|
"$ref": "#/components/schemas/Session.Error.Unknown"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"outcome"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.text.delta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.text.delta"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"textID": {
|
|
"type": "string"
|
|
},
|
|
"delta": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"textID",
|
|
"delta"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.reasoning.delta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.reasoning.delta"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"reasoningID": {
|
|
"type": "string"
|
|
},
|
|
"delta": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"reasoningID",
|
|
"delta"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.tool.input.delta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.tool.input.delta"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"assistantMessageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"callID": {
|
|
"type": "string"
|
|
},
|
|
"delta": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"assistantMessageID",
|
|
"callID",
|
|
"delta"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.next.compaction.delta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.next.compaction.delta"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "number"
|
|
},
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"messageID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^msg_"
|
|
}
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"timestamp",
|
|
"sessionID",
|
|
"messageID",
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"file.edited": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"file.edited"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"file"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"reference.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"reference.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"permission.v2.asked": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"permission.v2.asked"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"permission.v2.replied": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"permission.v2.replied"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"plugin.added": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"plugin.added"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"project.directories.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"project.directories.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"projectID": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"projectID"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"command.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"command.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"skill.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"skill.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "array"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"file.watcher.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"file.watcher.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pty.created"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"info": {
|
|
"$ref": "#/components/schemas/Pty"
|
|
}
|
|
},
|
|
"required": [
|
|
"info"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"pty.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pty.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"info": {
|
|
"$ref": "#/components/schemas/Pty"
|
|
}
|
|
},
|
|
"required": [
|
|
"info"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"pty.exited": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pty.exited"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"pty.deleted": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pty.deleted"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^pty"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"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
|
|
},
|
|
"shell.created": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"shell.created"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"info": {
|
|
"$ref": "#/components/schemas/Shell"
|
|
}
|
|
},
|
|
"required": [
|
|
"info"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"shell.exited": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"shell.exited"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"shell.deleted": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"shell.deleted"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^sh_"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"question.v2.asked"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"QuestionV2.Answer": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"question.v2.replied": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"question.v2.replied"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"question.v2.rejected": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"question.v2.rejected"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"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",
|
|
"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",
|
|
"mode",
|
|
"url"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"form.created": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"form.created"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"form.replied"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"form.cancelled": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"form.cancelled"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"Todo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"content": {
|
|
"type": "string",
|
|
"description": "Brief description of the task"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "Current status of the task: pending, in_progress, completed, cancelled"
|
|
},
|
|
"priority": {
|
|
"type": "string",
|
|
"description": "Priority level of the task: high, medium, low"
|
|
}
|
|
},
|
|
"required": [
|
|
"content",
|
|
"status",
|
|
"priority"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"todo.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"todo.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionID": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^ses"
|
|
}
|
|
]
|
|
},
|
|
"todos": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Todo"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionID",
|
|
"todos"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.status"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.idle": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.idle"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"tui.prompt.append": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"tui.prompt.append"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"text"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"tui.command.execute": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"tui.command.execute"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"tui.toast.show": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"tui.toast.show"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"tui.session.select": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"tui.session.select"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"installation.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"installation.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"version": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"installation.update-available": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"installation.update-available"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"version": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"vcs.branch.updated": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"vcs.branch.updated"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"branch": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"mcp.status.changed": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"mcp.status.changed"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"location": {
|
|
"$ref": "#/components/schemas/Location.Ref"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"server": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"server"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"permission.asked": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"permission.asked"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"permission.replied": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"permission.replied"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"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_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"question.asked"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"QuestionAnswer": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"question.replied": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"question.replied"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"question.rejected": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"question.rejected"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"session.error": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"session.error"
|
|
]
|
|
},
|
|
"durable": {
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"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",
|
|
"type",
|
|
"data"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"V2Event.server.connected": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"allOf": [
|
|
{
|
|
"pattern": "^evt_"
|
|
}
|
|
]
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"durable": {
|
|
"anyOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 1
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"aggregateID",
|
|
"seq",
|
|
"version"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"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.deleted"
|
|
},
|
|
{
|
|
"$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.next.agent.switched"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.model.switched"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.moved"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.renamed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.forked"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.prompted"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.prompt.admitted"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.execution.settled"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.context.updated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.synthetic"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.skill.activated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.shell.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.shell.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.step.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.step.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.step.failed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.text.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.text.delta"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.text.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.reasoning.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.reasoning.delta"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.reasoning.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.input.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.input.delta"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.input.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.called"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.progress"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.success"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.tool.failed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.retried"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.compaction.started"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.compaction.delta"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.compaction.ended"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.revert.staged"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.revert.cleared"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/session.next.revert.committed"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/file.edited"
|
|
},
|
|
{
|
|
"$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/project.directories.updated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/command.updated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/skill.updated"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/file.watcher.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/todo.updated"
|
|
},
|
|
{
|
|
"$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/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"
|
|
},
|
|
"EventLog.Hint": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"log.hint"
|
|
]
|
|
},
|
|
"aggregateID": {
|
|
"type": "string"
|
|
},
|
|
"seq": {
|
|
"type": "integer",
|
|
"allOf": [
|
|
{
|
|
"minimum": 0
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"aggregateID",
|
|
"seq"
|
|
],
|
|
"additionalProperties": false,
|
|
"description": "Payload-free change hint: the aggregate's durable log advanced to at least seq. Hints coalesce under backpressure (latest per aggregate) and are never a delivery guarantee."
|
|
},
|
|
"EventLog.SweepRequired": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"log.sweep_required"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"additionalProperties": false,
|
|
"description": "Hints may have been lost; treat every aggregate as potentially dirty and recover via bounded sweep plus durable log reads. Emitted first on every (re)subscribe."
|
|
},
|
|
"EventLog.Change": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EventLog.Hint"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/EventLog.SweepRequired"
|
|
}
|
|
]
|
|
},
|
|
"EventLog.ChangeStream": {
|
|
"type": "string",
|
|
"contentSchema": {
|
|
"$ref": "#/components/schemas/EventLog.Change"
|
|
},
|
|
"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": "server.health"
|
|
},
|
|
{
|
|
"name": "server.location"
|
|
},
|
|
{
|
|
"name": "server.agent"
|
|
},
|
|
{
|
|
"name": "plugins",
|
|
"description": "Experimental plugin routes."
|
|
},
|
|
{
|
|
"name": "sessions",
|
|
"description": "Experimental session routes."
|
|
},
|
|
{
|
|
"name": "messages",
|
|
"description": "Experimental message routes."
|
|
},
|
|
{
|
|
"name": "models",
|
|
"description": "Experimental model routes."
|
|
},
|
|
{
|
|
"name": "generate",
|
|
"description": "Experimental one-shot generation routes."
|
|
},
|
|
{
|
|
"name": "providers",
|
|
"description": "Experimental provider routes."
|
|
},
|
|
{
|
|
"name": "integrations",
|
|
"description": "Integration discovery and authentication routes."
|
|
},
|
|
{
|
|
"name": "mcp",
|
|
"description": "MCP server status routes."
|
|
},
|
|
{
|
|
"name": "server.credential"
|
|
},
|
|
{
|
|
"name": "projects",
|
|
"description": "Location-scoped project routes."
|
|
},
|
|
{
|
|
"name": "forms",
|
|
"description": "Session form routes."
|
|
},
|
|
{
|
|
"name": "permissions",
|
|
"description": "Experimental permission routes."
|
|
},
|
|
{
|
|
"name": "filesystem",
|
|
"description": "Experimental location-scoped filesystem routes."
|
|
},
|
|
{
|
|
"name": "commands",
|
|
"description": "Experimental command routes."
|
|
},
|
|
{
|
|
"name": "skills",
|
|
"description": "Experimental skill routes."
|
|
},
|
|
{
|
|
"name": "events",
|
|
"description": "Experimental event stream routes."
|
|
},
|
|
{
|
|
"name": "pty",
|
|
"description": "Experimental location-scoped PTY routes."
|
|
},
|
|
{
|
|
"name": "shell",
|
|
"description": "Experimental location-scoped shell command routes."
|
|
},
|
|
{
|
|
"name": "session questions",
|
|
"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."
|
|
}
|
|
]
|
|
}
|