{"ok":true,"site":{"host":"johnnywang8802.github.io","url":"https://johnnywang8802.github.io/yard-draft/","type":"live","desc":"Garth","tools":[{"name":"lay_contour","kind":"act","impl":"imperative","description":"Lay a contour on the courtyard sheet — the same Terrain stroke a hand would drag. Pass points across the dashed lot: 0 is left/top, 1 is right/bottom.","title":"Lay a contour","annotations":{"readOnlyHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{"points":{"type":"array","minItems":3,"description":"Stroke points across the dashed lot (0 left/top → 1 right/bottom).","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]}}},"required":["points"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"lay_water","kind":"act","impl":"imperative","description":"Lay water on the sheet. An open stroke reads as a rill; bring the ends back to hold a pool. Same paper as a hand Water stroke. Points: 0 left/top → 1 right/bottom inside the dashed lot.","title":"Lay water","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"points":{"type":"array","minItems":3,"description":"Water stroke across the dashed lot (0 left/top → 1 right/bottom).","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]}}},"required":["points"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"lay_planting","kind":"act","impl":"imperative","description":"Lay planting on the sheet. One quiet point sets a tree; a longer stroke lays a hedge. Same as a hand Planting. Points: 0 left/top → 1 right/bottom inside the dashed lot.","title":"Lay planting","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"points":{"type":"array","minItems":1,"description":"One point for a tree; a stroke for a hedge (0 left/top → 1 right/bottom).","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]}}},"required":["points"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"lay_path","kind":"act","impl":"imperative","description":"Lay a stone walk on the sheet — the same Path stroke a hand would drag, corners kept. Points: 0 left/top → 1 right/bottom inside the dashed lot.","title":"Lay a path","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"points":{"type":"array","minItems":3,"description":"Walk stroke across the dashed lot (0 left/top → 1 right/bottom).","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]}}},"required":["points"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"lay_wall","kind":"act","impl":"imperative","description":"Lay a wall or edge on the sheet. An open stroke is a run; a boxy loop holds an enclosure. Same as a hand Wall. Points: 0 left/top → 1 right/bottom inside the dashed lot.","title":"Lay a wall","annotations":{"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"points":{"type":"array","minItems":3,"description":"Wall stroke across the dashed lot (0 left/top → 1 right/bottom).","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]}}},"required":["points"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"clear_sheet","kind":"act","impl":"imperative","description":"Clear every gesture from the courtyard sheet. The dashed lot, north mark, and scale stay. Same as Clear the sheet / c.","title":"Clear the sheet","annotations":{"readOnlyHint":false,"consequentialHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"read_sheet","kind":"answer","impl":"imperative","description":"Read what is already on the courtyard sheet: every gesture with its kind, whether a hand or an agent laid it, and where it sits in the lot (0–1, the same space lay_* takes). Read this before adding to a sheet so the new work answers the drawing.","title":"Read the sheet","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"title_sheet","kind":"act","impl":"imperative","description":"Give the sheet its title, shown in its title block and printed on the taken sheet. Up to 60 characters.","title":"Title the sheet","annotations":{"readOnlyHint":false,"consequentialHint":false},"inputSchema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":60}},"required":["title"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"undo_gesture","kind":"act","impl":"imperative","description":"Take the last gesture back off the sheet. Same as Undo / z.","title":"Undo the last gesture","annotations":{"readOnlyHint":false,"consequentialHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"},{"name":"export_sheet","kind":"act","impl":"imperative","description":"Take the covered hangable sheet as garth.png — vellum down, ready to hang. Same as Take the sheet / e.","title":"Take the sheet","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/yard-draft/"}],"favicon":"/favicons/johnnywang8802.github.io.svg","apiSurface":"spec","category":"Developer Tools","toolCount":10}}