agent_persona_run
Run personas once to propose applyable changes to existing project material. Quote and obtain acceptance before Start; reuse billing IDs on retries.
When to use
- Quote first; show the price, then Start with billing_quote_id and a fresh billing_request_id. Reuse both on retries.
- Poll job_get, finalize by job_id, then apply the proposal_id only if has_actionable_changes.
When not to use
- For critique or coverage use story_review_run analysis_wizard/room_review; for mentor conversations use chat.
- For missing stage content use story_development_run; for exact edits use story_mutate or screenplay_snapshot_apply.
Examples
- “Continuity and character revision pass.”
Anti-examples
- General critique; a new outline; filling one treatment card.
Backend capabilities
agent_persona.run
Linked resources
Tool calls may return resource_links pointing at these resource families.
Input schema
agent_persona_run input
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"required": [
"phase",
"project_id"
],
"properties": {
"phase": {
"type": "string",
"enum": [
"quote",
"start",
"finalize",
"apply"
]
},
"project_id": {
"type": "integer"
},
"roles": {
"type": "array",
"minItems": 1,
"maxItems": 10,
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"writer",
"reviewer",
"character",
"continuity",
"planner",
"producer",
"dialogue",
"theme",
"format",
"clarity"
]
}
},
"direction": {
"type": "string",
"maxLength": 4000
},
"scope": {
"type": "object",
"properties": {
"scene_id": {
"type": "string"
},
"sequence_code": {
"type": "string"
},
"act_code": {
"type": "string"
}
},
"additionalProperties": false
},
"job_id": {
"type": "string"
},
"proposal_id": {
"type": "string"
},
"billing_quote_id": {
"type": "string",
"format": "uuid"
},
"billing_request_id": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false,
"allOf": [
{
"if": {
"properties": {
"phase": {
"enum": [
"quote",
"start"
]
}
}
},
"then": {
"required": [
"roles"
]
}
},
{
"if": {
"properties": {
"phase": {
"const": "finalize"
}
}
},
"then": {
"required": [
"job_id"
]
}
},
{
"if": {
"properties": {
"phase": {
"const": "apply"
}
}
},
"then": {
"required": [
"proposal_id"
]
}
},
{
"if": {
"properties": {
"phase": {
"const": "start"
}
}
},
"then": {
"required": [
"billing_quote_id",
"billing_request_id"
]
},
"else": {
"not": {
"anyOf": [
{
"required": [
"billing_quote_id"
]
},
{
"required": [
"billing_request_id"
]
}
]
}
}
}
]
}Output schema
agent_persona_run output
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"required": [
"phase"
],
"properties": {
"phase": {
"type": "string"
},
"proposal_id": {
"type": "string"
},
"async": {
"type": "boolean"
},
"job_id": {
"type": "string"
},
"status": {
"type": "string"
},
"poll_after_seconds": {
"type": "integer"
},
"has_actionable_changes": {
"type": "boolean"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"summary": {
"type": "array",
"items": {
"type": "object"
}
},
"updates": {
"type": "array",
"items": {
"type": "object"
}
},
"creates": {
"type": "array",
"items": {
"type": "object"
}
},
"notes_patch": {
"type": "object"
},
"screenplay_ops": {
"type": [
"object",
"null"
]
},
"applied_summary": {
"type": "object"
},
"snapshot_rev": {
"type": "integer"
},
"credits_charged": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"credits_skipped_reason": {
"type": "string"
},
"resource_links": {
"type": "array",
"items": {
"type": "object"
}
},
"quote": {
"type": "object",
"required": [
"quote_id",
"mode",
"allowance",
"expires_at"
],
"properties": {
"quote_id": {
"type": "string",
"format": "uuid"
},
"mode": {
"enum": [
"fixed",
"usage"
]
},
"allowance": {
"type": "integer",
"minimum": 0
},
"expires_at": {
"type": "string"
}
},
"additionalProperties": true
},
"billing_operation_id": {
"type": "string",
"format": "uuid"
},
"billing_status": {
"type": "string"
}
},
"additionalProperties": true
}← All toolsv1 · workflow_runner