@kernel.chat/kbot 1.3.1 → 2.3.0

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 (176) hide show
  1. package/README.md +94 -0
  2. package/dist/agent.d.ts +9 -0
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +576 -119
  5. package/dist/agent.js.map +1 -1
  6. package/dist/auth.d.ts +20 -35
  7. package/dist/auth.d.ts.map +1 -1
  8. package/dist/auth.js +224 -66
  9. package/dist/auth.js.map +1 -1
  10. package/dist/auth.test.d.ts +2 -0
  11. package/dist/auth.test.d.ts.map +1 -0
  12. package/dist/auth.test.js +89 -0
  13. package/dist/auth.test.js.map +1 -0
  14. package/dist/build-targets.d.ts +37 -0
  15. package/dist/build-targets.d.ts.map +1 -0
  16. package/dist/build-targets.js +507 -0
  17. package/dist/build-targets.js.map +1 -0
  18. package/dist/cli.js +1210 -130
  19. package/dist/cli.js.map +1 -1
  20. package/dist/context.d.ts +2 -0
  21. package/dist/context.d.ts.map +1 -1
  22. package/dist/context.js +72 -22
  23. package/dist/context.js.map +1 -1
  24. package/dist/hooks.d.ts +27 -0
  25. package/dist/hooks.d.ts.map +1 -0
  26. package/dist/hooks.js +145 -0
  27. package/dist/hooks.js.map +1 -0
  28. package/dist/ide/acp-server.d.ts +6 -0
  29. package/dist/ide/acp-server.d.ts.map +1 -0
  30. package/dist/ide/acp-server.js +319 -0
  31. package/dist/ide/acp-server.js.map +1 -0
  32. package/dist/ide/bridge.d.ts +128 -0
  33. package/dist/ide/bridge.d.ts.map +1 -0
  34. package/dist/ide/bridge.js +185 -0
  35. package/dist/ide/bridge.js.map +1 -0
  36. package/dist/ide/index.d.ts +5 -0
  37. package/dist/ide/index.d.ts.map +1 -0
  38. package/dist/ide/index.js +11 -0
  39. package/dist/ide/index.js.map +1 -0
  40. package/dist/ide/lsp-bridge.d.ts +27 -0
  41. package/dist/ide/lsp-bridge.d.ts.map +1 -0
  42. package/dist/ide/lsp-bridge.js +267 -0
  43. package/dist/ide/lsp-bridge.js.map +1 -0
  44. package/dist/ide/mcp-server.d.ts +7 -0
  45. package/dist/ide/mcp-server.d.ts.map +1 -0
  46. package/dist/ide/mcp-server.js +451 -0
  47. package/dist/ide/mcp-server.js.map +1 -0
  48. package/dist/learning.d.ts +179 -0
  49. package/dist/learning.d.ts.map +1 -0
  50. package/dist/learning.js +829 -0
  51. package/dist/learning.js.map +1 -0
  52. package/dist/learning.test.d.ts +2 -0
  53. package/dist/learning.test.d.ts.map +1 -0
  54. package/dist/learning.test.js +115 -0
  55. package/dist/learning.test.js.map +1 -0
  56. package/dist/matrix.d.ts +49 -0
  57. package/dist/matrix.d.ts.map +1 -0
  58. package/dist/matrix.js +302 -0
  59. package/dist/matrix.js.map +1 -0
  60. package/dist/memory.d.ts +11 -0
  61. package/dist/memory.d.ts.map +1 -1
  62. package/dist/memory.js +54 -2
  63. package/dist/memory.js.map +1 -1
  64. package/dist/multimodal.d.ts +57 -0
  65. package/dist/multimodal.d.ts.map +1 -0
  66. package/dist/multimodal.js +206 -0
  67. package/dist/multimodal.js.map +1 -0
  68. package/dist/permissions.d.ts +21 -0
  69. package/dist/permissions.d.ts.map +1 -0
  70. package/dist/permissions.js +122 -0
  71. package/dist/permissions.js.map +1 -0
  72. package/dist/planner.d.ts +54 -0
  73. package/dist/planner.d.ts.map +1 -0
  74. package/dist/planner.js +298 -0
  75. package/dist/planner.js.map +1 -0
  76. package/dist/plugins.d.ts +30 -0
  77. package/dist/plugins.d.ts.map +1 -0
  78. package/dist/plugins.js +135 -0
  79. package/dist/plugins.js.map +1 -0
  80. package/dist/sessions.d.ts +38 -0
  81. package/dist/sessions.d.ts.map +1 -0
  82. package/dist/sessions.js +177 -0
  83. package/dist/sessions.js.map +1 -0
  84. package/dist/streaming.d.ts +88 -0
  85. package/dist/streaming.d.ts.map +1 -0
  86. package/dist/streaming.js +317 -0
  87. package/dist/streaming.js.map +1 -0
  88. package/dist/tools/background.d.ts +2 -0
  89. package/dist/tools/background.d.ts.map +1 -0
  90. package/dist/tools/background.js +163 -0
  91. package/dist/tools/background.js.map +1 -0
  92. package/dist/tools/bash.d.ts.map +1 -1
  93. package/dist/tools/bash.js +26 -1
  94. package/dist/tools/bash.js.map +1 -1
  95. package/dist/tools/browser.js +7 -7
  96. package/dist/tools/browser.js.map +1 -1
  97. package/dist/tools/build-matrix.d.ts +2 -0
  98. package/dist/tools/build-matrix.d.ts.map +1 -0
  99. package/dist/tools/build-matrix.js +463 -0
  100. package/dist/tools/build-matrix.js.map +1 -0
  101. package/dist/tools/computer.js +5 -5
  102. package/dist/tools/computer.js.map +1 -1
  103. package/dist/tools/fetch.d.ts +2 -0
  104. package/dist/tools/fetch.d.ts.map +1 -0
  105. package/dist/tools/fetch.js +106 -0
  106. package/dist/tools/fetch.js.map +1 -0
  107. package/dist/tools/files.d.ts.map +1 -1
  108. package/dist/tools/files.js +112 -6
  109. package/dist/tools/files.js.map +1 -1
  110. package/dist/tools/git.js +3 -3
  111. package/dist/tools/git.js.map +1 -1
  112. package/dist/tools/github.d.ts +2 -0
  113. package/dist/tools/github.d.ts.map +1 -0
  114. package/dist/tools/github.js +196 -0
  115. package/dist/tools/github.js.map +1 -0
  116. package/dist/tools/index.d.ts +29 -5
  117. package/dist/tools/index.d.ts.map +1 -1
  118. package/dist/tools/index.js +136 -20
  119. package/dist/tools/index.js.map +1 -1
  120. package/dist/tools/index.test.d.ts +2 -0
  121. package/dist/tools/index.test.d.ts.map +1 -0
  122. package/dist/tools/index.test.js +162 -0
  123. package/dist/tools/index.test.js.map +1 -0
  124. package/dist/tools/matrix.d.ts +2 -0
  125. package/dist/tools/matrix.d.ts.map +1 -0
  126. package/dist/tools/matrix.js +79 -0
  127. package/dist/tools/matrix.js.map +1 -0
  128. package/dist/tools/mcp-client.d.ts +2 -0
  129. package/dist/tools/mcp-client.d.ts.map +1 -0
  130. package/dist/tools/mcp-client.js +295 -0
  131. package/dist/tools/mcp-client.js.map +1 -0
  132. package/dist/tools/notebook.d.ts +2 -0
  133. package/dist/tools/notebook.d.ts.map +1 -0
  134. package/dist/tools/notebook.js +207 -0
  135. package/dist/tools/notebook.js.map +1 -0
  136. package/dist/tools/openclaw.d.ts +2 -0
  137. package/dist/tools/openclaw.d.ts.map +1 -0
  138. package/dist/tools/openclaw.js +187 -0
  139. package/dist/tools/openclaw.js.map +1 -0
  140. package/dist/tools/parallel.d.ts +2 -0
  141. package/dist/tools/parallel.d.ts.map +1 -0
  142. package/dist/tools/parallel.js +60 -0
  143. package/dist/tools/parallel.js.map +1 -0
  144. package/dist/tools/sandbox.d.ts +2 -0
  145. package/dist/tools/sandbox.d.ts.map +1 -0
  146. package/dist/tools/sandbox.js +352 -0
  147. package/dist/tools/sandbox.js.map +1 -0
  148. package/dist/tools/search.d.ts.map +1 -1
  149. package/dist/tools/search.js +135 -28
  150. package/dist/tools/search.js.map +1 -1
  151. package/dist/tools/subagent.d.ts +4 -0
  152. package/dist/tools/subagent.d.ts.map +1 -0
  153. package/dist/tools/subagent.js +260 -0
  154. package/dist/tools/subagent.js.map +1 -0
  155. package/dist/tools/tasks.d.ts +14 -0
  156. package/dist/tools/tasks.d.ts.map +1 -0
  157. package/dist/tools/tasks.js +210 -0
  158. package/dist/tools/tasks.js.map +1 -0
  159. package/dist/tools/worktree.d.ts +2 -0
  160. package/dist/tools/worktree.d.ts.map +1 -0
  161. package/dist/tools/worktree.js +223 -0
  162. package/dist/tools/worktree.js.map +1 -0
  163. package/dist/tui.d.ts +73 -0
  164. package/dist/tui.d.ts.map +1 -0
  165. package/dist/tui.js +257 -0
  166. package/dist/tui.js.map +1 -0
  167. package/dist/ui.d.ts +11 -19
  168. package/dist/ui.d.ts.map +1 -1
  169. package/dist/ui.js +143 -171
  170. package/dist/ui.js.map +1 -1
  171. package/dist/updater.d.ts +3 -0
  172. package/dist/updater.d.ts.map +1 -0
  173. package/dist/updater.js +70 -0
  174. package/dist/updater.js.map +1 -0
  175. package/install.sh +5 -7
  176. package/package.json +8 -4
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,oEAAoE;AACpE,EAAE;AACF,2BAA2B;AAC3B,iFAAiF;AACjF,6EAA6E;AAC7E,iFAAiF;AACjF,2EAA2E;AAC3E,iFAAiF;AAEjF,OAAO,EACL,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EACzE,YAAY,GAEb,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,WAAW,EACX,OAAO,EACP,wBAAwB,GAGzB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,sBAAsB,EAAuB,MAAM,cAAc,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAE7G,MAAM,cAAc,GAAG,EAAE,CAAA;AACzB,MAAM,YAAY,GAAG,OAAO,CAAA;AAkB5B,8BAA8B;AAE9B,KAAK,UAAU,aAAa,CAAC,OAAe;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAA;IAE1C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAA;IACtE,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;QACjC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IAC9D,CAAC;IAED,IAAI,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;QACtC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;IACpE,CAAC;IAED,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QAClC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;QAChC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;QAC/B,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAA;IAC/F,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;QAC5B,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACrF,CAAC;IAED,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAC9C,OAAO,OAAO,CAAC,GAAG,EAAE,CAAA;IACtB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAgBD,sCAAsC;AACtC,KAAK,UAAU,aAAa,CAC1B,MAAc,EAAE,MAAc,EAAE,KAAa,EAC7C,aAAqB,EAAE,QAA2B;IAElD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;QAC9B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,WAAW,EAAE,MAAM;YACnB,mBAAmB,EAAE,YAAY;SAClC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,IAAI,SAAS;YAClC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;SACpE,CAAC;KACH,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACxF,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IACzE,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;IAC7B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACxG,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;IAC1B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC,EAAE,EAAE,CAAA;AAChI,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,MAAc,EAAE,MAAc,EAAE,KAAa,EAC7C,aAAqB,EAAE,QAA2B;IAElD,MAAM,WAAW,GAA6C,EAAE,CAAA;IAChE,IAAI,aAAa;QAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAA;IAC/E,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAE9E,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;QAC9B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,UAAU,MAAM,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;KACzE,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACxF,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,cAAc,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAA;IACzD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;IAC1B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,iBAAiB,IAAI,CAAC,EAAE,EAAE,CAAA;AACxI,CAAC;AAED,wBAAwB;AACxB,KAAK,UAAU,UAAU,CACvB,MAAc,EAAE,MAAc,EAAE,KAAa,EAC7C,aAAqB,EAAE,QAA2B;IAElD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;QAC/C,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KAC7B,CAAC,CAAC,CAAA;IAEH,MAAM,IAAI,GAA4B;QACpC,QAAQ;QACR,gBAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;KAC5C,CAAA;IACD,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC,iBAAiB,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,CAAA;IAC/D,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,IAAI,KAAK,wBAAwB,MAAM,EAAE,EAAE;QAC1E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACxF,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,iBAAiB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAA;IAC7F,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,IAAI,EAAE,CAAA;IACnC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,CAAC,gBAAgB,IAAI,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,oBAAoB,IAAI,CAAC,EAAE,EAAE,CAAA;AAC3H,CAAC;AAED,2BAA2B;AAC3B,KAAK,UAAU,UAAU,CACvB,MAAc,EAAE,MAAc,EAAE,KAAa,EAC7C,aAAqB,EAAE,QAA2B;IAElD,MAAM,WAAW,GAA6C,EAAE,CAAA;IAChE,IAAI,aAAa;QAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAA;IAC/E,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAE9E,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;QAC9B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,UAAU,MAAM,EAAE;SACpC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;KACzE,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACxF,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,iBAAiB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAA;IACtD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAA;IAClC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC,EAAE,EAAE,CAAA;AAC9G,CAAC;AAED,+DAA+D;AAC/D,KAAK,UAAU,YAAY,CACzB,QAAsB,EAAE,MAAc,EAAE,KAAa,EACrD,aAAqB,EAAE,QAA2B;IAElD,MAAM,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;IAE/B,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;QACnB,KAAK,WAAW,CAAC,CAAC,OAAO,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;QACxF,KAAK,QAAQ,CAAC,CAAI,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;QACrF,KAAK,QAAQ,CAAC,CAAI,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;QACrF,KAAK,QAAQ,CAAC,CAAI,OAAO,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;QAC3F,OAAO,CAAC,CAAU,OAAO,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;IAC7F,CAAC;AACH,CAAC;AAED,wBAAwB;AAExB,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAe,EACf,UAAwB,EAAE;IAE1B,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;IACpD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,QAAQ;YACtB,CAAC,CAAC,uDAAuD;YACzD,CAAC,CAAC,mDAAmD,CAAC,CAAA;IAC1D,CAAC;IAED,sBAAsB;IACtB,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAA;IAChD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAA;QAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;QACpD,SAAS,CAAC,mCAAmC,CAAC,CAAA;QAC9C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAA;IAC9E,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,CAAA;IACnC,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAA;IAE5C,wBAAwB;IACxB,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrF,MAAM,aAAa,GAAG,eAAe,EAAE,CAAA;IACvC,MAAM,cAAc,GAAG;;;;2EAIkD,CAAA;IACzE,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEhG,IAAI,aAAa,GAAG,CAAC,CAAA;IACrB,IAAI,YAAY,GAAQ,IAAI,CAAA;IAC5B,IAAI,kBAAkB,GAAiB,EAAE,CAAA;IAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,aAAa,MAAM,CAAC,CAAA;QAC9F,OAAO,CAAC,KAAK,EAAE,CAAA;QAEf,IAAI,CAAC;YACH,IAAI,QAAQ,EAAE,CAAC;gBACb,qCAAqC;gBACrC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAA;gBAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;gBACxF,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;gBAE/C,MAAM,QAAQ,GAAsB;oBAClC,GAAG,mBAAmB,EAAE;oBACxB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;iBAC5G,CAAA;gBAED,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,KAAK,MAAM,EAAE,IAAI,kBAAkB,EAAE,CAAC;wBACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,YAAY,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;oBAChG,CAAC;oBACD,kBAAkB,GAAG,EAAE,CAAA;gBACzB,CAAC;gBAED,OAAO,CAAC,IAAI,EAAE,CAAA;gBAEd,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;gBAEnF,YAAY,GAAG;oBACb,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,QAAQ;oBAChC,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,KAAK,EAAE;wBACL,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY;wBACvC,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa;wBACzC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;qBACxF;iBACF,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;gBAC5B,MAAM,IAAI,GAA4B;oBACpC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;oBACzF,IAAI,EAAE,MAAM;oBACZ,UAAU,EAAE,IAAI;oBAChB,iBAAiB,EAAE,mBAAmB,EAAE;oBACxC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;iBAC5C,CAAA;gBAED,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM;oBAAE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;gBACzE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,IAAI,CAAC,YAAY,GAAG,kBAAkB,CAAA;oBACtC,kBAAkB,GAAG,EAAE,CAAA;gBACzB,CAAC;gBAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,OAAO,EAAE;oBACzC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,aAAa,EAAE,UAAU,MAAM,EAAE;wBACjC,gBAAgB,EAAE,YAAY;qBAC/B;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;iBAC3B,CAAC,CAAA;gBAEF,OAAO,CAAC,IAAI,EAAE,CAAA;gBAEd,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACZ,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;oBAC3E,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,cAAc,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC1D,CAAC;gBAED,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;YACjC,CAAC;YAED,uBAAuB;YACvB,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrG,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC1C,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAA;gBAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAA;gBACvC,OAAO;oBACL,OAAO;oBACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,QAAQ;oBACrC,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,SAAS;oBACtC,SAAS,EAAE,aAAa;oBACxB,KAAK,EAAE,YAAY,CAAC,KAAK;iBAC1B,CAAA;YACH,CAAC;YAED,+BAA+B;YAC/B,MAAM,SAAS,GAAe,YAAY,CAAC,UAAU,CAAA;YACrD,MAAM,OAAO,GAAiB,EAAE,CAAA;YAEhC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,aAAa,EAAE,CAAA;gBACf,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;gBAC9C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAA;gBACtC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACpB,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;YAC9C,CAAC;YAED,kBAAkB,GAAG,OAAO,CAAA;YAC5B,OAAO,GAAG,+BAA+B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,sCAAsC,CAAA;QAClJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,EAAE,CAAA;YACd,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,EAAE,OAAO,IAAI,kCAAkC,CAAA;IAC3E,OAAO;QACL,OAAO;QACP,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,QAAQ;QACtC,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,SAAS;QACvC,SAAS,EAAE,aAAa;QACxB,KAAK,EAAE,YAAY,EAAE,KAAK;KAC3B,CAAA;AACH,CAAC;AAED,6CAA6C;AAC7C,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAe,EACf,UAAwB,EAAE;IAE1B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACjD,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;QAE/C,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAA;YAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,YAAY,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,KAAK,MAAM,YAAY,GAAG,aAAa,cAAc,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAC7H,CAAA;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,UAAU,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/auth.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  declare const KBOT_DIR: string;
2
2
  declare const CONFIG_PATH: string;
3
- declare const API_BASE = "https://eoxxpyixdieprsxlpwcs.supabase.co/functions/v1/kernel-api";
4
- export type ByokProvider = 'anthropic' | 'openai' | 'google' | 'mistral' | 'xai' | 'deepseek' | 'groq' | 'together' | 'fireworks' | 'perplexity' | 'cohere' | 'nvidia';
3
+ export type ByokProvider = 'anthropic' | 'openai' | 'google' | 'mistral' | 'xai' | 'deepseek' | 'groq' | 'together' | 'fireworks' | 'perplexity' | 'cohere' | 'nvidia' | 'ollama' | 'openclaw';
5
4
  export interface ProviderConfig {
6
5
  name: string;
7
6
  apiUrl: string;
@@ -14,24 +13,22 @@ export interface ProviderConfig {
14
13
  }
15
14
  export declare const PROVIDERS: Record<ByokProvider, ProviderConfig>;
16
15
  export interface KbotConfig {
17
- api_key: string;
18
- default_model: 'auto' | 'sonnet' | 'haiku';
16
+ default_model: 'auto' | string;
19
17
  default_agent: 'auto' | string;
20
- api_base: string;
21
- tier?: string;
22
- monthly_limit?: number;
23
18
  byok_key?: string;
24
19
  byok_enabled?: boolean;
25
20
  byok_provider?: ByokProvider;
26
21
  }
27
22
  export declare function loadConfig(): KbotConfig | null;
28
23
  export declare function saveConfig(config: KbotConfig): void;
29
- export declare function getApiKey(): string | null;
30
- export declare function getApiBase(): string;
31
24
  export declare function getDefaultModel(): string;
32
25
  export declare function getDefaultAgent(): string;
33
26
  /** Detect provider from API key prefix. Returns null if ambiguous. */
34
27
  export declare function detectProvider(key: string): ByokProvider | null;
28
+ /** Check if a provider is local (runs on this machine, may still need a token) */
29
+ export declare function isLocalProvider(provider: ByokProvider): boolean;
30
+ /** Check if a provider needs no API key at all */
31
+ export declare function isKeylessProvider(provider: ByokProvider): boolean;
35
32
  /** Check if BYOK mode is enabled (via env var or config) */
36
33
  export declare function isByokEnabled(): boolean;
37
34
  /** Get the active BYOK provider */
@@ -40,8 +37,12 @@ export declare function getByokProvider(): ByokProvider;
40
37
  export declare function getByokKey(): string | null;
41
38
  /** Get provider config */
42
39
  export declare function getProvider(provider: ByokProvider): ProviderConfig;
40
+ /** Select the best Ollama model for a given message, only from available models */
41
+ export declare function selectOllamaModel(message: string, availableModels?: string[]): string;
42
+ /** Pre-warm the Ollama model cache (call at startup) */
43
+ export declare function warmOllamaModelCache(): Promise<string[]>;
43
44
  /** Get model name for provider */
44
- export declare function getProviderModel(provider: ByokProvider, speed: 'default' | 'fast'): string;
45
+ export declare function getProviderModel(provider: ByokProvider, speed: 'default' | 'fast', taskHint?: string): string;
45
46
  /** Get the provider API URL */
46
47
  export declare function getProviderUrl(provider: ByokProvider): string;
47
48
  /** Estimate cost */
@@ -51,29 +52,13 @@ export declare function getAnthropicUrl(): string;
51
52
  export declare function setupByok(key: string, provider?: ByokProvider): Promise<boolean>;
52
53
  /** Disable BYOK mode */
53
54
  export declare function disableByok(): void;
54
- /** Verify a Kernel API key */
55
- export declare function verifyApiKey(key: string): Promise<{
56
- valid: boolean;
57
- tier?: string;
58
- agents?: Array<{
59
- id: string;
60
- name: string;
61
- role: string;
62
- }>;
63
- error?: string;
64
- }>;
65
- /** Get usage stats */
66
- export declare function getUsageStats(): Promise<{
67
- tier: string;
68
- monthly_messages: {
69
- count: number;
70
- limit: number;
71
- };
72
- per_agent: Record<string, {
73
- messages: number;
74
- }>;
75
- } | null>;
76
- /** First-run setup flow */
77
- export declare function setupAuth(apiKey: string): Promise<boolean>;
78
- export { KBOT_DIR, CONFIG_PATH, API_BASE };
55
+ /** Check if Ollama is running locally */
56
+ export declare function isOllamaRunning(): Promise<boolean>;
57
+ /** List available Ollama models */
58
+ export declare function listOllamaModels(): Promise<string[]>;
59
+ /** Set up Ollama as the active provider */
60
+ export declare function setupOllama(model?: string): Promise<boolean>;
61
+ /** Set up OpenClaw as the active provider */
62
+ export declare function setupOpenClaw(token?: string): Promise<boolean>;
63
+ export { KBOT_DIR, CONFIG_PATH };
79
64
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/auth.js CHANGED
@@ -1,17 +1,16 @@
1
1
  // K:BOT Auth — API key management and configuration
2
2
  // Stores config in ~/.kbot/config.json
3
3
  //
4
- // Supports two modes:
5
- // 1. Kernel API key (kn_live_...) — uses Kernel's routing + agents, message-based billing
6
- // 2. BYOK (Bring Your Own Key) — user's own LLM key, still gets Kernel routing for free
7
- // Supported: Anthropic, OpenAI, Google, Mistral, xAI (Grok), DeepSeek,
8
- // Groq, Together AI, Fireworks, Perplexity, Cohere, NVIDIA NIM
4
+ // BYOK (Bring Your Own Key) — open-source, local-first.
5
+ // Supported: Anthropic, OpenAI, Google, Mistral, xAI (Grok), DeepSeek,
6
+ // Groq, Together AI, Fireworks, Perplexity, Cohere, NVIDIA NIM,
7
+ // Ollama (local), OpenClaw (local)
9
8
  import { homedir } from 'node:os';
10
9
  import { join } from 'node:path';
11
- import { mkdirSync, readFileSync, writeFileSync, existsSync } from 'node:fs';
10
+ import { mkdirSync, readFileSync, writeFileSync, existsSync, chmodSync } from 'node:fs';
11
+ import { createCipheriv, createDecipheriv, randomBytes, createHash } from 'node:crypto';
12
12
  const KBOT_DIR = join(homedir(), '.kbot');
13
13
  const CONFIG_PATH = join(KBOT_DIR, 'config.json');
14
- const API_BASE = 'https://eoxxpyixdieprsxlpwcs.supabase.co/functions/v1/kernel-api';
15
14
  export const PROVIDERS = {
16
15
  anthropic: {
17
16
  name: 'Anthropic (Claude)',
@@ -133,6 +132,26 @@ export const PROVIDERS = {
133
132
  outputCost: 1.20,
134
133
  authHeader: 'bearer',
135
134
  },
135
+ ollama: {
136
+ name: 'Ollama (Local)',
137
+ apiUrl: 'http://localhost:11434/v1/chat/completions',
138
+ apiStyle: 'openai',
139
+ defaultModel: 'qwen2.5-coder:7b',
140
+ fastModel: 'llama3.1:8b',
141
+ inputCost: 0,
142
+ outputCost: 0,
143
+ authHeader: 'bearer', // Ollama ignores auth but needs valid header
144
+ },
145
+ openclaw: {
146
+ name: 'OpenClaw (Local)',
147
+ apiUrl: 'http://127.0.0.1:18789/v1/chat/completions',
148
+ apiStyle: 'openai',
149
+ defaultModel: 'openclaw:main',
150
+ fastModel: 'openclaw:main',
151
+ inputCost: 0,
152
+ outputCost: 0,
153
+ authHeader: 'bearer',
154
+ },
136
155
  };
137
156
  function ensureDir() {
138
157
  if (!existsSync(KBOT_DIR)) {
@@ -150,26 +169,61 @@ export function loadConfig() {
150
169
  if (!existsSync(CONFIG_PATH))
151
170
  return null;
152
171
  const raw = readFileSync(CONFIG_PATH, 'utf-8');
153
- return JSON.parse(raw);
172
+ const config = JSON.parse(raw);
173
+ // Decrypt API key if encrypted
174
+ if (config.byok_key && config.byok_key.startsWith('enc:')) {
175
+ try {
176
+ config.byok_key = decryptValue(config.byok_key);
177
+ }
178
+ catch { /* leave as-is */ }
179
+ }
180
+ return config;
154
181
  }
155
182
  catch {
156
183
  return null;
157
184
  }
158
185
  }
159
- export function saveConfig(config) {
160
- ensureDir();
161
- writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2));
186
+ /** Derive encryption key from machine-specific data */
187
+ function deriveEncryptionKey() {
188
+ const machineId = `${homedir()}:${process.env.USER || 'kbot'}:${process.arch}`;
189
+ return createHash('sha256').update(machineId).digest();
162
190
  }
163
- export function getApiKey() {
164
- const envKey = process.env.KBOT_API_KEY;
165
- if (envKey)
166
- return envKey;
167
- const config = loadConfig();
168
- return config?.api_key || null;
191
+ /** Encrypt a string value */
192
+ function encryptValue(plaintext) {
193
+ const key = deriveEncryptionKey();
194
+ const iv = randomBytes(16);
195
+ const cipher = createCipheriv('aes-256-cbc', key, iv);
196
+ let encrypted = cipher.update(plaintext, 'utf-8', 'base64');
197
+ encrypted += cipher.final('base64');
198
+ return `enc:${iv.toString('base64')}:${encrypted}`;
169
199
  }
170
- export function getApiBase() {
171
- const config = loadConfig();
172
- return config?.api_base || API_BASE;
200
+ /** Decrypt a string value */
201
+ function decryptValue(encrypted) {
202
+ if (!encrypted.startsWith('enc:'))
203
+ return encrypted; // Plaintext fallback for migration
204
+ const parts = encrypted.split(':');
205
+ if (parts.length !== 3)
206
+ return encrypted;
207
+ const key = deriveEncryptionKey();
208
+ const iv = Buffer.from(parts[1], 'base64');
209
+ const decipher = createDecipheriv('aes-256-cbc', key, iv);
210
+ let decrypted = decipher.update(parts[2], 'base64', 'utf-8');
211
+ decrypted += decipher.final('utf-8');
212
+ return decrypted;
213
+ }
214
+ export function saveConfig(config) {
215
+ ensureDir();
216
+ // Encrypt API key before saving
217
+ const toSave = { ...config };
218
+ if (toSave.byok_key && !toSave.byok_key.startsWith('enc:') && toSave.byok_key !== 'local') {
219
+ toSave.byok_key = encryptValue(toSave.byok_key);
220
+ }
221
+ writeFileSync(CONFIG_PATH, JSON.stringify(toSave, null, 2));
222
+ // Restrict file permissions (owner read/write only)
223
+ try {
224
+ chmodSync(CONFIG_PATH, 0o600);
225
+ }
226
+ catch { /* Windows doesn't support chmod */ }
173
227
  }
174
228
  export function getDefaultModel() {
175
229
  const config = loadConfig();
@@ -219,42 +273,112 @@ const ENV_KEYS = [
219
273
  { env: 'PERPLEXITY_API_KEY', provider: 'perplexity' },
220
274
  { env: 'COHERE_API_KEY', provider: 'cohere' },
221
275
  { env: 'NVIDIA_API_KEY', provider: 'nvidia' },
276
+ { env: 'OLLAMA_API_KEY', provider: 'ollama' },
277
+ { env: 'OPENCLAW_API_KEY', provider: 'openclaw' },
222
278
  ];
279
+ /** Check if a provider is local (runs on this machine, may still need a token) */
280
+ export function isLocalProvider(provider) {
281
+ return provider === 'ollama' || provider === 'openclaw';
282
+ }
283
+ /** Check if a provider needs no API key at all */
284
+ export function isKeylessProvider(provider) {
285
+ return provider === 'ollama';
286
+ }
223
287
  /** Check if BYOK mode is enabled (via env var or config) */
224
288
  export function isByokEnabled() {
289
+ // Local providers always work without keys
290
+ const config = loadConfig();
291
+ if (config?.byok_provider && isLocalProvider(config.byok_provider) && config?.byok_enabled)
292
+ return true;
225
293
  for (const { env } of ENV_KEYS) {
226
294
  if (process.env[env])
227
295
  return true;
228
296
  }
229
- const config = loadConfig();
230
297
  return config?.byok_enabled === true && !!config?.byok_key;
231
298
  }
232
299
  /** Get the active BYOK provider */
233
300
  export function getByokProvider() {
301
+ // If config explicitly sets a local provider, use it (don't let env vars override)
302
+ const config = loadConfig();
303
+ if (config?.byok_provider && isLocalProvider(config.byok_provider) && config?.byok_enabled) {
304
+ return config.byok_provider;
305
+ }
234
306
  for (const { env, provider } of ENV_KEYS) {
235
307
  if (process.env[env])
236
308
  return provider;
237
309
  }
238
- const config = loadConfig();
239
310
  return config?.byok_provider || 'anthropic';
240
311
  }
241
312
  /** Get the BYOK API key */
242
313
  export function getByokKey() {
314
+ // Keyless providers (Ollama) don't need real API keys
315
+ const config = loadConfig();
316
+ if (config?.byok_provider && isKeylessProvider(config.byok_provider))
317
+ return 'local';
318
+ // OpenClaw needs its gateway token
319
+ if (config?.byok_provider === 'openclaw' && config?.byok_key)
320
+ return config.byok_key;
243
321
  for (const { env } of ENV_KEYS) {
244
322
  const val = process.env[env];
245
323
  if (val)
246
324
  return val;
247
325
  }
248
- const config = loadConfig();
249
326
  return config?.byok_key || null;
250
327
  }
251
328
  /** Get provider config */
252
329
  export function getProvider(provider) {
253
330
  return PROVIDERS[provider];
254
331
  }
332
+ /** Ollama model routing — pick the best local model for the task */
333
+ const OLLAMA_MODEL_ROUTES = [
334
+ { keywords: /\b(code|function|class|refactor|debug|typescript|javascript|python|rust|go|java|html|css|react|vue|angular|api|endpoint|sql|query|database|schema|migration|test|spec|lint|build|compile|import|export|module|package|dependency|npm|pip|cargo)\b/i, models: ['qwen2.5-coder:7b', 'deepseek-coder-v2:16b', 'codellama:13b', 'codegemma:7b', 'starcoder2:7b'], fallbackCategory: 'code' },
335
+ { keywords: /\b(reason|think|why|explain|analyze|compare|evaluate|proof|logic|math|calculate|solve|deduc|infer|hypothesis|trade.?off|pros?\s+and\s+cons?|decision)\b/i, models: ['phi4:14b', 'nemotron-3-nano', 'gemma3:12b', 'mistral:7b'], fallbackCategory: 'reasoning' },
336
+ { keywords: /\b(research|search|find|look\s+up|summarize|article|paper|report|review|document|write|blog|essay|draft|outline|rewrite|edit|proofread)\b/i, models: ['gemma3:12b', 'llama3.1:8b', 'nemotron-3-nano', 'mistral:7b'], fallbackCategory: 'general' },
337
+ ];
338
+ /** Cache of available Ollama models (refreshed periodically) */
339
+ let cachedOllamaModels = [];
340
+ let ollamaModelsCacheTime = 0;
341
+ async function getAvailableOllamaModels() {
342
+ // Refresh cache every 60 seconds
343
+ if (Date.now() - ollamaModelsCacheTime < 60_000 && cachedOllamaModels.length > 0) {
344
+ return cachedOllamaModels;
345
+ }
346
+ cachedOllamaModels = await listOllamaModels();
347
+ ollamaModelsCacheTime = Date.now();
348
+ return cachedOllamaModels;
349
+ }
350
+ /** Check if a model name matches any available model (handles tag variants) */
351
+ function isModelAvailable(model, available) {
352
+ const base = model.split(':')[0];
353
+ return available.some(m => m === model || m.startsWith(base + ':'));
354
+ }
355
+ /** Select the best Ollama model for a given message, only from available models */
356
+ export function selectOllamaModel(message, availableModels) {
357
+ const available = availableModels || cachedOllamaModels;
358
+ if (available.length === 0)
359
+ return PROVIDERS.ollama.defaultModel;
360
+ for (const route of OLLAMA_MODEL_ROUTES) {
361
+ if (route.keywords.test(message)) {
362
+ // Try each model in preference order, use the first one that's available
363
+ for (const model of route.models) {
364
+ if (isModelAvailable(model, available))
365
+ return model;
366
+ }
367
+ }
368
+ }
369
+ return PROVIDERS.ollama.defaultModel;
370
+ }
371
+ /** Pre-warm the Ollama model cache (call at startup) */
372
+ export async function warmOllamaModelCache() {
373
+ return getAvailableOllamaModels();
374
+ }
255
375
  /** Get model name for provider */
256
- export function getProviderModel(provider, speed) {
376
+ export function getProviderModel(provider, speed, taskHint) {
257
377
  const p = PROVIDERS[provider];
378
+ // Smart routing for Ollama — pick best model per task
379
+ if (provider === 'ollama' && speed === 'default' && taskHint) {
380
+ return selectOllamaModel(taskHint);
381
+ }
258
382
  return speed === 'fast' ? p.fastModel : p.defaultModel;
259
383
  }
260
384
  /** Get the provider API URL */
@@ -270,10 +394,28 @@ export function estimateCost(provider, inputTokens, outputTokens) {
270
394
  export function getAnthropicUrl() {
271
395
  return PROVIDERS.anthropic.apiUrl;
272
396
  }
273
- /** Verify a BYOK key by making a minimal test request */
397
+ /** Quick format validation avoid API calls for obviously invalid keys */
398
+ function isValidKeyFormat(key, provider) {
399
+ if (!key || key.length < 8)
400
+ return false;
401
+ // Provider-specific format checks
402
+ switch (provider) {
403
+ case 'anthropic': return key.startsWith('sk-ant-') && key.length > 20;
404
+ case 'openai': return (key.startsWith('sk-') || key.startsWith('sk-proj-')) && key.length > 20;
405
+ case 'google': return key.startsWith('AIza') && key.length > 20;
406
+ case 'groq': return key.startsWith('gsk_') && key.length > 20;
407
+ case 'xai': return key.startsWith('xai-') && key.length > 20;
408
+ default: return key.length >= 10; // Generic minimum length check
409
+ }
410
+ }
411
+ /** Verify a BYOK key — format check first, API call only if format passes */
274
412
  async function verifyByokKey(key, provider) {
413
+ // Quick format validation (no API cost)
414
+ if (!isValidKeyFormat(key, provider))
415
+ return false;
275
416
  const p = PROVIDERS[provider];
276
417
  try {
418
+ // Use minimal max_tokens=1 to minimize cost of verification
277
419
  if (p.apiStyle === 'anthropic') {
278
420
  const res = await fetch(p.apiUrl, {
279
421
  method: 'POST',
@@ -284,9 +426,10 @@ async function verifyByokKey(key, provider) {
284
426
  },
285
427
  body: JSON.stringify({
286
428
  model: p.fastModel,
287
- max_tokens: 16,
429
+ max_tokens: 1,
288
430
  messages: [{ role: 'user', content: 'hi' }],
289
431
  }),
432
+ signal: AbortSignal.timeout(10_000),
290
433
  });
291
434
  if (!res.ok)
292
435
  return false;
@@ -299,8 +442,9 @@ async function verifyByokKey(key, provider) {
299
442
  headers: { 'Content-Type': 'application/json' },
300
443
  body: JSON.stringify({
301
444
  contents: [{ parts: [{ text: 'hi' }] }],
302
- generationConfig: { maxOutputTokens: 16 },
445
+ generationConfig: { maxOutputTokens: 1 },
303
446
  }),
447
+ signal: AbortSignal.timeout(10_000),
304
448
  });
305
449
  if (!res.ok)
306
450
  return false;
@@ -317,15 +461,16 @@ async function verifyByokKey(key, provider) {
317
461
  body: JSON.stringify({
318
462
  model: p.fastModel,
319
463
  messages: [{ role: 'user', content: 'hi' }],
320
- max_tokens: 16,
464
+ max_tokens: 1,
321
465
  }),
466
+ signal: AbortSignal.timeout(10_000),
322
467
  });
323
468
  if (!res.ok)
324
469
  return false;
325
470
  await res.json();
326
471
  return true;
327
472
  }
328
- // OpenAI-compatible (openai, mistral, xai, deepseek, groq, together, fireworks, perplexity)
473
+ // OpenAI-compatible
329
474
  const res = await fetch(p.apiUrl, {
330
475
  method: 'POST',
331
476
  headers: {
@@ -334,9 +479,10 @@ async function verifyByokKey(key, provider) {
334
479
  },
335
480
  body: JSON.stringify({
336
481
  model: p.fastModel,
337
- max_tokens: 16,
482
+ max_tokens: 1,
338
483
  messages: [{ role: 'user', content: 'hi' }],
339
484
  }),
485
+ signal: AbortSignal.timeout(10_000),
340
486
  });
341
487
  if (!res.ok)
342
488
  return false;
@@ -356,10 +502,8 @@ export async function setupByok(key, provider) {
356
502
  if (!valid)
357
503
  return false;
358
504
  const config = loadConfig() || {
359
- api_key: '',
360
505
  default_model: 'auto',
361
506
  default_agent: 'auto',
362
- api_base: API_BASE,
363
507
  };
364
508
  config.byok_key = key;
365
509
  config.byok_enabled = true;
@@ -375,55 +519,69 @@ export function disableByok() {
375
519
  saveConfig(config);
376
520
  }
377
521
  }
378
- /** Verify a Kernel API key */
379
- export async function verifyApiKey(key) {
522
+ /** Check if Ollama is running locally */
523
+ export async function isOllamaRunning() {
380
524
  try {
381
- const res = await fetch(`${API_BASE}/agents`, {
382
- headers: { Authorization: `Bearer ${key}` },
383
- });
384
- if (!res.ok) {
385
- const body = await res.json().catch(() => ({ error: 'Unknown error' }));
386
- return { valid: false, error: body.error || `HTTP ${res.status}` };
387
- }
388
- const data = await res.json();
389
- return { valid: true, tier: data.tier, agents: data.agents };
525
+ const res = await fetch('http://localhost:11434/api/tags', { signal: AbortSignal.timeout(2000) });
526
+ return res.ok;
390
527
  }
391
- catch (err) {
392
- return { valid: false, error: `Connection failed: ${err}` };
528
+ catch {
529
+ return false;
393
530
  }
394
531
  }
395
- /** Get usage stats */
396
- export async function getUsageStats() {
397
- const key = getApiKey();
398
- if (!key)
399
- return null;
532
+ /** List available Ollama models */
533
+ export async function listOllamaModels() {
400
534
  try {
401
- const res = await fetch(`${getApiBase()}/usage`, {
402
- headers: { Authorization: `Bearer ${key}` },
403
- });
535
+ const res = await fetch('http://localhost:11434/api/tags', { signal: AbortSignal.timeout(3000) });
404
536
  if (!res.ok)
405
- return null;
406
- return await res.json();
537
+ return [];
538
+ const data = await res.json();
539
+ return (data.models || []).map((m) => m.name);
407
540
  }
408
541
  catch {
409
- return null;
542
+ return [];
543
+ }
544
+ }
545
+ /** Set up Ollama as the active provider */
546
+ export async function setupOllama(model) {
547
+ const running = await isOllamaRunning();
548
+ if (!running)
549
+ return false;
550
+ const models = await listOllamaModels();
551
+ if (models.length === 0)
552
+ return false;
553
+ const config = loadConfig() || {
554
+ default_model: 'auto',
555
+ default_agent: 'auto',
556
+ };
557
+ config.byok_enabled = true;
558
+ config.byok_provider = 'ollama';
559
+ config.byok_key = 'local';
560
+ if (model) {
561
+ PROVIDERS.ollama.defaultModel = model;
410
562
  }
563
+ saveConfig(config);
564
+ return true;
411
565
  }
412
- /** First-run setup flow */
413
- export async function setupAuth(apiKey) {
414
- const result = await verifyApiKey(apiKey);
415
- if (!result.valid)
566
+ /** Set up OpenClaw as the active provider */
567
+ export async function setupOpenClaw(token) {
568
+ try {
569
+ const res = await fetch('http://127.0.0.1:18789/health', { signal: AbortSignal.timeout(3000) });
570
+ if (!res.ok)
571
+ return false;
572
+ }
573
+ catch {
416
574
  return false;
417
- const config = {
418
- api_key: apiKey,
575
+ }
576
+ const config = loadConfig() || {
419
577
  default_model: 'auto',
420
578
  default_agent: 'auto',
421
- api_base: API_BASE,
422
- tier: result.tier,
423
- monthly_limit: undefined,
424
579
  };
580
+ config.byok_enabled = true;
581
+ config.byok_provider = 'openclaw';
582
+ config.byok_key = token || 'local';
425
583
  saveConfig(config);
426
584
  return true;
427
585
  }
428
- export { KBOT_DIR, CONFIG_PATH, API_BASE };
586
+ export { KBOT_DIR, CONFIG_PATH };
429
587
  //# sourceMappingURL=auth.js.map