com.publicdomainrelay.temp.agent.skill
Schema Diff
+14 -1
Compatibility Analysis
Backward Compatible
Backward compatible. 6 non-breaking changes.
Non-Breaking Changes (6)
- AddedVertex AddedVertex { vertex_id: "com.publicdomainrelay.temp.agent.skill:body.content" }
- AddedVertex AddedVertex { vertex_id: "com.publicdomainrelay.temp.agent.skill:body.tools" }
- AddedVertex AddedVertex { vertex_id: "com.publicdomainrelay.temp.agent.skill:body.tools:items" }
- AddedEdge AddedEdge { src: "com.publicdomainrelay.temp.agent.skill:body", tgt: "com.publicdomainrelay.temp.agent.skill:body.content", kind: "prop", name: Some("content") }
- AddedEdge AddedEdge { src: "com.publicdomainrelay.temp.agent.skill:body", tgt: "com.publicdomainrelay.temp.agent.skill:body.tools", kind: "prop", name: Some("tools") }
- AddedEdge AddedEdge { src: "com.publicdomainrelay.temp.agent.skill:body.tools", tgt: "com.publicdomainrelay.temp.agent.skill:body.tools:items", kind: "items", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "com.publicdomainrelay.temp.agent.skill:body.content" }AddedVertex { vertex_id: "com.publicdomainrelay.temp.agent.skill:body.tools" }AddedVertex { vertex_id: "com.publicdomainrelay.temp.agent.skill:body.tools:items" }
Additional Notes
- Non-breaking: AddedEdge { src: "com.publicdomainrelay.temp.agent.skill:body", tgt: "com.publicdomainrelay.temp.agent.skill:body.content", kind: "prop", name: Some("content") }
- Non-breaking: AddedEdge { src: "com.publicdomainrelay.temp.agent.skill:body", tgt: "com.publicdomainrelay.temp.agent.skill:body.tools", kind: "prop", name: Some("tools") }
- Non-breaking: AddedEdge { src: "com.publicdomainrelay.temp.agent.skill:body.tools", tgt: "com.publicdomainrelay.temp.agent.skill:body.tools:items", kind: "items", name: None }
1
1
{
2
2
"id": "com.publicdomainrelay.temp.agent.skill",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"name",
11
11
"description",
12
+
"content",
12
13
"createdAt"
13
14
],
14
15
"properties": {
15
16
"name": {
16
17
"type": "string",
17
18
"description": "Human-readable name of the skill."
18
19
},
20
+
"tools": {
21
+
"type": "array",
22
+
"items": {
23
+
"ref": "com.atproto.repo.strongRef",
24
+
"type": "ref"
25
+
},
26
+
"description": "TypeScript tools the skill provides. Each entry is a strongRef to a com.publicdomainrelay.temp.agent.tool.typescript record (which carries the FULL embedded source, deno.json, and deno.lock). Decoupling from the agent.skill record means the same tool can be referenced from multiple skills, and a remote agent fetching this skill can resolve and execute the tool without filesystem access."
27
+
},
28
+
"content": {
29
+
"type": "string",
30
+
"description": "The skill itself."
31
+
},
19
32
"examples": {
20
33
"type": "array",
21
34
"items": {
22
35
"ref": "com.atproto.repo.strongRef",
23
36
"type": "ref"
24
37
},
25
38
"description": "Strong references to example records demonstrating this skill."
26
39
},
27
40
"createdAt": {
28
41
"type": "string",
29
42
"description": "ISO 8601 timestamp when this skill record was created."
30
43
},
31
44
"description": {
32
45
"type": "string",
33
46
"description": "Instructions for when and how to use this skill."
34
47
},
35
48
"property_references": {
36
49
"type": "array",
37
50
"items": {
38
51
"ref": "#propertyReference",
39
52
"type": "ref"
40
53
},
41
54
"description": "Annotated path-value pairs describing fields within the example records. Each entry either carries a literal string value or a strongRef that resolves (recursively) to the value at that path."
42
55
}
43
56
}
44
57
},
45
-
"description": "An agent skill record that describes a capability the agent can perform, with examples and property references."
58
+
"description": "An agent skill record that describes a capability the agent can perform, with examples, property references, and optionally TypeScript tools the agent can invoke."
46
59
},
47
60
"propertyReference": {
48
61
"type": "object",
49
62
"required": [
50
63
"path"
51
64
],
52
65
"properties": {
53
66
"ref": {
54
67
"ref": "com.atproto.repo.strongRef",
55
68
"type": "ref",
56
69
"description": "Strong reference to a record that contains the example data."
57
70
},
58
71
"path": {
59
72
"type": "string",
60
73
"description": "JSONPath-like dotted path into the resolved example tree, e.g. '.examples[].value.payload.value.user_data'."
61
74
}
62
75
},
63
76
"description": "A single path-annotated value reference within a skill's example records. Carries either a literal string or a strongRef pointing to the value."
64
77
}
65
78
},
66
79
"$type": "com.atproto.lexicon.schema",
67
80
"lexicon": 1
68
81
}