@shareai-lab/kode 2.0.2 → 2.0.3

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 (343) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +649 -25
  3. package/README.zh-CN.md +579 -0
  4. package/cli-acp.js +3 -17
  5. package/cli.js +5 -7
  6. package/dist/chunks/Doctor-M3J7GRTJ.js +12 -0
  7. package/dist/chunks/LogList-ISWZ6DDD.js +121 -0
  8. package/dist/chunks/LogList-ISWZ6DDD.js.map +7 -0
  9. package/dist/chunks/REPL-RQ6LO6S7.js +56 -0
  10. package/dist/chunks/ResumeConversation-6DMVBEGH.js +56 -0
  11. package/dist/chunks/agentLoader-FCRG3TFJ.js +31 -0
  12. package/dist/{agentsValidate-XP3CFN6F.js → chunks/agentsValidate-PEWMYN4Q.js} +97 -69
  13. package/dist/chunks/agentsValidate-PEWMYN4Q.js.map +7 -0
  14. package/dist/{ask-3G5H5KD5.js → chunks/ask-D7SOHJ6Z.js} +36 -44
  15. package/dist/chunks/ask-D7SOHJ6Z.js.map +7 -0
  16. package/dist/chunks/autoUpdater-CNESBOKO.js +19 -0
  17. package/dist/{chunk-EH34V7CY.js → chunks/chunk-2JN5MY67.js} +12 -14
  18. package/dist/chunks/chunk-2JN5MY67.js.map +7 -0
  19. package/dist/chunks/chunk-2QONJ5MG.js +14 -0
  20. package/dist/chunks/chunk-2QONJ5MG.js.map +7 -0
  21. package/dist/chunks/chunk-2WEXPKHH.js +903 -0
  22. package/dist/chunks/chunk-2WEXPKHH.js.map +7 -0
  23. package/dist/{chunk-K2MI4TPB.js → chunks/chunk-3BYE3ME6.js} +717 -792
  24. package/dist/chunks/chunk-3BYE3ME6.js.map +7 -0
  25. package/dist/chunks/chunk-3JDNWX7W.js +1264 -0
  26. package/dist/chunks/chunk-3JDNWX7W.js.map +7 -0
  27. package/dist/chunks/chunk-3OEJVB5A.js +906 -0
  28. package/dist/chunks/chunk-3OEJVB5A.js.map +7 -0
  29. package/dist/chunks/chunk-3TNIOEBO.js +369 -0
  30. package/dist/chunks/chunk-3TNIOEBO.js.map +7 -0
  31. package/dist/chunks/chunk-4A46ZXMJ.js +67 -0
  32. package/dist/chunks/chunk-4A46ZXMJ.js.map +7 -0
  33. package/dist/{chunk-4GAIJGRH.js → chunks/chunk-4ATBQOFO.js} +107 -55
  34. package/dist/chunks/chunk-4ATBQOFO.js.map +7 -0
  35. package/dist/chunks/chunk-4CRUCZR4.js +0 -0
  36. package/dist/{chunk-54DNHKOD.js → chunks/chunk-4EO6SIQY.js} +32 -75
  37. package/dist/chunks/chunk-4EO6SIQY.js.map +7 -0
  38. package/dist/chunks/chunk-53M46S5I.js +64 -0
  39. package/dist/chunks/chunk-53M46S5I.js.map +7 -0
  40. package/dist/{chunk-JC6NCUG5.js → chunks/chunk-54KOYG5C.js} +0 -2
  41. package/dist/{chunk-EZXMVTDU.js → chunks/chunk-6BAS4WY6.js} +29 -45
  42. package/dist/chunks/chunk-6BAS4WY6.js.map +7 -0
  43. package/dist/{chunk-BHGTA6JQ.js → chunks/chunk-6KRRFSDN.js} +4 -6
  44. package/dist/chunks/chunk-6KRRFSDN.js.map +7 -0
  45. package/dist/chunks/chunk-6LJNZK4K.js +39 -0
  46. package/dist/chunks/chunk-6LJNZK4K.js.map +7 -0
  47. package/dist/chunks/chunk-6ZWEOSEI.js +666 -0
  48. package/dist/chunks/chunk-6ZWEOSEI.js.map +7 -0
  49. package/dist/chunks/chunk-77XDJMBP.js +3326 -0
  50. package/dist/chunks/chunk-77XDJMBP.js.map +7 -0
  51. package/dist/chunks/chunk-7RRW4NTB.js +6454 -0
  52. package/dist/chunks/chunk-7RRW4NTB.js.map +7 -0
  53. package/dist/chunks/chunk-7X3TW4JB.js +4520 -0
  54. package/dist/chunks/chunk-7X3TW4JB.js.map +7 -0
  55. package/dist/chunks/chunk-B3MW3YGY.js +1409 -0
  56. package/dist/chunks/chunk-B3MW3YGY.js.map +7 -0
  57. package/dist/chunks/chunk-BBJFHTBC.js +28 -0
  58. package/dist/chunks/chunk-BBJFHTBC.js.map +7 -0
  59. package/dist/chunks/chunk-BHDHXOXB.js +24 -0
  60. package/dist/chunks/chunk-BHDHXOXB.js.map +7 -0
  61. package/dist/{chunk-OZNRLY3E.js → chunks/chunk-BTA7SZ26.js} +152 -223
  62. package/dist/chunks/chunk-BTA7SZ26.js.map +7 -0
  63. package/dist/chunks/chunk-CDGRYGPZ.js +103 -0
  64. package/dist/chunks/chunk-CDGRYGPZ.js.map +7 -0
  65. package/dist/{chunk-S6HRABTA.js → chunks/chunk-CP6E5UG6.js} +1 -4
  66. package/dist/chunks/chunk-CP6E5UG6.js.map +7 -0
  67. package/dist/{chunk-2PMO2FS2.js → chunks/chunk-DQ4JHXMT.js} +462 -424
  68. package/dist/chunks/chunk-DQ4JHXMT.js.map +7 -0
  69. package/dist/chunks/chunk-DXD76CMV.js +208 -0
  70. package/dist/chunks/chunk-DXD76CMV.js.map +7 -0
  71. package/dist/chunks/chunk-GCQCAXJZ.js +0 -0
  72. package/dist/chunks/chunk-GELCZWMB.js +42 -0
  73. package/dist/chunks/chunk-GELCZWMB.js.map +7 -0
  74. package/dist/{chunk-NQLEUHMS.js → chunks/chunk-HJYOH4HC.js} +23 -18
  75. package/dist/chunks/chunk-HJYOH4HC.js.map +7 -0
  76. package/dist/chunks/chunk-HPYNW6TT.js +744 -0
  77. package/dist/chunks/chunk-HPYNW6TT.js.map +7 -0
  78. package/dist/{chunk-2KWKUXLT.js → chunks/chunk-HRJ3ICQK.js} +59 -55
  79. package/dist/chunks/chunk-HRJ3ICQK.js.map +7 -0
  80. package/dist/{chunk-ZQU3TXLC.js → chunks/chunk-IFCIADS3.js} +571 -573
  81. package/dist/chunks/chunk-IFCIADS3.js.map +7 -0
  82. package/dist/chunks/chunk-IN7XZ7BC.js +27 -0
  83. package/dist/chunks/chunk-IN7XZ7BC.js.map +7 -0
  84. package/dist/chunks/chunk-L7P4M4KW.js +193 -0
  85. package/dist/chunks/chunk-L7P4M4KW.js.map +7 -0
  86. package/dist/chunks/chunk-LB6TCPDI.js +0 -0
  87. package/dist/{chunk-3RUXVV4S.js → chunks/chunk-LOCXPQNJ.js} +1 -4
  88. package/dist/{chunk-3RUXVV4S.js.map → chunks/chunk-LOCXPQNJ.js.map} +2 -2
  89. package/dist/{chunk-IE2CG2TV.js → chunks/chunk-LOD5ZHCI.js} +213 -208
  90. package/dist/chunks/chunk-LOD5ZHCI.js.map +7 -0
  91. package/dist/{chunk-S3J2TLV6.js → chunks/chunk-M7P3QNRU.js} +1 -4
  92. package/dist/{chunk-S3J2TLV6.js.map → chunks/chunk-M7P3QNRU.js.map} +2 -2
  93. package/dist/chunks/chunk-PPHLQVL7.js +4234 -0
  94. package/dist/chunks/chunk-PPHLQVL7.js.map +7 -0
  95. package/dist/{chunk-ABLVTESJ.js → chunks/chunk-QAXE37B5.js} +1 -4
  96. package/dist/chunks/chunk-QAXE37B5.js.map +7 -0
  97. package/dist/chunks/chunk-QHQOBUF6.js +60 -0
  98. package/dist/chunks/chunk-QHQOBUF6.js.map +7 -0
  99. package/dist/{chunk-SRZZFAS7.js → chunks/chunk-RPJXO7GG.js} +241 -214
  100. package/dist/chunks/chunk-RPJXO7GG.js.map +7 -0
  101. package/dist/{chunk-NPFOMITO.js → chunks/chunk-SWQV4KSY.js} +1 -4
  102. package/dist/{chunk-NPFOMITO.js.map → chunks/chunk-SWQV4KSY.js.map} +2 -2
  103. package/dist/chunks/chunk-SZLAPULP.js +28 -0
  104. package/dist/chunks/chunk-SZLAPULP.js.map +7 -0
  105. package/dist/{chunk-SDGKPKDK.js → chunks/chunk-T7RB5V5J.js} +23 -25
  106. package/dist/chunks/chunk-T7RB5V5J.js.map +7 -0
  107. package/dist/{chunk-HN4E4UUQ.js → chunks/chunk-TI2CTTMA.js} +25 -17
  108. package/dist/chunks/chunk-TI2CTTMA.js.map +7 -0
  109. package/dist/{chunk-G6I7XROM.js → chunks/chunk-TNGVRTO5.js} +45 -20
  110. package/dist/chunks/chunk-TNGVRTO5.js.map +7 -0
  111. package/dist/chunks/chunk-TNWB3U5Y.js +2077 -0
  112. package/dist/chunks/chunk-TNWB3U5Y.js.map +7 -0
  113. package/dist/chunks/chunk-U2IHWPCU.js +12 -0
  114. package/dist/chunks/chunk-U2IHWPCU.js.map +7 -0
  115. package/dist/{chunk-KAA5BGMQ.js → chunks/chunk-UNOY3VJ2.js} +1 -4
  116. package/dist/{chunk-KAA5BGMQ.js.map → chunks/chunk-UNOY3VJ2.js.map} +2 -2
  117. package/dist/{chunk-3TXNP6HH.js → chunks/chunk-UVDJL6ZZ.js} +97 -58
  118. package/dist/chunks/chunk-UVDJL6ZZ.js.map +7 -0
  119. package/dist/chunks/chunk-VNCW4C2Z.js +13452 -0
  120. package/dist/chunks/chunk-VNCW4C2Z.js.map +7 -0
  121. package/dist/chunks/chunk-W5EGGA44.js +15 -0
  122. package/dist/chunks/chunk-W5EGGA44.js.map +7 -0
  123. package/dist/chunks/chunk-XR2W3MAM.js +1533 -0
  124. package/dist/chunks/chunk-XR2W3MAM.js.map +7 -0
  125. package/dist/{chunk-QYFKRZQC.js → chunks/chunk-YIO5EBMQ.js} +423 -377
  126. package/dist/chunks/chunk-YIO5EBMQ.js.map +7 -0
  127. package/dist/chunks/chunk-ZBVLKZ5V.js +1062 -0
  128. package/dist/chunks/chunk-ZBVLKZ5V.js.map +7 -0
  129. package/dist/{chunk-E6YNABER.js → chunks/chunk-ZCLTZIVP.js} +1 -4
  130. package/dist/chunks/chunk-ZCLTZIVP.js.map +7 -0
  131. package/dist/chunks/client-SILZNM5N.js +42 -0
  132. package/dist/{config-6ZMBCL23.js → chunks/config-25HRTPSP.js} +48 -10
  133. package/dist/chunks/cost-tracker-Z2UZT2J5.js +28 -0
  134. package/dist/{customCommands-DNEJS3ZU.js → chunks/customCommands-TYMYZRG5.js} +11 -8
  135. package/dist/chunks/engine-MRVF6FK6.js +39 -0
  136. package/dist/{env-OFAXZ3XG.js → chunks/env-TJ5NOBEB.js} +7 -5
  137. package/dist/{kodeAgentSessionId-X6XWQW7B.js → chunks/kodeAgentSessionId-VTNISJ2L.js} +2 -4
  138. package/dist/chunks/kodeAgentSessionLoad-YB2RKBGJ.js +15 -0
  139. package/dist/chunks/kodeAgentSessionResume-DZSIVKVA.js +13 -0
  140. package/dist/chunks/kodeAgentStreamJson-X5PLS2S6.js +11 -0
  141. package/dist/{kodeAgentStreamJsonSession-GRWG3SPE.js → chunks/kodeAgentStreamJsonSession-RDXM4XYF.js} +38 -24
  142. package/dist/chunks/kodeAgentStreamJsonSession-RDXM4XYF.js.map +7 -0
  143. package/dist/{chunk-4RTX4AG4.js → chunks/kodeAgentStructuredStdio-SVGDSB4P.js} +14 -9
  144. package/dist/chunks/kodeAgentStructuredStdio-SVGDSB4P.js.map +7 -0
  145. package/dist/{kodeHooks-TDMXFWSO.js → chunks/kodeHooks-RVKYRJHG.js} +11 -9
  146. package/dist/{llm-XVXWYOHK.js → chunks/llm-62N6T5ZT.js} +1734 -1526
  147. package/dist/chunks/llm-62N6T5ZT.js.map +7 -0
  148. package/dist/chunks/llmLazy-ZUSSE3ZA.js +13 -0
  149. package/dist/{mentionProcessor-YD7YXYGF.js → chunks/mentionProcessor-RJW5UPJD.js} +46 -16
  150. package/dist/chunks/mentionProcessor-RJW5UPJD.js.map +7 -0
  151. package/dist/{messages-OFUJSPRV.js → chunks/messages-EEWWLPHN.js} +2 -6
  152. package/dist/chunks/model-5TIEKQPD.js +37 -0
  153. package/dist/{openai-5G5D5Q4B.js → chunks/openai-XXK3YZG4.js} +13 -10
  154. package/dist/{outputStyles-HLDXFQK3.js → chunks/outputStyles-FAJTXN2A.js} +6 -9
  155. package/dist/chunks/permissions-HO7INPWM.js +27 -0
  156. package/dist/{pluginRuntime-FPTKK6NY.js → chunks/pluginRuntime-C7K5ULK2.js} +31 -48
  157. package/dist/chunks/pluginRuntime-C7K5ULK2.js.map +7 -0
  158. package/dist/chunks/pluginValidation-DAM7WRTC.js +20 -0
  159. package/dist/chunks/registry-XYJXMOA5.js +60 -0
  160. package/dist/chunks/responsesStreaming-JNGE2P3D.js +8 -0
  161. package/dist/chunks/runNonTextPrintMode-SVBLCZQX.js +577 -0
  162. package/dist/chunks/runNonTextPrintMode-SVBLCZQX.js.map +7 -0
  163. package/dist/chunks/server-REXXF5IK.js +46 -0
  164. package/dist/{skillMarketplace-PSNKDINM.js → chunks/skillMarketplace-N4HVHNST.js} +8 -6
  165. package/dist/chunks/src-OROQIWP3.js +44 -0
  166. package/dist/chunks/src-QXLGGMUW.js +1647 -0
  167. package/dist/chunks/src-QXLGGMUW.js.map +7 -0
  168. package/dist/{cli-SRV2INSL.js → chunks/src-SSDT6MVP.js} +2659 -3384
  169. package/dist/chunks/src-SSDT6MVP.js.map +7 -0
  170. package/dist/chunks/theme-YBJUIMWK.js +10 -0
  171. package/dist/{toolPermissionContext-65L65VEZ.js → chunks/toolPermissionContext-MOCTRR7N.js} +2 -4
  172. package/dist/chunks/toolPermissionSettings-EV2EJAXL.js +18 -0
  173. package/dist/chunks/toolPermissionSettings-EV2EJAXL.js.map +7 -0
  174. package/dist/chunks/uuid-6577SO6X.js +7 -0
  175. package/dist/chunks/uuid-6577SO6X.js.map +7 -0
  176. package/dist/chunks/webOnlyMode-ALXX7UQY.js +66 -0
  177. package/dist/chunks/webOnlyMode-ALXX7UQY.js.map +7 -0
  178. package/dist/entrypoints/cli.js +10 -0
  179. package/dist/entrypoints/cli.js.map +7 -0
  180. package/dist/entrypoints/daemon.js +10 -0
  181. package/dist/entrypoints/daemon.js.map +7 -0
  182. package/dist/entrypoints/mcp.js +71 -0
  183. package/dist/entrypoints/mcp.js.map +7 -0
  184. package/dist/index.js +6 -7
  185. package/dist/index.js.map +3 -3
  186. package/dist/sdk/client.cjs +391 -0
  187. package/dist/sdk/client.cjs.map +7 -0
  188. package/dist/sdk/client.js +364 -0
  189. package/dist/sdk/client.js.map +7 -0
  190. package/dist/sdk/core.cjs +19932 -0
  191. package/dist/sdk/core.cjs.map +7 -0
  192. package/dist/sdk/core.js +19893 -0
  193. package/dist/sdk/core.js.map +7 -0
  194. package/dist/sdk/daemon-client.cjs +257 -0
  195. package/dist/sdk/daemon-client.cjs.map +7 -0
  196. package/dist/sdk/daemon-client.js +221 -0
  197. package/dist/sdk/daemon-client.js.map +7 -0
  198. package/dist/sdk/protocol.cjs +170 -0
  199. package/dist/sdk/protocol.cjs.map +7 -0
  200. package/dist/sdk/protocol.js +140 -0
  201. package/dist/sdk/protocol.js.map +7 -0
  202. package/dist/sdk/runtime-node.cjs +236 -0
  203. package/dist/sdk/runtime-node.cjs.map +7 -0
  204. package/dist/sdk/runtime-node.js +222 -0
  205. package/dist/sdk/runtime-node.js.map +7 -0
  206. package/dist/sdk/runtime.cjs +17 -0
  207. package/dist/sdk/runtime.cjs.map +7 -0
  208. package/dist/sdk/runtime.js +0 -0
  209. package/dist/sdk/runtime.js.map +7 -0
  210. package/dist/sdk/tools.cjs +30300 -0
  211. package/dist/sdk/tools.cjs.map +7 -0
  212. package/dist/sdk/tools.js +30282 -0
  213. package/dist/sdk/tools.js.map +7 -0
  214. package/dist/webui/assets/index-5hlfByVS.css +1 -0
  215. package/dist/webui/assets/index-BR9lm1lA.js +82 -0
  216. package/dist/webui/index.html +28 -0
  217. package/package.json +93 -22
  218. package/scripts/binary-utils.cjs +12 -4
  219. package/scripts/cli-acp-wrapper.cjs +3 -17
  220. package/scripts/cli-wrapper.cjs +5 -7
  221. package/scripts/postinstall.js +8 -4
  222. package/dist/REPL-GIU4ZIXM.js +0 -42
  223. package/dist/acp-H3VJ77YG.js +0 -1357
  224. package/dist/acp-H3VJ77YG.js.map +0 -7
  225. package/dist/agentsValidate-XP3CFN6F.js.map +0 -7
  226. package/dist/ask-3G5H5KD5.js.map +0 -7
  227. package/dist/autoUpdater-DNRMJWFQ.js +0 -17
  228. package/dist/chunk-2KWKUXLT.js.map +0 -7
  229. package/dist/chunk-2PMO2FS2.js.map +0 -7
  230. package/dist/chunk-3TXNP6HH.js.map +0 -7
  231. package/dist/chunk-4GAIJGRH.js.map +0 -7
  232. package/dist/chunk-4RTX4AG4.js.map +0 -7
  233. package/dist/chunk-54DNHKOD.js.map +0 -7
  234. package/dist/chunk-67PY5IX6.js +0 -34
  235. package/dist/chunk-67PY5IX6.js.map +0 -7
  236. package/dist/chunk-6DRDLOLP.js +0 -2613
  237. package/dist/chunk-6DRDLOLP.js.map +0 -7
  238. package/dist/chunk-7CQVZNQV.js +0 -1609
  239. package/dist/chunk-7CQVZNQV.js.map +0 -7
  240. package/dist/chunk-ABLVTESJ.js.map +0 -7
  241. package/dist/chunk-AIMIPK4B.js +0 -835
  242. package/dist/chunk-AIMIPK4B.js.map +0 -7
  243. package/dist/chunk-BHGTA6JQ.js.map +0 -7
  244. package/dist/chunk-CIG63V4E.js +0 -72
  245. package/dist/chunk-CIG63V4E.js.map +0 -7
  246. package/dist/chunk-E6YNABER.js.map +0 -7
  247. package/dist/chunk-EH34V7CY.js.map +0 -7
  248. package/dist/chunk-EZXMVTDU.js.map +0 -7
  249. package/dist/chunk-FH5CHM6L.js +0 -148
  250. package/dist/chunk-FH5CHM6L.js.map +0 -7
  251. package/dist/chunk-G6I7XROM.js.map +0 -7
  252. package/dist/chunk-HN4E4UUQ.js.map +0 -7
  253. package/dist/chunk-HSPVVDIW.js +0 -30198
  254. package/dist/chunk-HSPVVDIW.js.map +0 -7
  255. package/dist/chunk-IE2CG2TV.js.map +0 -7
  256. package/dist/chunk-K2MI4TPB.js.map +0 -7
  257. package/dist/chunk-MN77D2F7.js +0 -2931
  258. package/dist/chunk-MN77D2F7.js.map +0 -7
  259. package/dist/chunk-NQLEUHMS.js.map +0 -7
  260. package/dist/chunk-OIFQB3S4.js +0 -515
  261. package/dist/chunk-OIFQB3S4.js.map +0 -7
  262. package/dist/chunk-OWTG2W3A.js +0 -164
  263. package/dist/chunk-OWTG2W3A.js.map +0 -7
  264. package/dist/chunk-OZNRLY3E.js.map +0 -7
  265. package/dist/chunk-QYFKRZQC.js.map +0 -7
  266. package/dist/chunk-S6HRABTA.js.map +0 -7
  267. package/dist/chunk-SDGKPKDK.js.map +0 -7
  268. package/dist/chunk-SRZZFAS7.js.map +0 -7
  269. package/dist/chunk-UKHTVRJM.js +0 -47
  270. package/dist/chunk-UKHTVRJM.js.map +0 -7
  271. package/dist/chunk-UYXEDKOZ.js +0 -24
  272. package/dist/chunk-UYXEDKOZ.js.map +0 -7
  273. package/dist/chunk-VBXVYQYY.js +0 -145
  274. package/dist/chunk-VBXVYQYY.js.map +0 -7
  275. package/dist/chunk-WVHORZQ5.js +0 -17
  276. package/dist/chunk-WVHORZQ5.js.map +0 -7
  277. package/dist/chunk-WWUWDNWW.js +0 -49
  278. package/dist/chunk-WWUWDNWW.js.map +0 -7
  279. package/dist/chunk-Z33T5YN5.js +0 -654
  280. package/dist/chunk-Z33T5YN5.js.map +0 -7
  281. package/dist/chunk-ZQU3TXLC.js.map +0 -7
  282. package/dist/cli-SRV2INSL.js.map +0 -7
  283. package/dist/commands-TWH6PGVG.js +0 -46
  284. package/dist/context-JQIOOI4W.js +0 -30
  285. package/dist/costTracker-6SL26FDB.js +0 -19
  286. package/dist/kodeAgentSessionLoad-6N27AC5K.js +0 -18
  287. package/dist/kodeAgentSessionResume-HUSAEO24.js +0 -16
  288. package/dist/kodeAgentStreamJson-NXFN7TXH.js +0 -13
  289. package/dist/kodeAgentStreamJsonSession-GRWG3SPE.js.map +0 -7
  290. package/dist/kodeAgentStructuredStdio-HGWJT7CU.js +0 -10
  291. package/dist/llm-XVXWYOHK.js.map +0 -7
  292. package/dist/llmLazy-7TD5N7XP.js +0 -15
  293. package/dist/loader-AUXIJTY6.js +0 -28
  294. package/dist/mcp-BXJ3K7NZ.js +0 -49
  295. package/dist/mentionProcessor-YD7YXYGF.js.map +0 -7
  296. package/dist/model-KPYCXWBK.js +0 -30
  297. package/dist/pluginRuntime-FPTKK6NY.js.map +0 -7
  298. package/dist/pluginValidation-DSFXZ4GF.js +0 -17
  299. package/dist/prompts-LWLAJRS2.js +0 -48
  300. package/dist/query-HVPWL27C.js +0 -50
  301. package/dist/responsesStreaming-AW344PQO.js +0 -10
  302. package/dist/ripgrep-YOPCY2GO.js +0 -17
  303. package/dist/state-KNRWP3FO.js +0 -16
  304. package/dist/theme-7S2QN2FO.js +0 -14
  305. package/dist/toolPermissionSettings-GPOBH4IV.js +0 -18
  306. package/dist/tools-FZU2FZBD.js +0 -47
  307. package/dist/userInput-VHNBN2MW.js +0 -311
  308. package/dist/userInput-VHNBN2MW.js.map +0 -7
  309. package/dist/uuid-QN2CNKKN.js +0 -9
  310. /package/dist/{REPL-GIU4ZIXM.js.map → chunks/Doctor-M3J7GRTJ.js.map} +0 -0
  311. /package/dist/{autoUpdater-DNRMJWFQ.js.map → chunks/REPL-RQ6LO6S7.js.map} +0 -0
  312. /package/dist/{chunk-JC6NCUG5.js.map → chunks/ResumeConversation-6DMVBEGH.js.map} +0 -0
  313. /package/dist/{commands-TWH6PGVG.js.map → chunks/agentLoader-FCRG3TFJ.js.map} +0 -0
  314. /package/dist/{config-6ZMBCL23.js.map → chunks/autoUpdater-CNESBOKO.js.map} +0 -0
  315. /package/dist/{context-JQIOOI4W.js.map → chunks/chunk-4CRUCZR4.js.map} +0 -0
  316. /package/dist/{costTracker-6SL26FDB.js.map → chunks/chunk-54KOYG5C.js.map} +0 -0
  317. /package/dist/{customCommands-DNEJS3ZU.js.map → chunks/chunk-GCQCAXJZ.js.map} +0 -0
  318. /package/dist/{env-OFAXZ3XG.js.map → chunks/chunk-LB6TCPDI.js.map} +0 -0
  319. /package/dist/{kodeAgentSessionId-X6XWQW7B.js.map → chunks/client-SILZNM5N.js.map} +0 -0
  320. /package/dist/{kodeAgentSessionLoad-6N27AC5K.js.map → chunks/config-25HRTPSP.js.map} +0 -0
  321. /package/dist/{kodeAgentSessionResume-HUSAEO24.js.map → chunks/cost-tracker-Z2UZT2J5.js.map} +0 -0
  322. /package/dist/{kodeAgentStreamJson-NXFN7TXH.js.map → chunks/customCommands-TYMYZRG5.js.map} +0 -0
  323. /package/dist/{kodeAgentStructuredStdio-HGWJT7CU.js.map → chunks/engine-MRVF6FK6.js.map} +0 -0
  324. /package/dist/{kodeHooks-TDMXFWSO.js.map → chunks/env-TJ5NOBEB.js.map} +0 -0
  325. /package/dist/{llmLazy-7TD5N7XP.js.map → chunks/kodeAgentSessionId-VTNISJ2L.js.map} +0 -0
  326. /package/dist/{loader-AUXIJTY6.js.map → chunks/kodeAgentSessionLoad-YB2RKBGJ.js.map} +0 -0
  327. /package/dist/{mcp-BXJ3K7NZ.js.map → chunks/kodeAgentSessionResume-DZSIVKVA.js.map} +0 -0
  328. /package/dist/{messages-OFUJSPRV.js.map → chunks/kodeAgentStreamJson-X5PLS2S6.js.map} +0 -0
  329. /package/dist/{model-KPYCXWBK.js.map → chunks/kodeHooks-RVKYRJHG.js.map} +0 -0
  330. /package/dist/{openai-5G5D5Q4B.js.map → chunks/llmLazy-ZUSSE3ZA.js.map} +0 -0
  331. /package/dist/{outputStyles-HLDXFQK3.js.map → chunks/messages-EEWWLPHN.js.map} +0 -0
  332. /package/dist/{pluginValidation-DSFXZ4GF.js.map → chunks/model-5TIEKQPD.js.map} +0 -0
  333. /package/dist/{prompts-LWLAJRS2.js.map → chunks/openai-XXK3YZG4.js.map} +0 -0
  334. /package/dist/{query-HVPWL27C.js.map → chunks/outputStyles-FAJTXN2A.js.map} +0 -0
  335. /package/dist/{responsesStreaming-AW344PQO.js.map → chunks/permissions-HO7INPWM.js.map} +0 -0
  336. /package/dist/{ripgrep-YOPCY2GO.js.map → chunks/pluginValidation-DAM7WRTC.js.map} +0 -0
  337. /package/dist/{skillMarketplace-PSNKDINM.js.map → chunks/registry-XYJXMOA5.js.map} +0 -0
  338. /package/dist/{state-KNRWP3FO.js.map → chunks/responsesStreaming-JNGE2P3D.js.map} +0 -0
  339. /package/dist/{theme-7S2QN2FO.js.map → chunks/server-REXXF5IK.js.map} +0 -0
  340. /package/dist/{toolPermissionContext-65L65VEZ.js.map → chunks/skillMarketplace-N4HVHNST.js.map} +0 -0
  341. /package/dist/{toolPermissionSettings-GPOBH4IV.js.map → chunks/src-OROQIWP3.js.map} +0 -0
  342. /package/dist/{tools-FZU2FZBD.js.map → chunks/theme-YBJUIMWK.js.map} +0 -0
  343. /package/dist/{uuid-QN2CNKKN.js.map → chunks/toolPermissionContext-MOCTRR7N.js.map} +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/services/plugins/pluginRuntime.ts"],
4
- "sourcesContent": ["import { existsSync, readFileSync, statSync } from 'fs'\nimport { homedir } from 'os'\nimport { join, resolve } from 'path'\nimport { z } from 'zod'\nimport { glob as globLib } from 'glob'\nimport { getCwd } from '@utils/state'\nimport { setSessionPlugins, type SessionPlugin } from '@utils/session/sessionPlugins'\n\nconst PluginManifestSchema = z\n .object({\n name: z.string().min(1),\n })\n .passthrough()\n\nfunction expandHome(input: string): string {\n const trimmed = input.trim()\n if (trimmed === '~') return homedir()\n if (trimmed.startsWith('~/') || trimmed.startsWith('~\\\\')) {\n return join(homedir(), trimmed.slice(2))\n }\n return trimmed\n}\n\nfunction isLikelyGlob(value: string): boolean {\n return /[*?[\\]]/.test(value)\n}\n\nasync function expandPluginDirInputs(\n pluginDirs: string[],\n baseDir: string,\n): Promise<string[]> {\n const out: string[] = []\n for (const raw of pluginDirs) {\n const trimmed = String(raw ?? '').trim()\n if (!trimmed) continue\n const expanded = expandHome(trimmed)\n const abs = resolve(baseDir, expanded)\n\n if (isLikelyGlob(trimmed) || isLikelyGlob(expanded)) {\n const patternsToTry = expanded !== trimmed ? [expanded, trimmed] : [trimmed]\n let matched = false\n for (const pattern of patternsToTry) {\n try {\n const matches = await globLib(pattern, {\n cwd: baseDir,\n absolute: true,\n nodir: false,\n nocase: process.platform === 'win32',\n })\n const dirs = matches.filter(match => {\n try {\n return existsSync(match) && statSync(match).isDirectory()\n } catch {\n return false\n }\n })\n if (dirs.length > 0) {\n out.push(...dirs)\n matched = true\n break\n }\n } catch {\n }\n }\n if (matched) continue\n }\n\n out.push(abs)\n }\n\n const seen = new Set<string>()\n const unique: string[] = []\n for (const item of out) {\n const key = item\n if (seen.has(key)) continue\n seen.add(key)\n unique.push(item)\n }\n return unique\n}\n\nfunction listIfDir(path: string): string[] {\n try {\n if (!existsSync(path)) return []\n if (!statSync(path).isDirectory()) return []\n return [path]\n } catch {\n return []\n }\n}\n\nfunction fileIfExists(path: string): string[] {\n try {\n if (!existsSync(path)) return []\n if (!statSync(path).isFile()) return []\n return [path]\n } catch {\n return []\n }\n}\n\nfunction resolveManifestPaths(\n rootDir: string,\n value: unknown,\n): { dirs: string[]; files: string[] } {\n const dirs: string[] = []\n const files: string[] = []\n const list = Array.isArray(value) ? value : value ? [value] : []\n for (const item of list) {\n if (typeof item !== 'string') continue\n const abs = resolve(rootDir, item)\n dirs.push(...listIfDir(abs))\n files.push(...fileIfExists(abs))\n }\n return { dirs, files }\n}\n\nfunction loadPluginFromDir(rootDir: string): SessionPlugin {\n const primaryManifestPath = join(rootDir, '.kode-plugin', 'plugin.json')\n const legacyManifestPath = join(rootDir, '.claude-plugin', 'plugin.json')\n const manifestPath = existsSync(primaryManifestPath)\n ? primaryManifestPath\n : legacyManifestPath\n if (!existsSync(manifestPath)) {\n throw new Error(\n `Plugin manifest not found (expected .kode-plugin/plugin.json or .claude-plugin/plugin.json)`,\n )\n }\n\n let manifestRaw: string\n try {\n manifestRaw = readFileSync(manifestPath, 'utf8')\n } catch (err) {\n throw new Error(`Failed to read ${manifestPath}: ${String(err)}`)\n }\n\n let manifestJson: unknown\n try {\n manifestJson = JSON.parse(manifestRaw)\n } catch (err) {\n throw new Error(`Invalid JSON in ${manifestPath}: ${String(err)}`)\n }\n\n const parsed = PluginManifestSchema.safeParse(manifestJson)\n if (!parsed.success) {\n throw new Error(\n `Invalid plugin manifest schema in ${manifestPath}: ${parsed.error.message}`,\n )\n }\n\n const name = parsed.data.name\n const manifestCommands = resolveManifestPaths(\n rootDir,\n (parsed.data as any).commands,\n )\n const manifestAgents = resolveManifestPaths(\n rootDir,\n (parsed.data as any).agents,\n )\n const commandsDirs = [\n ...listIfDir(join(rootDir, 'commands')),\n ...manifestCommands.dirs,\n ...manifestCommands.files,\n ]\n const skillsDirs = [\n ...listIfDir(join(rootDir, 'skills')),\n ...resolveManifestPaths(rootDir, (parsed.data as any).skills).dirs,\n ]\n const agentsDirs = [\n ...listIfDir(join(rootDir, 'agents')),\n ...manifestAgents.dirs,\n ...manifestAgents.files,\n ]\n const manifestOutputStyles = resolveManifestPaths(\n rootDir,\n (parsed.data as any).outputStyles,\n )\n const outputStylesDirs = [\n ...listIfDir(join(rootDir, 'output-styles')),\n ...manifestOutputStyles.dirs,\n ...manifestOutputStyles.files,\n ]\n\n const standardHook = fileIfExists(join(rootDir, 'hooks', 'hooks.json'))\n const hookFromManifest = resolveManifestPaths(\n rootDir,\n (parsed.data as any).hooks,\n ).files\n const hooksFiles = [...standardHook, ...hookFromManifest]\n\n const mcpConfigFiles = [\n ...fileIfExists(join(rootDir, '.mcp.json')),\n ...fileIfExists(join(rootDir, '.mcp.jsonc')),\n ...resolveManifestPaths(rootDir, (parsed.data as any).mcpServers).files,\n ]\n\n return {\n name,\n rootDir,\n manifestPath,\n manifest: parsed.data,\n commandsDirs,\n skillsDirs,\n agentsDirs,\n hooksFiles,\n outputStylesDirs,\n mcpConfigFiles,\n }\n}\n\nexport async function configureSessionPlugins(args: {\n pluginDirs: string[]\n baseDir?: string\n}): Promise<{ plugins: SessionPlugin[]; errors: string[] }> {\n const baseDir = args.baseDir ?? getCwd()\n const dirs = await expandPluginDirInputs(args.pluginDirs ?? [], baseDir)\n\n const plugins: SessionPlugin[] = []\n const errors: string[] = []\n\n for (const dir of dirs) {\n try {\n plugins.push(loadPluginFromDir(dir))\n } catch (err) {\n errors.push(err instanceof Error ? err.message : String(err))\n }\n }\n\n setSessionPlugins(plugins)\n\n const { reloadCustomCommands } = await import('@services/customCommands')\n reloadCustomCommands()\n const { getCommands } = await import('@commands')\n getCommands.cache.clear?.()\n\n const { getClients, getMCPTools } = await import('@services/mcpClient')\n ;(getClients as any).cache?.clear?.()\n ;(getMCPTools as any).cache?.clear?.()\n\n const { clearOutputStyleCache } = await import('@services/outputStyles')\n clearOutputStyleCache()\n\n return { plugins, errors }\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,17 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- formatValidationResult,
5
- validatePluginOrMarketplacePath
6
- } from "./chunk-4GAIJGRH.js";
7
- import "./chunk-2PMO2FS2.js";
8
- import "./chunk-SRZZFAS7.js";
9
- import "./chunk-S3J2TLV6.js";
10
- import "./chunk-QYFKRZQC.js";
11
- import "./chunk-MN77D2F7.js";
12
- import "./chunk-FH5CHM6L.js";
13
- import "./chunk-JC6NCUG5.js";
14
- export {
15
- formatValidationResult,
16
- validatePluginOrMarketplacePath
17
- };
@@ -1,48 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- getAgentPrompt,
5
- getCLISyspromptPrefix,
6
- getEnvInfo,
7
- getSystemPrompt
8
- } from "./chunk-HSPVVDIW.js";
9
- import "./chunk-NQLEUHMS.js";
10
- import "./chunk-7CQVZNQV.js";
11
- import "./chunk-4GAIJGRH.js";
12
- import "./chunk-2PMO2FS2.js";
13
- import "./chunk-G6I7XROM.js";
14
- import "./chunk-3TXNP6HH.js";
15
- import "./chunk-KAA5BGMQ.js";
16
- import "./chunk-3RUXVV4S.js";
17
- import "./chunk-K2MI4TPB.js";
18
- import "./chunk-NPFOMITO.js";
19
- import "./chunk-54DNHKOD.js";
20
- import "./chunk-ZQU3TXLC.js";
21
- import "./chunk-67PY5IX6.js";
22
- import "./chunk-OWTG2W3A.js";
23
- import "./chunk-SRZZFAS7.js";
24
- import "./chunk-EH34V7CY.js";
25
- import "./chunk-VBXVYQYY.js";
26
- import "./chunk-S6HRABTA.js";
27
- import "./chunk-IE2CG2TV.js";
28
- import "./chunk-E6YNABER.js";
29
- import "./chunk-OZNRLY3E.js";
30
- import "./chunk-UKHTVRJM.js";
31
- import "./chunk-S3J2TLV6.js";
32
- import "./chunk-2KWKUXLT.js";
33
- import "./chunk-Z33T5YN5.js";
34
- import "./chunk-OIFQB3S4.js";
35
- import "./chunk-SDGKPKDK.js";
36
- import "./chunk-AIMIPK4B.js";
37
- import "./chunk-UYXEDKOZ.js";
38
- import "./chunk-QYFKRZQC.js";
39
- import "./chunk-MN77D2F7.js";
40
- import "./chunk-FH5CHM6L.js";
41
- import "./chunk-EZXMVTDU.js";
42
- import "./chunk-JC6NCUG5.js";
43
- export {
44
- getAgentPrompt,
45
- getCLISyspromptPrefix,
46
- getEnvInfo,
47
- getSystemPrompt
48
- };
@@ -1,50 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- __ToolUseQueueForTests,
5
- __isToolUseLikeBlockForTests,
6
- normalizeToolInput,
7
- query,
8
- runToolUse
9
- } from "./chunk-HSPVVDIW.js";
10
- import "./chunk-NQLEUHMS.js";
11
- import "./chunk-7CQVZNQV.js";
12
- import "./chunk-4GAIJGRH.js";
13
- import "./chunk-2PMO2FS2.js";
14
- import "./chunk-G6I7XROM.js";
15
- import "./chunk-3TXNP6HH.js";
16
- import "./chunk-KAA5BGMQ.js";
17
- import "./chunk-3RUXVV4S.js";
18
- import "./chunk-K2MI4TPB.js";
19
- import "./chunk-NPFOMITO.js";
20
- import "./chunk-54DNHKOD.js";
21
- import "./chunk-ZQU3TXLC.js";
22
- import "./chunk-67PY5IX6.js";
23
- import "./chunk-OWTG2W3A.js";
24
- import "./chunk-SRZZFAS7.js";
25
- import "./chunk-EH34V7CY.js";
26
- import "./chunk-VBXVYQYY.js";
27
- import "./chunk-S6HRABTA.js";
28
- import "./chunk-IE2CG2TV.js";
29
- import "./chunk-E6YNABER.js";
30
- import "./chunk-OZNRLY3E.js";
31
- import "./chunk-UKHTVRJM.js";
32
- import "./chunk-S3J2TLV6.js";
33
- import "./chunk-2KWKUXLT.js";
34
- import "./chunk-Z33T5YN5.js";
35
- import "./chunk-OIFQB3S4.js";
36
- import "./chunk-SDGKPKDK.js";
37
- import "./chunk-AIMIPK4B.js";
38
- import "./chunk-UYXEDKOZ.js";
39
- import "./chunk-QYFKRZQC.js";
40
- import "./chunk-MN77D2F7.js";
41
- import "./chunk-FH5CHM6L.js";
42
- import "./chunk-EZXMVTDU.js";
43
- import "./chunk-JC6NCUG5.js";
44
- export {
45
- __ToolUseQueueForTests,
46
- __isToolUseLikeBlockForTests,
47
- normalizeToolInput,
48
- query,
49
- runToolUse
50
- };
@@ -1,10 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- processResponsesStream
5
- } from "./chunk-HN4E4UUQ.js";
6
- import "./chunk-3RUXVV4S.js";
7
- import "./chunk-JC6NCUG5.js";
8
- export {
9
- processResponsesStream
10
- };
@@ -1,17 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- getRipgrepPath,
5
- listAllContentFiles,
6
- resetRipgrepPathCacheForTests,
7
- ripGrep
8
- } from "./chunk-OWTG2W3A.js";
9
- import "./chunk-MN77D2F7.js";
10
- import "./chunk-FH5CHM6L.js";
11
- import "./chunk-JC6NCUG5.js";
12
- export {
13
- getRipgrepPath,
14
- listAllContentFiles,
15
- resetRipgrepPathCacheForTests,
16
- ripGrep
17
- };
@@ -1,16 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- getCwd,
5
- getOriginalCwd,
6
- setCwd,
7
- setOriginalCwd
8
- } from "./chunk-MN77D2F7.js";
9
- import "./chunk-FH5CHM6L.js";
10
- import "./chunk-JC6NCUG5.js";
11
- export {
12
- getCwd,
13
- getOriginalCwd,
14
- setCwd,
15
- setOriginalCwd
16
- };
@@ -1,14 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- getTheme
5
- } from "./chunk-SDGKPKDK.js";
6
- import "./chunk-AIMIPK4B.js";
7
- import "./chunk-UYXEDKOZ.js";
8
- import "./chunk-QYFKRZQC.js";
9
- import "./chunk-MN77D2F7.js";
10
- import "./chunk-FH5CHM6L.js";
11
- import "./chunk-JC6NCUG5.js";
12
- export {
13
- getTheme
14
- };
@@ -1,18 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- loadToolPermissionContextFromDisk,
5
- persistToolPermissionUpdateToDisk
6
- } from "./chunk-EH34V7CY.js";
7
- import "./chunk-VBXVYQYY.js";
8
- import "./chunk-S6HRABTA.js";
9
- import "./chunk-AIMIPK4B.js";
10
- import "./chunk-UYXEDKOZ.js";
11
- import "./chunk-QYFKRZQC.js";
12
- import "./chunk-MN77D2F7.js";
13
- import "./chunk-FH5CHM6L.js";
14
- import "./chunk-JC6NCUG5.js";
15
- export {
16
- loadToolPermissionContextFromDisk,
17
- persistToolPermissionUpdateToDisk
18
- };
@@ -1,47 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- getAllTools,
5
- getReadOnlyTools,
6
- getTools
7
- } from "./chunk-6DRDLOLP.js";
8
- import "./chunk-HSPVVDIW.js";
9
- import "./chunk-NQLEUHMS.js";
10
- import "./chunk-7CQVZNQV.js";
11
- import "./chunk-4GAIJGRH.js";
12
- import "./chunk-2PMO2FS2.js";
13
- import "./chunk-G6I7XROM.js";
14
- import "./chunk-3TXNP6HH.js";
15
- import "./chunk-KAA5BGMQ.js";
16
- import "./chunk-3RUXVV4S.js";
17
- import "./chunk-K2MI4TPB.js";
18
- import "./chunk-NPFOMITO.js";
19
- import "./chunk-54DNHKOD.js";
20
- import "./chunk-ZQU3TXLC.js";
21
- import "./chunk-67PY5IX6.js";
22
- import "./chunk-OWTG2W3A.js";
23
- import "./chunk-SRZZFAS7.js";
24
- import "./chunk-EH34V7CY.js";
25
- import "./chunk-VBXVYQYY.js";
26
- import "./chunk-S6HRABTA.js";
27
- import "./chunk-IE2CG2TV.js";
28
- import "./chunk-E6YNABER.js";
29
- import "./chunk-OZNRLY3E.js";
30
- import "./chunk-UKHTVRJM.js";
31
- import "./chunk-S3J2TLV6.js";
32
- import "./chunk-2KWKUXLT.js";
33
- import "./chunk-Z33T5YN5.js";
34
- import "./chunk-OIFQB3S4.js";
35
- import "./chunk-SDGKPKDK.js";
36
- import "./chunk-AIMIPK4B.js";
37
- import "./chunk-UYXEDKOZ.js";
38
- import "./chunk-QYFKRZQC.js";
39
- import "./chunk-MN77D2F7.js";
40
- import "./chunk-FH5CHM6L.js";
41
- import "./chunk-EZXMVTDU.js";
42
- import "./chunk-JC6NCUG5.js";
43
- export {
44
- getAllTools,
45
- getReadOnlyTools,
46
- getTools
47
- };
@@ -1,311 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- lastX
5
- } from "./chunk-ABLVTESJ.js";
6
- import {
7
- BashTool,
8
- Spinner,
9
- UserBashInputMessage,
10
- getCommand,
11
- hasCommand
12
- } from "./chunk-HSPVVDIW.js";
13
- import "./chunk-NQLEUHMS.js";
14
- import "./chunk-7CQVZNQV.js";
15
- import "./chunk-4GAIJGRH.js";
16
- import "./chunk-2PMO2FS2.js";
17
- import "./chunk-G6I7XROM.js";
18
- import "./chunk-3TXNP6HH.js";
19
- import "./chunk-KAA5BGMQ.js";
20
- import "./chunk-3RUXVV4S.js";
21
- import "./chunk-K2MI4TPB.js";
22
- import "./chunk-NPFOMITO.js";
23
- import "./chunk-54DNHKOD.js";
24
- import "./chunk-ZQU3TXLC.js";
25
- import "./chunk-67PY5IX6.js";
26
- import "./chunk-OWTG2W3A.js";
27
- import "./chunk-SRZZFAS7.js";
28
- import "./chunk-EH34V7CY.js";
29
- import "./chunk-VBXVYQYY.js";
30
- import "./chunk-S6HRABTA.js";
31
- import "./chunk-IE2CG2TV.js";
32
- import "./chunk-E6YNABER.js";
33
- import "./chunk-OZNRLY3E.js";
34
- import "./chunk-UKHTVRJM.js";
35
- import "./chunk-S3J2TLV6.js";
36
- import {
37
- NO_RESPONSE_REQUESTED,
38
- createAssistantMessage,
39
- createUserMessage
40
- } from "./chunk-2KWKUXLT.js";
41
- import "./chunk-Z33T5YN5.js";
42
- import "./chunk-OIFQB3S4.js";
43
- import "./chunk-SDGKPKDK.js";
44
- import "./chunk-AIMIPK4B.js";
45
- import {
46
- MalformedCommandError
47
- } from "./chunk-UYXEDKOZ.js";
48
- import "./chunk-QYFKRZQC.js";
49
- import {
50
- getCwd,
51
- logError,
52
- setCwd
53
- } from "./chunk-MN77D2F7.js";
54
- import "./chunk-FH5CHM6L.js";
55
- import "./chunk-EZXMVTDU.js";
56
- import "./chunk-JC6NCUG5.js";
57
-
58
- // src/utils/messages/userInput.tsx
59
- import { Box } from "ink";
60
- import { resolve } from "path";
61
- import chalk from "chalk";
62
- import * as React from "react";
63
- async function processUserInput(input, mode, setToolJSX, context, pastedImages) {
64
- if (mode === "bash") {
65
- const userMessage2 = createUserMessage(`<bash-input>${input}</bash-input>`);
66
- if (input.startsWith("cd ")) {
67
- const oldCwd = getCwd();
68
- const newCwd = resolve(getCwd(), input.slice(3).trim());
69
- try {
70
- await setCwd(newCwd);
71
- return [
72
- userMessage2,
73
- createAssistantMessage(
74
- `<bash-stdout>Changed directory to ${chalk.bold(`${newCwd}/`)}</bash-stdout>`
75
- )
76
- ];
77
- } catch (e) {
78
- logError(e);
79
- return [
80
- userMessage2,
81
- createAssistantMessage(
82
- `<bash-stderr>cwd error: ${e instanceof Error ? e.message : String(e)}</bash-stderr>`
83
- )
84
- ];
85
- }
86
- }
87
- setToolJSX({
88
- jsx: /* @__PURE__ */ React.createElement(Box, { flexDirection: "column", marginTop: 1 }, /* @__PURE__ */ React.createElement(
89
- UserBashInputMessage,
90
- {
91
- addMargin: false,
92
- param: { text: `<bash-input>${input}</bash-input>`, type: "text" }
93
- }
94
- ), /* @__PURE__ */ React.createElement(Spinner, null)),
95
- shouldHidePromptInput: false
96
- });
97
- try {
98
- const validationResult = await BashTool.validateInput(
99
- { command: input },
100
- { commandSource: "user_bash_mode" }
101
- );
102
- if (!validationResult.result) {
103
- return [userMessage2, createAssistantMessage(validationResult.message)];
104
- }
105
- const { data } = await lastX(
106
- BashTool.call({ command: input }, {
107
- ...context,
108
- commandSource: "user_bash_mode"
109
- })
110
- );
111
- return [
112
- userMessage2,
113
- createAssistantMessage(
114
- `<bash-stdout>${data.stdout}</bash-stdout><bash-stderr>${data.stderr}</bash-stderr>`
115
- )
116
- ];
117
- } catch (e) {
118
- return [
119
- userMessage2,
120
- createAssistantMessage(
121
- `<bash-stderr>Command failed: ${e instanceof Error ? e.message : String(e)}</bash-stderr>`
122
- )
123
- ];
124
- } finally {
125
- setToolJSX(null);
126
- }
127
- } else if (mode === "koding") {
128
- const userMessage2 = createUserMessage(
129
- `<koding-input>${input}</koding-input>`
130
- );
131
- userMessage2.options = {
132
- ...userMessage2.options,
133
- isKodingRequest: true
134
- };
135
- return [userMessage2];
136
- }
137
- if (context.options?.disableSlashCommands !== true && input.startsWith("/")) {
138
- const words = input.slice(1).split(" ");
139
- let commandName = words[0];
140
- if (words.length > 1 && words[1] === "(MCP)") {
141
- commandName = commandName + " (MCP)";
142
- }
143
- if (!commandName) {
144
- return [
145
- createAssistantMessage("Commands are in the form `/command [args]`")
146
- ];
147
- }
148
- if (!hasCommand(commandName, context.options.commands)) {
149
- return [createUserMessage(input)];
150
- }
151
- const args = input.slice(commandName.length + 2);
152
- const newMessages = await getMessagesForSlashCommand(
153
- commandName,
154
- args,
155
- setToolJSX,
156
- context
157
- );
158
- if (newMessages.length === 0) {
159
- return [];
160
- }
161
- if (newMessages.length === 2 && newMessages[0].type === "user" && newMessages[1].type === "assistant" && typeof newMessages[1].message.content === "string" && newMessages[1].message.content.startsWith("Unknown command:")) {
162
- return newMessages;
163
- }
164
- if (newMessages.length === 2) {
165
- return newMessages;
166
- }
167
- return newMessages;
168
- }
169
- const isKodingRequest = context.options?.isKodingRequest === true;
170
- const kodingContextInfo = context.options?.kodingContext;
171
- let userMessage;
172
- let processedInput = isKodingRequest && kodingContextInfo ? `${kodingContextInfo}
173
-
174
- ${input}` : input;
175
- if (processedInput.includes("!`") || processedInput.includes("@")) {
176
- try {
177
- const { executeBashCommands } = await import("./customCommands-DNEJS3ZU.js");
178
- if (processedInput.includes("!`")) {
179
- processedInput = await executeBashCommands(processedInput);
180
- }
181
- if (processedInput.includes("@")) {
182
- const { processMentions } = await import("./mentionProcessor-YD7YXYGF.js");
183
- await processMentions(processedInput);
184
- }
185
- } catch (error) {
186
- logError(error);
187
- }
188
- }
189
- if (pastedImages && pastedImages.length > 0) {
190
- const occurrences = pastedImages.map((img) => ({ img, index: processedInput.indexOf(img.placeholder) })).filter((o) => o.index >= 0).sort((a, b) => a.index - b.index);
191
- const blocks = [];
192
- let cursor = 0;
193
- for (const { img, index } of occurrences) {
194
- const before = processedInput.slice(cursor, index);
195
- if (before) {
196
- blocks.push({ type: "text", text: before });
197
- }
198
- blocks.push({
199
- type: "image",
200
- source: {
201
- type: "base64",
202
- media_type: img.mediaType,
203
- data: img.data
204
- }
205
- });
206
- cursor = index + img.placeholder.length;
207
- }
208
- const after = processedInput.slice(cursor);
209
- if (after) {
210
- blocks.push({ type: "text", text: after });
211
- }
212
- if (!blocks.some((b) => b.type === "text")) {
213
- blocks.push({ type: "text", text: "" });
214
- }
215
- userMessage = createUserMessage(blocks);
216
- } else {
217
- userMessage = createUserMessage(processedInput);
218
- }
219
- if (isKodingRequest) {
220
- userMessage.options = {
221
- ...userMessage.options,
222
- isKodingRequest: true
223
- };
224
- }
225
- return [userMessage];
226
- }
227
- async function getMessagesForSlashCommand(commandName, args, setToolJSX, context) {
228
- try {
229
- const command = getCommand(commandName, context.options.commands);
230
- switch (command.type) {
231
- case "local-jsx": {
232
- return new Promise((resolve2) => {
233
- command.call(
234
- (r) => {
235
- setToolJSX(null);
236
- resolve2([
237
- createUserMessage(`<command-name>${command.userFacingName()}</command-name>
238
- <command-message>${command.userFacingName()}</command-message>
239
- <command-args>${args}</command-args>`),
240
- r ? createAssistantMessage(r) : createAssistantMessage(NO_RESPONSE_REQUESTED)
241
- ]);
242
- },
243
- context,
244
- args
245
- ).then((jsx) => {
246
- if (!jsx) return;
247
- setToolJSX({ jsx, shouldHidePromptInput: true });
248
- });
249
- });
250
- }
251
- case "local": {
252
- const userMessage = createUserMessage(`<command-name>${command.userFacingName()}</command-name>
253
- <command-message>${command.userFacingName()}</command-message>
254
- <command-args>${args}</command-args>`);
255
- try {
256
- const result = await command.call(args, {
257
- ...context,
258
- options: {
259
- commands: context.options.commands || [],
260
- tools: context.options.tools || [],
261
- slowAndCapableModel: context.options.slowAndCapableModel || "main"
262
- }
263
- });
264
- return [
265
- userMessage,
266
- createAssistantMessage(
267
- `<local-command-stdout>${result}</local-command-stdout>`
268
- )
269
- ];
270
- } catch (e) {
271
- logError(e);
272
- return [
273
- userMessage,
274
- createAssistantMessage(
275
- `<local-command-stderr>${String(e)}</local-command-stderr>`
276
- )
277
- ];
278
- }
279
- }
280
- case "prompt": {
281
- const commandName2 = command.userFacingName();
282
- const progressMessage = command.progressMessage || "running";
283
- const metaMessage = createUserMessage(`<command-name>${commandName2}</command-name>
284
- <command-message>${commandName2} is ${progressMessage}\u2026</command-message>
285
- <command-args>${args}</command-args>`);
286
- const prompt = await command.getPromptForCommand(args);
287
- const expandedMessages = prompt.map((msg) => {
288
- const userMessage = createUserMessage(
289
- typeof msg.content === "string" ? msg.content : msg.content.map((block) => block.type === "text" ? block.text : "").join("\n")
290
- );
291
- userMessage.options = {
292
- ...userMessage.options,
293
- isCustomCommand: true,
294
- commandName: command.userFacingName(),
295
- commandArgs: args
296
- };
297
- return userMessage;
298
- });
299
- return [metaMessage, ...expandedMessages];
300
- }
301
- }
302
- } catch (e) {
303
- if (e instanceof MalformedCommandError) {
304
- return [createAssistantMessage(e.message)];
305
- }
306
- throw e;
307
- }
308
- }
309
- export {
310
- processUserInput
311
- };
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/utils/messages/userInput.tsx"],
4
- "sourcesContent": ["import { Box } from 'ink'\nimport { getCommand, hasCommand } from '@commands'\nimport { MalformedCommandError } from '@utils/text/errors'\nimport { logError } from '@utils/log'\nimport { resolve } from 'path'\nimport { lastX } from '@utils/text/generators'\nimport type { SetToolJSXFn, ToolUseContext } from '@tool'\nimport type { ContentBlockParam } from '@anthropic-ai/sdk/resources/index.mjs'\nimport { setCwd } from '@utils/state'\nimport { getCwd } from '@utils/state'\nimport chalk from 'chalk'\nimport * as React from 'react'\nimport { UserBashInputMessage } from '@components/messages/UserBashInputMessage'\nimport { Spinner } from '@components/Spinner'\nimport { BashTool } from '@tools/BashTool/BashTool'\nimport type { Message, UserMessage } from '@query'\nimport { NO_RESPONSE_REQUESTED, createAssistantMessage, createUserMessage } from './core'\n\n\nexport async function processUserInput(\n input: string,\n mode: 'bash' | 'prompt' | 'koding',\n setToolJSX: SetToolJSXFn,\n context: ToolUseContext & {\n setForkConvoWithMessagesOnTheNextRender: (\n forkConvoWithMessages: Message[],\n ) => void\n options?: {\n isKodingRequest?: boolean\n kodingContext?: string\n }\n },\n pastedImages: Array<{\n placeholder: string\n data: string\n mediaType: string\n }> | null,\n): Promise<Message[]> {\n if (mode === 'bash') {\n const userMessage = createUserMessage(`<bash-input>${input}</bash-input>`)\n\n if (input.startsWith('cd ')) {\n const oldCwd = getCwd()\n const newCwd = resolve(getCwd(), input.slice(3).trim())\n try {\n await setCwd(newCwd)\n return [\n userMessage,\n createAssistantMessage(\n `<bash-stdout>Changed directory to ${chalk.bold(`${newCwd}/`)}</bash-stdout>`,\n ),\n ]\n } catch (e) {\n logError(e)\n return [\n userMessage,\n createAssistantMessage(\n `<bash-stderr>cwd error: ${e instanceof Error ? e.message : String(e)}</bash-stderr>`,\n ),\n ]\n }\n }\n\n setToolJSX({\n jsx: (\n <Box flexDirection=\"column\" marginTop={1}>\n <UserBashInputMessage\n addMargin={false}\n param={{ text: `<bash-input>${input}</bash-input>`, type: 'text' }}\n />\n <Spinner />\n </Box>\n ),\n shouldHidePromptInput: false,\n })\n try {\n const validationResult = await BashTool.validateInput(\n { command: input },\n { commandSource: 'user_bash_mode' } as any,\n )\n if (!validationResult.result) {\n return [userMessage, createAssistantMessage(validationResult.message)]\n }\n const { data } = await lastX(\n BashTool.call({ command: input }, {\n ...(context as any),\n commandSource: 'user_bash_mode',\n } as any),\n )\n return [\n userMessage,\n createAssistantMessage(\n `<bash-stdout>${data.stdout}</bash-stdout><bash-stderr>${data.stderr}</bash-stderr>`,\n ),\n ]\n } catch (e) {\n return [\n userMessage,\n createAssistantMessage(\n `<bash-stderr>Command failed: ${e instanceof Error ? e.message : String(e)}</bash-stderr>`,\n ),\n ]\n } finally {\n setToolJSX(null)\n }\n }\n else if (mode === 'koding') {\n const userMessage = createUserMessage(\n `<koding-input>${input}</koding-input>`,\n )\n userMessage.options = {\n ...userMessage.options,\n isKodingRequest: true,\n }\n\n return [userMessage]\n }\n\n if (context.options?.disableSlashCommands !== true && input.startsWith('/')) {\n const words = input.slice(1).split(' ')\n let commandName = words[0]\n if (words.length > 1 && words[1] === '(MCP)') {\n commandName = commandName + ' (MCP)'\n }\n if (!commandName) {\n return [\n createAssistantMessage('Commands are in the form `/command [args]`'),\n ]\n }\n\n if (!hasCommand(commandName, context.options.commands)) {\n\n return [createUserMessage(input)]\n }\n\n const args = input.slice(commandName.length + 2)\n const newMessages = await getMessagesForSlashCommand(\n commandName,\n args,\n setToolJSX,\n context,\n )\n\n if (newMessages.length === 0) {\n return []\n }\n\n if (\n newMessages.length === 2 &&\n newMessages[0]!.type === 'user' &&\n newMessages[1]!.type === 'assistant' &&\n typeof newMessages[1]!.message.content === 'string' &&\n newMessages[1]!.message.content.startsWith('Unknown command:')\n ) {\n return newMessages\n }\n\n if (newMessages.length === 2) {\n return newMessages\n }\n\n\n return newMessages\n }\n\n\n const isKodingRequest = context.options?.isKodingRequest === true\n const kodingContextInfo = context.options?.kodingContext\n\n let userMessage: UserMessage\n\n let processedInput =\n isKodingRequest && kodingContextInfo\n ? `${kodingContextInfo}\\n\\n${input}`\n : input\n\n if (processedInput.includes('!`') || processedInput.includes('@')) {\n try {\n const { executeBashCommands } = await import('@services/customCommands')\n\n if (processedInput.includes('!`')) {\n processedInput = await executeBashCommands(processedInput)\n }\n\n if (processedInput.includes('@')) {\n const { processMentions } = await import('@services/mentionProcessor')\n await processMentions(processedInput)\n }\n } catch (error) {\n logError(error)\n }\n }\n\n if (pastedImages && pastedImages.length > 0) {\n const occurrences = pastedImages\n .map(img => ({ img, index: processedInput.indexOf(img.placeholder) }))\n .filter(o => o.index >= 0)\n .sort((a, b) => a.index - b.index)\n\n const blocks: ContentBlockParam[] = []\n let cursor = 0\n\n for (const { img, index } of occurrences) {\n const before = processedInput.slice(cursor, index)\n if (before) {\n blocks.push({ type: 'text', text: before })\n }\n blocks.push({\n type: 'image',\n source: {\n type: 'base64',\n media_type: img.mediaType,\n data: img.data,\n },\n } as any)\n cursor = index + img.placeholder.length\n }\n\n const after = processedInput.slice(cursor)\n if (after) {\n blocks.push({ type: 'text', text: after })\n }\n\n if (!blocks.some(b => b.type === 'text')) {\n blocks.push({ type: 'text', text: '' })\n }\n\n userMessage = createUserMessage(blocks)\n } else {\n userMessage = createUserMessage(processedInput)\n }\n\n if (isKodingRequest) {\n userMessage.options = {\n ...userMessage.options,\n isKodingRequest: true,\n }\n }\n\n return [userMessage]\n}\n\nasync function getMessagesForSlashCommand(\n commandName: string,\n args: string,\n setToolJSX: SetToolJSXFn,\n context: ToolUseContext & {\n setForkConvoWithMessagesOnTheNextRender: (\n forkConvoWithMessages: Message[],\n ) => void\n },\n): Promise<Message[]> {\n try {\n const command = getCommand(commandName, context.options.commands)\n switch (command.type) {\n case 'local-jsx': {\n return new Promise(resolve => {\n command\n .call(\n r => {\n setToolJSX(null)\n resolve([\n createUserMessage(`<command-name>${command.userFacingName()}</command-name>\n <command-message>${command.userFacingName()}</command-message>\n <command-args>${args}</command-args>`),\n r\n ? createAssistantMessage(r)\n : createAssistantMessage(NO_RESPONSE_REQUESTED),\n ])\n },\n context,\n args,\n )\n .then(jsx => {\n if (!jsx) return\n setToolJSX({ jsx, shouldHidePromptInput: true })\n })\n })\n }\n case 'local': {\n const userMessage =\n createUserMessage(`<command-name>${command.userFacingName()}</command-name>\n <command-message>${command.userFacingName()}</command-message>\n <command-args>${args}</command-args>`)\n\n try {\n const result = await command.call(args, {\n ...context,\n options: {\n commands: context.options.commands || [],\n tools: context.options.tools || [],\n slowAndCapableModel:\n context.options.slowAndCapableModel || 'main',\n },\n })\n\n return [\n userMessage,\n createAssistantMessage(\n `<local-command-stdout>${result}</local-command-stdout>`,\n ),\n ]\n } catch (e) {\n logError(e)\n return [\n userMessage,\n createAssistantMessage(\n `<local-command-stderr>${String(e)}</local-command-stderr>`,\n ),\n ]\n }\n }\n case 'prompt': {\n const commandName = command.userFacingName()\n const progressMessage = (command as any).progressMessage || 'running'\n const metaMessage =\n createUserMessage(`<command-name>${commandName}</command-name>\n <command-message>${commandName} is ${progressMessage}\u2026</command-message>\n <command-args>${args}</command-args>`)\n\n const prompt = await command.getPromptForCommand(args)\n const expandedMessages = prompt.map(msg => {\n const userMessage = createUserMessage(\n typeof msg.content === 'string'\n ? msg.content\n : msg.content\n .map(block => (block.type === 'text' ? block.text : ''))\n .join('\\n'),\n )\n\n userMessage.options = {\n ...userMessage.options,\n isCustomCommand: true,\n commandName: command.userFacingName(),\n commandArgs: args,\n }\n\n return userMessage\n })\n\n return [metaMessage, ...expandedMessages]\n }\n }\n } catch (e) {\n if (e instanceof MalformedCommandError) {\n return [createAssistantMessage(e.message)]\n }\n throw e\n }\n}\n"],
5
- "mappings": "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",
6
- "names": ["userMessage", "resolve", "commandName"]
7
- }
@@ -1,9 +0,0 @@
1
- import { createRequire as __kodeCreateRequire } from "node:module";
2
- const require = __kodeCreateRequire(import.meta.url);
3
- import {
4
- isUuid
5
- } from "./chunk-KAA5BGMQ.js";
6
- import "./chunk-JC6NCUG5.js";
7
- export {
8
- isUuid
9
- };