@hybridaione/hybridclaw 0.23.0 → 0.24.1

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 (538) hide show
  1. package/AGENTS.md +8 -3
  2. package/CHANGELOG.md +163 -0
  3. package/README.md +179 -418
  4. package/config.example.json +2 -1
  5. package/console/dist/assets/chat-BxYraI10.js +96 -0
  6. package/console/dist/assets/index-BEIJ5kEP.css +1 -0
  7. package/console/dist/assets/index-NV7LPpPl.js +80 -0
  8. package/console/dist/assets/query-o_Dd9s85.js +1 -0
  9. package/console/dist/assets/router-DoNPHesn.js +1 -0
  10. package/console/dist/assets/terminal-CW0xKnXb.js +1 -0
  11. package/console/dist/assets/{vendor-WdvgvXHT.js → vendor-GuSYcVD5.js} +2 -2
  12. package/console/dist/index.html +5 -5
  13. package/console/package.json +7 -7
  14. package/container/dist/approval-policy.js +15 -0
  15. package/container/dist/approval-policy.js.map +1 -1
  16. package/container/dist/browser-tools.js +2 -1
  17. package/container/dist/browser-tools.js.map +1 -1
  18. package/container/dist/codex-app-server.js +1 -0
  19. package/container/dist/codex-app-server.js.map +1 -1
  20. package/container/dist/codex-hybridclaw-mcp.js +1 -1
  21. package/container/dist/codex-hybridclaw-mcp.js.map +1 -1
  22. package/container/dist/context-guard.js +4 -2
  23. package/container/dist/context-guard.js.map +1 -1
  24. package/container/dist/index.js +111 -194
  25. package/container/dist/index.js.map +1 -1
  26. package/container/dist/model-behavior.js +14 -0
  27. package/container/dist/model-behavior.js.map +1 -0
  28. package/container/dist/providers/auxiliary.js +3 -0
  29. package/container/dist/providers/auxiliary.js.map +1 -1
  30. package/container/dist/providers/hybridai.js +4 -2
  31. package/container/dist/providers/hybridai.js.map +1 -1
  32. package/container/dist/providers/local-ollama.js +16 -7
  33. package/container/dist/providers/local-ollama.js.map +1 -1
  34. package/container/dist/providers/local-openai-compat.js +57 -30
  35. package/container/dist/providers/local-openai-compat.js.map +1 -1
  36. package/container/dist/providers/openai-codex.js +7 -4
  37. package/container/dist/providers/openai-codex.js.map +1 -1
  38. package/container/dist/providers/router.js +13 -1
  39. package/container/dist/providers/router.js.map +1 -1
  40. package/container/dist/providers/shared.js +28 -5
  41. package/container/dist/providers/shared.js.map +1 -1
  42. package/container/dist/providers/tool-call-normalizer.js +45 -48
  43. package/container/dist/providers/tool-call-normalizer.js.map +1 -1
  44. package/container/dist/stalled-turns.js +5 -0
  45. package/container/dist/stalled-turns.js.map +1 -1
  46. package/container/dist/tool-approval.js +135 -0
  47. package/container/dist/tool-approval.js.map +1 -0
  48. package/container/dist/tools.js +2 -2
  49. package/container/dist/tools.js.map +1 -1
  50. package/container/dist/types.js.map +1 -1
  51. package/container/npm-shrinkwrap.json +21 -21
  52. package/container/package-lock.json +21 -21
  53. package/container/package.json +5 -4
  54. package/container/src/approval-policy.ts +17 -0
  55. package/container/src/browser-tools.ts +4 -1
  56. package/container/src/codex-app-server.ts +3 -0
  57. package/container/src/codex-app-types.ts +1 -0
  58. package/container/src/codex-hybridclaw-mcp.ts +1 -0
  59. package/container/src/context-guard.ts +10 -2
  60. package/container/src/index.ts +147 -213
  61. package/container/src/model-behavior.ts +24 -0
  62. package/container/src/providers/auxiliary.ts +3 -0
  63. package/container/src/providers/hybridai.ts +4 -2
  64. package/container/src/providers/local-ollama.ts +22 -3
  65. package/container/src/providers/local-openai-compat.ts +83 -54
  66. package/container/src/providers/openai-codex.ts +7 -4
  67. package/container/src/providers/router.ts +21 -0
  68. package/container/src/providers/shared.ts +55 -8
  69. package/container/src/providers/tool-call-normalizer.ts +49 -51
  70. package/container/src/stalled-turns.ts +12 -0
  71. package/container/src/tool-approval.ts +199 -0
  72. package/container/src/tools.ts +3 -0
  73. package/container/src/types.ts +13 -0
  74. package/dist/a2a/a2a-inbound.d.ts +12 -4
  75. package/dist/a2a/a2a-inbound.d.ts.map +1 -1
  76. package/dist/a2a/a2a-inbound.js +282 -58
  77. package/dist/a2a/a2a-inbound.js.map +1 -1
  78. package/dist/a2a/a2a-outbox-delivery.d.ts.map +1 -1
  79. package/dist/a2a/a2a-outbox-delivery.js +3 -2
  80. package/dist/a2a/a2a-outbox-delivery.js.map +1 -1
  81. package/dist/a2a/a2a-outbox-persistence.d.ts.map +1 -1
  82. package/dist/a2a/a2a-outbox-persistence.js +1 -3
  83. package/dist/a2a/a2a-outbox-persistence.js.map +1 -1
  84. package/dist/a2a/envelope.d.ts +3 -0
  85. package/dist/a2a/envelope.d.ts.map +1 -1
  86. package/dist/a2a/envelope.js +64 -3
  87. package/dist/a2a/envelope.js.map +1 -1
  88. package/dist/a2a/identity-resolver.d.ts.map +1 -1
  89. package/dist/a2a/identity-resolver.js +5 -2
  90. package/dist/a2a/identity-resolver.js.map +1 -1
  91. package/dist/a2a/pairing.d.ts +69 -0
  92. package/dist/a2a/pairing.d.ts.map +1 -0
  93. package/dist/a2a/pairing.js +562 -0
  94. package/dist/a2a/pairing.js.map +1 -0
  95. package/dist/a2a/trust-ledger.d.ts +9 -1
  96. package/dist/a2a/trust-ledger.d.ts.map +1 -1
  97. package/dist/a2a/trust-ledger.js +14 -4
  98. package/dist/a2a/trust-ledger.js.map +1 -1
  99. package/dist/a2a/utils.d.ts +1 -1
  100. package/dist/a2a/utils.d.ts.map +1 -1
  101. package/dist/a2a/utils.js +1 -3
  102. package/dist/a2a/utils.js.map +1 -1
  103. package/dist/agent/conversation.d.ts.map +1 -1
  104. package/dist/agent/conversation.js +4 -0
  105. package/dist/agent/conversation.js.map +1 -1
  106. package/dist/agent/executor-types.d.ts +2 -1
  107. package/dist/agent/executor-types.d.ts.map +1 -1
  108. package/dist/agent/prompt-hooks.d.ts.map +1 -1
  109. package/dist/agent/prompt-hooks.js +32 -1
  110. package/dist/agent/prompt-hooks.js.map +1 -1
  111. package/dist/agents/agent-config-command.d.ts.map +1 -1
  112. package/dist/agents/agent-config-command.js +14 -4
  113. package/dist/agents/agent-config-command.js.map +1 -1
  114. package/dist/agents/agent-registry.d.ts.map +1 -1
  115. package/dist/agents/agent-registry.js +33 -1
  116. package/dist/agents/agent-registry.js.map +1 -1
  117. package/dist/agents/agent-runtime-config.d.ts.map +1 -1
  118. package/dist/agents/agent-runtime-config.js +3 -2
  119. package/dist/agents/agent-runtime-config.js.map +1 -1
  120. package/dist/agents/agent-types.d.ts +12 -0
  121. package/dist/agents/agent-types.d.ts.map +1 -1
  122. package/dist/agents/agent-types.js +92 -0
  123. package/dist/agents/agent-types.js.map +1 -1
  124. package/dist/agents/claw-archive.d.ts.map +1 -1
  125. package/dist/agents/claw-archive.js +1 -3
  126. package/dist/agents/claw-archive.js.map +1 -1
  127. package/dist/agents/claw-manifest.d.ts.map +1 -1
  128. package/dist/agents/claw-manifest.js +1 -3
  129. package/dist/agents/claw-manifest.js.map +1 -1
  130. package/dist/auth/anthropic-auth.d.ts.map +1 -1
  131. package/dist/auth/anthropic-auth.js +1 -3
  132. package/dist/auth/anthropic-auth.js.map +1 -1
  133. package/dist/auth/codex-auth.d.ts.map +1 -1
  134. package/dist/auth/codex-auth.js +1 -3
  135. package/dist/auth/codex-auth.js.map +1 -1
  136. package/dist/board/card-store.d.ts +4 -2
  137. package/dist/board/card-store.d.ts.map +1 -1
  138. package/dist/board/card-store.js +28 -8
  139. package/dist/board/card-store.js.map +1 -1
  140. package/dist/browser/managed-browser-tenant-policy.d.ts.map +1 -1
  141. package/dist/browser/managed-browser-tenant-policy.js +1 -3
  142. package/dist/browser/managed-browser-tenant-policy.js.map +1 -1
  143. package/dist/channels/agent-addressing.d.ts +3 -0
  144. package/dist/channels/agent-addressing.d.ts.map +1 -0
  145. package/dist/channels/agent-addressing.js +29 -0
  146. package/dist/channels/agent-addressing.js.map +1 -0
  147. package/dist/channels/discord/inbound.d.ts.map +1 -1
  148. package/dist/channels/discord/inbound.js +2 -1
  149. package/dist/channels/discord/inbound.js.map +1 -1
  150. package/dist/channels/msteams/inbound.d.ts.map +1 -1
  151. package/dist/channels/msteams/inbound.js +13 -11
  152. package/dist/channels/msteams/inbound.js.map +1 -1
  153. package/dist/channels/whatsapp/connection.d.ts.map +1 -1
  154. package/dist/channels/whatsapp/connection.js +9 -4
  155. package/dist/channels/whatsapp/connection.js.map +1 -1
  156. package/dist/channels/whatsapp/inbound.d.ts.map +1 -1
  157. package/dist/channels/whatsapp/inbound.js +2 -1
  158. package/dist/channels/whatsapp/inbound.js.map +1 -1
  159. package/dist/channels/whatsapp/pairing-state.d.ts +2 -0
  160. package/dist/channels/whatsapp/pairing-state.d.ts.map +1 -1
  161. package/dist/channels/whatsapp/pairing-state.js +10 -0
  162. package/dist/channels/whatsapp/pairing-state.js.map +1 -1
  163. package/dist/cli/agent-command.d.ts.map +1 -1
  164. package/dist/cli/agent-command.js +122 -0
  165. package/dist/cli/agent-command.js.map +1 -1
  166. package/dist/cli/auth-command.d.ts.map +1 -1
  167. package/dist/cli/auth-command.js +129 -16
  168. package/dist/cli/auth-command.js.map +1 -1
  169. package/dist/cli/coworker-command.d.ts +2 -0
  170. package/dist/cli/coworker-command.d.ts.map +1 -0
  171. package/dist/cli/coworker-command.js +460 -0
  172. package/dist/cli/coworker-command.js.map +1 -0
  173. package/dist/cli/help.d.ts +1 -0
  174. package/dist/cli/help.d.ts.map +1 -1
  175. package/dist/cli/help.js +52 -1
  176. package/dist/cli/help.js.map +1 -1
  177. package/dist/cli.d.ts.map +1 -1
  178. package/dist/cli.js +7 -0
  179. package/dist/cli.js.map +1 -1
  180. package/dist/command-registry.d.ts.map +1 -1
  181. package/dist/command-registry.js +31 -0
  182. package/dist/command-registry.js.map +1 -1
  183. package/dist/commands/aux-command.d.ts +7 -0
  184. package/dist/commands/aux-command.d.ts.map +1 -0
  185. package/dist/commands/aux-command.js +135 -0
  186. package/dist/commands/aux-command.js.map +1 -0
  187. package/dist/commands/second-opinion-web-search.d.ts.map +1 -1
  188. package/dist/commands/second-opinion-web-search.js +1 -3
  189. package/dist/commands/second-opinion-web-search.js.map +1 -1
  190. package/dist/config/app-version.d.ts.map +1 -1
  191. package/dist/config/app-version.js +1 -3
  192. package/dist/config/app-version.js.map +1 -1
  193. package/dist/config/config.d.ts +5 -0
  194. package/dist/config/config.d.ts.map +1 -1
  195. package/dist/config/config.js +18 -0
  196. package/dist/config/config.js.map +1 -1
  197. package/dist/config/runtime-config.d.ts +2 -1
  198. package/dist/config/runtime-config.d.ts.map +1 -1
  199. package/dist/config/runtime-config.js +136 -6
  200. package/dist/config/runtime-config.js.map +1 -1
  201. package/dist/distill/analysis.d.ts +58 -0
  202. package/dist/distill/analysis.d.ts.map +1 -0
  203. package/dist/distill/analysis.js +181 -0
  204. package/dist/distill/analysis.js.map +1 -0
  205. package/dist/distill/audit.d.ts +12 -0
  206. package/dist/distill/audit.d.ts.map +1 -0
  207. package/dist/distill/audit.js +35 -0
  208. package/dist/distill/audit.js.map +1 -0
  209. package/dist/distill/collectors.d.ts +16 -0
  210. package/dist/distill/collectors.d.ts.map +1 -0
  211. package/dist/distill/collectors.js +436 -0
  212. package/dist/distill/collectors.js.map +1 -0
  213. package/dist/distill/consent.d.ts +21 -0
  214. package/dist/distill/consent.d.ts.map +1 -0
  215. package/dist/distill/consent.js +109 -0
  216. package/dist/distill/consent.js.map +1 -0
  217. package/dist/distill/corpus.d.ts +27 -0
  218. package/dist/distill/corpus.d.ts.map +1 -0
  219. package/dist/distill/corpus.js +123 -0
  220. package/dist/distill/corpus.js.map +1 -0
  221. package/dist/distill/corrections.d.ts +16 -0
  222. package/dist/distill/corrections.d.ts.map +1 -0
  223. package/dist/distill/corrections.js +83 -0
  224. package/dist/distill/corrections.js.map +1 -0
  225. package/dist/distill/eval.d.ts +47 -0
  226. package/dist/distill/eval.d.ts.map +1 -0
  227. package/dist/distill/eval.js +137 -0
  228. package/dist/distill/eval.js.map +1 -0
  229. package/dist/distill/export.d.ts +46 -0
  230. package/dist/distill/export.d.ts.map +1 -0
  231. package/dist/distill/export.js +198 -0
  232. package/dist/distill/export.js.map +1 -0
  233. package/dist/distill/forget.d.ts +14 -0
  234. package/dist/distill/forget.d.ts.map +1 -0
  235. package/dist/distill/forget.js +118 -0
  236. package/dist/distill/forget.js.map +1 -0
  237. package/dist/distill/interview.d.ts +14 -0
  238. package/dist/distill/interview.d.ts.map +1 -0
  239. package/dist/distill/interview.js +132 -0
  240. package/dist/distill/interview.js.map +1 -0
  241. package/dist/distill/masking.d.ts +17 -0
  242. package/dist/distill/masking.d.ts.map +1 -0
  243. package/dist/distill/masking.js +57 -0
  244. package/dist/distill/masking.js.map +1 -0
  245. package/dist/distill/merge.d.ts +32 -0
  246. package/dist/distill/merge.d.ts.map +1 -0
  247. package/dist/distill/merge.js +328 -0
  248. package/dist/distill/merge.js.map +1 -0
  249. package/dist/distill/paths.d.ts +32 -0
  250. package/dist/distill/paths.d.ts.map +1 -0
  251. package/dist/distill/paths.js +85 -0
  252. package/dist/distill/paths.js.map +1 -0
  253. package/dist/distill/pipeline.d.ts +23 -0
  254. package/dist/distill/pipeline.d.ts.map +1 -0
  255. package/dist/distill/pipeline.js +133 -0
  256. package/dist/distill/pipeline.js.map +1 -0
  257. package/dist/distill/render.d.ts +22 -0
  258. package/dist/distill/render.d.ts.map +1 -0
  259. package/dist/distill/render.js +286 -0
  260. package/dist/distill/render.js.map +1 -0
  261. package/dist/distill/run.d.ts +26 -0
  262. package/dist/distill/run.d.ts.map +1 -0
  263. package/dist/distill/run.js +141 -0
  264. package/dist/distill/run.js.map +1 -0
  265. package/dist/distill/state.d.ts +6 -0
  266. package/dist/distill/state.d.ts.map +1 -0
  267. package/dist/distill/state.js +17 -0
  268. package/dist/distill/state.js.map +1 -0
  269. package/dist/distill/subject.d.ts +18 -0
  270. package/dist/distill/subject.d.ts.map +1 -0
  271. package/dist/distill/subject.js +65 -0
  272. package/dist/distill/subject.js.map +1 -0
  273. package/dist/distill/types.d.ts +199 -0
  274. package/dist/distill/types.d.ts.map +1 -0
  275. package/dist/distill/types.js +24 -0
  276. package/dist/distill/types.js.map +1 -0
  277. package/dist/evals/hybridai-skills-command.d.ts.map +1 -1
  278. package/dist/evals/hybridai-skills-command.js +1 -3
  279. package/dist/evals/hybridai-skills-command.js.map +1 -1
  280. package/dist/evals/trace-preparation.d.ts.map +1 -1
  281. package/dist/evals/trace-preparation.js +1 -3
  282. package/dist/evals/trace-preparation.js.map +1 -1
  283. package/dist/gateway/agent-addressing.d.ts +33 -0
  284. package/dist/gateway/agent-addressing.d.ts.map +1 -0
  285. package/dist/gateway/agent-addressing.js +170 -0
  286. package/dist/gateway/agent-addressing.js.map +1 -0
  287. package/dist/gateway/auth-token.d.ts +1 -0
  288. package/dist/gateway/auth-token.d.ts.map +1 -1
  289. package/dist/gateway/auth-token.js +3 -3
  290. package/dist/gateway/auth-token.js.map +1 -1
  291. package/dist/gateway/chat-approval.d.ts.map +1 -1
  292. package/dist/gateway/chat-approval.js +3 -0
  293. package/dist/gateway/chat-approval.js.map +1 -1
  294. package/dist/gateway/coworker-liveness.d.ts.map +1 -1
  295. package/dist/gateway/coworker-liveness.js +2 -1
  296. package/dist/gateway/coworker-liveness.js.map +1 -1
  297. package/dist/gateway/gateway-chat-service.d.ts.map +1 -1
  298. package/dist/gateway/gateway-chat-service.js +138 -22
  299. package/dist/gateway/gateway-chat-service.js.map +1 -1
  300. package/dist/gateway/gateway-distill-service.d.ts +143 -0
  301. package/dist/gateway/gateway-distill-service.d.ts.map +1 -0
  302. package/dist/gateway/gateway-distill-service.js +485 -0
  303. package/dist/gateway/gateway-distill-service.js.map +1 -0
  304. package/dist/gateway/gateway-http-server.d.ts.map +1 -1
  305. package/dist/gateway/gateway-http-server.js +343 -70
  306. package/dist/gateway/gateway-http-server.js.map +1 -1
  307. package/dist/gateway/gateway-plugin-service.d.ts.map +1 -1
  308. package/dist/gateway/gateway-plugin-service.js +1 -3
  309. package/dist/gateway/gateway-plugin-service.js.map +1 -1
  310. package/dist/gateway/gateway-scheduled-task-service.d.ts.map +1 -1
  311. package/dist/gateway/gateway-scheduled-task-service.js +1 -3
  312. package/dist/gateway/gateway-scheduled-task-service.js.map +1 -1
  313. package/dist/gateway/gateway-service.d.ts +17 -4
  314. package/dist/gateway/gateway-service.d.ts.map +1 -1
  315. package/dist/gateway/gateway-service.js +393 -38
  316. package/dist/gateway/gateway-service.js.map +1 -1
  317. package/dist/gateway/gateway-types.d.ts +74 -6
  318. package/dist/gateway/gateway-types.d.ts.map +1 -1
  319. package/dist/gateway/gateway-types.js.map +1 -1
  320. package/dist/gateway/gateway-utils.d.ts.map +1 -1
  321. package/dist/gateway/gateway-utils.js +2 -9
  322. package/dist/gateway/gateway-utils.js.map +1 -1
  323. package/dist/gateway/gateway.js +7 -2
  324. package/dist/gateway/gateway.js.map +1 -1
  325. package/dist/gateway/openai-compatible-model.d.ts.map +1 -1
  326. package/dist/gateway/openai-compatible-model.js +27 -18
  327. package/dist/gateway/openai-compatible-model.js.map +1 -1
  328. package/dist/gateway/output-guard-admin.d.ts.map +1 -1
  329. package/dist/gateway/output-guard-admin.js +1 -3
  330. package/dist/gateway/output-guard-admin.js.map +1 -1
  331. package/dist/gateway/proactive-delivery.d.ts +2 -0
  332. package/dist/gateway/proactive-delivery.d.ts.map +1 -1
  333. package/dist/gateway/proactive-delivery.js +8 -1
  334. package/dist/gateway/proactive-delivery.js.map +1 -1
  335. package/dist/gateway/proxy-agent.d.ts +11 -0
  336. package/dist/gateway/proxy-agent.d.ts.map +1 -0
  337. package/dist/gateway/proxy-agent.js +366 -0
  338. package/dist/gateway/proxy-agent.js.map +1 -0
  339. package/dist/gateway/response-ratings.d.ts.map +1 -1
  340. package/dist/gateway/response-ratings.js +80 -0
  341. package/dist/gateway/response-ratings.js.map +1 -1
  342. package/dist/gateway/text-channel-commands.d.ts +2 -1
  343. package/dist/gateway/text-channel-commands.d.ts.map +1 -1
  344. package/dist/gateway/text-channel-commands.js +22 -5
  345. package/dist/gateway/text-channel-commands.js.map +1 -1
  346. package/dist/identity/actor.d.ts +27 -0
  347. package/dist/identity/actor.d.ts.map +1 -0
  348. package/dist/identity/actor.js +123 -0
  349. package/dist/identity/actor.js.map +1 -0
  350. package/dist/identity/agent-id.d.ts.map +1 -1
  351. package/dist/identity/agent-id.js +1 -3
  352. package/dist/identity/agent-id.js.map +1 -1
  353. package/dist/infra/container-runner.d.ts.map +1 -1
  354. package/dist/infra/container-runner.js +15 -4
  355. package/dist/infra/container-runner.js.map +1 -1
  356. package/dist/infra/container-setup.d.ts.map +1 -1
  357. package/dist/infra/container-setup.js +1 -3
  358. package/dist/infra/container-setup.js.map +1 -1
  359. package/dist/infra/host-runner.d.ts.map +1 -1
  360. package/dist/infra/host-runner.js +8 -3
  361. package/dist/infra/host-runner.js.map +1 -1
  362. package/dist/infra/host-runtime-setup.d.ts.map +1 -1
  363. package/dist/infra/host-runtime-setup.js +13 -5
  364. package/dist/infra/host-runtime-setup.js.map +1 -1
  365. package/dist/infra/install-root.d.ts +1 -0
  366. package/dist/infra/install-root.d.ts.map +1 -1
  367. package/dist/infra/install-root.js +5 -0
  368. package/dist/infra/install-root.js.map +1 -1
  369. package/dist/infra/warm-runner-utils.d.ts +1 -0
  370. package/dist/infra/warm-runner-utils.d.ts.map +1 -1
  371. package/dist/infra/warm-runner-utils.js +3 -1
  372. package/dist/infra/warm-runner-utils.js.map +1 -1
  373. package/dist/infra/worker-signature.d.ts +7 -0
  374. package/dist/infra/worker-signature.d.ts.map +1 -1
  375. package/dist/infra/worker-signature.js +7 -0
  376. package/dist/infra/worker-signature.js.map +1 -1
  377. package/dist/memory/cloud-memory.d.ts +16 -0
  378. package/dist/memory/cloud-memory.d.ts.map +1 -0
  379. package/dist/memory/cloud-memory.js +333 -0
  380. package/dist/memory/cloud-memory.js.map +1 -0
  381. package/dist/memory/db.d.ts +26 -1
  382. package/dist/memory/db.d.ts.map +1 -1
  383. package/dist/memory/db.js +283 -15
  384. package/dist/memory/db.js.map +1 -1
  385. package/dist/migration/agent-home-migration.d.ts.map +1 -1
  386. package/dist/migration/agent-home-migration.js +1 -3
  387. package/dist/migration/agent-home-migration.js.map +1 -1
  388. package/dist/observability/sentry.d.ts.map +1 -1
  389. package/dist/observability/sentry.js +9 -1
  390. package/dist/observability/sentry.js.map +1 -1
  391. package/dist/plugins/plugin-manager.d.ts.map +1 -1
  392. package/dist/plugins/plugin-manager.js +1 -3
  393. package/dist/plugins/plugin-manager.js.map +1 -1
  394. package/dist/providers/auxiliary.d.ts.map +1 -1
  395. package/dist/providers/auxiliary.js +12 -7
  396. package/dist/providers/auxiliary.js.map +1 -1
  397. package/dist/providers/factory.d.ts.map +1 -1
  398. package/dist/providers/factory.js +13 -0
  399. package/dist/providers/factory.js.map +1 -1
  400. package/dist/providers/hybridai-bots.d.ts +1 -0
  401. package/dist/providers/hybridai-bots.d.ts.map +1 -1
  402. package/dist/providers/hybridai-bots.js +14 -5
  403. package/dist/providers/hybridai-bots.js.map +1 -1
  404. package/dist/providers/local-discovery.d.ts +2 -1
  405. package/dist/providers/local-discovery.d.ts.map +1 -1
  406. package/dist/providers/local-discovery.js +118 -38
  407. package/dist/providers/local-discovery.js.map +1 -1
  408. package/dist/providers/local-endpoints.d.ts +17 -0
  409. package/dist/providers/local-endpoints.d.ts.map +1 -0
  410. package/dist/providers/local-endpoints.js +58 -0
  411. package/dist/providers/local-endpoints.js.map +1 -0
  412. package/dist/providers/local-health.d.ts.map +1 -1
  413. package/dist/providers/local-health.js +15 -4
  414. package/dist/providers/local-health.js.map +1 -1
  415. package/dist/providers/local-ollama.d.ts.map +1 -1
  416. package/dist/providers/local-ollama.js +21 -6
  417. package/dist/providers/local-ollama.js.map +1 -1
  418. package/dist/providers/local-openai-compat.d.ts.map +1 -1
  419. package/dist/providers/local-openai-compat.js +57 -15
  420. package/dist/providers/local-openai-compat.js.map +1 -1
  421. package/dist/providers/local-types.d.ts +11 -1
  422. package/dist/providers/local-types.d.ts.map +1 -1
  423. package/dist/providers/model-catalog.d.ts.map +1 -1
  424. package/dist/providers/model-catalog.js +23 -9
  425. package/dist/providers/model-catalog.js.map +1 -1
  426. package/dist/providers/model-names.d.ts.map +1 -1
  427. package/dist/providers/model-names.js +6 -0
  428. package/dist/providers/model-names.js.map +1 -1
  429. package/dist/providers/task-routing.d.ts.map +1 -1
  430. package/dist/providers/task-routing.js +9 -2
  431. package/dist/providers/task-routing.js.map +1 -1
  432. package/dist/providers/types.d.ts +3 -2
  433. package/dist/providers/types.d.ts.map +1 -1
  434. package/dist/scheduler/scheduler.d.ts +0 -5
  435. package/dist/scheduler/scheduler.d.ts.map +1 -1
  436. package/dist/scheduler/scheduler.js +1 -3
  437. package/dist/scheduler/scheduler.js.map +1 -1
  438. package/dist/security/runtime-secrets.d.ts.map +1 -1
  439. package/dist/security/runtime-secrets.js +1 -3
  440. package/dist/security/runtime-secrets.js.map +1 -1
  441. package/dist/security/secret-refs.d.ts.map +1 -1
  442. package/dist/security/secret-refs.js +1 -3
  443. package/dist/security/secret-refs.js.map +1 -1
  444. package/dist/session/session-trace-export.d.ts.map +1 -1
  445. package/dist/session/session-trace-export.js +1 -3
  446. package/dist/session/session-trace-export.js.map +1 -1
  447. package/dist/skills/adaptive-skills-types.d.ts +3 -0
  448. package/dist/skills/adaptive-skills-types.d.ts.map +1 -1
  449. package/dist/skills/agent-scoreboard.d.ts.map +1 -1
  450. package/dist/skills/agent-scoreboard.js +1 -0
  451. package/dist/skills/agent-scoreboard.js.map +1 -1
  452. package/dist/tui-approval-prompt.d.ts.map +1 -1
  453. package/dist/tui-approval-prompt.js +7 -50
  454. package/dist/tui-approval-prompt.js.map +1 -1
  455. package/dist/tui-banner.d.ts.map +1 -1
  456. package/dist/tui-banner.js +3 -32
  457. package/dist/tui-banner.js.map +1 -1
  458. package/dist/tui-skill-config.d.ts.map +1 -1
  459. package/dist/tui-skill-config.js +7 -47
  460. package/dist/tui-skill-config.js.map +1 -1
  461. package/dist/tui-thinking.d.ts.map +1 -1
  462. package/dist/tui-thinking.js +2 -44
  463. package/dist/tui-thinking.js.map +1 -1
  464. package/dist/tui.d.ts.map +1 -1
  465. package/dist/tui.js +18 -116
  466. package/dist/tui.js.map +1 -1
  467. package/dist/tunnel/tailscale-tunnel-provider.d.ts.map +1 -1
  468. package/dist/tunnel/tailscale-tunnel-provider.js +1 -3
  469. package/dist/tunnel/tailscale-tunnel-provider.js.map +1 -1
  470. package/dist/types/audit.d.ts +2 -0
  471. package/dist/types/audit.d.ts.map +1 -1
  472. package/dist/types/container.d.ts +8 -0
  473. package/dist/types/container.d.ts.map +1 -1
  474. package/dist/types/execution.d.ts +3 -0
  475. package/dist/types/execution.d.ts.map +1 -1
  476. package/dist/types/model-behavior.d.ts +10 -0
  477. package/dist/types/model-behavior.d.ts.map +1 -0
  478. package/dist/types/model-behavior.js +14 -0
  479. package/dist/types/model-behavior.js.map +1 -0
  480. package/dist/types/models.d.ts +2 -0
  481. package/dist/types/models.d.ts.map +1 -1
  482. package/dist/types/models.js.map +1 -1
  483. package/dist/update.d.ts.map +1 -1
  484. package/dist/update.js +2 -1
  485. package/dist/update.js.map +1 -1
  486. package/dist/usage/media-generation-usage.d.ts.map +1 -1
  487. package/dist/usage/media-generation-usage.js +1 -3
  488. package/dist/usage/media-generation-usage.js.map +1 -1
  489. package/dist/utils/ansi.d.ts +14 -0
  490. package/dist/utils/ansi.d.ts.map +1 -0
  491. package/dist/utils/ansi.js +151 -0
  492. package/dist/utils/ansi.js.map +1 -0
  493. package/dist/utils/transport-errors.d.ts.map +1 -1
  494. package/dist/utils/transport-errors.js +27 -24
  495. package/dist/utils/transport-errors.js.map +1 -1
  496. package/dist/workspace.js +1 -1
  497. package/dist/workspace.js.map +1 -1
  498. package/docs/content/README.md +32 -1
  499. package/docs/content/channels/admin-console.md +17 -2
  500. package/docs/content/developer-guide/README.md +2 -0
  501. package/docs/content/developer-guide/desktop-release.md +199 -0
  502. package/docs/content/developer-guide/memory.md +27 -1
  503. package/docs/content/developer-guide/runtime.md +6 -1
  504. package/docs/content/getting-started/installation.md +48 -12
  505. package/docs/content/guides/README.md +2 -0
  506. package/docs/content/guides/bundled-skills.md +10 -7
  507. package/docs/content/guides/human-distillation.md +115 -0
  508. package/docs/content/guides/local-providers.md +27 -3
  509. package/docs/content/guides/skills/README.md +12 -6
  510. package/docs/content/guides/skills/business-skills.md +23 -0
  511. package/docs/content/guides/skills/development.md +49 -0
  512. package/docs/content/guides/skills/integrations.md +47 -1
  513. package/docs/content/guides/skills/productivity.md +48 -1
  514. package/docs/content/internal/roadmap.md +20 -2
  515. package/docs/content/reference/commands.md +16 -7
  516. package/docs/content/reference/configuration.md +13 -0
  517. package/docs/content/reference/model-selection.md +11 -7
  518. package/docs/index.html +20 -20
  519. package/npm-shrinkwrap.json +1587 -1710
  520. package/package.json +29 -25
  521. package/scripts/postinstall-container.mjs +20 -11
  522. package/skills/byd-battery/SKILL.md +181 -0
  523. package/skills/byd-battery/byd-battery.cjs +1454 -0
  524. package/skills/human-distill/SKILL.md +138 -0
  525. package/skills/human-distill/references/extraction-contract.md +96 -0
  526. package/skills/human-distill/references/interview-protocol.md +47 -0
  527. package/skills/human-distill/references/mirroring.md +50 -0
  528. package/skills/human-distill/references/six-dimensions.md +60 -0
  529. package/skills/mailchimp/SKILL.md +296 -0
  530. package/skills/mailchimp/mailchimp.cjs +1274 -0
  531. package/templates/BOOTSTRAP.md +9 -4
  532. package/templates/USER.md +8 -0
  533. package/console/dist/assets/chat-DkCN_Ziw.js +0 -96
  534. package/console/dist/assets/index-DgMZV3c_.js +0 -80
  535. package/console/dist/assets/index-pFzrxyXS.css +0 -1
  536. package/console/dist/assets/query-ME417NFS.js +0 -1
  537. package/console/dist/assets/router-BkmmjtJ_.js +0 -1
  538. package/console/dist/assets/terminal-yy8VqyXl.js +0 -1
package/AGENTS.md CHANGED
@@ -350,11 +350,16 @@ Skill resolution order (first match wins):
350
350
  When the user says "bump release":
351
351
 
352
352
  1. Bump the requested semantic version (if unspecified, default to patch).
353
- 2. Update version strings in:
353
+ 2. Update `package.json` to the new version, then run `npm run version:sync`
354
+ to propagate it through product package metadata:
354
355
  - `package.json`
355
- - `package-lock.json` (root `version` and `packages[""]`)
356
+ - `package-lock.json` and `npm-shrinkwrap.json` (root `version`,
357
+ `packages[""]`, and product workspace entries)
358
+ - `console/package.json`
359
+ - `desktop/package.json`
356
360
  - `container/package.json`
357
- - `container/package-lock.json` (root `version` and `packages[""]`)
361
+ - `container/package-lock.json` and `container/npm-shrinkwrap.json` (root
362
+ `version` and `packages[""]`)
358
363
  - any user-facing version text (for example `src/tui.ts` banner)
359
364
  3. Move `CHANGELOG.md` release notes from `Unreleased` to the new version
360
365
  heading (or create one).
package/CHANGELOG.md CHANGED
@@ -2,6 +2,169 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## [0.24.1](https://github.com/HybridAIOne/hybridclaw/tree/v0.24.1) - 2026-06-14
6
+
7
+ ### Added
8
+
9
+ - **Onboarding helpful links**: New agent workspaces seed a `Helpful Links`
10
+ section in `USER.md` for agent chat, WhatsApp setup, and documentation URLs.
11
+ The hatching flow now reads those exact links when preparing the tailored
12
+ first-jobs email and includes whichever links are available instead of
13
+ guessing deployment URLs. The admin Channels page also honors `#whatsapp`
14
+ deep links by selecting and scrolling directly to the WhatsApp setup panel.
15
+
16
+ ### Fixed
17
+
18
+ - **WhatsApp pairing diagnostics**: WhatsApp transport, reconnect, and pairing
19
+ failures are now stored in pairing status and surfaced in the admin Channels
20
+ UI instead of leaving operators on a generic "waiting for QR" message.
21
+ - **Bootstrap cleanup approvals**: Deleting the root `BOOTSTRAP.md` one-time
22
+ onboarding file is now auto-approved as safe cleanup after hatching, while
23
+ other delete calls still require explicit approval.
24
+ - **HybridAI empty completion recovery**: HybridAI responses with no visible
25
+ text and no tool call now get one targeted retry before the container fails
26
+ the turn. Whitespace-only content is treated as empty, and the stalled-turn
27
+ budget tracks the retry.
28
+ - **WebSocket transport error handling**: Expected transport failures nested in
29
+ wrapper `data`, `error`, `cause`, or aggregate fields are classified
30
+ consistently, timeout messages are rendered clearly, expected handshake
31
+ timeouts are dropped before Sentry reporting, and WhatsApp reconnect handling
32
+ preserves the original disconnect error for diagnosis.
33
+
34
+ ## [0.24.0](https://github.com/HybridAIOne/hybridclaw/tree/v0.24.0) - 2026-06-11
35
+
36
+ ### Added
37
+
38
+ - **Human distillation (R72)**: New `hybridclaw coworker` command group and
39
+ bundled `human-distill` skill that distills a real person's source material
40
+ into a coworker agent. Collectors normalise Slack exports, mbox email,
41
+ meeting transcripts, chat JSONL, documents, and gap-driven interview
42
+ questionnaires into an agent-scoped corpus with quality weighting, stable
43
+ provenance ids, and third-party PII masking at ingest. A resumable
44
+ ingest → analyse → build → merge → correct pipeline writes the persona into
45
+ the standard identity files (`IDENTITY.md`, `SOUL.md`, `USER.md`, `CV.md`)
46
+ and a generated work-module skill, with `/admin/distill` managing subjects,
47
+ consent, source uploads, corpus documents, and runs from the browser. Every
48
+ claim cites corpus documents (uncited claims are flagged, not written),
49
+ every merge is an F4-versioned reversible edit, and conflicting evidence is
50
+ surfaced as operator review items. Distilling a real, named human is
51
+ hard-blocked until a consent artefact is recorded; all lifecycle actions
52
+ emit hash-chained `distill.*` audit events; `coworker forget` erases corpus,
53
+ persona, work module, runs, and revision snapshots as one identifier set.
54
+ Includes a leakage/fidelity eval (`coworker eval`), conversational
55
+ corrections (`coworker correct`), and one-bundle multi-host export/install
56
+ for Claude Code, Codex, OpenClaw, and HybridClaw. Manifesto: Principle VII -
57
+ A coworker you can trust with real responsibility.
58
+ - **Cloud memory sync**: Agents now sync local memory files (`MEMORY.md`,
59
+ `USER.md`, and recent daily memory notes) with the HybridAI cloud and receive
60
+ shared installation- and company-scoped memory back for prompt context. Sync
61
+ runs at conversation start and periodically every five minutes with
62
+ per-agent rate limiting, requires `HYBRIDAI_API_KEY`, `HYBRIDAI_BASE_URL`
63
+ (HTTPS only), and `HYBRIDAI_CHATBOT_ID`, and stays disabled when those are
64
+ unset. Shared memory appears read-only in the agent file editor under a
65
+ "Shared memory" group.
66
+ - **A2A operator pairing**: Added `/admin/a2a-trust` for pairing two HybridClaw
67
+ instances: operators fetch a peer Agent Card by URL or canonical DNS
68
+ identifier, preview its identity and key fingerprint, and trust it with an
69
+ optional peer-side approval prompt. Incoming pairing requests arrive through
70
+ a rate-limited `/a2a/pairing/requests` endpoint and can be approved or
71
+ declined from the console with audit-trail decision reasons.
72
+ - **Inbound A2A envelopes**: Added a JSON-RPC Agent Card envelope receiver for
73
+ cross-instance A2A delivery, including canonical sender/recipient metadata,
74
+ idempotent persistence, signed bearer-token validation, read-only admin
75
+ inbox visibility, and audit events for malformed or rejected envelopes.
76
+ - **HybridAI proxy agents**: Agents can now proxy conversations to hosted
77
+ HybridAI chatbots via per-agent `proxy` config, SecretRef-backed API keys,
78
+ HTTPS-only upstreams, selectable channel- or user-scoped conversation ids,
79
+ streaming response forwarding, and `/status` visibility for proxy mode.
80
+ - **Explicit agent addressing**: Chat channels and web chat can address
81
+ specific agents inline, with mention autocomplete, avatar-backed mention
82
+ pills, canonical recipient handling, and fanout hardening for local
83
+ proactive delivery.
84
+ - **`byd-battery` skill**: Added read-only monitoring for BYD Battery-Box
85
+ Premium HVS/HVM/LVS/LVL home-storage systems over local Modbus TCP or
86
+ Fronius inverter delegation, covering state of charge, pack telemetry, cell
87
+ extremes, tower/module inventory, decoded alarms, firmware info, and energy
88
+ counters, with allowlisted register ranges and no write operations.
89
+ - **`mailchimp` skill**: Added Mailchimp Marketing and Mailchimp
90
+ Transactional/Mandrill workflows for credential checks, audience/member
91
+ reads, guarded subscriber and tag mutations, campaign draft/content/report
92
+ operations, automations, journeys, and approval-gated campaign or
93
+ transactional sends through the gateway HTTP proxy.
94
+ - **Amber approval cards**: Web chat approval prompts now render as structured
95
+ confirmation cards with an approval-tier badge, parsed action/tool/reason
96
+ detail rows, and separated confirm/deny and trust-scope button groups.
97
+ - **Named local model endpoints**: Local provider config now supports
98
+ additional named Ollama, LM Studio, llama.cpp, and vLLM endpoints with
99
+ endpoint-prefixed model ids, CLI setup via `--name`, and per-endpoint model
100
+ behavior flags for Qwen thinking markup and Gemma tool-call formats.
101
+ - **Auxiliary model testing**: Added `/aux test <task> <prompt>` so operators
102
+ can exercise configured auxiliary model routes directly and see the
103
+ provider/model used for the request.
104
+ - **Response rating forwarding**: Thumbs up/down ratings on web chat responses
105
+ are forwarded to the HybridAI feedback API when HybridAI authentication is
106
+ active, alongside the existing local rating store and audit events.
107
+ Forwarding is non-blocking and skips silently when auth is unavailable.
108
+
109
+ ### Changed
110
+
111
+ - **README and skill docs positioning**: The public README and skills docs now
112
+ lead with HybridClaw's validated business-skill workflow: helper-backed
113
+ production skills, eval scenarios, approval tiers, credential boundaries, and
114
+ `Qwen/Qwen3.6-27B-FP8` as the small-model validation baseline.
115
+ - **Multi-agent and credential-isolation positioning**: The README and docs
116
+ now call out multi-instance A2A workflows, hosted proxy agents, explicit
117
+ addressing, and SecretRef-backed execution that keeps raw credentials out of
118
+ model context.
119
+ - **HybridAI Cloud launch path**: The README, docs landing page, and
120
+ installation guide now link to the managed HybridClaw cloud offering at
121
+ `hybridclaw.io`.
122
+ - **Desktop release order docs**: The macOS desktop release guide now
123
+ recommends building and notarizing from the exact version tag, uploading
124
+ desktop assets to a draft GitHub Release, then publishing after assets are
125
+ verified.
126
+ - **Provider request payloads**: Empty tool definitions are omitted from
127
+ HybridAI, OpenAI-compatible, Codex, and Ollama provider requests instead of
128
+ sending empty `tools` arrays.
129
+ - **Local vLLM tool behavior**: OpenAI-compatible local providers infer and
130
+ remember native-tool fallback support, count prompt-side tool overhead in
131
+ context guards, refresh named-endpoint metadata, and parse Gemma text tool
132
+ calls emitted before or after Markdown wrappers.
133
+ - **Structured actors in audit data**: Audit/event records now carry unified
134
+ actor identities across A2A envelopes, board cards, adaptive-skill
135
+ observations, scoreboards, and structured audit queries.
136
+ - **Coworker liveness scan**: Skill scans during coworker liveness checks use
137
+ set-based agent filtering, speeding up gateways with many agents.
138
+ - **Release version sync tooling**: `npm run version:sync` now keeps root,
139
+ console, desktop, container, lockfile, and shrinkwrap package versions in
140
+ sync, with `release:check` validating the same invariant.
141
+ - **Dependency updates**: Routine minor and patch dependency updates across the
142
+ gateway, console, container, and desktop packages, plus overrides that lift
143
+ transitive `shell-quote` and `tmp` to patched releases flagged by npm audit.
144
+
145
+ ### Fixed
146
+
147
+ - **Gateway token timing safety**: Gateway API and bearer token checks use
148
+ constant-time comparison to avoid timing side channels.
149
+ - **Delegation identifiers**: Delegation session and batch job identifiers use
150
+ cryptographic UUIDs instead of seeded pseudo-random strings.
151
+ - **Containment check stalls**: Media and artifact path containment checks
152
+ resolve real paths asynchronously so large directory validation no longer
153
+ blocks the gateway event loop.
154
+ - **TUI ANSI truncation**: Terminal output truncation handles incomplete ANSI
155
+ escape sequences and wide glyphs without corrupting styled text.
156
+ - **Duplicate hatching after onboarding**: Switching agents after onboarding
157
+ no longer re-triggers the workspace bootstrap kickoff, and bootstrap job
158
+ detection recognizes both bulleted and numbered job lists.
159
+ - **Host runtime dependency detection**: Source-checkout host runtime checks
160
+ no longer misreport container dependencies as missing when npm hoists a
161
+ package whose `exports` map does not expose `package.json` (e.g.
162
+ `dompurify`).
163
+ - **Installer and setup hardening**: The one-line installer, postinstall
164
+ container setup, Node version guard, and Homebrew/source-checkout paths handle
165
+ no-sudo installs, user npm prefixes, and container dependency setup more
166
+ reliably.
167
+
5
168
  ## [0.23.0](https://github.com/HybridAIOne/hybridclaw/tree/v0.23.0) - 2026-06-09
6
169
 
7
170
  ### Added