Add file-backed personality support and listing

This commit is contained in:
Eric Traut
2026-03-30 14:43:42 -06:00
parent ae057e0bb9
commit 8e00fec700
61 changed files with 1741 additions and 366 deletions

View File

@@ -1177,6 +1177,30 @@
"title": "Skills/listRequest",
"type": "object"
},
{
"properties": {
"id": {
"$ref": "#/definitions/RequestId"
},
"method": {
"enum": [
"personalities/list"
],
"title": "Personalities/listRequestMethod",
"type": "string"
},
"params": {
"$ref": "#/definitions/PersonalitiesListParams"
}
},
"required": [
"id",
"method",
"params"
],
"title": "Personalities/listRequest",
"type": "object"
},
{
"properties": {
"id": {
@@ -6276,11 +6300,84 @@
}
]
},
"Personality": {
"PersonalitiesListEntry": {
"properties": {
"cwd": {
"type": "string"
},
"personalities": {
"items": {
"$ref": "#/definitions/PersonalityMetadata"
},
"type": "array"
}
},
"required": [
"cwd",
"personalities"
],
"type": "object"
},
"PersonalitiesListParams": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"cwds": {
"items": {
"$ref": "#/definitions/AbsolutePathBuf"
},
"type": [
"array",
"null"
]
}
},
"title": "PersonalitiesListParams",
"type": "object"
},
"PersonalitiesListResponse": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"data": {
"items": {
"$ref": "#/definitions/PersonalitiesListEntry"
},
"type": "array"
}
},
"required": [
"data"
],
"title": "PersonalitiesListResponse",
"type": "object"
},
"PersonalityMetadata": {
"properties": {
"description": {
"type": "string"
},
"isBuiltIn": {
"type": "boolean"
},
"name": {
"type": "string"
},
"scope": {
"$ref": "#/definitions/PersonalityScope"
}
},
"required": [
"description",
"isBuiltIn",
"name",
"scope"
],
"type": "object"
},
"PersonalityScope": {
"enum": [
"none",
"friendly",
"pragmatic"
"builtin",
"user",
"repo"
],
"type": "string"
},
@@ -11284,13 +11381,9 @@
]
},
"personality": {
"anyOf": [
{
"$ref": "#/definitions/Personality"
},
{
"type": "null"
}
"type": [
"string",
"null"
]
},
"sandbox": {
@@ -11565,13 +11658,9 @@
]
},
"personality": {
"anyOf": [
{
"$ref": "#/definitions/Personality"
},
{
"type": "null"
}
"type": [
"string",
"null"
]
},
"sandbox": {
@@ -12219,15 +12308,11 @@
"description": "Optional JSON Schema used to constrain the final assistant message for this turn."
},
"personality": {
"anyOf": [
{
"$ref": "#/definitions/Personality"
},
{
"type": "null"
}
],
"description": "Override the personality for this turn and subsequent turns."
"description": "Override the personality for this turn and subsequent turns.",
"type": [
"string",
"null"
]
},
"sandboxPolicy": {
"anyOf": [