These are the typed shapes behind agents and skills. Every create-or-update path validates against the matching shape before anything is saved, so the fields, types, and defaults below are exactly what the platform accepts. A field that points at a nested object links to that object’s own table further down.
Agent and skill specs
AgentSpec
The shape an agent is created and validated against. See Agents for what each setting does.
| Field | Type | Required | Default |
|---|
name | string | Yes | |
slug | string | Yes | |
status | string | | draft |
charter | CharterRef or InlineCharter | Yes | |
model_id | string or null | | null |
max_loop_iterations | integer | | 20 |
max_tokens_per_run | integer | | 100000 |
autonomy_mode | string | | propose |
default_approver_user_id | string or null | | null |
default_approver_group_id | string or null | | null |
output_config | object or null | | null |
tools | array of string | | |
capability_bindings | object | | |
allowed_sources | array of string or null | | null |
reach_mode | string | | restricted |
triggers | array of TriggerSpec | | |
service_account_roles | array of string | | |
CharterRef
| Field | Type | Required | Default |
|---|
skill_id | string | Yes | |
InlineCharter
| Field | Type | Required | Default |
|---|
body | string | Yes | |
name | string or null | | null |
notes | string or null | | null |
required_tools | array of string or null | | null |
TriggerSpec
| Field | Type | Required | Default |
|---|
trigger_kind | string | | manual |
trigger_ref_table | string or null | | null |
trigger_ref_id | string or null | | null |
trigger_type | string or null | | null |
table_name | string or null | | null |
conditions | object or null | | null |
is_default | boolean | | false |
SkillSpec
The shape of a reusable skill. See Skills and knowledge.
| Field | Type | Required | Default |
|---|
name | string | Yes | |
body | string | | "" |
kind | string | | invocable |
surface_id | string or null | | null |
applies_to_intents | array of string | | |
applies_to_tools | array of string | | |
required_tools | array of string | | |
priority | integer | | 100 |
response_schema | object or null | | null |
notes | string or null | | null |
applies_to_table | string or null | | null |
applies_to_capability | string or null | | null |
note_settings | object or null | | null |