Create Research Thread campaign
create_research_thread_campaignUse when the user wants Prism to keep investigating one Thread over time: an ordered plan of bounded runs (deepen, verify, red_team) with an optional recurring refresh cadence and a run bud…
When to use it
Use when the user wants Prism to keep investigating one Thread over time: an ordered plan of bounded runs (deepen, verify, red_team) with an optional recurring refresh cadence and a run budget.
List existing Threads first, inspect the case file, then add exact evidence, propose a revision, or start one bounded run and poll it to a terminal state.
The campaign record with plan, current step, run counts, next scheduled run, and status; runs appear on the Thread as they execute.
Avoid using it when
Do not use for a single one-off run, for a Thread the user has already resolved, or when the user has not authorized metered model work over time.
Advanced input contract
Agent hosts use this JSON Schema to validate the exact input shape.
View full registry notes
Start a long-horizon campaign on one Research Thread: an ordered plan of bounded, metered runs (deepen, verify, red_team, refresh) with a run budget, optional recurring refresh cadence, and stop conditions. Runs execute one at a time; the campaign cannot validate, reject, or incorporate the Thread. Use when: Use when the user wants Prism to keep investigating one Thread over time: an ordered plan of bounded runs (deepen, verify, red_team) with an optional recurring refresh cadence and... Avoid when: Do not use for a single one-off run, for a Thread the user has already resolved, or when the user has not authorized metered model work over time.
View JSON Schema
{
"type": "object",
"properties": {
"threadId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"plan": {
"type": "array",
"minItems": 1,
"maxItems": 12,
"description": "Ordered runs. Defaults to deepen, verify, red_team when omitted.",
"items": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"deepen",
"verify",
"red_team",
"refresh"
]
},
"prompt": {
"type": [
"string",
"null"
],
"maxLength": 4000
}
},
"required": [
"mode"
],
"additionalProperties": false
}
},
"cadence": {
"type": "string",
"enum": [
"once",
"daily",
"weekdays",
"weekly"
],
"default": "once",
"description": "After the plan finishes, keep issuing refresh runs at this cadence until a stop condition or the run budget is hit."
},
"maxRuns": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 6
},
"stopConditions": {
"type": "object",
"properties": {
"stopWhenResolved": {
"type": "boolean",
"default": true
},
"stopAtConfidenceAtLeast": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"stopAtConfidenceAtMost": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"maxConsecutiveFailures": {
"type": "integer",
"minimum": 1,
"maximum": 5
}
},
"additionalProperties": false
},
"idempotencyKey": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"threadId",
"idempotencyKey"
],
"additionalProperties": false
}