AgentConnect
Agents

Update an agent

Edit the agent spec or widen an existing GitHub workspace from read to write access; the change hot-syncs the owning daemon’s replica and rides the next register/launch. A managed memory binding without a home keeps the current one. Switching the home from daemon to control-plane is accepted and flags a migration the owning daemon completes; the reverse is refused with 409 unless force is set, and then drops every memory file and change-log record the Control Plane holds for the agent. An agent placed on a group or the managed pool cannot name the daemon home. A new execution (or the legacy runInSandbox) is checked against the strategies the placement reports and refused with 409 when it cannot run there; it reaches only sessions created afterwards. repositorySelector names the Decision provider and model the per-session repository selector asks, must answer Choice questions (400 otherwise), and null clears it (409 while any repository authorization or installation grant is marked decision).

PATCH
/v1/orgs/{orgId}/agents/{id}

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Path Parameters

orgId*string
id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/v1/orgs/string/agents/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "string",  "orgId": "string",  "name": "string",  "displayName": "string",  "builtin": true,  "icon": {    "kind": "runtime"  },  "iconUrl": "string",  "description": "string",  "runtime": "string",  "model": "string",  "reasoningEffort": "string",  "outputMode": "string",  "showFooter": true,  "showStatusBar": true,  "fastMode": true,  "permissionMode": "string",  "allowRuntimeChangesInChat": true,  "pause": true,  "env": {    "property1": "string",    "property2": "string"  },  "secretKeys": [    "string"  ],  "organizationVariables": [    {      "key": "string",      "value": "string"    }  ],  "organizationSecretKeys": [    "string"  ],  "mcpServers": [    "string"  ],  "skills": [    "string"  ],  "managedSkills": [    "c4df27e1-6f4c-41ef-86f9-baccc4a06930"  ],  "decisionIds": [    "e744da2d-8f5c-4e11-a126-0c6194d4b80a"  ],  "modelSelection": {    "decisionId": "caa985ad-f12f-4ef1-943f-c1812738ec7a",    "rules": [      {        "runtime": "string",        "model": "string",        "effort": "string",        "permissionMode": "string",        "fastMode": true,        "when": {          "type": "choice",          "thresholds": {            "property1": 0,            "property2": 0          }        }      }    ],    "steps": [      {        "decisionId": "caa985ad-f12f-4ef1-943f-c1812738ec7a",        "rules": [          {            "runtime": "string",            "model": "string",            "effort": "string",            "permissionMode": "string",            "fastMode": true,            "when": {              "type": "choice",              "thresholds": {                "property1": 0,                "property2": 0              }            }          }        ],        "id": "string"      }    ]  },  "repositorySelector": {    "providerId": "string",    "model": "string"  },  "memory": {    "provider": "managed",    "autoDistill": true,    "dreaming": {      "enabled": true,      "sessionWindow": 1,      "schedule": "string",      "timezone": "string",      "instructions": "string",      "mineSkills": true,      "autoAdopt": true    },    "scope": "agent",    "home": "daemon",    "homeMigration": "pending"  },  "status": "string",  "placementKind": "daemon",  "daemonId": "string",  "daemonName": "string",  "setId": "string",  "placementReady": true,  "holderDaemonId": "string",  "workspace": {    "mode": "scratch"  },  "workspaceRepoId": "string",  "capabilities": [    "string"  ],  "createdAt": "string",  "createdBy": "string",  "lastModifiedAt": "string",  "lastModifiedBy": "string",  "visibility": "org",  "sharedWith": [    "string"  ],  "canEdit": true,  "canManageSharing": true,  "callPolicy": "all",  "allowedCallerAgentIds": [    "string"  ],  "outboundPolicy": "all",  "allowedTargetAgentIds": [    "string"  ],  "introduceOnJoin": true,  "runInSandbox": true,  "execution": "string",  "strategies": {    "property1": {      "available": true    },    "property2": {      "available": true    }  },  "sandboxSupported": true,  "sandboxRequired": true,  "sandboxUnavailable": "string",  "hookKinds": [    "webhook"  ]}