demo · Developer Tools · JSON · API for agents
/Returns the current factory state (inventory and all device trays) as a JSON string.
{
"name": "get_state",
"kind": "read",
"impl": "imperative",
"description": "Returns the current factory state (inventory and all device trays) as a JSON string.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Moves items from inventory into a device input tray. device must be exactly "smelter", "forge", or "assembler".
{
"name": "load",
"kind": "action",
"impl": "imperative",
"description": "Moves items from inventory into a device input tray. device must be exactly \"smelter\", \"forge\", or \"assembler\".",
"inputSchema": {
"type": "object",
"properties": {
"device": {
"type": "string",
"enum": [
"smelter",
"forge",
"assembler"
]
},
"item": {
"type": "string"
},
"qty": {
"type": "number"
}
},
"required": [
"device",
"item",
"qty"
]
},
"page": "/"
}Moves items from a device input tray back to inventory. device must be exactly "smelter", "forge", or "assembler".
{
"name": "unload",
"kind": "action",
"impl": "imperative",
"description": "Moves items from a device input tray back to inventory. device must be exactly \"smelter\", \"forge\", or \"assembler\".",
"inputSchema": {
"type": "object",
"properties": {
"device": {
"type": "string",
"enum": [
"smelter",
"forge",
"assembler"
]
},
"item": {
"type": "string"
},
"qty": {
"type": "number"
}
},
"required": [
"device",
"item",
"qty"
]
},
"page": "/"
}Runs the Smelter. You MUST call the relevant recipe skill before loading anything. On success the tray is cleared and output goes directly to inventory — do NOT call unload after a successful run.
{
"name": "smelt",
"kind": "action",
"impl": "imperative",
"description": "Runs the Smelter. You MUST call the relevant recipe skill before loading anything. On success the tray is cleared and output goes directly to inventory — do NOT call unload after a successful run.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Runs the Forge. You MUST call the relevant recipe skill before loading anything. On success the tray is cleared and output goes directly to inventory — do NOT call unload after a successful run.
{
"name": "forge",
"kind": "action",
"impl": "imperative",
"description": "Runs the Forge. You MUST call the relevant recipe skill before loading anything. On success the tray is cleared and output goes directly to inventory — do NOT call unload after a successful run.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Runs the Assembler. You MUST call the relevant recipe skill before loading anything. On success the tray is cleared and output goes directly to inventory — do NOT call unload after a successful run.
{
"name": "assemble",
"kind": "action",
"impl": "imperative",
"description": "Runs the Assembler. You MUST call the relevant recipe skill before loading anything. On success the tray is cleared and output goes directly to inventory — do NOT call unload after a successful run.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Mines 1 Iron Ore and adds it to inventory.
{
"name": "mine_iron_ore",
"kind": "action",
"impl": "imperative",
"description": "Mines 1 Iron Ore and adds it to inventory.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Mines 1 Copper Ore and adds it to inventory.
{
"name": "mine_copper_ore",
"kind": "action",
"impl": "imperative",
"description": "Mines 1 Copper Ore and adds it to inventory.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Recipe for smelting Iron Ore into Iron Plates.
{
"name": "skill_recipe_iron_plate",
"kind": "action",
"impl": "imperative",
"description": "Recipe for smelting Iron Ore into Iron Plates.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Recipe for forging Iron Plates into an Iron Gear.
{
"name": "skill_recipe_iron_gear",
"kind": "action",
"impl": "imperative",
"description": "Recipe for forging Iron Plates into an Iron Gear.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Recipe for smelting Copper Ore into Copper Plates.
{
"name": "skill_recipe_copper_plate",
"kind": "action",
"impl": "imperative",
"description": "Recipe for smelting Copper Ore into Copper Plates.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Recipe for assembling a Copper Plate into Copper Coils.
{
"name": "skill_recipe_copper_coil",
"kind": "action",
"impl": "imperative",
"description": "Recipe for assembling a Copper Plate into Copper Coils.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Recipe for assembling an Iron Gear and Copper Coils into an Electric Motor.
{
"name": "skill_recipe_electric_motor",
"kind": "action",
"impl": "imperative",
"description": "Recipe for assembling an Iron Gear and Copper Coils into an Electric Motor.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Call this first when asked to build an Electric Motor. Returns the complete step-by-step manufacturing protocol.
{
"name": "skill_assemble_electric_motor",
"kind": "action",
"impl": "imperative",
"description": "Call this first when asked to build an Electric Motor. Returns the complete step-by-step manufacturing protocol.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}Protocol for recovering an Iron Plate by dismantling an Iron Gear when Iron Ore is depleted.
{
"name": "skill_salvage_iron_plate",
"kind": "action",
"impl": "imperative",
"description": "Protocol for recovering an Iron Plate by dismantling an Iron Gear when Iron Ore is depleted.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}/posts/bringing-the-agent-loop-to-the-webLeave a blog post comment
{
"name": "post_comment",
"kind": "action",
"impl": "declarative",
"description": "Leave a blog post comment",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"website": {
"type": "string"
},
"author_name": {
"type": "string"
},
"author_email": {
"type": "string"
},
"text": {
"type": "string"
}
},
"required": [
"author_name",
"text"
]
},
"page": "/posts/bringing-the-agent-loop-to-the-web"
}