mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-11-07 07:55:47 +01:00
Version the shared Pi and pending Copilot source attestations without changing their executable closures or platform qualification. Co-Authored-By: Paperclip <noreply@paperclip.ing>
447 lines
8.2 KiB
JSON
447 lines
8.2 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://paperclip.dev/schemas/prp/v1/provider-descriptor.schema.json",
|
|
"title": "PRP provider runtime descriptor",
|
|
"type": "object",
|
|
"required": [
|
|
"provider",
|
|
"driver",
|
|
"model",
|
|
"executionKind",
|
|
"providerVersion"
|
|
],
|
|
"properties": {
|
|
"provider": {
|
|
"enum": [
|
|
"codex",
|
|
"opencode",
|
|
"claude_managed",
|
|
"aws_agentcore",
|
|
"acpx",
|
|
"openai_dot"
|
|
]
|
|
},
|
|
"driver": {
|
|
"enum": [
|
|
"codex_app_server",
|
|
"opencode_server",
|
|
"claude_managed_agents_api",
|
|
"aws_agentcore_harness_api",
|
|
"acpx_runtime",
|
|
"openai_dot_mcp"
|
|
]
|
|
},
|
|
"model": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"maxLength": 240
|
|
},
|
|
"executionKind": {
|
|
"enum": [
|
|
"local_process",
|
|
"remote_service"
|
|
]
|
|
},
|
|
"providerVersion": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 120
|
|
},
|
|
"service": {
|
|
"enum": [
|
|
"anthropic_managed_agents",
|
|
"aws_bedrock_agentcore_harness",
|
|
"openai_dot"
|
|
]
|
|
},
|
|
"providerSessionId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"maxLength": 240
|
|
},
|
|
"processId": {
|
|
"type": [
|
|
"integer",
|
|
"null"
|
|
],
|
|
"minimum": 1
|
|
},
|
|
"agentProcessId": {
|
|
"type": [
|
|
"integer",
|
|
"null"
|
|
],
|
|
"minimum": 1
|
|
},
|
|
"endpointArn": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 2048
|
|
},
|
|
"endpointQualifier": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 240
|
|
},
|
|
"memoryId": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 240
|
|
},
|
|
"eventExpiryDays": {
|
|
"const": 90
|
|
},
|
|
"agent": {
|
|
"enum": [
|
|
"pi",
|
|
"claude",
|
|
"codex",
|
|
"cursor",
|
|
"copilot"
|
|
]
|
|
},
|
|
"requestedModel": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 240
|
|
},
|
|
"acpProtocolVersion": {
|
|
"const": 1
|
|
},
|
|
"agentServerPackage": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 240
|
|
},
|
|
"agentServerVersion": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"maxLength": 120
|
|
},
|
|
"agentRuntimePackage": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"maxLength": 240
|
|
},
|
|
"agentRuntimeVersion": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"maxLength": 120
|
|
},
|
|
"acpxRecordId": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"maxLength": 240
|
|
},
|
|
"turnControls": {
|
|
"$ref": "#/$defs/turnControls"
|
|
},
|
|
"piThinkingLevel": {
|
|
"enum": [
|
|
"off",
|
|
"low",
|
|
"high",
|
|
"max"
|
|
]
|
|
},
|
|
"claudeEffort": {
|
|
"enum": [
|
|
"low",
|
|
"medium",
|
|
"high",
|
|
"xhigh",
|
|
"max"
|
|
]
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"if": {
|
|
"required": [
|
|
"piThinkingLevel"
|
|
]
|
|
},
|
|
"then": {
|
|
"properties": {
|
|
"provider": {
|
|
"const": "acpx"
|
|
},
|
|
"agent": {
|
|
"const": "pi"
|
|
}
|
|
},
|
|
"required": [
|
|
"agent"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"required": [
|
|
"claudeEffort"
|
|
]
|
|
},
|
|
"then": {
|
|
"properties": {
|
|
"provider": {
|
|
"const": "acpx"
|
|
},
|
|
"agent": {
|
|
"const": "claude"
|
|
}
|
|
},
|
|
"required": [
|
|
"agent"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"oneOf": [
|
|
{
|
|
"properties": {
|
|
"provider": {
|
|
"const": "codex"
|
|
},
|
|
"driver": {
|
|
"const": "codex_app_server"
|
|
},
|
|
"executionKind": {
|
|
"const": "local_process"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"properties": {
|
|
"provider": {
|
|
"const": "opencode"
|
|
},
|
|
"driver": {
|
|
"const": "opencode_server"
|
|
},
|
|
"executionKind": {
|
|
"const": "local_process"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"properties": {
|
|
"provider": {
|
|
"const": "claude_managed"
|
|
},
|
|
"driver": {
|
|
"const": "claude_managed_agents_api"
|
|
},
|
|
"executionKind": {
|
|
"const": "remote_service"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"properties": {
|
|
"provider": {
|
|
"const": "aws_agentcore"
|
|
},
|
|
"driver": {
|
|
"const": "aws_agentcore_harness_api"
|
|
},
|
|
"executionKind": {
|
|
"const": "remote_service"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"properties": {
|
|
"provider": {
|
|
"const": "acpx"
|
|
},
|
|
"driver": {
|
|
"const": "acpx_runtime"
|
|
},
|
|
"executionKind": {
|
|
"const": "local_process"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"properties": {
|
|
"provider": {
|
|
"const": "openai_dot"
|
|
},
|
|
"driver": {
|
|
"const": "openai_dot_mcp"
|
|
},
|
|
"executionKind": {
|
|
"const": "remote_service"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"executionKind": {
|
|
"const": "remote_service"
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"required": [
|
|
"service"
|
|
],
|
|
"properties": {
|
|
"processId": {
|
|
"const": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"executionKind": {
|
|
"const": "local_process"
|
|
}
|
|
}
|
|
},
|
|
"then": {
|
|
"properties": {
|
|
"service": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"provider": {
|
|
"const": "claude_managed"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider"
|
|
]
|
|
},
|
|
"then": {
|
|
"properties": {
|
|
"service": {
|
|
"const": "anthropic_managed_agents"
|
|
}
|
|
},
|
|
"required": [
|
|
"service"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"provider": {
|
|
"const": "aws_agentcore"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider"
|
|
]
|
|
},
|
|
"then": {
|
|
"properties": {
|
|
"service": {
|
|
"const": "aws_bedrock_agentcore_harness"
|
|
}
|
|
},
|
|
"required": [
|
|
"service",
|
|
"endpointArn",
|
|
"endpointQualifier",
|
|
"memoryId",
|
|
"eventExpiryDays"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"provider": {
|
|
"const": "acpx"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider"
|
|
]
|
|
},
|
|
"then": {
|
|
"required": [
|
|
"agent",
|
|
"requestedModel",
|
|
"acpProtocolVersion",
|
|
"agentServerPackage",
|
|
"agentServerVersion",
|
|
"acpxRecordId",
|
|
"agentProcessId"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"if": {
|
|
"properties": {
|
|
"provider": {
|
|
"const": "openai_dot"
|
|
}
|
|
},
|
|
"required": [
|
|
"provider"
|
|
]
|
|
},
|
|
"then": {
|
|
"required": [
|
|
"service",
|
|
"providerSessionId"
|
|
],
|
|
"properties": {
|
|
"service": {
|
|
"const": "openai_dot"
|
|
},
|
|
"model": {
|
|
"const": null
|
|
},
|
|
"providerSessionId": {
|
|
"const": null
|
|
},
|
|
"agentProcessId": {
|
|
"const": null
|
|
}
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"$defs": {
|
|
"turnControls": {
|
|
"type": "object",
|
|
"required": [
|
|
"steering",
|
|
"queuedFollowUp"
|
|
],
|
|
"properties": {
|
|
"steering": {
|
|
"type": "boolean"
|
|
},
|
|
"queuedFollowUp": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|