All tools
ToolWrite

Create Research Thread campaign

create_research_thread_campaign

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 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.

Typical workflow

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.

What it returns

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
}

Useful next tools