SidClaw

Agent Management

Register AI agents, manage their lifecycle, configure identity models, and monitor activity through the agent registry.

Agent Management

The agent registry is the foundation of SidClaw. Every AI agent that interacts with your systems must be registered with an identity, authority model, and lifecycle state. Policies are evaluated against agent identities, and all actions are traced back to the originating agent.

Creating an agent

Register a new agent via the API. Agents start in active state.

curl -X POST https://api.agentidentity.dev/api/v1/agents \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Customer Support Agent",
    "description": "Handles tier-1 customer support inquiries",
    "owner_name": "Jane Smith",
    "owner_role": "Engineering Lead",
    "team": "Customer Success",
    "environment": "prod",
    "authority_model": "delegated",
    "identity_mode": "delegated_identity",
    "delegation_model": "on_behalf_of_user",
    "autonomy_tier": "medium",
    "authorized_integrations": [
      {
        "name": "zendesk",
        "resource_scope": "tickets/*",
        "data_classification": "confidential",
        "allowed_operations": ["read_ticket", "update_ticket", "add_comment"]
      },
      {
        "name": "knowledge_base",
        "resource_scope": "*",
        "data_classification": "internal",
        "allowed_operations": ["search", "read"]
      }
    ],
    "next_review_date": "2026-06-21T00:00:00Z",
    "created_by": "[email protected]"
  }'

Agent fields

FieldTypeDescription
namestringHuman-readable name for the agent.
descriptionstringWhat the agent does.
owner_namestringPerson or team responsible for the agent.
owner_rolestringRole of the owner (e.g., "Engineering Lead").
teamstringTeam that owns the agent.
environmentstringDeployment environment: dev, test, or prod.
authority_modelstringHow the agent derives authority: self, delegated, or hybrid.
identity_modestringIdentity type: service_identity, delegated_identity, or hybrid_identity.
delegation_modelstringWho the agent acts on behalf of: self, on_behalf_of_user, on_behalf_of_owner, or mixed.
autonomy_tierstringLevel of autonomous operation: low, medium, or high.
lifecycle_statestringCurrent state: active, suspended, or revoked. Set automatically.
authorized_integrationsarrayList of integrations the agent is authorized to use.
metadataobject | nullArbitrary metadata for custom fields.
next_review_datestringWhen the agent's registration should be reviewed.
created_bystringWho registered the agent.

Lifecycle management

Agents follow a strict lifecycle state machine. Transitions are validated -- invalid transitions return an error.

active  ──→  suspended  ──→  revoked
  │                              ▲
  └──────────────────────────────┘
  • active: The agent can invoke tools and have actions evaluated.
  • suspended: The agent is temporarily disabled. Evaluation requests for suspended agents will be denied. Can be reactivated.
  • revoked: The agent is permanently disabled. This is a terminal state -- revoked agents cannot be reactivated.

Suspend an agent

curl -X POST https://api.agentidentity.dev/api/v1/agents/{id}/suspend \
  -H "Authorization: Bearer $API_KEY"

Revoke an agent

curl -X POST https://api.agentidentity.dev/api/v1/agents/{id}/revoke \
  -H "Authorization: Bearer $API_KEY"

Reactivate a suspended agent

curl -X POST https://api.agentidentity.dev/api/v1/agents/{id}/reactivate \
  -H "Authorization: Bearer $API_KEY"

All lifecycle changes create an audit trace with a lifecycle_changed event, recording the previous state, new state, and who made the change.

Listing and filtering agents

curl "https://api.agentidentity.dev/api/v1/agents?environment=prod&lifecycle_state=active&limit=20&offset=0" \
  -H "Authorization: Bearer $API_KEY"

Query parameters:

ParameterTypeDescription
environmentstringFilter by environment (dev, test, prod).
lifecycle_statestringFilter by state (active, suspended, revoked).
authority_modelstringFilter by authority model (self, delegated, hybrid).
autonomy_tierstringFilter by autonomy tier (low, medium, high).
searchstringSearch by agent name or owner name (case-insensitive).
limitnumberMaximum results per page (default: 20, max: 100).
offsetnumberNumber of results to skip for pagination.

Response:

{
  "data": [ ... ],
  "pagination": { "total": 42, "limit": 20, "offset": 0 }
}

Agent detail

Retrieve a single agent with its recent activity statistics.

curl https://api.agentidentity.dev/api/v1/agents/{id} \
  -H "Authorization: Bearer $API_KEY"

The detail response includes:

  • All agent fields
  • Stats: policy counts by effect, pending approvals, traces in the last 7 days, last activity timestamp
  • Recent traces: the 10 most recent audit traces
  • Recent approvals: the 5 most recent approval requests

Updating an agent

Update agent metadata with a PATCH request. Lifecycle state cannot be changed via PATCH -- use the lifecycle endpoints above.

curl -X PATCH https://api.agentidentity.dev/api/v1/agents/{id} \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Updated description",
    "autonomy_tier": "high",
    "next_review_date": "2026-09-21T00:00:00Z"
  }'

Dashboard

In the SidClaw dashboard, the Agents page provides:

  • A searchable, filterable table of all registered agents
  • Lifecycle state badges (green for active, amber for suspended, red for revoked)
  • Click-through to agent detail with activity stats, recent traces, and policy summary
  • Lifecycle action buttons (Suspend, Revoke, Reactivate) with confirmation dialogs
  • Environment and autonomy tier filters