@geminilight/mindos 1.1.25 → 1.1.28

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 (359) hide show
  1. package/dist/agent/bridges/index.d.ts +3 -0
  2. package/dist/agent/bridges/index.d.ts.map +1 -0
  3. package/dist/agent/bridges/index.js +3 -0
  4. package/dist/agent/bridges/index.js.map +1 -0
  5. package/dist/agent/bridges/runtime-permission-bridge.d.ts +34 -0
  6. package/dist/agent/bridges/runtime-permission-bridge.d.ts.map +1 -0
  7. package/dist/agent/bridges/runtime-permission-bridge.js +284 -0
  8. package/dist/agent/bridges/runtime-permission-bridge.js.map +1 -0
  9. package/dist/agent/bridges/user-question-bridge.d.ts +90 -0
  10. package/dist/agent/bridges/user-question-bridge.d.ts.map +1 -0
  11. package/dist/agent/bridges/user-question-bridge.js +260 -0
  12. package/dist/agent/bridges/user-question-bridge.js.map +1 -0
  13. package/dist/agent/index.d.ts +6 -7
  14. package/dist/agent/index.d.ts.map +1 -1
  15. package/dist/agent/index.js +6 -7
  16. package/dist/agent/index.js.map +1 -1
  17. package/dist/agent/ledger/index.d.ts +5 -0
  18. package/dist/agent/ledger/index.d.ts.map +1 -0
  19. package/dist/agent/ledger/index.js +5 -0
  20. package/dist/agent/ledger/index.js.map +1 -0
  21. package/dist/agent/ledger/run-cancellation.d.ts +13 -0
  22. package/dist/agent/ledger/run-cancellation.d.ts.map +1 -0
  23. package/dist/agent/ledger/run-cancellation.js +97 -0
  24. package/dist/agent/ledger/run-cancellation.js.map +1 -0
  25. package/dist/agent/ledger/run-ledger-types.d.ts +197 -0
  26. package/dist/agent/ledger/run-ledger-types.d.ts.map +1 -0
  27. package/dist/agent/ledger/run-ledger-types.js +9 -0
  28. package/dist/agent/ledger/run-ledger-types.js.map +1 -0
  29. package/dist/agent/ledger/run-ledger.d.ts +44 -0
  30. package/dist/agent/ledger/run-ledger.d.ts.map +1 -0
  31. package/dist/agent/ledger/run-ledger.js +814 -0
  32. package/dist/agent/ledger/run-ledger.js.map +1 -0
  33. package/dist/agent/ledger/run-timeline-events.d.ts +3 -0
  34. package/dist/agent/ledger/run-timeline-events.d.ts.map +1 -0
  35. package/dist/agent/ledger/run-timeline-events.js +239 -0
  36. package/dist/agent/ledger/run-timeline-events.js.map +1 -0
  37. package/dist/agent/mindos-pi/extension/extension-tools.d.ts +16 -0
  38. package/dist/agent/mindos-pi/extension/extension-tools.d.ts.map +1 -0
  39. package/dist/agent/mindos-pi/extension/extension-tools.js +115 -0
  40. package/dist/agent/mindos-pi/extension/extension-tools.js.map +1 -0
  41. package/dist/agent/mindos-pi/extension/index.d.ts +3 -0
  42. package/dist/agent/mindos-pi/extension/index.d.ts.map +1 -0
  43. package/dist/agent/mindos-pi/extension/index.js +3 -0
  44. package/dist/agent/mindos-pi/extension/index.js.map +1 -0
  45. package/dist/agent/mindos-pi/extension/kb-extension.d.ts +38 -0
  46. package/dist/agent/mindos-pi/extension/kb-extension.d.ts.map +1 -0
  47. package/dist/agent/mindos-pi/extension/kb-extension.js +140 -0
  48. package/dist/agent/mindos-pi/extension/kb-extension.js.map +1 -0
  49. package/dist/agent/mindos-pi/index.d.ts +5 -0
  50. package/dist/agent/mindos-pi/index.d.ts.map +1 -0
  51. package/dist/agent/mindos-pi/index.js +5 -0
  52. package/dist/agent/mindos-pi/index.js.map +1 -0
  53. package/dist/agent/mindos-pi/prompt.d.ts +3 -0
  54. package/dist/agent/mindos-pi/prompt.d.ts.map +1 -0
  55. package/dist/agent/mindos-pi/prompt.js +22 -0
  56. package/dist/agent/mindos-pi/prompt.js.map +1 -0
  57. package/dist/agent/mindos-pi/resource-types.d.ts +27 -0
  58. package/dist/agent/mindos-pi/resource-types.d.ts.map +1 -0
  59. package/dist/agent/mindos-pi/resource-types.js +2 -0
  60. package/dist/agent/mindos-pi/resource-types.js.map +1 -0
  61. package/dist/agent/mindos-pi/runtime.d.ts +10 -0
  62. package/dist/agent/mindos-pi/runtime.d.ts.map +1 -0
  63. package/dist/agent/mindos-pi/runtime.js +31 -0
  64. package/dist/agent/mindos-pi/runtime.js.map +1 -0
  65. package/dist/agent/pi/extension-tools.d.ts +2 -0
  66. package/dist/agent/pi/extension-tools.d.ts.map +1 -0
  67. package/dist/agent/pi/extension-tools.js +2 -0
  68. package/dist/agent/pi/extension-tools.js.map +1 -0
  69. package/dist/agent/pi/index.d.ts +2 -0
  70. package/dist/agent/pi/index.d.ts.map +1 -0
  71. package/dist/agent/pi/index.js +2 -0
  72. package/dist/agent/pi/index.js.map +1 -0
  73. package/dist/agent/pi/resource-types.d.ts +2 -0
  74. package/dist/agent/pi/resource-types.d.ts.map +1 -0
  75. package/dist/agent/pi/resource-types.js +2 -0
  76. package/dist/agent/pi/resource-types.js.map +1 -0
  77. package/dist/agent/pi/runtime.d.ts +2 -0
  78. package/dist/agent/pi/runtime.d.ts.map +1 -0
  79. package/dist/agent/pi/runtime.js +2 -0
  80. package/dist/agent/pi/runtime.js.map +1 -0
  81. package/dist/agent/prompt/base-prompt.d.ts.map +1 -1
  82. package/dist/agent/prompt/base-prompt.js +24 -6
  83. package/dist/agent/prompt/base-prompt.js.map +1 -1
  84. package/dist/agent/prompt/context-prompt.d.ts +24 -0
  85. package/dist/agent/prompt/context-prompt.d.ts.map +1 -1
  86. package/dist/agent/prompt/context-prompt.js +15 -38
  87. package/dist/agent/prompt/context-prompt.js.map +1 -1
  88. package/dist/agent/prompt/index.d.ts +1 -1
  89. package/dist/agent/prompt/index.d.ts.map +1 -1
  90. package/dist/agent/prompt/index.js +1 -1
  91. package/dist/agent/prompt/index.js.map +1 -1
  92. package/dist/agent/result-reducer.d.ts +1 -1
  93. package/dist/agent/result-reducer.d.ts.map +1 -1
  94. package/dist/agent/run-cancellation.d.ts +1 -12
  95. package/dist/agent/run-cancellation.d.ts.map +1 -1
  96. package/dist/agent/run-cancellation.js +1 -96
  97. package/dist/agent/run-cancellation.js.map +1 -1
  98. package/dist/agent/run-ledger-types.d.ts +1 -196
  99. package/dist/agent/run-ledger-types.d.ts.map +1 -1
  100. package/dist/agent/run-ledger-types.js +1 -8
  101. package/dist/agent/run-ledger-types.js.map +1 -1
  102. package/dist/agent/run-ledger.d.ts +1 -43
  103. package/dist/agent/run-ledger.d.ts.map +1 -1
  104. package/dist/agent/run-ledger.js +1 -813
  105. package/dist/agent/run-ledger.js.map +1 -1
  106. package/dist/agent/run-timeline-events.d.ts +1 -2
  107. package/dist/agent/run-timeline-events.d.ts.map +1 -1
  108. package/dist/agent/run-timeline-events.js +1 -238
  109. package/dist/agent/run-timeline-events.js.map +1 -1
  110. package/dist/agent/runtime/adapters/index.d.ts +2 -0
  111. package/dist/agent/runtime/adapters/index.d.ts.map +1 -0
  112. package/dist/agent/runtime/adapters/index.js +2 -0
  113. package/dist/agent/runtime/adapters/index.js.map +1 -0
  114. package/dist/agent/runtime/adapters/mindos.d.ts +21 -0
  115. package/dist/agent/runtime/adapters/mindos.d.ts.map +1 -0
  116. package/dist/agent/runtime/adapters/mindos.js +14 -0
  117. package/dist/agent/runtime/adapters/mindos.js.map +1 -0
  118. package/dist/agent/runtime/attachments.d.ts +37 -0
  119. package/dist/agent/runtime/attachments.d.ts.map +1 -0
  120. package/dist/agent/runtime/attachments.js +187 -0
  121. package/dist/agent/runtime/attachments.js.map +1 -0
  122. package/dist/agent/runtime/capabilities.d.ts +10 -0
  123. package/dist/agent/runtime/capabilities.d.ts.map +1 -0
  124. package/dist/agent/runtime/capabilities.js +100 -0
  125. package/dist/agent/runtime/capabilities.js.map +1 -0
  126. package/dist/agent/runtime/child-process.d.ts +21 -0
  127. package/dist/agent/runtime/child-process.d.ts.map +1 -0
  128. package/dist/agent/runtime/child-process.js +29 -0
  129. package/dist/agent/runtime/child-process.js.map +1 -0
  130. package/dist/agent/runtime/claude-code-cli.d.ts +40 -0
  131. package/dist/agent/runtime/claude-code-cli.d.ts.map +1 -0
  132. package/dist/agent/runtime/claude-code-cli.js +288 -0
  133. package/dist/agent/runtime/claude-code-cli.js.map +1 -0
  134. package/dist/agent/runtime/claude-code-sdk.d.ts +62 -0
  135. package/dist/agent/runtime/claude-code-sdk.d.ts.map +1 -0
  136. package/dist/agent/runtime/claude-code-sdk.js +613 -0
  137. package/dist/agent/runtime/claude-code-sdk.js.map +1 -0
  138. package/dist/agent/runtime/codex-app-server.d.ts +172 -0
  139. package/dist/agent/runtime/codex-app-server.d.ts.map +1 -0
  140. package/dist/agent/runtime/codex-app-server.js +700 -0
  141. package/dist/agent/runtime/codex-app-server.js.map +1 -0
  142. package/dist/agent/runtime/codex-env.d.ts +42 -0
  143. package/dist/agent/runtime/codex-env.d.ts.map +1 -0
  144. package/dist/agent/runtime/codex-env.js +290 -0
  145. package/dist/agent/runtime/codex-env.js.map +1 -0
  146. package/dist/agent/runtime/descriptors.d.ts +19 -0
  147. package/dist/agent/runtime/descriptors.d.ts.map +1 -0
  148. package/dist/agent/runtime/descriptors.js +143 -0
  149. package/dist/agent/runtime/descriptors.js.map +1 -0
  150. package/dist/agent/runtime/detection.d.ts +15 -0
  151. package/dist/agent/runtime/detection.d.ts.map +1 -0
  152. package/dist/agent/runtime/detection.js +124 -0
  153. package/dist/agent/runtime/detection.js.map +1 -0
  154. package/dist/agent/runtime/index.d.ts +15 -0
  155. package/dist/agent/runtime/index.d.ts.map +1 -0
  156. package/dist/agent/runtime/index.js +15 -0
  157. package/dist/agent/runtime/index.js.map +1 -0
  158. package/dist/agent/runtime/registry.d.ts +152 -0
  159. package/dist/agent/runtime/registry.d.ts.map +1 -0
  160. package/dist/agent/runtime/registry.js +84 -0
  161. package/dist/agent/runtime/registry.js.map +1 -0
  162. package/dist/agent/runtime/run.d.ts +129 -0
  163. package/dist/agent/runtime/run.d.ts.map +1 -0
  164. package/dist/agent/runtime/run.js +739 -0
  165. package/dist/agent/runtime/run.js.map +1 -0
  166. package/dist/agent/runtime/runtime-env.d.ts +28 -0
  167. package/dist/agent/runtime/runtime-env.d.ts.map +1 -0
  168. package/dist/agent/runtime/runtime-env.js +66 -0
  169. package/dist/agent/runtime/runtime-env.js.map +1 -0
  170. package/dist/agent/runtime/runtime-errors.d.ts +20 -0
  171. package/dist/agent/runtime/runtime-errors.d.ts.map +1 -0
  172. package/dist/agent/runtime/runtime-errors.js +95 -0
  173. package/dist/agent/runtime/runtime-errors.js.map +1 -0
  174. package/dist/agent/runtime-permission-bridge.d.ts +1 -33
  175. package/dist/agent/runtime-permission-bridge.d.ts.map +1 -1
  176. package/dist/agent/runtime-permission-bridge.js +1 -283
  177. package/dist/agent/runtime-permission-bridge.js.map +1 -1
  178. package/dist/agent/selected-skills.d.ts +8 -0
  179. package/dist/agent/selected-skills.d.ts.map +1 -0
  180. package/dist/agent/selected-skills.js +27 -0
  181. package/dist/agent/selected-skills.js.map +1 -0
  182. package/dist/agent/session/index.d.ts +618 -0
  183. package/dist/agent/session/index.d.ts.map +1 -0
  184. package/dist/agent/session/index.js +1330 -0
  185. package/dist/agent/session/index.js.map +1 -0
  186. package/dist/agent/session/redaction.d.ts +3 -0
  187. package/dist/agent/session/redaction.d.ts.map +1 -0
  188. package/dist/agent/session/redaction.js +47 -0
  189. package/dist/agent/session/redaction.js.map +1 -0
  190. package/dist/agent/stream/index.d.ts +3 -0
  191. package/dist/agent/stream/index.d.ts.map +1 -0
  192. package/dist/agent/stream/index.js +3 -0
  193. package/dist/agent/stream/index.js.map +1 -0
  194. package/dist/agent/stream/stream-consumer.d.ts +65 -0
  195. package/dist/agent/stream/stream-consumer.d.ts.map +1 -0
  196. package/dist/agent/stream/stream-consumer.js +664 -0
  197. package/dist/agent/stream/stream-consumer.js.map +1 -0
  198. package/dist/agent/stream/stream-message-types.d.ts +128 -0
  199. package/dist/agent/stream/stream-message-types.d.ts.map +1 -0
  200. package/dist/agent/stream/stream-message-types.js +14 -0
  201. package/dist/agent/stream/stream-message-types.js.map +1 -0
  202. package/dist/agent/stream-consumer.d.ts +1 -64
  203. package/dist/agent/stream-consumer.d.ts.map +1 -1
  204. package/dist/agent/stream-consumer.js +1 -663
  205. package/dist/agent/stream-consumer.js.map +1 -1
  206. package/dist/agent/stream-message-types.d.ts +1 -137
  207. package/dist/agent/stream-message-types.d.ts.map +1 -1
  208. package/dist/agent/stream-message-types.js +1 -13
  209. package/dist/agent/stream-message-types.js.map +1 -1
  210. package/dist/agent/subagent/index.d.ts +3 -0
  211. package/dist/agent/subagent/index.d.ts.map +1 -0
  212. package/dist/agent/subagent/index.js +3 -0
  213. package/dist/agent/subagent/index.js.map +1 -0
  214. package/dist/agent/subagent/subagent-ledger-extension.d.ts +36 -0
  215. package/dist/agent/subagent/subagent-ledger-extension.d.ts.map +1 -0
  216. package/dist/agent/subagent/subagent-ledger-extension.js +572 -0
  217. package/dist/agent/subagent/subagent-ledger-extension.js.map +1 -0
  218. package/dist/agent/subagent/subagent-orchestrator.d.ts +62 -0
  219. package/dist/agent/subagent/subagent-orchestrator.d.ts.map +1 -0
  220. package/dist/agent/subagent/subagent-orchestrator.js +350 -0
  221. package/dist/agent/subagent/subagent-orchestrator.js.map +1 -0
  222. package/dist/agent/subagent-ledger-extension.d.ts +1 -35
  223. package/dist/agent/subagent-ledger-extension.d.ts.map +1 -1
  224. package/dist/agent/subagent-ledger-extension.js +1 -571
  225. package/dist/agent/subagent-ledger-extension.js.map +1 -1
  226. package/dist/agent/subagent-orchestrator.d.ts +1 -61
  227. package/dist/agent/subagent-orchestrator.d.ts.map +1 -1
  228. package/dist/agent/subagent-orchestrator.js +1 -349
  229. package/dist/agent/subagent-orchestrator.js.map +1 -1
  230. package/dist/agent/tool/executable-tool.d.ts +12 -0
  231. package/dist/agent/tool/executable-tool.d.ts.map +1 -0
  232. package/dist/agent/tool/executable-tool.js +2 -0
  233. package/dist/agent/tool/executable-tool.js.map +1 -0
  234. package/dist/agent/tool/index.d.ts +1 -1
  235. package/dist/agent/tool/index.d.ts.map +1 -1
  236. package/dist/agent/tool/index.js +1 -1
  237. package/dist/agent/tool/index.js.map +1 -1
  238. package/dist/agent/tool/kb-extension.d.ts +1 -37
  239. package/dist/agent/tool/kb-extension.d.ts.map +1 -1
  240. package/dist/agent/tool/kb-extension.js +1 -139
  241. package/dist/agent/tool/kb-extension.js.map +1 -1
  242. package/dist/agent/tool/permission-policy.d.ts +1 -1
  243. package/dist/agent/tool/permission-policy.d.ts.map +1 -1
  244. package/dist/agent/tool/permission-policy.js +0 -1
  245. package/dist/agent/tool/permission-policy.js.map +1 -1
  246. package/dist/agent/user-question-bridge.d.ts +1 -89
  247. package/dist/agent/user-question-bridge.d.ts.map +1 -1
  248. package/dist/agent/user-question-bridge.js +1 -259
  249. package/dist/agent/user-question-bridge.js.map +1 -1
  250. package/dist/agent-runtime/adapters/index.d.ts +2 -0
  251. package/dist/agent-runtime/adapters/index.d.ts.map +1 -0
  252. package/dist/agent-runtime/adapters/index.js +2 -0
  253. package/dist/agent-runtime/adapters/index.js.map +1 -0
  254. package/dist/agent-runtime/adapters/mindos.d.ts +2 -0
  255. package/dist/agent-runtime/adapters/mindos.d.ts.map +1 -0
  256. package/dist/agent-runtime/adapters/mindos.js +2 -0
  257. package/dist/agent-runtime/adapters/mindos.js.map +1 -0
  258. package/dist/agent-runtime/capabilities.d.ts +1 -9
  259. package/dist/agent-runtime/capabilities.d.ts.map +1 -1
  260. package/dist/agent-runtime/capabilities.js +1 -99
  261. package/dist/agent-runtime/capabilities.js.map +1 -1
  262. package/dist/agent-runtime/child-process.d.ts +1 -20
  263. package/dist/agent-runtime/child-process.d.ts.map +1 -1
  264. package/dist/agent-runtime/child-process.js +1 -28
  265. package/dist/agent-runtime/child-process.js.map +1 -1
  266. package/dist/agent-runtime/claude-code-cli.d.ts +1 -35
  267. package/dist/agent-runtime/claude-code-cli.d.ts.map +1 -1
  268. package/dist/agent-runtime/claude-code-cli.js +1 -287
  269. package/dist/agent-runtime/claude-code-cli.js.map +1 -1
  270. package/dist/agent-runtime/claude-code-sdk.d.ts +1 -40
  271. package/dist/agent-runtime/claude-code-sdk.d.ts.map +1 -1
  272. package/dist/agent-runtime/claude-code-sdk.js +1 -571
  273. package/dist/agent-runtime/claude-code-sdk.js.map +1 -1
  274. package/dist/agent-runtime/codex-app-server.d.ts +1 -157
  275. package/dist/agent-runtime/codex-app-server.d.ts.map +1 -1
  276. package/dist/agent-runtime/codex-app-server.js +1 -665
  277. package/dist/agent-runtime/codex-app-server.js.map +1 -1
  278. package/dist/agent-runtime/codex-env.d.ts +1 -41
  279. package/dist/agent-runtime/codex-env.d.ts.map +1 -1
  280. package/dist/agent-runtime/codex-env.js +1 -289
  281. package/dist/agent-runtime/codex-env.js.map +1 -1
  282. package/dist/agent-runtime/descriptors.d.ts +1 -18
  283. package/dist/agent-runtime/descriptors.d.ts.map +1 -1
  284. package/dist/agent-runtime/descriptors.js +1 -142
  285. package/dist/agent-runtime/descriptors.js.map +1 -1
  286. package/dist/agent-runtime/detection.d.ts +1 -14
  287. package/dist/agent-runtime/detection.d.ts.map +1 -1
  288. package/dist/agent-runtime/detection.js +1 -123
  289. package/dist/agent-runtime/detection.js.map +1 -1
  290. package/dist/agent-runtime/index.d.ts +1 -8
  291. package/dist/agent-runtime/index.d.ts.map +1 -1
  292. package/dist/agent-runtime/index.js +1 -8
  293. package/dist/agent-runtime/index.js.map +1 -1
  294. package/dist/agent-runtime/registry.d.ts +1 -151
  295. package/dist/agent-runtime/registry.d.ts.map +1 -1
  296. package/dist/agent-runtime/registry.js +1 -83
  297. package/dist/agent-runtime/registry.js.map +1 -1
  298. package/dist/agent-runtime/run.d.ts +1 -124
  299. package/dist/agent-runtime/run.d.ts.map +1 -1
  300. package/dist/agent-runtime/run.js +1 -720
  301. package/dist/agent-runtime/run.js.map +1 -1
  302. package/dist/agent-runtime/runtime-env.d.ts +1 -27
  303. package/dist/agent-runtime/runtime-env.d.ts.map +1 -1
  304. package/dist/agent-runtime/runtime-env.js +1 -65
  305. package/dist/agent-runtime/runtime-env.js.map +1 -1
  306. package/dist/agent-runtime/runtime-errors.d.ts +1 -19
  307. package/dist/agent-runtime/runtime-errors.d.ts.map +1 -1
  308. package/dist/agent-runtime/runtime-errors.js +1 -94
  309. package/dist/agent-runtime/runtime-errors.js.map +1 -1
  310. package/dist/agent-runtime.d.ts +1 -1
  311. package/dist/agent-runtime.js +1 -1
  312. package/dist/client.d.ts +8 -4
  313. package/dist/client.d.ts.map +1 -1
  314. package/dist/client.js.map +1 -1
  315. package/dist/foundation/config/schema.d.ts +1 -1
  316. package/dist/server/handlers/agent-runtime-codex.d.ts +1 -1
  317. package/dist/server/handlers/agent-runtime-codex.js +2 -2
  318. package/dist/server/handlers/agent-runtimes.d.ts +3 -3
  319. package/dist/server/handlers/agent-runtimes.js +5 -5
  320. package/dist/server/handlers/ask.d.ts +8 -4
  321. package/dist/server/handlers/ask.d.ts.map +1 -1
  322. package/dist/server/handlers/ask.js +7 -1
  323. package/dist/server/handlers/ask.js.map +1 -1
  324. package/dist/server/handlers/inbox-source.d.ts +1 -1
  325. package/dist/server/handlers/inbox-source.d.ts.map +1 -1
  326. package/dist/server/handlers/inbox-source.js +22 -0
  327. package/dist/server/handlers/inbox-source.js.map +1 -1
  328. package/dist/server/handlers/settings.d.ts +1 -1
  329. package/dist/server/handlers/settings.js +1 -1
  330. package/dist/server/handlers/setup.d.ts +2 -1
  331. package/dist/server/handlers/setup.d.ts.map +1 -1
  332. package/dist/server/handlers/setup.js +1 -0
  333. package/dist/server/handlers/setup.js.map +1 -1
  334. package/dist/server/index.d.ts +1 -1
  335. package/dist/server/index.d.ts.map +1 -1
  336. package/dist/server/index.js +1 -1
  337. package/dist/server/index.js.map +1 -1
  338. package/dist/server/runtime.d.ts +1 -1
  339. package/dist/session/index.d.ts +1 -644
  340. package/dist/session/index.d.ts.map +1 -1
  341. package/dist/session/index.js +1 -1318
  342. package/dist/session/index.js.map +1 -1
  343. package/dist/session/pi-coding-agent-runtime.d.ts +1 -9
  344. package/dist/session/pi-coding-agent-runtime.d.ts.map +1 -1
  345. package/dist/session/pi-coding-agent-runtime.js +1 -30
  346. package/dist/session/pi-coding-agent-runtime.js.map +1 -1
  347. package/dist/session/redaction.d.ts +1 -2
  348. package/dist/session/redaction.d.ts.map +1 -1
  349. package/dist/session/redaction.js +1 -46
  350. package/dist/session/redaction.js.map +1 -1
  351. package/dist/session.d.ts +1 -1
  352. package/dist/session.d.ts.map +1 -1
  353. package/dist/session.js +1 -1
  354. package/dist/session.js.map +1 -1
  355. package/dist/setup/index.d.ts +24 -3
  356. package/dist/setup/index.d.ts.map +1 -1
  357. package/dist/setup/index.js +102 -2
  358. package/dist/setup/index.js.map +1 -1
  359. package/package.json +97 -9
@@ -0,0 +1,140 @@
1
+ // Sunk from packages/web/lib/agent/kb-extension.ts (Wave 3, spec-agent-core-consolidation).
2
+ //
3
+ // Knowledge Base Extension — registers the MindOS KB tools via the Pi
4
+ // Extension API, wrapping them with write-protection and audit logging.
5
+ // Hosts keep a real extension entry file (the pi DefaultResourceLoader loads
6
+ // it by file path) that wires their toolkit into createMindosKbExtension().
7
+ //
8
+ // Permission-based filtering (readonly/organize/agent) is controlled by
9
+ // runWithKbPermissionPolicy() (request-scoped) or setKbMode()/
10
+ // setKbPermissionPolicy() (process fallback), evaluated at reload() time.
11
+ //
12
+ // All policy state lives behind Symbol.for keys (global-state.ts): the pi
13
+ // loader imports the host's extension entry in its own module graph, so
14
+ // module-level state here would fork between the route's copy and the
15
+ // loader's copy.
16
+ import { AsyncLocalStorage } from 'node:async_hooks';
17
+ import { assertNotProtected } from '../../../foundation/security/index.js';
18
+ import { createMindosAgentPermissionPolicy, } from '../../tool/permission-policy.js';
19
+ import { getProcessGlobal, KB_EXTENSION_HOST_KEY, KB_PERMISSION_POLICY_FALLBACK_KEY, KB_PERMISSION_POLICY_STORAGE_KEY, } from '../../global-state.js';
20
+ import { WRITE_TOOLS } from '../../tool/kb-tools.js';
21
+ function getPolicyStorage() {
22
+ return getProcessGlobal(KB_PERMISSION_POLICY_STORAGE_KEY, () => new AsyncLocalStorage());
23
+ }
24
+ function getPolicyFallback() {
25
+ return getProcessGlobal(KB_PERMISSION_POLICY_FALLBACK_KEY, () => ({ policy: createMindosAgentPermissionPolicy('agent') }));
26
+ }
27
+ /** Run fn with a request-scoped policy; the kb extension reads it during reload(). */
28
+ export function runWithKbPermissionPolicy(policy, fn) {
29
+ return getPolicyStorage().run(policy, fn);
30
+ }
31
+ /** Set the mode before resourceLoader.reload(). Determines which tools get registered. */
32
+ export function setKbMode(mode) {
33
+ getPolicyFallback().policy = createMindosAgentPermissionPolicy(mode);
34
+ }
35
+ export function setKbPermissionPolicy(policy) {
36
+ getPolicyFallback().policy = policy;
37
+ }
38
+ /** The policy the extension will register tools for: request-scoped, else fallback. */
39
+ export function getEffectiveKbPermissionPolicy() {
40
+ return getPolicyStorage().getStore() ?? getPolicyFallback().policy;
41
+ }
42
+ // ─── Helpers ──────────────────────────────────────────────────────────────────
43
+ function textResult(text) {
44
+ return { content: [{ type: 'text', text }], details: undefined };
45
+ }
46
+ function getProtectedPaths(toolName, args) {
47
+ const paths = [];
48
+ if (toolName === 'batch_create_files' && Array.isArray(args.files)) {
49
+ args.files.forEach((f) => { if (f.path)
50
+ paths.push(f.path); });
51
+ }
52
+ else {
53
+ const p = (args.path ?? args.from_path);
54
+ if (typeof p === 'string')
55
+ paths.push(p);
56
+ }
57
+ return paths;
58
+ }
59
+ export function createMindosKbExtension(host) {
60
+ return function kbExtension(pi) {
61
+ const policy = getEffectiveKbPermissionPolicy();
62
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
63
+ const tools = host.getToolsForPolicy(policy);
64
+ for (const tool of tools) {
65
+ pi.registerTool({
66
+ name: tool.name,
67
+ label: tool.label,
68
+ description: tool.description,
69
+ parameters: tool.parameters,
70
+ execute: async (toolCallId, params, signal, onUpdate) => {
71
+ const args = (params ?? {});
72
+ // Write-protection guard
73
+ if (WRITE_TOOLS.has(tool.name)) {
74
+ for (const filePath of getProtectedPaths(tool.name, args)) {
75
+ try {
76
+ assertNotProtected(filePath, 'modified by AI agent');
77
+ }
78
+ catch (error) {
79
+ const msg = error instanceof Error ? error.message : String(error);
80
+ return textResult(`Write-protection error: ${msg}. You CANNOT modify ${filePath} because it is system-protected. Please tell the user you don't have permission to do this.`);
81
+ }
82
+ }
83
+ }
84
+ // Execute the actual tool
85
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
86
+ const result = await tool.execute(toolCallId, params, signal, onUpdate);
87
+ // Log the operation
88
+ try {
89
+ const outputText = result?.content
90
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
91
+ ?.filter((p) => p.type === 'text')
92
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
93
+ .map((p) => p.text)
94
+ .join('') ?? '';
95
+ host.logAgentOp?.({
96
+ ts: new Date().toISOString(),
97
+ tool: tool.name,
98
+ params: args,
99
+ result: outputText.startsWith('Error:') ? 'error' : 'ok',
100
+ message: outputText.slice(0, 200),
101
+ agentName: 'MindOS',
102
+ });
103
+ }
104
+ catch {
105
+ // logging must never kill the stream
106
+ }
107
+ return result;
108
+ },
109
+ });
110
+ }
111
+ };
112
+ }
113
+ function getHostSlot() {
114
+ return getProcessGlobal(KB_EXTENSION_HOST_KEY, () => ({ host: undefined }));
115
+ }
116
+ /** Register the host toolkit. Must run before resourceLoader.reload(). Idempotent. */
117
+ export function registerMindosKbExtensionHost(host) {
118
+ getHostSlot().host = host;
119
+ }
120
+ /** The toolkit registered by the host runtime, if any. */
121
+ export function getMindosKbExtensionHost() {
122
+ return getHostSlot().host;
123
+ }
124
+ /**
125
+ * Extension factory for host entry files: resolves the host toolkit from the
126
+ * registered slot at execution time, so the entry file's own import graph
127
+ * stays free of host modules (jiti-loadable).
128
+ */
129
+ export function createMindosKbExtensionFromRegisteredHost() {
130
+ return function kbExtensionFromRegisteredHost(pi) {
131
+ const host = getMindosKbExtensionHost();
132
+ if (!host) {
133
+ throw new Error('MindOS KB extension host not registered. Call registerMindosKbExtensionHost() '
134
+ + 'from the host runtime before resourceLoader.reload() — the kb-extension entry '
135
+ + 'is loaded in the pi loader module graph and cannot import host modules.');
136
+ }
137
+ return createMindosKbExtension(host)(pi);
138
+ };
139
+ }
140
+ //# sourceMappingURL=kb-extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kb-extension.js","sourceRoot":"","sources":["../../../../src/agent/mindos-pi/extension/kb-extension.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from './extension/index.js';
2
+ export * from './prompt.js';
3
+ export * from './resource-types.js';
4
+ export * from './runtime.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/mindos-pi/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from './extension/index.js';
2
+ export * from './prompt.js';
3
+ export * from './resource-types.js';
4
+ export * from './runtime.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/mindos-pi/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type MindosSelectedSkill } from '../selected-skills.js';
2
+ export declare function renderMindosPiSelectedSkillPrompt(prompt: string, selectedSkills: Array<MindosSelectedSkill | string | null | undefined> | undefined): string;
3
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/agent/mindos-pi/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAE/B,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,KAAK,CAAC,mBAAmB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,GACjF,MAAM,CAoBR"}
@@ -0,0 +1,22 @@
1
+ import { normalizeMindosSelectedSkills, } from '../selected-skills.js';
2
+ export function renderMindosPiSelectedSkillPrompt(prompt, selectedSkills) {
3
+ const skills = normalizeMindosSelectedSkills(selectedSkills);
4
+ if (skills.length === 0)
5
+ return prompt;
6
+ const skillInstructions = skills.map((skill) => {
7
+ const loadSkillCall = `load_skill(${JSON.stringify(skill.name)})`;
8
+ return [
9
+ `### ${skill.name}`,
10
+ `The user selected the skill ${JSON.stringify(skill.name)} for this turn.`,
11
+ `Immediately call \`${loadSkillCall}\` to load the skill's full content before acting.`,
12
+ 'Follow the loaded skill instructions for this request. Do not ask which skill the user meant; they already selected it.',
13
+ ].join('\n\n');
14
+ });
15
+ return [
16
+ prompt.trim(),
17
+ '---',
18
+ '## MindOS Pi Selected Skills',
19
+ ...skillInstructions,
20
+ ].filter(Boolean).join('\n\n');
21
+ }
22
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/agent/mindos-pi/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,GAE9B,MAAM,uBAAuB,CAAC;AAE/B,MAAM,UAAU,iCAAiC,CAC/C,MAAc,EACd,cAAkF;IAElF,MAAM,MAAM,GAAG,6BAA6B,CAAC,cAAc,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAEvC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7C,MAAM,aAAa,GAAG,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;QAClE,OAAO;YACL,OAAO,KAAK,CAAC,IAAI,EAAE;YACnB,+BAA+B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB;YAC1E,sBAAsB,aAAa,oDAAoD;YACvF,yHAAyH;SAC1H,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,MAAM,CAAC,IAAI,EAAE;QACb,KAAK;QACL,8BAA8B;QAC9B,GAAG,iBAAiB;KACrB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,27 @@
1
+ export type MindosDiscoveredSkill = {
2
+ name: string;
3
+ disableModelInvocation?: boolean;
4
+ };
5
+ export type MindosExtensionLoadResult = {
6
+ extensions?: MindosExtensionEntry[];
7
+ errors?: Array<{
8
+ path: string;
9
+ error: string;
10
+ }>;
11
+ };
12
+ export type MindosExtensionEntry = {
13
+ path?: string;
14
+ tools?: unknown;
15
+ };
16
+ export type MindosExtensionLoadError = {
17
+ path: string;
18
+ error: string;
19
+ };
20
+ export type MindosPiResourceLoaderAdapter = {
21
+ reload(): Promise<void>;
22
+ getSkills?(): {
23
+ skills: MindosDiscoveredSkill[];
24
+ };
25
+ getExtensions?(): MindosExtensionLoadResult;
26
+ };
27
+ //# sourceMappingURL=resource-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-types.d.ts","sourceRoot":"","sources":["../../../src/agent/mindos-pi/resource-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACpC,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,SAAS,CAAC,IAAI;QAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAC;IAClD,aAAa,CAAC,IAAI,yBAAyB,CAAC;CAC7C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=resource-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-types.js","sourceRoot":"","sources":["../../../src/agent/mindos-pi/resource-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { type MindosPiAgentRuntimeOptions, type MindosPiAgentRuntimeServices } from '../../session/index.js';
2
+ type PiCodingAgentModule = typeof import('@earendil-works/pi-coding-agent');
3
+ export type MindosPiCodingAgentRuntimeHostServices = Pick<MindosPiAgentRuntimeServices, 'resolveModelConfig' | 'toRuntimeProvider' | 'setKbMode' | 'generateSkillsXml' | 'getOllamaContextWindow' | 'estimateTokens' | 'compactPrompt' | 'onOllamaContext' | 'onOllamaCompactStrip' | 'onOllamaCompacted' | 'onExtensionLoadErrors'>;
4
+ export type MindosPiCodingAgentRuntimeOptions = Omit<MindosPiAgentRuntimeOptions, 'services' | 'bashTool'> & {
5
+ hostServices: MindosPiCodingAgentRuntimeHostServices;
6
+ };
7
+ export declare function createMindosPiCodingAgentRuntimeServices(pi: PiCodingAgentModule, hostServices: MindosPiCodingAgentRuntimeHostServices): MindosPiAgentRuntimeServices;
8
+ export declare function createMindosPiCodingAgentRuntime(options: MindosPiCodingAgentRuntimeOptions): Promise<import("../session/index.js").MindosPiAgentRuntime>;
9
+ export {};
10
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/agent/mindos-pi/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EAClC,MAAM,wBAAwB,CAAC;AAQhC,KAAK,mBAAmB,GAAG,cAAc,iCAAiC,CAAC,CAAC;AAS5E,MAAM,MAAM,sCAAsC,GAAG,IAAI,CACvD,4BAA4B,EAC1B,oBAAoB,GACpB,mBAAmB,GACnB,WAAW,GACX,mBAAmB,GACnB,wBAAwB,GACxB,gBAAgB,GAChB,eAAe,GACf,iBAAiB,GACjB,sBAAsB,GACtB,mBAAmB,GACnB,uBAAuB,CAC1B,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAC3C,IAAI,CAAC,2BAA2B,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;IAC3D,YAAY,EAAE,sCAAsC,CAAC;CACtD,CAAC;AAEJ,wBAAgB,wCAAwC,CACtD,EAAE,EAAE,mBAAmB,EACvB,YAAY,EAAE,sCAAsC,GACnD,4BAA4B,CAY9B;AAED,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,iCAAiC,+DAS3C"}
@@ -0,0 +1,31 @@
1
+ import { nativeImport } from '../../foundation/native-import.js';
2
+ import { createMindosPiAgentRuntime, } from '../../session/index.js';
3
+ import { compactMindosPromptForTokenBudget } from '../prompt/index.js';
4
+ let piModulePromise;
5
+ function loadPiCodingAgent() {
6
+ piModulePromise ??= nativeImport('@earendil-works/pi-coding-agent');
7
+ return piModulePromise;
8
+ }
9
+ export function createMindosPiCodingAgentRuntimeServices(pi, hostServices) {
10
+ return {
11
+ ...hostServices,
12
+ createAuthStorage: () => pi.AuthStorage.create(),
13
+ createModelRegistry: (authStorage) => pi.ModelRegistry.create(authStorage),
14
+ createSettingsManager: (settings) => pi.SettingsManager.inMemory(settings),
15
+ createSessionManager: () => pi.SessionManager.inMemory(),
16
+ createResourceLoader: (config) => new pi.DefaultResourceLoader(config),
17
+ createAgentSession: (config) => pi.createAgentSession(config),
18
+ convertToLlm: (messages) => pi.convertToLlm(messages),
19
+ compactPrompt: hostServices.compactPrompt ?? ((prompt, options) => compactMindosPromptForTokenBudget(prompt, options)),
20
+ };
21
+ }
22
+ export async function createMindosPiCodingAgentRuntime(options) {
23
+ const pi = await loadPiCodingAgent();
24
+ return createMindosPiAgentRuntime({
25
+ ...options,
26
+ // ToolDefinition shape (not AgentTool) — it goes into SDK customTools.
27
+ bashTool: pi.createBashToolDefinition(options.projectRoot),
28
+ services: createMindosPiCodingAgentRuntimeServices(pi, options.hostServices),
29
+ });
30
+ }
31
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/agent/mindos-pi/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EACL,0BAA0B,GAG3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;AASvE,IAAI,eAAyD,CAAC;AAE9D,SAAS,iBAAiB;IACxB,eAAe,KAAK,YAAY,CAAsB,iCAAiC,CAAC,CAAC;IACzF,OAAO,eAAe,CAAC;AACzB,CAAC;AAsBD,MAAM,UAAU,wCAAwC,CACtD,EAAuB,EACvB,YAAoD;IAEpD,OAAO;QACL,GAAG,YAAY;QACf,iBAAiB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE;QAChD,mBAAmB,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,WAAkB,CAAC;QACjF,qBAAqB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAe,CAAC;QACjF,oBAAoB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE;QACxD,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,qBAAqB,CAAC,MAAa,CAAQ;QACpF,kBAAkB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,MAAa,CAAQ;QAC3E,YAAY,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,QAAe,CAAc;QACzE,aAAa,EAAE,YAAY,CAAC,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,iCAAiC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACvH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,OAA0C;IAE1C,MAAM,EAAE,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACrC,OAAO,0BAA0B,CAAC;QAChC,GAAG,OAAO;QACV,uEAAuE;QACvE,QAAQ,EAAE,EAAE,CAAC,wBAAwB,CAAC,OAAO,CAAC,WAAW,CAAC;QAC1D,QAAQ,EAAE,wCAAwC,CAAC,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC;KAC7E,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/extension/extension-tools.js';
2
+ //# sourceMappingURL=extension-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-tools.d.ts","sourceRoot":"","sources":["../../../src/agent/pi/extension-tools.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/extension/extension-tools.js';
2
+ //# sourceMappingURL=extension-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-tools.js","sourceRoot":"","sources":["../../../src/agent/pi/extension-tools.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/index.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/pi/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/index.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/pi/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/resource-types.js';
2
+ //# sourceMappingURL=resource-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-types.d.ts","sourceRoot":"","sources":["../../../src/agent/pi/resource-types.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/resource-types.js';
2
+ //# sourceMappingURL=resource-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-types.js","sourceRoot":"","sources":["../../../src/agent/pi/resource-types.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/runtime.js';
2
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/agent/pi/runtime.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from '../mindos-pi/runtime.js';
2
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/agent/pi/runtime.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"base-prompt.d.ts","sourceRoot":"","sources":["../../../src/agent/prompt/base-prompt.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,6BAA6B,KAAiD,CAAC;AAC5F,eAAO,MAAM,8BAA8B,QAA0D,CAAC;AAEtG,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;CACtB,CAAC;AAmBF,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,CASxF;AA6BD,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,sBAAsB,QAGP,CAAC"}
1
+ {"version":3,"file":"base-prompt.d.ts","sourceRoot":"","sources":["../../../src/agent/prompt/base-prompt.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,6BAA6B,KAAiD,CAAC;AAC5F,eAAO,MAAM,8BAA8B,QAA0D,CAAC;AAEtG,MAAM,MAAM,4BAA4B,GAAG;IACzC,KAAK,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;CACtB,CAAC;AA+CF,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,CASxF;AA6BD,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,sBAAsB,QAGP,CAAC"}
@@ -4,19 +4,37 @@ import { fileURLToPath } from 'node:url';
4
4
  export const MINDOS_AGENT_PROMPT_ASSET_URL = new URL('./agent-prompt.txt', import.meta.url);
5
5
  export const MINDOS_AGENT_PROMPT_ASSET_PATH = normalizePromptAssetPath(MINDOS_AGENT_PROMPT_ASSET_URL);
6
6
  function resolveNextStaticMediaAsset(assetPath) {
7
- if (!assetPath.startsWith('/_next/static/media/'))
8
- return null;
9
7
  const filename = path.basename(assetPath);
8
+ const candidates = [];
9
+ if (assetPath.startsWith('/_next/static/media/')) {
10
+ candidates.push(...(typeof __dirname === 'string' ? [path.join(__dirname, 'static', 'media', filename)] : []), path.join(process.cwd(), '.next', 'dev', 'server', 'static', 'media', filename), path.join(process.cwd(), '.next', 'server', 'static', 'media', filename), path.join(process.cwd(), '.next', 'server', 'chunks', 'static', 'media', filename), path.join(process.cwd(), 'server', 'chunks', 'static', 'media', filename));
11
+ }
12
+ const normalized = assetPath.replace(/\\/g, '/');
13
+ const serverAppMarker = '/server/app/';
14
+ const serverAppIndex = normalized.indexOf(serverAppMarker);
15
+ if (serverAppIndex >= 0 && normalized.includes('/static/media/')) {
16
+ const serverRoot = assetPath.slice(0, serverAppIndex + '/server'.length);
17
+ candidates.push(path.join(serverRoot, 'static', 'media', filename));
18
+ }
19
+ if (candidates.length === 0)
20
+ return null;
21
+ return candidates.find((candidate) => existsSync(candidate)) ?? null;
22
+ }
23
+ function fallbackPromptAssetPath(assetPath) {
24
+ const sourceCandidate = path.join(path.dirname(fileURLToPath(import.meta.url)), 'agent-prompt.txt');
25
+ if (existsSync(sourceCandidate))
26
+ return sourceCandidate;
10
27
  const candidates = [
11
- ...(typeof __dirname === 'string' ? [path.join(__dirname, 'static', 'media', filename)] : []),
12
- path.join(process.cwd(), '.next', 'server', 'chunks', 'static', 'media', filename),
13
- path.join(process.cwd(), 'server', 'chunks', 'static', 'media', filename),
28
+ path.join(process.cwd(), 'packages', 'mindos', 'src', 'agent', 'prompt', 'agent-prompt.txt'),
29
+ path.join(process.cwd(), 'src', 'agent', 'prompt', 'agent-prompt.txt'),
30
+ path.join(process.cwd(), 'agent', 'prompt', 'agent-prompt.txt'),
14
31
  ];
15
- return candidates.find((candidate) => existsSync(candidate)) ?? candidates[0] ?? assetPath;
32
+ return candidates.find((candidate) => existsSync(candidate)) ?? (existsSync(assetPath) ? assetPath : null);
16
33
  }
17
34
  function normalizePromptAssetPath(asset) {
18
35
  const assetPath = typeof asset === 'string' ? asset : asset.toString();
19
36
  return resolveNextStaticMediaAsset(assetPath)
37
+ ?? fallbackPromptAssetPath(assetPath)
20
38
  ?? (assetPath.startsWith('file:') ? fileURLToPath(assetPath) : assetPath);
21
39
  }
22
40
  export function loadMindosAgentPrompt(options = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"base-prompt.js","sourceRoot":"","sources":["../../../src/agent/prompt/base-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5F,MAAM,CAAC,MAAM,8BAA8B,GAAG,wBAAwB,CAAC,6BAA6B,CAAC,CAAC;AAMtG,SAAS,2BAA2B,CAAC,SAAiB;IACpD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG;QACjB,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;QAClF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;KAC1E,CAAC;IACF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;AAC7F,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAmB;IACnD,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACvE,OAAO,2BAA2B,CAAC,SAAS,CAAC;WACxC,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,UAAwC,EAAE;IAC9E,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS;QAC3C,CAAC,CAAC,8BAA8B;QAChC,CAAC,CAAC,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAOD,SAAS,YAAY,CAAC,KAAe,EAAE,QAAyB;IAC9D,OAAO;QACL,GAAG,KAAK;QACR,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,OAAO,CAAC,KAAK,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;KACpF,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,wBAAwB,GAAoB;IAChD;QACE,KAAK,EAAE,OAAO;QACd,IAAI,EAAE;YACJ,qIAAqI;YACrI,qGAAqG;YACrG,+JAA+J;YAC/J,+DAA+D;YAC/D,+DAA+D;YAC/D,4FAA4F;YAC5F,wEAAwE;SACzE;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,EAAE,CAAC;AAE5D;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC;IACjD,uHAAuH;IACvH,2JAA2J;CAC5J,EAAE,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"base-prompt.js","sourceRoot":"","sources":["../../../src/agent/prompt/base-prompt.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { MindosAskFileContext, MindosAskMode } from '../../session/index.js';
2
+ import { type MindosSelectedSkill } from '../selected-skills.js';
2
3
  export type MindosAskPromptMessage = {
3
4
  role?: unknown;
4
5
  content?: unknown;
@@ -17,6 +18,10 @@ export type MindosAskInitializationContext = {
17
18
  };
18
19
  export type BuildMindosContextPromptInput = {
19
20
  prompt: string;
21
+ /**
22
+ * @deprecated Prompt mode is no longer rendered into common turn context.
23
+ * Runtime/profile selection owns mode-specific behavior.
24
+ */
20
25
  mode?: MindosAskMode;
21
26
  mindRoot?: string;
22
27
  currentFile?: string;
@@ -30,7 +35,15 @@ export type BuildMindosContextPromptInput = {
30
35
  messages?: MindosAskPromptMessage[];
31
36
  agentInitialization?: MindosAskInitializationContext;
32
37
  activeRecall?: MindosAskActiveRecallConfig;
38
+ selectedSkills?: MindosSelectedSkill[];
39
+ /**
40
+ * @deprecated Use selectedSkills. Kept for the current single-skill UI/API.
41
+ */
33
42
  selectedSkillName?: string;
43
+ /**
44
+ * @deprecated The Chat Panel bridge is runtime-specific and is no longer
45
+ * rendered by the common turn-context prompt.
46
+ */
34
47
  includeChatPanelBridge?: boolean;
35
48
  };
36
49
  export type BuildMindosContextPromptServices = {
@@ -53,7 +66,18 @@ export type CompactMindosPromptOptions = {
53
66
  estimateTokens: (content: string) => number;
54
67
  onStrip?: (section: string, tokens: number) => void;
55
68
  };
69
+ export type MindosContextPromptSection = {
70
+ title: string;
71
+ content: string | string[];
72
+ };
73
+ export type MindosTurnContext = {
74
+ prompt: string;
75
+ sections: MindosContextPromptSection[];
76
+ selectedSkills: MindosSelectedSkill[];
77
+ };
56
78
  export declare function buildMindosContextPrompt(input: BuildMindosContextPromptInput, services?: BuildMindosContextPromptServices): Promise<string>;
79
+ export declare function buildMindosTurnContext(input: BuildMindosContextPromptInput, services?: BuildMindosContextPromptServices): Promise<MindosTurnContext>;
80
+ export declare function renderMindosContextPrompt(context: MindosTurnContext): string;
57
81
  export declare function formatMindosAskTimeContext(services: Pick<BuildMindosContextPromptServices, 'now' | 'formatLocalTime'>, options: {
58
82
  includeUnix: boolean;
59
83
  }): string;
@@ -1 +1 @@
1
- {"version":3,"file":"context-prompt.d.ts","sourceRoot":"","sources":["../../../src/agent/prompt/context-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAElF,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,iBAAiB,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,mBAAmB,CAAC,EAAE,8BAA8B,CAAC;IACrD,YAAY,CAAC,EAAE,2BAA2B,CAAC;IAC3C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,eAAe,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAClI,eAAe,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QACvC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACtD,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;IACzC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrD,CAAC;AAOF,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,6BAA6B,EACpC,QAAQ,GAAE,gCAAqC,GAC9C,OAAO,CAAC,MAAM,CAAC,CAwCjB;AAED,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,IAAI,CAAC,gCAAgC,EAAE,KAAK,GAAG,iBAAiB,CAAC,EAC3E,OAAO,EAAE;IAAE,WAAW,EAAE,OAAO,CAAA;CAAE,GAChC,MAAM,CAiBR;AAED,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,0BAA0B,GAAG,MAAM,CA4B7G"}
1
+ {"version":3,"file":"context-prompt.d.ts","sourceRoot":"","sources":["../../../src/agent/prompt/context-prompt.ts"],"names":[],"mappings":"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"}
@@ -1,38 +1,35 @@
1
+ import { normalizeMindosSelectedSkills, } from '../selected-skills.js';
1
2
  export async function buildMindosContextPrompt(input, services = {}) {
3
+ return renderMindosContextPrompt(await buildMindosTurnContext(input, services));
4
+ }
5
+ export async function buildMindosTurnContext(input, services = {}) {
2
6
  const prompt = input.prompt.trim();
3
7
  const mode = input.mode ?? 'agent';
4
8
  const fileContext = input.fileContext ?? services.loadFileContext?.(input.attachedFiles, input.currentFile, mode);
5
9
  const recalledKnowledge = input.recalledKnowledge ?? await recallMindosKnowledge(input, services);
6
10
  const contextSections = [];
7
- const modeGuidance = getMindosContextModeGuidance(mode);
8
- if (modeGuidance) {
9
- contextSections.push({
10
- title: 'MindOS Request Guidance',
11
- content: modeGuidance,
12
- });
13
- }
14
11
  contextSections.push({
15
12
  title: 'Current Time Context',
16
13
  content: formatMindosAskTimeContext(services, { includeUnix: true }).replace(/^## Current Time Context\n\n?/, ''),
17
14
  });
18
- if (input.includeChatPanelBridge !== false) {
19
- contextSections.push({
20
- title: 'MindOS Chat Panel Bridge',
21
- content: 'If the available tools include `AskUserQuestion`, use it for user confirmations or structured choices that affect the next action. Keep questions concise and include concrete options.',
22
- });
23
- }
24
- appendActiveSkillRequestSection(contextSections, input.selectedSkillName);
25
15
  appendInitializationContext(contextSections, input);
26
16
  appendFileContextSections(contextSections, fileContext);
27
17
  appendUploadedContextSections(contextSections, input.uploadedParts);
28
18
  appendRecalledKnowledgeSections(contextSections, recalledKnowledge);
29
- if (contextSections.length === 0)
30
- return prompt;
31
- return [
19
+ return {
32
20
  prompt,
21
+ sections: contextSections,
22
+ selectedSkills: normalizeMindosSelectedSkills(input.selectedSkills, input.selectedSkillName),
23
+ };
24
+ }
25
+ export function renderMindosContextPrompt(context) {
26
+ if (context.sections.length === 0)
27
+ return context.prompt;
28
+ return [
29
+ context.prompt,
33
30
  '---',
34
31
  '## MindOS Turn Context',
35
- ...contextSections.map(renderSection),
32
+ ...context.sections.map(renderSection),
36
33
  ].filter(Boolean).join('\n\n');
37
34
  }
38
35
  export function formatMindosAskTimeContext(services, options) {
@@ -118,26 +115,6 @@ function renderSection(section) {
118
115
  const content = Array.isArray(section.content) ? section.content.filter(Boolean).join('\n\n') : section.content;
119
116
  return `## ${section.title}\n\n${content.trim()}`;
120
117
  }
121
- function getMindosContextModeGuidance(mode) {
122
- if (mode === 'organize') {
123
- return 'Prioritize classification, cleanup, and knowledge organization. Use uploaded or selected materials as source material for well-structured MindOS notes when tools and permissions allow it.';
124
- }
125
- return null;
126
- }
127
- function appendActiveSkillRequestSection(sections, selectedSkillName) {
128
- const skillName = selectedSkillName?.trim();
129
- if (!skillName)
130
- return;
131
- const loadSkillCall = `load_skill(${JSON.stringify(skillName)})`;
132
- sections.push({
133
- title: 'Active Skill Request',
134
- content: [
135
- `The user selected the skill "${skillName}" for this turn.`,
136
- `Immediately call \`${loadSkillCall}\` to load the skill's full content before acting.`,
137
- 'Follow the loaded skill instructions for this request. Do not ask which skill the user meant; they already selected it.',
138
- ],
139
- });
140
- }
141
118
  function appendInitializationContext(sections, input) {
142
119
  const initialization = input.agentInitialization ?? {};
143
120
  const initFailures = initialization.initFailures ?? [];