jishushell 0.6.5 → 0.7.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 (1207) hide show
  1. package/apps/anythingllm-container.yaml +16 -170
  2. package/apps/browserless-chromium-container.yaml +16 -10
  3. package/apps/filebrowser-container.yaml +15 -9
  4. package/apps/hermes-container.yaml +20 -5
  5. package/apps/immich-container-lite.yaml +337 -0
  6. package/apps/immich-container.yaml +371 -0
  7. package/apps/jishu-kb-container.yaml +50 -177
  8. package/apps/ollama-binary.yaml +33 -28
  9. package/apps/ollama-cpu-container.yaml +6 -0
  10. package/apps/ollama-with-hollama-binary.yaml +35 -28
  11. package/apps/openclaw-binary.yaml +35 -15
  12. package/apps/openclaw-container.yaml +29 -11
  13. package/apps/openclaw-with-ollama-container.yaml +9 -2
  14. package/apps/openclaw-with-searxng-container.yaml +38 -6
  15. package/apps/searxng-container.yaml +31 -6
  16. package/apps/weknora-container.yaml +26 -21
  17. package/dependencies/jishushell-panel-0.7.3.tgz +0 -0
  18. package/dist/cli/app.js +244 -213
  19. package/dist/cli/app.js.map +1 -1
  20. package/dist/cli/backup.js +15 -12
  21. package/dist/cli/backup.js.map +1 -1
  22. package/dist/cli/core.d.ts +4 -3
  23. package/dist/cli/core.js +392 -227
  24. package/dist/cli/core.js.map +1 -1
  25. package/dist/cli/doctor.d.ts +1 -1
  26. package/dist/cli/doctor.js +113 -10
  27. package/dist/cli/doctor.js.map +1 -1
  28. package/dist/cli/job.js +62 -14
  29. package/dist/cli/job.js.map +1 -1
  30. package/dist/cli/llm.js +80 -11
  31. package/dist/cli/llm.js.map +1 -1
  32. package/dist/cli/managed-list.d.ts +1 -3
  33. package/dist/cli/managed-list.js +18 -16
  34. package/dist/cli/managed-list.js.map +1 -1
  35. package/dist/cli/migrate.d.ts +2 -0
  36. package/dist/cli/migrate.js +160 -0
  37. package/dist/cli/migrate.js.map +1 -0
  38. package/dist/cli.js +1 -0
  39. package/dist/cli.js.map +1 -1
  40. package/dist/config.d.ts +32 -20
  41. package/dist/config.js +132 -51
  42. package/dist/config.js.map +1 -1
  43. package/dist/control.d.ts +6 -6
  44. package/dist/control.js +31 -23
  45. package/dist/control.js.map +1 -1
  46. package/dist/core.d.ts +5 -5
  47. package/dist/core.js +5 -5
  48. package/dist/core.js.map +1 -1
  49. package/dist/install.d.ts +2 -2
  50. package/dist/install.js +78 -37
  51. package/dist/install.js.map +1 -1
  52. package/dist/routes/admin.d.ts +2 -0
  53. package/dist/routes/admin.js +72 -0
  54. package/dist/routes/admin.js.map +1 -0
  55. package/dist/routes/apps.d.ts +1 -1
  56. package/dist/routes/apps.js +101 -193
  57. package/dist/routes/apps.js.map +1 -1
  58. package/dist/routes/auth.js +1 -1
  59. package/dist/routes/auth.js.map +1 -1
  60. package/dist/routes/backup.js +1 -1
  61. package/dist/routes/backup.js.map +1 -1
  62. package/dist/routes/docker.d.ts +2 -0
  63. package/dist/routes/docker.js +58 -0
  64. package/dist/routes/docker.js.map +1 -0
  65. package/dist/routes/external-mounts.d.ts +1 -1
  66. package/dist/routes/external-mounts.js +1 -1
  67. package/dist/routes/external-mounts.js.map +1 -1
  68. package/dist/routes/file-mounts.d.ts +4 -3
  69. package/dist/routes/file-mounts.js +49 -31
  70. package/dist/routes/file-mounts.js.map +1 -1
  71. package/dist/routes/files-organize.d.ts +2 -2
  72. package/dist/routes/files-organize.js +5 -5
  73. package/dist/routes/files-organize.js.map +1 -1
  74. package/dist/routes/files.d.ts +1 -1
  75. package/dist/routes/files.js +1 -1
  76. package/dist/routes/files.js.map +1 -1
  77. package/dist/routes/instances.d.ts +0 -8
  78. package/dist/routes/instances.js +202 -1560
  79. package/dist/routes/instances.js.map +1 -1
  80. package/dist/routes/integration-apps.d.ts +14 -0
  81. package/dist/routes/integration-apps.js +81 -0
  82. package/dist/routes/integration-apps.js.map +1 -0
  83. package/dist/routes/integrations.d.ts +9 -0
  84. package/dist/routes/integrations.js +12 -0
  85. package/dist/routes/integrations.js.map +1 -0
  86. package/dist/routes/llm-proxy.js +26 -3
  87. package/dist/routes/llm-proxy.js.map +1 -1
  88. package/dist/routes/setup.js +53 -38
  89. package/dist/routes/setup.js.map +1 -1
  90. package/dist/routes/system.js +108 -68
  91. package/dist/routes/system.js.map +1 -1
  92. package/dist/routes/webdav.d.ts +1 -1
  93. package/dist/routes/webdav.js +2 -2
  94. package/dist/routes/webdav.js.map +1 -1
  95. package/dist/server.d.ts +6 -0
  96. package/dist/server.js +368 -233
  97. package/dist/server.js.map +1 -1
  98. package/dist/services/app-common/app-compiler.js +186 -0
  99. package/dist/services/app-common/app-compiler.js.map +1 -0
  100. package/dist/services/app-common/app-shared.d.ts +15 -0
  101. package/dist/services/app-common/app-shared.js +64 -0
  102. package/dist/services/app-common/app-shared.js.map +1 -0
  103. package/dist/services/app-common/capability-service.d.ts +45 -0
  104. package/dist/services/app-common/capability-service.js +331 -0
  105. package/dist/services/app-common/capability-service.js.map +1 -0
  106. package/dist/services/app-common/catalog-service.d.ts +59 -0
  107. package/dist/services/app-common/catalog-service.js +318 -0
  108. package/dist/services/app-common/catalog-service.js.map +1 -0
  109. package/dist/services/app-common/create-pipeline.d.ts +26 -0
  110. package/dist/services/app-common/create-pipeline.js +298 -0
  111. package/dist/services/app-common/create-pipeline.js.map +1 -0
  112. package/dist/services/app-common/delete-service.d.ts +5 -0
  113. package/dist/services/app-common/delete-service.js +109 -0
  114. package/dist/services/app-common/delete-service.js.map +1 -0
  115. package/dist/services/app-common/execution-owner.d.ts +23 -0
  116. package/dist/services/app-common/execution-owner.js +124 -0
  117. package/dist/services/app-common/execution-owner.js.map +1 -0
  118. package/dist/services/app-common/execution-service.d.ts +23 -0
  119. package/dist/services/app-common/execution-service.js +105 -0
  120. package/dist/services/app-common/execution-service.js.map +1 -0
  121. package/dist/services/app-common/id-normalizer.d.ts +31 -0
  122. package/dist/services/app-common/id-normalizer.js +83 -0
  123. package/dist/services/app-common/id-normalizer.js.map +1 -0
  124. package/dist/services/app-common/install-store.d.ts +34 -0
  125. package/dist/services/app-common/install-store.js +261 -0
  126. package/dist/services/app-common/install-store.js.map +1 -0
  127. package/dist/services/app-common/instance-store.d.ts +78 -0
  128. package/dist/services/app-common/instance-store.js +498 -0
  129. package/dist/services/app-common/instance-store.js.map +1 -0
  130. package/dist/services/app-common/integration-refs.d.ts +17 -0
  131. package/dist/services/app-common/integration-refs.js +47 -0
  132. package/dist/services/app-common/integration-refs.js.map +1 -0
  133. package/dist/services/app-common/lifecycle-pipeline.d.ts +62 -0
  134. package/dist/services/app-common/lifecycle-pipeline.js +317 -0
  135. package/dist/services/app-common/lifecycle-pipeline.js.map +1 -0
  136. package/dist/services/app-common/lifecycle-scripts.d.ts +38 -0
  137. package/dist/services/app-common/lifecycle-scripts.js +935 -0
  138. package/dist/services/app-common/lifecycle-scripts.js.map +1 -0
  139. package/dist/services/app-common/lifecycle-service.d.ts +68 -0
  140. package/dist/services/app-common/lifecycle-service.js +475 -0
  141. package/dist/services/app-common/lifecycle-service.js.map +1 -0
  142. package/dist/services/app-common/ownership.d.ts +3 -0
  143. package/dist/services/app-common/ownership.js +11 -0
  144. package/dist/services/app-common/ownership.js.map +1 -0
  145. package/dist/services/app-common/paths.d.ts +29 -0
  146. package/dist/services/app-common/paths.js +34 -0
  147. package/dist/services/app-common/paths.js.map +1 -0
  148. package/dist/services/app-common/platform-transform.d.ts +32 -0
  149. package/dist/services/app-common/platform-transform.js +65 -0
  150. package/dist/services/app-common/platform-transform.js.map +1 -0
  151. package/dist/services/app-common/provide-resolver.d.ts +29 -0
  152. package/dist/services/app-common/provide-resolver.js +129 -0
  153. package/dist/services/app-common/provide-resolver.js.map +1 -0
  154. package/dist/services/app-common/remote-spec.d.ts +14 -0
  155. package/dist/services/app-common/remote-spec.js +58 -0
  156. package/dist/services/app-common/remote-spec.js.map +1 -0
  157. package/dist/services/app-common/runtime-builder.d.ts +1 -0
  158. package/dist/services/app-common/runtime-builder.js +2 -0
  159. package/dist/services/app-common/runtime-builder.js.map +1 -0
  160. package/dist/services/app-common/runtime-facts.d.ts +19 -0
  161. package/dist/services/app-common/runtime-facts.js +128 -0
  162. package/dist/services/app-common/runtime-facts.js.map +1 -0
  163. package/dist/services/app-common/service.d.ts +9 -0
  164. package/dist/services/app-common/service.js +10 -0
  165. package/dist/services/app-common/service.js.map +1 -0
  166. package/dist/services/app-common/spec-materializer.d.ts +8 -0
  167. package/dist/services/app-common/spec-materializer.js +295 -0
  168. package/dist/services/app-common/spec-materializer.js.map +1 -0
  169. package/dist/services/app-common/status-refresh.d.ts +33 -0
  170. package/dist/services/app-common/status-refresh.js +771 -0
  171. package/dist/services/app-common/status-refresh.js.map +1 -0
  172. package/dist/services/app-common/task-service.d.ts +29 -0
  173. package/dist/services/app-common/task-service.js +93 -0
  174. package/dist/services/app-common/task-service.js.map +1 -0
  175. package/dist/services/app-common/terminal-session-manager.js +157 -0
  176. package/dist/services/app-common/terminal-session-manager.js.map +1 -0
  177. package/dist/services/app-modules/browserless/routes.d.ts +9 -0
  178. package/dist/services/app-modules/browserless/routes.js +519 -0
  179. package/dist/services/app-modules/browserless/routes.js.map +1 -0
  180. package/dist/services/app-modules/routes.d.ts +2 -0
  181. package/dist/services/app-modules/routes.js +5 -0
  182. package/dist/services/app-modules/routes.js.map +1 -0
  183. package/dist/services/backup/backup-admin.d.ts +95 -0
  184. package/dist/services/backup/backup-admin.js +246 -0
  185. package/dist/services/backup/backup-admin.js.map +1 -0
  186. package/dist/services/backup/backup-manager.d.ts +264 -0
  187. package/dist/services/backup/backup-manager.js +2318 -0
  188. package/dist/services/backup/backup-manager.js.map +1 -0
  189. package/dist/services/backup/backup-verify.js +240 -0
  190. package/dist/services/backup/backup-verify.js.map +1 -0
  191. package/dist/services/capabilities/browser-policy.d.ts +14 -0
  192. package/dist/services/capabilities/browser-policy.js +141 -0
  193. package/dist/services/capabilities/browser-policy.js.map +1 -0
  194. package/dist/services/capabilities/contract.d.ts +49 -0
  195. package/dist/services/capabilities/contract.js +119 -0
  196. package/dist/services/capabilities/contract.js.map +1 -0
  197. package/dist/services/capabilities/endpoint-validator.d.ts +42 -0
  198. package/dist/services/capabilities/endpoint-validator.js +113 -0
  199. package/dist/services/capabilities/endpoint-validator.js.map +1 -0
  200. package/dist/services/capabilities/health.d.ts +16 -0
  201. package/dist/services/capabilities/health.js +121 -0
  202. package/dist/services/capabilities/health.js.map +1 -0
  203. package/dist/services/capabilities/registry.d.ts +56 -0
  204. package/dist/services/capabilities/registry.js +222 -0
  205. package/dist/services/capabilities/registry.js.map +1 -0
  206. package/dist/services/capabilities/sync.d.ts +7 -0
  207. package/dist/services/capabilities/sync.js +223 -0
  208. package/dist/services/capabilities/sync.js.map +1 -0
  209. package/dist/services/capability-proxy/html-rewriters/browserless.d.ts +1 -0
  210. package/dist/services/capability-proxy/html-rewriters/browserless.js +83 -0
  211. package/dist/services/capability-proxy/html-rewriters/browserless.js.map +1 -0
  212. package/dist/services/capability-proxy/html-rewriters/index.d.ts +12 -0
  213. package/dist/services/capability-proxy/html-rewriters/index.js +25 -0
  214. package/dist/services/capability-proxy/html-rewriters/index.js.map +1 -0
  215. package/dist/services/capability-proxy/html-rewriters/jishukb.d.ts +1 -0
  216. package/dist/services/capability-proxy/html-rewriters/jishukb.js +161 -0
  217. package/dist/services/capability-proxy/html-rewriters/jishukb.js.map +1 -0
  218. package/dist/services/capability-proxy/http.d.ts +7 -0
  219. package/dist/services/capability-proxy/http.js +555 -0
  220. package/dist/services/capability-proxy/http.js.map +1 -0
  221. package/dist/services/capability-proxy/terminal.d.ts +4 -0
  222. package/dist/services/capability-proxy/terminal.js +179 -0
  223. package/dist/services/capability-proxy/terminal.js.map +1 -0
  224. package/dist/services/connections/admin.d.ts +80 -0
  225. package/dist/services/connections/admin.js +337 -0
  226. package/dist/services/connections/admin.js.map +1 -0
  227. package/dist/services/connections/apply.d.ts +104 -0
  228. package/dist/services/connections/apply.js +415 -0
  229. package/dist/services/connections/apply.js.map +1 -0
  230. package/dist/services/connections/resolver.d.ts +82 -0
  231. package/dist/services/connections/resolver.js +289 -0
  232. package/dist/services/connections/resolver.js.map +1 -0
  233. package/dist/services/connections/transactor.d.ts +39 -0
  234. package/dist/services/connections/transactor.js +307 -0
  235. package/dist/services/connections/transactor.js.map +1 -0
  236. package/dist/services/files/bootstrap.d.ts +7 -0
  237. package/dist/services/files/bootstrap.js +16 -0
  238. package/dist/services/files/bootstrap.js.map +1 -0
  239. package/dist/services/files/external-mounts.js +187 -0
  240. package/dist/services/files/external-mounts.js.map +1 -0
  241. package/dist/services/files/files-manager.d.ts +265 -0
  242. package/dist/services/files/files-manager.js +1189 -0
  243. package/dist/services/files/files-manager.js.map +1 -0
  244. package/dist/services/files/files-mounts.d.ts +42 -0
  245. package/dist/services/files/files-mounts.js +207 -0
  246. package/dist/services/files/files-mounts.js.map +1 -0
  247. package/dist/services/files/organize/applier.js +218 -0
  248. package/dist/services/files/organize/applier.js.map +1 -0
  249. package/dist/services/files/organize/rules.js +286 -0
  250. package/dist/services/files/organize/rules.js.map +1 -0
  251. package/dist/services/files/organize/scanner.js +366 -0
  252. package/dist/services/files/organize/scanner.js.map +1 -0
  253. package/dist/services/files/organize/store.js +82 -0
  254. package/dist/services/files/organize/store.js.map +1 -0
  255. package/dist/services/files/photos/upload-page.d.ts +2 -0
  256. package/dist/services/files/photos/upload-page.js +248 -0
  257. package/dist/services/files/photos/upload-page.js.map +1 -0
  258. package/dist/services/files/photos/upload-store.d.ts +74 -0
  259. package/dist/services/files/photos/upload-store.js +432 -0
  260. package/dist/services/files/photos/upload-store.js.map +1 -0
  261. package/dist/services/files/webdav/server.d.ts +47 -0
  262. package/dist/services/files/webdav/server.js +329 -0
  263. package/dist/services/files/webdav/server.js.map +1 -0
  264. package/dist/services/files/webdav/xml-builder.js.map +1 -0
  265. package/dist/services/http/proxy-utils.d.ts +7 -0
  266. package/dist/services/http/proxy-utils.js +29 -0
  267. package/dist/services/http/proxy-utils.js.map +1 -0
  268. package/dist/services/http/request-utils.d.ts +3 -0
  269. package/dist/services/http/request-utils.js +23 -0
  270. package/dist/services/http/request-utils.js.map +1 -0
  271. package/dist/services/instances/admin.d.ts +23 -0
  272. package/dist/services/instances/admin.js +218 -0
  273. package/dist/services/instances/admin.js.map +1 -0
  274. package/dist/services/instances/clone.d.ts +26 -0
  275. package/dist/services/instances/clone.js +78 -0
  276. package/dist/services/instances/clone.js.map +1 -0
  277. package/dist/services/instances/config-admin.d.ts +17 -0
  278. package/dist/services/instances/config-admin.js +181 -0
  279. package/dist/services/instances/config-admin.js.map +1 -0
  280. package/dist/services/instances/manager.d.ts +232 -0
  281. package/dist/services/instances/manager.js +1342 -0
  282. package/dist/services/instances/manager.js.map +1 -0
  283. package/dist/services/instances/pairing.d.ts +17 -0
  284. package/dist/services/instances/pairing.js +53 -0
  285. package/dist/services/instances/pairing.js.map +1 -0
  286. package/dist/services/instances/passwords.js +173 -0
  287. package/dist/services/instances/passwords.js.map +1 -0
  288. package/dist/services/instances/status.d.ts +2 -0
  289. package/dist/services/instances/status.js +11 -0
  290. package/dist/services/instances/status.js.map +1 -0
  291. package/dist/services/instances/types.d.ts +21 -0
  292. package/dist/services/instances/types.js +2 -0
  293. package/dist/services/instances/types.js.map +1 -0
  294. package/dist/services/integrations/anythingllm/integration.d.ts +25 -0
  295. package/dist/services/integrations/anythingllm/integration.js +251 -0
  296. package/dist/services/integrations/anythingllm/integration.js.map +1 -0
  297. package/dist/services/integrations/catalog.d.ts +3 -0
  298. package/dist/services/integrations/catalog.js +73 -0
  299. package/dist/services/integrations/catalog.js.map +1 -0
  300. package/dist/services/integrations/custom/integration.d.ts +28 -0
  301. package/dist/services/integrations/custom/integration.js +179 -0
  302. package/dist/services/integrations/custom/integration.js.map +1 -0
  303. package/dist/services/integrations/hermes/integration.d.ts +194 -0
  304. package/dist/services/integrations/hermes/integration.js +1668 -0
  305. package/dist/services/integrations/hermes/integration.js.map +1 -0
  306. package/dist/services/integrations/immich/client.d.ts +93 -0
  307. package/dist/services/integrations/immich/client.js +458 -0
  308. package/dist/services/integrations/immich/client.js.map +1 -0
  309. package/dist/services/integrations/immich/config.d.ts +15 -0
  310. package/dist/services/integrations/immich/config.js +178 -0
  311. package/dist/services/integrations/immich/config.js.map +1 -0
  312. package/dist/services/integrations/immich/discovery.d.ts +9 -0
  313. package/dist/services/integrations/immich/discovery.js +101 -0
  314. package/dist/services/integrations/immich/discovery.js.map +1 -0
  315. package/dist/services/integrations/immich/gallery-renderer.d.ts +5 -0
  316. package/dist/services/integrations/immich/gallery-renderer.js +150 -0
  317. package/dist/services/integrations/immich/gallery-renderer.js.map +1 -0
  318. package/dist/services/integrations/immich/immich-shim.d.ts +11 -0
  319. package/dist/services/integrations/immich/immich-shim.js +439 -0
  320. package/dist/services/integrations/immich/immich-shim.js.map +1 -0
  321. package/dist/services/integrations/immich/integration.d.ts +18 -0
  322. package/dist/services/integrations/immich/integration.js +64 -0
  323. package/dist/services/integrations/immich/integration.js.map +1 -0
  324. package/dist/services/integrations/immich/photo-library.d.ts +4 -0
  325. package/dist/services/integrations/immich/photo-library.js +63 -0
  326. package/dist/services/integrations/immich/photo-library.js.map +1 -0
  327. package/dist/services/integrations/immich/review-executor.d.ts +3 -0
  328. package/dist/services/integrations/immich/review-executor.js +41 -0
  329. package/dist/services/integrations/immich/review-executor.js.map +1 -0
  330. package/dist/services/integrations/immich/review-session-service.d.ts +27 -0
  331. package/dist/services/integrations/immich/review-session-service.js +206 -0
  332. package/dist/services/integrations/immich/review-session-service.js.map +1 -0
  333. package/dist/services/integrations/immich/review-store.d.ts +47 -0
  334. package/dist/services/integrations/immich/review-store.js +347 -0
  335. package/dist/services/integrations/immich/review-store.js.map +1 -0
  336. package/dist/services/integrations/immich/routes.d.ts +7 -0
  337. package/dist/services/integrations/immich/routes.js +363 -0
  338. package/dist/services/integrations/immich/routes.js.map +1 -0
  339. package/dist/services/integrations/immich/types.d.ts +186 -0
  340. package/dist/services/integrations/immich/types.js +2 -0
  341. package/dist/services/integrations/immich/types.js.map +1 -0
  342. package/dist/services/integrations/index.d.ts +41 -0
  343. package/dist/services/integrations/index.js +60 -0
  344. package/dist/services/integrations/index.js.map +1 -0
  345. package/dist/services/integrations/installable/catalog.d.ts +33 -0
  346. package/dist/services/integrations/installable/catalog.js +88 -0
  347. package/dist/services/integrations/installable/catalog.js.map +1 -0
  348. package/dist/services/integrations/installable/index.d.ts +35 -0
  349. package/dist/services/integrations/installable/index.js +170 -0
  350. package/dist/services/integrations/installable/index.js.map +1 -0
  351. package/dist/services/integrations/installable/installers/integration-probes.d.ts +50 -0
  352. package/dist/services/integrations/installable/installers/integration-probes.js +231 -0
  353. package/dist/services/integrations/installable/installers/integration-probes.js.map +1 -0
  354. package/dist/services/integrations/installable/installers/integration.d.ts +30 -0
  355. package/dist/services/integrations/installable/installers/integration.js +283 -0
  356. package/dist/services/integrations/installable/installers/integration.js.map +1 -0
  357. package/dist/services/integrations/installable/installers/registry-probe.js.map +1 -0
  358. package/dist/services/integrations/installable/installers/shell-script.d.ts +46 -0
  359. package/dist/services/integrations/installable/installers/shell-script.js +487 -0
  360. package/dist/services/integrations/installable/installers/shell-script.js.map +1 -0
  361. package/dist/services/integrations/installable/types.d.ts +130 -0
  362. package/dist/services/integrations/installable/types.js +19 -0
  363. package/dist/services/integrations/installable/types.js.map +1 -0
  364. package/dist/services/integrations/jishukb/integration.d.ts +24 -0
  365. package/dist/services/integrations/jishukb/integration.js +300 -0
  366. package/dist/services/integrations/jishukb/integration.js.map +1 -0
  367. package/dist/services/integrations/openclaw/anythingllm-shim.d.ts +46 -0
  368. package/dist/services/integrations/openclaw/anythingllm-shim.js +281 -0
  369. package/dist/services/integrations/openclaw/anythingllm-shim.js.map +1 -0
  370. package/dist/services/integrations/openclaw/drive-shim.js +490 -0
  371. package/dist/services/integrations/openclaw/drive-shim.js.map +1 -0
  372. package/dist/services/integrations/openclaw/integration.d.ts +438 -0
  373. package/dist/services/integrations/openclaw/integration.js +4629 -0
  374. package/dist/services/integrations/openclaw/integration.js.map +1 -0
  375. package/dist/services/integrations/openclaw/jishukb-native-mcp.d.ts +58 -0
  376. package/dist/services/integrations/openclaw/jishukb-native-mcp.js +373 -0
  377. package/dist/services/integrations/openclaw/jishukb-native-mcp.js.map +1 -0
  378. package/dist/services/integrations/openclaw/jishukb-shim.d.ts +52 -0
  379. package/dist/services/integrations/openclaw/jishukb-shim.js +1357 -0
  380. package/dist/services/integrations/openclaw/jishukb-shim.js.map +1 -0
  381. package/dist/services/integrations/openclaw/mcporter-lite.js +276 -0
  382. package/dist/services/integrations/openclaw/mcporter-lite.js.map +1 -0
  383. package/dist/services/integrations/openclaw/mcporter.d.ts +59 -0
  384. package/dist/services/integrations/openclaw/mcporter.js +143 -0
  385. package/dist/services/integrations/openclaw/mcporter.js.map +1 -0
  386. package/dist/services/integrations/openclaw/native-mcp.d.ts +48 -0
  387. package/dist/services/integrations/openclaw/native-mcp.js +125 -0
  388. package/dist/services/integrations/openclaw/native-mcp.js.map +1 -0
  389. package/dist/services/integrations/openclaw/routes.d.ts +21 -0
  390. package/dist/services/integrations/openclaw/routes.js +1194 -0
  391. package/dist/services/integrations/openclaw/routes.js.map +1 -0
  392. package/dist/services/integrations/registry.d.ts +17 -0
  393. package/dist/services/integrations/registry.js +36 -0
  394. package/dist/services/integrations/registry.js.map +1 -0
  395. package/dist/services/integrations/routes.d.ts +2 -0
  396. package/dist/services/integrations/routes.js +9 -0
  397. package/dist/services/integrations/routes.js.map +1 -0
  398. package/dist/services/integrations/types.d.ts +457 -0
  399. package/dist/services/integrations/types.js +2 -0
  400. package/dist/services/integrations/types.js.map +1 -0
  401. package/dist/services/legacy-migrator/classifier.d.ts +44 -0
  402. package/dist/services/legacy-migrator/classifier.js +309 -0
  403. package/dist/services/legacy-migrator/classifier.js.map +1 -0
  404. package/dist/services/legacy-migrator/executor.d.ts +42 -0
  405. package/dist/services/legacy-migrator/executor.js +637 -0
  406. package/dist/services/legacy-migrator/executor.js.map +1 -0
  407. package/dist/services/legacy-migrator/index.d.ts +31 -0
  408. package/dist/services/legacy-migrator/index.js +34 -0
  409. package/dist/services/legacy-migrator/index.js.map +1 -0
  410. package/dist/services/legacy-migrator/planner.d.ts +8 -0
  411. package/dist/services/legacy-migrator/planner.js +154 -0
  412. package/dist/services/legacy-migrator/planner.js.map +1 -0
  413. package/dist/services/legacy-migrator/provider-settings.d.ts +6 -0
  414. package/dist/services/legacy-migrator/provider-settings.js +72 -0
  415. package/dist/services/legacy-migrator/provider-settings.js.map +1 -0
  416. package/dist/services/legacy-migrator/report.d.ts +9 -0
  417. package/dist/services/legacy-migrator/report.js +99 -0
  418. package/dist/services/legacy-migrator/report.js.map +1 -0
  419. package/dist/services/legacy-migrator/scanner.d.ts +13 -0
  420. package/dist/services/legacy-migrator/scanner.js +157 -0
  421. package/dist/services/legacy-migrator/scanner.js.map +1 -0
  422. package/dist/services/legacy-migrator/types.d.ts +97 -0
  423. package/dist/services/legacy-migrator/types.js +23 -0
  424. package/dist/services/legacy-migrator/types.js.map +1 -0
  425. package/dist/services/llm-proxy/instance-proxy.d.ts +17 -1
  426. package/dist/services/llm-proxy/instance-proxy.js +171 -44
  427. package/dist/services/llm-proxy/instance-proxy.js.map +1 -1
  428. package/dist/services/llm-proxy/probe.js +5 -14
  429. package/dist/services/llm-proxy/probe.js.map +1 -1
  430. package/dist/services/llm-proxy/providers.js +23 -31
  431. package/dist/services/llm-proxy/providers.js.map +1 -1
  432. package/dist/services/llm-proxy/ssrf.d.ts +11 -4
  433. package/dist/services/llm-proxy/ssrf.js +45 -7
  434. package/dist/services/llm-proxy/ssrf.js.map +1 -1
  435. package/dist/services/llm-proxy/validate-key.js +16 -37
  436. package/dist/services/llm-proxy/validate-key.js.map +1 -1
  437. package/dist/services/repair/runtime-repair.d.ts +22 -0
  438. package/dist/services/repair/runtime-repair.js +374 -0
  439. package/dist/services/repair/runtime-repair.js.map +1 -0
  440. package/dist/services/runtime/docker-network.d.ts +8 -0
  441. package/dist/services/runtime/docker-network.js +123 -0
  442. package/dist/services/runtime/docker-network.js.map +1 -0
  443. package/dist/services/runtime/driver-registry.d.ts +25 -0
  444. package/dist/services/runtime/driver-registry.js +22 -0
  445. package/dist/services/runtime/driver-registry.js.map +1 -0
  446. package/dist/services/runtime/drivers/nomad.d.ts +261 -0
  447. package/dist/services/runtime/drivers/nomad.js +3122 -0
  448. package/dist/services/runtime/drivers/nomad.js.map +1 -0
  449. package/dist/services/runtime/errors.d.ts +3 -3
  450. package/dist/services/runtime/errors.js +3 -3
  451. package/dist/services/runtime/instance.d.ts +14 -16
  452. package/dist/services/runtime/instance.js +93 -123
  453. package/dist/services/runtime/instance.js.map +1 -1
  454. package/dist/services/runtime/job-id.d.ts +1 -1
  455. package/dist/services/runtime/job-id.js +1 -1
  456. package/dist/services/runtime/mcp-shims/firewall.d.ts +2 -2
  457. package/dist/services/runtime/mcp-shims/firewall.js +2 -2
  458. package/dist/services/runtime/mcp-shims/searxng-shim.d.ts +3 -5
  459. package/dist/services/runtime/mcp-shims/searxng-shim.js +3 -5
  460. package/dist/services/runtime/mcp-shims/searxng-shim.js.map +1 -1
  461. package/dist/services/runtime/mcp-shims/write-mcp-entry.d.ts +20 -20
  462. package/dist/services/runtime/mcp-shims/write-mcp-entry.js +16 -16
  463. package/dist/services/runtime/mcp-shims/write-mcp-entry.js.map +1 -1
  464. package/dist/services/runtime/ownership-marker.d.ts +83 -0
  465. package/dist/services/runtime/ownership-marker.js +109 -0
  466. package/dist/services/runtime/ownership-marker.js.map +1 -0
  467. package/dist/services/runtime/service-manager.d.ts +2 -0
  468. package/dist/services/runtime/service-manager.js +18 -0
  469. package/dist/services/runtime/service-manager.js.map +1 -0
  470. package/dist/services/runtime/types.d.ts +23 -501
  471. package/dist/services/runtime/types.js +0 -12
  472. package/dist/services/runtime/types.js.map +1 -1
  473. package/dist/services/runtime/workload-compiler.d.ts +17 -0
  474. package/dist/services/runtime/workload-compiler.js +550 -0
  475. package/dist/services/runtime/workload-compiler.js.map +1 -0
  476. package/dist/services/runtime/workload-types.d.ts +11 -0
  477. package/dist/services/runtime/workload-types.js +2 -0
  478. package/dist/services/runtime/workload-types.js.map +1 -0
  479. package/dist/services/setup/core-manager.d.ts +50 -0
  480. package/dist/services/setup/core-manager.js +456 -0
  481. package/dist/services/setup/core-manager.js.map +1 -0
  482. package/dist/services/setup/plugin-installer.js +136 -0
  483. package/dist/services/setup/plugin-installer.js.map +1 -0
  484. package/dist/services/setup/setup-manager.d.ts +158 -0
  485. package/dist/services/setup/setup-manager.js +2724 -0
  486. package/dist/services/setup/setup-manager.js.map +1 -0
  487. package/dist/services/system/cli-command.d.ts +5 -0
  488. package/dist/services/system/cli-command.js +18 -0
  489. package/dist/services/system/cli-command.js.map +1 -0
  490. package/dist/services/system/macos-launchd.js +312 -0
  491. package/dist/services/system/macos-launchd.js.map +1 -0
  492. package/dist/services/system/repair-orchestrator.d.ts +71 -0
  493. package/dist/services/system/repair-orchestrator.js +412 -0
  494. package/dist/services/system/repair-orchestrator.js.map +1 -0
  495. package/dist/services/system/runtime-ownership.d.ts +36 -0
  496. package/dist/services/system/runtime-ownership.js +250 -0
  497. package/dist/services/system/runtime-ownership.js.map +1 -0
  498. package/dist/services/system/system-monitor.js +96 -0
  499. package/dist/services/system/system-monitor.js.map +1 -0
  500. package/dist/services/system/system-ollama-provider.d.ts +14 -0
  501. package/dist/services/system/system-ollama-provider.js +129 -0
  502. package/dist/services/system/system-ollama-provider.js.map +1 -0
  503. package/dist/services/system/system-reconciler.d.ts +59 -0
  504. package/dist/services/system/system-reconciler.js +763 -0
  505. package/dist/services/system/system-reconciler.js.map +1 -0
  506. package/dist/services/system/update-manager.d.ts +43 -0
  507. package/dist/services/system/update-manager.js +315 -0
  508. package/dist/services/system/update-manager.js.map +1 -0
  509. package/dist/services/system/upgrade-finalize.d.ts +80 -0
  510. package/dist/services/system/upgrade-finalize.js +507 -0
  511. package/dist/services/system/upgrade-finalize.js.map +1 -0
  512. package/dist/services/tasks/registry.d.ts +44 -0
  513. package/dist/services/tasks/registry.js +90 -0
  514. package/dist/services/tasks/registry.js.map +1 -0
  515. package/dist/services/telemetry/activation.d.ts +6 -2
  516. package/dist/services/telemetry/activation.js +6 -2
  517. package/dist/services/telemetry/activation.js.map +1 -1
  518. package/dist/services/telemetry/heartbeat.d.ts +6 -2
  519. package/dist/services/telemetry/heartbeat.js +6 -2
  520. package/dist/services/telemetry/heartbeat.js.map +1 -1
  521. package/dist/services/workspaces/builder.d.ts +29 -0
  522. package/dist/services/workspaces/builder.js +186 -0
  523. package/dist/services/workspaces/builder.js.map +1 -0
  524. package/dist/types.d.ts +350 -48
  525. package/dist/utils/instance-lock.d.ts +2 -2
  526. package/dist/utils/instance-lock.js +2 -2
  527. package/dist/utils/path-safety.js +1 -1
  528. package/dist/utils/service-user.d.ts +13 -0
  529. package/dist/utils/service-user.js +129 -0
  530. package/dist/utils/service-user.js.map +1 -0
  531. package/install/jishu-install.sh +107 -27
  532. package/install/jishu-uninstall.sh +8 -0
  533. package/install/post-install.sh +162 -185
  534. package/install/post-uninstall.sh +6 -0
  535. package/node_modules/@fastify/static/.github/workflows/ci.yml +1 -1
  536. package/node_modules/@fastify/static/.github/workflows/lock-threads.yml +19 -0
  537. package/node_modules/@fastify/static/LICENSE +1 -3
  538. package/node_modules/@fastify/static/example/server-benchmark.js +39 -0
  539. package/node_modules/@fastify/static/index.js +169 -23
  540. package/node_modules/@fastify/static/lib/dirList.js +20 -6
  541. package/node_modules/@fastify/static/package.json +10 -8
  542. package/node_modules/@fastify/static/test/dir-list.test.js +82 -0
  543. package/node_modules/@fastify/static/test/static.test.js +326 -4
  544. package/node_modules/@fastify/static/types/index.d.ts +0 -4
  545. package/node_modules/@fastify/static/types/index.test-d.ts +1 -1
  546. package/node_modules/brace-expansion/dist/commonjs/index.js +24 -14
  547. package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
  548. package/node_modules/brace-expansion/dist/esm/index.js +24 -14
  549. package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
  550. package/node_modules/brace-expansion/package.json +2 -2
  551. package/node_modules/content-disposition/README.md +21 -22
  552. package/node_modules/content-disposition/index.js +122 -44
  553. package/node_modules/content-disposition/package.json +16 -20
  554. package/node_modules/fast-uri/index.js +1 -1
  555. package/node_modules/fast-uri/package.json +1 -1
  556. package/node_modules/fast-uri/test/security.test.js +28 -0
  557. package/node_modules/fastify/SECURITY.md +1 -1
  558. package/node_modules/fastify/SPONSORS.md +6 -4
  559. package/node_modules/fastify/docs/Guides/Database.md +0 -28
  560. package/node_modules/fastify/docs/Guides/Ecosystem.md +13 -2
  561. package/node_modules/fastify/docs/Guides/Serverless.md +2 -2
  562. package/node_modules/fastify/docs/Guides/Write-Plugin.md +1 -1
  563. package/node_modules/fastify/docs/Reference/Encapsulation.md +27 -26
  564. package/node_modules/fastify/docs/Reference/Errors.md +10 -4
  565. package/node_modules/fastify/docs/Reference/HTTP2.md +10 -10
  566. package/node_modules/fastify/docs/Reference/Hooks.md +4 -4
  567. package/node_modules/fastify/docs/Reference/Index.md +14 -16
  568. package/node_modules/fastify/docs/Reference/LTS.md +12 -13
  569. package/node_modules/fastify/docs/Reference/Lifecycle.md +9 -8
  570. package/node_modules/fastify/docs/Reference/Logging.md +44 -39
  571. package/node_modules/fastify/docs/Reference/Middleware.md +21 -25
  572. package/node_modules/fastify/docs/Reference/Principles.md +2 -2
  573. package/node_modules/fastify/docs/Reference/Reply.md +6 -1
  574. package/node_modules/fastify/docs/Reference/Request.md +27 -16
  575. package/node_modules/fastify/docs/Reference/Routes.md +5 -2
  576. package/node_modules/fastify/docs/Reference/Server.md +31 -3
  577. package/node_modules/fastify/docs/Reference/Type-Providers.md +29 -5
  578. package/node_modules/fastify/docs/Reference/Validation-and-Serialization.md +15 -2
  579. package/node_modules/fastify/docs/Reference/Warnings.md +7 -6
  580. package/node_modules/fastify/eslint.config.js +7 -2
  581. package/node_modules/fastify/fastify.d.ts +8 -3
  582. package/node_modules/fastify/fastify.js +43 -14
  583. package/node_modules/fastify/lib/content-type-parser.js +13 -1
  584. package/node_modules/fastify/lib/decorate.js +11 -3
  585. package/node_modules/fastify/lib/error-handler.js +4 -3
  586. package/node_modules/fastify/lib/error-serializer.js +59 -59
  587. package/node_modules/fastify/lib/errors.js +16 -1
  588. package/node_modules/fastify/lib/four-oh-four.js +14 -9
  589. package/node_modules/fastify/lib/handle-request.js +11 -5
  590. package/node_modules/fastify/lib/plugin-override.js +2 -1
  591. package/node_modules/fastify/lib/plugin-utils.js +5 -5
  592. package/node_modules/fastify/lib/reply.js +63 -8
  593. package/node_modules/fastify/lib/request.js +14 -4
  594. package/node_modules/fastify/lib/route.js +20 -6
  595. package/node_modules/fastify/lib/schema-controller.js +1 -1
  596. package/node_modules/fastify/lib/schemas.js +37 -30
  597. package/node_modules/fastify/lib/symbols.js +3 -1
  598. package/node_modules/fastify/lib/validation.js +1 -13
  599. package/node_modules/fastify/lib/warnings.js +3 -3
  600. package/node_modules/fastify/package.json +13 -15
  601. package/node_modules/fastify/scripts/validate-ecosystem-links.js +1 -0
  602. package/node_modules/fastify/test/bundler/esbuild/package.json +1 -1
  603. package/node_modules/fastify/test/close-pipelining.test.js +1 -2
  604. package/node_modules/fastify/test/custom-http-server.test.js +38 -0
  605. package/node_modules/fastify/test/decorator-instance-properties.test.js +63 -0
  606. package/node_modules/fastify/test/diagnostics-channel/async-error-handler.test.js +74 -0
  607. package/node_modules/fastify/test/hooks.test.js +23 -0
  608. package/node_modules/fastify/test/http-methods/get.test.js +1 -1
  609. package/node_modules/fastify/test/http2/plain.test.js +135 -0
  610. package/node_modules/fastify/test/http2/secure-with-fallback.test.js +1 -1
  611. package/node_modules/fastify/test/https/https.test.js +1 -2
  612. package/node_modules/fastify/test/internals/errors.test.js +31 -1
  613. package/node_modules/fastify/test/internals/plugin.test.js +3 -1
  614. package/node_modules/fastify/test/internals/request.test.js +27 -3
  615. package/node_modules/fastify/test/internals/schema-controller-perf.test.js +33 -0
  616. package/node_modules/fastify/test/logger/logging.test.js +18 -1
  617. package/node_modules/fastify/test/logger/options.test.js +38 -1
  618. package/node_modules/fastify/test/reply-error.test.js +1 -1
  619. package/node_modules/fastify/test/reply-trailers.test.js +70 -0
  620. package/node_modules/fastify/test/request-media-type.test.js +105 -0
  621. package/node_modules/fastify/test/route-prefix.test.js +34 -0
  622. package/node_modules/fastify/test/router-options.test.js +222 -11
  623. package/node_modules/fastify/test/schema-serialization.test.js +108 -0
  624. package/node_modules/fastify/test/schema-validation.test.js +24 -0
  625. package/node_modules/fastify/test/scripts/validate-ecosystem-links.test.js +40 -57
  626. package/node_modules/fastify/test/throw.test.js +14 -0
  627. package/node_modules/fastify/test/trust-proxy.test.js +21 -0
  628. package/node_modules/fastify/test/types/content-type-parser.tst.ts +70 -0
  629. package/node_modules/fastify/test/types/decorate-request-reply.tst.ts +18 -0
  630. package/node_modules/fastify/test/types/dummy-plugin.mts +9 -0
  631. package/node_modules/fastify/test/types/errors.tst.ts +91 -0
  632. package/node_modules/fastify/test/types/fastify.tst.ts +351 -0
  633. package/node_modules/fastify/test/types/hooks.tst.ts +578 -0
  634. package/node_modules/fastify/test/types/instance.tst.ts +597 -0
  635. package/node_modules/fastify/test/types/logger.tst.ts +276 -0
  636. package/node_modules/fastify/test/types/plugin.tst.ts +96 -0
  637. package/node_modules/fastify/test/types/register.tst.ts +245 -0
  638. package/node_modules/fastify/test/types/reply.tst.ts +297 -0
  639. package/node_modules/fastify/test/types/request.tst.ts +199 -0
  640. package/node_modules/fastify/test/types/route.tst.ts +576 -0
  641. package/node_modules/fastify/test/types/schema.tst.ts +135 -0
  642. package/node_modules/fastify/test/types/serverFactory.tst.ts +37 -0
  643. package/node_modules/fastify/test/types/tsconfig.json +9 -0
  644. package/node_modules/fastify/test/types/type-provider.tst.ts +1219 -0
  645. package/node_modules/fastify/test/types/using.tst.ts +14 -0
  646. package/node_modules/fastify/types/errors.d.ts +3 -0
  647. package/node_modules/fastify/types/request.d.ts +23 -2
  648. package/node_modules/glob/README.md +39 -130
  649. package/node_modules/glob/dist/commonjs/glob.d.ts +8 -0
  650. package/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -1
  651. package/node_modules/glob/dist/commonjs/glob.js +2 -1
  652. package/node_modules/glob/dist/commonjs/glob.js.map +1 -1
  653. package/node_modules/glob/dist/commonjs/index.min.js +4 -0
  654. package/node_modules/glob/dist/commonjs/index.min.js.map +7 -0
  655. package/node_modules/glob/dist/commonjs/pattern.d.ts +3 -0
  656. package/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -1
  657. package/node_modules/glob/dist/commonjs/pattern.js +4 -0
  658. package/node_modules/glob/dist/commonjs/pattern.js.map +1 -1
  659. package/node_modules/glob/dist/esm/glob.d.ts +8 -0
  660. package/node_modules/glob/dist/esm/glob.d.ts.map +1 -1
  661. package/node_modules/glob/dist/esm/glob.js +2 -1
  662. package/node_modules/glob/dist/esm/glob.js.map +1 -1
  663. package/node_modules/glob/dist/esm/index.min.js +4 -0
  664. package/node_modules/glob/dist/esm/index.min.js.map +7 -0
  665. package/node_modules/glob/dist/esm/pattern.d.ts +3 -0
  666. package/node_modules/glob/dist/esm/pattern.d.ts.map +1 -1
  667. package/node_modules/glob/dist/esm/pattern.js +4 -0
  668. package/node_modules/glob/dist/esm/pattern.js.map +1 -1
  669. package/node_modules/glob/package.json +38 -37
  670. package/node_modules/jishushell-panel/README.md +4 -4
  671. package/node_modules/jishushell-panel/output/dist/server.js +17 -6
  672. package/node_modules/jishushell-panel/output/dist/server.js.map +1 -1
  673. package/node_modules/jishushell-panel/output/public/assets/ApiKeyField-Ce5d1xna.js +1 -0
  674. package/node_modules/jishushell-panel/output/public/assets/Dashboard-BXame3yg.js +1 -0
  675. package/node_modules/jishushell-panel/output/public/assets/HermesChatPanel-BHZtPCJd.js +1 -0
  676. package/node_modules/jishushell-panel/output/public/assets/HermesConfigForm-CB3GbNX9.js +4 -0
  677. package/node_modules/jishushell-panel/output/public/assets/InitPassword-Boab9F6g.js +1 -0
  678. package/node_modules/jishushell-panel/output/public/assets/InstanceDetail-DrIWCqo-.js +14 -0
  679. package/node_modules/jishushell-panel/output/public/assets/Login-CzpOkNau.js +1 -0
  680. package/node_modules/jishushell-panel/output/public/assets/NewInstance-CANXyCcL.js +1 -0
  681. package/node_modules/jishushell-panel/output/public/assets/ProviderRecommendations-BABo9VOC.js +1 -0
  682. package/node_modules/jishushell-panel/output/public/assets/Settings-CKp5XxFh.js +1 -0
  683. package/node_modules/jishushell-panel/output/public/assets/Setup-C7xVDPow.js +1 -0
  684. package/node_modules/jishushell-panel/output/public/assets/WeixinLoginPanel-B765Xz4C.js +1 -0
  685. package/node_modules/jishushell-panel/output/public/assets/api-C70Gt678.js +4 -0
  686. package/node_modules/jishushell-panel/output/public/assets/index-Bs6DSbiR.js +23 -0
  687. package/node_modules/jishushell-panel/output/public/assets/index-DnnqTf7s.css +1 -0
  688. package/node_modules/jishushell-panel/output/public/assets/registry-sWIZsIEF.js +2 -0
  689. package/node_modules/jishushell-panel/output/public/assets/rolldown-runtime-QTnfLwEv.js +1 -0
  690. package/node_modules/jishushell-panel/output/public/assets/setup-task-q21GnI0E.js +1 -0
  691. package/node_modules/jishushell-panel/output/public/assets/usePolling-D4IDOQd_.js +1 -0
  692. package/node_modules/jishushell-panel/output/public/assets/vendor-i18n-Df8aUdv8.js +1 -0
  693. package/node_modules/jishushell-panel/output/public/assets/vendor-react-0L0rjmYG.js +8 -0
  694. package/node_modules/jishushell-panel/output/public/index.html +6 -4
  695. package/node_modules/jishushell-panel/package.json +2 -2
  696. package/node_modules/semver/classes/range.js +17 -4
  697. package/node_modules/semver/package.json +2 -2
  698. package/package.json +12 -64
  699. package/scripts/check-app-path-boundaries.mjs +121 -0
  700. package/scripts/check-app-spec.mjs +123 -29
  701. package/scripts/check-architecture-boundaries.mjs +178 -0
  702. package/scripts/check-colima-launchd.mjs +10 -8
  703. package/scripts/check-integration-isolation.ts +541 -0
  704. package/scripts/check-new-file-tests.mjs +11 -3
  705. package/scripts/check-open-core-boundaries.mjs +60 -10
  706. package/scripts/check-test-layering.sh +1 -1
  707. package/scripts/fixtures/instances/hermes-sample/instance.json +3 -2
  708. package/scripts/fixtures/instances/legacy-openclaw-sample/instance.json +1 -1
  709. package/scripts/local-web-upgrade-test.README +4 -3
  710. package/scripts/local-web-upgrade-test.example.env +2 -2
  711. package/scripts/local-web-upgrade-test.sh +14 -1
  712. package/scripts/pack-gui-and-send-pi.sh +43 -0
  713. package/scripts/perf/instances.js +1 -1
  714. package/scripts/prune-open-core-dist.mjs +89 -2
  715. package/scripts/smoke/hermes-bootstrap.sh +5 -5
  716. package/templates/hermes-entrypoint.sh +19 -29
  717. package/apps/openwebui-container.yaml +0 -97
  718. package/apps/playwright-container.yaml +0 -126
  719. package/dependencies/jishushell-panel-0.6.5.tgz +0 -0
  720. package/dist/crypto-shim.d.ts +0 -1
  721. package/dist/crypto-shim.js +0 -2
  722. package/dist/crypto-shim.js.map +0 -1
  723. package/dist/routes/agent-apps.d.ts +0 -14
  724. package/dist/routes/agent-apps.js +0 -77
  725. package/dist/routes/agent-apps.js.map +0 -1
  726. package/dist/routes/internal.d.ts +0 -2
  727. package/dist/routes/internal.js +0 -55
  728. package/dist/routes/internal.js.map +0 -1
  729. package/dist/routes/openclaw-routes.d.ts +0 -22
  730. package/dist/routes/openclaw-routes.js +0 -1020
  731. package/dist/routes/openclaw-routes.js.map +0 -1
  732. package/dist/routes/runtime.d.ts +0 -15
  733. package/dist/routes/runtime.js +0 -76
  734. package/dist/routes/runtime.js.map +0 -1
  735. package/dist/services/agent-apps/catalog.d.ts +0 -33
  736. package/dist/services/agent-apps/catalog.js +0 -88
  737. package/dist/services/agent-apps/catalog.js.map +0 -1
  738. package/dist/services/agent-apps/index.d.ts +0 -36
  739. package/dist/services/agent-apps/index.js +0 -171
  740. package/dist/services/agent-apps/index.js.map +0 -1
  741. package/dist/services/agent-apps/installers/adapter-probes.d.ts +0 -49
  742. package/dist/services/agent-apps/installers/adapter-probes.js +0 -230
  743. package/dist/services/agent-apps/installers/adapter-probes.js.map +0 -1
  744. package/dist/services/agent-apps/installers/adapter.d.ts +0 -30
  745. package/dist/services/agent-apps/installers/adapter.js +0 -171
  746. package/dist/services/agent-apps/installers/adapter.js.map +0 -1
  747. package/dist/services/agent-apps/installers/registry-probe.js.map +0 -1
  748. package/dist/services/agent-apps/installers/shell-script.d.ts +0 -47
  749. package/dist/services/agent-apps/installers/shell-script.js +0 -488
  750. package/dist/services/agent-apps/installers/shell-script.js.map +0 -1
  751. package/dist/services/agent-apps/types.d.ts +0 -128
  752. package/dist/services/agent-apps/types.js +0 -17
  753. package/dist/services/agent-apps/types.js.map +0 -1
  754. package/dist/services/app/app-compiler.js +0 -185
  755. package/dist/services/app/app-compiler.js.map +0 -1
  756. package/dist/services/app/app-manager.d.ts +0 -184
  757. package/dist/services/app/app-manager.js +0 -2933
  758. package/dist/services/app/app-manager.js.map +0 -1
  759. package/dist/services/app/custom-manager.d.ts +0 -27
  760. package/dist/services/app/custom-manager.js +0 -382
  761. package/dist/services/app/custom-manager.js.map +0 -1
  762. package/dist/services/app/hermes-agent-manager.d.ts +0 -20
  763. package/dist/services/app/hermes-agent-manager.js +0 -299
  764. package/dist/services/app/hermes-agent-manager.js.map +0 -1
  765. package/dist/services/app/id-normalizer.d.ts +0 -27
  766. package/dist/services/app/id-normalizer.js +0 -77
  767. package/dist/services/app/id-normalizer.js.map +0 -1
  768. package/dist/services/app/ollama-manager.d.ts +0 -18
  769. package/dist/services/app/ollama-manager.js +0 -224
  770. package/dist/services/app/ollama-manager.js.map +0 -1
  771. package/dist/services/app/openclaw-manager.d.ts +0 -63
  772. package/dist/services/app/openclaw-manager.js +0 -1215
  773. package/dist/services/app/openclaw-manager.js.map +0 -1
  774. package/dist/services/app/paths.d.ts +0 -27
  775. package/dist/services/app/paths.js +0 -40
  776. package/dist/services/app/paths.js.map +0 -1
  777. package/dist/services/app/platform-transform.d.ts +0 -32
  778. package/dist/services/app/platform-transform.js +0 -65
  779. package/dist/services/app/platform-transform.js.map +0 -1
  780. package/dist/services/app/provide-resolver.d.ts +0 -29
  781. package/dist/services/app/provide-resolver.js +0 -135
  782. package/dist/services/app/provide-resolver.js.map +0 -1
  783. package/dist/services/app/registry.d.ts +0 -17
  784. package/dist/services/app/registry.js +0 -31
  785. package/dist/services/app/registry.js.map +0 -1
  786. package/dist/services/app/remote-spec.d.ts +0 -14
  787. package/dist/services/app/remote-spec.js +0 -58
  788. package/dist/services/app/remote-spec.js.map +0 -1
  789. package/dist/services/app/terminal-session-manager.js +0 -157
  790. package/dist/services/app/terminal-session-manager.js.map +0 -1
  791. package/dist/services/app/types.d.ts +0 -74
  792. package/dist/services/app/types.js +0 -16
  793. package/dist/services/app/types.js.map +0 -1
  794. package/dist/services/app-config-admin.d.ts +0 -17
  795. package/dist/services/app-config-admin.js +0 -177
  796. package/dist/services/app-config-admin.js.map +0 -1
  797. package/dist/services/app-create-from-installed.d.ts +0 -23
  798. package/dist/services/app-create-from-installed.js +0 -75
  799. package/dist/services/app-create-from-installed.js.map +0 -1
  800. package/dist/services/app-passwords.js +0 -173
  801. package/dist/services/app-passwords.js.map +0 -1
  802. package/dist/services/backup-admin.d.ts +0 -101
  803. package/dist/services/backup-admin.js +0 -259
  804. package/dist/services/backup-admin.js.map +0 -1
  805. package/dist/services/backup-manager.d.ts +0 -264
  806. package/dist/services/backup-manager.js +0 -2263
  807. package/dist/services/backup-manager.js.map +0 -1
  808. package/dist/services/backup-verify.js +0 -240
  809. package/dist/services/backup-verify.js.map +0 -1
  810. package/dist/services/capability-endpoint-validator.d.ts +0 -41
  811. package/dist/services/capability-endpoint-validator.js +0 -114
  812. package/dist/services/capability-endpoint-validator.js.map +0 -1
  813. package/dist/services/capability-health.d.ts +0 -16
  814. package/dist/services/capability-health.js +0 -121
  815. package/dist/services/capability-health.js.map +0 -1
  816. package/dist/services/capability-registry.d.ts +0 -29
  817. package/dist/services/capability-registry.js +0 -176
  818. package/dist/services/capability-registry.js.map +0 -1
  819. package/dist/services/capability-sync.d.ts +0 -4
  820. package/dist/services/capability-sync.js +0 -220
  821. package/dist/services/capability-sync.js.map +0 -1
  822. package/dist/services/connection-admin.d.ts +0 -74
  823. package/dist/services/connection-admin.js +0 -287
  824. package/dist/services/connection-admin.js.map +0 -1
  825. package/dist/services/connection-apply.d.ts +0 -91
  826. package/dist/services/connection-apply.js +0 -471
  827. package/dist/services/connection-apply.js.map +0 -1
  828. package/dist/services/connection-resolver.d.ts +0 -65
  829. package/dist/services/connection-resolver.js +0 -281
  830. package/dist/services/connection-resolver.js.map +0 -1
  831. package/dist/services/connection-transactor.d.ts +0 -39
  832. package/dist/services/connection-transactor.js +0 -354
  833. package/dist/services/connection-transactor.js.map +0 -1
  834. package/dist/services/core-manager.d.ts +0 -50
  835. package/dist/services/core-manager.js +0 -411
  836. package/dist/services/core-manager.js.map +0 -1
  837. package/dist/services/external-mounts.js +0 -187
  838. package/dist/services/external-mounts.js.map +0 -1
  839. package/dist/services/files-manager.d.ts +0 -252
  840. package/dist/services/files-manager.js +0 -1156
  841. package/dist/services/files-manager.js.map +0 -1
  842. package/dist/services/files-mounts.d.ts +0 -42
  843. package/dist/services/files-mounts.js +0 -207
  844. package/dist/services/files-mounts.js.map +0 -1
  845. package/dist/services/instance-admin.d.ts +0 -26
  846. package/dist/services/instance-admin.js +0 -218
  847. package/dist/services/instance-admin.js.map +0 -1
  848. package/dist/services/instance-manager.d.ts +0 -192
  849. package/dist/services/instance-manager.js +0 -1289
  850. package/dist/services/instance-manager.js.map +0 -1
  851. package/dist/services/macos-launchd.js +0 -312
  852. package/dist/services/macos-launchd.js.map +0 -1
  853. package/dist/services/nomad-manager.d.ts +0 -307
  854. package/dist/services/nomad-manager.js +0 -3958
  855. package/dist/services/nomad-manager.js.map +0 -1
  856. package/dist/services/organize/applier.js +0 -218
  857. package/dist/services/organize/applier.js.map +0 -1
  858. package/dist/services/organize/rules.js +0 -286
  859. package/dist/services/organize/rules.js.map +0 -1
  860. package/dist/services/organize/scanner.js +0 -366
  861. package/dist/services/organize/scanner.js.map +0 -1
  862. package/dist/services/organize/store.js +0 -82
  863. package/dist/services/organize/store.js.map +0 -1
  864. package/dist/services/plugin-installer.js +0 -128
  865. package/dist/services/plugin-installer.js.map +0 -1
  866. package/dist/services/process-manager.d.ts +0 -25
  867. package/dist/services/process-manager.js +0 -568
  868. package/dist/services/process-manager.js.map +0 -1
  869. package/dist/services/runtime/adapters/custom.d.ts +0 -20
  870. package/dist/services/runtime/adapters/custom.js +0 -188
  871. package/dist/services/runtime/adapters/custom.js.map +0 -1
  872. package/dist/services/runtime/adapters/hermes.d.ts +0 -204
  873. package/dist/services/runtime/adapters/hermes.js +0 -1684
  874. package/dist/services/runtime/adapters/hermes.js.map +0 -1
  875. package/dist/services/runtime/adapters/openclaw-mcporter.d.ts +0 -45
  876. package/dist/services/runtime/adapters/openclaw-mcporter.js +0 -108
  877. package/dist/services/runtime/adapters/openclaw-mcporter.js.map +0 -1
  878. package/dist/services/runtime/adapters/openclaw.d.ts +0 -426
  879. package/dist/services/runtime/adapters/openclaw.js +0 -3975
  880. package/dist/services/runtime/adapters/openclaw.js.map +0 -1
  881. package/dist/services/runtime/index.d.ts +0 -34
  882. package/dist/services/runtime/index.js +0 -51
  883. package/dist/services/runtime/index.js.map +0 -1
  884. package/dist/services/runtime/mcp-shims/anythingllm-shim.d.ts +0 -46
  885. package/dist/services/runtime/mcp-shims/anythingllm-shim.js +0 -281
  886. package/dist/services/runtime/mcp-shims/anythingllm-shim.js.map +0 -1
  887. package/dist/services/runtime/mcp-shims/drive-shim.js +0 -490
  888. package/dist/services/runtime/mcp-shims/drive-shim.js.map +0 -1
  889. package/dist/services/runtime/mcp-shims/jishukb-shim.d.ts +0 -48
  890. package/dist/services/runtime/mcp-shims/jishukb-shim.js +0 -723
  891. package/dist/services/runtime/mcp-shims/jishukb-shim.js.map +0 -1
  892. package/dist/services/runtime/mcp-shims/mcporter-lite.js +0 -276
  893. package/dist/services/runtime/mcp-shims/mcporter-lite.js.map +0 -1
  894. package/dist/services/runtime/migrations.d.ts +0 -23
  895. package/dist/services/runtime/migrations.js +0 -125
  896. package/dist/services/runtime/migrations.js.map +0 -1
  897. package/dist/services/runtime/registry.d.ts +0 -13
  898. package/dist/services/runtime/registry.js +0 -32
  899. package/dist/services/runtime/registry.js.map +0 -1
  900. package/dist/services/runtime-identity.d.ts +0 -13
  901. package/dist/services/runtime-identity.js +0 -166
  902. package/dist/services/runtime-identity.js.map +0 -1
  903. package/dist/services/runtime-repair.d.ts +0 -52
  904. package/dist/services/runtime-repair.js +0 -352
  905. package/dist/services/runtime-repair.js.map +0 -1
  906. package/dist/services/setup-manager.d.ts +0 -158
  907. package/dist/services/setup-manager.js +0 -2740
  908. package/dist/services/setup-manager.js.map +0 -1
  909. package/dist/services/suggestions.d.ts +0 -27
  910. package/dist/services/suggestions.js +0 -133
  911. package/dist/services/suggestions.js.map +0 -1
  912. package/dist/services/system-monitor.js +0 -79
  913. package/dist/services/system-monitor.js.map +0 -1
  914. package/dist/services/system-ollama-provider.d.ts +0 -14
  915. package/dist/services/system-ollama-provider.js +0 -125
  916. package/dist/services/system-ollama-provider.js.map +0 -1
  917. package/dist/services/system-reconciler.d.ts +0 -72
  918. package/dist/services/system-reconciler.js +0 -600
  919. package/dist/services/system-reconciler.js.map +0 -1
  920. package/dist/services/task-registry.d.ts +0 -44
  921. package/dist/services/task-registry.js +0 -76
  922. package/dist/services/task-registry.js.map +0 -1
  923. package/dist/services/types-shim.d.ts +0 -16
  924. package/dist/services/types-shim.js +0 -2
  925. package/dist/services/types-shim.js.map +0 -1
  926. package/dist/services/update-manager.d.ts +0 -47
  927. package/dist/services/update-manager.js +0 -351
  928. package/dist/services/update-manager.js.map +0 -1
  929. package/dist/services/webdav/server.d.ts +0 -24
  930. package/dist/services/webdav/server.js +0 -420
  931. package/dist/services/webdav/server.js.map +0 -1
  932. package/dist/services/webdav/xml-builder.js.map +0 -1
  933. package/dist/services/workspace-builder.d.ts +0 -29
  934. package/dist/services/workspace-builder.js +0 -188
  935. package/dist/services/workspace-builder.js.map +0 -1
  936. package/node_modules/@fastify/static/.github/stale.yml +0 -21
  937. package/node_modules/@isaacs/cliui/LICENSE.md +0 -63
  938. package/node_modules/@isaacs/cliui/README.md +0 -151
  939. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.d.ts +0 -4
  940. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.d.ts.map +0 -1
  941. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.js +0 -16
  942. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.js.map +0 -1
  943. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.d.ts +0 -34
  944. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.d.ts.map +0 -1
  945. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.js +0 -170
  946. package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.js.map +0 -1
  947. package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.d.ts +0 -6
  948. package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.d.ts.map +0 -1
  949. package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.js +0 -307
  950. package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.js.map +0 -1
  951. package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.d.ts +0 -2
  952. package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.d.ts.map +0 -1
  953. package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.js +0 -7
  954. package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.js.map +0 -1
  955. package/node_modules/@isaacs/cliui/dist/commonjs/index.d.ts +0 -41
  956. package/node_modules/@isaacs/cliui/dist/commonjs/index.d.ts.map +0 -1
  957. package/node_modules/@isaacs/cliui/dist/commonjs/index.js +0 -322
  958. package/node_modules/@isaacs/cliui/dist/commonjs/index.js.map +0 -1
  959. package/node_modules/@isaacs/cliui/dist/commonjs/index.min.js +0 -12
  960. package/node_modules/@isaacs/cliui/dist/commonjs/index.min.js.map +0 -7
  961. package/node_modules/@isaacs/cliui/dist/commonjs/package.json +0 -3
  962. package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.d.ts +0 -5
  963. package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.d.ts.map +0 -1
  964. package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.js +0 -49
  965. package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.js.map +0 -1
  966. package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.d.ts +0 -2
  967. package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.d.ts.map +0 -1
  968. package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.js +0 -8
  969. package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.js.map +0 -1
  970. package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.d.ts +0 -7
  971. package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.d.ts.map +0 -1
  972. package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.js +0 -176
  973. package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.js.map +0 -1
  974. package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.d.ts +0 -4
  975. package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.d.ts.map +0 -1
  976. package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.js +0 -12
  977. package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.js.map +0 -1
  978. package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.d.ts +0 -34
  979. package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.d.ts.map +0 -1
  980. package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.js +0 -167
  981. package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.js.map +0 -1
  982. package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.d.ts +0 -6
  983. package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.d.ts.map +0 -1
  984. package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.js +0 -299
  985. package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.js.map +0 -1
  986. package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.d.ts +0 -2
  987. package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.d.ts.map +0 -1
  988. package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.js +0 -3
  989. package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.js.map +0 -1
  990. package/node_modules/@isaacs/cliui/dist/esm/index.d.ts +0 -41
  991. package/node_modules/@isaacs/cliui/dist/esm/index.d.ts.map +0 -1
  992. package/node_modules/@isaacs/cliui/dist/esm/index.js +0 -317
  993. package/node_modules/@isaacs/cliui/dist/esm/index.js.map +0 -1
  994. package/node_modules/@isaacs/cliui/dist/esm/index.min.js +0 -12
  995. package/node_modules/@isaacs/cliui/dist/esm/index.min.js.map +0 -7
  996. package/node_modules/@isaacs/cliui/dist/esm/package.json +0 -3
  997. package/node_modules/@isaacs/cliui/dist/esm/string-width/index.d.ts +0 -5
  998. package/node_modules/@isaacs/cliui/dist/esm/string-width/index.d.ts.map +0 -1
  999. package/node_modules/@isaacs/cliui/dist/esm/string-width/index.js +0 -46
  1000. package/node_modules/@isaacs/cliui/dist/esm/string-width/index.js.map +0 -1
  1001. package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.d.ts +0 -2
  1002. package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.d.ts.map +0 -1
  1003. package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.js +0 -4
  1004. package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.js.map +0 -1
  1005. package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.d.ts +0 -7
  1006. package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.d.ts.map +0 -1
  1007. package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.js +0 -172
  1008. package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.js.map +0 -1
  1009. package/node_modules/@isaacs/cliui/package.json +0 -163
  1010. package/node_modules/content-disposition/HISTORY.md +0 -60
  1011. package/node_modules/cross-spawn/LICENSE +0 -21
  1012. package/node_modules/cross-spawn/README.md +0 -89
  1013. package/node_modules/cross-spawn/index.js +0 -39
  1014. package/node_modules/cross-spawn/lib/enoent.js +0 -59
  1015. package/node_modules/cross-spawn/lib/parse.js +0 -91
  1016. package/node_modules/cross-spawn/lib/util/escape.js +0 -47
  1017. package/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  1018. package/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  1019. package/node_modules/cross-spawn/package.json +0 -73
  1020. package/node_modules/fastify/test/types/content-type-parser.test-d.ts +0 -72
  1021. package/node_modules/fastify/test/types/decorate-request-reply.test-d.ts +0 -18
  1022. package/node_modules/fastify/test/types/dummy-plugin.ts +0 -9
  1023. package/node_modules/fastify/test/types/errors.test-d.ts +0 -90
  1024. package/node_modules/fastify/test/types/fastify.test-d.ts +0 -352
  1025. package/node_modules/fastify/test/types/hooks.test-d.ts +0 -550
  1026. package/node_modules/fastify/test/types/import.ts +0 -2
  1027. package/node_modules/fastify/test/types/instance.test-d.ts +0 -588
  1028. package/node_modules/fastify/test/types/logger.test-d.ts +0 -277
  1029. package/node_modules/fastify/test/types/plugin.test-d.ts +0 -97
  1030. package/node_modules/fastify/test/types/register.test-d.ts +0 -237
  1031. package/node_modules/fastify/test/types/reply.test-d.ts +0 -254
  1032. package/node_modules/fastify/test/types/request.test-d.ts +0 -188
  1033. package/node_modules/fastify/test/types/route.test-d.ts +0 -553
  1034. package/node_modules/fastify/test/types/schema.test-d.ts +0 -135
  1035. package/node_modules/fastify/test/types/serverFactory.test-d.ts +0 -37
  1036. package/node_modules/fastify/test/types/type-provider.test-d.ts +0 -1213
  1037. package/node_modules/fastify/test/types/using.test-d.ts +0 -17
  1038. package/node_modules/foreground-child/LICENSE +0 -15
  1039. package/node_modules/foreground-child/README.md +0 -128
  1040. package/node_modules/foreground-child/dist/commonjs/all-signals.d.ts +0 -2
  1041. package/node_modules/foreground-child/dist/commonjs/all-signals.d.ts.map +0 -1
  1042. package/node_modules/foreground-child/dist/commonjs/all-signals.js +0 -58
  1043. package/node_modules/foreground-child/dist/commonjs/all-signals.js.map +0 -1
  1044. package/node_modules/foreground-child/dist/commonjs/index.d.ts +0 -58
  1045. package/node_modules/foreground-child/dist/commonjs/index.d.ts.map +0 -1
  1046. package/node_modules/foreground-child/dist/commonjs/index.js +0 -123
  1047. package/node_modules/foreground-child/dist/commonjs/index.js.map +0 -1
  1048. package/node_modules/foreground-child/dist/commonjs/package.json +0 -3
  1049. package/node_modules/foreground-child/dist/commonjs/proxy-signals.d.ts +0 -6
  1050. package/node_modules/foreground-child/dist/commonjs/proxy-signals.d.ts.map +0 -1
  1051. package/node_modules/foreground-child/dist/commonjs/proxy-signals.js +0 -38
  1052. package/node_modules/foreground-child/dist/commonjs/proxy-signals.js.map +0 -1
  1053. package/node_modules/foreground-child/dist/commonjs/watchdog.d.ts +0 -10
  1054. package/node_modules/foreground-child/dist/commonjs/watchdog.d.ts.map +0 -1
  1055. package/node_modules/foreground-child/dist/commonjs/watchdog.js +0 -50
  1056. package/node_modules/foreground-child/dist/commonjs/watchdog.js.map +0 -1
  1057. package/node_modules/foreground-child/dist/esm/all-signals.d.ts +0 -2
  1058. package/node_modules/foreground-child/dist/esm/all-signals.d.ts.map +0 -1
  1059. package/node_modules/foreground-child/dist/esm/all-signals.js +0 -52
  1060. package/node_modules/foreground-child/dist/esm/all-signals.js.map +0 -1
  1061. package/node_modules/foreground-child/dist/esm/index.d.ts +0 -58
  1062. package/node_modules/foreground-child/dist/esm/index.d.ts.map +0 -1
  1063. package/node_modules/foreground-child/dist/esm/index.js +0 -115
  1064. package/node_modules/foreground-child/dist/esm/index.js.map +0 -1
  1065. package/node_modules/foreground-child/dist/esm/package.json +0 -3
  1066. package/node_modules/foreground-child/dist/esm/proxy-signals.d.ts +0 -6
  1067. package/node_modules/foreground-child/dist/esm/proxy-signals.d.ts.map +0 -1
  1068. package/node_modules/foreground-child/dist/esm/proxy-signals.js +0 -34
  1069. package/node_modules/foreground-child/dist/esm/proxy-signals.js.map +0 -1
  1070. package/node_modules/foreground-child/dist/esm/watchdog.d.ts +0 -10
  1071. package/node_modules/foreground-child/dist/esm/watchdog.d.ts.map +0 -1
  1072. package/node_modules/foreground-child/dist/esm/watchdog.js +0 -46
  1073. package/node_modules/foreground-child/dist/esm/watchdog.js.map +0 -1
  1074. package/node_modules/foreground-child/package.json +0 -106
  1075. package/node_modules/glob/dist/esm/bin.d.mts +0 -3
  1076. package/node_modules/glob/dist/esm/bin.d.mts.map +0 -1
  1077. package/node_modules/glob/dist/esm/bin.mjs +0 -346
  1078. package/node_modules/glob/dist/esm/bin.mjs.map +0 -1
  1079. package/node_modules/isexe/.npmignore +0 -2
  1080. package/node_modules/isexe/LICENSE +0 -15
  1081. package/node_modules/isexe/README.md +0 -51
  1082. package/node_modules/isexe/index.js +0 -57
  1083. package/node_modules/isexe/mode.js +0 -41
  1084. package/node_modules/isexe/package.json +0 -31
  1085. package/node_modules/isexe/test/basic.js +0 -221
  1086. package/node_modules/isexe/windows.js +0 -42
  1087. package/node_modules/jackspeak/LICENSE.md +0 -55
  1088. package/node_modules/jackspeak/README.md +0 -394
  1089. package/node_modules/jackspeak/dist/commonjs/index.d.ts +0 -323
  1090. package/node_modules/jackspeak/dist/commonjs/index.d.ts.map +0 -1
  1091. package/node_modules/jackspeak/dist/commonjs/index.js +0 -944
  1092. package/node_modules/jackspeak/dist/commonjs/index.js.map +0 -1
  1093. package/node_modules/jackspeak/dist/commonjs/index.min.js +0 -33
  1094. package/node_modules/jackspeak/dist/commonjs/index.min.js.map +0 -7
  1095. package/node_modules/jackspeak/dist/commonjs/package.json +0 -3
  1096. package/node_modules/jackspeak/dist/esm/index.d.ts +0 -323
  1097. package/node_modules/jackspeak/dist/esm/index.d.ts.map +0 -1
  1098. package/node_modules/jackspeak/dist/esm/index.js +0 -936
  1099. package/node_modules/jackspeak/dist/esm/index.js.map +0 -1
  1100. package/node_modules/jackspeak/dist/esm/index.min.js +0 -33
  1101. package/node_modules/jackspeak/dist/esm/index.min.js.map +0 -7
  1102. package/node_modules/jackspeak/dist/esm/package.json +0 -3
  1103. package/node_modules/jackspeak/package.json +0 -115
  1104. package/node_modules/jishushell-panel/output/public/assets/ApiKeyField-D1i7zWXR.js +0 -1
  1105. package/node_modules/jishushell-panel/output/public/assets/Dashboard-sWIvL43F.js +0 -1
  1106. package/node_modules/jishushell-panel/output/public/assets/HermesChatPanel-DQ8RyvQY.js +0 -1
  1107. package/node_modules/jishushell-panel/output/public/assets/HermesConfigForm-tIbPP1sB.js +0 -4
  1108. package/node_modules/jishushell-panel/output/public/assets/InitPassword-C3Slq3Dd.js +0 -1
  1109. package/node_modules/jishushell-panel/output/public/assets/InstanceDetail-7JqY9tq4.js +0 -92
  1110. package/node_modules/jishushell-panel/output/public/assets/Login-BXLDJlQN.js +0 -1
  1111. package/node_modules/jishushell-panel/output/public/assets/NewInstance-dLc5Xrpx.js +0 -1
  1112. package/node_modules/jishushell-panel/output/public/assets/ProviderRecommendations-DIAXxesl.js +0 -1
  1113. package/node_modules/jishushell-panel/output/public/assets/Settings-Bd5utbBh.js +0 -1
  1114. package/node_modules/jishushell-panel/output/public/assets/Setup-Yn9_20FL.js +0 -1
  1115. package/node_modules/jishushell-panel/output/public/assets/WeixinLoginPanel-C21doQTJ.js +0 -9
  1116. package/node_modules/jishushell-panel/output/public/assets/index-CCkaIEjn.js +0 -20
  1117. package/node_modules/jishushell-panel/output/public/assets/index-D7qxy-Vh.css +0 -1
  1118. package/node_modules/jishushell-panel/output/public/assets/registry-B2ZQZXWL.js +0 -2
  1119. package/node_modules/jishushell-panel/output/public/assets/usePolling-BFZm4do_.js +0 -1
  1120. package/node_modules/jishushell-panel/output/public/assets/vendor-i18n-DqPtOicc.js +0 -9
  1121. package/node_modules/jishushell-panel/output/public/assets/vendor-react-DW5juQin.js +0 -59
  1122. package/node_modules/package-json-from-dist/LICENSE.md +0 -63
  1123. package/node_modules/package-json-from-dist/README.md +0 -110
  1124. package/node_modules/package-json-from-dist/dist/commonjs/index.d.ts +0 -89
  1125. package/node_modules/package-json-from-dist/dist/commonjs/index.d.ts.map +0 -1
  1126. package/node_modules/package-json-from-dist/dist/commonjs/index.js +0 -134
  1127. package/node_modules/package-json-from-dist/dist/commonjs/index.js.map +0 -1
  1128. package/node_modules/package-json-from-dist/dist/commonjs/package.json +0 -3
  1129. package/node_modules/package-json-from-dist/dist/esm/index.d.ts +0 -89
  1130. package/node_modules/package-json-from-dist/dist/esm/index.d.ts.map +0 -1
  1131. package/node_modules/package-json-from-dist/dist/esm/index.js +0 -129
  1132. package/node_modules/package-json-from-dist/dist/esm/index.js.map +0 -1
  1133. package/node_modules/package-json-from-dist/dist/esm/package.json +0 -3
  1134. package/node_modules/package-json-from-dist/package.json +0 -68
  1135. package/node_modules/path-key/index.d.ts +0 -40
  1136. package/node_modules/path-key/index.js +0 -16
  1137. package/node_modules/path-key/license +0 -9
  1138. package/node_modules/path-key/package.json +0 -39
  1139. package/node_modules/path-key/readme.md +0 -61
  1140. package/node_modules/safe-buffer/LICENSE +0 -21
  1141. package/node_modules/safe-buffer/README.md +0 -584
  1142. package/node_modules/safe-buffer/index.d.ts +0 -187
  1143. package/node_modules/safe-buffer/index.js +0 -65
  1144. package/node_modules/safe-buffer/package.json +0 -51
  1145. package/node_modules/shebang-command/index.js +0 -19
  1146. package/node_modules/shebang-command/license +0 -9
  1147. package/node_modules/shebang-command/package.json +0 -34
  1148. package/node_modules/shebang-command/readme.md +0 -34
  1149. package/node_modules/shebang-regex/index.d.ts +0 -22
  1150. package/node_modules/shebang-regex/index.js +0 -2
  1151. package/node_modules/shebang-regex/license +0 -9
  1152. package/node_modules/shebang-regex/package.json +0 -35
  1153. package/node_modules/shebang-regex/readme.md +0 -33
  1154. package/node_modules/signal-exit/LICENSE.txt +0 -16
  1155. package/node_modules/signal-exit/README.md +0 -74
  1156. package/node_modules/signal-exit/dist/cjs/browser.d.ts +0 -12
  1157. package/node_modules/signal-exit/dist/cjs/browser.d.ts.map +0 -1
  1158. package/node_modules/signal-exit/dist/cjs/browser.js +0 -10
  1159. package/node_modules/signal-exit/dist/cjs/browser.js.map +0 -1
  1160. package/node_modules/signal-exit/dist/cjs/index.d.ts +0 -48
  1161. package/node_modules/signal-exit/dist/cjs/index.d.ts.map +0 -1
  1162. package/node_modules/signal-exit/dist/cjs/index.js +0 -279
  1163. package/node_modules/signal-exit/dist/cjs/index.js.map +0 -1
  1164. package/node_modules/signal-exit/dist/cjs/package.json +0 -3
  1165. package/node_modules/signal-exit/dist/cjs/signals.d.ts +0 -29
  1166. package/node_modules/signal-exit/dist/cjs/signals.d.ts.map +0 -1
  1167. package/node_modules/signal-exit/dist/cjs/signals.js +0 -42
  1168. package/node_modules/signal-exit/dist/cjs/signals.js.map +0 -1
  1169. package/node_modules/signal-exit/dist/mjs/browser.d.ts +0 -12
  1170. package/node_modules/signal-exit/dist/mjs/browser.d.ts.map +0 -1
  1171. package/node_modules/signal-exit/dist/mjs/browser.js +0 -4
  1172. package/node_modules/signal-exit/dist/mjs/browser.js.map +0 -1
  1173. package/node_modules/signal-exit/dist/mjs/index.d.ts +0 -48
  1174. package/node_modules/signal-exit/dist/mjs/index.d.ts.map +0 -1
  1175. package/node_modules/signal-exit/dist/mjs/index.js +0 -275
  1176. package/node_modules/signal-exit/dist/mjs/index.js.map +0 -1
  1177. package/node_modules/signal-exit/dist/mjs/package.json +0 -3
  1178. package/node_modules/signal-exit/dist/mjs/signals.d.ts +0 -29
  1179. package/node_modules/signal-exit/dist/mjs/signals.d.ts.map +0 -1
  1180. package/node_modules/signal-exit/dist/mjs/signals.js +0 -39
  1181. package/node_modules/signal-exit/dist/mjs/signals.js.map +0 -1
  1182. package/node_modules/signal-exit/package.json +0 -106
  1183. package/node_modules/which/CHANGELOG.md +0 -166
  1184. package/node_modules/which/LICENSE +0 -15
  1185. package/node_modules/which/README.md +0 -54
  1186. package/node_modules/which/bin/node-which +0 -52
  1187. package/node_modules/which/package.json +0 -43
  1188. package/node_modules/which/which.js +0 -125
  1189. package/scripts/check-adapter-isolation.ts +0 -293
  1190. /package/dist/services/{app → app-common}/app-compiler.d.ts +0 -0
  1191. /package/dist/services/{app → app-common}/terminal-session-manager.d.ts +0 -0
  1192. /package/dist/services/{backup-verify.d.ts → backup/backup-verify.d.ts} +0 -0
  1193. /package/dist/services/{external-mounts.d.ts → files/external-mounts.d.ts} +0 -0
  1194. /package/dist/services/{organize → files/organize}/applier.d.ts +0 -0
  1195. /package/dist/services/{organize → files/organize}/rules.d.ts +0 -0
  1196. /package/dist/services/{organize → files/organize}/scanner.d.ts +0 -0
  1197. /package/dist/services/{organize → files/organize}/store.d.ts +0 -0
  1198. /package/dist/services/{webdav → files/webdav}/xml-builder.d.ts +0 -0
  1199. /package/dist/services/{webdav → files/webdav}/xml-builder.js +0 -0
  1200. /package/dist/services/{app-passwords.d.ts → instances/passwords.d.ts} +0 -0
  1201. /package/dist/services/{agent-apps → integrations/installable}/installers/registry-probe.d.ts +0 -0
  1202. /package/dist/services/{agent-apps → integrations/installable}/installers/registry-probe.js +0 -0
  1203. /package/dist/services/{runtime/mcp-shims → integrations/openclaw}/drive-shim.d.ts +0 -0
  1204. /package/dist/services/{runtime/mcp-shims → integrations/openclaw}/mcporter-lite.d.ts +0 -0
  1205. /package/dist/services/{plugin-installer.d.ts → setup/plugin-installer.d.ts} +0 -0
  1206. /package/dist/services/{macos-launchd.d.ts → system/macos-launchd.d.ts} +0 -0
  1207. /package/dist/services/{system-monitor.d.ts → system/system-monitor.d.ts} +0 -0
@@ -11,6 +11,7 @@ export type UNCPatternList = [
11
11
  export type DrivePatternList = [p0: string, ...rest: MMPattern[]];
12
12
  export type AbsolutePatternList = [p0: '', ...rest: MMPattern[]];
13
13
  export type GlobList = [p: string, ...rest: string[]];
14
+ declare const customInspect: unique symbol;
14
15
  /**
15
16
  * An immutable-ish view on an array of glob parts and their parsed
16
17
  * results
@@ -19,6 +20,7 @@ export declare class Pattern {
19
20
  #private;
20
21
  readonly length: number;
21
22
  constructor(patternList: MMPattern[], globList: string[], index: number, platform: NodeJS.Platform);
23
+ [customInspect](): string;
22
24
  /**
23
25
  * The first entry in the parsed list of patterns
24
26
  */
@@ -73,4 +75,5 @@ export declare class Pattern {
73
75
  */
74
76
  markFollowGlobstar(): boolean;
75
77
  }
78
+ export {};
76
79
  //# sourceMappingURL=pattern.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../src/pattern.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,QAAQ,CAAA;AAGzD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AAC9D,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,GAAG,IAAI,EAAE,SAAS,EAAE;CACrB,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AACjE,MAAM,MAAM,mBAAmB,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AAChE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AAMrD;;;GAGG;AACH,qBAAa,OAAO;;IAIlB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;gBAUrB,WAAW,EAAE,SAAS,EAAE,EACxB,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;IA6D3B;;OAEG;IACH,OAAO,IAAI,SAAS;IAIpB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAGnB;;OAEG;IACH,UAAU,IAAI,OAAO;IAGrB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,UAAU,IAAI,MAAM;IAUpB;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,OAAO,GAAG,IAAI;IAetB;;OAEG;IACH,KAAK,IAAI,OAAO;IAoBhB;;OAEG;IACH,OAAO,IAAI,OAAO;IAelB;;OAEG;IACH,UAAU,IAAI,OAAO;IAUrB;;OAEG;IACH,IAAI,IAAI,MAAM;IASd;;;OAGG;IACH,mBAAmB,IAAI,OAAO;IAQ9B;;OAEG;IACH,kBAAkB,IAAI,OAAO;CAM9B"}
1
+ {"version":3,"file":"pattern.d.ts","sourceRoot":"","sources":["../../src/pattern.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,QAAQ,CAAA;AAGzD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AAC9D,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,GAAG,IAAI,EAAE,SAAS,EAAE;CACrB,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AACjE,MAAM,MAAM,mBAAmB,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;AAChE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AAMrD,QAAA,MAAM,aAAa,eAA2C,CAAA;AAE9D;;;GAGG;AACH,qBAAa,OAAO;;IAIlB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;gBAUrB,WAAW,EAAE,SAAS,EAAE,EACxB,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;IA6D3B,CAAC,aAAa,CAAC;IAIf;;OAEG;IACH,OAAO,IAAI,SAAS;IAIpB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAGnB;;OAEG;IACH,UAAU,IAAI,OAAO;IAGrB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,UAAU,IAAI,MAAM;IAUpB;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,OAAO,GAAG,IAAI;IAetB;;OAEG;IACH,KAAK,IAAI,OAAO;IAoBhB;;OAEG;IACH,OAAO,IAAI,OAAO;IAelB;;OAEG;IACH,UAAU,IAAI,OAAO;IAUrB;;OAEG;IACH,IAAI,IAAI,MAAM;IASd;;;OAGG;IACH,mBAAmB,IAAI,OAAO;IAQ9B;;OAEG;IACH,kBAAkB,IAAI,OAAO;CAM9B"}
@@ -2,6 +2,7 @@
2
2
  import { GLOBSTAR } from 'minimatch';
3
3
  const isPatternList = (pl) => pl.length >= 1;
4
4
  const isGlobList = (gl) => gl.length >= 1;
5
+ const customInspect = Symbol.for('nodejs.util.inspect.custom');
5
6
  /**
6
7
  * An immutable-ish view on an array of glob parts and their parsed
7
8
  * results
@@ -77,6 +78,9 @@ export class Pattern {
77
78
  }
78
79
  }
79
80
  }
81
+ [customInspect]() {
82
+ return 'Pattern <' + this.#globList.slice(this.#index).join('/') + '>';
83
+ }
80
84
  /**
81
85
  * The first entry in the parsed list of patterns
82
86
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../src/pattern.ts"],"names":[],"mappings":"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","sourcesContent":["// this is just a very light wrapper around 2 arrays with an offset index\n\nimport { GLOBSTAR } from 'minimatch'\nexport type MMPattern = string | RegExp | typeof GLOBSTAR\n\n// an array of length >= 1\nexport type PatternList = [p: MMPattern, ...rest: MMPattern[]]\nexport type UNCPatternList = [\n p0: '',\n p1: '',\n p2: string,\n p3: string,\n ...rest: MMPattern[],\n]\nexport type DrivePatternList = [p0: string, ...rest: MMPattern[]]\nexport type AbsolutePatternList = [p0: '', ...rest: MMPattern[]]\nexport type GlobList = [p: string, ...rest: string[]]\n\nconst isPatternList = (pl: MMPattern[]): pl is PatternList =>\n pl.length >= 1\nconst isGlobList = (gl: string[]): gl is GlobList => gl.length >= 1\n\n/**\n * An immutable-ish view on an array of glob parts and their parsed\n * results\n */\nexport class Pattern {\n readonly #patternList: PatternList\n readonly #globList: GlobList\n readonly #index: number\n readonly length: number\n readonly #platform: NodeJS.Platform\n #rest?: Pattern | null\n #globString?: string\n #isDrive?: boolean\n #isUNC?: boolean\n #isAbsolute?: boolean\n #followGlobstar: boolean = true\n\n constructor(\n patternList: MMPattern[],\n globList: string[],\n index: number,\n platform: NodeJS.Platform,\n ) {\n if (!isPatternList(patternList)) {\n throw new TypeError('empty pattern list')\n }\n if (!isGlobList(globList)) {\n throw new TypeError('empty glob list')\n }\n if (globList.length !== patternList.length) {\n throw new TypeError('mismatched pattern list and glob list lengths')\n }\n this.length = patternList.length\n if (index < 0 || index >= this.length) {\n throw new TypeError('index out of range')\n }\n this.#patternList = patternList\n this.#globList = globList\n this.#index = index\n this.#platform = platform\n\n // normalize root entries of absolute patterns on initial creation.\n if (this.#index === 0) {\n // c: => ['c:/']\n // C:/ => ['C:/']\n // C:/x => ['C:/', 'x']\n // //host/share => ['//host/share/']\n // //host/share/ => ['//host/share/']\n // //host/share/x => ['//host/share/', 'x']\n // /etc => ['/', 'etc']\n // / => ['/']\n if (this.isUNC()) {\n // '' / '' / 'host' / 'share'\n const [p0, p1, p2, p3, ...prest] = this.#patternList\n const [g0, g1, g2, g3, ...grest] = this.#globList\n if (prest[0] === '') {\n // ends in /\n prest.shift()\n grest.shift()\n }\n const p = [p0, p1, p2, p3, ''].join('/')\n const g = [g0, g1, g2, g3, ''].join('/')\n this.#patternList = [p, ...prest]\n this.#globList = [g, ...grest]\n this.length = this.#patternList.length\n } else if (this.isDrive() || this.isAbsolute()) {\n const [p1, ...prest] = this.#patternList\n const [g1, ...grest] = this.#globList\n if (prest[0] === '') {\n // ends in /\n prest.shift()\n grest.shift()\n }\n const p = (p1 as string) + '/'\n const g = g1 + '/'\n this.#patternList = [p, ...prest]\n this.#globList = [g, ...grest]\n this.length = this.#patternList.length\n }\n }\n }\n\n /**\n * The first entry in the parsed list of patterns\n */\n pattern(): MMPattern {\n return this.#patternList[this.#index] as MMPattern\n }\n\n /**\n * true of if pattern() returns a string\n */\n isString(): boolean {\n return typeof this.#patternList[this.#index] === 'string'\n }\n /**\n * true of if pattern() returns GLOBSTAR\n */\n isGlobstar(): boolean {\n return this.#patternList[this.#index] === GLOBSTAR\n }\n /**\n * true if pattern() returns a regexp\n */\n isRegExp(): boolean {\n return this.#patternList[this.#index] instanceof RegExp\n }\n\n /**\n * The /-joined set of glob parts that make up this pattern\n */\n globString(): string {\n return (this.#globString =\n this.#globString ||\n (this.#index === 0 ?\n this.isAbsolute() ?\n this.#globList[0] + this.#globList.slice(1).join('/')\n : this.#globList.join('/')\n : this.#globList.slice(this.#index).join('/')))\n }\n\n /**\n * true if there are more pattern parts after this one\n */\n hasMore(): boolean {\n return this.length > this.#index + 1\n }\n\n /**\n * The rest of the pattern after this part, or null if this is the end\n */\n rest(): Pattern | null {\n if (this.#rest !== undefined) return this.#rest\n if (!this.hasMore()) return (this.#rest = null)\n this.#rest = new Pattern(\n this.#patternList,\n this.#globList,\n this.#index + 1,\n this.#platform,\n )\n this.#rest.#isAbsolute = this.#isAbsolute\n this.#rest.#isUNC = this.#isUNC\n this.#rest.#isDrive = this.#isDrive\n return this.#rest\n }\n\n /**\n * true if the pattern represents a //unc/path/ on windows\n */\n isUNC(): boolean {\n const pl = this.#patternList\n return this.#isUNC !== undefined ?\n this.#isUNC\n : (this.#isUNC =\n this.#platform === 'win32' &&\n this.#index === 0 &&\n pl[0] === '' &&\n pl[1] === '' &&\n typeof pl[2] === 'string' &&\n !!pl[2] &&\n typeof pl[3] === 'string' &&\n !!pl[3])\n }\n\n // pattern like C:/...\n // split = ['C:', ...]\n // XXX: would be nice to handle patterns like `c:*` to test the cwd\n // in c: for *, but I don't know of a way to even figure out what that\n // cwd is without actually chdir'ing into it?\n /**\n * True if the pattern starts with a drive letter on Windows\n */\n isDrive(): boolean {\n const pl = this.#patternList\n return this.#isDrive !== undefined ?\n this.#isDrive\n : (this.#isDrive =\n this.#platform === 'win32' &&\n this.#index === 0 &&\n this.length > 1 &&\n typeof pl[0] === 'string' &&\n /^[a-z]:$/i.test(pl[0]))\n }\n\n // pattern = '/' or '/...' or '/x/...'\n // split = ['', ''] or ['', ...] or ['', 'x', ...]\n // Drive and UNC both considered absolute on windows\n /**\n * True if the pattern is rooted on an absolute path\n */\n isAbsolute(): boolean {\n const pl = this.#patternList\n return this.#isAbsolute !== undefined ?\n this.#isAbsolute\n : (this.#isAbsolute =\n (pl[0] === '' && pl.length > 1) ||\n this.isDrive() ||\n this.isUNC())\n }\n\n /**\n * consume the root of the pattern, and return it\n */\n root(): string {\n const p = this.#patternList[0]\n return (\n typeof p === 'string' && this.isAbsolute() && this.#index === 0\n ) ?\n p\n : ''\n }\n\n /**\n * Check to see if the current globstar pattern is allowed to follow\n * a symbolic link.\n */\n checkFollowGlobstar(): boolean {\n return !(\n this.#index === 0 ||\n !this.isGlobstar() ||\n !this.#followGlobstar\n )\n }\n\n /**\n * Mark that the current globstar pattern is following a symbolic link\n */\n markFollowGlobstar(): boolean {\n if (this.#index === 0 || !this.isGlobstar() || !this.#followGlobstar)\n return false\n this.#followGlobstar = false\n return true\n }\n}\n"]}
1
+ {"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../src/pattern.ts"],"names":[],"mappings":"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","sourcesContent":["// this is just a very light wrapper around 2 arrays with an offset index\n\nimport { GLOBSTAR } from 'minimatch'\nexport type MMPattern = string | RegExp | typeof GLOBSTAR\n\n// an array of length >= 1\nexport type PatternList = [p: MMPattern, ...rest: MMPattern[]]\nexport type UNCPatternList = [\n p0: '',\n p1: '',\n p2: string,\n p3: string,\n ...rest: MMPattern[],\n]\nexport type DrivePatternList = [p0: string, ...rest: MMPattern[]]\nexport type AbsolutePatternList = [p0: '', ...rest: MMPattern[]]\nexport type GlobList = [p: string, ...rest: string[]]\n\nconst isPatternList = (pl: MMPattern[]): pl is PatternList =>\n pl.length >= 1\nconst isGlobList = (gl: string[]): gl is GlobList => gl.length >= 1\n\nconst customInspect = Symbol.for('nodejs.util.inspect.custom')\n\n/**\n * An immutable-ish view on an array of glob parts and their parsed\n * results\n */\nexport class Pattern {\n readonly #patternList: PatternList\n readonly #globList: GlobList\n readonly #index: number\n readonly length: number\n readonly #platform: NodeJS.Platform\n #rest?: Pattern | null\n #globString?: string\n #isDrive?: boolean\n #isUNC?: boolean\n #isAbsolute?: boolean\n #followGlobstar: boolean = true\n\n constructor(\n patternList: MMPattern[],\n globList: string[],\n index: number,\n platform: NodeJS.Platform,\n ) {\n if (!isPatternList(patternList)) {\n throw new TypeError('empty pattern list')\n }\n if (!isGlobList(globList)) {\n throw new TypeError('empty glob list')\n }\n if (globList.length !== patternList.length) {\n throw new TypeError('mismatched pattern list and glob list lengths')\n }\n this.length = patternList.length\n if (index < 0 || index >= this.length) {\n throw new TypeError('index out of range')\n }\n this.#patternList = patternList\n this.#globList = globList\n this.#index = index\n this.#platform = platform\n\n // normalize root entries of absolute patterns on initial creation.\n if (this.#index === 0) {\n // c: => ['c:/']\n // C:/ => ['C:/']\n // C:/x => ['C:/', 'x']\n // //host/share => ['//host/share/']\n // //host/share/ => ['//host/share/']\n // //host/share/x => ['//host/share/', 'x']\n // /etc => ['/', 'etc']\n // / => ['/']\n if (this.isUNC()) {\n // '' / '' / 'host' / 'share'\n const [p0, p1, p2, p3, ...prest] = this.#patternList\n const [g0, g1, g2, g3, ...grest] = this.#globList\n if (prest[0] === '') {\n // ends in /\n prest.shift()\n grest.shift()\n }\n const p = [p0, p1, p2, p3, ''].join('/')\n const g = [g0, g1, g2, g3, ''].join('/')\n this.#patternList = [p, ...prest]\n this.#globList = [g, ...grest]\n this.length = this.#patternList.length\n } else if (this.isDrive() || this.isAbsolute()) {\n const [p1, ...prest] = this.#patternList\n const [g1, ...grest] = this.#globList\n if (prest[0] === '') {\n // ends in /\n prest.shift()\n grest.shift()\n }\n const p = (p1 as string) + '/'\n const g = g1 + '/'\n this.#patternList = [p, ...prest]\n this.#globList = [g, ...grest]\n this.length = this.#patternList.length\n }\n }\n }\n\n [customInspect]() {\n return 'Pattern <' + this.#globList.slice(this.#index).join('/') + '>'\n }\n\n /**\n * The first entry in the parsed list of patterns\n */\n pattern(): MMPattern {\n return this.#patternList[this.#index] as MMPattern\n }\n\n /**\n * true of if pattern() returns a string\n */\n isString(): boolean {\n return typeof this.#patternList[this.#index] === 'string'\n }\n /**\n * true of if pattern() returns GLOBSTAR\n */\n isGlobstar(): boolean {\n return this.#patternList[this.#index] === GLOBSTAR\n }\n /**\n * true if pattern() returns a regexp\n */\n isRegExp(): boolean {\n return this.#patternList[this.#index] instanceof RegExp\n }\n\n /**\n * The /-joined set of glob parts that make up this pattern\n */\n globString(): string {\n return (this.#globString =\n this.#globString ||\n (this.#index === 0 ?\n this.isAbsolute() ?\n this.#globList[0] + this.#globList.slice(1).join('/')\n : this.#globList.join('/')\n : this.#globList.slice(this.#index).join('/')))\n }\n\n /**\n * true if there are more pattern parts after this one\n */\n hasMore(): boolean {\n return this.length > this.#index + 1\n }\n\n /**\n * The rest of the pattern after this part, or null if this is the end\n */\n rest(): Pattern | null {\n if (this.#rest !== undefined) return this.#rest\n if (!this.hasMore()) return (this.#rest = null)\n this.#rest = new Pattern(\n this.#patternList,\n this.#globList,\n this.#index + 1,\n this.#platform,\n )\n this.#rest.#isAbsolute = this.#isAbsolute\n this.#rest.#isUNC = this.#isUNC\n this.#rest.#isDrive = this.#isDrive\n return this.#rest\n }\n\n /**\n * true if the pattern represents a //unc/path/ on windows\n */\n isUNC(): boolean {\n const pl = this.#patternList\n return this.#isUNC !== undefined ?\n this.#isUNC\n : (this.#isUNC =\n this.#platform === 'win32' &&\n this.#index === 0 &&\n pl[0] === '' &&\n pl[1] === '' &&\n typeof pl[2] === 'string' &&\n !!pl[2] &&\n typeof pl[3] === 'string' &&\n !!pl[3])\n }\n\n // pattern like C:/...\n // split = ['C:', ...]\n // XXX: would be nice to handle patterns like `c:*` to test the cwd\n // in c: for *, but I don't know of a way to even figure out what that\n // cwd is without actually chdir'ing into it?\n /**\n * True if the pattern starts with a drive letter on Windows\n */\n isDrive(): boolean {\n const pl = this.#patternList\n return this.#isDrive !== undefined ?\n this.#isDrive\n : (this.#isDrive =\n this.#platform === 'win32' &&\n this.#index === 0 &&\n this.length > 1 &&\n typeof pl[0] === 'string' &&\n /^[a-z]:$/i.test(pl[0]))\n }\n\n // pattern = '/' or '/...' or '/x/...'\n // split = ['', ''] or ['', ...] or ['', 'x', ...]\n // Drive and UNC both considered absolute on windows\n /**\n * True if the pattern is rooted on an absolute path\n */\n isAbsolute(): boolean {\n const pl = this.#patternList\n return this.#isAbsolute !== undefined ?\n this.#isAbsolute\n : (this.#isAbsolute =\n (pl[0] === '' && pl.length > 1) ||\n this.isDrive() ||\n this.isUNC())\n }\n\n /**\n * consume the root of the pattern, and return it\n */\n root(): string {\n const p = this.#patternList[0]\n return (\n typeof p === 'string' && this.isAbsolute() && this.#index === 0\n ) ?\n p\n : ''\n }\n\n /**\n * Check to see if the current globstar pattern is allowed to follow\n * a symbolic link.\n */\n checkFollowGlobstar(): boolean {\n return !(\n this.#index === 0 ||\n !this.isGlobstar() ||\n !this.#followGlobstar\n )\n }\n\n /**\n * Mark that the current globstar pattern is following a symbolic link\n */\n markFollowGlobstar(): boolean {\n if (this.#index === 0 || !this.isGlobstar() || !this.#followGlobstar)\n return false\n this.#followGlobstar = false\n return true\n }\n}\n"]}
@@ -2,21 +2,30 @@
2
2
  "author": "Isaac Z. Schlueter <i@izs.me> (https://blog.izs.me/)",
3
3
  "name": "glob",
4
4
  "description": "the most correct and second fastest glob implementation in JavaScript",
5
- "version": "11.1.0",
5
+ "version": "13.0.6",
6
6
  "type": "module",
7
7
  "tshy": {
8
- "main": true,
9
8
  "exports": {
10
9
  "./package.json": "./package.json",
11
- ".": "./src/index.ts"
10
+ "./raw": "./src/index.ts",
11
+ ".": {
12
+ "import": {
13
+ "types": "./dist/esm/index.d.ts",
14
+ "default": "./dist/esm/index.min.js"
15
+ },
16
+ "require": {
17
+ "types": "./dist/commonjs/index.d.ts",
18
+ "default": "./dist/commonjs/index.min.js"
19
+ }
20
+ }
12
21
  }
13
22
  },
14
- "bin": "./dist/esm/bin.mjs",
15
- "main": "./dist/commonjs/index.js",
23
+ "main": "./dist/commonjs/index.min.js",
24
+ "module": "./dist/esm/index.min.js",
16
25
  "types": "./dist/commonjs/index.d.ts",
17
26
  "exports": {
18
27
  "./package.json": "./package.json",
19
- ".": {
28
+ "./raw": {
20
29
  "import": {
21
30
  "types": "./dist/esm/index.d.ts",
22
31
  "default": "./dist/esm/index.js"
@@ -25,6 +34,16 @@
25
34
  "types": "./dist/commonjs/index.d.ts",
26
35
  "default": "./dist/commonjs/index.js"
27
36
  }
37
+ },
38
+ ".": {
39
+ "import": {
40
+ "types": "./dist/esm/index.d.ts",
41
+ "default": "./dist/esm/index.min.js"
42
+ },
43
+ "require": {
44
+ "types": "./dist/commonjs/index.d.ts",
45
+ "default": "./dist/commonjs/index.min.js"
46
+ }
28
47
  }
29
48
  },
30
49
  "repository": {
@@ -38,13 +57,13 @@
38
57
  "preversion": "npm test",
39
58
  "postversion": "npm publish",
40
59
  "prepublishOnly": "npm run benchclean; git push origin --follow-tags",
41
- "prepare": "tshy",
60
+ "prepare": "tshy && bash scripts/build.sh",
42
61
  "pretest": "npm run prepare",
43
62
  "presnap": "npm run prepare",
44
63
  "test": "tap",
45
64
  "snap": "tap",
46
65
  "format": "prettier --write . --log-level warn",
47
- "typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts",
66
+ "typedoc": "typedoc",
48
67
  "profclean": "rm -f v8.log profile.txt",
49
68
  "test-regen": "npm run profclean && TEST_REGEN=1 node --no-warnings --loader ts-node/esm test/00-setup.ts",
50
69
  "prebench": "npm run prepare",
@@ -53,45 +72,27 @@
53
72
  "prof": "bash prof.sh",
54
73
  "benchclean": "node benchclean.cjs"
55
74
  },
56
- "prettier": {
57
- "experimentalTernaries": true,
58
- "semi": false,
59
- "printWidth": 75,
60
- "tabWidth": 2,
61
- "useTabs": false,
62
- "singleQuote": true,
63
- "jsxSingleQuote": false,
64
- "bracketSameLine": true,
65
- "arrowParens": "avoid",
66
- "endOfLine": "lf"
67
- },
68
75
  "dependencies": {
69
- "foreground-child": "^3.3.1",
70
- "jackspeak": "^4.1.1",
71
- "minimatch": "^10.1.1",
72
- "minipass": "^7.1.2",
73
- "package-json-from-dist": "^1.0.0",
74
- "path-scurry": "^2.0.0"
76
+ "minimatch": "^10.2.2",
77
+ "minipass": "^7.1.3",
78
+ "path-scurry": "^2.0.2"
75
79
  },
76
80
  "devDependencies": {
77
- "@types/node": "^24.10.0",
81
+ "@types/node": "^25.3.0",
82
+ "esbuild": "^0.27.3",
78
83
  "memfs": "^4.50.0",
79
84
  "mkdirp": "^3.0.1",
80
85
  "prettier": "^3.6.2",
81
- "rimraf": "^6.1.0",
82
- "tap": "^21.1.3",
83
- "tshy": "^3.0.3",
84
- "typedoc": "^0.28.14"
85
- },
86
- "tap": {
87
- "before": "test/00-setup.ts"
86
+ "rimraf": "^6.1.3",
87
+ "tap": "^21.6.1",
88
+ "tshy": "^3.3.2",
89
+ "typedoc": "^0.28.17"
88
90
  },
89
91
  "license": "BlueOak-1.0.0",
90
92
  "funding": {
91
93
  "url": "https://github.com/sponsors/isaacs"
92
94
  },
93
95
  "engines": {
94
- "node": "20 || >=22"
95
- },
96
- "module": "./dist/esm/index.js"
96
+ "node": "18 || 20 || >=22"
97
+ }
97
98
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  This repository contains the standalone `jishushell-panel` package. It contains
4
4
  the web UI source plus Panel-only runtime code: serving the React frontend,
5
- starting or connecting to the core server through the `jishushell-cli` command,
5
+ starting or connecting to the core server through the `jishushell` command,
6
6
  and proxying browser requests to core.
7
7
 
8
8
  The Panel is a product boundary. Core business logic and APIs stay in the core
@@ -25,7 +25,7 @@ npm run build:pack
25
25
  The pack command creates a versioned tarball named
26
26
  `jishushell-panel-<panel-version>.tgz`.
27
27
 
28
- At runtime, install `jishushell-cli` on `PATH` or set `JISHUSHELL_CORE_BIN`.
28
+ At runtime, install `jishushell` on `PATH` or set `JISHUSHELL_CORE_BIN`.
29
29
  For a single Core+Panel installable artifact, copy the generated tarball into
30
30
  the core repository's `dependencies/` directory, then run
31
31
  `npm run build:pack:gui` from the core package. Core now auto-selects the latest
@@ -37,11 +37,11 @@ npm run build:pack:gui -- --panel-tarball dependencies/jishushell-panel-0.6.1.tg
37
37
  ```
38
38
 
39
39
  The core pack command consumes the prebuilt Panel tarball and creates
40
- `jishushell-gui-<core-version>.tgz` without requiring this source repository to
40
+ `jishushell-<core-version>.tgz` without requiring this source repository to
41
41
  be present next to the core repository.
42
42
 
43
43
  Core and Panel are built through separate package paths. The default core
44
44
  package does not consume Panel source or a runtime Panel dependency; only the
45
45
  explicit Core+Panel packaging path composes both packages. The combined
46
- `jishushell-gui` artifact is versioned by the core package; this Panel package
46
+ `jishushell` artifact is versioned by the core package; this Panel package
47
47
  keeps its own package version.
@@ -14,6 +14,12 @@ const DEFAULT_CORE_BASE_URL = "http://127.0.0.1:8091";
14
14
  const CORE_START_TIMEOUT_MS = 30_000;
15
15
  const PROXIED_PREFIXES = ["/api/", "/proxy/", "/apps/", "/webdav/"];
16
16
  const PROXIED_PATHS = new Set(["/webdav"]);
17
+ const PANEL_STATIC_CACHE_CONTROL = "no-store, no-cache, must-revalidate";
18
+ function setPanelStaticNoStoreHeaders(response) {
19
+ response.setHeader("Cache-Control", PANEL_STATIC_CACHE_CONTROL);
20
+ response.setHeader("Pragma", "no-cache");
21
+ response.setHeader("Expires", "0");
22
+ }
17
23
  function isDirectExecution() {
18
24
  const entrypoint = process.argv[1];
19
25
  if (!entrypoint)
@@ -100,12 +106,14 @@ function pathEntrypointCandidates(binName) {
100
106
  }
101
107
  function coreCliEntrypointCandidates() {
102
108
  const root = packageRoot();
103
- const binName = process.platform === "win32" ? "jishushell-cli.cmd" : "jishushell-cli";
109
+ // Current Core command is `jishushell`; old split-era Core CLI
110
+ // package names are not part of the current release model.
111
+ const binName = process.platform === "win32" ? "jishushell.cmd" : "jishushell";
104
112
  return [
105
113
  process.env.JISHUSHELL_CORE_BIN,
106
114
  join(root, "..", "..", "dist", "cli.js"),
107
115
  join(root, "node_modules", ".bin", binName),
108
- join(root, "node_modules", "jishushell-cli", "dist", "cli.js"),
116
+ join(root, "node_modules", "jishushell", "dist", "cli.js"),
109
117
  ...pathEntrypointCandidates(binName),
110
118
  ].filter((candidate) => Boolean(candidate));
111
119
  }
@@ -118,8 +126,8 @@ function resolveCoreCliEntrypoint() {
118
126
  return { command: process.execPath, argsPrefix: [sourcePath], sourcePath };
119
127
  return { command: sourcePath, argsPrefix: [], sourcePath };
120
128
  }
121
- throw new Error("Unable to locate jishushell-cli. Install jishushell-cli, use the Core+Panel jishushell-gui package, "
122
- + "or set JISHUSHELL_CORE_BIN to the jishushell-cli command path.");
129
+ throw new Error("Unable to locate jishushell. Install jishushell, use the Core+Panel jishushell package, "
130
+ + "or set JISHUSHELL_CORE_BIN to the jishushell command path.");
123
131
  }
124
132
  function corePort(coreBaseUrl) {
125
133
  if (coreBaseUrl.port)
@@ -173,7 +181,7 @@ async function startManagedCore(coreBaseUrl) {
173
181
  }
174
182
  function handleExit(code, signal) {
175
183
  const suffix = output.trim() ? `\n${output.trim()}` : "";
176
- settleReject(new Error(`jishushell-cli serve exited before core became ready with ${signal || `exit code ${code}`}.${suffix}`));
184
+ settleReject(new Error(`jishushell serve exited before core became ready with ${signal || `exit code ${code}`}.${suffix}`));
177
185
  }
178
186
  child.on("error", settleReject);
179
187
  child.on("exit", handleExit);
@@ -404,13 +412,16 @@ export async function createServer(options = {}) {
404
412
  decorateReply: false,
405
413
  wildcard: false,
406
414
  cacheControl: false,
415
+ setHeaders: (response) => {
416
+ setPanelStaticNoStoreHeaders(response);
417
+ },
407
418
  });
408
419
  app.setNotFoundHandler(async (request, reply) => {
409
420
  const pathname = request.url.split("?")[0] || "/";
410
421
  if (shouldProxy(pathname)) {
411
422
  return reply.status(404).send({ error: "core_route_not_found" });
412
423
  }
413
- reply.header("Cache-Control", "no-store");
424
+ setPanelStaticNoStoreHeaders(reply.raw);
414
425
  reply.type("text/html");
415
426
  return reply.send(createReadStream(indexPath));
416
427
  });
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./vendor-i18n-Df8aUdv8.js";import{t as r}from"./vendor-react-0L0rjmYG.js";import{It as i}from"./api-C70Gt678.js";import{c as a,f as o,p as s,s as c}from"./index-Bs6DSbiR.js";var l=[{providerId:`zhipu`,label:`GLM`,purchaseUrl:`https://bigmodel.cn/glm-coding`},{providerId:`moonshot`,label:`Kimi`,purchaseUrl:`https://www.kimi.com/membership/pricing?from=kfc_membership_topbar`},{providerId:`deepseek`,label:`DeepSeek`,purchaseUrl:`https://platform.deepseek.com/sign_in`},{providerId:`minimax`,label:`MiniMax`,purchaseUrl:`https://platform.minimaxi.com/subscribe/token-plan`},{providerId:`stepfun`,label:`阶跃星辰`,purchaseUrl:`https://platform.stepfun.com/step-plan`},{providerId:`xiaomi`,label:`小米Mimo`,purchaseUrl:`https://platform.xiaomimimo.com/token-plan`}],u=[{id:`minimax`,label:`MiniMax (国内)`,group:`国内厂商`,baseUrl:`https://api.minimaxi.com/v1`,api:`openai-completions`,models:[{id:`MiniMax-M2.7`,name:`MiniMax M2.7`,contextWindow:204800},{id:`MiniMax-M2.7-highspeed`,name:`MiniMax M2.7 Highspeed`,contextWindow:204800}]},{id:`minimax-intl`,label:`MiniMax (国际)`,group:`国际厂商`,baseUrl:`https://api.minimax.io/anthropic`,api:`anthropic-messages`,authHeader:!0,models:[{id:`MiniMax-M2.7`,name:`MiniMax M2.7`,contextWindow:204800},{id:`MiniMax-M2.7-highspeed`,name:`MiniMax M2.7 Highspeed`,contextWindow:204800}]},{id:`moonshot`,label:`Kimi (Moonshot)`,group:`国内厂商`,baseUrl:`https://api.moonshot.cn/v1`,api:`openai-completions`,models:[{id:`kimi-k2.5`,name:`Kimi K2.5`,contextWindow:256e3},{id:`moonshot-v1-128k`,name:`Moonshot V1 128K`,contextWindow:128e3},{id:`moonshot-v1-32k`,name:`Moonshot V1 32K`,contextWindow:32e3},{id:`moonshot-v1-8k`,name:`Moonshot V1 8K`,contextWindow:8e3}]},{id:`moonshot-coding`,label:`Kimi (编码计划)`,group:`国内厂商`,baseUrl:`https://api.moonshot.cn/anthropic`,api:`anthropic-messages`,authHeader:!0,models:[{id:`kimi-k2.5`,name:`Kimi K2.5`,contextWindow:256e3},{id:`kimi-k2-thinking-turbo`,name:`Kimi K2 Thinking Turbo`,contextWindow:256e3},{id:`kimi-k2-thinking`,name:`Kimi K2 Thinking`,contextWindow:256e3},{id:`kimi-k2-0905-preview`,name:`Kimi K2 0905 Preview`,contextWindow:256e3},{id:`kimi-k2-turbo-preview`,name:`Kimi K2 Turbo Preview`,contextWindow:256e3}]},{id:`moonshot-intl`,label:`Kimi (国际)`,group:`国际厂商`,baseUrl:`https://api.moonshot.ai/v1`,api:`openai-completions`,models:[{id:`kimi-k2.5`,name:`Kimi K2.5`,contextWindow:256e3},{id:`moonshot-v1-128k`,name:`Moonshot V1 128K`,contextWindow:128e3}]},{id:`zhipu`,label:`智谱AI (GLM)`,group:`国内厂商`,baseUrl:`https://open.bigmodel.cn/api/paas/v4`,api:`openai-completions`,models:[{id:`glm-5.1`,name:`GLM-5.1`,contextWindow:2e5},{id:`glm-5`,name:`GLM-5`,contextWindow:2e5},{id:`glm-5-turbo`,name:`GLM-5 Turbo`,contextWindow:2e5},{id:`glm-4.7`,name:`GLM-4.7`,contextWindow:2e5},{id:`glm-4.7-flashx`,name:`GLM-4.7 FlashX`,contextWindow:2e5},{id:`glm-4.7-flash`,name:`GLM-4.7 Flash (免费)`,contextWindow:2e5},{id:`glm-4-plus`,name:`GLM-4 Plus`,contextWindow:128e3},{id:`glm-4-long`,name:`GLM-4 Long`,contextWindow:1e6}]},{id:`zhipu-intl`,label:`Z.AI (GLM)`,group:`国际厂商`,baseUrl:`https://api.z.ai/api/paas/v4`,api:`openai-completions`,models:[{id:`glm-5.1`,name:`GLM-5.1`,contextWindow:2e5},{id:`glm-5`,name:`GLM-5`,contextWindow:2e5},{id:`glm-5-turbo`,name:`GLM-5 Turbo`,contextWindow:2e5},{id:`glm-4.7`,name:`GLM-4.7`,contextWindow:2e5},{id:`glm-4.7-flash`,name:`GLM-4.7 Flash`,contextWindow:2e5},{id:`glm-4-plus`,name:`GLM-4 Plus`,contextWindow:128e3}]},{id:`byteplus`,label:`火山引擎国际版 (Doubao)`,group:`国际厂商`,baseUrl:`https://ark.ap-southeast.bytepluses.com/api/v3`,api:`openai-completions`,models:[{id:`seed-2-0-lite-260228`,name:`Seed 2.0 Lite`,contextWindow:256e3},{id:`seed-2-0-mini-260215`,name:`Seed 2.0 Mini`,contextWindow:256e3},{id:`seed-1-8-251228`,name:`Seed 1.8`,contextWindow:256e3}]},{id:`deepseek`,label:`DeepSeek`,group:`国内厂商`,baseUrl:`https://api.deepseek.com/v1`,api:`openai-completions`,models:[{id:`deepseek-chat`,name:`DeepSeek V3.2`,contextWindow:128e3},{id:`deepseek-reasoner`,name:`DeepSeek V3.2 (推理)`,contextWindow:128e3}]},{id:`dashscope`,label:`阿里云百炼`,group:`国内厂商`,baseUrl:`https://dashscope.aliyuncs.com/compatible-mode/v1`,api:`openai-completions`,models:[{id:`qwen3.5-plus`,name:`Qwen 3.5 Plus`,contextWindow:1e6},{id:`qwen3.5-flash`,name:`Qwen 3.5 Flash`,contextWindow:1e6},{id:`qwen3-max`,name:`Qwen 3 Max`,contextWindow:262144},{id:`qwen3-coder-plus`,name:`Qwen 3 Coder Plus`,contextWindow:1e6},{id:`qwen3-coder-next`,name:`Qwen 3 Coder Next`,contextWindow:262144},{id:`qwen3-coder-flash`,name:`Qwen 3 Coder Flash`,contextWindow:1e6},{id:`qwen-plus`,name:`Qwen Plus`,contextWindow:1e6},{id:`qwen-long`,name:`Qwen Long (10M)`,contextWindow:1e7}]},{id:`modelstudio`,label:`阿里云百炼 (国际/Coding)`,group:`国内厂商`,baseUrl:`https://coding-intl.dashscope.aliyuncs.com/v1`,api:`openai-completions`,models:[{id:`qwen3.5-plus`,name:`Qwen 3.5 Plus`,contextWindow:1e6},{id:`qwen3-coder-plus`,name:`Qwen 3 Coder Plus`,contextWindow:1e6},{id:`qwen3-coder-next`,name:`Qwen 3 Coder Next`,contextWindow:262144}]},{id:`volcengine`,label:`火山引擎 (豆包)`,group:`国内厂商`,baseUrl:`https://ark.cn-beijing.volces.com/api/v3`,api:`openai-completions`,models:[{id:`doubao-seed-2-0-pro-260215`,name:`Doubao Seed 2.0 Pro (需替换为接入点ID)`,contextWindow:256e3},{id:`doubao-seed-2-0-lite-260228`,name:`Doubao Seed 2.0 Lite (需替换为接入点ID)`,contextWindow:256e3},{id:`doubao-seed-2-0-code-preview-260215`,name:`Doubao Seed 2.0 Code (需替换为接入点ID)`,contextWindow:256e3},{id:`doubao-seed-2-0-mini-260215`,name:`Doubao Seed 2.0 Mini (需替换为接入点ID)`,contextWindow:256e3},{id:`doubao-seed-1-8-251228`,name:`Doubao Seed 1.8 (需替换为接入点ID)`,contextWindow:256e3}]},{id:`qianfan`,label:`百度千帆 (ERNIE)`,group:`国内厂商`,baseUrl:`https://qianfan.baidubce.com/v2`,api:`openai-completions`,models:[{id:`ernie-5.0`,name:`ERNIE 5.0`,contextWindow:128e3},{id:`ernie-5.0-thinking-preview`,name:`ERNIE 5.0 Thinking`,contextWindow:128e3},{id:`ernie-4.5-turbo-128k`,name:`ERNIE 4.5 Turbo (MoE)`,contextWindow:128e3},{id:`ernie-x1.1`,name:`ERNIE X1.1 (推理)`,contextWindow:64e3},{id:`deepseek-v3.2`,name:`DeepSeek V3.2 (千帆)`,contextWindow:128e3}]},{id:`tencent`,label:`腾讯混元`,group:`国内厂商`,baseUrl:`https://api.hunyuan.cloud.tencent.com/v1`,api:`openai-completions`,models:[{id:`hunyuan-2.0-thinking-20251109`,name:`Hunyuan 2.0 Think (推理)`,contextWindow:128e3},{id:`hunyuan-2.0-instruct-20251111`,name:`Hunyuan 2.0 Instruct`,contextWindow:128e3},{id:`hunyuan-t1-latest`,name:`Hunyuan T1 (推理)`,contextWindow:32e3},{id:`hunyuan-turbos-latest`,name:`Hunyuan TurboS`,contextWindow:32e3},{id:`hunyuan-a13b`,name:`Hunyuan A13B (MoE)`,contextWindow:224e3},{id:`hunyuan-lite`,name:`Hunyuan Lite (免费)`,contextWindow:25e4}]},{id:`xiaomi`,label:`MiMo (小米)`,group:`国内厂商`,baseUrl:`https://api.xiaomimimo.com/v1`,api:`openai-completions`,models:[{id:`mimo-v2-pro`,name:`MiMo V2 Pro (推理)`,contextWindow:1048576},{id:`mimo-v2-omni`,name:`MiMo V2 Omni (多模)`,contextWindow:262144},{id:`mimo-v2-flash`,name:`MiMo V2 Flash`,contextWindow:262144}]},{id:`spark`,label:`讯飞星火`,group:`国内厂商`,baseUrl:`https://spark-api-open.xf-yun.com/v1`,api:`openai-completions`,models:[{id:`spark-x`,name:`Spark X1.5 (推理)`,contextWindow:32768},{id:`4.0Ultra`,name:`Spark 4.0 Ultra`,contextWindow:32768},{id:`pro-128k`,name:`Spark Pro 128K`,contextWindow:131072},{id:`lite`,name:`Spark Lite (免费)`,contextWindow:8192}]},{id:`stepfun`,label:`阶跃星辰`,group:`国内厂商`,baseUrl:`https://api.stepfun.com/v1`,api:`openai-completions`,models:[{id:`step-3.5-flash`,name:`Step 3.5 Flash (推理)`,contextWindow:262144},{id:`step-3`,name:`Step 3 (多模推理)`,contextWindow:65536},{id:`step-2-mini`,name:`Step 2 Mini`,contextWindow:32e3},{id:`step-1o-turbo-vision`,name:`Step 1o Turbo Vision`,contextWindow:32e3},{id:`step-1-256k`,name:`Step 1 256K`,contextWindow:256e3}]},{id:`openai`,label:`OpenAI`,group:`国际厂商`,baseUrl:`https://api.openai.com/v1`,api:`openai-completions`,models:[{id:`gpt-5.4`,name:`GPT-5.4`,contextWindow:105e4},{id:`gpt-5.4-pro`,name:`GPT-5.4 Pro`,contextWindow:105e4},{id:`gpt-5.4-mini`,name:`GPT-5.4 Mini`,contextWindow:4e5},{id:`gpt-5.4-nano`,name:`GPT-5.4 Nano`,contextWindow:4e5},{id:`o3-pro`,name:`o3-pro (推理)`,contextWindow:2e5},{id:`o3`,name:`o3 (推理)`,contextWindow:2e5},{id:`o4-mini`,name:`o4-mini (推理)`,contextWindow:2e5},{id:`gpt-4.1`,name:`GPT-4.1`,contextWindow:1e6},{id:`gpt-4.1-mini`,name:`GPT-4.1 Mini`,contextWindow:1e6}]},{id:`anthropic`,label:`Anthropic (Claude)`,group:`国际厂商`,baseUrl:`https://api.anthropic.com`,api:`anthropic-messages`,models:[{id:`claude-opus-4-6`,name:`Claude Opus 4.6`,contextWindow:1e6},{id:`claude-sonnet-4-6`,name:`Claude Sonnet 4.6`,contextWindow:1e6},{id:`claude-haiku-4-5`,name:`Claude Haiku 4.5`,contextWindow:2e5}]},{id:`google`,label:`Google Gemini`,group:`国际厂商`,baseUrl:`https://generativelanguage.googleapis.com`,api:`google-generative-ai`,models:[{id:`gemini-3.1-pro-preview`,name:`Gemini 3.1 Pro (Preview)`,contextWindow:1048576},{id:`gemini-3-flash-preview`,name:`Gemini 3 Flash (Preview)`,contextWindow:1048576},{id:`gemini-3.1-flash-lite-preview`,name:`Gemini 3.1 Flash Lite (Preview)`,contextWindow:1048576},{id:`gemini-2.5-flash`,name:`Gemini 2.5 Flash`,contextWindow:1048576},{id:`gemini-2.5-pro`,name:`Gemini 2.5 Pro`,contextWindow:1048576}]},{id:`mistral`,label:`Mistral AI`,group:`国际厂商`,baseUrl:`https://api.mistral.ai/v1`,api:`openai-completions`,models:[{id:`mistral-large-latest`,name:`Mistral Large 3`,contextWindow:262144},{id:`mistral-small-latest`,name:`Mistral Small 4`,contextWindow:256e3},{id:`codestral-latest`,name:`Codestral (代码)`,contextWindow:256e3},{id:`devstral-latest`,name:`Devstral 2 (代码Agent)`,contextWindow:256e3},{id:`devstral-2-latest`,name:`Devstral 2 123B (代码)`,contextWindow:256e3},{id:`magistral-medium-latest`,name:`Magistral Medium (推理)`,contextWindow:4e4}]},{id:`xai`,label:`xAI (Grok)`,group:`国际厂商`,baseUrl:`https://api.x.ai/v1`,api:`openai-completions`,models:[{id:`grok-4.20-0309-reasoning`,name:`Grok 4.20 (推理)`,contextWindow:2e6},{id:`grok-4-1-fast-reasoning`,name:`Grok 4 Fast (推理)`,contextWindow:2e6},{id:`grok-4-1-fast-non-reasoning`,name:`Grok 4 Fast`,contextWindow:2e6},{id:`grok-4`,name:`Grok 4`,contextWindow:256e3},{id:`grok-code-fast-1`,name:`Grok Code Fast 1 (代码)`,contextWindow:256e3},{id:`grok-3`,name:`Grok 3`,contextWindow:131072},{id:`grok-3-mini`,name:`Grok 3 Mini`,contextWindow:131072}]},{id:`cohere`,label:`Cohere`,group:`国际厂商`,baseUrl:`https://api.cohere.com/compatibility/v1`,api:`openai-completions`,models:[{id:`command-a-03-2025`,name:`Command A`,contextWindow:256e3},{id:`command-a-reasoning-08-2025`,name:`Command A (推理)`,contextWindow:256e3},{id:`command-a-vision-07-2025`,name:`Command A (视觉)`,contextWindow:128e3},{id:`command-r-plus-08-2024`,name:`Command R+`,contextWindow:128e3},{id:`command-r-08-2024`,name:`Command R`,contextWindow:128e3}]},{id:`groq`,label:`Groq`,group:`推理加速`,baseUrl:`https://api.groq.com/openai/v1`,api:`openai-completions`,models:[{id:`openai/gpt-oss-120b`,name:`GPT-OSS 120B`,contextWindow:131072},{id:`llama-3.3-70b-versatile`,name:`Llama 3.3 70B`,contextWindow:131072},{id:`meta-llama/llama-4-scout-17b-16e-instruct`,name:`Llama 4 Scout 17B`,contextWindow:128e3},{id:`qwen/qwen3-32b`,name:`Qwen 3 32B`,contextWindow:128e3},{id:`llama-3.1-8b-instant`,name:`Llama 3.1 8B`,contextWindow:131072}]},{id:`fireworks`,label:`Fireworks AI`,group:`推理加速`,baseUrl:`https://api.fireworks.ai/inference/v1`,api:`openai-completions`,models:[{id:`accounts/fireworks/models/deepseek-v3`,name:`DeepSeek V3`,contextWindow:131072},{id:`accounts/fireworks/models/deepseek-v3p1`,name:`DeepSeek V3.1`,contextWindow:163840},{id:`accounts/fireworks/models/deepseek-v3p2`,name:`DeepSeek V3.2`,contextWindow:163840},{id:`accounts/fireworks/models/deepseek-r1`,name:`DeepSeek R1`,contextWindow:163840},{id:`accounts/fireworks/models/llama-v3p3-70b-instruct`,name:`Llama 3.3 70B`,contextWindow:131072},{id:`accounts/fireworks/models/qwen2.5-coder-32b-instruct`,name:`Qwen 2.5 Coder 32B`,contextWindow:32768}]},{id:`sambanova`,label:`SambaNova`,group:`推理加速`,baseUrl:`https://api.sambanova.ai/v1`,api:`openai-completions`,models:[{id:`gpt-oss-120b`,name:`GPT-OSS 120B`,contextWindow:131072},{id:`DeepSeek-R1-0528`,name:`DeepSeek R1`,contextWindow:65536},{id:`DeepSeek-V3-0324`,name:`DeepSeek V3`,contextWindow:65536},{id:`DeepSeek-V3.1`,name:`DeepSeek V3.1`,contextWindow:65536},{id:`DeepSeek-V3.2`,name:`DeepSeek V3.2`,contextWindow:65536},{id:`Meta-Llama-3.3-70B-Instruct`,name:`Llama 3.3 70B`,contextWindow:131072},{id:`Qwen3-235B`,name:`Qwen 3 235B`,contextWindow:65536}]},{id:`cerebras`,label:`Cerebras`,group:`推理加速`,baseUrl:`https://api.cerebras.ai/v1`,api:`openai-completions`,models:[{id:`gpt-oss-120b`,name:`GPT-OSS 120B`,contextWindow:131072},{id:`qwen-3-235b-a22b-instruct-2507`,name:`Qwen 3 235B (MoE)`,contextWindow:131072},{id:`zai-glm-4.7`,name:`Z.AI GLM 4.7`,contextWindow:131072},{id:`llama-4-scout-17b-16e-instruct`,name:`Llama 4 Scout 17B`,contextWindow:131072}]},{id:`hyperbolic`,label:`Hyperbolic`,group:`推理加速`,baseUrl:`https://api.hyperbolic.xyz/v1`,api:`openai-completions`,models:[{id:`gpt-oss-120b`,name:`GPT-OSS 120B`,contextWindow:131072},{id:`deepseek-ai/DeepSeek-V3-0324`,name:`DeepSeek V3`,contextWindow:131072},{id:`deepseek-ai/DeepSeek-R1-0528`,name:`DeepSeek R1`,contextWindow:131072},{id:`meta-llama/Llama-3.3-70B-Instruct`,name:`Llama 3.3 70B`,contextWindow:131072}]},{id:`openrouter`,label:`OpenRouter`,group:`聚合平台`,baseUrl:`https://openrouter.ai/api/v1`,api:`openai-completions`,models:[{id:`openrouter/auto`,name:`Auto (自动选择)`,contextWindow:2e6},{id:`anthropic/claude-opus-4.6`,name:`Claude Opus 4.6`,contextWindow:1e6},{id:`openai/gpt-4.1`,name:`GPT-4.1`,contextWindow:1e6},{id:`google/gemini-2.5-flash`,name:`Gemini 2.5 Flash`,contextWindow:1048576},{id:`deepseek/deepseek-chat-v3.1`,name:`DeepSeek V3.1`,contextWindow:128e3},{id:`deepseek/deepseek-r1-0528`,name:`DeepSeek R1`,contextWindow:163840}]},{id:`together`,label:`Together AI`,group:`聚合平台`,baseUrl:`https://api.together.xyz/v1`,api:`openai-completions`,models:[{id:`deepseek-ai/DeepSeek-V3.1`,name:`DeepSeek V3.1`,contextWindow:131072},{id:`deepseek-ai/DeepSeek-R1`,name:`DeepSeek R1`,contextWindow:163840},{id:`moonshotai/Kimi-K2.5`,name:`Kimi K2.5`,contextWindow:262144},{id:`meta-llama/Llama-3.3-70B-Instruct-Turbo`,name:`Llama 3.3 70B Turbo`,contextWindow:131072},{id:`Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8`,name:`Qwen 3 Coder 480B`,contextWindow:131072}]},{id:`siliconflow`,label:`SiliconFlow`,group:`聚合平台`,baseUrl:`https://api.siliconflow.cn/v1`,api:`openai-completions`,models:[{id:`deepseek-ai/DeepSeek-V3`,name:`DeepSeek V3`,contextWindow:128e3},{id:`deepseek-ai/DeepSeek-R1`,name:`DeepSeek R1`,contextWindow:128e3},{id:`Qwen/Qwen3-235B-A22B`,name:`Qwen3 235B (MoE)`,contextWindow:131072},{id:`moonshotai/Kimi-K2.5`,name:`Kimi K2.5`,contextWindow:262144},{id:`Pro/deepseek-ai/DeepSeek-V3`,name:`DeepSeek V3 (Pro)`,contextWindow:128e3}]},{id:`perplexity`,label:`Perplexity`,group:`聚合平台`,baseUrl:`https://api.perplexity.ai`,api:`openai-completions`,models:[{id:`sonar-pro`,name:`Sonar Pro (联网)`,contextWindow:2e5},{id:`sonar`,name:`Sonar (联网)`,contextWindow:127072},{id:`sonar-reasoning-pro`,name:`Sonar Reasoning Pro (联网推理)`,contextWindow:128e3},{id:`sonar-deep-research`,name:`Sonar Deep Research (深度研究)`,contextWindow:128e3}]},{id:`deepinfra`,label:`DeepInfra`,group:`聚合平台`,baseUrl:`https://api.deepinfra.com/v1/openai`,api:`openai-completions`,models:[{id:`deepseek-ai/DeepSeek-V3-0324`,name:`DeepSeek V3`,contextWindow:131072},{id:`deepseek-ai/DeepSeek-V3.1`,name:`DeepSeek V3.1`,contextWindow:131072},{id:`deepseek-ai/DeepSeek-R1-0528-Turbo`,name:`DeepSeek R1 Turbo`,contextWindow:131072},{id:`meta-llama/Llama-3.3-70B-Instruct-Turbo`,name:`Llama 3.3 70B Turbo`,contextWindow:131072},{id:`Qwen/Qwen3-235B-A22B-Instruct-2507`,name:`Qwen 3 235B`,contextWindow:131072},{id:`Qwen/Qwen2.5-Coder-32B-Instruct`,name:`Qwen 2.5 Coder 32B`,contextWindow:32768}]},{id:`nvidia`,label:`NVIDIA NIM`,group:`聚合平台`,baseUrl:`https://integrate.api.nvidia.com/v1`,api:`openai-completions`,models:[{id:`meta/llama-3.3-70b-instruct`,name:`Llama 3.3 70B`,contextWindow:131072},{id:`deepseek-ai/deepseek-r1`,name:`DeepSeek R1`,contextWindow:131072}]},{id:`huggingface`,label:`Hugging Face`,group:`聚合平台`,baseUrl:`https://router.huggingface.co/v1`,api:`openai-completions`,models:[{id:`meta-llama/Llama-3.3-70B-Instruct`,name:`Llama 3.3 70B`,contextWindow:131072},{id:`Qwen/Qwen2.5-Coder-32B-Instruct`,name:`Qwen 2.5 Coder 32B`,contextWindow:32768}]},{id:`novita`,label:`Novita AI`,group:`聚合平台`,baseUrl:`https://api.novita.ai/v3/openai`,api:`openai-completions`,models:[{id:`deepseek/deepseek-chat-v3-0324`,name:`DeepSeek V3`,contextWindow:131072},{id:`deepseek/deepseek-r1`,name:`DeepSeek R1`,contextWindow:131072},{id:`meta-llama/llama-3.3-70b-instruct`,name:`Llama 3.3 70B`,contextWindow:131072}]},{id:`infini`,label:`Infini-AI`,group:`聚合平台`,baseUrl:`https://cloud.infini-ai.com/maas/v1`,api:`openai-completions`,models:[{id:`deepseek-ai/DeepSeek-V3`,name:`DeepSeek V3`,contextWindow:128e3},{id:`deepseek-ai/DeepSeek-R1`,name:`DeepSeek R1`,contextWindow:128e3}]},{id:`venice`,label:`Venice AI`,group:`聚合平台`,baseUrl:`https://api.venice.ai/api/v1`,api:`openai-completions`,models:[{id:`kimi-k2-5`,name:`Kimi K2.5`,contextWindow:262144}]},{id:`vercel-ai-gateway`,label:`Vercel AI Gateway`,group:`聚合平台`,baseUrl:`https://ai-gateway.vercel.sh`,api:`anthropic-messages`,models:[{id:`anthropic/claude-opus-4.6`,name:`Claude Opus 4.6`,contextWindow:2e5}]},{id:`synthetic`,label:`Synthetic`,group:`聚合平台`,baseUrl:`https://api.synthetic.new/anthropic`,api:`anthropic-messages`,models:[{id:`hf:MiniMaxAI/MiniMax-M2.7`,name:`MiniMax M2.7`,contextWindow:204800},{id:`hf:MiniMaxAI/MiniMax-M2.5`,name:`MiniMax M2.5`,contextWindow:204800}]},{id:`opencode`,label:`OpenCode Zen`,group:`聚合平台`,baseUrl:`https://opencode.ai/zen/v1`,api:`openai-completions`,models:[{id:`claude-opus-4-6`,name:`Claude Opus 4.6`,contextWindow:2e5}]},{id:`ollama`,label:`Ollama (本地)`,group:`本地部署`,baseUrl:`http://127.0.0.1:11434`,api:`ollama`,local:!0,models:[]},{id:`vllm`,label:`vLLM (本地)`,group:`本地部署`,baseUrl:`http://127.0.0.1:8000/v1`,api:`openai-completions`,local:!0,models:[]},{id:`sglang`,label:`SGLang (本地)`,group:`本地部署`,baseUrl:`http://127.0.0.1:30000/v1`,api:`openai-completions`,local:!0,models:[]},{id:`custom`,label:`Custom (OpenAI Compatible)`,group:`本地部署`,baseUrl:``,api:`openai-completions`,local:!0,models:[]}],d=e(t(),1),f=r(),p=[{id:`feishu`,labelKey:`configForm.channel.feishu`,fields:[],defaults:{connectionMode:`websocket`}},{id:`openclaw-weixin`,labelKey:`configForm.channel.openclaw-weixin`,fields:[],defaults:{}},{id:`telegram`,labelKey:`configForm.channel.telegram`,fields:[{key:`botToken`,label:`Bot Token`,type:`password`,placeholder:`From @BotFather`}]},{id:`discord`,labelKey:`configForm.channel.discord`,fields:[{key:`token`,label:`Bot Token`,type:`password`,placeholder:`From Discord Developer Portal`}]},{id:`slack`,labelKey:`configForm.channel.slack`,fields:[{key:`botToken`,label:`Bot Token (xoxb-...)`,type:`password`,placeholder:`xoxb-...`},{key:`appToken`,label:`App Token (xapp-...)`,type:`password`,placeholder:`xapp-...`}]},{id:`whatsapp`,labelKey:`configForm.channel.whatsapp`,fields:[],defaults:{}},{id:`msteams`,labelKey:`configForm.channel.msteams`,fields:[{key:`appId`,label:`App ID`,placeholder:`Azure App Registration ID`},{key:`appPassword`,label:`App Password`,type:`password`,placeholder:`Azure App Secret`},{key:`tenantId`,label:`Tenant ID`,placeholder:`Azure AD Tenant ID`}]},{id:`signal`,labelKey:`configForm.channel.signal`,fields:[{key:`account`,label:`Phone (E.164)`,placeholder:`+8613800138000`}]},{id:`line`,labelKey:`configForm.channel.line`,fields:[{key:`channelAccessToken`,label:`Channel Access Token`,type:`password`,placeholder:`From LINE Developers`},{key:`channelSecret`,label:`Channel Secret`,type:`password`,placeholder:`LINE Channel Secret`}]},{id:`googlechat`,labelKey:`configForm.channel.googlechat`,fields:[{key:`serviceAccountFile`,label:`Service Account JSON Path`,placeholder:`/path/to/service-account.json`}]}];function m(e,t,n){let r=structuredClone(e),i=t.split(`.`),a=r;for(let e=0;e<i.length-1;e++)a[i[e]]===void 0&&(a[i[e]]={}),a=a[i[e]];return a[i[i.length-1]]=n,r}var h=`w-full bg-[var(--input-bg)] border border-[var(--border)] rounded-md px-3 py-2 text-sm text-foreground placeholder-[var(--muted)] focus:outline-none focus:ring-1 focus:ring-[#0066FF]/60 focus:border-[#0066FF]/60 transition-colors duration-200`,g=`w-full bg-[var(--input-bg)] border border-[var(--border)] rounded-md px-3 py-2 text-sm text-foreground focus:outline-none focus:ring-1 focus:ring-[#0066FF]/60 focus:border-[#0066FF]/60 transition-colors duration-200 appearance-none`;function _({label:e,hint:t,children:n}){return(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`label`,{className:`block text-sm font-medium text-muted mb-1.5`,children:e}),n,t&&(0,f.jsx)(`p`,{className:`text-xs text-muted mt-1 opacity-60`,children:t})]})}function v({value:e,saved:t,onChange:r,placeholder:i,onPaste:a}){let{t:o}=n(`instance`),[s,c]=(0,d.useState)(!1);return t&&!s&&!e?(0,f.jsx)(`div`,{className:`relative`,children:(0,f.jsx)(`input`,{type:`password`,value:`••••••••••••••••••••••••••••••`,readOnly:!0,onFocus:()=>c(!0),onPaste:e=>{let t=e.clipboardData?.getData(`text`)??``;t&&(e.preventDefault(),c(!0),r(t),a?.(e))},className:`${h} cursor-text`,title:o(`config.clickToEdit`)})}):(0,f.jsx)(y,{value:e,onChange:r,onPaste:a,placeholder:i,type:`password`,mono:!0})}function y({value:e,onChange:t,placeholder:r,type:i=`text`,mono:a,onPaste:c}){let{t:l}=n(`common`),[u,p]=(0,d.useState)(!1),m=i===`password`;return(0,f.jsxs)(`div`,{className:`relative`,children:[(0,f.jsx)(`input`,{type:m&&!u?`password`:`text`,value:e||``,onChange:e=>t(e.target.value),onPaste:c,placeholder:r,className:`${h} ${a?`font-mono text-[13px]`:``} ${m?`pr-9`:``}`}),m&&(0,f.jsx)(`button`,{type:`button`,onClick:()=>p(!u),"aria-label":l(`action.togglePassword`),className:`absolute right-2.5 top-1/2 -translate-y-1/2 text-muted hover:text-foreground`,children:u?(0,f.jsx)(s,{className:`w-3.5 h-3.5`}):(0,f.jsx)(o,{className:`w-3.5 h-3.5`})})]})}function b({value:e,onChange:t,children:n}){return(0,f.jsx)(`select`,{value:e||``,onChange:e=>t(e.target.value),className:g,children:n})}function x({checked:e,onChange:t,label:n}){return(0,f.jsxs)(`label`,{className:`flex items-center gap-2.5 cursor-pointer`,children:[(0,f.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":e,onClick:()=>t(!e),className:`w-9 h-5 rounded-full relative transition-colors duration-200 ${e?`bg-[#0066FF]`:`bg-[var(--input-bg)]`}`,children:(0,f.jsx)(`div`,{className:`w-3.5 h-3.5 bg-white rounded-full absolute top-[3px] transition-transform duration-200 ${e?`left-[18px]`:`left-[3px]`}`})}),(0,f.jsx)(`span`,{className:`text-sm text-muted`,children:n})]})}function S({title:e,defaultOpen:t=!0,id:n,children:r}){let[i,o]=(0,d.useState)(t);return(0,f.jsxs)(`div`,{id:n,className:`bg-[var(--card)] border border-[var(--border)] rounded-xl overflow-hidden hover:border-[var(--border-hover)] transition-colors duration-200`,children:[(0,f.jsxs)(`button`,{type:`button`,onClick:()=>o(!i),className:`w-full px-4 py-3 flex items-center justify-between text-left hover:bg-[var(--card-hover)] transition-colors duration-150`,children:[(0,f.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:e}),i?(0,f.jsx)(c,{className:`w-4 h-4 text-muted`}):(0,f.jsx)(a,{className:`w-4 h-4 text-muted`})]}),i&&(0,f.jsx)(`div`,{className:`px-4 pb-4 space-y-4 border-t border-[var(--border)] pt-4`,children:r})]})}function C(e){switch(e){case`ok`:return`valid`;case`auth_failed`:case`forbidden`:return`error`;case`unreachable`:case`timeout`:case`models_empty`:case`unknown_error`:return`warning`;default:return`warning`}}function w(e){let[t,n]=(0,d.useState)(`idle`),[r,a]=(0,d.useState)([]),[o,s]=(0,d.useState)(``),[c,l]=(0,d.useState)(null),u=(0,d.useRef)(null),f=(0,d.useRef)(e);return f.current=e,{state:t,models:r,message:o,rawStatus:c,validate:(0,d.useCallback)(e=>{if(u.current&&u.current.abort(),!e.trim()){n(`idle`),a([]),s(``),l(null);return}let{baseUrl:t,api:r,authHeader:o,providerId:c}=f.current;if(!t){n(`idle`);return}let d=new AbortController;u.current=d,n(`validating`),s(``),l(null),i({baseUrl:t,apiKey:e.trim(),api:r,authHeader:o,providerId:c},d.signal).then(e=>{if(d.signal.aborted)return;let t=C(e.status);n(t),l(e.status),a(e.models||[]),s(e.message||``)}).catch(e=>{e.name===`AbortError`||d.signal.aborted||(n(`warning`),l(null),s(e.message||`Validation failed`))})},[]),reset:(0,d.useCallback)(()=>{u.current&&=(u.current.abort(),null),n(`idle`),a([]),s(``),l(null)},[])}}function T({state:e,rawStatus:t,message:n,modelCount:r,t:i}){if(e===`idle`)return null;if(e===`validating`)return(0,f.jsxs)(`p`,{className:`text-xs text-muted mt-1.5 flex items-center gap-1`,"aria-live":`polite`,children:[(0,f.jsx)(`span`,{className:`inline-block w-3 h-3 border-2 border-muted border-t-transparent rounded-full animate-spin`}),i(`llm.validating`)]});if(e===`valid`)return(0,f.jsxs)(`p`,{className:`text-xs text-green-500 mt-1.5`,"aria-live":`polite`,children:[`✅ `,i(`llm.keyValid`,{count:r})]});if(e===`error`)return(0,f.jsxs)(`p`,{className:`text-xs text-red-400 mt-1.5`,"aria-live":`polite`,children:[`❌ `,i(t===`forbidden`?`llm.keyForbidden`:`llm.keyAuthFailed`)]});let a;switch(t){case`timeout`:a=i(`llm.keyTimeout`);break;case`unreachable`:a=i(`llm.keyUnreachable`);break;case`models_empty`:a=i(`llm.keyModelsEmpty`);break;default:a=n||i(`llm.keyWarning`)}return(0,f.jsxs)(`p`,{className:`text-xs text-yellow-500 mt-1.5`,"aria-live":`polite`,children:[`⚠️ `,a]})}function E({value:e,saved:t,onChange:r,baseUrl:a,api:o,authHeader:s,providerId:c,placeholder:l,onModels:u,onStateChange:p,selectedModelId:m}){let{t:h}=n(`common`),{state:g,models:_,message:y,rawStatus:b,validate:x,reset:S}=w({baseUrl:a,api:o,authHeader:s,providerId:c}),[C,E]=(0,d.useState)(`idle`),[D,O]=(0,d.useState)(``),k=(0,d.useRef)(null),A=(0,d.useRef)(e);A.current=e;let j=(0,d.useCallback)(e=>{E(`idle`),O(``),x(e)},[x]),M=(0,d.useCallback)(e=>{r(e),S(),E(`idle`),O(``)},[r,S]),N=(0,d.useCallback)(e=>{let t=e.clipboardData?.getData(`text`)??``;t.trim()&&setTimeout(()=>j(t.trim()),0)},[j]),P=(0,d.useCallback)(()=>{let e=A.current;e.trim()&&g===`idle`&&j(e)},[g,j]),F=(0,d.useCallback)(()=>{let e=A.current;e.trim()&&j(e)},[j]),I=(0,d.useCallback)(()=>{if(!m||!A.current.trim())return;k.current&&k.current.abort();let e=new AbortController;k.current=e,E(`testing`),O(``),i({baseUrl:a,apiKey:A.current.trim(),api:o,authHeader:s,providerId:c,mode:`completion`,modelId:m},e.signal).then(t=>{e.signal.aborted||(t.status===`ok`?(E(`ok`),O(h(`llm.deepValidateOk`))):(E(`error`),t.status===`quota_exceeded`?O(h(`llm.deepQuotaExceeded`)):t.status===`model_not_found`?O(h(`llm.deepModelNotFound`)):O(t.message||h(`llm.keyWarning`))))}).catch(t=>{t.name===`AbortError`||e.signal.aborted||(E(`error`),O(t.message||h(`llm.keyWarning`)))})},[a,o,s,c,m,h]);(0,d.useEffect)(()=>()=>{k.current?.abort()},[]);let L=(0,d.useRef)(u);L.current=u,(0,d.useEffect)(()=>{g===`valid`&&_.length>0&&L.current&&L.current(_)},[g,_]);let R=(0,d.useRef)(p);R.current=p,(0,d.useEffect)(()=>{R.current?.(g)},[g]);let z=g===`valid`;return(0,f.jsxs)(`div`,{children:[(0,f.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,f.jsx)(`div`,{className:`flex-1`,onBlur:P,children:(0,f.jsx)(v,{value:e,saved:t,onChange:M,placeholder:l,onPaste:N})}),(0,f.jsx)(`button`,{type:`button`,onClick:F,disabled:g===`validating`||!e.trim(),className:`shrink-0 px-3 py-2 text-xs font-medium rounded-md border border-[var(--border)] bg-[var(--input-bg)] text-foreground hover:bg-[var(--hover-bg)] disabled:opacity-50 disabled:cursor-not-allowed transition-colors`,children:h(g===`validating`?`llm.validating`:`llm.fetchModelsBtn`)})]}),(0,f.jsx)(T,{state:g,rawStatus:b,message:y,modelCount:_.length,t:h}),z&&(0,f.jsxs)(`div`,{className:`mt-2 flex items-center gap-2`,children:[(0,f.jsx)(`button`,{type:`button`,onClick:I,disabled:C===`testing`||!m,className:`shrink-0 px-2.5 py-1 text-[11px] font-medium rounded border border-[var(--border)] bg-[var(--input-bg)] text-foreground hover:bg-[var(--hover-bg)] disabled:opacity-50 disabled:cursor-not-allowed transition-colors`,children:h(C===`testing`?`llm.deepValidating`:`llm.deepValidateBtn`)}),C===`idle`&&!m&&(0,f.jsx)(`span`,{className:`text-[11px] text-muted`,children:h(`llm.deepSelectModel`)}),C===`idle`&&m&&(0,f.jsx)(`span`,{className:`text-[11px] text-muted`,children:h(`llm.deepValidateHint`)}),C===`ok`&&(0,f.jsxs)(`span`,{className:`text-[11px] text-green-500`,children:[`✅ `,D]}),C===`error`&&(0,f.jsxs)(`span`,{className:`text-[11px] text-red-400`,children:[`❌ `,D]})]})]})}export{v as a,x as c,l as d,y as i,m as l,p as n,S as o,_ as r,b as s,E as t,u};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./vendor-i18n-Df8aUdv8.js";import{l as r,t as i}from"./vendor-react-0L0rjmYG.js";import{Et as a,Pt as o,dt as s,ft as c,kt as l,nt as u,q as d}from"./api-C70Gt678.js";import{a as f,g as p,h as m,r as h,y as g}from"./index-Bs6DSbiR.js";import{t as _}from"./usePolling-D4IDOQd_.js";var v=e(t(),1),y=i();function b(e){if(!e)return`-`;let t=Math.floor(e/86400),n=Math.floor(e%86400/3600),r=Math.floor(e%3600/60);return t>0?`${t}d ${n}h`:n>0?`${n}h ${r}m`:`${r}m`}function x({status:e}){let{t}=n(),r={running:{cls:`bg-emerald-500/10 text-emerald-400 border border-emerald-500/20`,labelKey:`status.running`},pending:{cls:`bg-amber-500/10 text-amber-400 border border-amber-500/20`,labelKey:`status.starting`},failed:{cls:`bg-red-500/10 text-red-400 border border-red-500/20`,labelKey:`status.failed`},dead:{cls:`bg-red-500/10 text-red-400 border border-red-500/20`,labelKey:`status.crashed`}}[e]||{cls:`bg-[var(--card)] text-muted border border-[var(--border)]`,labelKey:`status.stopped`};return(0,y.jsx)(`span`,{className:`inline-flex items-center text-xs px-2 py-0.5 rounded-full font-medium ${r.cls}`,children:t(r.labelKey)})}var S=[{key:`localInference`,labelKey:`capability.localInference`,cls:`bg-emerald-500/10 text-emerald-400 border-emerald-500/20`},{key:`knowledgeBase`,labelKey:`capability.knowledgeBase`,cls:`bg-indigo-500/10 text-indigo-400 border-indigo-500/20`},{key:`files`,labelKey:`capability.files`,cls:`bg-amber-500/10 text-amber-400 border-amber-500/20`},{key:`search`,labelKey:`capability.search`,cls:`bg-sky-500/10 text-sky-400 border-sky-500/20`},{key:`browser`,labelKey:`capability.browser`,cls:`bg-violet-500/10 text-violet-400 border-violet-500/20`},{key:`aiWebUi`,labelKey:`capability.aiWebUi`,cls:`bg-cyan-500/10 text-cyan-400 border-cyan-500/20`},{key:`webUi`,labelKey:`capability.webUi`,cls:`bg-slate-500/10 text-muted border-[var(--border)]`}];function C(e){let t=Array.isArray(e?.provides)?e.provides:[],n=new Set(t.map(e=>String(e?.capability??``).toLowerCase()).filter(Boolean)),r=new Set(t.map(e=>String(e?.kind??``).toLowerCase()).filter(Boolean));if(n.has(`llm-agent`))return[];let i=e=>{for(let t of n)if(e(t))return!0;return!1},a=e=>r.has(e),o=new Set;return(a(`llm`)||i(e=>e===`llm-ollama`||e===`ollama-api`))&&o.add(`localInference`),(a(`knowledge`)||i(e=>e.startsWith(`knowledge-`)||e.includes(`anythingllm`)||e.includes(`weknora`)))&&o.add(`knowledgeBase`),(a(`files`)||i(e=>e.startsWith(`files-`)||e.includes(`filebrowser`)))&&o.add(`files`),(a(`search`)||i(e=>e===`search`||e.startsWith(`search-`)))&&o.add(`search`),(a(`browser`)||i(e=>e===`browser`||e.startsWith(`browser-`)||e.startsWith(`web-browserless`)||e.startsWith(`playwright`)))&&o.add(`browser`),i(e=>e.includes(`openwebui`))&&o.add(`aiWebUi`),!o.size&&i(e=>e.startsWith(`web-`)||e.endsWith(`-web`)||e.endsWith(`-dashboard`))&&o.add(`webUi`),S.filter(e=>o.has(e.key))}function w(e){let t=e?.upgrade;return t?.updateAvailable===!0&&typeof t.currentVersion==`string`&&typeof t.latestVersion==`string`?t:null}function T(){let{t:e}=n([`dashboard`,`common`]),[t,i]=(0,v.useState)([]),[S,T]=(0,v.useState)(null),[E,D]=(0,v.useState)(``),[O,k]=(0,v.useState)(``),[A,j]=(0,v.useState)(!1),M=r(),{showToast:N}=h(),P=()=>{u().then(e=>{i(e),k(``)}).catch(t=>k(t.message||e(`common:error.loadFailed`))),d().then(T).catch(()=>{})};_(P,1e4);let F=async()=>{if(window.confirm(e(`engine.restartConfirm`))){j(!0);try{await s(),N(e(`engine.restarted`),`success`),setTimeout(P,2e3)}catch(t){N(t.message||e(`engine.restartFailed`),`error`)}finally{j(!1)}}},I=async(t,n,r)=>{t.stopPropagation(),D(`${r}-${n}`);try{let t=null;n===`start`&&(t=await a(r,`dashboard`)),n===`stop`&&(t=await l(r,`dashboard`)),n===`restart`&&(t=await c(r,`dashboard`)),N(e(`common:action.${n}Done`),`success`);let i=t?.port_allocation;i&&typeof i.from==`number`&&typeof i.to==`number`&&i.from!==i.to&&N(e(`common:toast.portReallocated`,{defaultValue:`端口 {{from}} 被占用,已自动切换到 {{to}}`,from:i.from,to:i.to}),`info`),setTimeout(P,1e3)}catch(t){N(t.message||e(`common:error.operationFailed`),`error`)}finally{D(``)}},L=async(t,n)=>{t.stopPropagation(),D(`${n.id}-upgrade`);try{await o(n.id,`dashboard`),N(e(`appUpgrade.started`,{name:n.name||n.id}),`success`),setTimeout(P,1500)}catch(t){N(t.message||e(`appUpgrade.failed`),`error`)}finally{D(``)}},R=t.filter(e=>e.service?.status===`running`).length,z=t.filter(e=>w(e)),B=z[0]||null,V=B?w(B):null,H=!!S&&S.disk.percent>90,U=S?[{label:e(`stats.runningInstances`),value:`${R} / ${t.length}`,sub:S.nomad_running?e(`stats.engineRunning`):e(`stats.engineStopped`),subColor:S.nomad_running?`text-emerald-400`:`text-red-400`,icon:(0,y.jsxs)(`svg`,{className:`w-4 h-4`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.5,children:[(0,y.jsx)(`rect`,{x:`2`,y:`3`,width:`20`,height:`14`,rx:`2`}),(0,y.jsx)(`line`,{x1:`8`,y1:`21`,x2:`16`,y2:`21`}),(0,y.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12`,y2:`21`})]}),iconColor:`text-[#0066FF]`,glowColor:`rgba(0,102,255,0.12)`,accent:`border-l-2 border-l-[#0066FF]`},{label:e(`stats.cpu`),value:`${S.cpu_percent}%`,sub:S.temperature?`${S.temperature}°C`:null,icon:(0,y.jsxs)(`svg`,{className:`w-4 h-4`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.5,children:[(0,y.jsx)(`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`}),(0,y.jsx)(`rect`,{x:`9`,y:`9`,width:`6`,height:`6`}),(0,y.jsx)(`line`,{x1:`9`,y1:`2`,x2:`9`,y2:`4`}),(0,y.jsx)(`line`,{x1:`15`,y1:`2`,x2:`15`,y2:`4`}),(0,y.jsx)(`line`,{x1:`9`,y1:`20`,x2:`9`,y2:`22`}),(0,y.jsx)(`line`,{x1:`15`,y1:`20`,x2:`15`,y2:`22`}),(0,y.jsx)(`line`,{x1:`20`,y1:`9`,x2:`22`,y2:`9`}),(0,y.jsx)(`line`,{x1:`20`,y1:`15`,x2:`22`,y2:`15`}),(0,y.jsx)(`line`,{x1:`2`,y1:`9`,x2:`4`,y2:`9`}),(0,y.jsx)(`line`,{x1:`2`,y1:`15`,x2:`4`,y2:`15`})]}),iconColor:`text-[#0066FF]`,glowColor:`rgba(0,102,255,0.12)`,accent:`border-l-2 border-l-[#0066FF]`,warn:S.cpu_percent>90},{label:e(`stats.memory`),value:`${S.memory.percent}%`,sub:`${S.memory.used_mb}MB / ${S.memory.total_mb}MB`,icon:(0,y.jsx)(`svg`,{className:`w-4 h-4`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.5,children:(0,y.jsx)(`path`,{d:`M6 19v-8m4 8v-4m4 4v-6m4 6v-2`})}),iconColor:`text-[#00D4AA]`,glowColor:`rgba(0,212,170,0.12)`,accent:`border-l-2 border-l-[#00D4AA]`},{label:e(`stats.disk`),value:`${S.disk.percent}%`,sub:`${S.disk.used_gb}GB / ${S.disk.total_gb}GB`,icon:(0,y.jsxs)(`svg`,{className:`w-4 h-4`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.5,children:[(0,y.jsx)(`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`}),(0,y.jsx)(`path`,{d:`M3 5v14a9 3 0 0018 0V5`}),(0,y.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`22`})]}),iconColor:H?`text-red-400`:`text-[#0066FF]`,glowColor:H?`rgba(239,68,68,0.12)`:`rgba(0,102,255,0.12)`,accent:H?`border-l-2 border-l-red-400`:`border-l-2 border-l-[#0066FF]`,warn:H}]:[];return(0,y.jsxs)(`div`,{className:`p-4 2xl:px-6 2xl:py-3 max-w-5xl xl:max-w-6xl 2xl:max-w-none mx-auto`,children:[(0,y.jsxs)(`div`,{className:`mb-4 flex items-center justify-between`,children:[(0,y.jsxs)(`div`,{children:[(0,y.jsx)(`h1`,{className:`text-base font-semibold text-foreground`,children:e(`title`)}),(0,y.jsx)(`p`,{className:`text-xs text-muted mt-0.5`,children:e(`subtitle`)})]}),(0,y.jsx)(f,{})]}),B&&V&&(0,y.jsxs)(`div`,{className:`mb-4 border border-[#0066FF]/25 bg-[#0066FF]/10 rounded-lg px-4 py-3 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3`,children:[(0,y.jsxs)(`div`,{className:`min-w-0`,children:[(0,y.jsx)(`div`,{className:`text-sm font-medium text-foreground`,children:e(`appUpgrade.title`)}),(0,y.jsx)(`div`,{className:`text-xs text-muted mt-0.5`,children:e(`appUpgrade.description`,{name:B.name||B.id,currentVersion:V.currentVersion,latestVersion:V.latestVersion,count:z.length})})]}),(0,y.jsx)(`button`,{onClick:e=>L(e,B),disabled:!!E,className:`shrink-0 bg-[#0066FF] text-white px-3 py-1.5 rounded-md text-xs font-medium hover:bg-[#0066FF]/90 disabled:opacity-40 disabled:cursor-not-allowed transition-all duration-200`,children:E===`${B.id}-upgrade`?e(`appUpgrade.upgrading`):e(`appUpgrade.action`)})]}),S&&(0,y.jsx)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-3 mb-4`,children:U.map(e=>(0,y.jsxs)(`div`,{className:`bg-[var(--card)] border border-[var(--border)] rounded-lg p-3 relative overflow-hidden hover:border-[var(--border-hover)] hover:bg-[var(--card-hover)] transition-all duration-200 ${e.accent}`,children:[(0,y.jsx)(`div`,{className:`absolute top-0 right-0 w-16 h-16 rounded-full opacity-60 pointer-events-none`,style:{background:`radial-gradient(circle, ${e.glowColor} 0%, transparent 70%)`}}),(0,y.jsxs)(`div`,{className:`flex items-center justify-between mb-1.5`,children:[(0,y.jsx)(`span`,{className:`text-[11px] text-muted`,children:e.label}),(0,y.jsx)(`span`,{className:`${e.iconColor} opacity-80`,children:e.icon})]}),(0,y.jsx)(`div`,{className:`text-lg font-semibold ${e.warn?`text-red-400`:`text-foreground`}`,children:e.value}),e.sub&&(0,y.jsx)(`div`,{className:`text-[11px] mt-0.5 truncate ${e.subColor??`text-muted`}`,children:e.sub})]},e.label))}),(0,y.jsxs)(`div`,{className:`bg-[var(--card)] border border-[var(--border)] rounded-xl overflow-hidden`,children:[(0,y.jsxs)(`div`,{className:`px-4 py-2.5 border-b border-[var(--border)] flex items-center justify-between`,children:[(0,y.jsx)(`h2`,{className:`text-sm font-medium text-foreground`,children:e(`instances.title`)}),(0,y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,y.jsx)(`button`,{onClick:()=>M(`/instances/new`),className:`bg-[#0066FF] text-white px-3 py-1.5 rounded-md text-xs font-medium hover:bg-[#0066FF]/90 transition-all duration-200 shadow-[0_0_12px_rgba(0,102,255,0.3)]`,children:e(`instances.new`)}),(0,y.jsx)(`button`,{onClick:()=>M(`/instances/new?import=true`),className:`px-3 py-1.5 rounded-md text-xs font-medium text-muted border border-[var(--border)] bg-[var(--card)] hover:bg-[var(--card-hover)] hover:text-foreground transition-all duration-200`,children:e(`instances.import`)}),(0,y.jsxs)(`button`,{onClick:F,disabled:A,title:e(`instances.restartEngineTitle`),className:`flex items-center gap-1.5 px-2.5 py-1.5 rounded-md text-xs font-medium text-red-400 border border-red-500/20 bg-red-500/5 hover:bg-red-500/15 disabled:opacity-40 disabled:cursor-not-allowed transition-all duration-200`,children:[(0,y.jsx)(p,{className:`w-3 h-3 ${A?`animate-spin`:``}`}),e(A?`instances.restarting`:`instances.restartEngine`)]})]})]}),O?(0,y.jsxs)(`div`,{className:`text-center py-12 px-4`,children:[(0,y.jsx)(`p`,{className:`text-sm text-red-400 mb-2`,children:e(`instances.loadError`,{error:O})}),(0,y.jsx)(`button`,{onClick:P,className:`text-xs text-muted hover:text-foreground underline`,children:e(`common:action.retry`)})]}):t.length===0?(0,y.jsxs)(`div`,{className:`text-center py-12 px-4`,children:[(0,y.jsx)(`div`,{className:`text-muted opacity-40 mb-3`,children:(0,y.jsxs)(`svg`,{className:`w-8 h-8 mx-auto`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,y.jsx)(`rect`,{x:`2`,y:`3`,width:`20`,height:`14`,rx:`2`}),(0,y.jsx)(`line`,{x1:`8`,y1:`21`,x2:`16`,y2:`21`}),(0,y.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12`,y2:`21`})]})}),(0,y.jsx)(`p`,{className:`text-sm text-muted mb-1`,children:e(`instances.empty`)}),(0,y.jsx)(`p`,{className:`text-xs text-muted opacity-60`,children:e(`instances.emptyHint`)})]}):(0,y.jsxs)(`table`,{className:`w-full text-sm`,children:[(0,y.jsx)(`thead`,{children:(0,y.jsxs)(`tr`,{className:`text-xs text-muted border-b border-[var(--border)]`,children:[(0,y.jsx)(`th`,{className:`text-left font-medium px-4 py-2`,children:e(`table.name`)}),(0,y.jsx)(`th`,{className:`text-left font-medium px-4 py-2`,children:e(`table.status`)}),(0,y.jsx)(`th`,{className:`text-left font-medium px-4 py-2 hidden sm:table-cell`,children:e(`table.uptime`)}),(0,y.jsx)(`th`,{className:`text-left font-medium px-4 py-2 hidden md:table-cell`,children:e(`table.memory`)}),(0,y.jsx)(`th`,{className:`text-left font-medium px-4 py-2 hidden lg:table-cell`,children:e(`table.localCapability`)}),(0,y.jsx)(`th`,{className:`text-right font-medium px-4 py-2`,children:e(`table.actions`)})]})}),(0,y.jsx)(`tbody`,{className:`divide-y divide-[var(--border)]`,children:t.map(t=>{let n=t.service?.status||`stopped`,r=n===`running`,i=C(t),a=w(t);return(0,y.jsxs)(`tr`,{className:`hover:bg-[var(--card-hover)] cursor-pointer transition-colors duration-150`,onClick:()=>M(`/instances/${t.id}`),children:[(0,y.jsxs)(`td`,{className:`px-4 py-2.5`,children:[(0,y.jsx)(`div`,{className:`font-medium text-foreground`,children:t.name}),(0,y.jsxs)(`div`,{className:`text-xs text-muted font-mono flex items-center gap-2`,children:[(0,y.jsx)(`span`,{children:t.id}),a&&(0,y.jsx)(`span`,{className:`rounded border border-[#0066FF]/25 bg-[#0066FF]/10 px-1.5 py-0.5 text-[10px] font-sans text-[#0066FF]`,children:e(`appUpgrade.badge`,{version:a.latestVersion})})]})]}),(0,y.jsx)(`td`,{className:`px-4 py-2.5`,children:(0,y.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,y.jsx)(x,{status:n}),t.auto_backup?.enabled&&(0,y.jsx)(`span`,{className:`text-xs leading-none ${t.auto_backup.last_backup_ok===!1?`text-red-400`:`text-green-400`}`,title:t.auto_backup.last_backup_ok===!1?`Backup failed`:`Backup OK`,children:t.auto_backup.last_backup_ok===!1?`⚠`:`●`})]})}),(0,y.jsx)(`td`,{className:`px-4 py-2.5 text-muted hidden sm:table-cell font-mono text-xs`,children:r?b(t.service.uptime):`-`}),(0,y.jsx)(`td`,{className:`px-4 py-2.5 text-muted hidden md:table-cell font-mono text-xs`,children:t.service?.memory_mb?`${t.service.memory_mb} MB`:`-`}),(0,y.jsx)(`td`,{className:`px-4 py-2.5 hidden lg:table-cell`,children:i.length?(0,y.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:i.map(t=>(0,y.jsx)(`span`,{className:`inline-flex items-center rounded-full border px-2 py-0.5 text-[11px] font-medium ${t.cls}`,children:e(t.labelKey)},t.key))}):(0,y.jsx)(`span`,{className:`text-muted text-xs`,children:`-`})}),(0,y.jsx)(`td`,{className:`px-4 py-2.5 text-right`,children:(0,y.jsx)(`div`,{className:`inline-flex items-center gap-1`,children:r||n===`pending`?(0,y.jsxs)(y.Fragment,{children:[a&&(0,y.jsx)(`button`,{title:e(`appUpgrade.action`),onClick:e=>L(e,t),disabled:!!E,className:`px-2 py-1 rounded-md text-xs text-[#0066FF] border border-[#0066FF]/25 bg-[#0066FF]/10 hover:bg-[#0066FF]/15 disabled:opacity-30 transition-colors duration-150`,children:E===`${t.id}-upgrade`?e(`appUpgrade.shortUpgrading`):e(`appUpgrade.shortAction`)}),(0,y.jsx)(`button`,{title:e(`common:action.restart`),onClick:e=>I(e,`restart`,t.id),disabled:!!E,className:`p-1.5 rounded-md text-muted hover:text-foreground hover:bg-[var(--card-hover)] disabled:opacity-30 transition-colors duration-150`,children:(0,y.jsx)(p,{className:`w-3.5 h-3.5`})}),(0,y.jsx)(`button`,{title:e(`common:action.stop`),onClick:e=>I(e,`stop`,t.id),disabled:!!E,className:`p-1.5 rounded-md text-muted hover:text-red-400 hover:bg-red-500/10 disabled:opacity-30 transition-colors duration-150`,children:(0,y.jsx)(g,{className:`w-3.5 h-3.5`})})]}):(0,y.jsxs)(y.Fragment,{children:[a&&(0,y.jsx)(`button`,{title:e(`appUpgrade.action`),onClick:e=>L(e,t),disabled:!!E,className:`px-2 py-1 rounded-md text-xs text-[#0066FF] border border-[#0066FF]/25 bg-[#0066FF]/10 hover:bg-[#0066FF]/15 disabled:opacity-30 transition-colors duration-150`,children:E===`${t.id}-upgrade`?e(`appUpgrade.shortUpgrading`):e(`appUpgrade.shortAction`)}),(0,y.jsx)(`button`,{title:e(`common:action.start`),onClick:e=>I(e,`start`,t.id),disabled:!!E,className:`p-1.5 rounded-md text-muted hover:text-emerald-400 hover:bg-emerald-500/10 disabled:opacity-30 transition-colors duration-150`,children:(0,y.jsx)(m,{className:`w-3.5 h-3.5`})})]})})})]},t.id)})})]})]})]})}export{T as default};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t}from"./vendor-i18n-Df8aUdv8.js";import{t as n}from"./vendor-react-0L0rjmYG.js";import{r}from"./api-C70Gt678.js";var i=e(t(),1),a=n(),o=`hermes-chat:`,s=`hermes-chat-epoch:`,c=10,l=10;function u(e,t){if(!t)return null;try{let n=localStorage.getItem(s+e),r=localStorage.getItem(o+e)!=null;(n!==null&&n!==t||n===null&&r)&&localStorage.removeItem(o+e),n!==t&&localStorage.setItem(s+e,t)}catch{}return t}function d(e,t){u(e,t);try{let t=localStorage.getItem(o+e);if(!t)return[];let n=JSON.parse(t);return Array.isArray(n)?n.filter(e=>e&&(e.role===`user`||e.role===`assistant`||e.role===`system`)).map(e=>({role:e.role,content:String(e.content??``),error:!!e.error})):[]}catch{return[]}}function f({instanceId:e,instanceEpoch:t=null}){let[n,s]=(0,i.useState)(()=>d(e,t)),[u,f]=(0,i.useState)(()=>Math.min(c,n.length||c)),[p,m]=(0,i.useState)(``),[h,g]=(0,i.useState)(!1),[_,v]=(0,i.useState)(!1),y=(0,i.useRef)(null),b=(0,i.useRef)(n.length),x=(0,i.useRef)(null),S=n.slice(-u),C=u<n.length;(0,i.useEffect)(()=>{try{let t=n.filter(e=>!e.pending).slice(-500);t.length===0?localStorage.removeItem(o+e):localStorage.setItem(o+e,JSON.stringify(t))}catch{}},[e,n]),(0,i.useEffect)(()=>{let n=d(e,t);s(n),f(Math.min(c,n.length||c))},[e,t]),(0,i.useEffect)(()=>{let e=y.current;if(e){if(x.current){let t=x.current.prevScrollHeight;e.scrollTop=e.scrollHeight-t,x.current=null;return}n.length>=b.current&&(e.scrollTop=e.scrollHeight),b.current=n.length}},[n,u]);let w=()=>{if(!C||_)return;v(!0);let e=y.current;e&&(x.current={prevScrollHeight:e.scrollHeight}),f(e=>Math.min(e+l,n.length)),requestAnimationFrame(()=>v(!1))},T=()=>{let e=y.current;!e||!C||_||e.scrollTop<40&&w()},E=async()=>{let t=p.trim();if(!t||h)return;m(``),g(!0);let i={role:`user`,content:t},a={role:`assistant`,content:``,pending:!0},o=[...n,i,a];s(o);let c=o.slice(0,-1).slice(-20).map(e=>({role:e.role,content:e.content}));try{let t=await r(e,{model:`hermes-agent`,messages:c,max_tokens:512}),n=t?.choices?.[0]?.message?.content??t?.error?.message??`(empty response)`;s(e=>e.map((t,r)=>r===e.length-1?{role:`assistant`,content:String(n)}:t))}catch(e){s(t=>t.map((n,r)=>r===t.length-1?{role:`assistant`,content:e?.message||`(request failed)`,error:!0}:n))}finally{g(!1)}};return(0,a.jsxs)(`div`,{className:`overflow-hidden rounded-[22px] border border-[var(--border)] bg-[var(--card)] shadow-[0_18px_48px_rgba(15,23,42,0.06)] flex flex-col`,style:{height:`calc(100vh - 160px)`,minHeight:`500px`},children:[(0,a.jsxs)(`div`,{className:`px-5 py-3 border-b border-[var(--border)] flex items-center justify-between`,children:[(0,a.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,a.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-full bg-emerald-500 shadow-[0_0_6px_rgba(16,185,129,0.7)]`}),(0,a.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:`Chat`}),(0,a.jsx)(`span`,{className:`text-[10px] text-muted font-mono`,children:`inline → /v1/chat/completions`})]}),n.length>0&&(0,a.jsx)(`button`,{onClick:()=>{s([]),f(c)},className:`text-xs text-muted hover:text-foreground transition-colors`,disabled:h,children:`清空对话`})]}),(0,a.jsxs)(`div`,{ref:y,onScroll:T,className:`flex-1 overflow-y-auto p-5 space-y-3`,children:[C&&(0,a.jsx)(`div`,{className:`flex justify-center py-1`,children:(0,a.jsx)(`button`,{onClick:w,disabled:_,className:`text-xs text-muted hover:text-foreground transition-colors`,children:_?`加载中...`:`向上滚动或点击加载更早的 ${Math.min(l,n.length-u)} 条 (共 ${n.length} 条)`})}),n.length===0?(0,a.jsxs)(`div`,{className:`h-full flex flex-col items-center justify-center text-center`,children:[(0,a.jsx)(`div`,{className:`text-4xl mb-3 opacity-40`,children:`⚕`}),(0,a.jsx)(`div`,{className:`text-sm text-foreground/70 font-medium mb-1`,children:`和 Hermes agent 开始对话`}),(0,a.jsx)(`div`,{className:`text-xs text-muted max-w-md`,children:`消息会走完整的 agent loop(skills + tools + memory), 经 JishuShell LLM 代理转发到上游模型。首次请求因冷启动约 20-30 秒。`})]}):S.map((e,t)=>(0,a.jsx)(`div`,{className:`flex ${e.role===`user`?`justify-end`:`justify-start`}`,children:(0,a.jsx)(`div`,{className:`max-w-[80%] rounded-2xl px-4 py-2.5 text-sm whitespace-pre-wrap break-words ${e.role===`user`?`bg-[#0066FF] text-white`:e.error?`bg-red-500/10 border border-red-500/20 text-red-400`:`bg-[var(--input-bg)] border border-[var(--border)] text-foreground`}`,children:e.pending?(0,a.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-muted`,children:[(0,a.jsx)(`span`,{className:`w-3 h-3 border-2 border-[#0066FF]/30 border-t-[#0066FF] rounded-full animate-spin`}),`agent 正在思考...`]}):e.content})},n.length-S.length+t))]}),(0,a.jsx)(`div`,{className:`p-4 border-t border-[var(--border)]`,children:(0,a.jsxs)(`div`,{className:`flex gap-2`,children:[(0,a.jsx)(`textarea`,{value:p,onChange:e=>m(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),E())},placeholder:`输入消息 (Enter 发送,Shift+Enter 换行)`,rows:2,disabled:h,className:`flex-1 bg-[var(--input-bg)] border border-[var(--border)] rounded-lg px-3 py-2 text-sm text-foreground placeholder-[var(--muted)] focus:outline-none focus:ring-1 focus:ring-[#0066FF]/60 focus:border-[#0066FF]/60 resize-none`}),(0,a.jsx)(`button`,{onClick:E,disabled:!p.trim()||h,className:`self-end px-4 py-2 bg-[#0066FF] text-white rounded-lg text-sm font-medium hover:bg-[#0066FF]/90 disabled:opacity-40 transition-all duration-200`,children:h?(0,a.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,a.jsx)(`span`,{className:`w-3 h-3 border-2 border-white/30 border-t-white rounded-full animate-spin`}),`发送中`]}):`发送`})]})})]})}export{f as HermesChatPanel};
@@ -0,0 +1,4 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./vendor-i18n-Df8aUdv8.js";import{r,t as i}from"./vendor-react-0L0rjmYG.js";import{F as a,j as o,lt as ee}from"./api-C70Gt678.js";import{a as s,i as c,o as l,r as u,s as d,t as te,u as f}from"./ApiKeyField-Ce5d1xna.js";import{n as p,t as m}from"./WeixinLoginPanel-B765Xz4C.js";var h=e(t(),1),g=i(),ne=new Set([`feishu`,`weixin`]),_={telegram:{label:`Telegram`,fields:[{key:`token`,envKey:`TELEGRAM_BOT_TOKEN`,label:`Bot Token`,secret:!0,hint:`从 @BotFather 获取`},{key:`allowed`,envKey:`TELEGRAM_ALLOWED_USERS`,label:`Allowed Users`,hint:`逗号分隔 user id,留空=所有人`}]},discord:{label:`Discord`,fields:[{key:`token`,envKey:`DISCORD_BOT_TOKEN`,label:`Bot Token`,secret:!0,hint:`从 Discord Developer Portal`}]},slack:{label:`Slack`,fields:[{key:`bot`,envKey:`SLACK_BOT_TOKEN`,label:`Bot Token (xoxb-…)`,secret:!0,placeholder:`xoxb-...`},{key:`app`,envKey:`SLACK_APP_TOKEN`,label:`App Token (xapp-…)`,secret:!0,placeholder:`xapp-...`}]},whatsapp:{label:`WhatsApp`,fields:[{key:`token`,envKey:`WHATSAPP_TOKEN`,label:`Access Token`,secret:!0}]},signal:{label:`Signal`,fields:[{key:`account`,envKey:`SIGNAL_ACCOUNT`,label:`Phone (E.164)`,placeholder:`+8613800138000`}]},email:{label:`Email (SMTP)`,fields:[{key:`host`,envKey:`SMTP_HOST`,label:`SMTP Host`,placeholder:`smtp.gmail.com`},{key:`port`,envKey:`SMTP_PORT`,label:`SMTP Port`,placeholder:`587`},{key:`user`,envKey:`SMTP_USER`,label:`SMTP User`},{key:`pass`,envKey:`SMTP_PASSWORD`,label:`SMTP Password`,secret:!0}]}};function re(e){let t=new Map;for(let n of e.split(`
2
+ `)){let e=n.trim();if(!e||e.startsWith(`#`))continue;let r=e.indexOf(`=`);if(r<0)continue;let i=e.slice(0,r).trim(),a=e.slice(r+1).trim();(a.startsWith(`"`)&&a.endsWith(`"`)||a.startsWith(`'`)&&a.endsWith(`'`))&&(a=a.slice(1,-1)),t.set(i,a)}return t}function v(e,t){let n=e.split(`
3
+ `),r=new Set,i=[];for(let e of n){let n=e.trim();if(!n||n.startsWith(`#`)){i.push(e);continue}let a=n.indexOf(`=`);if(a<0){i.push(e);continue}let o=n.slice(0,a).trim();if(o in t){r.add(o);let e=t[o];if(e===``)continue;i.push(`${o}=${e}`)}else i.push(e)}for(let[e,n]of Object.entries(t))!r.has(e)&&n!==``&&i.push(`${e}=${n}`);return i.join(`
4
+ `)}function y({config:e,onChange:t,instanceId:i,capabilities:y}){let{t:b}=n([`instance`,`common`]),x=String(e?.yaml||``),S=String(e?.env||``),C=(0,h.useMemo)(()=>re(S),[S]),w=((e?.[`x-jishushell`]||{}).proxy||{}).upstream||{},T=w.providerId||``,E=f.find(e=>e.id===T),D=w.models||[],O=E?E.models.map(e=>({id:e.id,name:e.name,contextWindow:e.contextWindow})):D.map(e=>({id:e.id,name:e.name||e.id,contextWindow:e.contextWindow||0})),k=w.selectedModelId||O[0]?.id||``,A=D.find(e=>e.id===k)||O.find(e=>e.id===k)||{id:``,name:``,contextWindow:0},[j,ie]=(0,h.useState)(null),[M,N]=(0,h.useState)(!1),[P,F]=(0,h.useState)(!(w.hasApiKey&&T)),[I,L]=(0,h.useState)([]),[R,z]=(0,h.useState)([]),[B,V]=(0,h.useState)(!1);(0,h.useEffect)(()=>{a().then(ie).catch(()=>{})},[]);let H=n=>{let r=JSON.parse(JSON.stringify(e));r[`x-jishushell`]||={},r[`x-jishushell`].proxy||={},r[`x-jishushell`].proxy.upstream={...r[`x-jishushell`].proxy.upstream||{},...n},t(r)},U=(e,t)=>H({[e]:t}),ae=n=>{let r=f.find(e=>e.id===n);if(!r){H({providerId:``});return}if(w.apiKey&&!window.confirm(b(`configForm.switchProviderConfirm`,{defaultValue:`切换 provider 会清空当前 API key,确定继续?`})))return;let i=JSON.parse(JSON.stringify(e));i[`x-jishushell`]||={},i[`x-jishushell`].proxy||={},i[`x-jishushell`].proxy.upstream={providerId:r.id,baseUrl:r.baseUrl,api:r.api,authHeader:r.authHeader===!0,headers:r.headers||{},models:r.models.map(e=>({id:e.id,name:e.name,contextWindow:e.contextWindow})),selectedModelId:r.models[0]?.id||``,apiKey:``,hasApiKey:!1,clearApiKey:!1},t(i)},W=e=>U(`selectedModelId`,e),G=n=>{let r=[...D],i=r.findIndex(e=>e.id===k),a={...A,...n};i>=0?r[i]=a:r.push(a);let o=JSON.parse(JSON.stringify(e));o[`x-jishushell`]||={},o[`x-jishushell`].proxy||={},o[`x-jishushell`].proxy.upstream={...o[`x-jishushell`].proxy.upstream||{},models:r,selectedModelId:typeof n.id==`string`&&n.id?n.id:k},t(o)},oe=async e=>{if(!T)return;let t=f.find(e=>e.id===T);if(!t)return;let n=[`ollama`,`vllm`,`sglang`].includes(T)&&w.baseUrl?String(w.baseUrl):t.baseUrl,r=t.authHeader?`x-api-key`:`Authorization`,i=e??(w.apiKey||``);V(!0);try{let{models:e}=await ee(n,i,r,t.id,t.api);z(e),e.length&&!k&&W(e[0].id)}catch{}finally{V(!1)}},K=Array.isArray(y?.messagingPlatforms)?y.messagingPlatforms:[],q=(0,h.useMemo)(()=>K.filter(e=>!ne.has(e)),[K]),J=(0,h.useMemo)(()=>{let e=[];for(let t of q){let n=_[t];n&&n.fields.some(e=>(C.get(e.envKey)||``).trim()!==``)&&e.push(t)}return e},[q,C]),Y=(0,h.useMemo)(()=>Array.from(new Set([...J,...I])),[J,I]),X=q.filter(e=>!Y.includes(e)&&_[e]),Z=C.get(`FEISHU_APP_ID`)||``,se=(0,h.useMemo)(()=>x.match(/platforms:\s*[\s\S]*?feishu:\s*[\s\S]*?domain_name:\s*["']?(\w+)["']?/)?.[1]===`lark`?`lark`:`feishu`,[x]),Q=()=>{i&&o(i).then(e=>{e&&t(e)}).catch(()=>{})},$=(n,r)=>{t({...e,format:`yaml+env`,yaml:x,env:v(S,{[n]:r})})},ce=e=>{L(t=>t.includes(e)?t:[...t,e])},le=n=>{let r=_[n];if(!r)return;let i={};r.fields.forEach(e=>{i[e.envKey]=``}),t({...e,format:`yaml+env`,yaml:x,env:v(S,i)}),L(e=>e.filter(e=>e!==n))},ue=n=>t({...e,format:`yaml+env`,yaml:n,env:S}),de=n=>t({...e,format:`yaml+env`,yaml:x,env:n}),fe=[...new Set(f.map(e=>e.group))];return(0,g.jsxs)(`div`,{className:`space-y-4`,children:[(0,g.jsxs)(l,{title:b(`configForm.modelConfig`),children:[(0,g.jsxs)(`div`,{className:`bg-[var(--card)] border border-[var(--border)] rounded-lg p-3 text-sm text-muted`,children:[(0,g.jsx)(`div`,{className:`font-medium text-foreground mb-1`,children:b(`configForm.proxyChain`)}),(0,g.jsx)(`p`,{children:b(`configForm.proxyChainDesc`)}),(0,g.jsxs)(`div`,{className:`mt-2 text-xs text-muted opacity-60 space-y-1`,children:[(0,g.jsxs)(`div`,{children:[`面板全局 provider:`,` `,j?.configured?(0,g.jsxs)(`span`,{className:`font-mono`,children:[j.providerId,j.selectedModelId?` · ${j.selectedModelId}`:``]}):(0,g.jsx)(r,{to:`/settings`,className:`text-amber-400 underline hover:text-amber-300`,children:`未配置`}),` `,(0,g.jsx)(r,{to:`/settings`,className:`text-[#0066FF] hover:text-[#0066FF]/80`,children:`(修改)`})]}),(0,g.jsx)(`div`,{className:`opacity-70`,children:`本实例 API key 留空 → 自动回退全局 key (src/services/llm-proxy/index.ts:137)`})]})]}),!P&&(0,g.jsx)(`button`,{type:`button`,onClick:()=>F(!0),className:`text-xs text-[#0066FF] hover:text-[#0066FF]/80 transition-colors`,children:b(`configForm.editModelConfig`)}),P&&(0,g.jsx)(u,{label:b(`configForm.upstreamProvider`),hint:b(`configForm.upstreamProviderHint`),children:(0,g.jsxs)(d,{value:T,onChange:ae,children:[(0,g.jsx)(`option`,{value:``,children:b(`configForm.selectProvider`)}),!E&&T&&(0,g.jsxs)(`option`,{value:T,children:[T,` `,b(`configForm.custom`)]}),fe.map(e=>(0,g.jsx)(`optgroup`,{label:b(`configForm.providerGroup.${e}`,{defaultValue:e}),children:f.filter(t=>t.group===e).map(e=>(0,g.jsx)(`option`,{value:e.id,children:b(`configForm.providerLabel.${e.id}`,{defaultValue:e.label})},e.id))},e))]})}),P&&![`ollama`,`vllm`,`sglang`].includes(T)&&T&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsxs)(u,{label:b(`configForm.upstreamApiKey`),hint:w.hasApiKey&&!w.clearApiKey?b(`configForm.apiKeyHintSaved`):b(`configForm.apiKeyHintNew`),children:[(0,g.jsx)(te,{value:w.apiKey||``,saved:w.hasApiKey&&!w.clearApiKey,onChange:e=>H({apiKey:e,clearApiKey:!1}),baseUrl:w.baseUrl||f.find(e=>e.id===T)?.baseUrl||``,api:f.find(e=>e.id===T)?.api||``,authHeader:f.find(e=>e.id===T)?.authHeader?`x-api-key`:void 0,providerId:T,placeholder:b(`configForm.enterApiKey`),onModels:e=>{z(e),e.length>0&&!k&&W(e[0].id)},selectedModelId:k}),w.hasApiKey&&(0,g.jsx)(`button`,{type:`button`,onClick:()=>H({apiKey:``,clearApiKey:!w.clearApiKey}),className:`text-xs text-muted hover:text-foreground transition-colors mt-2`,children:w.clearApiKey?b(`configForm.restoreApiKey`):b(`configForm.clearApiKey`)})]}),(0,g.jsx)(u,{label:b(`configForm.selectedModel`),children:(0,g.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,g.jsx)(`div`,{className:`flex-1`,children:(0,g.jsxs)(d,{value:k,onChange:W,children:[(0,g.jsx)(`option`,{value:``,children:b(`configForm.selectModel`)}),O.map(e=>(0,g.jsxs)(`option`,{value:e.id,children:[e.name||e.id,e.contextWindow?` (${Math.round(e.contextWindow/1e3)}K)`:``]},e.id)),R.filter(e=>!O.some(t=>t.id===e.id)).map(e=>(0,g.jsx)(`option`,{value:e.id,children:e.name||e.id},e.id))]})}),(0,g.jsx)(`button`,{type:`button`,onClick:()=>{oe()},disabled:B||!T,className:`px-3 py-2 border border-[var(--border)] text-muted rounded-md text-xs hover:bg-[var(--card-hover)] hover:text-foreground disabled:opacity-40 transition-colors`,children:B?b(`common:label.loading`,{defaultValue:`加载中`}):b(`configForm.fetchModels`,{defaultValue:`拉取模型`})})]})}),(0,g.jsx)(`button`,{type:`button`,onClick:()=>N(!M),className:`text-xs text-muted hover:text-foreground transition-colors`,children:b(M?`configForm.collapseAdvanced`:`configForm.advancedOptions`)}),M&&(0,g.jsxs)(`div`,{className:`space-y-4 border-t border-[var(--border)] pt-4`,children:[(0,g.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-4`,children:[(0,g.jsx)(u,{label:b(`configForm.upstreamBaseUrl`),children:(0,g.jsx)(c,{value:w.baseUrl||``,onChange:e=>U(`baseUrl`,e),placeholder:b(`configForm.baseUrlPlaceholder`),mono:!0})}),(0,g.jsx)(u,{label:b(`configForm.upstreamApiProtocol`),children:(0,g.jsxs)(d,{value:w.api||`openai-completions`,onChange:e=>U(`api`,e),children:[(0,g.jsx)(`option`,{value:`openai-completions`,children:`OpenAI Compatible`}),(0,g.jsx)(`option`,{value:`openai-responses`,children:`OpenAI Responses`}),(0,g.jsx)(`option`,{value:`anthropic-messages`,children:`Anthropic Messages`}),(0,g.jsx)(`option`,{value:`google-generative-ai`,children:`Google Generative AI`}),(0,g.jsx)(`option`,{value:`ollama`,children:`Ollama`})]})})]}),k&&(0,g.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-3 gap-4`,children:[(0,g.jsx)(u,{label:b(`configForm.modelId`),children:(0,g.jsx)(c,{value:A.id||``,onChange:e=>G({id:e}),placeholder:`model-id`,mono:!0})}),(0,g.jsx)(u,{label:b(`configForm.modelName`),children:(0,g.jsx)(c,{value:A.name||``,onChange:e=>G({name:e}),placeholder:`Model Name`})}),(0,g.jsx)(u,{label:b(`configForm.contextWindow`),children:(0,g.jsx)(c,{value:String(A.contextWindow||``),onChange:e=>G({contextWindow:parseInt(e,10)||0}),placeholder:`200000`,mono:!0})})]}),(0,g.jsx)(`div`,{className:`text-xs text-muted bg-[var(--card)] border border-[var(--border)] rounded-md p-3`,children:b(`configForm.proxyNote`)})]})]})]}),K.length>0&&(0,g.jsxs)(l,{title:b(`configForm.imChannelConfig`),children:[(0,g.jsxs)(`p`,{className:`text-xs text-muted`,children:[`Hermes 通过 `,(0,g.jsx)(`code`,{className:`font-mono text-[11px]`,children:`.env`}),` 环境变量读取消息平台凭证。 保存后重启实例生效。`]}),K.includes(`feishu`)&&(0,g.jsxs)(`div`,{className:`border border-[var(--border)] rounded-lg p-4 space-y-3 bg-[var(--card)]`,children:[(0,g.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,g.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:b(`configForm.channel.feishu`,{defaultValue:`飞书 / Lark`})}),(0,g.jsx)(`span`,{className:`text-[11px] text-muted font-mono`,children:`feishu`})]}),(0,g.jsx)(p,{instanceId:i,channelKey:`feishu`,existingAppId:Z||void 0,existingDomain:Z?se:void 0,onConfigured:Q})]}),K.includes(`weixin`)&&(0,g.jsxs)(`div`,{className:`border border-[var(--border)] rounded-lg p-4 space-y-3 bg-[var(--card)]`,children:[(0,g.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,g.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:b(`configForm.channel.weixin`,{defaultValue:`个人微信`})}),(0,g.jsx)(`span`,{className:`text-[11px] text-muted font-mono`,children:`weixin`})]}),(0,g.jsx)(m,{instanceId:i,onConfigured:Q})]}),(0,g.jsx)(`div`,{className:`space-y-3`,children:Y.map(e=>{let t=_[e];return t?(0,g.jsxs)(`div`,{className:`border border-[var(--border)] rounded-lg p-4 space-y-3 bg-[var(--card)]`,children:[(0,g.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,g.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,g.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:t.label}),(0,g.jsx)(`span`,{className:`text-[11px] text-muted font-mono`,children:e})]}),(0,g.jsx)(`button`,{onClick:()=>le(e),className:`text-xs text-red-400 hover:text-red-300 transition-colors`,children:b(`configForm.remove`)})]}),(0,g.jsx)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-4`,children:t.fields.map(e=>{let t=C.get(e.envKey)||``;return(0,g.jsx)(u,{label:e.label,hint:e.hint||`.env: ${e.envKey}`,children:e.secret?(0,g.jsx)(s,{value:t,saved:!!t,onChange:t=>$(e.envKey,t),placeholder:e.placeholder}):(0,g.jsx)(c,{value:t,onChange:t=>$(e.envKey,t),placeholder:e.placeholder,mono:!0})},e.key)})})]},e):null})}),X.length>0&&(0,g.jsxs)(`div`,{className:`pt-2`,children:[(0,g.jsx)(`p`,{className:`text-xs text-muted mb-2`,children:b(`configForm.addImChannel`)}),(0,g.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:X.map(e=>(0,g.jsxs)(`button`,{onClick:()=>ce(e),className:`px-3 py-1.5 text-xs border border-dashed rounded-md transition-colors duration-150 border-[var(--border)] text-muted hover:border-[var(--border-hover)] hover:text-foreground`,children:[`+ `,_[e]?.label||e]},e))})]})]}),(0,g.jsxs)(l,{title:`高级 (原始 YAML + .env)`,defaultOpen:!1,children:[(0,g.jsx)(`p`,{className:`text-xs text-muted`,children:`直接编辑 YAML / .env。上方 Channels 字段与此处同步 — 任一侧修改都会反映到另一侧。`}),(0,g.jsxs)(`div`,{className:`bg-[var(--card)] border border-[var(--border)] rounded-xl overflow-hidden`,children:[(0,g.jsx)(`div`,{className:`border-b border-[var(--border)] px-4 py-2`,children:(0,g.jsx)(`span`,{className:`text-xs font-medium text-muted`,children:`config.yaml`})}),(0,g.jsx)(`textarea`,{value:x,onChange:e=>ue(e.target.value),className:`w-full font-mono text-[13px] p-4 min-h-[240px] focus:outline-none resize-y text-foreground bg-transparent`,spellCheck:!1})]}),(0,g.jsxs)(`div`,{className:`bg-[var(--card)] border border-[var(--border)] rounded-xl overflow-hidden`,children:[(0,g.jsx)(`div`,{className:`border-b border-[var(--border)] px-4 py-2`,children:(0,g.jsx)(`span`,{className:`text-xs font-medium text-muted`,children:`.env`})}),(0,g.jsx)(`textarea`,{value:S,onChange:e=>de(e.target.value),className:`w-full font-mono text-[13px] p-4 min-h-[220px] focus:outline-none resize-y text-foreground bg-transparent`,spellCheck:!1})]})]})]})}export{y as HermesConfigForm};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./vendor-i18n-Df8aUdv8.js";import{t as r}from"./vendor-react-0L0rjmYG.js";import{c as i,xt as a}from"./api-C70Gt678.js";import{a as o,f as s,i as c,p as l}from"./index-Bs6DSbiR.js";var u=e(t(),1),d=r(),f=`w-full bg-[var(--input-bg)] border border-[var(--border)] rounded-md px-3 py-2.5 text-sm text-foreground placeholder-[var(--muted)] focus:outline-none focus:ring-1 focus:ring-[#0066FF]/60 focus:border-[#0066FF]/60 transition-colors duration-200`;function p({onDone:e}){let{t}=n(`auth`),[r,p]=(0,u.useState)(``),[m,h]=(0,u.useState)(``),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)(``),[b,x]=(0,u.useState)(!1),S=r.length>=8&&r===m;return(0,d.jsxs)(`div`,{className:`min-h-screen flex items-center justify-center p-4 bg-background relative overflow-hidden`,children:[(0,d.jsx)(`div`,{className:`grid-bg absolute inset-0 pointer-events-none`}),(0,d.jsx)(`div`,{className:`absolute top-1/3 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[500px] h-[300px] rounded-full bg-[#0066FF]/[0.07] blur-[90px] pointer-events-none`}),(0,d.jsx)(`div`,{className:`absolute left-4 bottom-4 z-20`,children:(0,d.jsx)(o,{className:`bg-card/80 backdrop-blur-sm`})}),(0,d.jsxs)(`div`,{className:`w-full max-w-sm relative z-10`,children:[(0,d.jsxs)(`div`,{className:`text-center mb-8`,children:[(0,d.jsx)(c,{className:`w-40 h-40 mx-auto mb-4 object-contain`}),(0,d.jsx)(`p`,{className:`text-sm text-muted mt-1`,children:t(`init.title`)})]}),(0,d.jsxs)(`form`,{onSubmit:async n=>{if(n.preventDefault(),S){y(``),x(!0);try{a((await i(r)).token),e()}catch(e){y(e.message||t(`init.failed`))}finally{x(!1)}}},className:`space-y-4`,children:[v&&(0,d.jsx)(`div`,{className:`bg-red-500/10 border border-red-500/20 text-red-400 text-sm rounded-lg px-3 py-2.5`,children:v}),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`label`,{className:`block text-sm font-medium text-muted mb-1.5`,children:t(`init.password`)}),(0,d.jsxs)(`div`,{className:`relative`,children:[(0,d.jsx)(`input`,{type:g?`text`:`password`,value:r,onChange:e=>p(e.target.value),placeholder:t(`init.passwordPlaceholder`),className:`${f} pr-10`,autoFocus:!0}),(0,d.jsx)(`button`,{type:`button`,onClick:()=>_(!g),"aria-label":t(`common:action.togglePassword`),className:`absolute right-3 top-1/2 -translate-y-1/2 text-muted hover:text-foreground transition-colors duration-200`,children:g?(0,d.jsx)(l,{}):(0,d.jsx)(s,{})})]})]}),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`label`,{className:`block text-sm font-medium text-muted mb-1.5`,children:t(`init.confirm`)}),(0,d.jsx)(`input`,{type:g?`text`:`password`,value:m,onChange:e=>h(e.target.value),placeholder:t(`init.confirmPlaceholder`),className:f}),r&&m&&r!==m&&(0,d.jsx)(`p`,{className:`text-red-400 text-xs mt-1.5`,children:t(`init.mismatch`)})]}),(0,d.jsx)(`button`,{type:`submit`,disabled:b||!S,className:`w-full bg-[#0066FF] text-white rounded-md py-2.5 text-sm font-medium hover:bg-[#0066FF]/90 disabled:opacity-40 disabled:cursor-not-allowed transition-all duration-200 shadow-[0_0_20px_rgba(0,102,255,0.3)] hover:shadow-[0_0_28px_rgba(0,102,255,0.45)]`,children:b?(0,d.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`w-3.5 h-3.5 border-2 border-white/30 border-t-white rounded-full animate-spin`}),t(`init.loading`)]}):t(`init.submit`)})]})]})]})}export{p as default};