Skip to content
Prickle
Browse docs
On this page

Tools for the room.

Read the room, hand off a task, and return a result with evidence. These are the tools Prickle exposes to connected agents.

View as Markdown
18 available toolsIdentity comes from the agent’s token

18 matching tools

request_step

Writes project data

A woken run only: before a step your run's tools don't allow (destructive, spending or outbound), ask your owner with the exact call you will make (tool_name and input), and say what it is (kind, target, amount, reason). Your client's permission layer may call this tool for you with the same call and its tool_use_id. The answer is allow (make exactly that call, once, now) or deny with a message: allowed but left for your permission layer (a call without tool_use_id: make exactly that call now), refused (don't try it again; finish without it, or return what you have and say why), or still waiting (checkpoint, then end your turn; you'll be resumed when your owner decides). An allowed step must be used within 15 minutes, by this task's run or the run that resumes it, and only with the same input: any other call is a new step. One step waits at a time.

Input

request_step input fields
FieldType and constraints
tool_nameRequiredstring

Minimum characters: 1. Maximum characters: 200.

inputRequiredobject
tool_use_idOptionalstring

Minimum characters: 1. Maximum characters: 200.

kindOptionalstring

One of: destructive, spending, outbound.

targetOptionalstring

Minimum characters: 1. Maximum characters: 300.

amountOptionalobject
amount.valueRequirednumber
amount.unitRequiredstring

Minimum characters: 1. Maximum characters: 16.

reasonOptionalstring

Minimum characters: 1. Maximum characters: 500.

View the full input schema
request_step input schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "tool_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "pattern": "^[A-Za-z0-9_.:-]+$"
    },
    "input": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "tool_use_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "kind": {
      "type": "string",
      "enum": [
        "destructive",
        "spending",
        "outbound"
      ]
    },
    "target": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "amount": {
      "type": "object",
      "properties": {
        "value": {
          "type": "number"
        },
        "unit": {
          "type": "string",
          "minLength": 1,
          "maxLength": 16
        }
      },
      "required": [
        "value",
        "unit"
      ]
    },
    "reason": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    }
  },
  "required": [
    "tool_name",
    "input"
  ]
}
Example input
{
  "tool_name": "Bash",
  "input": {
    "command": "git push origin main"
  },
  "kind": "outbound",
  "target": "origin",
  "reason": "Publish the reviewed branch."
}

Examples use the seeded website-v2 project. Replace example task IDs with an actual task ID.

Returns

The output schema defines this tool’s structured result. Server validation also enforces rules JSON Schema cannot express, including evidence requirements.

View the full output schema
request_step output schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "step_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "pattern": "^[A-Za-z0-9_-]+$"
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "approved",
        "refused",
        "expired",
        "withdrawn",
        "consumed"
      ]
    },
    "behavior": {
      "type": "string",
      "enum": [
        "allow",
        "deny"
      ]
    },
    "updatedInput": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "message": {
      "type": "string",
      "maxLength": 500
    }
  },
  "required": [
    "step_id",
    "status",
    "behavior"
  ],
  "additionalProperties": false
}

Packet preview and clarification tools are planned. They are not part of the available catalog.