3401 lines
89 KiB
JSON
3401 lines
89 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"title": "GooseExtensions",
|
|
"$defs": {
|
|
"AddExtensionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"config": {
|
|
"description": "Extension configuration (see ExtensionConfig variants: Stdio, StreamableHttp, Builtin, Platform).",
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "Add an extension to an active session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/extensions/add"
|
|
},
|
|
"EmptyResponse": {
|
|
"type": "object",
|
|
"description": "Empty success response for operations that return no data.",
|
|
"x-side": "agent"
|
|
},
|
|
"RemoveExtensionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId",
|
|
"name"
|
|
],
|
|
"description": "Remove an extension from an active session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/extensions/remove"
|
|
},
|
|
"GetToolsRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "List all tools available in a session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/tools"
|
|
},
|
|
"GetToolsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"tools": {
|
|
"type": "array",
|
|
"items": {},
|
|
"description": "Array of tool info objects with `name`, `description`, `parameters`, and optional `permission`."
|
|
}
|
|
},
|
|
"required": [
|
|
"tools"
|
|
],
|
|
"description": "Tools response.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/tools"
|
|
},
|
|
"GooseToolCallRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"arguments": {
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId",
|
|
"name"
|
|
],
|
|
"description": "Call a tool from an extension.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/tool/call"
|
|
},
|
|
"GooseToolCallResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"content": {
|
|
"type": "array",
|
|
"items": {},
|
|
"default": []
|
|
},
|
|
"structuredContent": {},
|
|
"isError": {
|
|
"type": "boolean"
|
|
},
|
|
"_meta": {}
|
|
},
|
|
"required": [
|
|
"isError"
|
|
],
|
|
"description": "Tool call response.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/tool/call"
|
|
},
|
|
"ReadResourceRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"uri": {
|
|
"type": "string"
|
|
},
|
|
"extensionName": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId",
|
|
"uri",
|
|
"extensionName"
|
|
],
|
|
"description": "Read a resource from an extension.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/resource/read"
|
|
},
|
|
"ReadResourceResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"result": {
|
|
"description": "The resource result from the extension (MCP ReadResourceResult).",
|
|
"default": null
|
|
}
|
|
},
|
|
"description": "Resource read response.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/resource/read"
|
|
},
|
|
"UpdateWorkingDirRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"workingDir": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId",
|
|
"workingDir"
|
|
],
|
|
"description": "Update the working directory for a session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/working_dir/update"
|
|
},
|
|
"DeleteSessionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "Delete a session.",
|
|
"x-side": "agent",
|
|
"x-method": "session/delete"
|
|
},
|
|
"GetExtensionsRequest": {
|
|
"type": "object",
|
|
"description": "List configured extensions and any warnings.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/config/extensions"
|
|
},
|
|
"GetExtensionsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"extensions": {
|
|
"type": "array",
|
|
"items": {},
|
|
"description": "Array of ExtensionEntry objects with `enabled` flag, `configKey`, and flattened config details."
|
|
},
|
|
"warnings": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"extensions",
|
|
"warnings"
|
|
],
|
|
"description": "List configured extensions and any warnings.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/config/extensions"
|
|
},
|
|
"AddConfigExtensionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"extensionConfig": {
|
|
"description": "Extension configuration. Must be a JSON object matching one of the\n`ExtensionConfig` variants (e.g. `stdio`, `streamable_http`, `builtin`).\n`name` and `enabled` are injected server-side.",
|
|
"default": null
|
|
},
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"default": false
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"description": "Persist a new extension to the user's global goose config.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/config/extensions/add"
|
|
},
|
|
"RemoveConfigExtensionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"configKey": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"configKey"
|
|
],
|
|
"description": "Remove a persisted extension from the user's global goose config.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/config/extensions/remove"
|
|
},
|
|
"ToggleConfigExtensionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"configKey": {
|
|
"type": "string"
|
|
},
|
|
"enabled": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"configKey",
|
|
"enabled"
|
|
],
|
|
"description": "Toggle the `enabled` flag for a persisted extension in the user's global goose config.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/config/extensions/toggle"
|
|
},
|
|
"GetSessionExtensionsRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/extensions"
|
|
},
|
|
"GetSessionExtensionsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"extensions": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
},
|
|
"required": [
|
|
"extensions"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/extensions"
|
|
},
|
|
"ListProvidersRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerIds": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Only return entries for these providers. Empty means all.",
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "List providers with setup metadata and the current model inventory snapshot.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/list"
|
|
},
|
|
"ListProvidersResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"entries": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderInventoryEntryDto"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"entries"
|
|
],
|
|
"description": "Provider list response.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/list"
|
|
},
|
|
"ProviderInventoryEntryDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string",
|
|
"description": "Provider identifier."
|
|
},
|
|
"providerName": {
|
|
"type": "string",
|
|
"description": "Human-readable provider name."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Description of the provider's capabilities."
|
|
},
|
|
"defaultModel": {
|
|
"type": "string",
|
|
"description": "The default/recommended model for this provider."
|
|
},
|
|
"configured": {
|
|
"type": "boolean",
|
|
"description": "Whether Goose has enough configuration to use this provider."
|
|
},
|
|
"providerType": {
|
|
"type": "string",
|
|
"description": "Provider classification such as `Preferred`, `Builtin`, `Declarative`, or `Custom`."
|
|
},
|
|
"category": {
|
|
"$ref": "#/$defs/ProviderSetupCategoryDto",
|
|
"description": "Whether this inventory entry represents an agent provider or a model provider."
|
|
},
|
|
"configKeys": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderConfigKey"
|
|
},
|
|
"description": "Required configuration keys and setup metadata."
|
|
},
|
|
"setupSteps": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Step-by-step setup instructions, when present."
|
|
},
|
|
"supportsRefresh": {
|
|
"type": "boolean",
|
|
"description": "Whether this provider supports background inventory refresh."
|
|
},
|
|
"refreshing": {
|
|
"type": "boolean",
|
|
"description": "Whether a refresh is currently in flight."
|
|
},
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderInventoryModelDto"
|
|
},
|
|
"description": "The list of available models."
|
|
},
|
|
"lastUpdatedAt": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "When this entry was last successfully refreshed (ISO 8601)."
|
|
},
|
|
"lastRefreshAttemptAt": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "When a refresh was most recently attempted (ISO 8601)."
|
|
},
|
|
"lastRefreshError": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "The last refresh failure message, if any."
|
|
},
|
|
"stale": {
|
|
"type": "boolean",
|
|
"description": "Whether we believe this data may be outdated."
|
|
},
|
|
"modelSelectionHint": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "Guidance message shown when this provider manages its own model selection externally."
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"providerName",
|
|
"description",
|
|
"defaultModel",
|
|
"configured",
|
|
"providerType",
|
|
"category",
|
|
"configKeys",
|
|
"setupSteps",
|
|
"supportsRefresh",
|
|
"refreshing",
|
|
"models",
|
|
"stale"
|
|
],
|
|
"description": "Provider inventory entry."
|
|
},
|
|
"ProviderSetupCategoryDto": {
|
|
"type": "string",
|
|
"enum": [
|
|
"agent",
|
|
"model"
|
|
]
|
|
},
|
|
"ProviderConfigKey": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"required": {
|
|
"type": "boolean"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"default": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"default": null
|
|
},
|
|
"oauthFlow": {
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"deviceCodeFlow": {
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"primary": {
|
|
"type": "boolean",
|
|
"default": false
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"required",
|
|
"secret"
|
|
]
|
|
},
|
|
"ProviderInventoryModelDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Model identifier as the provider knows it."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Human-readable display name."
|
|
},
|
|
"family": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "Model family for grouping in UI."
|
|
},
|
|
"contextLimit": {
|
|
"type": [
|
|
"integer",
|
|
"null"
|
|
],
|
|
"format": "uint",
|
|
"minimum": 0,
|
|
"description": "Context window size in tokens."
|
|
},
|
|
"reasoning": {
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
],
|
|
"description": "Whether the model supports reasoning/extended thinking."
|
|
},
|
|
"recommended": {
|
|
"type": "boolean",
|
|
"description": "Whether this model should appear in the compact recommended picker.",
|
|
"default": false
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name"
|
|
],
|
|
"description": "A single model in provider inventory."
|
|
},
|
|
"ProviderCatalogListRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"format": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"description": "List custom-provider catalog entries. Omit `format` to list all formats.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/catalog/list"
|
|
},
|
|
"ProviderCatalogListResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providers": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderTemplateCatalogEntryDto"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"providers"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/catalog/list"
|
|
},
|
|
"ProviderTemplateCatalogEntryDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"format": {
|
|
"type": "string"
|
|
},
|
|
"apiUrl": {
|
|
"type": "string"
|
|
},
|
|
"modelCount": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"docUrl": {
|
|
"type": "string"
|
|
},
|
|
"envVar": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"name",
|
|
"format",
|
|
"apiUrl",
|
|
"modelCount",
|
|
"docUrl",
|
|
"envVar"
|
|
]
|
|
},
|
|
"ProviderSetupCatalogListRequest": {
|
|
"type": "object",
|
|
"description": "List provider setup catalog entries",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/setup/catalog/list"
|
|
},
|
|
"ProviderSetupCatalogListResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providers": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderSetupCatalogEntryDto"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"providers"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/setup/catalog/list"
|
|
},
|
|
"ProviderSetupCatalogEntryDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"category": {
|
|
"$ref": "#/$defs/ProviderSetupCategoryDto"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"setupMethod": {
|
|
"$ref": "#/$defs/ProviderSetupMethodDto"
|
|
},
|
|
"nativeConnectQuery": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"fields": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderSetupFieldDto"
|
|
},
|
|
"default": []
|
|
},
|
|
"binaryName": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"docUrl": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"group": {
|
|
"$ref": "#/$defs/ProviderSetupGroupDto"
|
|
},
|
|
"showOnlyWhenInstalled": {
|
|
"type": "boolean"
|
|
},
|
|
"aliases": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"supportsInstall": {
|
|
"type": "boolean"
|
|
},
|
|
"supportsAuth": {
|
|
"type": "boolean"
|
|
},
|
|
"supportsAuthStatus": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"name",
|
|
"category",
|
|
"description",
|
|
"setupMethod",
|
|
"group",
|
|
"showOnlyWhenInstalled",
|
|
"supportsInstall",
|
|
"supportsAuth",
|
|
"supportsAuthStatus"
|
|
]
|
|
},
|
|
"ProviderSetupMethodDto": {
|
|
"type": "string",
|
|
"enum": [
|
|
"none",
|
|
"single_api_key",
|
|
"config_fields",
|
|
"host_with_oauth_fallback",
|
|
"oauth_browser",
|
|
"oauth_device_code",
|
|
"cloud_credentials",
|
|
"local",
|
|
"cli_auth"
|
|
]
|
|
},
|
|
"ProviderSetupFieldDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"secret": {
|
|
"type": "boolean"
|
|
},
|
|
"required": {
|
|
"type": "boolean"
|
|
},
|
|
"placeholder": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"defaultValue": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"label",
|
|
"secret",
|
|
"required"
|
|
]
|
|
},
|
|
"ProviderSetupGroupDto": {
|
|
"type": "string",
|
|
"enum": [
|
|
"default",
|
|
"additional"
|
|
]
|
|
},
|
|
"ProviderCatalogTemplateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Return the editable template for one catalog provider.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/catalog/template"
|
|
},
|
|
"ProviderCatalogTemplateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"template": {
|
|
"$ref": "#/$defs/ProviderTemplateDto"
|
|
}
|
|
},
|
|
"required": [
|
|
"template"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/catalog/template"
|
|
},
|
|
"ProviderTemplateDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"format": {
|
|
"type": "string"
|
|
},
|
|
"apiUrl": {
|
|
"type": "string"
|
|
},
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderTemplateModelDto"
|
|
}
|
|
},
|
|
"supportsStreaming": {
|
|
"type": "boolean"
|
|
},
|
|
"envVar": {
|
|
"type": "string"
|
|
},
|
|
"docUrl": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"name",
|
|
"format",
|
|
"apiUrl",
|
|
"models",
|
|
"supportsStreaming",
|
|
"envVar",
|
|
"docUrl"
|
|
]
|
|
},
|
|
"ProviderTemplateModelDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"contextLimit": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"capabilities": {
|
|
"$ref": "#/$defs/ProviderTemplateCapabilitiesDto"
|
|
},
|
|
"deprecated": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"contextLimit",
|
|
"capabilities",
|
|
"deprecated"
|
|
]
|
|
},
|
|
"ProviderTemplateCapabilitiesDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"toolCall": {
|
|
"type": "boolean"
|
|
},
|
|
"reasoning": {
|
|
"type": "boolean"
|
|
},
|
|
"attachment": {
|
|
"type": "boolean"
|
|
},
|
|
"temperature": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"toolCall",
|
|
"reasoning",
|
|
"attachment",
|
|
"temperature"
|
|
]
|
|
},
|
|
"CustomProviderCreateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"engine": {
|
|
"type": "string"
|
|
},
|
|
"displayName": {
|
|
"type": "string"
|
|
},
|
|
"apiUrl": {
|
|
"type": "string"
|
|
},
|
|
"apiKey": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"supportsStreaming": {
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
},
|
|
"headers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"default": {}
|
|
},
|
|
"requiresAuth": {
|
|
"type": "boolean"
|
|
},
|
|
"catalogProviderId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"basePath": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"engine",
|
|
"displayName",
|
|
"apiUrl",
|
|
"requiresAuth"
|
|
],
|
|
"description": "Create a custom provider backed by Goose's declarative provider store.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/create"
|
|
},
|
|
"CustomProviderCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"$ref": "#/$defs/ProviderConfigStatusDto"
|
|
},
|
|
"refresh": {
|
|
"$ref": "#/$defs/RefreshProviderInventoryResponse"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"status",
|
|
"refresh"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/create"
|
|
},
|
|
"ProviderConfigStatusDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"isConfigured": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"isConfigured"
|
|
]
|
|
},
|
|
"RefreshProviderInventoryResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"started": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Which providers will be refreshed."
|
|
},
|
|
"skipped": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/RefreshProviderInventorySkipDto"
|
|
},
|
|
"description": "Which providers were skipped and why.",
|
|
"default": []
|
|
}
|
|
},
|
|
"required": [
|
|
"started"
|
|
],
|
|
"description": "Refresh acknowledgement.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/inventory/refresh"
|
|
},
|
|
"RefreshProviderInventorySkipDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"$ref": "#/$defs/RefreshProviderInventorySkipReasonDto"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"reason"
|
|
]
|
|
},
|
|
"RefreshProviderInventorySkipReasonDto": {
|
|
"type": "string",
|
|
"enum": [
|
|
"unknown_provider",
|
|
"not_configured",
|
|
"does_not_support_refresh",
|
|
"already_refreshing"
|
|
]
|
|
},
|
|
"CustomProviderReadRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Read a declarative provider config. Custom configs are editable; bundled configs are read-only.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/read"
|
|
},
|
|
"CustomProviderReadResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"provider": {
|
|
"$ref": "#/$defs/CustomProviderConfigDto"
|
|
},
|
|
"editable": {
|
|
"type": "boolean"
|
|
},
|
|
"status": {
|
|
"$ref": "#/$defs/ProviderConfigStatusDto"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider",
|
|
"editable",
|
|
"status"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/read"
|
|
},
|
|
"CustomProviderConfigDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"engine": {
|
|
"type": "string"
|
|
},
|
|
"displayName": {
|
|
"type": "string"
|
|
},
|
|
"apiUrl": {
|
|
"type": "string"
|
|
},
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"supportsStreaming": {
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
},
|
|
"headers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"default": {}
|
|
},
|
|
"requiresAuth": {
|
|
"type": "boolean"
|
|
},
|
|
"catalogProviderId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"basePath": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"apiKeyEnv": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"apiKeySet": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"engine",
|
|
"displayName",
|
|
"apiUrl",
|
|
"requiresAuth",
|
|
"apiKeySet"
|
|
]
|
|
},
|
|
"CustomProviderUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"engine": {
|
|
"type": "string"
|
|
},
|
|
"displayName": {
|
|
"type": "string"
|
|
},
|
|
"apiUrl": {
|
|
"type": "string"
|
|
},
|
|
"apiKey": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"supportsStreaming": {
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
},
|
|
"headers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"default": {}
|
|
},
|
|
"requiresAuth": {
|
|
"type": "boolean"
|
|
},
|
|
"catalogProviderId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"basePath": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"engine",
|
|
"displayName",
|
|
"apiUrl",
|
|
"requiresAuth"
|
|
],
|
|
"description": "Update a custom provider backed by Goose's declarative provider store.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/update"
|
|
},
|
|
"CustomProviderUpdateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"$ref": "#/$defs/ProviderConfigStatusDto"
|
|
},
|
|
"refresh": {
|
|
"$ref": "#/$defs/RefreshProviderInventoryResponse"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"status",
|
|
"refresh"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/update"
|
|
},
|
|
"CustomProviderDeleteRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Delete a custom provider from Goose's declarative provider store.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/delete"
|
|
},
|
|
"CustomProviderDeleteResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"refresh": {
|
|
"$ref": "#/$defs/RefreshProviderInventoryResponse"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"refresh"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/custom/delete"
|
|
},
|
|
"RefreshProviderInventoryRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerIds": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Which providers to refresh. Empty means all known providers.",
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "Trigger a background refresh of provider inventories.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/inventory/refresh"
|
|
},
|
|
"ProviderConfigReadRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Read saved configuration field values for one provider.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/read"
|
|
},
|
|
"ProviderConfigReadResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"fields": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderConfigFieldValueDto"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"fields"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/read"
|
|
},
|
|
"ProviderConfigFieldValueDto": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"default": null
|
|
},
|
|
"isSet": {
|
|
"type": "boolean"
|
|
},
|
|
"isSecret": {
|
|
"type": "boolean"
|
|
},
|
|
"required": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"isSet",
|
|
"isSecret",
|
|
"required"
|
|
]
|
|
},
|
|
"ProviderConfigStatusRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerIds": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "Return provider configured statuses. Empty provider_ids means all providers.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/status"
|
|
},
|
|
"ProviderConfigStatusResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"statuses": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderConfigStatusDto"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"statuses"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/status"
|
|
},
|
|
"ProviderConfigSaveRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"fields": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/ProviderConfigFieldUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId",
|
|
"fields"
|
|
],
|
|
"description": "Save provider configuration fields and start an inventory refresh when supported.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/save"
|
|
},
|
|
"ProviderConfigFieldUpdate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"value"
|
|
]
|
|
},
|
|
"ProviderConfigChangeResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status": {
|
|
"$ref": "#/$defs/ProviderConfigStatusDto"
|
|
},
|
|
"refresh": {
|
|
"$ref": "#/$defs/RefreshProviderInventoryResponse"
|
|
}
|
|
},
|
|
"required": [
|
|
"status",
|
|
"refresh"
|
|
],
|
|
"x-side": "agent"
|
|
},
|
|
"ProviderConfigDeleteRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Delete provider configuration fields and start an inventory refresh when supported.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/delete"
|
|
},
|
|
"ProviderConfigAuthenticateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Run a provider-owned native authentication flow and start an inventory refresh when supported.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/providers/config/authenticate"
|
|
},
|
|
"PreferencesReadRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"keys": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/PreferenceKey"
|
|
},
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "Read allowlisted user preferences. Empty `keys` means all supported preferences.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/preferences/read"
|
|
},
|
|
"PreferenceKey": {
|
|
"type": "string",
|
|
"enum": [
|
|
"autoCompactThreshold",
|
|
"voiceAutoSubmitPhrases",
|
|
"voiceDictationProvider",
|
|
"voiceDictationPreferredMic"
|
|
]
|
|
},
|
|
"PreferencesReadResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"values": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/PreferenceValue"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"values"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/preferences/read"
|
|
},
|
|
"PreferenceValue": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"$ref": "#/$defs/PreferenceKey"
|
|
},
|
|
"value": {
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
]
|
|
},
|
|
"PreferencesSaveRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"values": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/PreferenceValue"
|
|
},
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "Save allowlisted user preferences.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/preferences/save"
|
|
},
|
|
"PreferencesRemoveRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"keys": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/PreferenceKey"
|
|
},
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "Remove allowlisted user preferences.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/preferences/remove"
|
|
},
|
|
"DefaultsReadRequest": {
|
|
"type": "object",
|
|
"description": "Read Goose default provider and model configuration.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/defaults/read"
|
|
},
|
|
"DefaultsReadResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"modelId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"x-side": "agent"
|
|
},
|
|
"DefaultsSaveRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providerId": {
|
|
"type": "string"
|
|
},
|
|
"modelId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"providerId"
|
|
],
|
|
"description": "Save Goose default provider and model configuration.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/defaults/save"
|
|
},
|
|
"OnboardingImportScanRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sources": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/OnboardingImportSourceKind"
|
|
},
|
|
"description": "Empty means all supported import sources.",
|
|
"default": []
|
|
}
|
|
},
|
|
"description": "Scan for existing Goose and compatible app data that onboarding can import.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/onboarding/import/scan"
|
|
},
|
|
"OnboardingImportSourceKind": {
|
|
"type": "string",
|
|
"enum": [
|
|
"goose_config",
|
|
"claude_desktop"
|
|
],
|
|
"description": "Sources that onboarding knows how to discover and import."
|
|
},
|
|
"OnboardingImportScanResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"candidates": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/OnboardingImportCandidate"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"candidates"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/onboarding/import/scan"
|
|
},
|
|
"OnboardingImportCandidate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"sourceKind": {
|
|
"$ref": "#/$defs/OnboardingImportSourceKind"
|
|
},
|
|
"displayName": {
|
|
"type": "string"
|
|
},
|
|
"path": {
|
|
"type": "string"
|
|
},
|
|
"counts": {
|
|
"$ref": "#/$defs/OnboardingImportCounts"
|
|
},
|
|
"warnings": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"sourceKind",
|
|
"displayName",
|
|
"path",
|
|
"counts"
|
|
]
|
|
},
|
|
"OnboardingImportCounts": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providers": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"extensions": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"sessions": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"skills": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"projects": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"preferences": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
}
|
|
},
|
|
"required": [
|
|
"providers",
|
|
"extensions",
|
|
"sessions",
|
|
"skills",
|
|
"projects",
|
|
"preferences"
|
|
]
|
|
},
|
|
"OnboardingImportApplyRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"candidateIds": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"enableImportedExtensions": {
|
|
"type": "boolean",
|
|
"default": false
|
|
}
|
|
},
|
|
"description": "Import selected onboarding candidates.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/onboarding/import/apply"
|
|
},
|
|
"OnboardingImportApplyResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"imported": {
|
|
"$ref": "#/$defs/OnboardingImportCounts"
|
|
},
|
|
"skipped": {
|
|
"$ref": "#/$defs/OnboardingImportCounts"
|
|
},
|
|
"warnings": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"providerDefaults": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/$defs/DefaultsReadResponse"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"imported",
|
|
"skipped"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/onboarding/import/apply"
|
|
},
|
|
"ExportSessionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "Export a session as a JSON string.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/export"
|
|
},
|
|
"ExportSessionResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"data"
|
|
],
|
|
"description": "Export session response — raw JSON of the goose session with `conversation`.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/export"
|
|
},
|
|
"ImportSessionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"data"
|
|
],
|
|
"description": "Import a session from a JSON string.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/import"
|
|
},
|
|
"ImportSessionResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"updatedAt": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"messageCount": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId",
|
|
"messageCount"
|
|
],
|
|
"description": "Import session response — metadata about the newly created session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/import"
|
|
},
|
|
"UpdateSessionProjectRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"projectId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "Update the project association for a session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/update_project"
|
|
},
|
|
"RenameSessionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId",
|
|
"title"
|
|
],
|
|
"description": "Rename a session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/rename"
|
|
},
|
|
"ArchiveSessionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "Archive a session (soft delete).",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/archive"
|
|
},
|
|
"UnarchiveSessionRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sessionId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sessionId"
|
|
],
|
|
"description": "Unarchive a previously archived session.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/session/unarchive"
|
|
},
|
|
"CreateSourceRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/$defs/SourceType"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"content": {
|
|
"type": "string"
|
|
},
|
|
"global": {
|
|
"type": "boolean"
|
|
},
|
|
"projectDir": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "Absolute path to the project root. Required when `global` is false."
|
|
},
|
|
"projectId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"description": "Project source ID. When set with `global: false`, the backend resolves\nthe project's first working directory automatically. Takes precedence\nover `project_dir`."
|
|
},
|
|
"properties": {
|
|
"type": "object",
|
|
"additionalProperties": {},
|
|
"description": "Arbitrary key/value metadata."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"name",
|
|
"description",
|
|
"content",
|
|
"global"
|
|
],
|
|
"description": "Create a new source in an explicit target scope (global or project-scoped).",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/create"
|
|
},
|
|
"SourceType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"skill",
|
|
"builtinSkill",
|
|
"recipe",
|
|
"subrecipe",
|
|
"agent",
|
|
"project"
|
|
],
|
|
"description": "The type of source entity."
|
|
},
|
|
"CreateSourceResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"source": {
|
|
"$ref": "#/$defs/SourceEntry"
|
|
}
|
|
},
|
|
"required": [
|
|
"source"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/create"
|
|
},
|
|
"SourceEntry": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/$defs/SourceType"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"content": {
|
|
"type": "string"
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Stable on-disk path identifying this source. Pass it back to\nupdate/delete/export to operate on this entry. Skills use the directory\ncontaining `SKILL.md`; projects use the project file path; built-in\nskills use `builtin://skills/<name>` synthetic paths."
|
|
},
|
|
"global": {
|
|
"type": "boolean",
|
|
"description": "True when the source lives in the user's global sources directory; false\nwhen it lives inside a specific project."
|
|
},
|
|
"writable": {
|
|
"type": "boolean",
|
|
"description": "True when this source can be modified through source CRUD methods.\nClient-provided bundled sources are returned as read-only.",
|
|
"default": false
|
|
},
|
|
"supportingFiles": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Paths (absolute) of additional files that live alongside the source.\nOnly skills currently populate this; empty for other source types."
|
|
},
|
|
"properties": {
|
|
"type": "object",
|
|
"additionalProperties": {},
|
|
"description": "Arbitrary key/value pairs for type-specific metadata (e.g. icon, color,\npreferredProvider for projects). Stored in the frontmatter."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"name",
|
|
"description",
|
|
"content",
|
|
"path",
|
|
"global"
|
|
],
|
|
"description": "A source discovered by Goose. Filesystem sources use an on-disk path;\nbuilt-in sources use a stable synthetic path. Sources may be either\n`global` (shared across all projects) or project-specific."
|
|
},
|
|
"ListSourcesRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/$defs/SourceType"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"projectDir": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"includeProjectSources": {
|
|
"type": "boolean",
|
|
"description": "When true, also scan the working directories of all known projects for\nproject-scoped sources (e.g. skills stored under `{workingDir}/.agents/skills/`).",
|
|
"default": false
|
|
}
|
|
},
|
|
"description": "List discovered sources.\n\nIf `type` is omitted or `skill`, this lists filesystem/plugin skills only.\nBoth global and project-scoped skills are included when `project_dir` is\nset. If `type` is `builtinSkill`, this lists shipped read-only built-in\nskills.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/list"
|
|
},
|
|
"ListSourcesResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sources": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/SourceEntry"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"sources"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/list"
|
|
},
|
|
"UpdateSourceRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/$defs/SourceType"
|
|
},
|
|
"path": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"content": {
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
],
|
|
"additionalProperties": {},
|
|
"description": "When `Some`, replaces all stored properties on the source. When\n`None` (or omitted), the source's existing properties are\npreserved. Callers that don't model the full property bag (e.g.\nthe skills editor, which only edits name/description/content)\nshould omit this so per-skill metadata isn't silently erased."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"path",
|
|
"name",
|
|
"description",
|
|
"content"
|
|
],
|
|
"description": "Update an existing source's name, description, and content by absolute path.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/update"
|
|
},
|
|
"UpdateSourceResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"source": {
|
|
"$ref": "#/$defs/SourceEntry"
|
|
}
|
|
},
|
|
"required": [
|
|
"source"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/update"
|
|
},
|
|
"DeleteSourceRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/$defs/SourceType"
|
|
},
|
|
"path": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"path"
|
|
],
|
|
"description": "Delete a source and its on-disk directory by absolute path.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/delete"
|
|
},
|
|
"ExportSourceRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/$defs/SourceType"
|
|
},
|
|
"path": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"path"
|
|
],
|
|
"description": "Export a source at an absolute path as a portable JSON payload.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/export"
|
|
},
|
|
"ExportSourceResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"json": {
|
|
"type": "string"
|
|
},
|
|
"filename": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"json",
|
|
"filename"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/export"
|
|
},
|
|
"ImportSourcesRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "string"
|
|
},
|
|
"global": {
|
|
"type": "boolean"
|
|
},
|
|
"projectDir": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"data",
|
|
"global"
|
|
],
|
|
"description": "Import a source from a JSON export payload produced by `_goose/sources/export`.\nThe imported source is written into the explicit target scope; on name\ncollisions a `-imported` suffix is appended.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/import"
|
|
},
|
|
"ImportSourcesResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sources": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/SourceEntry"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"sources"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/sources/import"
|
|
},
|
|
"DictationTranscribeRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"audio": {
|
|
"type": "string",
|
|
"description": "Base64-encoded audio data"
|
|
},
|
|
"mimeType": {
|
|
"type": "string",
|
|
"description": "MIME type (e.g. \"audio/wav\", \"audio/webm\")"
|
|
},
|
|
"provider": {
|
|
"type": "string",
|
|
"description": "Provider to use: \"openai\", \"groq\", \"elevenlabs\", or \"local\""
|
|
}
|
|
},
|
|
"required": [
|
|
"audio",
|
|
"mimeType",
|
|
"provider"
|
|
],
|
|
"description": "Transcribe audio via a dictation provider.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/transcribe"
|
|
},
|
|
"DictationTranscribeResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"text"
|
|
],
|
|
"description": "Transcription result.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/transcribe"
|
|
},
|
|
"DictationConfigRequest": {
|
|
"type": "object",
|
|
"description": "Get the configuration status of all dictation providers.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/config"
|
|
},
|
|
"DictationConfigResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"providers": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/$defs/DictationProviderStatusEntry"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"providers"
|
|
],
|
|
"description": "Dictation config response — map of provider name to status.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/config"
|
|
},
|
|
"DictationProviderStatusEntry": {
|
|
"type": "object",
|
|
"properties": {
|
|
"configured": {
|
|
"type": "boolean"
|
|
},
|
|
"host": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"usesProviderConfig": {
|
|
"type": "boolean"
|
|
},
|
|
"settingsPath": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"configKey": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"modelConfigKey": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"defaultModel": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"selectedModel": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"availableModels": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/DictationModelOption"
|
|
},
|
|
"default": []
|
|
}
|
|
},
|
|
"required": [
|
|
"configured",
|
|
"description",
|
|
"usesProviderConfig"
|
|
],
|
|
"description": "Per-provider configuration status."
|
|
},
|
|
"DictationModelOption": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"label",
|
|
"description"
|
|
]
|
|
},
|
|
"DictationSecretSaveRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"provider": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider",
|
|
"value"
|
|
],
|
|
"description": "Set a dictation provider secret value.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/secret/save"
|
|
},
|
|
"DictationSecretDeleteRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"provider": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider"
|
|
],
|
|
"description": "Remove a dictation provider secret value.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/secret/delete"
|
|
},
|
|
"DictationModelsListRequest": {
|
|
"type": "object",
|
|
"description": "List available local Whisper models with their download status.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/list"
|
|
},
|
|
"DictationModelsListResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"models": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/$defs/DictationLocalModelStatus"
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"models"
|
|
],
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/list"
|
|
},
|
|
"DictationLocalModelStatus": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"sizeMb": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"downloaded": {
|
|
"type": "boolean"
|
|
},
|
|
"downloadInProgress": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"label",
|
|
"description",
|
|
"sizeMb",
|
|
"downloaded",
|
|
"downloadInProgress"
|
|
]
|
|
},
|
|
"DictationModelDownloadRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"modelId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"modelId"
|
|
],
|
|
"description": "Kick off a background download of a local Whisper model.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/download"
|
|
},
|
|
"DictationModelDownloadProgressRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"modelId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"modelId"
|
|
],
|
|
"description": "Poll the progress of an in-flight download.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/download/progress"
|
|
},
|
|
"DictationModelDownloadProgressResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"progress": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationDownloadProgress"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "None when no download is active for this model id."
|
|
}
|
|
},
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/download/progress"
|
|
},
|
|
"DictationDownloadProgress": {
|
|
"type": "object",
|
|
"properties": {
|
|
"bytesDownloaded": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"totalBytes": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"progressPercent": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "serde lowercase of DownloadStatus: \"downloading\" | \"completed\" | \"failed\" | \"cancelled\""
|
|
},
|
|
"error": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"bytesDownloaded",
|
|
"totalBytes",
|
|
"progressPercent",
|
|
"status"
|
|
]
|
|
},
|
|
"DictationModelCancelRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"modelId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"modelId"
|
|
],
|
|
"description": "Cancel an in-flight download.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/cancel"
|
|
},
|
|
"DictationModelDeleteRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"modelId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"modelId"
|
|
],
|
|
"description": "Delete a downloaded local Whisper model from disk.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/models/delete"
|
|
},
|
|
"DictationModelSelectRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"provider": {
|
|
"type": "string"
|
|
},
|
|
"modelId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider",
|
|
"modelId"
|
|
],
|
|
"description": "Persist the user's model selection for a given provider.",
|
|
"x-side": "agent",
|
|
"x-method": "_goose/dictation/model/select"
|
|
},
|
|
"ExtRequest": {
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"method": {
|
|
"type": "string"
|
|
},
|
|
"params": {
|
|
"anyOf": [
|
|
{
|
|
"anyOf": [
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/AddExtensionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/extensions/add",
|
|
"title": "AddExtensionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/RemoveExtensionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/extensions/remove",
|
|
"title": "RemoveExtensionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GetToolsRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/tools",
|
|
"title": "GetToolsRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GooseToolCallRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/tool/call",
|
|
"title": "GooseToolCallRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ReadResourceRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/resource/read",
|
|
"title": "ReadResourceRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/UpdateWorkingDirRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/working_dir/update",
|
|
"title": "UpdateWorkingDirRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DeleteSessionRequest"
|
|
}
|
|
],
|
|
"description": "Params for session/delete",
|
|
"title": "DeleteSessionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GetExtensionsRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/config/extensions",
|
|
"title": "GetExtensionsRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/AddConfigExtensionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/config/extensions/add",
|
|
"title": "AddConfigExtensionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/RemoveConfigExtensionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/config/extensions/remove",
|
|
"title": "RemoveConfigExtensionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ToggleConfigExtensionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/config/extensions/toggle",
|
|
"title": "ToggleConfigExtensionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GetSessionExtensionsRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/extensions",
|
|
"title": "GetSessionExtensionsRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ListProvidersRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/list",
|
|
"title": "ListProvidersRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderCatalogListRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/catalog/list",
|
|
"title": "ProviderCatalogListRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderSetupCatalogListRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/setup/catalog/list",
|
|
"title": "ProviderSetupCatalogListRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderCatalogTemplateRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/catalog/template",
|
|
"title": "ProviderCatalogTemplateRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderCreateRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/custom/create",
|
|
"title": "CustomProviderCreateRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderReadRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/custom/read",
|
|
"title": "CustomProviderReadRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderUpdateRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/custom/update",
|
|
"title": "CustomProviderUpdateRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderDeleteRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/custom/delete",
|
|
"title": "CustomProviderDeleteRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/RefreshProviderInventoryRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/inventory/refresh",
|
|
"title": "RefreshProviderInventoryRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigReadRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/config/read",
|
|
"title": "ProviderConfigReadRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigStatusRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/config/status",
|
|
"title": "ProviderConfigStatusRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigSaveRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/config/save",
|
|
"title": "ProviderConfigSaveRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigDeleteRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/config/delete",
|
|
"title": "ProviderConfigDeleteRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigAuthenticateRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/providers/config/authenticate",
|
|
"title": "ProviderConfigAuthenticateRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/PreferencesReadRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/preferences/read",
|
|
"title": "PreferencesReadRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/PreferencesSaveRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/preferences/save",
|
|
"title": "PreferencesSaveRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/PreferencesRemoveRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/preferences/remove",
|
|
"title": "PreferencesRemoveRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DefaultsReadRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/defaults/read",
|
|
"title": "DefaultsReadRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DefaultsSaveRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/defaults/save",
|
|
"title": "DefaultsSaveRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/OnboardingImportScanRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/onboarding/import/scan",
|
|
"title": "OnboardingImportScanRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/OnboardingImportApplyRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/onboarding/import/apply",
|
|
"title": "OnboardingImportApplyRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ExportSessionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/export",
|
|
"title": "ExportSessionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ImportSessionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/import",
|
|
"title": "ImportSessionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/UpdateSessionProjectRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/update_project",
|
|
"title": "UpdateSessionProjectRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/RenameSessionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/rename",
|
|
"title": "RenameSessionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ArchiveSessionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/archive",
|
|
"title": "ArchiveSessionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/UnarchiveSessionRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/session/unarchive",
|
|
"title": "UnarchiveSessionRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CreateSourceRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/sources/create",
|
|
"title": "CreateSourceRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ListSourcesRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/sources/list",
|
|
"title": "ListSourcesRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/UpdateSourceRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/sources/update",
|
|
"title": "UpdateSourceRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DeleteSourceRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/sources/delete",
|
|
"title": "DeleteSourceRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ExportSourceRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/sources/export",
|
|
"title": "ExportSourceRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ImportSourcesRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/sources/import",
|
|
"title": "ImportSourcesRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationTranscribeRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/transcribe",
|
|
"title": "DictationTranscribeRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationConfigRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/config",
|
|
"title": "DictationConfigRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationSecretSaveRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/secret/save",
|
|
"title": "DictationSecretSaveRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationSecretDeleteRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/secret/delete",
|
|
"title": "DictationSecretDeleteRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelsListRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/models/list",
|
|
"title": "DictationModelsListRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelDownloadRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/models/download",
|
|
"title": "DictationModelDownloadRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelDownloadProgressRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/models/download/progress",
|
|
"title": "DictationModelDownloadProgressRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelCancelRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/models/cancel",
|
|
"title": "DictationModelCancelRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelDeleteRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/models/delete",
|
|
"title": "DictationModelDeleteRequest"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelSelectRequest"
|
|
}
|
|
],
|
|
"description": "Params for _goose/dictation/model/select",
|
|
"title": "DictationModelSelectRequest"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"description": "Untyped params",
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"method"
|
|
],
|
|
"type": "object",
|
|
"x-docs-ignore": true
|
|
},
|
|
"ExtResponse": {
|
|
"anyOf": [
|
|
{
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"result": {
|
|
"anyOf": [
|
|
{
|
|
"anyOf": [
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/EmptyResponse"
|
|
}
|
|
],
|
|
"title": "EmptyResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GetToolsResponse"
|
|
}
|
|
],
|
|
"title": "GetToolsResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GooseToolCallResponse"
|
|
}
|
|
],
|
|
"title": "GooseToolCallResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ReadResourceResponse"
|
|
}
|
|
],
|
|
"title": "ReadResourceResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GetExtensionsResponse"
|
|
}
|
|
],
|
|
"title": "GetExtensionsResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/GetSessionExtensionsResponse"
|
|
}
|
|
],
|
|
"title": "GetSessionExtensionsResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ListProvidersResponse"
|
|
}
|
|
],
|
|
"title": "ListProvidersResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderCatalogListResponse"
|
|
}
|
|
],
|
|
"title": "ProviderCatalogListResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderSetupCatalogListResponse"
|
|
}
|
|
],
|
|
"title": "ProviderSetupCatalogListResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderCatalogTemplateResponse"
|
|
}
|
|
],
|
|
"title": "ProviderCatalogTemplateResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderCreateResponse"
|
|
}
|
|
],
|
|
"title": "CustomProviderCreateResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderReadResponse"
|
|
}
|
|
],
|
|
"title": "CustomProviderReadResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderUpdateResponse"
|
|
}
|
|
],
|
|
"title": "CustomProviderUpdateResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CustomProviderDeleteResponse"
|
|
}
|
|
],
|
|
"title": "CustomProviderDeleteResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/RefreshProviderInventoryResponse"
|
|
}
|
|
],
|
|
"title": "RefreshProviderInventoryResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigReadResponse"
|
|
}
|
|
],
|
|
"title": "ProviderConfigReadResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigStatusResponse"
|
|
}
|
|
],
|
|
"title": "ProviderConfigStatusResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ProviderConfigChangeResponse"
|
|
}
|
|
],
|
|
"title": "ProviderConfigChangeResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/PreferencesReadResponse"
|
|
}
|
|
],
|
|
"title": "PreferencesReadResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DefaultsReadResponse"
|
|
}
|
|
],
|
|
"title": "DefaultsReadResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/OnboardingImportScanResponse"
|
|
}
|
|
],
|
|
"title": "OnboardingImportScanResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/OnboardingImportApplyResponse"
|
|
}
|
|
],
|
|
"title": "OnboardingImportApplyResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ExportSessionResponse"
|
|
}
|
|
],
|
|
"title": "ExportSessionResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ImportSessionResponse"
|
|
}
|
|
],
|
|
"title": "ImportSessionResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/CreateSourceResponse"
|
|
}
|
|
],
|
|
"title": "CreateSourceResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ListSourcesResponse"
|
|
}
|
|
],
|
|
"title": "ListSourcesResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/UpdateSourceResponse"
|
|
}
|
|
],
|
|
"title": "UpdateSourceResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ExportSourceResponse"
|
|
}
|
|
],
|
|
"title": "ExportSourceResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ImportSourcesResponse"
|
|
}
|
|
],
|
|
"title": "ImportSourcesResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationTranscribeResponse"
|
|
}
|
|
],
|
|
"title": "DictationTranscribeResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationConfigResponse"
|
|
}
|
|
],
|
|
"title": "DictationConfigResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelsListResponse"
|
|
}
|
|
],
|
|
"title": "DictationModelsListResponse"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/DictationModelDownloadProgressResponse"
|
|
}
|
|
],
|
|
"title": "DictationModelDownloadProgressResponse"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"description": "Untyped result"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"title": "Success",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"properties": {
|
|
"error": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {}
|
|
},
|
|
"required": [
|
|
"code",
|
|
"message"
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"error"
|
|
],
|
|
"title": "Error",
|
|
"type": "object"
|
|
}
|
|
],
|
|
"x-docs-ignore": true
|
|
}
|
|
},
|
|
"anyOf": [
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ExtRequest"
|
|
}
|
|
],
|
|
"description": "Extension request (client → agent)",
|
|
"title": "Request"
|
|
},
|
|
{
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/$defs/ExtResponse"
|
|
}
|
|
],
|
|
"description": "Extension response (agent → client)",
|
|
"title": "Response"
|
|
}
|
|
]
|
|
}
|