@platless/axom-cli 0.1.0 → 0.3.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/README.md +1 -1
  2. package/dist/authScopes.js +19 -0
  3. package/dist/axom-patch/cli/README.md +110 -0
  4. package/dist/axom-patch/cli/pi-steering.json +37 -0
  5. package/dist/axom-patch/cli/probes/claude-late-async-terminal.mjs +34 -0
  6. package/dist/axom-patch/cli/probes/pi-steering.mjs +80 -0
  7. package/dist/axom-patch/cli/probes/qoder-steering.mjs +89 -0
  8. package/dist/axom-patch/cli/probes/qoder-subagent-origin.mjs +49 -0
  9. package/dist/axom-patch/cli/qoder-background-terminal.md +81 -0
  10. package/dist/axom-patch/cli/qoder-foreground-output.md +41 -0
  11. package/dist/axom-patch/cli/qoder-steering.json +52 -0
  12. package/dist/axom-patch/cli/qoder-steering.md +30 -0
  13. package/dist/axom-patch/cli/qoder-subagent-origin.json +73 -0
  14. package/dist/axom-patch/cli/qoder-subagent-subwork.md +73 -0
  15. package/dist/axom-patch/cli/runtime.json +37 -0
  16. package/dist/axom-patch/cli/steering/claude-steering-js.patch +89 -0
  17. package/dist/axom-patch/cli/steering/claude-steering-types.patch +28 -0
  18. package/dist/axom-patch/cli/steering/codex-steering.patch +57 -0
  19. package/dist/axom-patch/cli/steering/pi-steering.js +79 -0
  20. package/dist/cli.js +9 -1
  21. package/dist/commands/auth.js +4 -13
  22. package/dist/commands/execute.js +4 -4
  23. package/dist/commands/record.js +6 -6
  24. package/dist/commands/struct.js +4 -4
  25. package/dist/commands/workstation.js +2 -2
  26. package/dist/credentials.js +2 -2
  27. package/dist/install/claude/commands.js +13 -13
  28. package/dist/mcp.js +32 -14
  29. package/dist/workstation/acp/acpAgents.js +447 -166
  30. package/dist/workstation/acp/acpClient.js +232 -18
  31. package/dist/workstation/acp/acpSession.js +502 -74
  32. package/dist/workstation/acp/activityBusy.js +43 -0
  33. package/dist/workstation/acp/activityReporting.js +54 -0
  34. package/dist/workstation/acp/adoption.js +107 -49
  35. package/dist/workstation/acp/authUrlSniffer.js +36 -0
  36. package/dist/workstation/acp/contract.js +11 -6
  37. package/dist/workstation/acp/delegationMcp.js +24 -0
  38. package/dist/workstation/acp/draftInterceptor.js +9 -0
  39. package/dist/workstation/acp/managedPatches.js +228 -0
  40. package/dist/workstation/acp/patchAssets.js +63 -0
  41. package/dist/workstation/acp/permission.js +300 -34
  42. package/dist/workstation/acp/qoderStartup.js +45 -0
  43. package/dist/workstation/acp/registry/catalog.js +263 -4
  44. package/dist/workstation/acp/registry/detect.js +55 -0
  45. package/dist/workstation/acp/sessionScope.js +19 -0
  46. package/dist/workstation/acp/sessionUpdateMapper.js +39 -21
  47. package/dist/workstation/acp/terminalLogin.js +197 -0
  48. package/dist/workstation/acp/test/fakeAgent.js +185 -9
  49. package/dist/workstation/acp/validate.js +33 -5
  50. package/dist/workstation/agentSessions.js +532 -44
  51. package/dist/workstation/channels/agent.js +7 -1
  52. package/dist/workstation/channels/computer.js +152 -4
  53. package/dist/workstation/channels/management.js +3 -3
  54. package/dist/workstation/config.js +3 -1
  55. package/dist/workstation/connection/encryptedChannel.js +88 -21
  56. package/dist/workstation/daemon.js +25 -3
  57. package/dist/workstation/desktop/binding.js +36 -0
  58. package/dist/workstation/desktop/bridge.js +212 -0
  59. package/dist/workstation/desktop/flow-control.js +52 -0
  60. package/dist/workstation/desktop/focused-text.js +130 -0
  61. package/dist/workstation/desktop/protocol.js +35 -0
  62. package/dist/workstation/fileOps.js +277 -0
  63. package/dist/workstation/filePaths.js +174 -0
  64. package/dist/workstation/fileWorker.js +81 -0
  65. package/dist/workstation/fileWorkerClient.js +121 -0
  66. package/dist/workstation/oauth/deviceAuthorization.js +21 -12
  67. package/dist/workstation/protocol/agent.js +154 -5
  68. package/dist/workstation/protocol/common.js +6 -0
  69. package/dist/workstation/protocol/computer.js +92 -3
  70. package/dist/workstation/qoderAdapter/backgroundProcess.js +106 -0
  71. package/dist/workstation/qoderAdapter/backgroundTerminal.js +262 -0
  72. package/dist/workstation/qoderAdapter/completedContinuation.js +139 -0
  73. package/dist/workstation/qoderAdapter/contract.js +78 -0
  74. package/dist/workstation/qoderAdapter/foregroundOutput.js +30 -0
  75. package/dist/workstation/qoderAdapter/history.js +87 -0
  76. package/dist/workstation/qoderAdapter/identityIndex.js +191 -0
  77. package/dist/workstation/qoderAdapter/inputQueue.js +42 -0
  78. package/dist/workstation/qoderAdapter/main.js +93 -0
  79. package/dist/workstation/qoderAdapter/mapper.js +117 -0
  80. package/dist/workstation/qoderAdapter/observerPlugin.js +245 -0
  81. package/dist/workstation/qoderAdapter/observerReceiver.js +187 -0
  82. package/dist/workstation/qoderAdapter/permissions.js +61 -0
  83. package/dist/workstation/qoderAdapter/profile.js +93 -0
  84. package/dist/workstation/qoderAdapter/sdkDriver.js +49 -0
  85. package/dist/workstation/qoderAdapter/session.js +319 -0
  86. package/dist/workstation/qoderAdapter/subagentMeta.js +28 -0
  87. package/dist/workstation/qoderAdapter/subwork.js +77 -0
  88. package/dist/workstation/qoderAdapter/taskControl.js +38 -0
  89. package/dist/workstation/qoderAdapter/taskEvent.js +26 -0
  90. package/dist/workstation/qoderAdapter/taskLedger.js +163 -0
  91. package/dist/workstation/qoderAdapter/types.js +1 -0
  92. package/dist/workstation/qoderAdapter/usage.js +37 -0
  93. package/dist/workstation/register.js +4 -0
  94. package/dist/workstation/tools/browser.js +394 -0
  95. package/dist/workstation/tools/client.js +269 -0
  96. package/dist/workstation/tools/core.js +50 -0
  97. package/dist/workstation/tools/files.js +525 -0
  98. package/dist/workstation/tools/keeperProcess.js +114 -0
  99. package/dist/workstation/tools/terminal.js +214 -0
  100. package/dist/workstation/tools/validation.js +50 -0
  101. package/dist/workstation/update/coordinator.js +29 -0
  102. package/dist/workstation/update/npmInstaller.js +2 -0
  103. package/dist/workstation/update/ptyPreflight.js +24 -0
  104. package/dist/workstation/update/taskRegistry.js +44 -20
  105. package/dist/workstation/update/watchdog.js +66 -0
  106. package/package.json +14 -4
  107. package/skills/axom/SKILL.md +55 -17
  108. package/skills/axom-definition/SKILL.md +32 -32
  109. package/skills/axom-platform/SKILL.md +39 -39
@@ -1,31 +1,31 @@
1
1
  ---
2
2
  name: axom
3
- description: "Work with Axomwork applications: inspect structures, query and mutate records, execute operations and services via Axomwork MCP tools"
3
+ description: "Work with Axomwork applications: inspect structures, query and mutate records, execute operations and services, manage projects and tasks, and read or update your own account via Axomwork MCP tools"
4
4
  ---
5
5
 
6
6
  # Axomwork
7
7
 
8
- Use this skill when an Axomwork MCP server is connected and you need to inspect application structure, read or change business records, or execute model operations and services.
8
+ Use this skill when an Axomwork MCP server is connected and you need to inspect application structure, read or change business records, execute model operations and services, manage projects and tasks, or read or update your own account.
9
9
 
10
10
  ## Workflow
11
11
 
12
- Start by discovering structure before changing records. Use `axom__struct__list_applications()` to find applications, then `axom__struct__get_model({ applicationName, modelName })` to inspect fields, operations, and record shape. Only then query, create, update, delete, upsert, or execute.
12
+ Start by discovering structure before changing records. Use `axom__app_struct__list_applications()` to find applications, then `axom__app_struct__get_model({ applicationName, modelName })` to inspect fields, operations, and record shape. Only then query, create, update, delete, upsert, or execute.
13
13
 
14
14
  ## Core Tools
15
15
 
16
16
  - `axom__system__whoami()` - returns the current authenticated user and role.
17
- - `axom__struct__list_applications()` - lists available applications.
18
- - `axom__struct__get_application({ applicationName })` - reads one application definition.
19
- - `axom__struct__list_models({ applicationName })` - lists models in an application.
20
- - `axom__struct__get_model({ applicationName, modelName })` - reads one model definition, including attributes and operations.
21
- - `axom__record__query({ applicationName, modelName, criteria?, page? })` - queries records using REST-compatible filters and sorts in `criteria`.
22
- - `axom__record__get({ applicationName, modelName, id })` - reads one record by id.
23
- - `axom__record__create({ applicationName, modelName, record })` - creates a record; `record` contains model field values.
24
- - `axom__record__update({ applicationName, modelName, id, changes })` - updates one record; `changes` contains only the fields to modify.
25
- - `axom__record__upsert({ applicationName, modelName, identityField, record })` - creates or updates a record matched by `identityField`; `record` must include that field. The model must declare a `unique` validation on `identityField`, or the call throws — check `get_model` for that before calling upsert on an unfamiliar model.
26
- - `axom__record__delete({ applicationName, modelName, id })` - deletes one record by id.
27
- - `axom__operation__execute({ applicationName, modelName, operationName, input })` - executes a model operation and waits for the result. Use `axom__operation__execute_async` with the same arguments when asynchronous continuation is intended; it returns a running status and a child run id.
28
- - `axom__service__execute({ applicationName?, serviceName, input })` - executes a reusable platform or application-scoped service, with `axom__service__execute_async` as its non-waiting counterpart.
17
+ - `axom__app_struct__list_applications()` - lists available applications.
18
+ - `axom__app_struct__get_application({ applicationName })` - reads one application definition.
19
+ - `axom__app_struct__list_models({ applicationName })` - lists models in an application.
20
+ - `axom__app_struct__get_model({ applicationName, modelName })` - reads one model definition, including attributes and operations.
21
+ - `axom__record_query__query_records({ applicationName, modelName, criteria?, page? })` - queries records using REST-compatible filters and sorts in `criteria`.
22
+ - `axom__record_query__get_record({ applicationName, modelName, id })` - reads one record by id.
23
+ - `axom__record_write__create_record({ applicationName, modelName, record })` - creates a record; `record` contains model field values.
24
+ - `axom__record_write__update_record({ applicationName, modelName, id, changes })` - updates one record; `changes` contains only the fields to modify.
25
+ - `axom__record_write__upsert_record({ applicationName, modelName, identityField, record })` - creates or updates a record matched by `identityField`; `record` must include that field. The model must declare a `unique` validation on `identityField`, or the call throws — check `get_model` for that before calling upsert on an unfamiliar model.
26
+ - `axom__record_write__delete_record({ applicationName, modelName, id })` - deletes one record by id.
27
+ - `axom__execute__run_operation({ applicationName, modelName, operationName, input })` - executes a model operation and waits for the result. Use `axom__execute__run_operation_async` with the same arguments when asynchronous continuation is intended; it returns a running status and a child run id.
28
+ - `axom__execute__run_service({ applicationName?, serviceName, input })` - executes a reusable platform or application-scoped service, with `axom__execute__run_service_async` as its non-waiting counterpart.
29
29
 
30
30
  ## Query Criteria
31
31
 
@@ -50,7 +50,7 @@ Filter `op` values are `eq|gt|lt|like|in|and|or`. Use nested `filters` for `and`
50
50
 
51
51
  ## Upserting a Record
52
52
 
53
- Use `axom__record__upsert` when a stable external identifier should select an existing record or create a new one. Supply the canonical fields in this order, and include the identity value inside `record`:
53
+ Use `axom__record_write__upsert_record` when a stable external identifier should select an existing record or create a new one. Supply the canonical fields in this order, and include the identity value inside `record`:
54
54
  For create/update/upsert safety, load guide
55
55
  `agent-integration/operating-patterns/safe-record-mutations.md`; before deletion, load
56
56
  `agent-integration/operating-patterns/destructive-actions.md`.
@@ -69,11 +69,49 @@ For create/update/upsert safety, load guide
69
69
 
70
70
  ## Execution Results
71
71
 
72
- `axom__operation__execute` and `axom__service__execute` return an OperationResult-style payload. Interpret `success` as the primary outcome, `text` as user-facing output, `data` as structured result data, `message` as diagnostic detail, `processing` as whether work continues asynchronously, and `runId` as the related run identifier when one is started.
72
+ `axom__execute__run_operation` and `axom__execute__run_service` return an OperationResult-style payload. Interpret `success` as the primary outcome, `text` as user-facing output, `data` as structured result data, `message` as diagnostic detail, `processing` as whether work continues asynchronously, and `runId` as the related run identifier when one is started.
73
73
  For asynchronous continuation, load guides
74
74
  `concepts/execution/synchronous-and-task-execution.md` and
75
75
  `agent-integration/operating-patterns/following-runs.md`.
76
76
 
77
+ ## Tasks
78
+
79
+ Requires the `task` scope. The acting user is always the authenticated account; never pass a user id to act as someone else.
80
+
81
+ - `axom__task__list_projects({ limit?, offset? })` - lists projects you can see.
82
+ - `axom__task__get_project({ projectId })` - reads one project.
83
+ - `axom__task__create_project({ name, description?, prompts? })` - creates a project owned by you; `prompts` is `[{ type, content }]` with `type` one of `brainstorm`, `execute`, `validate`, `archive` (at most one each).
84
+ - `axom__task__update_project({ projectId, name, description?, prompts? })` - renames or re-describes a project; other project settings are kept, and so are its prompts unless you pass `prompts`, which replaces them all.
85
+ - `axom__task__delete_project({ projectId })` - deletes a project. Confirm with the user first.
86
+ - `axom__task__list_project_members({ projectId })` - lists members and their roles.
87
+ - `axom__task__add_project_member({ projectId, userId, type })` - adds a member; `type` is `owner` or `member`.
88
+ - `axom__task__update_project_member({ projectId, userId, type })` - changes a member's role.
89
+ - `axom__task__remove_project_member({ projectId, userId })` - removes a member.
90
+ - `axom__task__list_tasks({ projectId?, parentTaskId?, status?, assigneeId?, limit?, offset? })` - lists tasks by filter.
91
+ - `axom__task__get_task({ taskId })` - reads one task.
92
+ - `axom__task__create_task({ projectId?, parentTaskId?, title, proposal?, status?, assigneeId? })` - creates a task; `proposal` is Markdown.
93
+ - `axom__task__update_task({ taskId, projectId?, parentTaskId?, title, proposal?, status, assigneeId? })` - replaces a task's fields; read it first and send every field you want to keep.
94
+ - `axom__task__delete_task({ taskId })` - deletes a task. Confirm with the user first.
95
+ - `axom__task__list_artifacts({ taskId, kind?, status?, limit?, offset? })` - lists one page (at most 50) of a task's artifacts (insights, decisions, specs, plans), newest first, without content; `summary` is a 100-character preview. Continue with `offset: nextOffset` until `nextOffset` is null.
96
+ - `axom__task__get_artifact({ artifactId, offset?, length? })` - reads one artifact; long content comes in windows of at most 12000 characters, continue from `nextContentOffset`.
97
+ - `axom__task__search_artifacts({ query, taskId?, projectId?, scope?, limit? })` - searches one task's artifacts (`scope: task`) or every task in a project (`scope: project`); without `scope`, passing only `projectId` searches the project, otherwise the task.
98
+ - `axom__task__create_artifact({ taskId, kind, title, summary, content, status? })` - records an artifact; a `final` `plan` moves a `brainstorming` task to `planned`.
99
+ - `axom__task__update_artifact({ artifactId, kind?, title?, summary?, content?, status? })` - changes only the fields you pass.
100
+ - `axom__task__delete_artifact({ artifactId })` - deletes an artifact; the task's status does not change. Confirm with the user first.
101
+ - `axom__task__import_artifact({ taskId, path, kind, title, summary, status? })` - imports a Markdown file from the task's worktree (`path` is relative to it); importing the same path again updates the same artifact.
102
+ - `axom__task__list_agent_members({ taskId })` - lists the task's live agent team.
103
+ - `axom__task__execute_plan({ taskId })` - starts a `planned` task (`planned` becomes `in_progress`).
104
+
105
+ ## Your account
106
+
107
+ Requires the `setting_user` scope. These tools only ever act on the authenticated user. Passwords, sessions, and access tokens are deliberately not available over MCP; manage them in Settings → Security.
108
+
109
+ - `axom__setting_user__get_profile()` - gets the calling user's profile.
110
+ - `axom__setting_user__update_profile({ displayName?, email? })` - replaces the calling user's display name and email; omitted or null fields are cleared.
111
+ - `axom__setting_user__list_memories({ limit?, offset? })` - lists the calling user's memory facts (deleted ones excluded), newest first; `limit` defaults to 50.
112
+ - `axom__setting_user__delete_memory({ factId })` - deletes one of the calling user's memory facts; another user's fact id answers not-found.
113
+ - `axom__setting_user__list_workstations()` - lists the calling user's personal workstations and their status.
114
+
77
115
  ## Guide
78
116
 
79
117
  Axomwork ships an AI-first manual. Call `axom__guide__load` with no arguments for the table of
@@ -5,7 +5,7 @@ description: "Develop Axomwork application definitions with independently callab
5
5
 
6
6
  # Axomwork Definition
7
7
 
8
- Use this skill to edit application definitions with the canonical `axom__definition__*` MCP tools. These tools require an ADMIN token. Check `tools/list` for the specific tool before calling it.
8
+ Use this skill to edit application definitions with the canonical `axom__app_studio__*` MCP tools. These tools require the `app_studio` scope and an administrator account. Check `tools/list` for the specific tool before calling it.
9
9
 
10
10
  Call each tool directly with camelCase arguments:
11
11
 
@@ -21,49 +21,49 @@ Load guides `agent-integration/operating-patterns/etag-write-workflow.md` and
21
21
 
22
22
  ## Applications
23
23
 
24
- - `axom__definition__list_applications`
25
- - `axom__definition__get_application` — `applicationName`
26
- - `axom__definition__create_application` — `application`, `expectedEtag`
27
- - `axom__definition__update_application` — `applicationName`, `application`, `expectedEtag`
28
- - `axom__definition__delete_application` — `applicationName`, `expectedEtag`
24
+ - `axom__app_studio__list_applications`
25
+ - `axom__app_studio__get_application` — `applicationName`
26
+ - `axom__app_studio__create_application` — `application`, `expectedEtag`
27
+ - `axom__app_studio__update_application` — `applicationName`, `application`, `expectedEtag`
28
+ - `axom__app_studio__delete_application` — `applicationName`, `expectedEtag`
29
29
 
30
30
  ## Models
31
31
 
32
- - `axom__definition__list_models` — `applicationName`
33
- - `axom__definition__get_model` — `applicationName`, `modelName`
34
- - `axom__definition__create_model` — `applicationName`, `model`, `expectedEtag`
35
- - `axom__definition__update_model` — `applicationName`, `modelName`, `model`, `expectedEtag`
36
- - `axom__definition__delete_model` — `applicationName`, `modelName`, `expectedEtag`
32
+ - `axom__app_studio__list_models` — `applicationName`
33
+ - `axom__app_studio__get_model` — `applicationName`, `modelName`
34
+ - `axom__app_studio__create_model` — `applicationName`, `model`, `expectedEtag`
35
+ - `axom__app_studio__update_model` — `applicationName`, `modelName`, `model`, `expectedEtag`
36
+ - `axom__app_studio__delete_model` — `applicationName`, `modelName`, `expectedEtag`
37
37
 
38
38
  ## Attributes and operations
39
39
 
40
- - `axom__definition__get_attribute` — `applicationName`, `modelName`, `attributeName`
41
- - `axom__definition__create_attribute` — `applicationName`, `modelName`, `attribute`, `expectedEtag`
42
- - `axom__definition__update_attribute` — `applicationName`, `modelName`, `attributeName`, `attribute`, `expectedEtag`
43
- - `axom__definition__delete_attribute` — `applicationName`, `modelName`, `attributeName`, `expectedEtag`
44
- - `axom__definition__get_operation` — `applicationName`, `modelName`, `operationName`
45
- - `axom__definition__create_operation` — `applicationName`, `modelName`, `operation`, `expectedEtag`
46
- - `axom__definition__update_operation` — `applicationName`, `modelName`, `operationName`, `operation`, `expectedEtag`
47
- - `axom__definition__delete_operation` — `applicationName`, `modelName`, `operationName`, `expectedEtag`
48
- - `axom__definition__get_operation_body` — `applicationName`, `modelName`, `operationName`
49
- - `axom__definition__update_operation_body` — `applicationName`, `modelName`, `operationName`, `content`, `expectedBodyEtag`
40
+ - `axom__app_studio__get_attribute` — `applicationName`, `modelName`, `attributeName`
41
+ - `axom__app_studio__create_attribute` — `applicationName`, `modelName`, `attribute`, `expectedEtag`
42
+ - `axom__app_studio__update_attribute` — `applicationName`, `modelName`, `attributeName`, `attribute`, `expectedEtag`
43
+ - `axom__app_studio__delete_attribute` — `applicationName`, `modelName`, `attributeName`, `expectedEtag`
44
+ - `axom__app_studio__get_operation` — `applicationName`, `modelName`, `operationName`
45
+ - `axom__app_studio__create_operation` — `applicationName`, `modelName`, `operation`, `expectedEtag`
46
+ - `axom__app_studio__update_operation` — `applicationName`, `modelName`, `operationName`, `operation`, `expectedEtag`
47
+ - `axom__app_studio__delete_operation` — `applicationName`, `modelName`, `operationName`, `expectedEtag`
48
+ - `axom__app_studio__get_operation_body` — `applicationName`, `modelName`, `operationName`
49
+ - `axom__app_studio__update_operation_body` — `applicationName`, `modelName`, `operationName`, `content`, `expectedBodyEtag`
50
50
 
51
51
  ## Triggers and lifecycle
52
52
 
53
- - `axom__definition__update_triggers` — `applicationName`, `modelName`, `triggers`, `expectedEtag`
54
- - `axom__definition__get_lifecycle` — `applicationName`, `modelName`
55
- - `axom__definition__update_lifecycle` — `applicationName`, `modelName`, `lifecycle`, `expectedEtag`
56
- - `axom__definition__delete_lifecycle` — `applicationName`, `modelName`, `expectedEtag`
53
+ - `axom__app_studio__update_triggers` — `applicationName`, `modelName`, `triggers`, `expectedEtag`
54
+ - `axom__app_studio__get_lifecycle` — `applicationName`, `modelName`
55
+ - `axom__app_studio__update_lifecycle` — `applicationName`, `modelName`, `lifecycle`, `expectedEtag`
56
+ - `axom__app_studio__delete_lifecycle` — `applicationName`, `modelName`, `expectedEtag`
57
57
 
58
58
  ## Workflows
59
59
 
60
- - `axom__definition__list_workflows` — `applicationName`, `modelName`
61
- - `axom__definition__get_workflow` — `applicationName`, `modelName`, `workflowName`
62
- - `axom__definition__create_workflow` — `applicationName`, `modelName`, `workflow`, `expectedEtag`
63
- - `axom__definition__update_workflow` — `applicationName`, `modelName`, `workflowName`, `workflow`, `expectedEtag`
64
- - `axom__definition__delete_workflow` — `applicationName`, `modelName`, `workflowName`, `expectedEtag`
65
- - `axom__definition__get_workflow_body` — `applicationName`, `modelName`, `workflowName`
66
- - `axom__definition__update_workflow_body` — `applicationName`, `modelName`, `workflowName`, `content`, `expectedBodyEtag`
60
+ - `axom__app_studio__list_workflows` — `applicationName`, `modelName`
61
+ - `axom__app_studio__get_workflow` — `applicationName`, `modelName`, `workflowName`
62
+ - `axom__app_studio__create_workflow` — `applicationName`, `modelName`, `workflow`, `expectedEtag`
63
+ - `axom__app_studio__update_workflow` — `applicationName`, `modelName`, `workflowName`, `workflow`, `expectedEtag`
64
+ - `axom__app_studio__delete_workflow` — `applicationName`, `modelName`, `workflowName`, `expectedEtag`
65
+ - `axom__app_studio__get_workflow_body` — `applicationName`, `modelName`, `workflowName`
66
+ - `axom__app_studio__update_workflow_body` — `applicationName`, `modelName`, `workflowName`, `content`, `expectedBodyEtag`
67
67
 
68
68
  ## Guide
69
69
 
@@ -5,7 +5,7 @@ description: "Operate Axomwork platform configuration with independently callabl
5
5
 
6
6
  # Axomwork Platform
7
7
 
8
- Use the canonical `axom__platform__*` MCP tools (platform skills, AI configuration, cowork agents, data sources, and platform settings). These tools require an ADMIN token. Check `tools/list` for the specific tool before calling it.
8
+ Use the canonical `axom__setting_platform__*` MCP tools (platform skills, AI configuration, cowork agents, data sources, and platform settings). These tools require the `setting_platform` scope and an administrator account. Check `tools/list` for the specific tool before calling it.
9
9
 
10
10
  Call each tool directly with camelCase arguments:
11
11
 
@@ -21,57 +21,57 @@ For the full concurrency workflow, load guide
21
21
 
22
22
  ## Platform skills
23
23
 
24
- - `axom__platform__list_skills`
25
- - `axom__platform__get_skill`
26
- - `axom__platform__create_skill`
27
- - `axom__platform__update_skill`
28
- - `axom__platform__delete_skill`
24
+ - `axom__setting_platform__list_skills`
25
+ - `axom__setting_platform__get_skill`
26
+ - `axom__setting_platform__create_skill`
27
+ - `axom__setting_platform__update_skill`
28
+ - `axom__setting_platform__delete_skill`
29
29
 
30
30
  ## AI configuration
31
31
 
32
- - `axom__platform__get_ai_config`
33
- - `axom__platform__upsert_ai_vendor`
34
- - `axom__platform__delete_ai_vendor`
35
- - `axom__platform__upsert_ai_profile`
36
- - `axom__platform__delete_ai_profile`
37
- - `axom__platform__update_ai_memory`
32
+ - `axom__setting_platform__get_ai_config`
33
+ - `axom__setting_platform__upsert_ai_provider`
34
+ - `axom__setting_platform__delete_ai_provider`
35
+ - `axom__setting_platform__upsert_ai_profile`
36
+ - `axom__setting_platform__delete_ai_profile`
37
+ - `axom__setting_platform__update_ai_memory`
38
38
 
39
39
  ## Cowork agents
40
40
 
41
- - `axom__platform__list_cowork_agents`
42
- - `axom__platform__get_cowork_agent`
43
- - `axom__platform__create_cowork_agent`
44
- - `axom__platform__update_cowork_agent`
45
- - `axom__platform__delete_cowork_agent`
46
- - `axom__platform__get_cowork_agent_prompt`
47
- - `axom__platform__update_cowork_agent_prompt`
48
- - `axom__platform__list_cowork_agent_skills`
49
- - `axom__platform__get_cowork_agent_skill`
50
- - `axom__platform__create_cowork_agent_skill`
51
- - `axom__platform__update_cowork_agent_skill`
52
- - `axom__platform__delete_cowork_agent_skill`
53
- - `axom__platform__list_cowork_agent_workflows`
54
- - `axom__platform__get_cowork_agent_workflow`
55
- - `axom__platform__create_cowork_agent_workflow`
56
- - `axom__platform__update_cowork_agent_workflow`
57
- - `axom__platform__delete_cowork_agent_workflow`
58
- - `axom__platform__get_cowork_agent_workflow_body`
59
- - `axom__platform__update_cowork_agent_workflow_body`
41
+ - `axom__setting_platform__list_cowork_agents`
42
+ - `axom__setting_platform__get_cowork_agent`
43
+ - `axom__setting_platform__create_cowork_agent`
44
+ - `axom__setting_platform__update_cowork_agent`
45
+ - `axom__setting_platform__delete_cowork_agent`
46
+ - `axom__setting_platform__get_cowork_agent_prompt`
47
+ - `axom__setting_platform__update_cowork_agent_prompt`
48
+ - `axom__setting_platform__list_cowork_agent_skills`
49
+ - `axom__setting_platform__get_cowork_agent_skill`
50
+ - `axom__setting_platform__create_cowork_agent_skill`
51
+ - `axom__setting_platform__update_cowork_agent_skill`
52
+ - `axom__setting_platform__delete_cowork_agent_skill`
53
+ - `axom__setting_platform__list_cowork_agent_workflows`
54
+ - `axom__setting_platform__get_cowork_agent_workflow`
55
+ - `axom__setting_platform__create_cowork_agent_workflow`
56
+ - `axom__setting_platform__update_cowork_agent_workflow`
57
+ - `axom__setting_platform__delete_cowork_agent_workflow`
58
+ - `axom__setting_platform__get_cowork_agent_workflow_body`
59
+ - `axom__setting_platform__update_cowork_agent_workflow_body`
60
60
 
61
61
  ## Datasources and platform settings
62
62
 
63
- - `axom__platform__list_data_sources`
64
- - `axom__platform__get_data_source`
65
- - `axom__platform__create_data_source`
66
- - `axom__platform__update_data_source`
67
- - `axom__platform__delete_data_source`
68
- - `axom__platform__get_settings`
69
- - `axom__platform__update_settings`
63
+ - `axom__setting_platform__list_data_sources`
64
+ - `axom__setting_platform__get_data_source`
65
+ - `axom__setting_platform__create_data_source`
66
+ - `axom__setting_platform__update_data_source`
67
+ - `axom__setting_platform__delete_data_source`
68
+ - `axom__setting_platform__get_settings`
69
+ - `axom__setting_platform__update_settings`
70
70
 
71
71
  ## Guide
72
72
 
73
73
  Before editing, load the matching guide with `axom__guide__load`:
74
- `platform-operations/ai-vendors-and-profiles.md`,
74
+ `platform-operations/ai-providers-and-profiles.md`,
75
75
  `platform-operations/cowork-agent-configuration.md`,
76
76
  `platform-operations/datasource-configuration.md`,
77
77
  `platform-operations/service-configuration.md`, or