5 tools registered. Strongest in tool selection, weakest in trust.
{ name: "arena_look" /* short, unique, verb-based */ }arena_look: The description instructs the agent to retry if getTools() is empty.; arena_take: The description instructs the agent not to call the tool during a live bout.; arena_drive: The description instructs the agent on how to use the tool effectively.; arena_leave: The description instructs the agent not to use the tool in a specific scenario and suggests an al...{
name: "arena_look",
// Metadata DESCRIBES the tool - it never addresses the agent reading it.
// Rewrite any name, description, title, or schema field description that
// instructs the agent (which tool to prefer, what to output, rules to
// ignore) so it states what the tool does and what it returns instead.
description: "Searches the catalog and returns matching items with prices."
}{
"name": "arena_look",
"description": "Read the arena as numbers (no vision). Returns dohyo {shape:circle, radius now, radius0:0.62, shrink 0.06 m every 10s until someone falls (floor 0.04)}, you {x,z,yaw,r,margin,yaw_to_center,slot}, each duck, phase_left_s (live = seconds to next shrink), ranking, frame (world x,z; yaw=0 faces +X; drive is BODY). kick/roll/pick shove a body in front. Tab silent 35s in live = forfeit; lobby standing keeps the slot. If getTools() is empty, retry a few seconds.",
"inputSchema": {
"type": "object",
"properties": {}
},
"annotations": {}
}usable: weak; clarity: weak// Make the tool's effect visible on the page the person is looking at:
// update the same UI your existing human flow uses when your_tool_name runs,
// so the person co-browsing sees what the agent just did.
execute: async (args, { signal }) => {
const result = await performAction(args, signal);
renderResultInPage(result); // the human-visible half of the same action
return result;
}arena_leave: registered at 1467ms// Register tools as soon as they're ready, not behind a deferred/async chunk.
document.modelContext.registerTool({ /* ... */ });{ name: "arena_look" /* short, unique, verb-based */ }arena_look: The description instructs the agent to retry if getTools() is empty.; arena_take: The description instructs the agent not to call the tool during a live bout.; arena_drive: The description instructs the agent on how to use the tool effectively.; arena_leave: The description instructs the agent not to use the tool in a specific scenario and suggests an al...{
name: "arena_look",
// Metadata DESCRIBES the tool - it never addresses the agent reading it.
// Rewrite any name, description, title, or schema field description that
// instructs the agent (which tool to prefer, what to output, rules to
// ignore) so it states what the tool does and what it returns instead.
description: "Searches the catalog and returns matching items with prices."
}{}