{"ok":true,"site":{"host":"insignifi4nt.github.io","url":"https://insignifi4nt.github.io/wireedm-gcode-parser/","type":"live","desc":"broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.","tools":[{"name":"edm_inspect_approach","kind":"answer","impl":"imperative","description":"Find the exact nearest point on an operation from a millimeter coordinate and check its straight entry against every source segment, excluding only the intended attachment. Optional hintPoint chooses a different contour attachment by nearest snap. Read-only; does not set a start or approve a lead. A clear geometric nearest point is the nearest reachable straight attachment. Blocked does not rule out alternatives; no alternate-route search, wire-radius, fixture or machine certification. Paginate intersection rows with the same target version.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["target","operationId","from"],"properties":{"target":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","version"],"properties":{"kind":{"const":"current-draft","type":"string"},"version":{"minLength":1,"maxLength":160,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","projectId"],"properties":{"kind":{"const":"saved-project","type":"string"},"projectId":{"minLength":1,"maxLength":160,"type":"string"},"version":{"minLength":1,"maxLength":160,"type":"string"}}}]},"operationId":{"minLength":1,"type":"string"},"from":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},"hintPoint":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},"offset":{"minimum":0,"maximum":100000,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_describe_edits","kind":"answer","impl":"imperative","description":"Discover precise, undoable UPID edit kinds without changing the draft. With no kind returns a compact catalog; with kind returns that exact JSON schema and its semantics. Use operation/segment IDs from edm_query_geometry and coordinates in millimeters.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"kind":{"anyOf":[{"const":"initial-wire","type":"string"},{"const":"geometry-basis","type":"string"},{"const":"translate","type":"string"},{"const":"rotate","type":"string"},{"const":"mirror","type":"string"},{"const":"scale","type":"string"},{"const":"order-strategy","type":"string"},{"const":"move-operation","type":"string"},{"const":"reverse","type":"string"},{"const":"classification","type":"string"},{"const":"start-point","type":"string"},{"const":"compensation","type":"string"},{"const":"threading-default","type":"string"},{"const":"threading","type":"string"},{"const":"circle-center-entry","type":"string"},{"const":"entry","type":"string"},{"const":"exit","type":"string"},{"const":"program-stops","type":"string"},{"const":"participation","type":"string"},{"const":"partial-compensation","type":"string"},{"const":"partial-lead-review","type":"string"}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_get_context","kind":"answer","impl":"imperative","description":"Read app version, storage kind and the current editor draft identity/version. Does not open or change a project.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_list_projects","kind":"answer","impl":"imperative","description":"List active saved projects without opening them. Pin catalogVersion when requesting subsequent pages.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"offset":{"minimum":0,"maximum":100000,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"},"catalogVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_get_project","kind":"answer","impl":"imperative","description":"Read an explicit current draft or saved project summary. Draft reads require the current version from edm_get_context. Counts and recorded diagnostics are not executable certification.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["target"],"properties":{"target":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","version"],"properties":{"kind":{"const":"current-draft","type":"string"},"version":{"minLength":1,"maxLength":160,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","projectId"],"properties":{"kind":{"const":"saved-project","type":"string"},"projectId":{"minLength":1,"maxLength":160,"type":"string"},"version":{"minLength":1,"maxLength":160,"type":"string"}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_query_geometry","kind":"answer","impl":"imperative","description":"Read UPID operation/contour summaries or exact segments in millimeters from a versioned target. For segments, optionally filter by operationId to obtain cutting order and reversed flags.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["target","kind"],"properties":{"target":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","version"],"properties":{"kind":{"const":"current-draft","type":"string"},"version":{"minLength":1,"maxLength":160,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","projectId"],"properties":{"kind":{"const":"saved-project","type":"string"},"projectId":{"minLength":1,"maxLength":160,"type":"string"},"version":{"minLength":1,"maxLength":160,"type":"string"}}}]},"kind":{"anyOf":[{"const":"operations","type":"string"},{"const":"contours","type":"string"},{"const":"segments","type":"string"}]},"operationId":{"minLength":1,"type":"string"},"offset":{"minimum":0,"maximum":100000,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_get_capabilities","kind":"answer","impl":"imperative","description":"Read installed machines and exact post capabilities. Pin returned capabilityVersion across pages. Default retains complete small machine rows; kind:machines always lists compact machines. setupsOmitted means request kind:setups with exact machineId/version. Large setup omittedDetails remain available through edm_read_machine_setup. Does not activate or certify a job.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"anyOf":[{"additionalProperties":false,"type":"object","properties":{"offset":{"minimum":0,"maximum":100000,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"},"kind":{"const":"machines","type":"string"},"capabilityVersion":{"minLength":1,"maxLength":160,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","machineId","capabilityVersion"],"properties":{"offset":{"minimum":0,"maximum":100000,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"},"kind":{"const":"setups","type":"string"},"machineId":{"minLength":1,"maxLength":160,"type":"string"},"capabilityVersion":{"minLength":1,"maxLength":160,"type":"string"}}}]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_read_machine_setup","kind":"answer","impl":"imperative","description":"Read complete exact installed setup JSON including post hash, properties, compatibility, verification and capabilities. Requires machineId/bindingId/capabilityVersion from discovery. Offsets count JavaScript UTF-16 code units; concatenate text chunks and parse JSON. Does not activate, edit or certify a setup.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["machineId","bindingId","capabilityVersion"],"properties":{"machineId":{"minLength":1,"maxLength":160,"type":"string"},"bindingId":{"minLength":1,"maxLength":160,"type":"string"},"capabilityVersion":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"length":{"minimum":1,"maximum":4000,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_list_revisions","kind":"answer","impl":"imperative","description":"Read a bounded page of saved revision display metadata for a project. Missing or corrupt rows remain visible. Does not generate controller output.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["projectId"],"properties":{"projectId":{"minLength":1,"maxLength":160,"type":"string"},"page":{"minimum":0,"maximum":100000,"type":"integer"},"version":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_validate_upid","kind":"act","impl":"imperative","description":"Validate supplied portable UPID JSON without importing, saving or running a post. Reports structure/planning diagnostics only, not machine or controller readiness. Maximum 512 KiB UTF-8.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["text"],"properties":{"text":{"minLength":1,"maxLength":524288,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_request_import_file","kind":"act","impl":"imperative","description":"Open the browser-local attachment dialog. Attach a file with its native file input, then read edm_workflow_context.inputFile and pass source:{fileToken} to DXF preparation, UPID import or machine-package preparation. No file contents in tool-call text. Does not import, install or save. Tokens expire on replacement, reload or storage changes.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_workflow_context","kind":"act","impl":"imperative","description":"Read mutation version, input limits, the attached browser-local file token, prepared imports and the generated artifact. Imports accept source:{fileToken} or inline text/package base64. Browser storage belongs to this browser.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_export_recovery","kind":"act","impl":"imperative","description":"Capture and request a download of readable original logical text and diagnostics from the connected or failed storage source in edm_workflow_context.recovery. Check its location, which can differ from the active workbench after a failed storage switch. Does not repair, restore, delete, initialize, validate revisions or execute posts. Omissions and non-atomic reads are explicit. Returns an archive receipt, not file contents or proof that the browser saved it. Set downloadPrepared:true to retry the captured download without rereading storage.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["sourceId"],"properties":{"sourceId":{"minLength":1,"maxLength":160,"type":"string"},"downloadPrepared":{"type":"boolean"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_prepare_dxf","kind":"act","impl":"imperative","description":"Preview DXF source:{fileToken} from edm_request_import_file, or source:{fileName,text} at most 1 MiB UTF-8 inline. Returns unit choices and millimeter bounds for explicit review. Does not save a project. Attached files use ordinary DXF limits.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"source":{"anyOf":[{"additionalProperties":false,"type":"object","required":["fileName","text"],"properties":{"fileName":{"minLength":1,"maxLength":200,"pattern":"^[^/\\\\]+$","type":"string"},"text":{"minLength":1,"maxLength":1048576,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["fileToken"],"properties":{"fileToken":{"minLength":1,"maxLength":160,"type":"string"}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_import_dxf","kind":"act","impl":"imperative","description":"Import and open the exact prepared DXF using an explicitly chosen unit candidate. Rejects dirty drafts and changed workbenches. Acknowledge overriding declared units only when intended.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","preparationId","unitCandidateId","declaredUnitOverrideAcknowledged"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"preparationId":{"minLength":1,"maxLength":160,"type":"string"},"unitCandidateId":{"minLength":1,"maxLength":160,"type":"string"},"declaredUnitOverrideAcknowledged":{"type":"boolean"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_import_upid","kind":"act","impl":"imperative","description":"Import and open portable UPID JSON via source:{fileToken} from edm_request_import_file, or source:{fileName,text} at most 1 MiB UTF-8 inline. Attached files use the ordinary 64 MiB limit. Creates a new project; preserves dirty-draft and workflow guards.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"source":{"anyOf":[{"additionalProperties":false,"type":"object","required":["fileName","text"],"properties":{"fileName":{"minLength":1,"maxLength":200,"pattern":"^[^/\\\\]+$","type":"string"},"text":{"minLength":1,"maxLength":1048576,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["fileToken"],"properties":{"fileToken":{"minLength":1,"maxLength":160,"type":"string"}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_open_project","kind":"act","impl":"imperative","description":"Open an existing saved project by ID. Save any dirty draft and finish its workflow first.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","projectId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"projectId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_edit_project","kind":"act","impl":"imperative","description":"Apply an atomic, undoable batch to the current draft. Coordinates/lengths are millimeters. start-point snaps to the nearest contour point and may split a segment. Null entry/exit explicitly reviews no lead. Read geometry and execution diagnostics before choosing machining intent; edits do not save.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["draftVersion","edits"],"properties":{"draftVersion":{"minLength":1,"maxLength":160,"type":"string"},"edits":{"minItems":1,"maxItems":50,"type":"array","items":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","point"],"properties":{"kind":{"const":"initial-wire","type":"string"},"point":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}}}},{"additionalProperties":false,"type":"object","required":["kind","basis"],"properties":{"kind":{"const":"geometry-basis","type":"string"},"basis":{"anyOf":[{"const":"finished-contour","type":"string"},{"const":"wire-centre","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","delta"],"properties":{"kind":{"const":"translate","type":"string"},"delta":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},"operationId":{"minLength":1,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","degrees","origin"],"properties":{"kind":{"const":"rotate","type":"string"},"degrees":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"origin":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}}}},{"additionalProperties":false,"type":"object","required":["kind","axis","origin"],"properties":{"kind":{"const":"mirror","type":"string"},"axis":{"anyOf":[{"const":"x","type":"string"},{"const":"y","type":"string"}]},"origin":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}}}},{"additionalProperties":false,"type":"object","required":["kind","origin","scale"],"properties":{"kind":{"const":"scale","type":"string"},"origin":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},"scale":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","factor"],"properties":{"kind":{"const":"factor","type":"string"},"factor":{"exclusiveMinimum":0,"maximum":1000000000,"type":"number"}}},{"additionalProperties":false,"type":"object","required":["kind","lengthMm"],"properties":{"kind":{"const":"longest-side","type":"string"},"lengthMm":{"exclusiveMinimum":0,"maximum":1000000000,"type":"number"}}}]}}},{"additionalProperties":false,"type":"object","required":["kind","strategy"],"properties":{"kind":{"const":"order-strategy","type":"string"},"strategy":{"anyOf":[{"const":"inside-out-nearest","type":"string"},{"const":"nearest","type":"string"},{"const":"source-order","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","direction"],"properties":{"kind":{"const":"move-operation","type":"string"},"operationId":{"minLength":1,"type":"string"},"direction":{"anyOf":[{"const":-1,"type":"number"},{"const":1,"type":"number"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId"],"properties":{"kind":{"const":"reverse","type":"string"},"operationId":{"minLength":1,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","classification"],"properties":{"kind":{"const":"classification","type":"string"},"operationId":{"minLength":1,"type":"string"},"classification":{"anyOf":[{"const":"exterior","type":"string"},{"const":"hole","type":"string"},{"const":"island","type":"string"},{"const":"ambiguous","type":"string"},{"const":"open-chain","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","point"],"properties":{"kind":{"const":"start-point","type":"string"},"operationId":{"minLength":1,"type":"string"},"point":{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","selection"],"properties":{"kind":{"const":"compensation","type":"string"},"operationId":{"minLength":1,"type":"string"},"selection":{"anyOf":[{"const":"automatic","type":"string"},{"const":"inside","type":"string"},{"const":"outside","type":"string"},{"const":"centerline","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","transition"],"properties":{"kind":{"const":"threading-default","type":"string"},"transition":{"additionalProperties":false,"type":"object","required":["mode","wireSeparation"],"properties":{"mode":{"anyOf":[{"const":"continuous","type":"string"},{"const":"manual","type":"string"},{"const":"automatic","type":"string"}]},"wireSeparation":{"anyOf":[{"const":"already-separated","type":"string"},{"const":"manual-before-positioning","type":"string"},{"const":"automatic-during-positioning","type":"string"},{"const":"automatic-before-positioning","type":"string"}]}}}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","transition"],"properties":{"kind":{"const":"threading","type":"string"},"operationId":{"minLength":1,"type":"string"},"transition":{"anyOf":[{"additionalProperties":false,"type":"object","required":["mode","wireSeparation"],"properties":{"mode":{"anyOf":[{"const":"continuous","type":"string"},{"const":"manual","type":"string"},{"const":"automatic","type":"string"}]},"wireSeparation":{"anyOf":[{"const":"already-separated","type":"string"},{"const":"manual-before-positioning","type":"string"},{"const":"automatic-during-positioning","type":"string"},{"const":"automatic-before-positioning","type":"string"}]}}},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId"],"properties":{"kind":{"const":"circle-center-entry","type":"string"},"operationId":{"minLength":1,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","from"],"properties":{"kind":{"const":"entry","type":"string"},"operationId":{"minLength":1,"type":"string"},"from":{"anyOf":[{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","to"],"properties":{"kind":{"const":"exit","type":"string"},"operationId":{"minLength":1,"type":"string"},"to":{"anyOf":[{"additionalProperties":false,"type":"object","required":["x","y"],"properties":{"x":{"minimum":-1000000000,"maximum":1000000000,"type":"number"},"y":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","stops"],"properties":{"kind":{"const":"program-stops","type":"string"},"operationId":{"minLength":1,"type":"string"},"stops":{"maxItems":50,"type":"array","items":{"additionalProperties":false,"type":"object","required":["id","enabled","placement","reason"],"properties":{"id":{"minLength":1,"type":"string"},"enabled":{"type":"boolean"},"placement":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"anyOf":[{"const":"before-entry","type":"string"},{"const":"after-positioning","type":"string"},{"const":"after-contour","type":"string"},{"const":"after-exit","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","remainingCutLengthMm"],"properties":{"kind":{"const":"before-operation-end","type":"string"},"remainingCutLengthMm":{"exclusiveMinimum":0,"maximum":1000000000,"type":"number"}}},{"additionalProperties":false,"type":"object","required":["kind","travelLengthMm"],"properties":{"kind":{"const":"after-contour-distance","type":"string"},"travelLengthMm":{"exclusiveMinimum":0,"maximum":1000000000,"type":"number"}}}]},"reason":{"anyOf":[{"const":"operator-check","type":"string"},{"const":"part-retention","type":"string"},{"const":"manual","type":"string"}]},"note":{"maxLength":500,"type":"string"}}}}}},{"additionalProperties":false,"type":"object","required":["kind","sourceSegmentId","range","participation"],"properties":{"kind":{"const":"participation","type":"string"},"sourceSegmentId":{"minLength":1,"type":"string"},"range":{"additionalProperties":false,"type":"object","required":["start","end"],"properties":{"start":{"minimum":0,"maximum":1,"type":"number"},"end":{"minimum":0,"maximum":1,"type":"number"}}},"participation":{"anyOf":[{"const":"active-cut","type":"string"},{"const":"inactive-reference","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","side"],"properties":{"kind":{"const":"partial-compensation","type":"string"},"operationId":{"minLength":1,"type":"string"},"side":{"anyOf":[{"anyOf":[{"const":"left","type":"string"},{"const":"right","type":"string"}]},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","operationId","role","reviewed"],"properties":{"kind":{"const":"partial-lead-review","type":"string"},"operationId":{"minLength":1,"type":"string"},"role":{"anyOf":[{"const":"entry","type":"string"},{"const":"exit","type":"string"}]},"reviewed":{"type":"boolean"}}}]}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_draft_history","kind":"answer","impl":"imperative","description":"Undo or redo one complete editor change, including an agent edit batch. Does not save.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["draftVersion","direction"],"properties":{"draftVersion":{"minLength":1,"maxLength":160,"type":"string"},"direction":{"anyOf":[{"const":"undo","type":"string"},{"const":"redo","type":"string"}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_save_project","kind":"act","impl":"imperative","description":"Save the exact current draft into its existing project. Rejects a changed draft or open workflow. Read fresh context after saving.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["draftVersion"],"properties":{"draftVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_review_execution","kind":"act","impl":"imperative","description":"Compile the current draft into ordered execution events or actionable diagnostics. Paginated events include generated wire actions and program stops. Successful compilation is not post/machine certification; generation runs those checks.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["draftVersion"],"properties":{"draftVersion":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":100000,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_prepare_machine_package","kind":"act","impl":"imperative","description":"Validate and preview a complete .wireedm-package via source:{fileToken} from edm_request_import_file or source:{fileName,base64}. Canonical padded base64, at most 32 MiB decoded; no paths, URLs or standalone posts. Returns machine identity, setup, post hashes and collision choices before installation. Does not install.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","source"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"source":{"anyOf":[{"additionalProperties":false,"type":"object","required":["fileName","base64"],"properties":{"fileName":{"minLength":1,"maxLength":200,"pattern":"^[^/\\\\\\u0000-\\u001f]+$","description":"A filename ending in .wireedm-package, without a path.","type":"string"},"base64":{"minLength":4,"maxLength":44739244,"description":"Complete archive bytes as canonical padded standard base64, without whitespace or a data URL. Maximum decoded size: 32 MiB.","type":"string"}}},{"additionalProperties":false,"type":"object","required":["fileToken"],"properties":{"fileToken":{"minLength":1,"maxLength":160,"type":"string"}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_install_machine_package","kind":"act","impl":"imperative","description":"Install the reviewed exact package with an explicit collision resolution. Uses the normal package validator, catalog fingerprint checks and installation transaction. This can replace the named machine when replace-existing is chosen.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","preparationId","resolution"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"preparationId":{"minLength":1,"maxLength":160,"type":"string"},"resolution":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"const":"install-new","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","machineId","activate"],"properties":{"kind":{"const":"reuse-existing","type":"string"},"machineId":{"minLength":1,"maxLength":160,"type":"string"},"activate":{"anyOf":[{"const":"package","type":"string"},{"const":"keep-current","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","machineId","activate"],"properties":{"kind":{"const":"replace-existing","type":"string"},"machineId":{"minLength":1,"maxLength":160,"type":"string"},"activate":{"anyOf":[{"const":"package","type":"string"},{"const":"keep-current","type":"string"}]}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_activate_setup","kind":"act","impl":"imperative","description":"Activate an installed machine setup by exact machine and binding IDs from edm_get_capabilities.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","machineId","bindingId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"machineId":{"minLength":1,"maxLength":160,"type":"string"},"bindingId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_generate_controller","kind":"act","impl":"imperative","description":"Generate audited controller output from the saved current project and exact active setup. Requires a clean draft. Persists an immutable revision. Does not download or run a machine. Reuse the returned artifact ID for reading/downloading; do not generate repeatedly.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","draftVersion","machineId","bindingId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"draftVersion":{"minLength":1,"maxLength":160,"type":"string"},"machineId":{"minLength":1,"maxLength":160,"type":"string"},"bindingId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_export_controller","kind":"act","impl":"imperative","description":"Generate and request download of controller output in one action, using the same saved-draft, exact active-setup and audited-post checks as the export UI. Persists one immutable revision. On generated:true, reuse its artifactId for retries; do not generate another revision just to download.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","draftVersion","machineId","bindingId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"draftVersion":{"minLength":1,"maxLength":160,"type":"string"},"machineId":{"minLength":1,"maxLength":160,"type":"string"},"bindingId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_read_artifact","kind":"answer","impl":"imperative","description":"Read a bounded text chunk of the exact generated controller file. Offsets count JavaScript UTF-16 characters; chunks preserve original line endings. No regeneration.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["artifactId"],"properties":{"artifactId":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"type":"integer"},"length":{"minimum":1,"maximum":4000,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_download_artifact","kind":"act","impl":"imperative","description":"Request download of an exact generated artifact by ID, preserving its post-controlled name, encoding and line endings. Reports a browser download request, not an on-disk receipt.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["artifactId"],"properties":{"artifactId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_export_upid","kind":"act","impl":"imperative","description":"Download the saved current project as portable UPID JSON. Requires a clean draft; includes geometry and machining intent for another browser. For a saved library project without opening it, use edm_export_saved_upid.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["draftVersion"],"properties":{"draftVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_export_saved_upid","kind":"act","impl":"imperative","description":"Download an explicit saved library project as portable UPID JSON without opening it or replacing the editor draft. Pass savedProjectVersion from edm_get_project with a saved-project target; expectedVersion comes from edm_workflow_context. Unsaved edits are excluded.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","projectId","savedProjectVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"projectId":{"minLength":1,"maxLength":160,"type":"string"},"savedProjectVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"edm_capture_preview","kind":"act","impl":"imperative","description":"Capture the actual current 2D or 3D editor preview as a bounded PNG artifact. 2D shows the editor draft; 3D simulates the saved project and excludes unsaved edits. Excludes app panels and desktop contents. Returns contentSource, a local preview URL and image hash, not inline model image content. Set download:true to request the PNG download. Requires the current draftVersion; does not edit or save.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["draftVersion"],"properties":{"draftVersion":{"minLength":1,"maxLength":160,"type":"string"},"download":{"type":"boolean"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_describe_plugin_api","kind":"answer","impl":"imperative","description":"Discover declarative CAD plugin package contracts without changing a document or storage. No arguments lists accepted API versions; apiVersion returns its complete strict package schema. Inputs and math recipes are data, never executable code. Use complete packages for installation or add-plugin-profile.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"apiVersion":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_list_plugins","kind":"answer","impl":"imperative","description":"List bounded bundled/installed CAD plugin identities, versions and packageHash pins. Read the exact package with cad_read_plugin. Saved instances embed their package; installation never updates existing parts.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_read_plugin","kind":"answer","impl":"imperative","description":"Read the complete pinned plugin package as bounded UTF-16 text chunks. Use exact id/version/packageHash from cad_list_plugins. Concatenate text until nextOffset is null, then parse JSON. Rejects a package changed outside the application.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["id","version","packageHash"],"properties":{"id":{"maxLength":80,"minLength":1,"type":"string"},"version":{"maxLength":32,"minLength":1,"type":"string"},"packageHash":{"pattern":"^[a-f0-9]{64}$","type":"string"},"offset":{"minimum":0,"maximum":65536,"type":"integer"},"length":{"minimum":1,"maximum":4096,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_plugin","kind":"act","impl":"imperative","description":"Inspect one current pinned plugin profile: evaluated inputs, derived values, enabled states and issues. Same configuration evaluator; no edits or manufacturing certification. Pin version and finish workflows.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId","profileId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"minLength":1,"maxLength":160,"type":"string"},"profileId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_install_plugin","kind":"act","impl":"imperative","description":"Validate and install a complete supplied CAD plugin API 1 or 2 package in the active browser cache or folder. Uses the same bounded math recipe, relation/default geometry checks, immutable ID/version collision checks and journaled writes as Plugins > Install. Does not add geometry or update existing parts. Plugin definitions are declarative data, with no network/file/application access. Finish visible editors first.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","package"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"package":{"additionalProperties":true,"description":"Complete package from cad_describe_plugin_api(apiVersion).","type":"object","required":["format","id","version","name","apiVersion"],"properties":{"format":{"const":"wireedm-cad-plugin","type":"string"},"id":{"pattern":"^[a-z][a-z0-9.-]{0,79}$","type":"string"},"version":{"pattern":"^\\d+\\.\\d+\\.\\d+$","maxLength":32,"type":"string"},"name":{"minLength":1,"maxLength":160,"pattern":"\\S","type":"string"},"apiVersion":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_plane","kind":"act","impl":"imperative","description":"Resolve the current active datum, sketch or curve world frame and signed offset in mm. Preserves authored placement; does not certify native solid precision. Finish pending workflows; stale/unavailable references and cancellation reject. Feature definitions: cad_describe_features.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","featureId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"featureId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_sketch_regions","kind":"answer","impl":"imperative","description":"Inspect current or proposed closed sketch cells with local area/bounds. Default rows keep contour references; mode=graph-cells lists all graph-owned bounded cells, including intersections, as numeric cellId receipts to pack with cad_read_sketch_region_reference. Pin version, sketch, mode and identical proposal across pages. proposal previews one complete same-ID sketch, split, trim, extend, offset or mirror, with optional numeric parameterValues; source preflight only. trimAt:{entityId,parameter} or extendAt:{entityId,end} return trimPreview/extendPreview without allocating IDs. Complete targets per cad_describe_edits, reusing witnessed endpoint IDs, then inspect proposal.trim/extend with that exact target. offset and mirror reuse the exact edit request. Reads reserve no IDs; apply topology and consumer repairs atomically. Full sketch: cad_describe_features(kind=sketch). No edits.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"description":"proposal, trimAt and extendAt are mutually exclusive.","type":"object","required":["expectedVersion","sketchId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"},"mode":{"const":"graph-cells","type":"string"},"proposal":{"additionalProperties":false,"minProperties":1,"description":"At most one of sketch, split, trim, extend, offset or mirror.","type":"object","properties":{"sketch":{"additionalProperties":true,"description":"Full sketch: cad_describe_features(kind=sketch).","type":"object","required":["id","name","suppressed","kind"],"properties":{"id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"name":{"minLength":1,"maxLength":160,"pattern":"\\S","type":"string"},"suppressed":{"type":"boolean"},"kind":{"const":"sketch","type":"string"}}},"split":{"additionalProperties":true,"description":"split-sketch-entity target fields.","type":"object","properties":{}},"trim":{"additionalProperties":true,"description":"trimPreview.target plus allocated trim-sketch-entity IDs.","type":"object","properties":{}},"extend":{"additionalProperties":true,"description":"extendPreview.target plus endPointId.","type":"object","properties":{}},"offset":{"additionalProperties":true,"description":"{source,distance,idPrefix}","type":"object","properties":{}},"mirror":{"additionalProperties":true,"description":"{entityIds,axisLineId,idPrefix}","type":"object","properties":{}},"parameterValues":{"additionalProperties":false,"type":"object","patternProperties":{"^[A-Za-z_][A-Za-z0-9_]{0,63}$":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}}}},"trimAt":{"additionalProperties":false,"type":"object","required":["entityId","parameter"],"properties":{"entityId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"parameter":{"minimum":0,"maximum":1,"type":"number"}}},"extendAt":{"additionalProperties":false,"type":"object","required":["entityId","end"],"properties":{"entityId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"end":{"anyOf":[{"const":"start","type":"string"},{"const":"end","type":"string"}]}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_read_sketch_region_reference","kind":"answer","impl":"imperative","description":"Read exact regionSelection reference JSON in UTF-16 chunks; concatenate until nextOffset=null. Give boundaryProfileId for an unchanged contour, or nonempty unique cellIds for one packed graph-cells selection; cell IDs are read-only locators, never saved topology. Pin version, sketch, mode and the identical optional proposal from cad_inspect_sketch_regions for every chunk. Source preflight only. Full sketch: cad_describe_features(kind=sketch). No edits.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"description":"Exactly one of boundaryProfileId or cellIds.","type":"object","required":["expectedVersion","sketchId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"length":{"minimum":1,"maximum":4096,"type":"integer"},"proposal":{"additionalProperties":true,"description":"The identical proposal object given to cad_inspect_sketch_regions.","type":"object","properties":{}},"boundaryProfileId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"cellIds":{"minItems":1,"uniqueItems":true,"type":"array","items":{"minimum":0,"maximum":9007199254740991,"type":"integer"}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_loft","kind":"act","impl":"imperative","description":"Preflight 2–16 ordered sketch sources for a new Loft: exact common-frame placement, station order and precision. Does not reorder geometry or certify Join/Cut/native material. Authoring semantics: cad_describe_features(kind=loft); finish with cad_build. No edits/native work.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchIds"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchIds":{"minItems":2,"maxItems":16,"uniqueItems":true,"type":"array","items":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_sweep","kind":"act","impl":"imperative","description":"Preflight a sketch plus open Curve for Sweep: exact placement, tangent continuity, section/rail bounds and conservative clearance. Does not relocate geometry or certify native material. Details: cad_describe_features(kind=sweep); finish with cad_build. No edits/native work.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId","curveId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"curveId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_construct_curve","kind":"act","impl":"imperative","description":"Construct and measure one open analytic line/arc chain from ordered local-mm start/steps. Keeps direction and major/minor arcs; rejects closed, disconnected, crossing or uncertain geometry. Insert returned segments with cad_edit_document using cad_describe_features(kind=curve). No edits.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["start","steps"],"properties":{"start":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2},"steps":{"minItems":1,"maxItems":128,"type":"array","items":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","end"],"properties":{"kind":{"const":"line","type":"string"},"end":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2}}},{"additionalProperties":false,"type":"object","required":["kind","end","through"],"properties":{"kind":{"const":"arc","type":"string"},"end":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2},"through":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2}}}]}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_import_curve_dxf","kind":"act","impl":"imperative","description":"Import one complete open planar line/arc chain from DXF as a fresh unsaved Curve document. Uses File > Import > Curve checks. Preserves exact source text, direction of ordered polylines, and exact circular arcs. Missing/unknown units require explicit mm/inch/cm/m; conflicting overrides, closed/multiple/branching chains, unsupported entities and approximations fail before replacing the draft. Refuses unsaved work, active workflows and stale versions; supports cancellation.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","source"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"source":{"additionalProperties":false,"type":"object","required":["format","fileName","text"],"properties":{"format":{"const":"dxf","type":"string"},"fileName":{"minLength":1,"maxLength":160,"pattern":"^[^/\\\\]+\\.[dD][xX][fF]$","type":"string"},"text":{"minLength":1,"type":"string"},"units":{"anyOf":[{"const":"mm","type":"string"},{"const":"inch","type":"string"},{"const":"cm","type":"string"},{"const":"m","type":"string"}]}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_measure_curve","kind":"answer","impl":"imperative","description":"Measure one exact open Curve in local and world millimeters: analytic length, bounds, ordered start/end points, plane and offset. Uses expressions in the current version. A suppressed Curve on an unavailable datum retains local measurements and returns null world placement with placementDiagnostic. Curves are reference geometry without material area or CAM contour roles. No document or storage changes.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","curveId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"curveId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_export_curve_dxf","kind":"act","impl":"imperative","description":"Request an exact open Curve DXF download in local millimeters. Writes an ordered open LWPOLYLINE with signed circular bulges, preserving traversal. Does not close the curve, project a solid or assign CAM roles. Fails if DXF cannot preserve exact support within modeling precision.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","curveId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"curveId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_get_context","kind":"answer","impl":"imperative","description":"Read CAD draft/version/workflow/build state and bounded parameter/group summaries. Omitted data: cad_inspect_parameters or complete cad_read_document at the same version. No writes.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_parameters","kind":"answer","impl":"imperative","description":"Read current named dimensions, groups, historical manual/plugin provenance and actual expression usages without changing the draft. With name, paginate its dimension-bearing references and read active/inactive reasons and downstream history; without name, paginate parameter summaries. Suppressed features and automatic plugin inputs are distinguished from effective links. Source is creation history and can outlive its original feature. Rejects stale versions, cancellation and pending UI workflows.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"name":{"pattern":"^[A-Za-z_][A-Za-z0-9_]{0,63}$","type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_construct_path","kind":"act","impl":"imperative","description":"Construct and measure a closed analytic line/arc profile from ordered local-mm start/steps. Keeps signed major/minor arcs; adds a final straight closing edge if needed. Rejects ambiguous, crossing or zero-area geometry. Insert returned geometry with cad_edit_document using cad_describe_features(kind=sketch). No edits.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["start","steps"],"properties":{"start":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2},"steps":{"minItems":1,"maxItems":128,"type":"array","items":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","end"],"properties":{"kind":{"const":"line","type":"string"},"end":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2}}},{"additionalProperties":false,"type":"object","required":["kind","end","through"],"properties":{"kind":{"const":"arc","type":"string"},"end":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2},"through":{"type":"array","items":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minimum":-1000000000,"maximum":1000000000,"type":"number"}],"additionalItems":false,"minItems":2,"maxItems":2}}}]}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_describe_features","kind":"answer","impl":"imperative","description":"Discover exact CAD feature definitions and semantics without opening or changing a document. With no kind returns a compact catalog; provide kind for its JSON schema. Use complete feature definitions in add-feature/update-feature. Dimensions are mm, angles degrees.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"kind":{"anyOf":[{"const":"datum-plane","type":"string"},{"const":"curve","type":"string"},{"const":"sketch","type":"string"},{"const":"imported","type":"string"},{"const":"extrude","type":"string"},{"const":"pocket","type":"string"},{"const":"revolve","type":"string"},{"const":"loft","type":"string"},{"const":"sweep","type":"string"},{"const":"fillet","type":"string"},{"const":"chamfer","type":"string"},{"const":"shell","type":"string"},{"const":"boolean","type":"string"},{"const":"transform","type":"string"},{"const":"linear-pattern","type":"string"},{"const":"circular-pattern","type":"string"},{"const":"mirror","type":"string"}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_open_workspace","kind":"act","impl":"imperative","description":"Open the desktop CAD workspace, retaining its current draft. Refuses to leave an unsaved CAM draft or active CAM workflow.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_create_document","kind":"act","impl":"imperative","description":"Create a blank CAD draft with a fresh identity. Does not save. Save an existing nonempty draft before replacing it.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","name"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"name":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_import_document","kind":"act","impl":"imperative","description":"Import a complete validated wireedm-cad document as a NEW unsaved draft with a fresh identity. Call cad_describe_features for complete feature schemas; the compact feature envelope does not relax validation. Uses the visible CAD JSON Import operation; preserves expressions and feature IDs, never overwrites saved CAD. Refuses unsaved CAD/CAM drafts, stale versions and active workflows. Typed declarative CAD data only, not executable source.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","document"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"document":{"additionalProperties":false,"type":"object","required":["format","schemaVersion","id","name","units","parameters","features"],"properties":{"format":{"const":"wireedm-cad","type":"string"},"schemaVersion":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]},"id":{"pattern":"^[a-z0-9][a-z0-9_-]{0,95}$","type":"string"},"name":{"minLength":1,"maxLength":160,"pattern":"\\S","type":"string"},"units":{"const":"mm","type":"string"},"parameters":{"additionalProperties":false,"type":"object","patternProperties":{"^[A-Za-z_][A-Za-z0-9_]{0,63}$":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}},"parameterGroups":{"type":"array","items":{"additionalProperties":false,"type":"object","required":["id","name"],"properties":{"id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"name":{"minLength":1,"maxLength":160,"pattern":"\\S","type":"string"}}}},"parameterMetadata":{"additionalProperties":false,"type":"object","patternProperties":{"^[A-Za-z_][A-Za-z0-9_]{0,63}$":{"additionalProperties":false,"type":"object","required":["source"],"properties":{"groupId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"source":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"const":"manual","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","featureId","profileId","inputName","packageId","packageVersion"],"properties":{"kind":{"const":"plugin","type":"string"},"featureId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"profileId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"inputName":{"pattern":"^[A-Za-z_][A-Za-z0-9_]{0,63}$","type":"string"},"packageId":{"pattern":"^[a-z][a-z0-9.-]{0,79}$","type":"string"},"packageVersion":{"pattern":"^\\d+\\.\\d+\\.\\d+$","maxLength":32,"type":"string"}}}]}}}}},"features":{"type":"array","items":{"additionalProperties":true,"type":"object","required":["id","name","suppressed","kind"],"properties":{"id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"name":{"minLength":1,"maxLength":160,"pattern":"\\S","type":"string"},"suppressed":{"type":"boolean"},"kind":{"type":"string"}}}}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_import_solid","kind":"act","impl":"imperative","description":"Import a STEP or watertight STL file as a fresh unsaved CAD document using the same native checks as File > Import. STEP accepts UTF-8 text and embedded units. STL accepts standard padded base64 with explicit mm/inch units and produces faceted geometry. Preserves the complete original source. Refuses unsaved CAD/CAM work and open workflows. Native parsing, topology and positive-volume validation must succeed before changing the draft.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","source"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"source":{"anyOf":[{"additionalProperties":false,"type":"object","required":["format","fileName","encoding","data"],"properties":{"format":{"const":"step","type":"string"},"fileName":{"minLength":1,"maxLength":160,"type":"string"},"encoding":{"const":"utf8","type":"string"},"data":{"minLength":1,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["format","fileName","encoding","data","units"],"properties":{"format":{"const":"stl","type":"string"},"fileName":{"minLength":1,"maxLength":160,"type":"string"},"encoding":{"const":"base64","type":"string"},"data":{"minLength":4,"type":"string"},"units":{"anyOf":[{"const":"mm","type":"string"},{"const":"inch","type":"string"}]}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_import_dxf","kind":"act","impl":"imperative","description":"Import a complete exact DXF as a fresh CAD document containing an editable planar sketch. Preserves original text, circular arcs and analytic nesting. Uses declared units; missing/unknown units require explicit mm/inch/cm/m. Conflicting unit overrides, open/branching contours, unsupported curves and approximation are rejected. Uses the same cancellable worker operation as File > Import and refuses unsaved work or active workflows.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","source"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"source":{"additionalProperties":false,"type":"object","required":["format","fileName","text"],"properties":{"format":{"const":"dxf","type":"string"},"fileName":{"minLength":1,"maxLength":160,"pattern":"^[^/\\\\]+\\.[dD][xX][fF]$","type":"string"},"text":{"minLength":1,"type":"string"},"units":{"anyOf":[{"const":"mm","type":"string"},{"const":"inch","type":"string"},{"const":"cm","type":"string"},{"const":"m","type":"string"}]}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_list_documents","kind":"act","impl":"imperative","description":"List real saved CAD documents in the active browser cache or workbench folder. Failed files are reported and preserved.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_open_document","kind":"act","impl":"imperative","description":"Open a saved CAD document by ID. Refuses to replace unsaved CAD or CAM work. Read cad_get_context for expectedVersion.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","documentId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"documentId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_read_features","kind":"answer","impl":"imperative","description":"Read paginated feature definitions from the current CAD draft, including exact dimensions and expressions. Use IDs in updates; never infer them from names.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_read_document","kind":"answer","impl":"imperative","description":"Read complete current CAD JSON in exact bounded UTF-16 chunks, including large sketches that exceed one feature-page response. Concatenate text until nextOffset is null, then parse JSON. Offsets count JavaScript UTF-16 code units. Pin the same expectedVersion for every chunk. No save or browser download.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"length":{"minimum":1,"maximum":4096,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_get_feature","kind":"answer","impl":"imperative","description":"Read one feature definition by exact ID in the current draft.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","featureId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"featureId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_edit_document","kind":"act","impl":"imperative","description":"Apply typed edits atomically to the CAD draft: parameters, sketch grips/dimensions/translations, independent profile copies, preceding-sketch construction references, rename, reorder or cascade deletion. copy-sketch-profile creates a new editable numeric graph sketch from one actual accepted profile; source data stays exact. One undo step; no save. Call cad_describe_edits(kind) for fields, cad_describe_features for complete add/update definitions; execution stays strict. Rejects invalid geometry, references, stale versions and active workflows. No code execution.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","edits"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"edits":{"minItems":1,"maxItems":128,"type":"array","items":{"additionalProperties":true,"description":"Fields: cad_describe_edits(kind). Execution validates the complete contract.","type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["add-feature","update-feature","delete-feature","move-feature","set-parameter","remove-parameter","rename-parameter","set-parameter-group","remove-parameter-group","move-parameter","add-plugin-profile","add-sketch-dimension","set-sketch-dimension","remove-sketch-dimension","translate-sketch-profiles","translate-sketch-geometry","place-sketch-geometry","move-sketch-handle","append-sketch-entities","create-sketch-corner","split-sketch-entity","trim-sketch-entity","extend-sketch-entity","offset-sketch-loop","mirror-sketch-geometry","copy-sketch-profile","use-sketch-entity","delete-sketch-elements","set-sketch-construction","move-sketch-point","set-sketch-relation","remove-sketch-relation","rename-document"]}}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_describe_edits","kind":"answer","impl":"imperative","description":"Discover CAD edit fields without opening or changing a draft. No kind returns a catalog; kind returns its strict contract. Add/update features and plugin packages use their separate complete discovery tools. Execution always validates full definitions.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","properties":{"kind":{"minLength":1,"maxLength":80,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_history","kind":"answer","impl":"imperative","description":"Undo or redo one CAD edit batch. Draft versions always advance; saved storage is unchanged until Save.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","direction"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"direction":{"anyOf":[{"const":"undo","type":"string"},{"const":"redo","type":"string"}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_get_viewport","kind":"answer","impl":"imperative","description":"Read current CAD selection/view/build/reference metadata and viewportToken. Large ID collections report exact totals/omissions: page visible-bodies or reference-features with the same expectedVersion and expectedViewportToken. STALE_VIEW requires a new summary. referencePlanes identifies principal glyphs without feature IDs. Verify view changes before capture.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"anyOf":[{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"}}},{"additionalProperties":false,"type":"object","required":["expectedVersion","collection","expectedViewportToken"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"collection":{"anyOf":[{"const":"visible-bodies","type":"string"},{"const":"reference-features","type":"string"}]},"expectedViewportToken":{"minLength":1,"maxLength":128,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}}]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_set_viewport","kind":"act","impl":"imperative","description":"Use visible CAD viewport operations: named view, fit/grid, feature/profile/reference-plane selection and ordered sketch point/edge sets, enter/finish sketch or curve editing, body/face/edge pick mode and exact-build topology selection. Plane selection never inserts a sketch: use cad_edit_document with an explicit plane to create one. Does not edit geometry or save. Active workflows block changes. Read cad_get_viewport after applying.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","command"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"command":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","view"],"properties":{"kind":{"const":"set-view","type":"string"},"view":{"anyOf":[{"const":"Isometric","type":"string"},{"const":"Top","type":"string"},{"const":"Front","type":"string"},{"const":"Right","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"const":"fit","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","visible"],"properties":{"kind":{"const":"set-grid","type":"string"},"visible":{"type":"boolean"}}},{"additionalProperties":false,"type":"object","required":["kind","featureId"],"properties":{"kind":{"const":"select-feature","type":"string"},"featureId":{"anyOf":[{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","plane"],"properties":{"kind":{"const":"select-reference-plane","type":"string"},"plane":{"anyOf":[{"anyOf":[{"anyOf":[{"const":"XY","type":"string"},{"const":"XZ","type":"string"},{"const":"YZ","type":"string"}]},{"additionalProperties":false,"type":"object","required":["kind","featureId"],"properties":{"kind":{"const":"datum-plane","type":"string"},"featureId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}}]},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","sketchId"],"properties":{"kind":{"const":"edit-sketch","type":"string"},"sketchId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","curveId"],"properties":{"kind":{"const":"edit-curve","type":"string"},"curveId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","profileId"],"properties":{"kind":{"const":"select-profile","type":"string"},"profileId":{"anyOf":[{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","selection"],"properties":{"kind":{"const":"select-sketch-geometry","type":"string"},"selection":{"anyOf":[{"additionalProperties":false,"type":"object","required":["kind","id"],"properties":{"kind":{"anyOf":[{"const":"point","type":"string"},{"const":"entity","type":"string"}]},"id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}},{"type":"null"}]}}},{"additionalProperties":false,"type":"object","required":["kind","selections"],"properties":{"kind":{"const":"select-sketch-geometry-set","type":"string"},"selections":{"maxItems":64,"uniqueItems":true,"type":"array","items":{"additionalProperties":false,"type":"object","required":["kind","id"],"properties":{"kind":{"anyOf":[{"const":"point","type":"string"},{"const":"entity","type":"string"}]},"id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"}}}}}},{"additionalProperties":false,"type":"object","required":["kind","filter"],"properties":{"kind":{"const":"set-sketch-pick-filter","type":"string"},"filter":{"anyOf":[{"const":"auto","type":"string"},{"const":"points","type":"string"},{"const":"edges","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"const":"finish-sketch","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"const":"finish-curve","type":"string"}}},{"additionalProperties":false,"type":"object","required":["kind","mode"],"properties":{"kind":{"const":"set-pick-mode","type":"string"},"mode":{"anyOf":[{"const":"auto","type":"string"},{"const":"body","type":"string"},{"const":"face","type":"string"},{"const":"edge","type":"string"}]}}},{"additionalProperties":false,"type":"object","required":["kind","selection","additive"],"properties":{"kind":{"const":"select-topology","type":"string"},"selection":{"additionalProperties":false,"type":"object","required":["documentVersion","buildId","bodyId","picks"],"properties":{"documentVersion":{"minLength":1,"maxLength":128,"pattern":"\\S","type":"string"},"buildId":{"minLength":1,"maxLength":128,"pattern":"\\S","type":"string"},"bodyId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"picks":{"minItems":1,"maxItems":64,"type":"array","items":{"additionalProperties":false,"type":"object","required":["kind","key"],"properties":{"kind":{"anyOf":[{"const":"edge","type":"string"},{"const":"face","type":"string"}]},"key":{"minLength":1,"maxLength":128,"pattern":"\\S","type":"string"}}}}}},"additive":{"type":"boolean"}}},{"additionalProperties":false,"type":"object","required":["kind"],"properties":{"kind":{"const":"clear-topology","type":"string"}}}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_capture_preview","kind":"act","impl":"imperative","description":"Capture current CAD draft pixels as a local PNG receipt with version, view metadata and SHA-256. Requires current build/reference layers; stale views reject. Read omitted IDs via cad_get_viewport collection pages. The blob URL is browser-local. Optional download requests a browser save; no CAD/storage edits.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"download":{"type":"boolean"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_build","kind":"answer","impl":"imperative","description":"Evaluate current CAD history in the exact solid kernel and inspect paginated body volume (mm³), bounds (mm), native solidCount (null if unavailable) and feature diagnostics. Use each returned featureId as bodyId in section and topology tools. One body can contain multiple solids. Follow nextBodyOffset with offset/limit on the same version. Lazy kernel initialization may take several seconds. Does not save or create CAM output.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_build_feature_input","kind":"act","impl":"imperative","description":"Build the strict history before an existing Fillet, Chamfer or Shell to replace its selected edges/opening. Choose a body visible at that point; optional finite numeric parameterValues propose correlated edits without accepting them. Returns an ephemeral inputToken/buildId for the existing topology tools. The accepted document/build is unchanged. Use the resulting geometric selector and same parameter batch in cad_edit_document. Finish visible editors before agent calls.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","featureId","bodyId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"featureId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"bodyId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"parameterValues":{"additionalProperties":false,"type":"object","patternProperties":{"^[A-Za-z_][A-Za-z0-9_]{0,63}$":{"minimum":-1000000000,"maximum":1000000000,"type":"number"}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_topology","kind":"act","impl":"imperative","description":"Inspect exact faces or edges of a successfully built body in world coordinates. Pin expectedVersion and expectedBuildId from cad_build, or include inputToken from cad_build_feature_input for that isolated feature input. Returns bounded descriptors and opaque keys for this build only; follow nextOffset. Lengths/coordinates are mm; areas mm². Stale snapshots are rejected without rebuilding. Keys must never be saved in features.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","bodyId","expectedBuildId","kind"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"bodyId":{"minLength":1,"maxLength":160,"type":"string"},"expectedBuildId":{"minLength":1,"maxLength":160,"type":"string"},"kind":{"anyOf":[{"const":"edge","type":"string"},{"const":"face","type":"string"}]},"inputToken":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_resolve_topology","kind":"act","impl":"imperative","description":"Convert up to 32 current edge picks into strict fillet/chamfer geometric selectors, or one planar face into an inward-shell opening query. Read-only: no feature is added. Pin the version/build from topology inspection, including inputToken for an isolated existing-feature input, then use the returned selection/opening in cad_edit_document. Exact expected counts reject ambiguity; unsupported curves fail instead of broadening selection. Numeric selectors may need explicit parameter expressions when upstream dimensions change.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","bodyId","expectedBuildId","purpose","picks"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"bodyId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"expectedBuildId":{"minLength":1,"maxLength":128,"pattern":"\\S","type":"string"},"purpose":{"anyOf":[{"const":"fillet","type":"string"},{"const":"chamfer","type":"string"},{"const":"shell","type":"string"}]},"picks":{"minItems":1,"maxItems":32,"type":"array","items":{"additionalProperties":false,"type":"object","required":["kind","key"],"properties":{"kind":{"anyOf":[{"const":"edge","type":"string"},{"const":"face","type":"string"}]},"key":{"minLength":1,"maxLength":128,"pattern":"\\S","type":"string"}}}},"inputToken":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_sketch_constraints","kind":"answer","impl":"imperative","description":"Read graph freedom/status and paged source relations, points or entities with exact drivers and analytic local measurements. Saved reference-dimension rows report computed measurement separately from driving values; they add no native equation. Does not apply a solve or change history. Requires a current version and closed workflows.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"section":{"anyOf":[{"const":"relations","type":"string"},{"const":"points","type":"string"},{"const":"entities","type":"string"}]},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_sketch_handles","kind":"answer","impl":"imperative","description":"Inspect revision-scoped sketch grips: exact local-mm point, handle, label and draggable state. Follow pages at one version; use the returned handle with move-sketch-handle in cad_edit_document. Grips preserve dimensions/expressions; indices are never persistent relation IDs. No edits.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId","profileId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"minLength":1,"maxLength":160,"type":"string"},"profileId":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_measure_sketch","kind":"act","impl":"imperative","description":"Measure one validated sketch analytically in its local millimeter coordinates: paginated per-profile area (mm²), exact perimeter (mm), bounds (mm), total material area with nested holes/islands, and cut boundary length. Construction geometry is measured separately and excluded from cut totals. This measures the sketch, not a projection of the solid. Empty sketches return zero totals and null cut bounds.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"minLength":1,"maxLength":160,"type":"string"},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_save_document","kind":"act","impl":"imperative","description":"Save the exact shared CAD draft through the active workbench adapter with cross-tab conflict detection and journal recovery. Returns a durable save receipt. Does not generate controller output.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_inspect_section","kind":"act","impl":"imperative","description":"Compute a final solid section on XY, XZ or YZ with a parameterized offset along the plane normal (+Z, -Y or +X respectively). Returns paginated exact local 2D lines/arcs/circles and closed-contour count. Choose a plane inside the material. Tangent, open, branching, ellipse and spline sections are rejected; no approximation. Does not save.","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","section"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"section":{"additionalProperties":false,"type":"object","required":["bodyId","plane","offset"],"properties":{"bodyId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"plane":{"anyOf":[{"const":"XY","type":"string"},{"const":"XZ","type":"string"},{"const":"YZ","type":"string"}]},"offset":{"anyOf":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minLength":1,"maxLength":512,"type":"string"}]}}},"offset":{"minimum":0,"maximum":9007199254740991,"type":"integer"},"limit":{"minimum":1,"maximum":50,"type":"integer"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_send_section_to_cam","kind":"transact","impl":"imperative","description":"Save CAD and create/open a new detached CAM project from an exact final-solid planar section. Uses the same section checks as cad_inspect_section and the visible Section for CAM action. Plane-local millimeters, no final controller output; review CAM stock, wire and installed machine setup after transfer.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","section"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"section":{"additionalProperties":false,"type":"object","required":["bodyId","plane","offset"],"properties":{"bodyId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"plane":{"anyOf":[{"const":"XY","type":"string"},{"const":"XZ","type":"string"},{"const":"YZ","type":"string"}]},"offset":{"anyOf":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minLength":1,"maxLength":512,"type":"string"}]}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_export_section_dxf","kind":"act","impl":"imperative","description":"Request a standalone millimeter DXF download from an exact final-solid section on XY, XZ or YZ at a parameterized plane-normal offset. Recomputes and validates the current solid; exports local 2D lines, circular arcs and circles without tessellation. Tangent, open, branching, ellipse and spline sections fail explicitly. Does not project a silhouette, save CAD or create CAM. Browser download request only.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","section"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"section":{"additionalProperties":false,"type":"object","required":["bodyId","plane","offset"],"properties":{"bodyId":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,95}$","type":"string"},"plane":{"anyOf":[{"const":"XY","type":"string"},{"const":"XZ","type":"string"},{"const":"YZ","type":"string"}]},"offset":{"anyOf":[{"minimum":-1000000000,"maximum":1000000000,"type":"number"},{"minLength":1,"maxLength":512,"type":"string"}]}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_send_to_cam","kind":"transact","impl":"imperative","description":"Save CAD, then create and open a NEW detached CAM project from one selected sketch in local XY millimeters. Includes non-construction closed contours with exact lines/arcs. Does not project the final solid; does not overwrite CAM or generate controller output. Review CAM planning and the installed machine setup after handoff.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_export_document","kind":"act","impl":"imperative","description":"Request a portable .cad.json download of the current draft, including parametric history. This is a browser download request, not proof the browser saved it.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_export_solid","kind":"act","impl":"imperative","description":"Evaluate and request a STEP B-rep or STL mesh download of the current model. Failed features block export. Browser download request only.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","format"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"format":{"anyOf":[{"const":"step","type":"string"},{"const":"stl","type":"string"}]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"},{"name":"cad_export_dxf","kind":"act","impl":"imperative","description":"Request an exact 2D DXF download of a selected sketch in local coordinates. Construction geometry is excluded. Does not project the solid.","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"additionalProperties":false,"type":"object","required":["expectedVersion","sketchId"],"properties":{"expectedVersion":{"minLength":1,"maxLength":160,"type":"string"},"sketchId":{"minLength":1,"maxLength":160,"type":"string"}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/wireedm-gcode-parser/"}],"category":"Developer Tools","favicon":"/favicons/insignifi4nt.github.io.png","apiSurface":"spec","toolCount":80}}