执行工厂 · 能力实验室 API (0.1.0)

Download OpenAPI specification:

Implemented capabilities-lab route group. Authorization and Cookie headers are forwarded to upstream public APIs; the group middleware itself does not validate Bearer tokens. user_id, then X-User-ID, then the configured default determines its user context. Responses use the capabilities-lab envelope, not Error. Feature-gated operations return 404 when disabled.

Health

Responses

Response samples

Content type
application/json
{
  • "status": "ok",
  • "service": "capabilities-lab",
  • "upstream": "ok"
}

Meta

Responses

Response samples

Content type
application/json
{
  • "service": "string",
  • "version": "string",
  • "features": {
    }
}

Metrics

Route is registered only when metrics are enabled.

Responses

List Capabilities

query Parameters
kind
string
keyword
string
group_id
string
status
string
page
integer
Default: 1

Missing or noninteger values use the default.

page_size
integer
Default: 20

Missing or noninteger values use the default.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0,
  • "page": 0,
  • "page_size": 0
}

Create Http Capability

Request Body schema: application/json
required
openapi_spec
required
string
service_url
required
string
name
string
description
string
category
string
object (GroupInput)

Responses

Request samples

Content type
application/json
{
  • "openapi_spec": "string",
  • "service_url": "string",
  • "name": "string",
  • "description": "string",
  • "category": "string",
  • "group": {
    }
}

Response samples

Content type
application/json
{
  • "capability": {
    }
}

Import Open Api Capabilities

Request Body schema: application/json
required
openapi_spec
required
string
service_url
required
string
description
string
category
string
object (GroupInput)

Responses

Request samples

Content type
application/json
{
  • "openapi_spec": "string",
  • "service_url": "string",
  • "description": "string",
  • "category": "string",
  • "group": {
    }
}

Response samples

Content type
application/json
{
  • "box_id": "string",
  • "capabilities": [
    ],
  • "failure_count": 0,
  • "failures": [
    ]
}

Register Mcp Capability

Request Body schema: application/json
required
name
required
string
description
string
mode
string
url
required
string
object
category
string
creation_type
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "mode": "string",
  • "url": "string",
  • "headers": {
    },
  • "category": "string",
  • "creation_type": "string"
}

Response samples

Content type
application/json
{
  • "capability": {
    }
}

Register Skill Capability

Request Body schema: multipart/form-data
required
file
required
string <binary>
file_type
string
category
string
source
string

Responses

Response samples

Content type
application/json
{
  • "capability": {
    }
}

List Groups

query Parameters
keyword
string
page
integer
Default: 1

Missing or noninteger values use the default.

page_size
integer
Default: 50

Missing or noninteger values use the default.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0,
  • "page": 0,
  • "page_size": 0
}

List Categories

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Publish Group

An omitted status defaults to published.

path Parameters
group_id
required
string
Request Body schema: application/json
required
status
string

Responses

Request samples

Content type
application/json
{
  • "status": "string"
}

Response samples

Content type
application/json
{
  • "ok": true,
  • "status": "string"
}

Import Capability Package

Request Body schema: multipart/form-data
required
file
required
string <binary>
type
string
mode
string

Responses

Response samples

Content type
application/json
null

List Catalog

query Parameters
kind
string
keyword
string
page
integer
Default: 1

Missing or noninteger values use the default.

page_size
integer
Default: 20

Missing or noninteger values use the default.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "total": 0,
  • "page": 0,
  • "page_size": 0
}

Install From Catalog

Request Body schema: application/json
required
kind
required
string
source_id
required
string
mode
string
name
string

Responses

Request samples

Content type
application/json
{
  • "kind": "string",
  • "source_id": "string",
  • "mode": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "component_type": "string",
  • "mode": "string",
  • "capabilities": [
    ]
}

Create Function Capability

Request Body schema: application/json
required
name
string
description
string
code
required
string
category
string
service_url
string
object (GroupInput)
Array of objects (FunctionParameterDef)
Array of objects (FunctionParameterDef)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "code": "string",
  • "category": "string",
  • "service_url": "string",
  • "group": {
    },
  • "inputs": [
    ],
  • "outputs": [
    ]
}

Response samples

Content type
application/json
{
  • "capability": {
    }
}

Execute Python

Request Body schema: application/json
required
code
required
string
object
timeout
integer
source
string
task_id
string
capability_id
string
capability_name
string
user_id
string
user_name
string

Responses

Request samples

Content type
application/json
{
  • "code": "string",
  • "event": {
    },
  • "timeout": 0,
  • "source": "string",
  • "task_id": "string",
  • "capability_id": "string",
  • "capability_name": "string",
  • "user_id": "string",
  • "user_name": "string"
}

Response samples

Content type
application/json
{
  • "output": null,
  • "stdout": "string",
  • "stderr": "string",
  • "error": "string",
  • "duration_ms": 0
}

Get Python Template

Responses

Response samples

Content type
application/json
{
  • "template": "string"
}

Parse Mcp Sse

Request Body schema: application/json
required
url
required
string
mode
string
object

Responses

Request samples

Content type
application/json
{
  • "url": "string",
  • "mode": "string",
  • "headers": {
    }
}

Response samples

Content type
application/json
{
  • "tools": [
    ]
}

List Versions

Only skill capabilities return a release history. Other kinds, including http, return just the current version entry (or an empty list when the capability has no version).

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "kind": "string",
  • "versions": [
    ]
}

Debug Capability

path Parameters
id
required
string
Request Body schema: application/json
required
object
object
object
object
tool_name
string
timeout
integer

Responses

Request samples

Content type
application/json
{
  • "body": {
    },
  • "query": {
    },
  • "path": {
    },
  • "header": {
    },
  • "tool_name": "string",
  • "timeout": 0
}

Response samples

Content type
application/json
{
  • "status_code": 0,
  • "body": null,
  • "duration_ms": 0,
  • "error": "string",
  • "content": "string",
  • "is_error": true,
  • "headers": {
    }
}

Republish Version

Only skill capabilities support republishing a historical version. Other kinds, including http, fail with 502 and republish not supported for this capability kind.

path Parameters
id
required
string
Request Body schema: application/json
required
version
required
string
mode
string

Responses

Request samples

Content type
application/json
{
  • "version": "string",
  • "mode": "string"
}

Response samples

Content type
application/json
{
  • "ok": true
}

Publish Capability

An omitted status defaults to published.

path Parameters
id
required
string
Request Body schema: application/json
required
status
string

Responses

Request samples

Content type
application/json
{
  • "status": "string"
}

Response samples

Content type
application/json
{
  • "ok": true,
  • "status": "string"
}

Export Capability

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
null

Get Skill Content

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "content": "string",
  • "file_type": "string",
  • "files": [
    ],
  • "download_url": "string"
}

Read Skill File

path Parameters
id
required
string
Request Body schema: application/json
required
rel_path
required
string
response_mode
string

Responses

Request samples

Content type
application/json
{
  • "rel_path": "string",
  • "response_mode": "string"
}

Response samples

Content type
application/json
{
  • "rel_path": "string",
  • "url": "string",
  • "content": "string",
  • "mime_type": "string",
  • "file_type": "string",
  • "size": 0
}

Download Skill Package

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "code": "string",
  • "message": "string",
  • "request_id": "string"
}

Update Skill Package

path Parameters
id
required
string
Request Body schema: multipart/form-data
required
file
required
string <binary>
file_type
string

Responses

Response samples

Content type
application/json
{
  • "capability": {
    }
}

List Mcp Tools

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "tools": [
    ]
}

Update Capability

path Parameters
id
required
string
Request Body schema: application/json
required
name
string
description
string
openapi_spec
string
url
string
mode
string
object
category
string
creation_type
string
source
string
code
string
Array of objects (FunctionParameterDef)
Array of objects (FunctionParameterDef)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "openapi_spec": "string",
  • "url": "string",
  • "mode": "string",
  • "headers": {
    },
  • "category": "string",
  • "creation_type": "string",
  • "source": "string",
  • "code": "string",
  • "inputs": [
    ],
  • "outputs": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "kind": "string",
  • "name": "string",
  • "description": "string",
  • "status": "string",
  • "group": {
    },
  • "endpoint": {
    },
  • "audit": {
    },
  • "update_time": 0,
  • "tool_id": "string",
  • "box_id": "string",
  • "mcp_id": "string",
  • "skill_id": "string",
  • "version": "string",
  • "openapi_spec": "string",
  • "url": "string",
  • "code": "string",
  • "inputs": [
    ],
  • "outputs": [
    ]
}

Delete Capability

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "ok": true
}

Get Capability

path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "kind": "string",
  • "name": "string",
  • "description": "string",
  • "status": "string",
  • "group": {
    },
  • "endpoint": {
    },
  • "audit": {
    },
  • "update_time": 0,
  • "tool_id": "string",
  • "box_id": "string",
  • "mcp_id": "string",
  • "skill_id": "string",
  • "version": "string",
  • "openapi_spec": "string",
  • "url": "string",
  • "code": "string",
  • "inputs": [
    ],
  • "outputs": [
    ]
}