Tool tree
gradeNot graded
enter_pending_human_stageAction
Mandatory first tool when the user invites you to join the current Pending: Human stage and stay until it ends. This starts or resumes the shared stage task; joining alone is never completion. After it returns, call its exact nextTool with nextToolInput in the same assistant turn. Keep following every returned nextTool, wait again after no_change, and finish only at session_ended or stage_complete. Do not send a join-confirmation reply and stop.
View tool JSON
{
"name": "enter_pending_human_stage",
"kind": "act",
"impl": "imperative",
"description": "Mandatory first tool when the user invites you to join the current Pending: Human stage and stay until it ends. This starts or resumes the shared stage task; joining alone is never completion. After it returns, call its exact nextTool with nextToolInput in the same assistant turn. Keep following every returned nextTool, wait again after no_change, and finish only at session_ended or stage_complete. Do not send a join-confirmation reply and stop.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_next_stepAnswer
Recovery tool for an uncertain active session. Returns one exact nextTool and nextToolInput from durable page state. When enter_pending_human_stage is visible, call that directly. Do not use this between successful fast-path calls.
View tool JSON
{
"name": "get_next_step",
"kind": "answer",
"impl": "imperative",
"description": "Recovery tool for an uncertain active session. Returns one exact nextTool and nextToolInput from durable page state. When enter_pending_human_stage is visible, call that directly. Do not use this between successful fast-path calls.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}wait_for_city_eventAction
Long-poll the active Pending: Human session for a page message, human control action, approval decision, the deterministic T+30 turning point, or session end. Keep calling after no_change heartbeats. End only after session_ended.
View tool JSON
{
"name": "wait_for_city_event",
"kind": "act",
"impl": "imperative",
"description": "Long-poll the active Pending: Human session for a page message, human control action, approval decision, the deterministic T+30 turning point, or session end. Keep calling after no_change heartbeats. End only after session_ended.",
"inputSchema": {
"type": "object",
"properties": {
"afterEventSequence": {
"type": "integer",
"minimum": 0,
"description": "Latest eventCursor already observed by the agent."
},
"timeoutSeconds": {
"type": "integer",
"minimum": 5,
"maximum": 30,
"default": 25
}
},
"required": [
"afterEventSequence"
],
"additionalProperties": false
}
}post_next_guidanceAction
Mechanical guidance step for every human turn. Post the current phase’s concise localized message into the visible teammate panel, highlight the exact human control, and smoothly scroll it into view. Never clicks or approves. Call immediately whenever another tool returns this as nextTool.
View tool JSON
{
"name": "post_next_guidance",
"kind": "act",
"impl": "imperative",
"description": "Mechanical guidance step for every human turn. Post the current phase’s concise localized message into the visible teammate panel, highlight the exact human control, and smoothly scroll it into view. Never clicks or approves. Call immediately whenever another tool returns this as nextTool.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}post_advisor_messageAction
Post a concise custom finding into the visible teammate transcript. Use only when live evidence or trade-offs require wording not already supplied by post_next_guidance.
View tool JSON
{
"name": "post_advisor_message",
"kind": "act",
"impl": "imperative",
"description": "Post a concise custom finding into the visible teammate transcript. Use only when live evidence or trade-offs require wording not already supplied by post_next_guidance.",
"inputSchema": {
"type": "object",
"properties": {
"message": {
"type": "string",
"minLength": 1,
"maxLength": 1200
}
},
"required": [
"message"
],
"additionalProperties": false
}
}focus_next_controlAction
Human-turn tool that returns the exact next control and prepared instruction, highlights the control, smoothly scrolls it into view, and then returns the wait call. Takes no target input, never clicks the control, and can never approve a plan.
View tool JSON
{
"name": "focus_next_control",
"kind": "act",
"impl": "imperative",
"description": "Human-turn tool that returns the exact next control and prepared instruction, highlights the control, smoothly scrolls it into view, and then returns the wait call. Takes no target input, never clicks the control, and can never approve a plan.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}compare_tutorial_responsesAction
Tutorial step 2 of 3. In one call, trace the power-to-traffic-to-medical cascade and compare two responses against the same T+60 baseline. Returns propose_tutorial_plan plus its exact top-level nextToolInput. Never changes the live city.
View tool JSON
{
"name": "compare_tutorial_responses",
"kind": "act",
"impl": "imperative",
"description": "Tutorial step 2 of 3. In one call, trace the power-to-traffic-to-medical cascade and compare two responses against the same T+60 baseline. Returns propose_tutorial_plan plus its exact top-level nextToolInput. Never changes the live city.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}propose_tutorial_planAction
Tutorial step 3 of 3. Stage the exact previewId returned by compare_tutorial_responses in the fixed human decision rail, then call the returned focus_next_control tool. This never executes the response; only the visible human button can do that.
View tool JSON
{
"name": "propose_tutorial_plan",
"kind": "act",
"impl": "imperative",
"description": "Tutorial step 3 of 3. Stage the exact previewId returned by compare_tutorial_responses in the fixed human decision rail, then call the returned focus_next_control tool. This never executes the response; only the visible human button can do that.",
"inputSchema": {
"type": "object",
"properties": {
"previewId": {
"type": "string",
"minLength": 1
}
},
"required": [
"previewId"
],
"additionalProperties": false
}
}analyze_crisisAction
Fast path step 1 of 2 at the first frozen mission checkpoint. In one call, read human impact, doctrine, incident hotspots, critical facilities, blocked roads, power dependencies, response units, and the causal chain; forecast the deterministic T+60 no-action outcome; then simulate, rank, and issue three exact compound-plan previews. The agent selects one previewId for propose_emergency_plan. Never changes the live city.
View tool JSON
{
"name": "analyze_crisis",
"kind": "act",
"impl": "imperative",
"description": "Fast path step 1 of 2 at the first frozen mission checkpoint. In one call, read human impact, doctrine, incident hotspots, critical facilities, blocked roads, power dependencies, response units, and the causal chain; forecast the deterministic T+60 no-action outcome; then simulate, rank, and issue three exact compound-plan previews. The agent selects one previewId for propose_emergency_plan. Never changes the live city.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}analyze_turning_pointAction
Fast path for the one deterministic T+30 turning point. Read only what changed, forecast the remaining 30-minute no-adaptation outcome, and issue two or three exact adaptive plan previews that exclude already-applied actions. The agent selects one for propose_emergency_plan. Never changes the live city.
View tool JSON
{
"name": "analyze_turning_point",
"kind": "act",
"impl": "imperative",
"description": "Fast path for the one deterministic T+30 turning point. Read only what changed, forecast the remaining 30-minute no-adaptation outcome, and issue two or three exact adaptive plan previews that exclude already-applied actions. The agent selects one for propose_emergency_plan. Never changes the live city.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}prepare_response_plansAction
Recovery path after a rejected plan or partial older session. Simulate three scenario-specific compound plans on the same T+60 baseline, rank them using the human-selected doctrine, issue all three exact previews, and let the agent select one for propose_emergency_plan. A fresh mission already performs this inside analyze_crisis.
View tool JSON
{
"name": "prepare_response_plans",
"kind": "act",
"impl": "imperative",
"description": "Recovery path after a rejected plan or partial older session. Simulate three scenario-specific compound plans on the same T+60 baseline, rank them using the human-selected doctrine, issue all three exact previews, and let the agent select one for propose_emergency_plan. A fresh mission already performs this inside analyze_crisis.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}propose_emergency_planAction
Stage one exact revision-bound candidate preview selected by the agent in the visible human approval dialog. This never executes interventions.
View tool JSON
{
"name": "propose_emergency_plan",
"kind": "act",
"impl": "imperative",
"description": "Stage one exact revision-bound candidate preview selected by the agent in the visible human approval dialog. This never executes interventions.",
"inputSchema": {
"type": "object",
"properties": {
"previewId": {
"type": "string",
"minLength": 1,
"description": "Selected candidate previewId returned by analyze_crisis, prepare_response_plans, simulate_action, or simulate_emergency_plan."
}
},
"required": [
"previewId"
],
"additionalProperties": false
}
}