Skip to main content
Version: 0.1.0

AgentDefinition schema

The agent document type, validated against the published JSON schema.

Example

agent.json
{
"id": "writer-agent",
"name": "Writer Agent",
"locality": "LOCAL",
"version": "1.0.0",
"systemPrompt": "You are a concise writer.",
"providerPreferences": [
{
"provider": "openai",
"model": "gpt-4o-mini"
}
],
"supportedCommands": [
"COMPLETE",
"CONTINUE"
]
}

Properties

PropertyTypeRequiredDescription
idstringyesUnique agent identifier. Must match the agent directory name stem.
namestringyes
localityenum (LOCAL, CLOUD)yesLOCAL runs on operator-controlled infrastructure(i.e. Ollama, vllm). CLOUD calls an external API(i.e. ChatGpt, Claude).
enabledbooleannoWhether the agent is enabled. Disabled agents are ignored by the system.
systemPromptstringnoInline system prompt. If omitted, systemprompt.md in the agent directory is used.
providerPreferencesarray of ProviderPreferenceyesOrdered list of provider preferences. First available provider is used.
supportedCommandsarray | nullnoSubset of commands this agent may return. Null means all commands.
authorstringnoAuthor of the agent. Optional metadata.
contactstringnoContact information for the agent author. Optional metadata.
versionstringyesAgent version. Can be used for display or to trigger specific logic based on version.
modelTierenum (LITE, STANDARD, POWERFUL, null)noOptional capability tier resolved to a concrete model per provider at invocation time. A raw model pin on a providerPreference always wins over the tier. Null relies on pins or provider defaults.

Definitions

ProviderPreference

PropertyTypeRequiredDescription
providerenum (azure-openai, bedrock, claude, gemini, mistral, ollama, openai, openai-compatible, vllm)yesLowercase provider name.
modelstring | nullnoOptional model override. Null means use provider default.