@rubytech/create-maxy-code 0.1.32 → 0.1.34

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 (445) hide show
  1. package/dist/__tests__/account-id-env.test.js +1 -1
  2. package/dist/__tests__/apt-resolve.test.js +7 -7
  3. package/dist/__tests__/brew-install.test.js +1 -1
  4. package/dist/__tests__/brew-resolve.test.js +1 -1
  5. package/dist/__tests__/cdp-port-no-silent-fallback.test.js +4 -4
  6. package/dist/__tests__/init-logging.test.js +1 -1
  7. package/dist/__tests__/launchd-plist.test.js +1 -1
  8. package/dist/__tests__/macos-version.test.js +1 -1
  9. package/dist/__tests__/peer-brand-detect.test.js +1 -1
  10. package/dist/__tests__/platform-detect.test.js +2 -2
  11. package/dist/__tests__/port-canonicalisation.test.js +1 -1
  12. package/dist/__tests__/preflight-port-classifier.test.js +6 -6
  13. package/dist/__tests__/samba-provision.test.js +1 -1
  14. package/dist/__tests__/snap-chromium.test.js +1 -1
  15. package/dist/apt-resolve.js +5 -5
  16. package/dist/brew-install.js +1 -1
  17. package/dist/brew-resolve.js +3 -3
  18. package/dist/index.js +146 -122
  19. package/dist/init-logging.js +1 -1
  20. package/dist/launchd-plist.js +1 -1
  21. package/dist/macos-version.js +2 -2
  22. package/dist/peer-brand-detect.js +1 -1
  23. package/dist/pinned-binaries.js +1 -1
  24. package/dist/platform-detect.js +1 -1
  25. package/dist/port-resolution.js +2 -2
  26. package/dist/preflight-port-classifier.js +3 -3
  27. package/dist/samba-provision.js +1 -1
  28. package/dist/snap-chromium.js +3 -3
  29. package/dist/uninstall.js +28 -28
  30. package/package.json +1 -1
  31. package/payload/docs/desktop-code-controls.md +63 -0
  32. package/payload/platform/lib/account-enumeration/dist/__tests__/validate-env.test.js +1 -1
  33. package/payload/platform/lib/account-enumeration/dist/__tests__/validate-env.test.js.map +1 -1
  34. package/payload/platform/lib/account-enumeration/dist/index.d.ts +1 -1
  35. package/payload/platform/lib/account-enumeration/src/__tests__/validate-env.test.ts +1 -1
  36. package/payload/platform/lib/account-enumeration/src/index.ts +1 -1
  37. package/payload/platform/lib/admins-write/dist/index.js +3 -3
  38. package/payload/platform/lib/admins-write/dist/index.js.map +1 -1
  39. package/payload/platform/lib/admins-write/src/index.ts +4 -4
  40. package/payload/platform/lib/entitlement/dist/index.d.ts +1 -1
  41. package/payload/platform/lib/entitlement/dist/index.js +2 -2
  42. package/payload/platform/lib/entitlement/dist/index.js.map +1 -1
  43. package/payload/platform/lib/graph-mcp/dist/__tests__/warnings-envelope.test.js +1 -1
  44. package/payload/platform/lib/graph-mcp/dist/__tests__/warnings-envelope.test.js.map +1 -1
  45. package/payload/platform/lib/graph-mcp/dist/cypher-rewrite-stamp.d.ts +3 -3
  46. package/payload/platform/lib/graph-mcp/dist/cypher-rewrite-stamp.js +3 -3
  47. package/payload/platform/lib/graph-mcp/dist/cypher-shim-read.d.ts +1 -1
  48. package/payload/platform/lib/graph-mcp/dist/cypher-shim-read.js +1 -1
  49. package/payload/platform/lib/graph-mcp/dist/cypher-shim-write.d.ts +1 -1
  50. package/payload/platform/lib/graph-mcp/dist/cypher-shim-write.js +1 -1
  51. package/payload/platform/lib/graph-mcp/dist/cypher-validate.d.ts +1 -1
  52. package/payload/platform/lib/graph-mcp/dist/cypher-validate.js +1 -1
  53. package/payload/platform/lib/graph-mcp/dist/index.d.ts +1 -1
  54. package/payload/platform/lib/graph-mcp/dist/index.js +24 -24
  55. package/payload/platform/lib/graph-mcp/dist/index.js.map +1 -1
  56. package/payload/platform/lib/graph-mcp/dist/schema-cache.d.ts +1 -1
  57. package/payload/platform/lib/graph-mcp/dist/schema-cache.js +2 -2
  58. package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.d.ts +3 -3
  59. package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.js +3 -3
  60. package/payload/platform/lib/graph-mcp/src/__tests__/warnings-envelope.test.ts +1 -1
  61. package/payload/platform/lib/graph-mcp/src/cypher-rewrite-stamp.ts +3 -3
  62. package/payload/platform/lib/graph-mcp/src/cypher-shim-read.ts +1 -1
  63. package/payload/platform/lib/graph-mcp/src/cypher-shim-write.ts +1 -1
  64. package/payload/platform/lib/graph-mcp/src/cypher-validate.ts +1 -1
  65. package/payload/platform/lib/graph-mcp/src/index.ts +29 -29
  66. package/payload/platform/lib/graph-mcp/src/schema-cache.ts +2 -2
  67. package/payload/platform/lib/graph-mcp/src/schema-cypher-parser.ts +3 -3
  68. package/payload/platform/lib/graph-search/dist/index.d.ts +12 -12
  69. package/payload/platform/lib/graph-search/dist/index.js +11 -11
  70. package/payload/platform/lib/graph-search/dist/index.js.map +1 -1
  71. package/payload/platform/lib/graph-search/src/__tests__/bm25-label-gate.test.ts +2 -2
  72. package/payload/platform/lib/graph-search/src/__tests__/bm25-strong-bypass-threshold.test.ts +2 -2
  73. package/payload/platform/lib/graph-search/src/__tests__/brochure-threshold.test.ts +3 -3
  74. package/payload/platform/lib/graph-search/src/__tests__/expand-batch.test.ts +2 -2
  75. package/payload/platform/lib/graph-search/src/__tests__/fulltext-coverage.test.ts +6 -6
  76. package/payload/platform/lib/graph-search/src/__tests__/hybrid.test.ts +5 -5
  77. package/payload/platform/lib/graph-search/src/__tests__/vector-threshold.test.ts +2 -2
  78. package/payload/platform/lib/graph-search/src/index.ts +18 -18
  79. package/payload/platform/lib/graph-trash/dist/index.d.ts +3 -3
  80. package/payload/platform/lib/graph-trash/dist/index.js +3 -3
  81. package/payload/platform/lib/graph-trash/src/index.ts +3 -3
  82. package/payload/platform/lib/graph-write/dist/__tests__/action-provenance-gate.test.js +4 -4
  83. package/payload/platform/lib/graph-write/dist/__tests__/action-provenance-gate.test.js.map +1 -1
  84. package/payload/platform/lib/graph-write/dist/audit.d.ts +2 -2
  85. package/payload/platform/lib/graph-write/dist/audit.js +2 -2
  86. package/payload/platform/lib/graph-write/dist/conversation-provenance.js +1 -1
  87. package/payload/platform/lib/graph-write/dist/conversation-provenance.js.map +1 -1
  88. package/payload/platform/lib/graph-write/dist/index.d.ts +5 -5
  89. package/payload/platform/lib/graph-write/dist/index.js +12 -12
  90. package/payload/platform/lib/graph-write/dist/index.js.map +1 -1
  91. package/payload/platform/lib/graph-write/src/__tests__/action-provenance-gate.test.ts +4 -4
  92. package/payload/platform/lib/graph-write/src/audit.ts +2 -2
  93. package/payload/platform/lib/graph-write/src/conversation-provenance.ts +1 -1
  94. package/payload/platform/lib/graph-write/src/index.ts +13 -13
  95. package/payload/platform/lib/mcp-eager/dist/index.d.ts +2 -2
  96. package/payload/platform/lib/mcp-eager/dist/index.js +2 -2
  97. package/payload/platform/lib/mcp-eager/src/index.ts +2 -2
  98. package/payload/platform/lib/mcp-spawn-tee/dist/index.d.ts +2 -2
  99. package/payload/platform/lib/mcp-spawn-tee/dist/index.js +2 -2
  100. package/payload/platform/lib/mcp-spawn-tee/src/index.ts +2 -2
  101. package/payload/platform/lib/mcp-stderr-tee/dist/index.d.ts +1 -1
  102. package/payload/platform/lib/mcp-stderr-tee/dist/index.js +4 -4
  103. package/payload/platform/lib/mcp-stderr-tee/dist/index.js.map +1 -1
  104. package/payload/platform/lib/mcp-stderr-tee/src/index.ts +4 -4
  105. package/payload/platform/lib/oauth-llm/dist/index.d.ts +4 -4
  106. package/payload/platform/lib/oauth-llm/dist/index.js +3 -3
  107. package/payload/platform/lib/oauth-llm/dist/index.js.map +1 -1
  108. package/payload/platform/lib/oauth-llm/src/index.ts +6 -6
  109. package/payload/platform/lib/persistent-components/dist/index.d.ts +1 -1
  110. package/payload/platform/lib/persistent-components/dist/index.js +1 -1
  111. package/payload/platform/lib/persistent-components/src/index.ts +1 -1
  112. package/payload/platform/lib/task-secrets/dist/index.js +1 -1
  113. package/payload/platform/lib/task-secrets/dist/index.js.map +1 -1
  114. package/payload/platform/lib/task-secrets/src/__tests__/redact-secrets.test.ts +1 -1
  115. package/payload/platform/lib/task-secrets/src/index.ts +1 -1
  116. package/payload/platform/neo4j/edge-annotations.json +9 -9
  117. package/payload/platform/neo4j/schema.cypher +32 -33
  118. package/payload/platform/package.json +2 -2
  119. package/payload/platform/plugins/admin/PLUGIN.md +0 -2
  120. package/payload/platform/plugins/admin/hooks/__tests__/archive-ingest-surface-gate.test.sh +4 -4
  121. package/payload/platform/plugins/admin/hooks/__tests__/playwright-file-guard.test.sh +1 -1
  122. package/payload/platform/plugins/admin/hooks/__tests__/pre-tool-use-base64-guard.test.sh +1 -1
  123. package/payload/platform/plugins/admin/hooks/archive-ingest-surface-gate.sh +13 -13
  124. package/payload/platform/plugins/admin/hooks/pre-tool-use.sh +7 -7
  125. package/payload/platform/plugins/admin/mcp/dist/__tests__/plugin-read-skill-resolution.test.js +2 -2
  126. package/payload/platform/plugins/admin/mcp/dist/__tests__/plugin-read-skill-resolution.test.js.map +1 -1
  127. package/payload/platform/plugins/admin/mcp/dist/__tests__/public-hostname.test.js +1 -1
  128. package/payload/platform/plugins/admin/mcp/dist/__tests__/public-hostname.test.js.map +1 -1
  129. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load-required-inputs.test.js +2 -2
  130. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load-required-inputs.test.js.map +1 -1
  131. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load.test.js +1 -1
  132. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load.test.js.map +1 -1
  133. package/payload/platform/plugins/admin/mcp/dist/index.js +38 -65
  134. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  135. package/payload/platform/plugins/admin/mcp/dist/lib/neo4j.js +2 -2
  136. package/payload/platform/plugins/admin/mcp/dist/lib/neo4j.js.map +1 -1
  137. package/payload/platform/plugins/admin/mcp/dist/lib/public-hostname.js +2 -2
  138. package/payload/platform/plugins/admin/mcp/dist/lib/public-hostname.js.map +1 -1
  139. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.js +5 -5
  140. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.js.map +1 -1
  141. package/payload/platform/plugins/admin/skills/plugin-management/SKILL.md +1 -1
  142. package/payload/platform/plugins/admin/skills/public-agent-manager/SKILL.md +0 -1
  143. package/payload/platform/plugins/admin/skills/publish-site/SKILL.md +1 -1
  144. package/payload/platform/plugins/admin/skills/unzip-attachment/SKILL.md +2 -2
  145. package/payload/platform/plugins/cloudflare/mcp/dist/index.js +1 -1
  146. package/payload/platform/plugins/cloudflare/mcp/dist/index.js.map +1 -1
  147. package/payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.d.ts +1 -1
  148. package/payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.js +6 -6
  149. package/payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.js.map +1 -1
  150. package/payload/platform/plugins/cloudflare/mcp/dist/lib/setup-orchestrator.d.ts +2 -2
  151. package/payload/platform/plugins/cloudflare/mcp/dist/lib/setup-orchestrator.js +2 -2
  152. package/payload/platform/plugins/cloudflare/references/dashboard-guide.md +1 -1
  153. package/payload/platform/plugins/cloudflare/references/manual-setup.md +4 -4
  154. package/payload/platform/plugins/cloudflare/scripts/__tests__/tunnel-ingress.test.ts +1 -1
  155. package/payload/platform/plugins/cloudflare/scripts/_stream-log.sh +8 -8
  156. package/payload/platform/plugins/cloudflare/scripts/list-cf-domains.sh +2 -2
  157. package/payload/platform/plugins/cloudflare/scripts/list-cf-domains.ts +16 -16
  158. package/payload/platform/plugins/cloudflare/scripts/reset-tunnel.sh +1 -1
  159. package/payload/platform/plugins/cloudflare/scripts/setup-tunnel.sh +28 -28
  160. package/payload/platform/plugins/cloudflare/scripts/tunnel-ingress.ts +5 -5
  161. package/payload/platform/plugins/cloudflare/skills/setup-tunnel/SKILL.md +3 -3
  162. package/payload/platform/plugins/contacts/mcp/dist/lib/neo4j.js +2 -2
  163. package/payload/platform/plugins/contacts/mcp/dist/lib/neo4j.js.map +1 -1
  164. package/payload/platform/plugins/contacts/mcp/dist/lib/resolve-person.d.ts +1 -1
  165. package/payload/platform/plugins/contacts/mcp/dist/lib/resolve-person.js +1 -1
  166. package/payload/platform/plugins/contacts/mcp/dist/tools/contact-create.js +2 -2
  167. package/payload/platform/plugins/contacts/mcp/dist/tools/contact-create.js.map +1 -1
  168. package/payload/platform/plugins/contacts/mcp/dist/tools/group-create.js +1 -1
  169. package/payload/platform/plugins/contacts/mcp/dist/tools/group-create.js.map +1 -1
  170. package/payload/platform/plugins/docs/references/deployment.md +30 -1
  171. package/payload/platform/plugins/docs/references/plugins-guide.md +2 -5
  172. package/payload/platform/plugins/docs/references/troubleshooting.md +3 -3
  173. package/payload/platform/plugins/email/mcp/dist/index.js +1 -1
  174. package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
  175. package/payload/platform/plugins/email/mcp/dist/lib/claude-bridge.js +2 -2
  176. package/payload/platform/plugins/email/mcp/dist/lib/claude-bridge.js.map +1 -1
  177. package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts +1 -1
  178. package/payload/platform/plugins/email/mcp/dist/lib/credentials.js +1 -1
  179. package/payload/platform/plugins/email/mcp/dist/lib/neo4j.js +2 -2
  180. package/payload/platform/plugins/email/mcp/dist/lib/neo4j.js.map +1 -1
  181. package/payload/platform/plugins/email/mcp/dist/lib/screening.d.ts +1 -1
  182. package/payload/platform/plugins/email/mcp/dist/lib/screening.js +1 -1
  183. package/payload/platform/plugins/email/mcp/dist/scripts/email-auto-respond.js +6 -6
  184. package/payload/platform/plugins/email/mcp/dist/scripts/email-auto-respond.js.map +1 -1
  185. package/payload/platform/plugins/email/mcp/dist/scripts/email-fetch.d.ts +1 -1
  186. package/payload/platform/plugins/email/mcp/dist/scripts/email-fetch.js +2 -2
  187. package/payload/platform/plugins/email/mcp/dist/scripts/email-fetch.js.map +1 -1
  188. package/payload/platform/plugins/email/references/email-reference.md +2 -2
  189. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js +3 -3
  190. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js.map +1 -1
  191. package/payload/platform/plugins/loop/mcp/src/lib/neo4j.ts +3 -3
  192. package/payload/platform/plugins/memory/bin/conversation-archive-ingest.mjs +24 -24
  193. package/payload/platform/plugins/memory/bin/conversation-archive-ingest.sh +6 -6
  194. package/payload/platform/plugins/memory/mcp/dist/index.js +8 -8
  195. package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
  196. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/llm-classifier.test.js +33 -33
  197. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/llm-classifier.test.js.map +1 -1
  198. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.js +12 -12
  199. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.js.map +1 -1
  200. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.js +3 -3
  201. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.js.map +1 -1
  202. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.js +2 -2
  203. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.js.map +1 -1
  204. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/whatsapp-text.d.ts.map +1 -1
  205. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/whatsapp-text.js +1 -1
  206. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/whatsapp-text.js.map +1 -1
  207. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.d.ts.map +1 -1
  208. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.js +1 -2
  209. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.js.map +1 -1
  210. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/sender-bind.js +2 -2
  211. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/sender-bind.js.map +1 -1
  212. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/to-turn-text.js +1 -1
  213. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/to-turn-text.js.map +1 -1
  214. package/payload/platform/plugins/memory/mcp/dist/lib/document-chunker.d.ts +2 -2
  215. package/payload/platform/plugins/memory/mcp/dist/lib/document-chunker.js +2 -2
  216. package/payload/platform/plugins/memory/mcp/dist/lib/document-hierarchy.js +6 -6
  217. package/payload/platform/plugins/memory/mcp/dist/lib/document-hierarchy.js.map +1 -1
  218. package/payload/platform/plugins/memory/mcp/dist/lib/graph-prune.d.ts +1 -1
  219. package/payload/platform/plugins/memory/mcp/dist/lib/graph-prune.js +1 -1
  220. package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.d.ts +2 -2
  221. package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.js +7 -7
  222. package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.js.map +1 -1
  223. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.d.ts +2 -2
  224. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.js +2 -2
  225. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.d.ts +9 -9
  226. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.d.ts.map +1 -1
  227. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.js +25 -25
  228. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.js.map +1 -1
  229. package/payload/platform/plugins/memory/mcp/dist/lib/llm-ranker.d.ts +1 -1
  230. package/payload/platform/plugins/memory/mcp/dist/lib/llm-ranker.js +5 -5
  231. package/payload/platform/plugins/memory/mcp/dist/lib/llm-ranker.js.map +1 -1
  232. package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.js +2 -2
  233. package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.js.map +1 -1
  234. package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.d.ts +4 -4
  235. package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.js +3 -3
  236. package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.js.map +1 -1
  237. package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.d.ts +3 -3
  238. package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.js +5 -5
  239. package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.js.map +1 -1
  240. package/payload/platform/plugins/memory/mcp/dist/lib/uuid.js +1 -1
  241. package/payload/platform/plugins/memory/mcp/dist/lib/uuid.js.map +1 -1
  242. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.js +5 -5
  243. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.js.map +1 -1
  244. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js +1 -1
  245. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js.map +1 -1
  246. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-source-agnosticism.test.js +2 -2
  247. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-source-agnosticism.test.js.map +1 -1
  248. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-whatsapp-text.test.js +4 -4
  249. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-whatsapp-text.test.js.map +1 -1
  250. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write.test.js +6 -6
  251. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write.test.js.map +1 -1
  252. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest.test.js +7 -7
  253. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest.test.js.map +1 -1
  254. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-not-applicable.test.js +2 -2
  255. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-not-applicable.test.js.map +1 -1
  256. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-personfields-open.test.js +3 -3
  257. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-personfields-open.test.js.map +1 -1
  258. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts +1 -1
  259. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js +3 -3
  260. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js.map +1 -1
  261. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.d.ts +1 -1
  262. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.js +1 -1
  263. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js +2 -2
  264. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js.map +1 -1
  265. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.d.ts +1 -1
  266. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.js +1 -1
  267. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.d.ts +2 -2
  268. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js +1 -1
  269. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js.map +1 -1
  270. package/payload/platform/plugins/memory/mcp/dist/tools/memory-find-candidates.d.ts +3 -3
  271. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.js +2 -2
  272. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.js.map +1 -1
  273. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.d.ts +9 -9
  274. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.d.ts.map +1 -1
  275. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js +10 -11
  276. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js.map +1 -1
  277. package/payload/platform/plugins/memory/mcp/dist/tools/memory-list-attachments.js +1 -1
  278. package/payload/platform/plugins/memory/mcp/dist/tools/memory-list-attachments.js.map +1 -1
  279. package/payload/platform/plugins/memory/mcp/dist/tools/memory-search.js +1 -1
  280. package/payload/platform/plugins/memory/mcp/dist/tools/memory-search.js.map +1 -1
  281. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js +1 -1
  282. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js.map +1 -1
  283. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.d.ts +1 -1
  284. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js +3 -3
  285. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js.map +1 -1
  286. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.js +9 -9
  287. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.js.map +1 -1
  288. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.d.ts +5 -5
  289. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js +9 -9
  290. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js.map +1 -1
  291. package/payload/platform/plugins/memory/mcp/scripts/boot-smoke.sh +1 -1
  292. package/payload/platform/plugins/memory/mcp/scripts/graph/fixture.cypher +1 -1
  293. package/payload/platform/plugins/memory/mcp/vitest.config.ts +2 -2
  294. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.js +1 -1
  295. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.js.map +1 -1
  296. package/payload/platform/plugins/outlook/mcp/scripts/verify-doc-impl.sh +1 -1
  297. package/payload/platform/plugins/scheduling/PLUGIN.md +1 -1
  298. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/time-resolve-description.test.js +1 -1
  299. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/time-resolve-description.test.js.map +1 -1
  300. package/payload/platform/plugins/scheduling/mcp/dist/index.js +1 -1
  301. package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
  302. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/getUserTimezone.test.js +3 -3
  303. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/getUserTimezone.test.js.map +1 -1
  304. package/payload/platform/plugins/scheduling/mcp/dist/lib/neo4j.d.ts +2 -2
  305. package/payload/platform/plugins/scheduling/mcp/dist/lib/neo4j.js +5 -5
  306. package/payload/platform/plugins/scheduling/mcp/dist/lib/neo4j.js.map +1 -1
  307. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.d.ts +1 -1
  308. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +6 -6
  309. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  310. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +1 -1
  311. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
  312. package/payload/platform/plugins/tasks/mcp/dist/index.js +1 -1
  313. package/payload/platform/plugins/tasks/mcp/dist/index.js.map +1 -1
  314. package/payload/platform/plugins/tasks/mcp/dist/lib/neo4j.js +2 -2
  315. package/payload/platform/plugins/tasks/mcp/dist/lib/neo4j.js.map +1 -1
  316. package/payload/platform/plugins/tasks/mcp/dist/tools/project-create.js +2 -2
  317. package/payload/platform/plugins/tasks/mcp/dist/tools/project-create.js.map +1 -1
  318. package/payload/platform/plugins/tasks/mcp/dist/tools/session-name.d.ts +1 -1
  319. package/payload/platform/plugins/tasks/mcp/dist/tools/session-name.d.ts.map +1 -1
  320. package/payload/platform/plugins/tasks/mcp/dist/tools/task-create.d.ts +5 -5
  321. package/payload/platform/plugins/tasks/mcp/dist/tools/task-create.js +3 -3
  322. package/payload/platform/plugins/tasks/mcp/dist/tools/task-create.js.map +1 -1
  323. package/payload/platform/plugins/tasks/mcp/dist/tools/task-update.d.ts +4 -4
  324. package/payload/platform/plugins/tasks/mcp/dist/tools/task-update.js +2 -2
  325. package/payload/platform/plugins/tasks/mcp/dist/tools/task-update.js.map +1 -1
  326. package/payload/platform/plugins/telegram/mcp/dist/tools/message-history.js +2 -2
  327. package/payload/platform/plugins/telegram/mcp/dist/tools/message-history.js.map +1 -1
  328. package/payload/platform/plugins/waitlist/mcp/dist/lib/neo4j.js +2 -2
  329. package/payload/platform/plugins/waitlist/mcp/dist/lib/neo4j.js.map +1 -1
  330. package/payload/platform/plugins/waitlist/mcp/dist/tools/__tests__/waitlist-persist.test.js +3 -3
  331. package/payload/platform/plugins/waitlist/mcp/dist/tools/__tests__/waitlist-persist.test.js.map +1 -1
  332. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-persist.d.ts +1 -1
  333. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-persist.js +3 -3
  334. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-persist.js.map +1 -1
  335. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-setup.js +5 -5
  336. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-setup.js.map +1 -1
  337. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.d.ts +1 -1
  338. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.js +1 -1
  339. package/payload/platform/plugins/workflows/mcp/dist/index.js +1 -1
  340. package/payload/platform/plugins/workflows/mcp/dist/index.js.map +1 -1
  341. package/payload/platform/plugins/workflows/mcp/dist/lib/active-runs.d.ts +1 -1
  342. package/payload/platform/plugins/workflows/mcp/dist/lib/active-runs.js +1 -1
  343. package/payload/platform/plugins/workflows/mcp/dist/lib/llm-call.d.ts +1 -1
  344. package/payload/platform/plugins/workflows/mcp/dist/lib/neo4j.js +2 -2
  345. package/payload/platform/plugins/workflows/mcp/dist/lib/neo4j.js.map +1 -1
  346. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.js +1 -1
  347. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.js.map +1 -1
  348. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.js +4 -4
  349. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.js.map +1 -1
  350. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.js +1 -1
  351. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.js.map +1 -1
  352. package/payload/platform/plugins/workflows/mcp/test-workflows.sh +2 -2
  353. package/payload/platform/scripts/__tests__/first-token-creates-stream-log.test.sh +1 -1
  354. package/payload/platform/scripts/__tests__/logs-read-prefix.sh +6 -6
  355. package/payload/platform/scripts/admin-conversation-recover.mjs +5 -5
  356. package/payload/platform/scripts/admin-persist-audit.ts +4 -4
  357. package/payload/platform/scripts/check-no-conversation-id-leaks.mjs +1 -1
  358. package/payload/platform/scripts/check-no-direct-clipboard.mjs +1 -1
  359. package/payload/platform/scripts/check-no-task-id-leaks.mjs +2 -2
  360. package/payload/platform/scripts/check-skill-load-coverage.mjs +1 -1
  361. package/payload/platform/scripts/component-knowledgedoc-backfill.ts +1 -1
  362. package/payload/platform/scripts/dedupe-userprofile-ghosts.sh +2 -2
  363. package/payload/platform/scripts/generate-entitlement-fixture.mjs +1 -1
  364. package/payload/platform/scripts/installer-device-verify.sh +6 -6
  365. package/payload/platform/scripts/lib/resolve-account-dir.sh +6 -6
  366. package/payload/platform/scripts/log-adherence-check.sh +3 -3
  367. package/payload/platform/scripts/logs-read.sh +13 -13
  368. package/payload/platform/scripts/logs-read.test.sh +1 -1
  369. package/payload/platform/scripts/migrate-import.sh +4 -4
  370. package/payload/platform/scripts/redact-install-logs.sh +1 -1
  371. package/payload/platform/scripts/seed-neo4j.sh +26 -32
  372. package/payload/platform/scripts/test-laptop-vnc-boot.sh +3 -3
  373. package/payload/platform/scripts/verify-skill-tool-surface.sh +17 -2
  374. package/payload/platform/scripts/vnc.sh +9 -9
  375. package/payload/platform/services/claude-session-manager/dist/config.d.ts +15 -1
  376. package/payload/platform/services/claude-session-manager/dist/config.d.ts.map +1 -1
  377. package/payload/platform/services/claude-session-manager/dist/config.js +43 -2
  378. package/payload/platform/services/claude-session-manager/dist/config.js.map +1 -1
  379. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts +2 -2
  380. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  381. package/payload/platform/services/claude-session-manager/dist/http-server.js +133 -90
  382. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  383. package/payload/platform/services/claude-session-manager/dist/index.js +21 -3
  384. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  385. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.d.ts +2 -2
  386. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.d.ts.map +1 -1
  387. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.js +4 -4
  388. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.js.map +1 -1
  389. package/payload/platform/services/claude-session-manager/dist/jsonl-observer.js +1 -1
  390. package/payload/platform/services/claude-session-manager/dist/jsonl-observer.js.map +1 -1
  391. package/payload/platform/services/claude-session-manager/dist/jsonl-path.js +2 -2
  392. package/payload/platform/services/claude-session-manager/dist/jsonl-path.js.map +1 -1
  393. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +42 -17
  394. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  395. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +116 -48
  396. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  397. package/payload/platform/services/claude-session-manager/dist/public-tool-audit.js +1 -1
  398. package/payload/platform/services/claude-session-manager/dist/public-tool-audit.js.map +1 -1
  399. package/payload/platform/services/claude-session-manager/dist/session-store.d.ts +36 -11
  400. package/payload/platform/services/claude-session-manager/dist/session-store.d.ts.map +1 -1
  401. package/payload/platform/services/claude-session-manager/dist/session-store.js +53 -2
  402. package/payload/platform/services/claude-session-manager/dist/session-store.js.map +1 -1
  403. package/payload/platform/services/claude-session-manager/dist/spawn-rate-limiter.js +2 -2
  404. package/payload/platform/services/claude-session-manager/dist/spawn-rate-limiter.js.map +1 -1
  405. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts +60 -1
  406. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts.map +1 -1
  407. package/payload/platform/services/claude-session-manager/dist/system-prompt.js +169 -11
  408. package/payload/platform/services/claude-session-manager/dist/system-prompt.js.map +1 -1
  409. package/payload/platform/services/claude-session-manager/dist/tool-surface.js +1 -1
  410. package/payload/platform/services/claude-session-manager/dist/tool-surface.js.map +1 -1
  411. package/payload/platform/services/claude-session-manager/dist/types.d.ts +8 -1
  412. package/payload/platform/services/claude-session-manager/dist/types.d.ts.map +1 -1
  413. package/payload/platform/services/claude-session-manager/dist/url-capture.js +1 -1
  414. package/payload/platform/services/claude-session-manager/dist/url-capture.js.map +1 -1
  415. package/payload/platform/templates/agents/admin/IDENTITY.md +14 -0
  416. package/payload/platform/templates/agents/admin/SOUL.md +1 -3
  417. package/payload/platform/templates/specialists/agents/personal-assistant.md +1 -3
  418. package/payload/platform/templates/specialists/agents/project-manager.md +1 -1
  419. package/payload/platform/templates/systemd/edge.service.template +3 -3
  420. package/payload/premium-plugins/real-agent/BUNDLE.md +2 -4
  421. package/payload/premium-plugins/real-agent/plugins/.claude-plugin/marketplace.json +0 -5
  422. package/payload/premium-plugins/real-agent/plugins/loop/mcp/dist/lib/neo4j.js +3 -3
  423. package/payload/premium-plugins/real-agent/plugins/loop/mcp/dist/lib/neo4j.js.map +1 -1
  424. package/payload/premium-plugins/real-agent/plugins/loop/mcp/src/lib/neo4j.ts +3 -3
  425. package/payload/server/{chunk-ZGJ6CUU2.js → chunk-3G6JMV7N.js} +1 -1
  426. package/payload/server/{chunk-KVGTWNKQ.js → chunk-NNHHGQJL.js} +314 -5
  427. package/payload/server/{chunk-RZQMYJVY.js → chunk-QC5LHYPH.js} +3 -3
  428. package/payload/server/{cloudflare-task-tracker-4PKOLE4H.js → cloudflare-task-tracker-NEB3X6O2.js} +2 -2
  429. package/payload/server/maxy-edge.js +2 -2
  430. package/payload/server/public/assets/{admin-Cuu1QdAA.js → admin-CF2ZQvXu.js} +1 -1
  431. package/payload/server/public/index.html +1 -1
  432. package/payload/server/server.js +274 -396
  433. package/payload/platform/plugins/anthropic/.claude-plugin/plugin.json +0 -8
  434. package/payload/platform/plugins/anthropic/PLUGIN.md +0 -40
  435. package/payload/platform/plugins/anthropic/references/console-api.md +0 -186
  436. package/payload/platform/plugins/anthropic/references/setup-guide.md +0 -36
  437. package/payload/platform/plugins/anthropic/skills/get-api-key/SKILL.md +0 -136
  438. package/payload/platform/plugins/estate-onboarding/.claude-plugin/plugin.json +0 -8
  439. package/payload/platform/plugins/estate-onboarding/PLUGIN.md +0 -30
  440. package/payload/platform/plugins/estate-onboarding/skills/bootstrap/SKILL.md +0 -26
  441. package/payload/platform/plugins/estate-onboarding/skills/bootstrap/references/onboarding-flow.md +0 -63
  442. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/.claude-plugin/plugin.json +0 -8
  443. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/PLUGIN.md +0 -30
  444. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/skills/bootstrap/SKILL.md +0 -26
  445. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/skills/bootstrap/references/onboarding-flow.md +0 -63
@@ -1 +1 @@
1
- {"version":3,"file":"skill-load.test.js","sourceRoot":"","sources":["../../src/__tests__/skill-load.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-load.test.js","sourceRoot":"","sources":["../../src/__tests__/skill-load.test.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ import { readFile, writeFile } from "node:fs/promises";
8
8
  import { resolve, join } from "node:path";
9
9
  import { execFileSync } from "node:child_process";
10
10
  import { appendFileSync, cpSync, existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
11
- import { writeKey, validateKey, keyFilePath } from "../../../../lib/anthropic-key/dist/index.js";
12
11
  import { writeAdminEntry, removeAdminFromAccount } from "../../../../lib/admins-write/dist/index.js";
13
12
  import { deviceUrlBlock } from "../../../../lib/device-url/dist/index.js";
14
13
  import { substituteBrandPlaceholders } from "../../../../lib/brand-templating/dist/index.js";
@@ -34,7 +33,7 @@ if (!PLATFORM_PORT) {
34
33
  throw new Error("PLATFORM_PORT environment variable is required — set by getMcpServers() in claude-agent.ts");
35
34
  }
36
35
  // Brand-aware config — reads configDir, productName, and commercialMode from
37
- // brand.json stamped at install time. commercialMode (Task 831) gates the
36
+ // brand.json stamped at install time. commercialMode gates the
38
37
  // entitlement verifier: false (default) preserves personal-mode installs;
39
38
  // true requires a Rubytech-signed entitlement.json or the install runs locked.
40
39
  // No fallback: if brand.json is missing or incomplete, the platform wasn't properly installed.
@@ -51,11 +50,11 @@ function resolveBrandConfig() {
51
50
  if (!brand.productName) {
52
51
  throw new Error(`brand.json at ${brandPath} is missing the productName field`);
53
52
  }
54
- // Task 924 + 959 — brand.json is the single source of truth for the
53
+ // brand.json is the single source of truth for the
55
54
  // four brand-scoped port fields. An admin MCP probe must see the exact
56
55
  // same numbers the rest of the platform binds; silent vncDisplay-derived
57
56
  // fallback was a recurrence-class silent-fallback-masks-root-cause
58
- // violation (Task 959) and is now loud-fail.
57
+ // violation and is now loud-fail.
59
58
  const brandLabel = String(brand.configDir).replace(/^\./, "");
60
59
  if (typeof brand.vncDisplay !== "number") {
61
60
  console.error(`[mcp:admin] error reason=cdp-port-unresolved brand=${brandLabel} path=${brandPath} field=vncDisplay json_keys=${Object.keys(brand).join(",")}`);
@@ -124,11 +123,11 @@ async function readAccountConfig() {
124
123
  }
125
124
  const STAGING_ROOT = resolve(PLATFORM_ROOT, "../premium-plugins");
126
125
  const PLUGINS_DIR = resolve(PLATFORM_ROOT, "plugins");
127
- const CORE_PLUGINS = ["admin", "memory", "docs", "cloudflare", "anthropic"];
126
+ const CORE_PLUGINS = ["admin", "memory", "docs", "cloudflare"];
128
127
  // users.json lives under CONFIG_DIR (persistent) — see paths.ts comment for
129
128
  // the regression that motivated the move. Both platform/ui and this MCP plugin
130
129
  // resolve the same file via brand-aware $HOME/<configDir>, so the device-level
131
- // admin auth store is single-pathed across both processes (Task 904).
130
+ // admin auth store is single-pathed across both processes.
132
131
  const USERS_FILE = resolve(CONFIG_DIR, "users.json");
133
132
  /** Maximum number of admin users allowed per tier. */
134
133
  const MAX_ADMINS_BY_TIER = {
@@ -219,18 +218,18 @@ function checkPort(port, timeoutMs = 1000) {
219
218
  eagerTool(server, "system-status", "Check health of all Maxy platform services: Neo4j, Ollama, Cloudflare tunnel, crontab (Maxy cron entries), VNC, Chrome (CDP), specialist agents, and deployed brand identity.", {}, async () => {
220
219
  const checks = {};
221
220
  try {
222
- // Task 580: NEO4J_URI must be explicit. The outer try/catch surfaces the
221
+ // NEO4J_URI must be explicit. The outer try/catch surfaces the
223
222
  // unset condition as `checks.neo4j = "unreachable: NEO4J_URI unset..."`
224
223
  // so system-status still reports cleanly — the misconfig appears in the
225
224
  // check output instead of taking down the whole tool.
226
225
  const neo4jUri = process.env.NEO4J_URI;
227
226
  if (!neo4jUri) {
228
- throw new Error("NEO4J_URI unset (Task 580 — no silent default)");
227
+ throw new Error("NEO4J_URI unset (no silent default)");
229
228
  }
230
229
  // NOTE: the port-replace below only works when the URI ends in :7687.
231
230
  // For non-default bolt ports (e.g. :7688 on realagent) the HTTP port is
232
231
  // bolt - 213 (see graph-proxy.ts). Pre-existing fragility — flagged as a
233
- // follow-up in .docs/neo4j-uri-audit.md. Not in scope for Task 580.
232
+ // follow-up in.docs/neo4j-uri-audit.md. Not in scope.
234
233
  const res = await fetch(neo4jUri.replace("bolt://", "http://").replace("7687", "7474"), { signal: AbortSignal.timeout(3000) });
235
234
  checks.neo4j = res.ok ? "healthy" : `unhealthy (${res.status})`;
236
235
  }
@@ -307,15 +306,15 @@ eagerTool(server, "system-status", "Check health of all Maxy platform services:
307
306
  catch {
308
307
  checks.crontab = "no crontab configured for this user";
309
308
  }
310
- // VNC display server (this brand's rfbPort — Task 924)
309
+ // VNC display server (this brand's rfbPort)
311
310
  checks.vnc = (await checkPort(BRAND_CONFIG.rfbPort)) ? "running" : "not running";
312
- // Chrome CDP (this brand's cdpPort — Task 924); personal-assistant
311
+ // Chrome CDP (this brand's cdpPort); personal-assistant
313
312
  // browser tools depend on this.
314
313
  const chromeUp = await checkPort(BRAND_CONFIG.cdpPort);
315
314
  checks.chrome = chromeUp
316
315
  ? "running"
317
316
  : `not running — personal-assistant browser tools degraded (CDP port ${BRAND_CONFIG.cdpPort} not listening)`;
318
- // WiFi — current connection state (Task 429)
317
+ // WiFi — current connection state
319
318
  try {
320
319
  const wifiScan = execFileSync("nmcli", ["-t", "-f", "ACTIVE,SSID,SIGNAL", "device", "wifi", "list"], { encoding: "utf-8", timeout: 5000 });
321
320
  const activeLine = wifiScan.split("\n").find((l) => l.startsWith("yes:"));
@@ -572,12 +571,12 @@ eagerTool(server, "account-update", "Update a user-configurable setting in accou
572
571
  }
573
572
  });
574
573
  // Plugin enable/disable: deterministic write to account.json.enabledPlugins.
575
- // The pre-tool-use hook denies the agent's direct Edit on account.json (Task 831),
574
+ // The pre-tool-use hook denies the agent's direct Edit on account.json,
576
575
  // so the agent can no longer toggle enablement by hand-editing the file. This
577
576
  // tool is the legitimate path: validates the plugin name, refuses core plugins,
578
577
  // confirms the plugin directory exists, and atomically updates the array.
579
578
  // Entitlement-bearing fields (tier, purchasedPlugins) are NOT writable here.
580
- server.tool("plugin-toggle-enabled", "Enable or disable a plugin in this account by adding/removing its name from account.json's enabledPlugins array. Validates the plugin exists under platform/plugins/, refuses to disable core plugins (admin, memory, docs, cloudflare, anthropic), and writes atomically. Takes effect on next session start. Does NOT change purchasedPlugins or tier — those derive from the signed entitlement payload.", {
579
+ server.tool("plugin-toggle-enabled", "Enable or disable a plugin in this account by adding/removing its name from account.json's enabledPlugins array. Validates the plugin exists under platform/plugins/, refuses to disable core plugins (admin, memory, docs, cloudflare), and writes atomically. Takes effect on next session start. Does NOT change purchasedPlugins or tier — those derive from the signed entitlement payload.", {
581
580
  pluginName: z.string().describe("Plugin slug (lowercase a-z0-9-)."),
582
581
  action: z.enum(["enable", "disable"]).describe("enable adds to enabledPlugins; disable removes."),
583
582
  }, async ({ pluginName, action }) => {
@@ -637,7 +636,7 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
637
636
  return { content: [{ type: "text", text: `${TAG} ${err instanceof Error ? err.message : String(err)}` }], isError: true };
638
637
  }
639
638
  // Enforce per-tier admin limit. Effective tier comes from the signed
640
- // entitlement payload (Task 831) — editing account.json.tier directly
639
+ // entitlement payload — editing account.json.tier directly
641
640
  // has no effect; the verifier uses the signed value and emits a
642
641
  // [entitlement] tampered: line if disk and signed diverge.
643
642
  try {
@@ -679,7 +678,7 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
679
678
  }
680
679
  const pinHash = hashPin(plaintextPin);
681
680
  const userId = crypto.randomUUID();
682
- // Three-store admin auth invariant (Task 850 → Task 904): users.json
681
+ // Three-store admin auth invariant: users.json
683
682
  // (device-level PIN auth) and account.json admins[] (account-level role)
684
683
  // route through the shared `admins-write` helper so the dual write has a
685
684
  // single chokepoint. Per-leg `[admins-write]` and legacy `[admin-auth-store]`
@@ -705,12 +704,12 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
705
704
  }
706
705
  // 3. Write to Neo4j (graph-level): AdminUser + Person + OWNS atomically,
707
706
  // plus ADMIN_OF edge to the LocalBusiness for this account.
708
- // Task 830 — deterministic identity creation: never delegate node
707
+ // deterministic identity creation: never delegate node
709
708
  // creation to the LLM. Person reuse rule mirrors writeAdminUserAndPerson
710
709
  // in platform/ui/app/lib/neo4j-store.ts (case-insensitive exact match
711
710
  // on givenName + familyName; partial-name ambiguity does NOT match —
712
711
  // rationalisation is a separate agent-mediated concern).
713
- // Task 850 — Neo4j-leg failure now returns is_error: true with the
712
+ // Neo4j-leg failure now returns is_error: true with the
714
713
  // [admin-auth-store] line; previously it set a soft warning string and
715
714
  // returned success, which is what hid the Adam Mackay incident from
716
715
  // the recovery agent. The user is still functional via users.json +
@@ -725,7 +724,7 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
725
724
  const firstSpace = trimmedName.search(/\s/);
726
725
  const givenName = firstSpace === -1 ? trimmedName : trimmedName.slice(0, firstSpace).trim();
727
726
  const familyName = firstSpace === -1 ? null : (trimmedName.slice(firstSpace + 1).trim() || null);
728
- // Task 897: stamp `accountId` on every AdminUser at MERGE time, both
727
+ // stamp `accountId` on every AdminUser at MERGE time, both
729
728
  // ON CREATE and ON MATCH (the latter via COALESCE so a pre-existing
730
729
  // value isn't overwritten if it differs — which would itself be a
731
730
  // graph-invariant violation worth surfacing). Pre-897 the missing
@@ -770,7 +769,7 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
770
769
  if (result.records.length > 0) {
771
770
  personReused = result.records[0].get("reused");
772
771
  }
773
- // Task 897 — post-write assertion mirroring Task 785 in neo4j-store.ts.
772
+ // post-write assertion mirroring the one in neo4j-store.ts.
774
773
  // MATCH back the AdminUser we just wrote and verify every required
775
774
  // field landed. Loud-fail the tool call if accountId or name is null
776
775
  // so a Cypher regression that drops the field is grep-detectable.
@@ -897,7 +896,7 @@ eagerTool(server, "admin-list", "List all admins for this account with their nam
897
896
  if (admins.length === 0) {
898
897
  return { content: [{ type: "text", text: `${TAG} No admins configured for this account.` }] };
899
898
  }
900
- // Enrich with names from Neo4j AdminUser (canonical, Task 829). Best
899
+ // Enrich with names from Neo4j AdminUser (canonical). Best
901
900
  // effort — render "(unknown)" for any userId without a graph entry.
902
901
  const userMap = new Map();
903
902
  try {
@@ -1197,9 +1196,9 @@ eagerTool(server, "logs-read", "Read recent logs. Stream logs (type=agent-stream
1197
1196
  }, async ({ type, lines = 50, sessionKey, conversationId }) => {
1198
1197
  try {
1199
1198
  const LOG_DIR = resolve(getAccountDir(), "logs");
1200
- // Task 1006 — sessionKey is the single identifier on disk.
1199
+ // sessionKey is the single identifier on disk.
1201
1200
  // `conversationId` is retained as a legacy alias that maps to the
1202
- // sessionKey-named file; Task 1007 will collapse the alias in the UI.
1201
+ // sessionKey-named file will collapse the alias in the UI.
1203
1202
  const idForResolve = sessionKey ?? conversationId;
1204
1203
  if (idForResolve) {
1205
1204
  if (!existsSync(LOG_DIR)) {
@@ -1207,7 +1206,7 @@ eagerTool(server, "logs-read", "Read recent logs. Stream logs (type=agent-stream
1207
1206
  }
1208
1207
  const prefixMap = {
1209
1208
  "agent-stream": "claude-agent-stream",
1210
- system: "claude-agent-stream", // Task 850 — backwards-compatible alias for agent-stream
1209
+ system: "claude-agent-stream", // backwards-compatible alias for agent-stream
1211
1210
  error: "claude-agent-stderr",
1212
1211
  session: "sse-events",
1213
1212
  public: "public-agent-stream",
@@ -1249,7 +1248,7 @@ eagerTool(server, "logs-read", "Read recent logs. Stream logs (type=agent-stream
1249
1248
  if (sessionKey) {
1250
1249
  const prefixes = {
1251
1250
  "agent-stream": "claude-agent-stream-",
1252
- system: "claude-agent-stream-", // Task 850 — backwards-compatible alias
1251
+ system: "claude-agent-stream-", // backwards-compatible alias
1253
1252
  error: "claude-agent-stderr-",
1254
1253
  session: "sse-events-",
1255
1254
  public: "public-agent-stream-",
@@ -1363,7 +1362,7 @@ eagerTool(server, "logs-read", "Read recent logs. Stream logs (type=agent-stream
1363
1362
  }).toString();
1364
1363
  return { content: [{ type: "text", text: `# vnc-boot.log\n\n${result}` }] };
1365
1364
  }
1366
- // Task 850 — agent-stream and the legacy system alias both map to
1365
+ // agent-stream and the legacy system alias both map to
1367
1366
  // claude-agent-stream-. The fall-through default also covers them.
1368
1367
  const prefix = resolvedType === "error" ? "claude-agent-stderr-"
1369
1368
  : resolvedType === "session" ? "sse-events-"
@@ -1388,7 +1387,7 @@ eagerTool(server, "logs-read", "Read recent logs. Stream logs (type=agent-stream
1388
1387
  return { content: [{ type: "text", text: `Failed to read logs: ${err instanceof Error ? err.message : String(err)}` }] };
1389
1388
  }
1390
1389
  });
1391
- // Task 918 — operator-authored skills are written to disk as a plugin so the
1390
+ // operator-authored skills are written to disk as a plugin so the
1392
1391
  // existing plugin-manifest loader picks them up (parsePluginFrontmatter +
1393
1392
  // assemblePublicPluginContent + loadEmbeddedPlugins all read from
1394
1393
  // <PLATFORM_ROOT>/plugins/<dir>/). Canonical = <accountDir>/plugins/<plugin>
@@ -1396,7 +1395,7 @@ eagerTool(server, "logs-read", "Read recent logs. Stream logs (type=agent-stream
1396
1395
  // <PLATFORM_ROOT>/plugins/<plugin> is rehydrated at admin session start by
1397
1396
  // autoDeliverUserPlugins. The agent supplies pluginName/skillName/body —
1398
1397
  // path is computed by this tool from ACCOUNT_ID. Symmetric write counterpart
1399
- // to plugin-read (Task 916).
1398
+ // to plugin-read.
1400
1399
  eagerTool(server, "store-skill", "Save an operator-authored skill on disk as part of an admin-managed plugin. " +
1401
1400
  "The skill becomes immediately discoverable by the admin agent (and the public agent if publicEmbed=true). " +
1402
1401
  "Path is computed internally from the active account; the agent supplies content + names only. " +
@@ -1528,7 +1527,7 @@ eagerTool(server, "plugin-read", "Read a plugin definition (PLUGIN.md) or one of
1528
1527
  const resolvedFile = file ?? "PLUGIN.md";
1529
1528
  const pluginPath = resolve(PLATFORM_ROOT, "plugins", pluginName, resolvedFile);
1530
1529
  if (!existsSync(pluginPath)) {
1531
- // Task 964/1000 — when the agent's pluginName/file combination misses
1530
+ // when the agent's pluginName/file combination misses
1532
1531
  // a skill that DOES live under `plugins/*/skills/<slug>/SKILL.md`,
1533
1532
  // surface the corrected pluginName AND the canonical file path so
1534
1533
  // the next call is deterministic. Both wrong-`file` and wrong-`pluginName`
@@ -1595,12 +1594,12 @@ eagerTool(server, "plugin-read", "Read a plugin definition (PLUGIN.md) or one of
1595
1594
  };
1596
1595
  }
1597
1596
  });
1598
- // Task 964 — agent-side `Glob` fallthrough when "set up cloudflare" maps a
1597
+ // agent-side `Glob` fallthrough when "set up cloudflare" maps a
1599
1598
  // SKILL.md to the wrong plugin: skill-find walks
1600
1599
  // `${PLATFORM_ROOT}/plugins/*/skills/<skillName>/SKILL.md` once and returns
1601
1600
  // the owner. With one tool call the agent learns the correct plugin name.
1602
1601
  //
1603
- // Task 1015 — `skill-load` (below) is the canonical single-call surface that
1602
+ // `skill-load` (below) is the canonical single-call surface that
1604
1603
  // most agents want (resolve + read body in one shot). `skill-find` is kept
1605
1604
  // for callers that need only the path (e.g. tooling that lists owners
1606
1605
  // without reading the body).
@@ -1634,11 +1633,11 @@ server.tool("skill-find", "Find which plugin owns a skill by name. Walks plugins
1634
1633
  isError: true,
1635
1634
  };
1636
1635
  });
1637
- // Task 1015 — `skill-load` collapses skill resolve+read into one call.
1636
+ // `skill-load` collapses skill resolve+read into one call.
1638
1637
  //
1639
1638
  // Why: 21 prose call sites previously said *"Load `admin/skills/plainly/SKILL.md`
1640
1639
  // via `plugin-read`"*. The LLM kept passing the path as `pluginName`, tripping
1641
- // the not-found branch with the corrected-pluginName hint that Task 1000 added.
1640
+ // the not-found branch with the corrected-pluginName hint.
1642
1641
  // The recurring failure is recorded in the corrections ledger. One slug-arg
1643
1642
  // tool removes the path-format ambiguity at the source.
1644
1643
  //
@@ -1674,7 +1673,7 @@ eagerTool(server, "skill-load", "Load a plugin skill's SKILL.md body by skill na
1674
1673
  };
1675
1674
  }
1676
1675
  const content = substituteBrandPlaceholders(outcome.body, outcome.absolutePath);
1677
- // Task 1021 — prepend a skill-input-contract notice when the skill's
1676
+ // prepend a skill-input-contract notice when the skill's
1678
1677
  // frontmatter declares `requiredInputs:`. The notice tells the agent
1679
1678
  // to route missing inputs through AskUserQuestion (per IDENTITY.md
1680
1679
  // "Skill-input resolution"); the embedded `<!-- skill-input-contract
@@ -1703,7 +1702,7 @@ eagerTool(server, "skill-load", "Load a plugin skill's SKILL.md body by skill na
1703
1702
  };
1704
1703
  }
1705
1704
  });
1706
- // Task 066 — the inline UI-component tool is gone from the admin surface
1705
+ // the inline UI-component tool is gone from the admin surface
1707
1706
  // on native Claude Code. The PTY runtime has no host bridge for the UI
1708
1707
  // primitives the legacy tool wrapped; calling it logged a "rendered"
1709
1708
  // sentinel that read like a successful render to the agent while the
@@ -1759,32 +1758,6 @@ server.tool("remote-auth-set-password", "Set the remote access password. Hashes
1759
1758
  };
1760
1759
  }
1761
1760
  });
1762
- eagerTool(server, "api-key-store", "Validate and store an Anthropic API key. Key must start with sk-ant- and be at least 90 characters. " +
1763
- "Writes to the platform's brand-specific config directory. Takes effect immediately for the public agent.", { apiKey: z.string() }, async ({ apiKey }) => {
1764
- try {
1765
- writeKey(apiKey);
1766
- return { content: [{ type: "text", text: `API key stored at ${keyFilePath()}.` }] };
1767
- }
1768
- catch (err) {
1769
- return {
1770
- content: [{ type: "text", text: err instanceof Error ? err.message : String(err) }],
1771
- isError: true,
1772
- };
1773
- }
1774
- });
1775
- eagerTool(server, "api-key-verify", "Verify the stored Anthropic API key works by making a minimal probe call. " +
1776
- "Returns one of: valid (key works, credits available), billing (key valid but credit balance too low — " +
1777
- "user must add credits at console.anthropic.com/settings/billing), auth_error (key rejected — invalid or revoked), " +
1778
- "missing (no key file found), error (could not verify — network issue or Anthropic outage). " +
1779
- "Call this on greeting, during system checks, or after storing a new key.", {}, async () => {
1780
- const result = await validateKey();
1781
- return {
1782
- content: [{
1783
- type: "text",
1784
- text: `Status: ${result.status}\n${result.message}`,
1785
- }],
1786
- };
1787
- });
1788
1761
  // ===================================================================
1789
1762
  // Utility tools
1790
1763
  // ===================================================================
@@ -1837,7 +1810,7 @@ eagerTool(server, "qr-generate", "Generate a QR code from text or a URL. Returns
1837
1810
  }
1838
1811
  });
1839
1812
  // ===================================================================
1840
- // WiFi management (Task 429)
1813
+ // WiFi management
1841
1814
  // ===================================================================
1842
1815
  eagerTool(server, "wifi", "Manage WiFi connections on this device. Actions: " +
1843
1816
  "scan (list visible networks with signal strength and security), " +
@@ -2110,7 +2083,7 @@ server.tool("premium-list", "List available premium plugins and their delivery s
2110
2083
  };
2111
2084
  }
2112
2085
  const config = await readAccountConfig();
2113
- // Effective purchasedPlugins from signed entitlement (Task 831).
2086
+ // Effective purchasedPlugins from signed entitlement.
2114
2087
  const entitlement = await currentEntitlement();
2115
2088
  const purchased = entitlement.purchasedPlugins;
2116
2089
  const enabled = Array.isArray(config.enabledPlugins) ? config.enabledPlugins : [];
@@ -2217,7 +2190,7 @@ server.tool("premium-deliver", "Deliver a purchased premium plugin. Copies plugi
2217
2190
  isError: true,
2218
2191
  };
2219
2192
  }
2220
- // Effective purchasedPlugins from signed entitlement (Task 831). The
2193
+ // Effective purchasedPlugins from signed entitlement. The
2221
2194
  // raw account.json value is ignored on commercial installs; verifier
2222
2195
  // returns the signed list (or [] on anonymous-fallback).
2223
2196
  const entitlement = await resolveEntitlement(ENTITLEMENT_BRAND, {
@@ -2582,7 +2555,7 @@ function cleanupPendingAction(actionId) {
2582
2555
  }
2583
2556
  }
2584
2557
  async function persistApprovalToolCall(opts) {
2585
- // Write doctrine (Task 673): a ToolCall without its owning Conversation is
2558
+ // Write doctrine: a ToolCall without its owning Conversation is
2586
2559
  // noise — every admin tool call belongs to a chat. When conversationId is
2587
2560
  // missing or its Conversation cannot be matched, we log and skip the
2588
2561
  // persist rather than create an orphan ToolCall node. The legacy