Tool tree
gradeNot graded
inspect_spellAction
Inspect the current spell graph, its version, desired outcome, and sacred constraints.
View tool JSON
{
"name": "inspect_spell",
"kind": "act",
"impl": "imperative",
"description": "Inspect the current spell graph, its version, desired outcome, and sacred constraints.",
"inputSchema": {
"type": "object",
"properties": {
"nodeIds": {
"type": "array",
"description": "Optional unique rune IDs to include; omit to inspect the complete spell.",
"items": {
"type": "string",
"description": "A rune ID returned by reset or inspect_spell.",
"minLength": 1,
"maxLength": 128,
"enum": [
"moonwell",
"moonrise",
"multiply",
"summon-ducks",
"umbrella",
"pour",
"room",
"moonflower",
"bloom",
"soften",
"mirror",
"release"
]
},
"minItems": 1,
"maxItems": 12,
"uniqueItems": true
}
},
"additionalProperties": false
}
}trace_effectAction
Trace bounded, ordered causal paths from a source or into a known spell effect, including cycles and type violations.
View tool JSON
{
"name": "trace_effect",
"kind": "act",
"impl": "imperative",
"description": "Trace bounded, ordered causal paths from a source or into a known spell effect, including cycles and type violations.",
"inputSchema": {
"type": "object",
"properties": {
"effectId": {
"type": "string",
"description": "A side-effect ID returned by simulate_cast; omit to trace the current active effect.",
"minLength": 1,
"maxLength": 128,
"enum": [
"flooded-observatory"
]
},
"sourceId": {
"type": "string",
"description": "Optional active source rune to trace forward; mutually exclusive with effectId.",
"minLength": 1,
"maxLength": 128,
"enum": [
"moonwell"
]
},
"maxDepth": {
"type": "integer",
"description": "Maximum number of directed edges per returned path; defaults to 8.",
"minimum": 1,
"maximum": 12
},
"maxPaths": {
"type": "integer",
"description": "Maximum number of ordered paths to return; defaults to 3.",
"minimum": 1,
"maximum": 5
}
},
"oneOf": [
{
"required": [
"effectId"
],
"not": {
"required": [
"sourceId"
]
}
},
{
"required": [
"sourceId"
],
"not": {
"required": [
"effectId"
]
}
},
{
"not": {
"anyOf": [
{
"required": [
"effectId"
]
},
{
"required": [
"sourceId"
]
}
]
}
}
],
"additionalProperties": false
}
}simulate_castAction
Simulate the current spell or a current proposed patch without mutating editor state, and return an ordered event trace.
View tool JSON
{
"name": "simulate_cast",
"kind": "act",
"impl": "imperative",
"description": "Simulate the current spell or a current proposed patch without mutating editor state, and return an ordered event trace.",
"inputSchema": {
"type": "object",
"properties": {
"patchId": {
"type": "string",
"description": "Optional current patch ID from propose_spell_patch to simulate as an unapplied preview.",
"pattern": "^patch-(umbrella|dampener|temporal-guard|direct)-v[0-9]+$",
"maxLength": 128
}
},
"additionalProperties": false
}
}explain_side_effectAction
Return the smallest typed responsible subgraph, ordered causal steps, simulator-rule premises, and an edge-necessity proof for a side effect.
View tool JSON
{
"name": "explain_side_effect",
"kind": "act",
"impl": "imperative",
"description": "Return the smallest typed responsible subgraph, ordered causal steps, simulator-rule premises, and an edge-necessity proof for a side effect.",
"inputSchema": {
"type": "object",
"properties": {
"sideEffectId": {
"type": "string",
"description": "The side-effect identifier returned by simulate_cast.",
"minLength": 1,
"maxLength": 128,
"enum": [
"flooded-observatory"
]
}
},
"required": [
"sideEffectId"
],
"additionalProperties": false
}
}set_sacred_constraintAction
Add, update, or remove a reversible human-authored preservation constraint.
View tool JSON
{
"name": "set_sacred_constraint",
"kind": "act",
"impl": "imperative",
"description": "Add, update, or remove a reversible human-authored preservation constraint.",
"inputSchema": {
"type": "object",
"properties": {
"targetId": {
"type": "string",
"description": "The rune whose meaning the human wants to preserve.",
"minLength": 1,
"maxLength": 128
},
"reason": {
"type": "string",
"description": "A short human-authored explanation of why this rune matters.",
"minLength": 1,
"maxLength": 180
},
"preserve": {
"type": "boolean",
"description": "True to add or update the constraint; false to release it."
}
},
"required": [
"targetId",
"reason"
],
"additionalProperties": false
}
}propose_spell_patchAction
Search for ranked spell repairs and return predicted outcomes, explicit preconditions, and the same structured operation ledger shown to the human without changing the graph.
View tool JSON
{
"name": "propose_spell_patch",
"kind": "act",
"impl": "imperative",
"description": "Search for ranked spell repairs and return predicted outcomes, explicit preconditions, and the same structured operation ledger shown to the human without changing the graph.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}apply_spell_patchAction
Atomically revalidate and apply the exact human-reviewed operation ledger for a versioned spell patch, or revert it with a one-use token and matching receipt.
View tool JSON
{
"name": "apply_spell_patch",
"kind": "act",
"impl": "imperative",
"description": "Atomically revalidate and apply the exact human-reviewed operation ledger for a versioned spell patch, or revert it with a one-use token and matching receipt.",
"inputSchema": {
"type": "object",
"properties": {
"patchId": {
"type": "string",
"description": "A current patch ID returned by propose_spell_patch.",
"pattern": "^patch-(umbrella|dampener|temporal-guard|direct)-v[0-9]+$",
"maxLength": 128
},
"revertToken": {
"type": "string",
"description": "The one-use token returned by the latest unchanged patch application.",
"pattern": "^revert-patch-(umbrella|dampener|temporal-guard|direct)-v[0-9]+-after-v[0-9]+$",
"maxLength": 160
}
},
"oneOf": [
{
"required": [
"patchId"
]
},
{
"required": [
"revertToken"
]
}
],
"additionalProperties": false
}
}