> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs-beta.getzep.com/v4/sdk-reference/agent/plan/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs-beta.getzep.com/_mcp/server. # Plan an Agent split POST https://api.getzep.com/api/v4/agents/{agent_uuid}/split-plan Content-Type: application/json Reference: https://docs-beta.getzep.com/sdk-reference/agent/plan ## Authentication - `Authorization` header (required) (prefixed with ` Api-Key `) — Type "Api-Key" followed by a space and the project API key. ## Request ### Path parameters - `agent_uuid` (string, required) — Source Agent UUID ### Body (application/json) This endpoint expects a v4.CreateAgentSplitPlanRequest. - `destinations` (list of v4.AgentSplitPlanDestinationRequest, required) - `expected_revision` (integer, required) - `rationale` (string, required) - `review_acknowledged` (boolean, required) ## Response ### 200 OK - `authorizes_agent_creation` (boolean, optional) - `authorizes_publication` (boolean, optional) - `creates_resources` (boolean, optional) — A split plan is not human approval and grants no authority for later commands. - `destinations` (list of v4.AgentSplitPlanDestination, optional) - `rationale` (string, optional) - `review_acknowledged` (boolean, optional) - `source` (v4.AgentSplitPlanSource, optional) ## Errors ### 400 Bad Request Error Bad Request - `error` (v4.ErrorBody, optional) ### 401 Unauthorized Error Unauthorized - `error` (v4.ErrorBody, optional) ### 403 Forbidden Error Forbidden - `error` (v4.ErrorBody, optional) ### 404 Not Found Error Not Found - `error` (v4.ErrorBody, optional) ### 409 Conflict Error Conflict - `error` (v4.ErrorBody, optional) ## Types ### v4.AgentSplitPlanDestinationRequest - `agent` (v4.CreateAgentRequest, required) - `skills` (list of v4.AgentSplitPlanSkillSelectionRequest, required) ### v4.AgentSplitPlanDestination - `agent` (v4.CreateAgentRequest, optional) - `skills` (list of v4.AgentSplitPlanSkillReference, optional) ### v4.AgentSplitPlanSource - `agent_uuid` (string, optional) - `revision` (integer, optional) ### v4.ErrorBody - `code` (string, optional) - `details` (map from string to any, optional) - `message` (string, optional) - `param` (string, optional) - `request_id` (string, optional) ### v4.CreateAgentRequest - `agent_id` (string, required) — The developer-assigned Agent identifier, unique within the project. - `name` (string, required) — The Agent's display name. - `security_domain` (string, required) — The immutable boundary within which Skills may be synthesized. 1 to 200 characters of lowercase letters, digits, and the characters : . - _ - `deployment_id` (string, optional) — The customer deployment this Agent represents. - `description` (string, optional) — A human-readable description of the Agent. - `memory_settings` (v4.AgentMemorySettings, optional) — Agent Memory capture, compilation, and promotion settings. - `metadata` (map from string to any, optional) — Developer metadata used to organize and filter Agents. - `version` (string, optional, default: default) — The customer deployment version this Agent represents. If you omit it, the version is "default". ### v4.AgentSplitPlanSkillSelectionRequest - `skill_uuid` (string, required) - `skill_version_uuid` (string, required) - `version` (integer, required) ### v4.AgentSplitPlanSkillReference - `package_name` (string, optional) - `skill_id` (string, optional) - `skill_uuid` (string, optional) - `skill_version_uuid` (string, optional) - `status` (string, optional) - `version` (integer, optional) ### v4.AgentMemorySettings - `admission_evaluation_requirements` (list of v4.AgentMemoryEvaluationPolicy, optional) - `approval` (enum, optional) - Allowed values: `manual`, `auto` - `approval_minimum_attempt_families` (integer, optional) - `approval_required_tools` (list of string, optional) — ApprovalRequiredTools lists the tool names that need a member approval in auto approval. A generated Skill that uses one of these tools waits for a member. The default is an empty list. - `auto_approval_task_families` (list of string, optional) - `compilation_mode` (enum, optional) - Allowed values: `scheduled`, `manual`, `on_close` - `provisional_expiry_days` (integer, optional) — ProvisionalExpiryDays is the period after which Zep retires a provisional Skill that no application used. When it is not set, provisional Skills do not expire. - `provisional_skill_limit` (integer, optional) — ProvisionalSkillLimit is the maximum count of provisional Skills in one task family. Over the limit, a new provisional Skill waits for a member. When it is not set, no limit applies. - `retention_days` (integer, optional) ### v4.AgentMemoryEvaluationPolicy - `requirements` (list of v4.AgentMemoryEvaluationRequirement, required) - `task_family` (string, required) ### v4.AgentMemoryEvaluationRequirement - `evaluated_by` (string, required) - `evaluator_version` (string, required) - `result` (string, required) - `controlled` (boolean, optional) - `environment` (string, optional) ## Examples **Request** ```json { "destinations": [ { "agent": { "agent_id": "string", "name": "string", "security_domain": "string" }, "skills": [ { "skill_uuid": "string", "skill_version_uuid": "string", "version": 1 } ] } ], "expected_revision": 1, "rationale": "string", "review_acknowledged": true } ``` **Response** ```json { "authorizes_agent_creation": true, "authorizes_publication": true, "creates_resources": true, "destinations": [ { "agent": { "agent_id": "string", "name": "string", "security_domain": "string", "deployment_id": "string", "description": "string", "memory_settings": { "admission_evaluation_requirements": [ { "requirements": [ { "evaluated_by": "string", "evaluator_version": "string", "result": "string", "controlled": true, "environment": "string" } ], "task_family": "string" } ], "approval": "manual", "approval_minimum_attempt_families": 1, "approval_required_tools": [ "string" ], "auto_approval_task_families": [ "string" ], "compilation_mode": "scheduled", "provisional_expiry_days": 1, "provisional_skill_limit": 1, "retention_days": 1 }, "metadata": {}, "version": "default" }, "skills": [ { "package_name": "string", "skill_id": "string", "skill_uuid": "string", "skill_version_uuid": "string", "status": "string", "version": 1 } ] } ], "rationale": "string", "review_acknowledged": true, "source": { "agent_uuid": "string", "revision": 1 } } ```