feat(environment): system_launch, preference whitelist and operator prompts on COM; declared refusals headlessly
user_pick_point / user_select answer {cancelled: true} on ESC (DISP_E_EXCEPTION)
and {timed_out: true} past COM_CALL_TIMEOUT; preferences_set refuses read-only,
unknown and out-of-range keys before any ActiveX call.
The read-only key is Files.PrinterStyleSheetPath, not the spec's
PrintStyleSheetPath: IAcadPreferencesFiles has no member of that name
(measured live on AutoCAD 2026 / R25.1), and a misspelt key would make
preferences_get() raise on every live call.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FKFStjEFzpGyLq5bMpWxTd
This commit is contained in:
co-authored by
Claude Opus 5
parent
c7dd72410a
commit
b83a74e969
@@ -3,7 +3,7 @@
|
||||
"schema_version": 1,
|
||||
"package_version": "1.5.1",
|
||||
"totals": {
|
||||
"tools": 179,
|
||||
"tools": 185,
|
||||
"resources": 8,
|
||||
"prompts": 5,
|
||||
"groups": 20
|
||||
@@ -24,7 +24,7 @@
|
||||
"pid": 9,
|
||||
"premium": 12,
|
||||
"solids": 5,
|
||||
"system": 7,
|
||||
"system": 13,
|
||||
"templates": 2,
|
||||
"transactions": 3,
|
||||
"validation": 1,
|
||||
@@ -2141,6 +2141,61 @@
|
||||
"readOnlyHint": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "system_launch",
|
||||
"group": "system",
|
||||
"cost": "safe",
|
||||
"summary": "Attach to the running AutoCAD or start it, optionally opening a file (live only).",
|
||||
"tags": [
|
||||
"system"
|
||||
],
|
||||
"annotations": {
|
||||
"title": "Launch / Attach AutoCAD",
|
||||
"readOnlyHint": false,
|
||||
"destructiveHint": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "system_preferences_get",
|
||||
"group": "system",
|
||||
"cost": "read",
|
||||
"summary": "Read AutoCAD preferences from the whitelist (OPTIONS dialog values; live only).",
|
||||
"tags": [
|
||||
"system"
|
||||
],
|
||||
"annotations": {
|
||||
"title": "Get Preferences",
|
||||
"readOnlyHint": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "system_preferences_set",
|
||||
"group": "system",
|
||||
"cost": "safe",
|
||||
"summary": "Change one whitelisted AutoCAD preference; reports old and new (live only).",
|
||||
"tags": [
|
||||
"system"
|
||||
],
|
||||
"annotations": {
|
||||
"title": "Set Preference",
|
||||
"readOnlyHint": false,
|
||||
"destructiveHint": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "system_prompt_message",
|
||||
"group": "system",
|
||||
"cost": "safe",
|
||||
"summary": "Print a message on AutoCAD's command line (live only).",
|
||||
"tags": [
|
||||
"system"
|
||||
],
|
||||
"annotations": {
|
||||
"title": "Command-Line Message",
|
||||
"readOnlyHint": false,
|
||||
"destructiveHint": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "system_run_command",
|
||||
"group": "system",
|
||||
@@ -2346,6 +2401,32 @@
|
||||
"destructiveHint": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "user_pick_point",
|
||||
"group": "system",
|
||||
"cost": "read",
|
||||
"summary": "Ask the operator to pick a point on screen (live only; blocks until they do).",
|
||||
"tags": [
|
||||
"system"
|
||||
],
|
||||
"annotations": {
|
||||
"title": "Ask Operator: Pick Point",
|
||||
"readOnlyHint": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "user_select",
|
||||
"group": "system",
|
||||
"cost": "read",
|
||||
"summary": "Ask the operator to select one entity or a set on screen (live only).",
|
||||
"tags": [
|
||||
"system"
|
||||
],
|
||||
"annotations": {
|
||||
"title": "Ask Operator: Select",
|
||||
"readOnlyHint": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "validation_check",
|
||||
"group": "validation",
|
||||
|
||||
Reference in New Issue
Block a user