/** summary: "JSON-schema parameters for toolbox discovery, planning, activation, deactivation, and risk acknowledgement." read_when: - "Changing toolbox tool-call arguments, action names, activation leases, or risk acknowledgement fields." */ export const TOOLBOX_PARAMETERS = { type: "object", additionalProperties: false, properties: { action: { type: "string", enum: [ "search", "activate", "deactivate", "status", "doctor", "plan", "explain", "recommend", ], description: "Toolbox operation to perform. Defaults to status.", }, query: { type: "string", description: "Search/recommendation text for action=search or action=recommend.", }, bundle: { type: "string", description: "Catalog bundle id such as vault, context-packer, designmd, ontology, autoresearch, agent_vent, or peer-spawn.", }, profile: { type: "string", description: "Bundle profile id. Defaults to default or read when available.", }, tools: { type: "array", items: { type: "string" }, description: "Explicit tool names to activate/deactivate.", }, ttlTurns: { type: "number", description: "Requested activation lifetime in turns. Defaults to the selected profile TTL and is capped to a bounded maximum.", }, pin: { type: "boolean", description: "Whether activation should stay active until explicit deactivation instead of expiring by TTL.", }, autoContinue: { type: "boolean", description: "Whether toolbox should queue a same-task continuation after activation changes the active tool set. Defaults true; set false for activation-only calls.", }, riskAcknowledged: { type: "boolean", description: "Caller declaration required for mutating, external-mutation, and orchestrator-gated profiles. Advisory only; it does not prove operator consent.", }, riskJustification: { type: "string", description: "Required with riskAcknowledged for mutating, external-mutation, and orchestrator-gated activation. Record the caller-stated risk rationale; this is not proof of operator consent.", }, }, } as const;