Get agent detail
Returns agent detail including input, output, and the dependencies group (skills, mcp_servers, integrations). Two tiers of read: agents:read returns the whole resource, while agents:run alone returns a summary — input (schema, stored values, locked fields), output, effective_timeout_seconds, home_space_id, home_writable, running_runs, last_run and dependencies.integrations — omitting manifest, prompt, updatedAt, the ETag, version_count, has_unarchived_changes, forked_from and the skills and MCP servers the agent is built from (dependencies.skills, dependencies.mcp_servers).
/api/packages/agents/{scope}/{name}Cookie session from Better Auth. Requires X-Org-Id header for org-scoped routes.
In: cookie
Path Parameters
Package scope (e.g. @myorg)
^@[a-z0-9][a-z0-9-]*$Package name
Query Parameters
Which agent definition to project: draft (the live editor working copy), published (latest published), or a version spec (exact version, dist-tag, or semver range). Omitted follows authority WITHOUT ever refusing a readable agent: the draft for a caller who may WRITE it, the latest published version for everybody else, and the draft in read-only when nothing is published at all — reading is not executing, and a package the listing shows must have a page. The response's definition says which of the two was projected. Explicit draft is a different act: naming the working copy requires that write authority and answers 403 draft_not_writable otherwise. A concrete version returns input / output / dependencies from that published manifest — the same definition the run executes (issue #770) — so the run-with-options modal stays consistent with the selected version. Ignored for system agents.
Header Parameters
Organization ID. Required for cookie auth. Not needed for API key auth (org resolved from key).
uuidSpace ID. Required for space-scoped routes (agents, runs, schedules, and space-scoped module routes). Not needed for API key auth (space resolved from key).
curl -X GET "https://your-instance/api/packages/agents/string/string"{
"id": "string",
"display_name": "string",
"description": "string",
"source": "local",
"scope": "string",
"version": "string",
"definition": "draft",
"manifest": {
"name": "string",
"version": "string",
"type": "agent",
"display_name": "string",
"description": "string",
"long_description": "string",
"keywords": [
"string"
],
"license": "string",
"author": "string",
"repository": "string",
"homepage": "string",
"documentation": "string",
"support": "string",
"icon": "string",
"icons": [
{
"src": "string",
"size": "string",
"theme": "light",
"property1": null,
"property2": null
}
],
"screenshots": [
"string"
],
"privacy_policies": [
"string"
],
"compatibility": {
"platforms": [
"darwin"
],
"runtimes": {
"property1": "string",
"property2": "string"
},
"clients": {
"property1": "string",
"property2": "string"
},
"property1": null,
"property2": null
},
"schema_version": "string",
"dependencies": {
"skills": {
"property1": "string",
"property2": "string"
},
"mcp_servers": {
"property1": "string",
"property2": "string"
},
"integrations": {
"property1": "string",
"property2": "string"
},
"property1": null,
"property2": null
},
"_meta": {
"property1": {
"property1": null,
"property2": null
},
"property2": {
"property1": null,
"property2": null
}
},
"integrations_configuration": {
"property1": {
"tools": [
"string"
],
"scopes": [
"string"
],
"auth_key": "string",
"property1": null,
"property2": null
},
"property2": {
"tools": [
"string"
],
"scopes": [
"string"
],
"auth_key": "string",
"property1": null,
"property2": null
}
},
"input": {
"schema": {
"definitions": {},
"dependencies": {},
"$recursiveAnchor": "string",
"$recursiveRef": "../dictionary",
"$id": "../dictionary",
"$schema": "http://example.com",
"$ref": "../dictionary",
"$anchor": "string",
"$dynamicRef": "../dictionary",
"$dynamicAnchor": "string",
"$vocabulary": {
"property1": true,
"property2": true
},
"$comment": "string",
"$defs": {
"property1": null,
"property2": null
},
"prefixItems": [
null
],
"items": null,
"contains": null,
"additionalProperties": null,
"properties": {},
"patternProperties": {},
"dependentSchemas": {},
"propertyNames": null,
"if": null,
"then": null,
"else": null,
"allOf": [
null
],
"anyOf": [
null
],
"oneOf": [
null
],
"not": null,
"unevaluatedItems": null,
"unevaluatedProperties": null,
"const": true,
"enum": [
true
],
"multipleOf": 1,
"maximum": 0,
"exclusiveMaximum": 0,
"minimum": 0,
"exclusiveMinimum": 0,
"maxLength": 0,
"minLength": 0,
"pattern": "/regex/",
"maxItems": 0,
"minItems": 0,
"uniqueItems": false,
"maxContains": 0,
"minContains": 1,
"maxProperties": 0,
"minProperties": 0,
"required": [],
"dependentRequired": {
"property1": [],
"property2": []
},
"title": "string",
"description": "string",
"default": true,
"deprecated": false,
"readOnly": false,
"writeOnly": false,
"examples": [
true
],
"format": "string",
"contentEncoding": "string",
"contentMediaType": "string",
"contentSchema": null,
"type": "object"
},
"file_constraints": {
"property1": {
"accept": "string",
"max_size": 1,
"property1": null,
"property2": null
},
"property2": {
"accept": "string",
"max_size": 1,
"property1": null,
"property2": null
}
},
"ui_hints": {
"property1": {
"placeholder": "string",
"property1": null,
"property2": null
},
"property2": {
"placeholder": "string",
"property1": null,
"property2": null
}
},
"property_order": [
"string"
],
"_meta": {
"property1": {
"property1": null,
"property2": null
},
"property2": {
"property1": null,
"property2": null
}
}
},
"output": {
"schema": {
"definitions": {},
"dependencies": {},
"$recursiveAnchor": "string",
"$recursiveRef": "../dictionary",
"$id": "../dictionary",
"$schema": "http://example.com",
"$ref": "../dictionary",
"$anchor": "string",
"$dynamicRef": "../dictionary",
"$dynamicAnchor": "string",
"$vocabulary": {
"property1": true,
"property2": true
},
"$comment": "string",
"$defs": {
"property1": null,
"property2": null
},
"prefixItems": [
null
],
"items": null,
"contains": null,
"additionalProperties": null,
"properties": {},
"patternProperties": {},
"dependentSchemas": {},
"propertyNames": null,
"if": null,
"then": null,
"else": null,
"allOf": [
null
],
"anyOf": [
null
],
"oneOf": [
null
],
"not": null,
"unevaluatedItems": null,
"unevaluatedProperties": null,
"const": true,
"enum": [
true
],
"multipleOf": 1,
"maximum": 0,
"exclusiveMaximum": 0,
"minimum": 0,
"exclusiveMinimum": 0,
"maxLength": 0,
"minLength": 0,
"pattern": "/regex/",
"maxItems": 0,
"minItems": 0,
"uniqueItems": false,
"maxContains": 0,
"minContains": 1,
"maxProperties": 0,
"minProperties": 0,
"required": [],
"dependentRequired": {
"property1": [],
"property2": []
},
"title": "string",
"description": "string",
"default": true,
"deprecated": false,
"readOnly": false,
"writeOnly": false,
"examples": [
true
],
"format": "string",
"contentEncoding": "string",
"contentMediaType": "string",
"contentSchema": null,
"type": "object"
},
"file_constraints": {
"property1": {
"accept": "string",
"max_size": 1,
"property1": null,
"property2": null
},
"property2": {
"accept": "string",
"max_size": 1,
"property1": null,
"property2": null
}
},
"ui_hints": {
"property1": {
"placeholder": "string",
"property1": null,
"property2": null
},
"property2": {
"placeholder": "string",
"property1": null,
"property2": null
}
},
"property_order": [
"string"
],
"_meta": {
"property1": {
"property1": null,
"property2": null
},
"property2": {
"property1": null,
"property2": null
}
}
},
"timeout": 1,
"property1": null,
"property2": null,
"runtime_tools": [
"output"
]
},
"prompt": "string",
"updatedAt": "2019-08-24T14:15:22Z",
"input": {
"values": {},
"locked_fields": [
"string"
],
"schema": {},
"file_constraints": {
"property1": {
"accept": "string",
"max_size": 0
},
"property2": {
"accept": "string",
"max_size": 0
}
},
"ui_hints": {
"property1": {
"placeholder": "string"
},
"property2": {
"placeholder": "string"
}
},
"property_order": [
"string"
]
},
"output": {
"schema": {},
"property_order": [
"string"
]
},
"dependencies": {
"skills": [
{
"id": "string",
"version": "string",
"name": "string",
"description": "string",
"home_writable": true
}
],
"mcp_servers": [
{
"id": "string",
"version": "string"
}
],
"integrations": [
{
"id": "string",
"version": "string",
"tools": [
"string"
],
"scopes": [
"string"
]
}
]
},
"last_run": {
"id": "string",
"status": "string",
"started_at": "2019-08-24T14:15:22Z",
"duration": 0
},
"running_runs": 0,
"version_count": 0,
"forked_from": "string",
"home_space_id": "string",
"home_writable": true,
"home_deletable": true,
"home_shareable": true,
"has_unarchived_changes": true,
"effective_timeout_seconds": 0,
"active": true
}{
"type": "https://docs.appstrate.dev/errors/unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "Invalid or missing session",
"code": "unauthorized",
"request_id": "req_abc123"
}{
"type": "https://docs.appstrate.dev/errors/forbidden",
"title": "Forbidden",
"status": 403,
"detail": "Insufficient permissions",
"code": "forbidden",
"request_id": "req_abc123"
}{
"type": "https://docs.appstrate.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Resource not found",
"code": "not_found",
"request_id": "req_abc123"
}{
"type": "http://example.com",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"code": "string",
"request_id": "string",
"param": "string",
"retry_after": 0,
"errors": [
{
"field": "string",
"code": "string",
"message": "string",
"title": "string",
"candidate_connections": [
{
"id": "string",
"label": "string",
"account_id": "string",
"owned_by_actor": true,
"needs_reconnection": true
}
],
"connection_id": "string",
"missing_scopes": [
"string"
],
"owned_by_actor": true,
"required_scopes": [
"string"
],
"auth_key": "string",
"required_auth_key": "string",
"available_auth_keys": [
"string"
],
"connect_url": "http://example.com",
"expiresAt": "2019-08-24T14:15:22Z",
"packageId": "string"
}
]
}