@plurnk/plurnk-contracts 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SPEC.md +122 -11
- package/dist/conformance/agui-v1.json +541 -0
- package/dist/schema/A2aAgentDefinition.json +44 -0
- package/dist/schema/AcpPlan.json +63 -0
- package/dist/schema/AguiClientConformance.json +74 -0
- package/dist/schema/AguiConformanceKit.json +111 -0
- package/dist/schema/AguiDiscovery.json +70 -0
- package/dist/schema/ClientDisplayCapabilities.json +1 -1
- package/dist/schema/ClientInteractionProjection.json +2 -2
- package/dist/schema/ClientInteractionRequest.json +1 -1
- package/dist/schema/ClientInteractionResolution.json +1 -1
- package/dist/schema/ClientStatement.json +7 -7
- package/dist/schema/EntryReadResult.json +2 -2
- package/dist/schema/FunctionalityCandidate.json +33 -0
- package/dist/schema/FunctionalityDefinitionState.json +33 -0
- package/dist/schema/FunctionalityDiscoverQuery.json +16 -0
- package/dist/schema/FunctionalityDiscoverResult.json +15 -0
- package/dist/schema/FunctionalityListResult.json +15 -0
- package/dist/schema/FunctionalityMutationResult.json +16 -0
- package/dist/schema/LineMarker.json +1 -1
- package/dist/schema/LoopFlags.json +1 -1
- package/dist/schema/MatcherBody.json +1 -1
- package/dist/schema/McpConfigurationOverlay.json +1 -1
- package/dist/schema/McpServerDefinition.json +1 -1
- package/dist/schema/McpServerOptions.json +8 -8
- package/dist/schema/ModelCatalogPage.json +2 -2
- package/dist/schema/ModelCatalogQuery.json +1 -1
- package/dist/schema/ModelReadiness.json +1 -1
- package/dist/schema/ModelRoute.json +1 -1
- package/dist/schema/Notice.json +1 -1
- package/dist/schema/OperationResult.json +3 -3
- package/dist/schema/ParsedPath.json +1 -1
- package/dist/schema/Plan.json +52 -0
- package/dist/schema/PlurnkStatement.json +9 -9
- package/dist/schema/Position.json +1 -1
- package/dist/schema/ProblemDetails.json +1 -1
- package/dist/schema/ProposalDisposition.json +1 -1
- package/dist/schema/ProposalProjection.json +5 -6
- package/dist/schema/ProviderAccounting.json +3 -3
- package/dist/schema/ProviderCost.json +1 -1
- package/dist/schema/ProviderRequestAccounting.json +3 -3
- package/dist/schema/ProviderUsage.json +1 -1
- package/dist/schema/RangeExtent.json +1 -1
- package/dist/schema/ReasoningPolicy.json +1 -1
- package/dist/schema/ResourceSelection.json +3 -3
- package/dist/schema/SendBody.json +1 -1
- package/dist/schema/SkillDefinition.json +26 -0
- package/dist/schema/TextLineMarker.json +1 -1
- package/dist/schema/TextRegion.json +1 -1
- package/dist/src/AcpPlanValue.d.ts +7 -0
- package/dist/src/AcpPlanValue.d.ts.map +1 -0
- package/dist/src/AcpPlanValue.js +32 -0
- package/dist/src/AcpPlanValue.js.map +1 -0
- package/dist/src/AguiConformance.d.ts +11 -0
- package/dist/src/AguiConformance.d.ts.map +1 -0
- package/dist/src/AguiConformance.js +16 -0
- package/dist/src/AguiConformance.js.map +1 -0
- package/dist/src/ApplicationPort.d.ts +271 -0
- package/dist/src/ApplicationPort.d.ts.map +1 -0
- package/dist/src/ApplicationPort.js +2 -0
- package/dist/src/ApplicationPort.js.map +1 -0
- package/dist/src/AstBuilder.d.ts.map +1 -1
- package/dist/src/AstBuilder.js +2 -1
- package/dist/src/AstBuilder.js.map +1 -1
- package/dist/src/PlanValue.d.ts +10 -0
- package/dist/src/PlanValue.d.ts.map +1 -0
- package/dist/src/PlanValue.js +58 -0
- package/dist/src/PlanValue.js.map +1 -0
- package/dist/src/PlurnkErrorStrategy.d.ts.map +1 -1
- package/dist/src/PlurnkErrorStrategy.js +17 -3
- package/dist/src/PlurnkErrorStrategy.js.map +1 -1
- package/dist/src/Problems.js +1 -1
- package/dist/src/Validator.d.ts +40 -1
- package/dist/src/Validator.d.ts.map +1 -1
- package/dist/src/Validator.js +236 -0
- package/dist/src/Validator.js.map +1 -1
- package/dist/src/index.d.ts +6 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/types.generated.d.ts +285 -2
- package/dist/src/types.generated.d.ts.map +1 -1
- package/package.json +6 -1
- package/plurnk.md +79 -71
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/AguiClientConformance.json",
|
|
4
|
+
"title": "AguiClientConformance",
|
|
5
|
+
"description": "One client's exhaustive, evidence-bearing disposition for an installed AG-UI discovery surface.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["schemaVersion", "client", "actions", "notifications"],
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"schemaVersion": { "const": 1 },
|
|
11
|
+
"client": { "type": "string", "minLength": 1 },
|
|
12
|
+
"actions": {
|
|
13
|
+
"type": "object",
|
|
14
|
+
"propertyNames": { "type": "string", "minLength": 1 },
|
|
15
|
+
"additionalProperties": { "$ref": "#/$defs/disposition" }
|
|
16
|
+
},
|
|
17
|
+
"notifications": {
|
|
18
|
+
"type": "object",
|
|
19
|
+
"propertyNames": { "type": "string", "minLength": 1 },
|
|
20
|
+
"additionalProperties": { "$ref": "#/$defs/disposition" }
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"$defs": {
|
|
24
|
+
"evidence": {
|
|
25
|
+
"type": "array",
|
|
26
|
+
"minItems": 1,
|
|
27
|
+
"uniqueItems": true,
|
|
28
|
+
"items": { "type": "string", "minLength": 1 }
|
|
29
|
+
},
|
|
30
|
+
"dimensions": {
|
|
31
|
+
"type": "array",
|
|
32
|
+
"minItems": 1,
|
|
33
|
+
"uniqueItems": true,
|
|
34
|
+
"items": {
|
|
35
|
+
"enum": [
|
|
36
|
+
"admission",
|
|
37
|
+
"projection",
|
|
38
|
+
"framing",
|
|
39
|
+
"success",
|
|
40
|
+
"failure",
|
|
41
|
+
"lifecycle",
|
|
42
|
+
"durability",
|
|
43
|
+
"composition",
|
|
44
|
+
"presentation"
|
|
45
|
+
]
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"disposition": {
|
|
49
|
+
"oneOf": [
|
|
50
|
+
{
|
|
51
|
+
"type": "object",
|
|
52
|
+
"required": ["posture", "dimensions", "evidence"],
|
|
53
|
+
"additionalProperties": false,
|
|
54
|
+
"properties": {
|
|
55
|
+
"posture": { "enum": ["native", "generic"] },
|
|
56
|
+
"dimensions": { "$ref": "#/$defs/dimensions" },
|
|
57
|
+
"evidence": { "$ref": "#/$defs/evidence" }
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"type": "object",
|
|
62
|
+
"required": ["posture", "reason", "dimensions", "evidence"],
|
|
63
|
+
"additionalProperties": false,
|
|
64
|
+
"properties": {
|
|
65
|
+
"posture": { "const": "unsupported" },
|
|
66
|
+
"reason": { "type": "string", "minLength": 1 },
|
|
67
|
+
"dimensions": { "$ref": "#/$defs/dimensions" },
|
|
68
|
+
"evidence": { "$ref": "#/$defs/evidence" }
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
]
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/AguiConformanceKit.json",
|
|
4
|
+
"title": "AguiConformanceKit",
|
|
5
|
+
"description": "Language-neutral raw SSE and AG-UI lifecycle specimens consumed by every Plurnk client.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["schemaVersion", "transport", "lifecycles"],
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"schemaVersion": { "const": 1 },
|
|
11
|
+
"transport": {
|
|
12
|
+
"type": "array",
|
|
13
|
+
"minItems": 1,
|
|
14
|
+
"items": { "$ref": "#/$defs/transportSpecimen" }
|
|
15
|
+
},
|
|
16
|
+
"lifecycles": {
|
|
17
|
+
"type": "array",
|
|
18
|
+
"minItems": 1,
|
|
19
|
+
"items": { "$ref": "#/$defs/lifecycleSpecimen" }
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"$defs": {
|
|
23
|
+
"name": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
|
|
26
|
+
},
|
|
27
|
+
"event": {
|
|
28
|
+
"type": "object",
|
|
29
|
+
"required": ["type"],
|
|
30
|
+
"properties": { "type": { "type": "string", "minLength": 1 } },
|
|
31
|
+
"additionalProperties": true
|
|
32
|
+
},
|
|
33
|
+
"transportSpecimen": {
|
|
34
|
+
"type": "object",
|
|
35
|
+
"required": ["name", "chunks", "eof", "expect"],
|
|
36
|
+
"additionalProperties": false,
|
|
37
|
+
"properties": {
|
|
38
|
+
"name": { "$ref": "#/$defs/name" },
|
|
39
|
+
"chunks": {
|
|
40
|
+
"type": "array",
|
|
41
|
+
"minItems": 1,
|
|
42
|
+
"items": { "type": "string", "minLength": 1 }
|
|
43
|
+
},
|
|
44
|
+
"eof": { "type": "boolean" },
|
|
45
|
+
"expect": {
|
|
46
|
+
"oneOf": [
|
|
47
|
+
{
|
|
48
|
+
"type": "object",
|
|
49
|
+
"required": ["events"],
|
|
50
|
+
"additionalProperties": false,
|
|
51
|
+
"properties": {
|
|
52
|
+
"events": {
|
|
53
|
+
"type": "array",
|
|
54
|
+
"items": { "$ref": "#/$defs/event" }
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"type": "object",
|
|
60
|
+
"required": ["error"],
|
|
61
|
+
"additionalProperties": false,
|
|
62
|
+
"properties": {
|
|
63
|
+
"error": { "enum": ["invalid-json"] }
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"actionExpectation": {
|
|
71
|
+
"type": "object",
|
|
72
|
+
"required": ["kind", "ok"],
|
|
73
|
+
"additionalProperties": false,
|
|
74
|
+
"properties": {
|
|
75
|
+
"kind": { "type": "string", "minLength": 1 },
|
|
76
|
+
"ok": { "type": "boolean" },
|
|
77
|
+
"status": { "type": "integer", "minimum": 100, "maximum": 599 }
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
"lifecycleExpectation": {
|
|
81
|
+
"type": "object",
|
|
82
|
+
"required": ["completion", "families"],
|
|
83
|
+
"additionalProperties": false,
|
|
84
|
+
"properties": {
|
|
85
|
+
"completion": { "enum": ["success", "interrupt", "error", "dead-stream"] },
|
|
86
|
+
"families": {
|
|
87
|
+
"type": "array",
|
|
88
|
+
"uniqueItems": true,
|
|
89
|
+
"items": { "type": "string", "minLength": 1 }
|
|
90
|
+
},
|
|
91
|
+
"status": { "type": "integer", "minimum": 100, "maximum": 599 },
|
|
92
|
+
"interrupt": { "enum": ["proposal", "interaction"] },
|
|
93
|
+
"action": { "$ref": "#/$defs/actionExpectation" }
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"lifecycleSpecimen": {
|
|
97
|
+
"type": "object",
|
|
98
|
+
"required": ["name", "events", "expect"],
|
|
99
|
+
"additionalProperties": false,
|
|
100
|
+
"properties": {
|
|
101
|
+
"name": { "$ref": "#/$defs/name" },
|
|
102
|
+
"events": {
|
|
103
|
+
"type": "array",
|
|
104
|
+
"minItems": 1,
|
|
105
|
+
"items": { "$ref": "#/$defs/event" }
|
|
106
|
+
},
|
|
107
|
+
"expect": { "$ref": "#/$defs/lifecycleExpectation" }
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/AguiDiscovery.json",
|
|
4
|
+
"title": "AguiDiscovery",
|
|
5
|
+
"description": "The complete installed AG-UI+ management and notification surface. Action and notification names are object keys so identity has one representation.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["schemaVersion", "actions", "notifications", "display"],
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"properties": {
|
|
10
|
+
"schemaVersion": {
|
|
11
|
+
"const": 1
|
|
12
|
+
},
|
|
13
|
+
"actions": {
|
|
14
|
+
"type": "object",
|
|
15
|
+
"propertyNames": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"minLength": 1
|
|
18
|
+
},
|
|
19
|
+
"additionalProperties": {
|
|
20
|
+
"$ref": "#/$defs/action"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"notifications": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"propertyNames": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"minLength": 1
|
|
28
|
+
},
|
|
29
|
+
"additionalProperties": {
|
|
30
|
+
"$ref": "#/$defs/notification"
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"display": {
|
|
34
|
+
"$ref": "https://schemas.plurnk.xyz/v0/ClientDisplayCapabilities.json"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"$defs": {
|
|
38
|
+
"jsonSchema": {
|
|
39
|
+
"type": "object",
|
|
40
|
+
"description": "A JSON Schema 2020-12 schema supplied by the contract owner.",
|
|
41
|
+
"additionalProperties": true
|
|
42
|
+
},
|
|
43
|
+
"action": {
|
|
44
|
+
"type": "object",
|
|
45
|
+
"required": ["scope", "inputSchema", "outputSchema"],
|
|
46
|
+
"additionalProperties": false,
|
|
47
|
+
"properties": {
|
|
48
|
+
"scope": {
|
|
49
|
+
"enum": ["worldless", "workspace", "worker"]
|
|
50
|
+
},
|
|
51
|
+
"inputSchema": {
|
|
52
|
+
"$ref": "#/$defs/jsonSchema"
|
|
53
|
+
},
|
|
54
|
+
"outputSchema": {
|
|
55
|
+
"$ref": "#/$defs/jsonSchema"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"notification": {
|
|
60
|
+
"type": "object",
|
|
61
|
+
"required": ["payloadSchema"],
|
|
62
|
+
"additionalProperties": false,
|
|
63
|
+
"properties": {
|
|
64
|
+
"payloadSchema": {
|
|
65
|
+
"$ref": "#/$defs/jsonSchema"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ClientDisplayCapabilities.json",
|
|
4
4
|
"title": "ClientDisplayCapabilities",
|
|
5
5
|
"description": "The installed scheme and MIME capability identities with optional opaque client presentation metadata.",
|
|
6
6
|
"type": "array",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ClientInteractionProjection.json",
|
|
4
4
|
"title": "ClientInteractionProjection",
|
|
5
5
|
"description": "The runtime-neutral client-interface projection of one pending client interaction. Live delivery and reconnect discovery expose this same shape.",
|
|
6
6
|
"type": "object",
|
|
@@ -11,6 +11,6 @@
|
|
|
11
11
|
"workerId": { "type": "integer", "minimum": 1 },
|
|
12
12
|
"loopId": { "type": "integer", "minimum": 1 },
|
|
13
13
|
"turnId": { "type": "integer", "minimum": 1 },
|
|
14
|
-
"request": { "$ref": "https://schemas.plurnk.
|
|
14
|
+
"request": { "$ref": "https://schemas.plurnk.xyz/v0/ClientInteractionRequest.json" }
|
|
15
15
|
}
|
|
16
16
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ClientInteractionRequest.json",
|
|
4
4
|
"title": "ClientInteractionRequest",
|
|
5
5
|
"description": "A runtime-neutral request for one client-owned interaction. The owner supplies the standard tool presentation and response contract; protocol-private continuation state is excluded.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ClientInteractionResolution.json",
|
|
4
4
|
"title": "ClientInteractionResolution",
|
|
5
5
|
"description": "The client response that settles one pending interaction. A cancelled interaction carries no fabricated payload.",
|
|
6
6
|
"oneOf": [
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ClientStatement.json",
|
|
4
4
|
"title": "ClientStatement",
|
|
5
5
|
"description": "The client-tier AST returned by PlurnkParser.parseClient: the closed protocol PlurnkStatement union plus read-shaped LOOK and BUFF utility statements.",
|
|
6
6
|
"oneOf": [
|
|
7
|
-
{ "$ref": "https://schemas.plurnk.
|
|
7
|
+
{ "$ref": "https://schemas.plurnk.xyz/v0/PlurnkStatement.json" },
|
|
8
8
|
{ "$ref": "#/$defs/LookStatement" },
|
|
9
9
|
{ "$ref": "#/$defs/BuffStatement" }
|
|
10
10
|
],
|
|
@@ -20,30 +20,30 @@
|
|
|
20
20
|
},
|
|
21
21
|
"PathOrNull": {
|
|
22
22
|
"oneOf": [
|
|
23
|
-
{ "$ref": "https://schemas.plurnk.
|
|
23
|
+
{ "$ref": "https://schemas.plurnk.xyz/v0/ParsedPath.json" },
|
|
24
24
|
{ "type": "null" }
|
|
25
25
|
]
|
|
26
26
|
},
|
|
27
27
|
"LineMarkerOrNull": {
|
|
28
28
|
"oneOf": [
|
|
29
|
-
{ "$ref": "https://schemas.plurnk.
|
|
29
|
+
{ "$ref": "https://schemas.plurnk.xyz/v0/LineMarker.json" },
|
|
30
30
|
{ "type": "null" }
|
|
31
31
|
]
|
|
32
32
|
},
|
|
33
33
|
"TextLineMarkerOrNull": {
|
|
34
34
|
"oneOf": [
|
|
35
|
-
{ "$ref": "https://schemas.plurnk.
|
|
35
|
+
{ "$ref": "https://schemas.plurnk.xyz/v0/TextLineMarker.json" },
|
|
36
36
|
{ "type": "null" }
|
|
37
37
|
]
|
|
38
38
|
},
|
|
39
39
|
"MatcherBodyOrNull": {
|
|
40
40
|
"oneOf": [
|
|
41
|
-
{ "$ref": "https://schemas.plurnk.
|
|
41
|
+
{ "$ref": "https://schemas.plurnk.xyz/v0/MatcherBody.json" },
|
|
42
42
|
{ "type": "null" }
|
|
43
43
|
]
|
|
44
44
|
},
|
|
45
45
|
"PositionRef": {
|
|
46
|
-
"$ref": "https://schemas.plurnk.
|
|
46
|
+
"$ref": "https://schemas.plurnk.xyz/v0/Position.json"
|
|
47
47
|
},
|
|
48
48
|
"LookStatement": {
|
|
49
49
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/EntryReadResult.json",
|
|
4
4
|
"title": "EntryReadResult",
|
|
5
5
|
"description": "The runtime-neutral result of reading one client-visible entry, either completely or as one channel suffix.",
|
|
6
6
|
"oneOf": [
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"minimum": 400,
|
|
24
24
|
"maximum": 599
|
|
25
25
|
},
|
|
26
|
-
"problem": { "$ref": "https://schemas.plurnk.
|
|
26
|
+
"problem": { "$ref": "https://schemas.plurnk.xyz/v0/ProblemDetails.json" },
|
|
27
27
|
"entry": { "type": "null" }
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/FunctionalityCandidate.json",
|
|
4
|
+
"title": "FunctionalityCandidate",
|
|
5
|
+
"description": "One inert discovery result: an exact family definition with its provenance. Discovery never installs, persists, enables, or executes it.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": ["definition", "provenance"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"alias": {
|
|
11
|
+
"description": "The alias the candidate would take if added; a suggestion, never authority.",
|
|
12
|
+
"type": "string",
|
|
13
|
+
"minLength": 1
|
|
14
|
+
},
|
|
15
|
+
"summary": {
|
|
16
|
+
"type": "string"
|
|
17
|
+
},
|
|
18
|
+
"definition": {
|
|
19
|
+
"description": "The exact family definition, conforming to the family's definition schema.",
|
|
20
|
+
"type": "object"
|
|
21
|
+
},
|
|
22
|
+
"provenance": {
|
|
23
|
+
"type": "object",
|
|
24
|
+
"additionalProperties": false,
|
|
25
|
+
"required": ["kind", "source"],
|
|
26
|
+
"properties": {
|
|
27
|
+
"kind": { "type": "string", "minLength": 1 },
|
|
28
|
+
"source": { "type": "string", "minLength": 1 },
|
|
29
|
+
"reference": { "type": "string", "minLength": 1 }
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/FunctionalityDefinitionState.json",
|
|
4
|
+
"title": "FunctionalityDefinitionState",
|
|
5
|
+
"description": "One managed definition as a Worker sees it: its origin, desired enabledness, and current preparation outcome. Credentials never appear.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": ["alias", "origin", "state"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"alias": { "type": "string", "minLength": 1 },
|
|
11
|
+
"origin": { "enum": ["service", "worker"] },
|
|
12
|
+
"state": {
|
|
13
|
+
"description": "disabled: available, model-invisible. active: enabled and prepared. unavailable: enabled but preparation has an exact Problem. authorization-required: enabled and awaiting a protocol continuation.",
|
|
14
|
+
"enum": ["disabled", "active", "unavailable", "authorization-required"]
|
|
15
|
+
},
|
|
16
|
+
"definition": { "type": "object" },
|
|
17
|
+
"detail": {
|
|
18
|
+
"description": "Family-owned presentation facts about an active definition (a server's protocol version and tool names, an agent card summary). Never credentials, never authority.",
|
|
19
|
+
"type": "object"
|
|
20
|
+
},
|
|
21
|
+
"problem": { "$ref": "https://schemas.plurnk.xyz/v0/ProblemDetails.json" },
|
|
22
|
+
"authorization": {
|
|
23
|
+
"type": "object",
|
|
24
|
+
"additionalProperties": false,
|
|
25
|
+
"required": ["url"],
|
|
26
|
+
"properties": { "url": { "type": "string", "minLength": 1 } }
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"allOf": [
|
|
30
|
+
{ "if": { "properties": { "state": { "const": "unavailable" } } }, "then": { "required": ["problem"] } },
|
|
31
|
+
{ "if": { "properties": { "state": { "const": "authorization-required" } } }, "then": { "required": ["authorization"] } }
|
|
32
|
+
]
|
|
33
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/FunctionalityDiscoverQuery.json",
|
|
4
|
+
"title": "FunctionalityDiscoverQuery",
|
|
5
|
+
"description": "A family-neutral discovery request: a search term or an explicit source such as a URL, path, registry reference, or package.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"properties": {
|
|
9
|
+
"query": { "type": "string", "minLength": 1 },
|
|
10
|
+
"source": { "type": "string", "minLength": 1 },
|
|
11
|
+
"configuration": {
|
|
12
|
+
"description": "Caller-supplied configuration material the family interprets as candidates (a client's own PLURNK_MCP_* environment, a local directory list). It contributes candidates with client-configuration provenance; it never becomes durable authority.",
|
|
13
|
+
"type": "object"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/FunctionalityDiscoverResult.json",
|
|
4
|
+
"title": "FunctionalityDiscoverResult",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": ["family", "candidates"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"family": { "type": "string", "minLength": 1 },
|
|
10
|
+
"candidates": {
|
|
11
|
+
"type": "array",
|
|
12
|
+
"items": { "$ref": "https://schemas.plurnk.xyz/v0/FunctionalityCandidate.json" }
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/FunctionalityListResult.json",
|
|
4
|
+
"title": "FunctionalityListResult",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": ["family", "definitions"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"family": { "type": "string", "minLength": 1 },
|
|
10
|
+
"definitions": {
|
|
11
|
+
"type": "array",
|
|
12
|
+
"items": { "$ref": "https://schemas.plurnk.xyz/v0/FunctionalityDefinitionState.json" }
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/FunctionalityMutationResult.json",
|
|
4
|
+
"description": "The outcome of add, enable, disable, or remove: the committed state of the one affected alias. 201 added, 200 settled, 202 awaiting a protocol continuation.",
|
|
5
|
+
"title": "FunctionalityMutationResult",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": ["status", "family", "alias"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"status": { "type": "integer", "enum": [200, 201, 202] },
|
|
11
|
+
"family": { "type": "string", "minLength": 1 },
|
|
12
|
+
"alias": { "type": "string", "minLength": 1 },
|
|
13
|
+
"definition": { "$ref": "https://schemas.plurnk.xyz/v0/FunctionalityDefinitionState.json" },
|
|
14
|
+
"removed": { "const": true }
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/LineMarker.json",
|
|
4
4
|
"title": "LineMarker",
|
|
5
5
|
"description": "The ordered numeric components parsed from a `<scope>` slot. AstBuilder converts each lexical number to a JavaScript number; the operation owner assigns arity and meaning, including text coordinates, result positions, timing, mutation anchors, and an optional leading semantic threshold.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/LoopFlags.json",
|
|
4
4
|
"title": "LoopFlags",
|
|
5
5
|
"description": "The complete effective policy posture of one model loop. Persisted partial objects are expanded to this shape by the runtime owner before use or projection.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/MatcherBody.json",
|
|
4
4
|
"title": "MatcherBody",
|
|
5
5
|
"description": "Parsed body of a FIND/OPEN/FOLD statement, discriminated on `dialect`. The dialect is determined by the body's leading characters (`//` xpath, `/` regex, `$` jsonpath, `~` semantic, `@` graph, else glob). The regex variant carries pattern and flags split out of the `/pattern/flags` literal; every variant remains JSON-serializable.",
|
|
6
6
|
"oneOf": [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/McpConfigurationOverlay.json",
|
|
4
4
|
"title": "McpConfigurationOverlay",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"propertyNames": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json",
|
|
4
4
|
"title": "McpServerDefinition",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"additionalProperties": false,
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/McpServerOptions.json",
|
|
4
4
|
"title": "McpServerOptions",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"additionalProperties": false,
|
|
7
7
|
"properties": {
|
|
8
8
|
"args": {
|
|
9
9
|
"title": "McpServerArguments",
|
|
10
|
-
"$ref": "https://schemas.plurnk.
|
|
10
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/args"
|
|
11
11
|
},
|
|
12
12
|
"cwd": {
|
|
13
|
-
"$ref": "https://schemas.plurnk.
|
|
13
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/cwd"
|
|
14
14
|
},
|
|
15
15
|
"env": {
|
|
16
16
|
"title": "McpServerEnvironment",
|
|
17
|
-
"$ref": "https://schemas.plurnk.
|
|
17
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/env"
|
|
18
18
|
},
|
|
19
19
|
"headers": {
|
|
20
20
|
"title": "McpServerHeaders",
|
|
21
|
-
"$ref": "https://schemas.plurnk.
|
|
21
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/headers"
|
|
22
22
|
},
|
|
23
23
|
"authorization": {
|
|
24
24
|
"title": "McpServerAuthorization",
|
|
25
|
-
"$ref": "https://schemas.plurnk.
|
|
25
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/authorization"
|
|
26
26
|
},
|
|
27
27
|
"tools": {
|
|
28
28
|
"title": "McpServerToolNames",
|
|
29
|
-
"$ref": "https://schemas.plurnk.
|
|
29
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/tools"
|
|
30
30
|
},
|
|
31
31
|
"read": {
|
|
32
32
|
"title": "McpServerReadTools",
|
|
33
|
-
"$ref": "https://schemas.plurnk.
|
|
33
|
+
"$ref": "https://schemas.plurnk.xyz/v0/McpServerDefinition.json#/properties/read"
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ModelCatalogPage.json",
|
|
4
4
|
"title": "ModelCatalogPage",
|
|
5
5
|
"description": "One deterministic bounded page from the release-pinned model catalog.",
|
|
6
6
|
"type": "object",
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"$ref": "#/$defs/capabilities"
|
|
74
74
|
},
|
|
75
75
|
"readiness": {
|
|
76
|
-
"$ref": "https://schemas.plurnk.
|
|
76
|
+
"$ref": "https://schemas.plurnk.xyz/v0/ModelReadiness.json"
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ModelCatalogQuery.json",
|
|
4
4
|
"title": "ModelCatalogQuery",
|
|
5
5
|
"description": "A bounded query over the release-pinned Models.dev catalog.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.plurnk.
|
|
3
|
+
"$id": "https://schemas.plurnk.xyz/v0/ModelReadiness.json",
|
|
4
4
|
"title": "ModelReadiness",
|
|
5
5
|
"description": "Local configuration evidence that a catalog provider is ready to attempt a request, without probing or validating credentials.",
|
|
6
6
|
"type": "object",
|