Tool tree
gradeNot graded
createAction
Create a game; omitted fields are generated compatibly by the engine.
View tool JSON
{
"name": "create",
"kind": "act",
"impl": "imperative",
"description": "Create a game; omitted fields are generated compatibly by the engine.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 31,
"x-maxBytes": 31,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
},
"seed": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"role": {
"type": "string",
"enum": [
"archeologist",
"barbarian",
"caveman",
"healer",
"knight",
"monk",
"priest",
"rogue",
"ranger",
"samurai",
"tourist",
"valkyrie",
"wizard"
]
},
"race": {
"type": "string",
"enum": [
"human",
"elf",
"dwarf",
"gnome",
"orc"
]
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
]
},
"align": {
"type": "string",
"enum": [
"lawful",
"neutral",
"chaotic"
]
},
"automaticPickup": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"itemTypes": {
"type": "array",
"maxItems": 15,
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"gold",
"food",
"potions",
"scrolls",
"weapons",
"armor",
"rings",
"amulets",
"tools",
"spellbooks",
"wands",
"gems",
"rocks",
"balls",
"chains"
]
}
},
"review": {
"type": "boolean",
"description": "Pause automatic pickup at a review decision before transferring anything. Explicit selection or cancellation required."
},
"lootPatterns": {
"type": "array",
"maxItems": 16,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
},
"description": "Case-insensitive literal substrings of the perceived singular item name. Add to category and arrow inclusions; never match hidden identity."
},
"ignorePatterns": {
"type": "array",
"maxItems": 16,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
},
"description": "Case-insensitive literal substrings of the perceived singular item name. Override every inclusion."
},
"arrows": {
"type": "boolean"
},
"leaveCorpses": {
"type": "boolean"
},
"leaveKnownCursed": {
"type": "boolean"
}
},
"required": [
"enabled",
"itemTypes",
"arrows",
"leaveCorpses",
"leaveKnownCursed"
],
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
},
"page": "/"
}observeAction
Read the currently loaded session's full observation and standing decision.
View tool JSON
{
"name": "observe",
"kind": "act",
"impl": "imperative",
"description": "Read the currently loaded session's full observation and standing decision.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}inspectAction
Read revision-bound attempts for here or an adjacent square using only perceived knowledge.
View tool JSON
{
"name": "inspect",
"kind": "act",
"impl": "imperative",
"description": "Read revision-bound attempts for here or an adjacent square using only perceived knowledge.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"oneOf": [
{
"type": "string",
"enum": [
"here"
]
},
{
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"x": {
"type": "integer",
"minimum": 1,
"maximum": 79
},
"y": {
"type": "integer",
"minimum": 0,
"maximum": 20
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
}
]
}
},
"required": [
"sessionId",
"target"
],
"additionalProperties": false
},
"page": "/"
}lookupAnswer
Look up a name in the pinned game encyclopedia.
View tool JSON
{
"name": "lookup",
"kind": "answer",
"impl": "imperative",
"description": "Look up a name in the pinned game encyclopedia.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"x-maxBytes": 255,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
}
},
"required": [
"sessionId",
"name"
],
"additionalProperties": false
},
"page": "/"
}navigationAction
Read perceived frontiers and known downward stairs under the knownWalking policy.
View tool JSON
{
"name": "navigation",
"kind": "act",
"impl": "imperative",
"description": "Read perceived frontiers and known downward stairs under the knownWalking policy.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}routeAction
Find a shortest known walking route in the perceived current level.
View tool JSON
{
"name": "route",
"kind": "act",
"impl": "imperative",
"description": "Find a shortest known walking route in the perceived current level.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"to": {
"type": "object",
"properties": {
"x": {
"type": "integer",
"minimum": 1,
"maximum": 79
},
"y": {
"type": "integer",
"minimum": 0,
"maximum": 20
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
}
},
"required": [
"sessionId",
"to"
],
"additionalProperties": false
},
"page": "/"
}resumeAction
Resume a persisted game with its pinned engine and standing decision.
View tool JSON
{
"name": "resume",
"kind": "act",
"impl": "imperative",
"description": "Resume a persisted game with its pinned engine and standing decision.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}suspendAction
Release the loaded engine, preserving the game and standing decision for resume.
View tool JSON
{
"name": "suspend",
"kind": "act",
"impl": "imperative",
"description": "Release the loaded engine, preserving the game and standing decision for resume.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}runAction
Run using one native movement command.
View tool JSON
{
"name": "run",
"kind": "act",
"impl": "imperative",
"description": "Run using one native movement command.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
},
"mode": {
"type": "string",
"enum": [
"normal",
"untilInteresting",
"pastBranches"
],
"description": "normal (default): uppercase direction. untilInteresting: g plus direction, including corridor-fork stops. pastBranches: G plus direction, ignoring corridor forks as stops."
},
"noPickup": {
"type": "boolean",
"description": "Apply the native m prefix: suppress pickup and fighting. False/omitted preserves the current automatic pickup configuration."
}
},
"required": [
"sessionId",
"direction"
],
"additionalProperties": false
},
"page": "/"
}waitAction
Request one waiting turn.
View tool JSON
{
"name": "wait",
"kind": "act",
"impl": "imperative",
"description": "Request one waiting turn.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}climbAction
Attempt stairs or another engine-supported vertical transition.
View tool JSON
{
"name": "climb",
"kind": "act",
"impl": "imperative",
"description": "Attempt stairs or another engine-supported vertical transition.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"direction": {
"type": "string",
"enum": [
"up",
"down"
]
}
},
"required": [
"sessionId",
"direction"
],
"additionalProperties": false
},
"page": "/"
}searchAnswer
Request a bounded native counted search (default one).
View tool JSON
{
"name": "search",
"kind": "answer",
"impl": "imperative",
"description": "Request a bounded native counted search (default one).",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"turns": {
"type": "integer",
"minimum": 1,
"maximum": 1000
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}restAction
Request a bounded native counted rest (default one).
View tool JSON
{
"name": "rest",
"kind": "act",
"impl": "imperative",
"description": "Request a bounded native counted rest (default one).",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"turns": {
"type": "integer",
"minimum": 1,
"maximum": 1000
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}kickAction
Attempt to kick in an adjacent compass direction.
View tool JSON
{
"name": "kick",
"kind": "act",
"impl": "imperative",
"description": "Attempt to kick in an adjacent compass direction.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}openAction
Attempt to open in an adjacent compass direction.
View tool JSON
{
"name": "open",
"kind": "act",
"impl": "imperative",
"description": "Attempt to open in an adjacent compass direction.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}closeAction
Attempt to close in an adjacent compass direction.
View tool JSON
{
"name": "close",
"kind": "act",
"impl": "imperative",
"description": "Attempt to close in an adjacent compass direction.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}throwAction
Throw one selected carried object using the engine throw command.
View tool JSON
{
"name": "throw",
"kind": "act",
"impl": "imperative",
"description": "Throw one selected carried object using the engine throw command.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"oneOf": [
{
"type": "string",
"enum": [
"self"
]
},
{
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest",
"up",
"down"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
]
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}offerAction
Offer a selected carried item or perceived floor corpse at the current altar.
View tool JSON
{
"name": "offer",
"kind": "act",
"impl": "imperative",
"description": "Offer a selected carried item or perceived floor corpse at the current altar.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}pickupAction
Pick up a perceived object underfoot, not a distant object or a carried item.
View tool JSON
{
"name": "pickup",
"kind": "act",
"impl": "imperative",
"description": "Pick up a perceived object underfoot, not a distant object or a carried item.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}eatAction
Eat a perceived eligible item carried or underfoot.
View tool JSON
{
"name": "eat",
"kind": "act",
"impl": "imperative",
"description": "Eat a perceived eligible item carried or underfoot.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}drinkAction
Drink a perceived carried potion, or omit item on a perceived fountain or sink to request the engine’s drinking confirmation.
View tool JSON
{
"name": "drink",
"kind": "act",
"impl": "imperative",
"description": "Drink a perceived carried potion, or omit item on a perceived fountain or sink to request the engine’s drinking confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}wieldAction
Wield the selected perceived carried item.
View tool JSON
{
"name": "wield",
"kind": "act",
"impl": "imperative",
"description": "Wield the selected perceived carried item.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"slot": {
"type": "string",
"enum": [
"bodyArmor",
"cloak",
"helmet",
"shield",
"gloves",
"boots",
"shirt",
"amulet",
"leftRing",
"rightRing",
"eyewear",
"weapon",
"offhand",
"alternateWeapon",
"quiver",
"skin",
"ball",
"chain"
]
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}equipAction
Wear selected armor, a ring, an amulet or a recognized wearable accessory.
View tool JSON
{
"name": "equip",
"kind": "act",
"impl": "imperative",
"description": "Wear selected armor, a ring, an amulet or a recognized wearable accessory.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"slot": {
"type": "string",
"enum": [
"bodyArmor",
"cloak",
"helmet",
"shield",
"gloves",
"boots",
"shirt",
"amulet",
"leftRing",
"rightRing",
"eyewear",
"weapon",
"offhand",
"alternateWeapon",
"quiver",
"skin",
"ball",
"chain"
]
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}removeAction
Remove selected worn equipment.
View tool JSON
{
"name": "remove",
"kind": "act",
"impl": "imperative",
"description": "Remove selected worn equipment.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}readAnswer
Read the selected perceived object.
View tool JSON
{
"name": "read",
"kind": "answer",
"impl": "imperative",
"description": "Read the selected perceived object.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}applyAction
Apply a perceived carried object.
View tool JSON
{
"name": "apply",
"kind": "act",
"impl": "imperative",
"description": "Apply a perceived carried object.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}dropAction
Drop a selected carried item or stack using the engine's normal single-selection behavior.
View tool JSON
{
"name": "drop",
"kind": "act",
"impl": "imperative",
"description": "Drop a selected carried item or stack using the engine's normal single-selection behavior.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}zapAction
Zap a selected perceived wand.
View tool JSON
{
"name": "zap",
"kind": "act",
"impl": "imperative",
"description": "Zap a selected perceived wand.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"oneOf": [
{
"type": "string",
"enum": [
"self"
]
},
{
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest",
"up",
"down"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
]
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}castAction
Begin casting a learned spell.
View tool JSON
{
"name": "cast",
"kind": "act",
"impl": "imperative",
"description": "Begin casting a learned spell.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}enhanceAction
Inspect and explicitly advance a practiced skill through the engine skill menu.
View tool JSON
{
"name": "enhance",
"kind": "act",
"impl": "imperative",
"description": "Inspect and explicitly advance a practiced skill through the engine skill menu.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}swapAction
Swap the primary and alternate weapons using the engine command.
View tool JSON
{
"name": "swap",
"kind": "act",
"impl": "imperative",
"description": "Swap the primary and alternate weapons using the engine command.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}twoWeaponAction
Toggle two-weapon combat using the current primary and alternate weapons.
View tool JSON
{
"name": "twoWeapon",
"kind": "act",
"impl": "imperative",
"description": "Toggle two-weapon combat using the current primary and alternate weapons.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}paySensitive Action
Attempt payment to a shopkeeper.
View tool JSON
{
"name": "pay",
"kind": "transact",
"impl": "imperative",
"description": "Attempt payment to a shopkeeper.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}engraveAction
Write on the floor.
View tool JSON
{
"name": "engrave",
"kind": "act",
"impl": "imperative",
"description": "Write on the floor.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}fireAction
Fire the current quiver using normal engine rules.
View tool JSON
{
"name": "fire",
"kind": "act",
"impl": "imperative",
"description": "Fire the current quiver using normal engine rules.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"oneOf": [
{
"type": "string",
"enum": [
"self"
]
},
{
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest",
"up",
"down"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
]
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}chatAction
Attempt deliberate conversation in a compass direction.
View tool JSON
{
"name": "chat",
"kind": "act",
"impl": "imperative",
"description": "Attempt deliberate conversation in a compass direction.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"type": "object",
"properties": {
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
}
},
"required": [
"direction"
],
"additionalProperties": false
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}dipAction
Attempt the distinct engine dip command on a carried object.
View tool JSON
{
"name": "dip",
"kind": "act",
"impl": "imperative",
"description": "Attempt the distinct engine dip command on a carried object.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}rubAction
Attempt the distinct engine rub command on a carried object.
View tool JSON
{
"name": "rub",
"kind": "act",
"impl": "imperative",
"description": "Attempt the distinct engine rub command on a carried object.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}invokeAction
Attempt the distinct engine invoke command on a carried object.
View tool JSON
{
"name": "invoke",
"kind": "act",
"impl": "imperative",
"description": "Attempt the distinct engine invoke command on a carried object.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}quiverAction
Attempt the distinct engine quiver command on a carried object.
View tool JSON
{
"name": "quiver",
"kind": "act",
"impl": "imperative",
"description": "Attempt the distinct engine quiver command on a carried object.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"sessionId"
],
"additionalProperties": false,
"dependentRequired": {
"quantity": [
"itemId"
]
}
},
"page": "/"
}moveWithoutAttackAction
Attempt one step without fighting or automatic pickup using the engine movement prefix.
View tool JSON
{
"name": "moveWithoutAttack",
"kind": "act",
"impl": "imperative",
"description": "Attempt one step without fighting or automatic pickup using the engine movement prefix.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"direction": {
"type": "string",
"enum": [
"north",
"northeast",
"east",
"southeast",
"south",
"southwest",
"west",
"northwest"
]
}
},
"required": [
"sessionId",
"direction"
],
"additionalProperties": false
},
"page": "/"
}lootAction
Open perceived containers underfoot.
View tool JSON
{
"name": "loot",
"kind": "act",
"impl": "imperative",
"description": "Open perceived containers underfoot.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}configurePickupAction
Replace automatic ground-pickup settings at a free command boundary without spending a turn.
View tool JSON
{
"name": "configurePickup",
"kind": "act",
"impl": "imperative",
"description": "Replace automatic ground-pickup settings at a free command boundary without spending a turn.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"automaticPickup": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"itemTypes": {
"type": "array",
"maxItems": 15,
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"gold",
"food",
"potions",
"scrolls",
"weapons",
"armor",
"rings",
"amulets",
"tools",
"spellbooks",
"wands",
"gems",
"rocks",
"balls",
"chains"
]
}
},
"review": {
"type": "boolean",
"description": "Pause automatic pickup at a review decision before transferring anything. Explicit selection or cancellation required."
},
"lootPatterns": {
"type": "array",
"maxItems": 16,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
},
"description": "Case-insensitive literal substrings of the perceived singular item name. Add to category and arrow inclusions; never match hidden identity."
},
"ignorePatterns": {
"type": "array",
"maxItems": 16,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
},
"description": "Case-insensitive literal substrings of the perceived singular item name. Override every inclusion."
},
"arrows": {
"type": "boolean"
},
"leaveCorpses": {
"type": "boolean"
},
"leaveKnownCursed": {
"type": "boolean"
}
},
"required": [
"enabled",
"itemTypes",
"arrows",
"leaveCorpses",
"leaveKnownCursed"
],
"additionalProperties": false
}
},
"required": [
"sessionId",
"automaticPickup"
],
"additionalProperties": false
},
"page": "/"
}quitAction
Abandon this run through the engine.
View tool JSON
{
"name": "quit",
"kind": "act",
"impl": "imperative",
"description": "Abandon this run through the engine.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}prayAction
Begin a prayer.
View tool JSON
{
"name": "pray",
"kind": "act",
"impl": "imperative",
"description": "Begin a prayer.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}answerAction
Answer the exact decisionId using value in the returned reply.valueSchema; answering can spend turns or produce another question.
View tool JSON
{
"name": "answer",
"kind": "act",
"impl": "imperative",
"description": "Answer the exact decisionId using value in the returned reply.valueSchema; answering can spend turns or produce another question.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"decisionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
},
"value": {
"description": "Reply value matching the standing question’s reply.valueSchema. No kind tag is needed.",
"oneOf": [
{
"type": "boolean"
},
{
"type": "string",
"minLength": 0,
"maxLength": 128
},
{
"type": "object",
"properties": {
"x": {
"type": "integer",
"minimum": 1,
"maximum": 79
},
"y": {
"type": "integer",
"minimum": 0,
"maximum": 20
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
{
"type": "array",
"minItems": 1,
"maxItems": 1024,
"uniqueItems": true,
"items": {
"oneOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
{
"type": "string",
"minLength": 1,
"maxLength": 127
}
]
}
},
{
"type": "object",
"properties": {
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Exact opaque item id from inventory, here.items or the standing question."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647,
"description": "Explicit stack count; requires itemId."
}
},
"required": [
"itemId"
],
"additionalProperties": false
}
]
}
},
"required": [
"sessionId",
"decisionId",
"value"
],
"additionalProperties": false
},
"page": "/"
}cancelSensitive Action
Cancel the standing decision only when it is cancellable.
View tool JSON
{
"name": "cancel",
"kind": "transact",
"impl": "imperative",
"description": "Cancel the standing decision only when it is cancellable.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"decisionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[^\\u0000-\\u001f\\u007f]*$"
}
},
"required": [
"sessionId",
"decisionId"
],
"additionalProperties": false
},
"page": "/"
}goAction
Walk toward any square on the current level along known routes, stopping on changes or decisions; force:true attempts adjacent ordinary movement only.
View tool JSON
{
"name": "go",
"kind": "act",
"impl": "imperative",
"description": "Walk toward any square on the current level along known routes, stopping on changes or decisions; force:true attempts adjacent ordinary movement only.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"to": {
"type": "object",
"properties": {
"x": {
"type": "integer",
"minimum": 1,
"maximum": 79
},
"y": {
"type": "integer",
"minimum": 0,
"maximum": 20
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"force": {
"type": "boolean"
},
"maxActions": {
"type": "integer",
"minimum": 1,
"maximum": 1659
}
},
"required": [
"sessionId",
"to"
],
"additionalProperties": false
},
"page": "/"
}attackAction
Force one engine attack at an adjacent square or returned creature reference; leave confirmations explicit.
View tool JSON
{
"name": "attack",
"kind": "act",
"impl": "imperative",
"description": "Force one engine attack at an adjacent square or returned creature reference; leave confirmations explicit.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"target": {
"oneOf": [
{
"type": "object",
"properties": {
"x": {
"type": "integer",
"minimum": 1,
"maximum": 79
},
"y": {
"type": "integer",
"minimum": 0,
"maximum": 20
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
{
"type": "string",
"minLength": 1,
"maxLength": 128
}
]
}
},
"required": [
"sessionId",
"target"
],
"additionalProperties": false
},
"page": "/"
}exploreAction
Explore toward unvisited frontiers within maxActions; maxFrontiers explicitly allows successive frontiers (default 1). Stop for changes, decisions, or one door attempt.
View tool JSON
{
"name": "explore",
"kind": "act",
"impl": "imperative",
"description": "Explore toward unvisited frontiers within maxActions; maxFrontiers explicitly allows successive frontiers (default 1). Stop for changes, decisions, or one door attempt.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"maxActions": {
"type": "integer",
"minimum": 1,
"maximum": 1659
},
"maxFrontiers": {
"type": "integer",
"minimum": 1,
"maximum": 1659,
"description": "Maximum successive perceived frontiers to reach (default 1). The total maxActions budget and decision/change stops still apply. A door attempt always ends the call."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}descendAction
Approach a remembered reachable downward stair and attempt descent within a bounded leg.
View tool JSON
{
"name": "descend",
"kind": "act",
"impl": "imperative",
"description": "Approach a remembered reachable downward stair and attempt descent within a bounded leg.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"maxActions": {
"type": "integer",
"minimum": 1,
"maximum": 1659
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}helpAction
List tool names and one-line descriptions, or get one tool schema by name.
View tool JSON
{
"name": "help",
"kind": "act",
"impl": "imperative",
"description": "List tool names and one-line descriptions, or get one tool schema by name.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"required": [],
"additionalProperties": false
},
"page": "/"
}receiptAction
Read an exact historical receipt by operationId; this does not execute input or report current state.
View tool JSON
{
"name": "receipt",
"kind": "act",
"impl": "imperative",
"description": "Read an exact historical receipt by operationId; this does not execute input or report current state.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"sessionId",
"operationId"
],
"additionalProperties": false
},
"page": "/"
}recoverAction
Recover the run’s retained exact input, or read its most recent completed receipt; shared between callers, never restart an action or navigation leg.
View tool JSON
{
"name": "recover",
"kind": "act",
"impl": "imperative",
"description": "Recover the run’s retained exact input, or read its most recent completed receipt; shared between callers, never restart an action or navigation leg.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"x-maxBytes": 64,
"pattern": "^[A-Za-z0-9_-]+$",
"description": "Session ID from create/resume."
}
},
"required": [
"sessionId"
],
"additionalProperties": false
},
"page": "/"
}