@geminixiang/mikan 1.0.0-beta.3 → 1.0.0-beta.30

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 (545) hide show
  1. package/CHANGELOG.md +563 -0
  2. package/README.md +60 -24
  3. package/dist/adapter.d.ts +1 -1
  4. package/dist/adapter.d.ts.map +1 -1
  5. package/dist/adapter.js.map +1 -1
  6. package/dist/adapters/discord/bot.d.ts +1 -0
  7. package/dist/adapters/discord/bot.d.ts.map +1 -1
  8. package/dist/adapters/discord/bot.js +47 -65
  9. package/dist/adapters/discord/bot.js.map +1 -1
  10. package/dist/adapters/discord/context.d.ts.map +1 -1
  11. package/dist/adapters/discord/context.js +46 -211
  12. package/dist/adapters/discord/context.js.map +1 -1
  13. package/dist/adapters/github/bot.d.ts +86 -0
  14. package/dist/adapters/github/bot.d.ts.map +1 -0
  15. package/dist/adapters/github/bot.js +640 -0
  16. package/dist/adapters/github/bot.js.map +1 -0
  17. package/dist/adapters/github/client.d.ts +122 -0
  18. package/dist/adapters/github/client.d.ts.map +1 -0
  19. package/dist/adapters/github/client.js +314 -0
  20. package/dist/adapters/github/client.js.map +1 -0
  21. package/dist/adapters/github/cloudbuild.d.ts +19 -0
  22. package/dist/adapters/github/cloudbuild.d.ts.map +1 -0
  23. package/dist/adapters/github/cloudbuild.js +71 -0
  24. package/dist/adapters/github/cloudbuild.js.map +1 -0
  25. package/dist/adapters/github/context.d.ts +9 -0
  26. package/dist/adapters/github/context.d.ts.map +1 -0
  27. package/dist/adapters/github/context.js +98 -0
  28. package/dist/adapters/github/context.js.map +1 -0
  29. package/dist/adapters/github/gcp-auth.d.ts +28 -0
  30. package/dist/adapters/github/gcp-auth.d.ts.map +1 -0
  31. package/dist/adapters/github/gcp-auth.js +196 -0
  32. package/dist/adapters/github/gcp-auth.js.map +1 -0
  33. package/dist/adapters/github/github-ops.d.ts +90 -0
  34. package/dist/adapters/github/github-ops.d.ts.map +1 -0
  35. package/dist/adapters/github/github-ops.js +405 -0
  36. package/dist/adapters/github/github-ops.js.map +1 -0
  37. package/dist/adapters/github/ids.d.ts +34 -0
  38. package/dist/adapters/github/ids.d.ts.map +1 -0
  39. package/dist/adapters/github/ids.js +53 -0
  40. package/dist/adapters/github/ids.js.map +1 -0
  41. package/dist/adapters/github/repo.d.ts +32 -0
  42. package/dist/adapters/github/repo.d.ts.map +1 -0
  43. package/dist/adapters/github/repo.js +141 -0
  44. package/dist/adapters/github/repo.js.map +1 -0
  45. package/dist/adapters/github/tool-pack.d.ts +14 -0
  46. package/dist/adapters/github/tool-pack.d.ts.map +1 -0
  47. package/dist/adapters/github/tool-pack.js +56 -0
  48. package/dist/adapters/github/tool-pack.js.map +1 -0
  49. package/dist/adapters/github/tools/checks.d.ts +19 -0
  50. package/dist/adapters/github/tools/checks.d.ts.map +1 -0
  51. package/dist/adapters/github/tools/checks.js +105 -0
  52. package/dist/adapters/github/tools/checks.js.map +1 -0
  53. package/dist/adapters/github/tools/issue.d.ts +21 -0
  54. package/dist/adapters/github/tools/issue.d.ts.map +1 -0
  55. package/dist/adapters/github/tools/issue.js +48 -0
  56. package/dist/adapters/github/tools/issue.js.map +1 -0
  57. package/dist/adapters/github/tools/pr.d.ts +22 -0
  58. package/dist/adapters/github/tools/pr.d.ts.map +1 -0
  59. package/dist/adapters/github/tools/pr.js +48 -0
  60. package/dist/adapters/github/tools/pr.js.map +1 -0
  61. package/dist/adapters/github/tools/read.d.ts +21 -0
  62. package/dist/adapters/github/tools/read.d.ts.map +1 -0
  63. package/dist/adapters/github/tools/read.js +141 -0
  64. package/dist/adapters/github/tools/read.js.map +1 -0
  65. package/dist/adapters/github/tools/review-reply.d.ts +17 -0
  66. package/dist/adapters/github/tools/review-reply.d.ts.map +1 -0
  67. package/dist/adapters/github/tools/review-reply.js +38 -0
  68. package/dist/adapters/github/tools/review-reply.js.map +1 -0
  69. package/dist/adapters/github/tools/sync.d.ts +17 -0
  70. package/dist/adapters/github/tools/sync.d.ts.map +1 -0
  71. package/dist/adapters/github/tools/sync.js +34 -0
  72. package/dist/adapters/github/tools/sync.js.map +1 -0
  73. package/dist/adapters/github/types.d.ts +372 -0
  74. package/dist/adapters/github/types.d.ts.map +1 -0
  75. package/dist/adapters/github/types.js +2 -0
  76. package/dist/adapters/github/types.js.map +1 -0
  77. package/dist/adapters/intake.d.ts +16 -5
  78. package/dist/adapters/intake.d.ts.map +1 -1
  79. package/dist/adapters/intake.js +84 -22
  80. package/dist/adapters/intake.js.map +1 -1
  81. package/dist/adapters/progressive-renderer.d.ts +7 -0
  82. package/dist/adapters/progressive-renderer.d.ts.map +1 -0
  83. package/dist/adapters/progressive-renderer.js +383 -0
  84. package/dist/adapters/progressive-renderer.js.map +1 -0
  85. package/dist/adapters/slack/blocks.d.ts.map +1 -1
  86. package/dist/adapters/slack/blocks.js +111 -111
  87. package/dist/adapters/slack/blocks.js.map +1 -1
  88. package/dist/adapters/slack/bot.d.ts +10 -6
  89. package/dist/adapters/slack/bot.d.ts.map +1 -1
  90. package/dist/adapters/slack/bot.js +173 -145
  91. package/dist/adapters/slack/bot.js.map +1 -1
  92. package/dist/adapters/slack/context.d.ts.map +1 -1
  93. package/dist/adapters/slack/context.js +3 -14
  94. package/dist/adapters/slack/context.js.map +1 -1
  95. package/dist/adapters/slack/response-lifecycle.d.ts.map +1 -1
  96. package/dist/adapters/slack/response-lifecycle.js +126 -323
  97. package/dist/adapters/slack/response-lifecycle.js.map +1 -1
  98. package/dist/adapters/slack/session.d.ts.map +1 -1
  99. package/dist/adapters/slack/session.js +5 -8
  100. package/dist/adapters/slack/session.js.map +1 -1
  101. package/dist/adapters/slack/tool-pack.d.ts +11 -0
  102. package/dist/adapters/slack/tool-pack.d.ts.map +1 -0
  103. package/dist/adapters/slack/tool-pack.js +45 -0
  104. package/dist/adapters/slack/tool-pack.js.map +1 -0
  105. package/dist/adapters/slack/tools/blockkit.d.ts +14 -0
  106. package/dist/adapters/slack/tools/blockkit.d.ts.map +1 -0
  107. package/dist/adapters/slack/tools/blockkit.js +106 -0
  108. package/dist/adapters/slack/tools/blockkit.js.map +1 -0
  109. package/dist/adapters/slack/types.d.ts +37 -0
  110. package/dist/adapters/slack/types.d.ts.map +1 -1
  111. package/dist/adapters/slack/types.js.map +1 -1
  112. package/dist/adapters/telegram/bot.d.ts +1 -2
  113. package/dist/adapters/telegram/bot.d.ts.map +1 -1
  114. package/dist/adapters/telegram/bot.js +51 -63
  115. package/dist/adapters/telegram/bot.js.map +1 -1
  116. package/dist/adapters/telegram/context.d.ts.map +1 -1
  117. package/dist/adapters/telegram/context.js +55 -182
  118. package/dist/adapters/telegram/context.js.map +1 -1
  119. package/dist/adapters/types.d.ts +86 -10
  120. package/dist/adapters/types.d.ts.map +1 -1
  121. package/dist/adapters/types.js.map +1 -1
  122. package/dist/agent.d.ts +14 -19
  123. package/dist/agent.d.ts.map +1 -1
  124. package/dist/agent.js +745 -243
  125. package/dist/agent.js.map +1 -1
  126. package/dist/cli/arg-grammar.d.ts +25 -0
  127. package/dist/cli/arg-grammar.d.ts.map +1 -0
  128. package/dist/cli/arg-grammar.js +59 -0
  129. package/dist/cli/arg-grammar.js.map +1 -0
  130. package/dist/cli/boot.d.ts +5 -0
  131. package/dist/cli/boot.d.ts.map +1 -0
  132. package/dist/cli/boot.js +112 -0
  133. package/dist/cli/boot.js.map +1 -0
  134. package/dist/cli/download.d.ts.map +1 -0
  135. package/dist/cli/download.js.map +1 -0
  136. package/dist/cli/ext-dev.d.ts +2 -0
  137. package/dist/cli/ext-dev.d.ts.map +1 -0
  138. package/dist/cli/ext-dev.js +177 -0
  139. package/dist/cli/ext-dev.js.map +1 -0
  140. package/dist/cli/ext-git.d.ts +17 -0
  141. package/dist/cli/ext-git.d.ts.map +1 -0
  142. package/dist/cli/ext-git.js +107 -0
  143. package/dist/cli/ext-git.js.map +1 -0
  144. package/dist/cli/ext.d.ts +2 -0
  145. package/dist/cli/ext.d.ts.map +1 -0
  146. package/dist/cli/ext.js +222 -0
  147. package/dist/cli/ext.js.map +1 -0
  148. package/dist/cli/types.d.ts +20 -0
  149. package/dist/cli/types.d.ts.map +1 -0
  150. package/dist/cli/types.js +2 -0
  151. package/dist/cli/types.js.map +1 -0
  152. package/dist/commands/admin.d.ts.map +1 -1
  153. package/dist/commands/admin.js +2 -1
  154. package/dist/commands/admin.js.map +1 -1
  155. package/dist/commands/auto-reply.d.ts.map +1 -1
  156. package/dist/commands/auto-reply.js +2 -6
  157. package/dist/commands/auto-reply.js.map +1 -1
  158. package/dist/commands/extensions.d.ts.map +1 -1
  159. package/dist/commands/extensions.js +18 -8
  160. package/dist/commands/extensions.js.map +1 -1
  161. package/dist/commands/login.d.ts +2 -1
  162. package/dist/commands/login.d.ts.map +1 -1
  163. package/dist/commands/login.js +35 -3
  164. package/dist/commands/login.js.map +1 -1
  165. package/dist/commands/manifest.d.ts +30 -0
  166. package/dist/commands/manifest.d.ts.map +1 -0
  167. package/dist/commands/manifest.js +121 -0
  168. package/dist/commands/manifest.js.map +1 -0
  169. package/dist/commands/model.d.ts +2 -3
  170. package/dist/commands/model.d.ts.map +1 -1
  171. package/dist/commands/model.js +57 -20
  172. package/dist/commands/model.js.map +1 -1
  173. package/dist/commands/new.d.ts.map +1 -1
  174. package/dist/commands/new.js +10 -2
  175. package/dist/commands/new.js.map +1 -1
  176. package/dist/commands/registry.d.ts +2 -2
  177. package/dist/commands/registry.d.ts.map +1 -1
  178. package/dist/commands/registry.js +1 -2
  179. package/dist/commands/registry.js.map +1 -1
  180. package/dist/commands/sandbox.d.ts.map +1 -1
  181. package/dist/commands/sandbox.js +23 -17
  182. package/dist/commands/sandbox.js.map +1 -1
  183. package/dist/commands/text.d.ts +2 -0
  184. package/dist/commands/text.d.ts.map +1 -0
  185. package/dist/commands/text.js +16 -0
  186. package/dist/commands/text.js.map +1 -0
  187. package/dist/commands/types.d.ts +70 -2
  188. package/dist/commands/types.d.ts.map +1 -1
  189. package/dist/commands/types.js.map +1 -1
  190. package/dist/config.d.ts +1 -3
  191. package/dist/config.d.ts.map +1 -1
  192. package/dist/config.js +102 -95
  193. package/dist/config.js.map +1 -1
  194. package/dist/env-manifest.d.ts +28 -0
  195. package/dist/env-manifest.d.ts.map +1 -0
  196. package/dist/env-manifest.js +214 -0
  197. package/dist/env-manifest.js.map +1 -0
  198. package/dist/events.d.ts.map +1 -1
  199. package/dist/events.js +9 -73
  200. package/dist/events.js.map +1 -1
  201. package/dist/execution-resolver.d.ts +7 -6
  202. package/dist/execution-resolver.d.ts.map +1 -1
  203. package/dist/execution-resolver.js +105 -110
  204. package/dist/execution-resolver.js.map +1 -1
  205. package/dist/harness/auth.d.ts +2 -1
  206. package/dist/harness/auth.d.ts.map +1 -1
  207. package/dist/harness/auth.js +6 -0
  208. package/dist/harness/auth.js.map +1 -1
  209. package/dist/harness/event-format.d.ts +25 -0
  210. package/dist/harness/event-format.d.ts.map +1 -0
  211. package/dist/harness/event-format.js +159 -0
  212. package/dist/harness/event-format.js.map +1 -0
  213. package/dist/harness/extensions/blockkit.d.ts +19 -0
  214. package/dist/harness/extensions/blockkit.d.ts.map +1 -0
  215. package/dist/harness/extensions/blockkit.js +42 -0
  216. package/dist/harness/extensions/blockkit.js.map +1 -0
  217. package/dist/harness/extensions/loader.d.ts +25 -48
  218. package/dist/harness/extensions/loader.d.ts.map +1 -1
  219. package/dist/harness/extensions/loader.js +373 -113
  220. package/dist/harness/extensions/loader.js.map +1 -1
  221. package/dist/harness/extensions/registry.d.ts +75 -2
  222. package/dist/harness/extensions/registry.d.ts.map +1 -1
  223. package/dist/harness/extensions/registry.js +239 -0
  224. package/dist/harness/extensions/registry.js.map +1 -1
  225. package/dist/harness/extensions/types.d.ts +318 -25
  226. package/dist/harness/extensions/types.d.ts.map +1 -1
  227. package/dist/harness/extensions/types.js.map +1 -1
  228. package/dist/harness/index.d.ts +18 -8
  229. package/dist/harness/index.d.ts.map +1 -1
  230. package/dist/harness/index.js +7 -4
  231. package/dist/harness/index.js.map +1 -1
  232. package/dist/harness/models.d.ts +7 -4
  233. package/dist/harness/models.d.ts.map +1 -1
  234. package/dist/harness/models.js +10 -0
  235. package/dist/harness/models.js.map +1 -1
  236. package/dist/harness/runner.d.ts +50 -54
  237. package/dist/harness/runner.d.ts.map +1 -1
  238. package/dist/harness/runner.js +230 -44
  239. package/dist/harness/runner.js.map +1 -1
  240. package/dist/harness/session-store.d.ts +9 -5
  241. package/dist/harness/session-store.d.ts.map +1 -1
  242. package/dist/harness/session-store.js +131 -30
  243. package/dist/harness/session-store.js.map +1 -1
  244. package/dist/harness/settings.d.ts +2 -20
  245. package/dist/harness/settings.d.ts.map +1 -1
  246. package/dist/harness/settings.js +11 -0
  247. package/dist/harness/settings.js.map +1 -1
  248. package/dist/harness/skills.d.ts +2 -29
  249. package/dist/harness/skills.d.ts.map +1 -1
  250. package/dist/harness/skills.js.map +1 -1
  251. package/dist/harness/subagent-profiles.d.ts +8 -0
  252. package/dist/harness/subagent-profiles.d.ts.map +1 -0
  253. package/dist/harness/subagent-profiles.js +290 -0
  254. package/dist/harness/subagent-profiles.js.map +1 -0
  255. package/dist/harness/subagent-runner.d.ts +39 -0
  256. package/dist/harness/subagent-runner.d.ts.map +1 -0
  257. package/dist/harness/subagent-runner.js +615 -0
  258. package/dist/harness/subagent-runner.js.map +1 -0
  259. package/dist/harness/types.d.ts +263 -1
  260. package/dist/harness/types.d.ts.map +1 -1
  261. package/dist/harness/types.js.map +1 -1
  262. package/dist/harness/usage.d.ts +6 -0
  263. package/dist/harness/usage.d.ts.map +1 -0
  264. package/dist/harness/usage.js +32 -0
  265. package/dist/harness/usage.js.map +1 -0
  266. package/dist/index.d.ts +33 -8
  267. package/dist/index.d.ts.map +1 -1
  268. package/dist/index.js +20 -6
  269. package/dist/index.js.map +1 -1
  270. package/dist/main.js +253 -109
  271. package/dist/main.js.map +1 -1
  272. package/dist/observability/instrument.js +6 -4
  273. package/dist/observability/instrument.js.map +1 -1
  274. package/dist/observability/sentry.d.ts.map +1 -1
  275. package/dist/observability/sentry.js +3 -2
  276. package/dist/observability/sentry.js.map +1 -1
  277. package/dist/packages/admin.d.ts +17 -0
  278. package/dist/packages/admin.d.ts.map +1 -0
  279. package/dist/packages/admin.js +96 -0
  280. package/dist/packages/admin.js.map +1 -0
  281. package/dist/packages/index.d.ts +6 -0
  282. package/dist/packages/index.d.ts.map +1 -0
  283. package/dist/packages/index.js +6 -0
  284. package/dist/packages/index.js.map +1 -0
  285. package/dist/packages/inspect.d.ts +11 -0
  286. package/dist/packages/inspect.d.ts.map +1 -0
  287. package/dist/packages/inspect.js +100 -0
  288. package/dist/packages/inspect.js.map +1 -0
  289. package/dist/packages/materialize.d.ts +39 -0
  290. package/dist/packages/materialize.d.ts.map +1 -0
  291. package/dist/packages/materialize.js +300 -0
  292. package/dist/packages/materialize.js.map +1 -0
  293. package/dist/packages/resolve.d.ts +25 -0
  294. package/dist/packages/resolve.d.ts.map +1 -0
  295. package/dist/packages/resolve.js +212 -0
  296. package/dist/packages/resolve.js.map +1 -0
  297. package/dist/packages/source.d.ts +33 -0
  298. package/dist/packages/source.d.ts.map +1 -0
  299. package/dist/packages/source.js +177 -0
  300. package/dist/packages/source.js.map +1 -0
  301. package/dist/packages/types.d.ts +104 -0
  302. package/dist/packages/types.d.ts.map +1 -0
  303. package/dist/packages/types.js +2 -0
  304. package/dist/packages/types.js.map +1 -0
  305. package/dist/provisioner.d.ts.map +1 -1
  306. package/dist/provisioner.js +6 -6
  307. package/dist/provisioner.js.map +1 -1
  308. package/dist/runtime/conversation-runtime.d.ts +1 -1
  309. package/dist/runtime/conversation-runtime.d.ts.map +1 -1
  310. package/dist/runtime/conversation-runtime.js +481 -98
  311. package/dist/runtime/conversation-runtime.js.map +1 -1
  312. package/dist/runtime/session-lifecycle.d.ts +28 -0
  313. package/dist/runtime/session-lifecycle.d.ts.map +1 -0
  314. package/dist/runtime/session-lifecycle.js +161 -0
  315. package/dist/runtime/session-lifecycle.js.map +1 -0
  316. package/dist/runtime/types.d.ts +45 -5
  317. package/dist/runtime/types.d.ts.map +1 -1
  318. package/dist/runtime/types.js.map +1 -1
  319. package/dist/sandbox/cloudflare.d.ts +3 -0
  320. package/dist/sandbox/cloudflare.d.ts.map +1 -1
  321. package/dist/sandbox/cloudflare.js +11 -0
  322. package/dist/sandbox/cloudflare.js.map +1 -1
  323. package/dist/sandbox/container.d.ts +4 -0
  324. package/dist/sandbox/container.d.ts.map +1 -1
  325. package/dist/sandbox/container.js +12 -2
  326. package/dist/sandbox/container.js.map +1 -1
  327. package/dist/sandbox/firecracker.d.ts +3 -0
  328. package/dist/sandbox/firecracker.d.ts.map +1 -1
  329. package/dist/sandbox/firecracker.js +11 -1
  330. package/dist/sandbox/firecracker.js.map +1 -1
  331. package/dist/sandbox/gondolin.d.ts +57 -0
  332. package/dist/sandbox/gondolin.d.ts.map +1 -0
  333. package/dist/sandbox/gondolin.js +764 -0
  334. package/dist/sandbox/gondolin.js.map +1 -0
  335. package/dist/sandbox/host.d.ts +4 -0
  336. package/dist/sandbox/host.d.ts.map +1 -1
  337. package/dist/sandbox/host.js +52 -0
  338. package/dist/sandbox/host.js.map +1 -1
  339. package/dist/sandbox/identity.d.ts +16 -0
  340. package/dist/sandbox/identity.d.ts.map +1 -0
  341. package/dist/sandbox/identity.js +42 -0
  342. package/dist/sandbox/identity.js.map +1 -0
  343. package/dist/sandbox/image.d.ts.map +1 -1
  344. package/dist/sandbox/image.js +1 -0
  345. package/dist/sandbox/image.js.map +1 -1
  346. package/dist/sandbox/index.d.ts +15 -4
  347. package/dist/sandbox/index.d.ts.map +1 -1
  348. package/dist/sandbox/index.js +25 -3
  349. package/dist/sandbox/index.js.map +1 -1
  350. package/dist/sandbox/path-context.js +18 -8
  351. package/dist/sandbox/path-context.js.map +1 -1
  352. package/dist/sandbox/types.d.ts +65 -1
  353. package/dist/sandbox/types.d.ts.map +1 -1
  354. package/dist/sandbox/types.js.map +1 -1
  355. package/dist/sandbox/utils.d.ts +12 -0
  356. package/dist/sandbox/utils.d.ts.map +1 -1
  357. package/dist/sandbox/utils.js +38 -0
  358. package/dist/sandbox/utils.js.map +1 -1
  359. package/dist/sessions/chat-history-sync.d.ts +25 -0
  360. package/dist/sessions/chat-history-sync.d.ts.map +1 -0
  361. package/dist/sessions/{agent-memory-file-manager.js → chat-history-sync.js} +98 -124
  362. package/dist/sessions/chat-history-sync.js.map +1 -0
  363. package/dist/sessions/conversation-log.d.ts +9 -0
  364. package/dist/sessions/conversation-log.d.ts.map +1 -0
  365. package/dist/sessions/conversation-log.js +47 -0
  366. package/dist/sessions/conversation-log.js.map +1 -0
  367. package/dist/sessions/history-line.d.ts +20 -0
  368. package/dist/sessions/history-line.d.ts.map +1 -0
  369. package/dist/sessions/history-line.js +24 -0
  370. package/dist/sessions/history-line.js.map +1 -0
  371. package/dist/sessions/policy.d.ts.map +1 -1
  372. package/dist/sessions/policy.js +5 -3
  373. package/dist/sessions/policy.js.map +1 -1
  374. package/dist/sessions/rotation.d.ts +2 -0
  375. package/dist/sessions/rotation.d.ts.map +1 -0
  376. package/dist/sessions/rotation.js +39 -0
  377. package/dist/sessions/rotation.js.map +1 -0
  378. package/dist/sessions/session-key.d.ts +40 -0
  379. package/dist/sessions/session-key.d.ts.map +1 -0
  380. package/dist/sessions/session-key.js +92 -0
  381. package/dist/sessions/session-key.js.map +1 -0
  382. package/dist/sessions/store.d.ts.map +1 -1
  383. package/dist/sessions/store.js +40 -18
  384. package/dist/sessions/store.js.map +1 -1
  385. package/dist/sessions/types.d.ts +17 -4
  386. package/dist/sessions/types.d.ts.map +1 -1
  387. package/dist/sessions/types.js.map +1 -1
  388. package/dist/settings-mutation.d.ts +8 -0
  389. package/dist/settings-mutation.d.ts.map +1 -0
  390. package/dist/settings-mutation.js +43 -0
  391. package/dist/settings-mutation.js.map +1 -0
  392. package/dist/subagent-progress.d.ts +43 -0
  393. package/dist/subagent-progress.d.ts.map +1 -0
  394. package/dist/subagent-progress.js +220 -0
  395. package/dist/subagent-progress.js.map +1 -0
  396. package/dist/tools/bash.d.ts +3 -1
  397. package/dist/tools/bash.d.ts.map +1 -1
  398. package/dist/tools/bash.js +25 -17
  399. package/dist/tools/bash.js.map +1 -1
  400. package/dist/tools/edit.d.ts.map +1 -1
  401. package/dist/tools/edit.js +10 -12
  402. package/dist/tools/edit.js.map +1 -1
  403. package/dist/tools/event.d.ts +1 -1
  404. package/dist/tools/event.d.ts.map +1 -1
  405. package/dist/tools/event.js +53 -43
  406. package/dist/tools/event.js.map +1 -1
  407. package/dist/tools/generate-image.d.ts +17 -0
  408. package/dist/tools/generate-image.d.ts.map +1 -0
  409. package/dist/tools/generate-image.js +63 -0
  410. package/dist/tools/generate-image.js.map +1 -0
  411. package/dist/tools/host-fn-tool.d.ts +21 -0
  412. package/dist/tools/host-fn-tool.d.ts.map +1 -0
  413. package/dist/tools/host-fn-tool.js +32 -0
  414. package/dist/tools/host-fn-tool.js.map +1 -0
  415. package/dist/tools/index.d.ts +14 -2
  416. package/dist/tools/index.d.ts.map +1 -1
  417. package/dist/tools/index.js +28 -3
  418. package/dist/tools/index.js.map +1 -1
  419. package/dist/tools/react.d.ts +15 -0
  420. package/dist/tools/react.d.ts.map +1 -0
  421. package/dist/tools/react.js +29 -0
  422. package/dist/tools/react.js.map +1 -0
  423. package/dist/tools/read.d.ts +1 -0
  424. package/dist/tools/read.d.ts.map +1 -1
  425. package/dist/tools/read.js +37 -31
  426. package/dist/tools/read.js.map +1 -1
  427. package/dist/tools/sandbox.d.ts +2 -2
  428. package/dist/tools/sandbox.d.ts.map +1 -1
  429. package/dist/tools/sandbox.js +14 -9
  430. package/dist/tools/sandbox.js.map +1 -1
  431. package/dist/tools/subagent-slots.d.ts +28 -0
  432. package/dist/tools/subagent-slots.d.ts.map +1 -0
  433. package/dist/tools/subagent-slots.js +72 -0
  434. package/dist/tools/subagent-slots.js.map +1 -0
  435. package/dist/tools/subagent.d.ts +54 -0
  436. package/dist/tools/subagent.d.ts.map +1 -0
  437. package/dist/tools/subagent.js +401 -0
  438. package/dist/tools/subagent.js.map +1 -0
  439. package/dist/tools/types.d.ts +40 -6
  440. package/dist/tools/types.d.ts.map +1 -1
  441. package/dist/tools/types.js.map +1 -1
  442. package/dist/tools/write.d.ts.map +1 -1
  443. package/dist/tools/write.js +2 -8
  444. package/dist/tools/write.js.map +1 -1
  445. package/dist/trigger.d.ts.map +1 -1
  446. package/dist/trigger.js +1 -2
  447. package/dist/trigger.js.map +1 -1
  448. package/dist/types.d.ts +232 -32
  449. package/dist/types.d.ts.map +1 -1
  450. package/dist/types.js.map +1 -1
  451. package/dist/utils/date.d.ts +1 -1
  452. package/dist/utils/date.js +1 -1
  453. package/dist/utils/date.js.map +1 -1
  454. package/dist/vault/disabled.d.ts +9 -0
  455. package/dist/vault/disabled.d.ts.map +1 -0
  456. package/dist/vault/disabled.js +22 -0
  457. package/dist/vault/disabled.js.map +1 -0
  458. package/dist/vault/index.d.ts +0 -2
  459. package/dist/vault/index.d.ts.map +1 -1
  460. package/dist/vault/index.js +30 -33
  461. package/dist/vault/index.js.map +1 -1
  462. package/dist/vault/injection.d.ts +10 -0
  463. package/dist/vault/injection.d.ts.map +1 -0
  464. package/dist/vault/injection.js +30 -0
  465. package/dist/vault/injection.js.map +1 -0
  466. package/dist/vault/policy.d.ts +20 -0
  467. package/dist/vault/policy.d.ts.map +1 -0
  468. package/dist/vault/policy.js +20 -0
  469. package/dist/vault/policy.js.map +1 -0
  470. package/dist/vault/types.d.ts +4 -2
  471. package/dist/vault/types.d.ts.map +1 -1
  472. package/dist/vault/types.js.map +1 -1
  473. package/dist/web/admin/portal.d.ts +17 -2
  474. package/dist/web/admin/portal.d.ts.map +1 -1
  475. package/dist/web/admin/portal.js +385 -155
  476. package/dist/web/admin/portal.js.map +1 -1
  477. package/dist/web/admin/types.d.ts +18 -0
  478. package/dist/web/admin/types.d.ts.map +1 -1
  479. package/dist/web/admin/types.js.map +1 -1
  480. package/dist/web/agent-events/portal.d.ts.map +1 -1
  481. package/dist/web/agent-events/portal.js +2 -1
  482. package/dist/web/agent-events/portal.js.map +1 -1
  483. package/dist/web/login/oauth.d.ts +2 -3
  484. package/dist/web/login/oauth.d.ts.map +1 -1
  485. package/dist/web/login/oauth.js +0 -31
  486. package/dist/web/login/oauth.js.map +1 -1
  487. package/dist/web/login/portal.js +1 -1
  488. package/dist/web/login/portal.js.map +1 -1
  489. package/dist/web/login/types.d.ts +0 -11
  490. package/dist/web/login/types.d.ts.map +1 -1
  491. package/dist/web/login/types.js.map +1 -1
  492. package/dist/web/portal-shell.d.ts +4 -0
  493. package/dist/web/portal-shell.d.ts.map +1 -0
  494. package/dist/{portal-shell.js → web/portal-shell.js} +2 -2
  495. package/dist/web/portal-shell.js.map +1 -0
  496. package/dist/web/server.d.ts.map +1 -1
  497. package/dist/web/server.js +7 -0
  498. package/dist/web/server.js.map +1 -1
  499. package/dist/web/session-view/command.d.ts.map +1 -1
  500. package/dist/web/session-view/command.js +4 -1
  501. package/dist/web/session-view/command.js.map +1 -1
  502. package/dist/web/session-view/portal.d.ts.map +1 -1
  503. package/dist/web/session-view/portal.js +4 -3
  504. package/dist/web/session-view/portal.js.map +1 -1
  505. package/dist/web/session-view/service.d.ts.map +1 -1
  506. package/dist/web/session-view/service.js +2 -1
  507. package/dist/web/session-view/service.js.map +1 -1
  508. package/dist/web/session-view/types.d.ts +2 -1
  509. package/dist/web/session-view/types.d.ts.map +1 -1
  510. package/dist/web/session-view/types.js.map +1 -1
  511. package/dist/workspace-projection/index.d.ts +5 -0
  512. package/dist/workspace-projection/index.d.ts.map +1 -0
  513. package/dist/workspace-projection/index.js +71 -0
  514. package/dist/workspace-projection/index.js.map +1 -0
  515. package/dist/workspace-projection/types.d.ts +7 -0
  516. package/dist/workspace-projection/types.d.ts.map +1 -0
  517. package/dist/workspace-projection/types.js +2 -0
  518. package/dist/workspace-projection/types.js.map +1 -0
  519. package/package.json +28 -15
  520. package/dist/adapters/streaming.d.ts +0 -18
  521. package/dist/adapters/streaming.d.ts.map +0 -1
  522. package/dist/adapters/streaming.js +0 -44
  523. package/dist/adapters/streaming.js.map +0 -1
  524. package/dist/download.d.ts.map +0 -1
  525. package/dist/download.js.map +0 -1
  526. package/dist/model-registry.d.ts +0 -4
  527. package/dist/model-registry.d.ts.map +0 -1
  528. package/dist/model-registry.js +0 -7
  529. package/dist/model-registry.js.map +0 -1
  530. package/dist/portal-shell.d.ts +0 -4
  531. package/dist/portal-shell.d.ts.map +0 -1
  532. package/dist/portal-shell.js.map +0 -1
  533. package/dist/runtime/agent-run-controller.d.ts +0 -31
  534. package/dist/runtime/agent-run-controller.d.ts.map +0 -1
  535. package/dist/runtime/agent-run-controller.js +0 -195
  536. package/dist/runtime/agent-run-controller.js.map +0 -1
  537. package/dist/sessions/agent-memory-file-manager.d.ts +0 -19
  538. package/dist/sessions/agent-memory-file-manager.d.ts.map +0 -1
  539. package/dist/sessions/agent-memory-file-manager.js.map +0 -1
  540. package/dist/vault/routing.d.ts +0 -3
  541. package/dist/vault/routing.d.ts.map +0 -1
  542. package/dist/vault/routing.js +0 -13
  543. package/dist/vault/routing.js.map +0 -1
  544. /package/dist/{download.d.ts → cli/download.d.ts} +0 -0
  545. /package/dist/{download.js → cli/download.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -9,6 +9,569 @@ any release.
9
9
 
10
10
  ## [Unreleased]
11
11
 
12
+ ## [1.0.0-beta.30]
13
+
14
+ ### Added
15
+
16
+ - Add role-based subagent profiles for software engineering, DevOps, data science, account management, business development, creative production, advertising operations, and bounded general work.
17
+ - Add a generated cross-module hardening report covering module boundaries, coupling, and verification evidence.
18
+
19
+ ### Changed
20
+
21
+ - Stabilize exported module interfaces and route executor-dependent file staging through the active execution transport.
22
+ - Deepen progressive response rendering and keep Slack E2E turns bound to the runner lifecycle.
23
+
24
+ ### Fixed
25
+
26
+ - Prevent extension packages, attachment bridges, vault keys, sandbox paths, and event inputs from escaping their intended boundaries.
27
+ - Close runner construction, cached-runner invalidation, Gondolin projection, and automatic Session Dream settlement races.
28
+ - Validate model identifiers, event timezones, package refreshes, and shared-history watermarks consistently.
29
+ - Keep reset history bounded by reset time and exclude queued future turns from session history.
30
+ - Prevent Slack from posting bare working-indicator updates.
31
+
32
+ ### Security
33
+
34
+ - Harden Git package materialization, extension subpaths, filesystem bridges, and sandbox path validation against traversal and symlink escapes.
35
+
36
+ ### Tests
37
+
38
+ - Add regression coverage for declaration surfaces, session history boundaries, runtime races, event validation, package materialization, and Slack runner integration.
39
+
40
+ ## [1.0.0-beta.29]
41
+
42
+ ### Added
43
+
44
+ - Add Git-sourced extension packages with global and conversation scopes, package mount resolution, CLI inspection, and admin portal management.
45
+ - Add native Slack markdown-block responses and the `slack_blockkit` tool for interactive Block Kit messages.
46
+ - Add interactive Block Kit APIs for extensions, with a poll extension example.
47
+ - Add named subagent profiles, built-in workflow specialists, per-profile tool grants, and a bounded Slack progress dashboard.
48
+ - Preserve durable memory with Session Dream before biweekly shared-channel session rotation, using the same conversation-scoped maintenance path as `/new`.
49
+
50
+ ### Changed
51
+
52
+ - Run Gondolin runtimes inside the mikan process instead of detached workers. Restarts now boot fresh VMs on demand, and shutdown closes every VM so projected files sync back first.
53
+ - Remove Gondolin runtime inventories, worker heartbeats, and the `stateDir` argument from `configureGondolinRuntime`.
54
+ - Render standard GFM response prose as native Slack markdown blocks while keeping progressive response updates behind a single lifecycle.
55
+
56
+ ### Fixed
57
+
58
+ - Keep the current session active and preserve saved memory when Session Dream cannot finish.
59
+ - Bound subagent cancellation, invocation modes, profile labels, and Block Kit payloads; clamp long labels with an ellipsis instead of rejecting calls.
60
+ - Show the selected subagent profile and its tool grant consistently in progress output.
61
+ - Render the Slack subagent dashboard as a response source rather than escaped mrkdwn.
62
+ - Isolate Git test fixtures from an ambient `GIT_DIR`.
63
+
64
+ ### Tests
65
+
66
+ - Add coverage for extension packages, extension Block Kit APIs, native Slack rendering, subagent profiles and progress, Session Dream rotation, and in-process Gondolin lifecycle behavior.
67
+
68
+ ## [1.0.0-beta.28]
69
+
70
+ ### Removed
71
+
72
+ - Remove Gondolin remote-worker and fleet support. `sandbox.gondolin.remote`, `gondolin:remote`, and `--worker-token` are no longer supported; use the local `gondolin:default` sandbox instead.
73
+
74
+ ### Fixed
75
+
76
+ - Preserve Slack mrkdwn links whose labels contain spaces when rendering Block Kit responses.
77
+ - Reuse the existing Slack progress message when streaming the final response, preventing duplicate or partially completed bot messages.
78
+
79
+ ## [1.0.0-beta.27]
80
+
81
+ ### Added
82
+
83
+ - Preserve concrete long-term memory before `/new` creates a fresh DM session, while keeping transient context and pre-reset platform history out of the new model context.
84
+
85
+ ### Changed
86
+
87
+ - Serialize workspace-mutating tools and memory-maintenance runs so file updates, resets, and incoming messages have deterministic ordering.
88
+ - Align extension context and message hooks with the active agent lifecycle, including per-run system prompt rewrites that preserve dynamically rebuilt memory, skills, and sandbox context.
89
+
90
+ ### Fixed
91
+
92
+ - Keep extension-rewritten messages consistent across tool execution, persistence, provider context, and lifecycle events.
93
+ - Account for compaction model usage in run budgets and reject corrupted session trees instead of silently accepting broken history.
94
+ - Wait for active runs before resetting sessions, and prevent old runs from writing after `/new`.
95
+ - Keep long Slack continuations in their thread and preserve mrkdwn links when rendering Block Kit text.
96
+
97
+ ### Tests
98
+
99
+ - Add real Slack coverage for memory-preserving `/pi-new`, long threaded responses, and Block Kit markdown links.
100
+ - Add regression coverage for harness message identity, dynamic prompts, compaction budgets, session integrity, runtime settlement, and mutation-tool ordering.
101
+
102
+ ## [1.0.0-beta.26]
103
+
104
+ ### Fixed
105
+
106
+ - Make the subagent tool schema compatible with OpenAI by exposing an object at the function parameter root.
107
+
108
+ ### Tests
109
+
110
+ - Add regression coverage for OpenAI-compatible subagent function schemas.
111
+
112
+ ## [1.0.0-beta.25]
113
+
114
+ ### Changed
115
+
116
+ - Temporarily remove the Agent Sandbox runtime, SDK, Kubernetes client, Helm deployment, runtime images, and related release workflow from the npm release.
117
+ - Restore the Gondolin, Gondolin remote-worker, and Firecracker sandbox implementations while Agent Sandbox packaging is redesigned separately.
118
+
119
+ ### Fixed
120
+
121
+ - Restore global npm installation and CLI startup after the broken Agent Sandbox dependencies in `1.0.0-beta.23` and `1.0.0-beta.24`.
122
+
123
+ ### Tests
124
+
125
+ - Add a real `npm install -g --prefix` smoke test for the packed tarball, enforce a 2 MiB size ceiling, and gate CI and npm publishing on the result.
126
+
127
+ ## [1.0.0-beta.24]
128
+
129
+ ### Fixed
130
+
131
+ - Bundle the vendored Agent Sandbox SDK in the npm package so global installs no longer fail on a missing repository-local tarball.
132
+ - Reuse mikan's direct Kubernetes client dependency as an SDK peer instead of recursively bundling a duplicate dependency tree, keeping the published tarball under 1 MiB.
133
+
134
+ ### Tests
135
+
136
+ - Add a pack-install smoke test that imports the bundled SDK, runs the packed CLI, enforces a 2 MiB size ceiling, and gates both CI and npm publishing.
137
+
138
+ ## [1.0.0-beta.23]
139
+
140
+ ### Added
141
+
142
+ - Add Kubernetes Agent Sandbox execution with mandatory `kata-qemu` isolation, a pinned TypeScript client, managed idle cleanup, and shared workspace support.
143
+ - Add a Helm chart with GKE Standard, Linux k3s, Colima, and router-only profiles; GKE supports Filestore CSI on an explicitly configured VPC.
144
+ - Publish mikan, the Agent Sandbox runtime, and the pinned router source build to GHCR through a release-aware image workflow.
145
+ - Expose detailed subagent input, output, cache, reasoning, and cost usage while retaining the existing summary aliases.
146
+
147
+ ### Changed
148
+
149
+ - Replace Gondolin and Firecracker sandbox modes with `agent-sandbox:<warm-pool>`.
150
+ - Make Helm the supported Kubernetes deployment interface; the default and Colima profiles use host execution, while GKE and k3s profiles require Kata and RWX storage.
151
+ - Include delegated subagent usage in parent run statistics and budget accounting.
152
+
153
+ ### Removed
154
+
155
+ - Remove the standalone `mikan-worker`, remote worker fleet, dial-home gateway, Gondolin runtime, Firecracker executor, worker CI, and worker release binaries. Existing Gondolin deployments must move to the Agent Sandbox Helm deployment; no automatic deployment or state migration is provided.
156
+
157
+ ### Security
158
+
159
+ - Require Kata rather than silently falling back to runc, restrict the optional router to the configured mikan namespace with a NetworkPolicy, and keep generated PVCs by default on Helm uninstall.
160
+ - Update transitive `js-yaml` to 4.3.0 to address the merge-key chain denial-of-service advisory.
161
+
162
+ ### Tests
163
+
164
+ - Add Agent Sandbox unit coverage, Helm profile assertions, pinned router image builds, and full GKE validation covering Kata, Filestore RWX, browser recording, aborts, recovery, Slack, and LLM tool execution.
165
+ - Add coverage for detailed subagent usage, compatibility aliases, failure paths, extension results, and parent budget accounting.
166
+
167
+ ## [1.0.0-beta.22]
168
+
169
+ ### Added
170
+
171
+ - Let subagents opt into a normalized reference snapshot of the active parent conversation with `parentContext`, while keeping fresh isolated context as the default.
172
+
173
+ ### Changed
174
+
175
+ - Raise default subagent limits from 8 to 100 turns, $0.50 to $10, and 2 to 10 minutes; return concrete budget or timeout reasons.
176
+ - Apply the process-wide subagent concurrency ceiling to both tool- and extension-initiated runs, with cancellation while queued and usage attribution only to the active parent run.
177
+ - Use collision-safe hashed keys for credential authorization and runtime resources. Exact legacy host and shared-container credentials remain readable, but users of ambiguous legacy managed-sandbox keys may need to run `/login` again.
178
+ - Reject unsupported vault file mounts and mounts that overlap workspace or other credential targets.
179
+ - Extract workspace projection and session lifecycle responsibilities into focused modules without intended runtime behavior changes.
180
+
181
+ ### Fixed
182
+
183
+ - Reject session keys belonging to another conversation and unsafe conversation or thread identifiers.
184
+ - Prevent session pointers and thread files from escaping their owning directory or resolving through symlinks.
185
+ - Process Slack messages posted by known human users through user tokens even when Slack includes the posting app's `bot_id`; bot-authored messages remain ignored.
186
+ - Clearly report subagent budget exhaustion instead of returning a generic incomplete status.
187
+
188
+ ### Tests
189
+
190
+ - Add Slack E2E coverage for DMs, idle stop, thread isolation, busy queues, images, and multi-file uploads.
191
+ - Add unit coverage for session identity and path safety, collision-safe sandbox identities, vault mount policy, session lifecycle, normalized subagent context, shared slots, cancellation, and budget reporting.
192
+
193
+ ## [1.0.0-beta.21]
194
+
195
+ ### Added
196
+
197
+ - Fold each subagent's tokens and cost into the parent run's tally (`MikanAgentSession.recordExternalUsage`), so delegated spend counts against the parent run's budget instead of staying invisible to it.
198
+ - Add a process-wide subagent fan-out ceiling shared across conversations.
199
+ - Add `mikan --help` and a generated `mikan env` inventory from the daemon environment manifest.
200
+ - Make the working-directory argument optional, defaulting to `<state-dir>/workspace`.
201
+ - Add a public Gondolin runtime bootstrap seam for embedders.
202
+
203
+ ### Changed
204
+
205
+ - Subagent runs never reject: request validation failures (unknown tools, invalid budgets, empty tasks, nested runs) now resolve to `failed` results, so one bad request in a `tasks`/`dag` batch can no longer orphan in-flight sibling subagents.
206
+ - Cap parallel `tasks[]` batches at 4 concurrent subagents (the same limit as DAG mode) and run DAG waves through a slot pool instead of chunk barriers.
207
+ - Report a subagent final response with no text as `failed` instead of `completed` with empty output.
208
+ - Enforce parent budgets immediately when subagent usage is folded into the parent run.
209
+ - Apply one state-directory precedence rule across boot, extensions, Sentry, and runtime readers.
210
+ - Refuse model and sandbox settings updates while a conversation is busy, and invalidate affected cached runners consistently.
211
+ - Drive PM2 environment configuration from `~/.mikan/mikan.env` instead of inline secrets.
212
+
213
+ ### Fixed
214
+
215
+ - Harden Gondolin dial-home reconnects after transport failures and stale sessions.
216
+ - Reject invalid one-shot event timestamps consistently across all event writers.
217
+ - Apply global model settings to idle conversations and report busy conversations as stale.
218
+
219
+ ### Security
220
+
221
+ - Keep PM2 secrets in an owner-only file outside repository trees and make the PM2 template supervision-only.
222
+
223
+ ### Tests
224
+
225
+ - Add coverage for subagent accounting and concurrency, CLI and environment manifests, settings mutation, Gondolin reconnects and contracts, event formatting, and worker state layout.
226
+
227
+ ## [1.0.0-beta.20]
228
+
229
+ ### Fixed
230
+
231
+ - Validate subagent `outputSchema` correctly when it arrives as plain JSON Schema (the only form tool calls can carry), instead of throwing `ValueCheckUnknownTypeError` because it lacks TypeBox's `Kind` metadata.
232
+
233
+ ### Tests
234
+
235
+ - Add coverage for plain JSON Schema hydration, nested objects, arrays, unions, and validation failures.
236
+
237
+ ## [1.0.0-beta.19]
238
+
239
+ ### Added
240
+
241
+ - Add fresh in-memory subagents for the main agent and extensions, with explicit tools, budgets, structured output, parallel batches, and bounded DAG orchestration.
242
+ - Stream debounced subagent node progress through the shared Slack, Discord, and Telegram response lifecycle.
243
+
244
+ ### Changed
245
+
246
+ - Let final responses at the LLM-call cap complete without tripping the run budget when no continuation is required.
247
+
248
+ ### Fixed
249
+
250
+ - Install worker binaries from the newest GitHub release that contains a matching asset, including prereleases.
251
+ - Restore generic Google Workspace CLI credential mounts in sandbox vaults.
252
+
253
+ ### Tests
254
+
255
+ - Add coverage for subagent isolation, recursion guards, budgets, structured output, parallel execution, DAG validation and dependency flow, and platform-neutral progress rendering.
256
+
257
+ ## [1.0.0-beta.18]
258
+
259
+ ### Added
260
+
261
+ - Add an idempotent Debian and Ubuntu worker-host initialization script.
262
+ - Add persistent `mikan-worker` installation as a delegated systemd service.
263
+ - Add NFS export detection with OS-specific setup guidance for `gondolin:remote` workspaces.
264
+ - Ship host-side vault credential files securely to remote workers without placing them in the shared workspace.
265
+ - Add bounded shared-workspace health probes and worker degradation reporting.
266
+
267
+ ### Changed
268
+
269
+ - Require each Gondolin remote gateway and static worker to declare its shared `workspaceRoot`.
270
+ - Exclude workers with unhealthy shared workspaces from new placements and restore them after a healthy heartbeat.
271
+
272
+ ### Fixed
273
+
274
+ - Fail remote execution with actionable diagnostics instead of hanging on dead shared-workspace mounts.
275
+ - Create runtime cgroups beneath the worker's delegated cgroup and report missing `Delegate=yes` configuration.
276
+ - Verify downloaded worker binaries against the matching release checksum filename.
277
+ - Validate `gondolin:remote` only after gateway and worker transports are configured.
278
+
279
+ ### Security
280
+
281
+ - Materialize remote credential files as owner-only, read-only runtime files outside shared workspaces.
282
+
283
+ ### Tests
284
+
285
+ - Add coverage for worker host services, cgroup delegation, workspace health, credential delivery, NFS advice, remote validation, and idle execution deadlines.
286
+
287
+ ## [1.0.0-beta.17]
288
+
289
+ ### Added
290
+
291
+ - Add `gondolin:remote` for scheduling sandbox runtimes across a fleet of Linux/KVM workers.
292
+ - Add a standalone `mikan-worker` daemon with mutual TLS, fenced leases, crash recovery, capacity-aware placement, draining, and sticky conversation assignment.
293
+ - Add dial-home worker enrollment through one-time join tokens and a mikan-hosted gateway.
294
+ - Add private workspace projection, vault injection, resource limits, lifecycle reconciliation, and drift recovery to Gondolin runtimes.
295
+ - Add worker installation, enrollment, operations, and remote quickstart documentation with a one-command end-to-end smoke test.
296
+ - Publish `mikan-worker` binaries and checksums with GitHub releases.
297
+
298
+ ### Changed
299
+
300
+ - Rename the preview sandbox mode from `microvm:default` to `gondolin:default` and the image build command to `npm run gondolin:image:build`.
301
+
302
+ ### Fixed
303
+
304
+ - Project mounted files correctly into Gondolin guests.
305
+ - Refresh rotated credentials when Gondolin runtimes are recreated.
306
+
307
+ ### Security
308
+
309
+ - Authenticate remote workers with mutual TLS and fence stale workers through expiring leases.
310
+ - Keep enrollment tokens one-time and store worker credentials privately.
311
+
312
+ ### Tests
313
+
314
+ - Add coverage for Gondolin lifecycle, workspace isolation, vaults, resource controls, fleet scheduling, gateways, enrollment, workers, leases, and remote execution.
315
+
316
+ ## [1.0.0-beta.16]
317
+
318
+ ### Added
319
+
320
+ - Add a preview `gondolin:default` sandbox backed by Gondolin and QEMU.
321
+ - Add a curated microVM guest image build with Node.js, Python, uv, Git, ripgrep, fd, jq, SSH, and build tools.
322
+ - Manage one process-local microVM per conversation with idle shutdown and recreation on demand.
323
+
324
+ ### Changed
325
+
326
+ - Broaden the coverage gate across all source modules.
327
+
328
+ ### Fixed
329
+
330
+ - Keep top-level Slack file uploads out of threads.
331
+
332
+ ### Tests
333
+
334
+ - Add coverage for microVM execution and lifecycle, events, logging, disabled vaults, channel storage, and core file and shell tools.
335
+
336
+ ## [1.0.0-beta.15]
337
+
338
+ ### Added
339
+
340
+ - Add native image generation with automatic upload through the active model provider.
341
+ - Add extension chat commands via `api.registerCommand`: deterministic `/name` dispatch with no model call; built-ins and first registrations win.
342
+ - Add an extension disposal lifecycle (`api.onDispose` or an `activate` return value), run when a harness instance is discarded (`/pi-new`, idle eviction, session rotation).
343
+ - Add `api.triggerRun(text)` to fire an immediate autonomous agent run, `api.uploadFile(path, title)` for proactive file uploads, and an explicit `conversationId` option on `api.notify` for cross-conversation posting.
344
+ - Add `agent_error` and `budget_exceeded` extension hooks so monitoring extensions see failed turns and tripped run budgets.
345
+ - Pass a `RunOrigin` (platform, triggering message id, user identity, attachments) to extension hook events, making `api.react` and per-user extension policy usable.
346
+ - Let `before_agent_start` extensions rewrite the user prompt or block the turn before the model runs; blocked turns leave no trace in the transcript or session store.
347
+ - Let `tool_result` extensions rewrite tool output (content and error flag) before the model and the session store see it, enabling secret redaction and output truncation.
348
+
349
+ ### Changed
350
+
351
+ - Dispatch `before_agent_start` and `tool_result` hooks with chaining semantics (each handler sees earlier handlers' rewrites; any `block` wins) instead of first-result-wins.
352
+
353
+ ### Fixed
354
+
355
+ - Dispose cached runners when models switch or environment credentials refresh.
356
+
357
+ ### Tests
358
+
359
+ - Add coverage for image generation, extension lifecycle and hook rewrites, and runner disposal.
360
+
361
+ ## [1.0.0-beta.14]
362
+
363
+ ### Added
364
+
365
+ - Add GitHub inline review-thread intake and a `github_review_reply` tool.
366
+ - Add `github_sync`, `github_read`, and `github_issue` tools for repository refresh and issue or pull request operations.
367
+ - Add host-side Cloud Build log retrieval using GCP ADC or Workload Identity Federation.
368
+ - Add a minimal embedder example that runs without portal services.
369
+
370
+ ### Changed
371
+
372
+ - Update eligible GitHub pull request head branches in place instead of opening duplicate pull requests.
373
+ - Drive platform command registration and routing from a shared command manifest.
374
+ - Use one cross-platform stop grammar, including `/stop` in GitHub conversations.
375
+ - Route sandbox file reads and writes through executors with staged, shell-safe transport.
376
+ - Keep sandbox settings nested through configuration resolution and updates.
377
+
378
+ ### Fixed
379
+
380
+ - Preserve raw session keys when using Slack's Force Stop button.
381
+ - Spill large bash output into the runtime workspace so sandboxed agents can read it.
382
+ - Keep malformed event files visible in the admin portal for deletion.
383
+ - Unify platform formatting guidance across adapter and conversation contexts.
384
+
385
+ ### Security
386
+
387
+ - Keep Cloud Build credentials host-side and outside agent sandboxes.
388
+ - Centralize runtime identity and sandbox path sanitization.
389
+
390
+ ### Tests
391
+
392
+ - Add coverage for GitHub tool operations, review threads, Cloud Build logs, executor file transport, command manifests, runtime embedding, and session serialization.
393
+
394
+ ## [1.0.0-beta.13]
395
+
396
+ ### Added
397
+
398
+ - Add the `max` thinking level to commands, configuration, and the admin portal.
399
+ - Add quickstart and extension development guides across all supported locales.
400
+
401
+ ### Changed
402
+
403
+ - Update pi agent dependencies to 0.80.6.
404
+ - Load platform-specific tool packs only for their configured adapters.
405
+ - Improve `github_checks` output and guidance for external CI providers.
406
+ - Synchronize configuration, platform, sandbox, session, skill, event, portal, and deployment documentation across locales.
407
+
408
+ ### Fixed
409
+
410
+ - Fix broken CLI tables and dead documentation links across locales.
411
+
412
+ ### Security
413
+
414
+ - Derive ambient shared-vault access from each platform's declared trust model and sandbox topology.
415
+
416
+ ### Tests
417
+
418
+ - Add coverage for platform tool-pack isolation, external CI checks, and vault trust policy.
419
+
420
+ ## [1.0.0-beta.12]
421
+
422
+ ### Added
423
+
424
+ - Let `github_checks` fetch the log tail for a failing GitHub Actions job by job ID.
425
+
426
+ ### Changed
427
+
428
+ - Require GitHub App Actions read permission for job log inspection.
429
+
430
+ ### Fixed
431
+
432
+ - Treat skipped and neutral GitHub checks separately from failures in check summaries.
433
+
434
+ ### Tests
435
+
436
+ - Add coverage for job log retrieval and check conclusion classification.
437
+ - Use collision-resistant temporary directories across parallel tests.
438
+
439
+ ## [1.0.0-beta.11]
440
+
441
+ ### Added
442
+
443
+ - Add a read-only `github_checks` tool for inspecting branch and pull request check runs.
444
+
445
+ ### Changed
446
+
447
+ - Make `github_pr` idempotent so pushing an existing branch updates its open pull request.
448
+ - Teach the GitHub agent workflow to inspect CI, fix failures, and push updates.
449
+ - Require GitHub App Checks read permission for CI inspection.
450
+
451
+ ### Tests
452
+
453
+ - Add coverage for GitHub check summaries and existing pull request updates.
454
+
455
+ ## [1.0.0-beta.10]
456
+
457
+ ### Fixed
458
+
459
+ - Retry cloning a GitHub repository on later triggers when the conversation clone is missing.
460
+
461
+ ### Security
462
+
463
+ - Stop applying the ambient default shared vault to GitHub conversations while preserving explicit conversation vault grants.
464
+ - Document the platform, shared machine, and personal credential trust boundaries.
465
+
466
+ ### Tests
467
+
468
+ - Add coverage for GitHub clone retries and platform-gated default vault resolution.
469
+
470
+ ## [1.0.0-beta.9]
471
+
472
+ ### Added
473
+
474
+ - Clone GitHub repositories into conversation workspaces and check out pull request heads.
475
+ - Add a `github_pr` tool that pushes agent changes from `pi/*` branches and opens pull requests.
476
+
477
+ ### Changed
478
+
479
+ - Require GitHub App Contents read and write permission for repository automation.
480
+ - Post completed GitHub responses as single comments instead of streaming edits.
481
+
482
+ ### Fixed
483
+
484
+ - Keep GitHub issue context inside the history recency window.
485
+
486
+ ### Security
487
+
488
+ - Require commenters to have repository write permission or higher before triggering the agent.
489
+ - Keep installation tokens out of sandboxes and restrict agent pushes to non-force `pi/*` branches.
490
+
491
+ ### Tests
492
+
493
+ - Add coverage for GitHub repository checkout, permission gating, pull request creation, and branch restrictions.
494
+
495
+ ## [1.0.0-beta.8]
496
+
497
+ ### Added
498
+
499
+ - Add a GitHub messaging adapter where each issue or pull request is an independent conversation.
500
+ - Add GitHub App authentication, mention and participation triggers, persisted polling cursors, and downtime replay.
501
+ - Add GitHub adapter deployment configuration and documentation.
502
+
503
+ ### Tests
504
+
505
+ - Add coverage for GitHub polling, authentication, conversation context, triggers, and responses.
506
+
507
+ ## [1.0.0-beta.7]
508
+
509
+ ### Added
510
+
511
+ - Add TypeScript and npm-package extensions with `package.json` entrypoints and runtime dependencies.
512
+ - Add `mikan ext install`, `validate`, `list`, and `remove` commands.
513
+ - Add extension installation from Git sources and repository subpaths.
514
+
515
+ ### Changed
516
+
517
+ - Treat reinstalling an extension as an update while preserving its data directory.
518
+ - Use `package.json` as the primary extension metadata source with `manifest.json` as a fallback.
519
+ - Convert the agent project manager example to TypeScript with a typed extension API.
520
+ - Add the Slack `reactions:write` scope and missing slash commands to the manifests and setup guides.
521
+
522
+ ### Tests
523
+
524
+ - Add coverage for TypeScript loading, package metadata, extension CLI operations, and Git installation.
525
+
526
+ ## [1.0.0-beta.6]
527
+
528
+ ### Added
529
+
530
+ - Add emoji reactions for agents and extensions across Slack, Discord, and Telegram.
531
+
532
+ ### Changed
533
+
534
+ - Default the agent project manager example to conversation-scoped extension data.
535
+ - Log when extensions rewrite the system prompt and report the resulting size change.
536
+
537
+ ### Fixed
538
+
539
+ - Render Slack session links outside the triggered-by italic span.
540
+
541
+ ### Tests
542
+
543
+ - Add coverage for the reaction tool and extension reaction API.
544
+
545
+ ## [1.0.0-beta.5]
546
+
547
+ ### Added
548
+
549
+ - Add `api.paths.sharedDataDir` for extension state intentionally shared across conversations.
550
+ - Add an idempotent, dry-run-first script for migrating extension code and data to the new layout.
551
+
552
+ ### Changed
553
+
554
+ - Store conversation extension code and data under `conversations/<id>/` and global extension assets under `global/`.
555
+ - Make `api.paths.dataDir` conversation-scoped by default to prevent accidental cross-conversation state sharing.
556
+
557
+ ### Tests
558
+
559
+ - Update extension loader and command coverage for the conversation-scoped layout.
560
+
561
+ ## [1.0.0-beta.4]
562
+
563
+ ### Changed
564
+
565
+ - Show an extension's slug in `/pi-extensions` when it differs from the manifest display name.
566
+
567
+ ### Fixed
568
+
569
+ - Reject extensions installed directly at a scope root and show an actionable warning to use a named subdirectory.
570
+
571
+ ### Tests
572
+
573
+ - Add coverage for scope-root extension mis-install detection and inventory warnings.
574
+
12
575
  ## [1.0.0-beta.3]
13
576
 
14
577
  ### Fixed