dsh-cliworker-now 0.0.0-stage → 0.7.6

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 (285) hide show
  1. package/LICENSE +21 -0
  2. package/README.en.md +344 -0
  3. package/README.md +346 -2
  4. package/cordis.patch.yml +3 -0
  5. package/lib/account-models.mjs +259 -0
  6. package/lib/client.js +21542 -0
  7. package/lib/client.js.map +1 -0
  8. package/lib/grok-catalog.mjs +145 -0
  9. package/lib/hermes-native-entry.py +61 -0
  10. package/lib/index.js +12409 -0
  11. package/lib/index.js.map +1 -0
  12. package/lib/native-launch.mjs +179 -0
  13. package/lib/own-account-lease.mjs +105 -0
  14. package/lib/pi-installation.mjs +63 -0
  15. package/lib/pi-login.mjs +80 -0
  16. package/lib/pi-native-catalog.mjs +417 -0
  17. package/lib/pi-omp-bridge.mjs +602 -0
  18. package/lib/pi-omp-environment.mjs +15 -0
  19. package/lib/pi-omp-refresh.mjs +324 -0
  20. package/lib/private-launch.mjs +19 -0
  21. package/lib/terminal-bridge.mjs +18 -0
  22. package/lib/typert.host.d.ts +3 -0
  23. package/lib/typert.host.js +1358 -0
  24. package/lib/typert.remote-client.d.ts +70 -0
  25. package/lib/typert.remote-client.d.ts.map +1 -0
  26. package/lib/typert.remote-client.js +1190 -0
  27. package/lib/types/client/account-terminal-css.d.ts +1 -0
  28. package/lib/types/client/account-terminal-css.js +3 -0
  29. package/lib/types/client/account-terminal-css.js.map +1 -0
  30. package/lib/types/client/account-terminal.d.ts +13 -0
  31. package/lib/types/client/account-terminal.js +296 -0
  32. package/lib/types/client/account-terminal.js.map +1 -0
  33. package/lib/types/client/assets/antigravity.png +0 -0
  34. package/lib/types/client/assets/claude-code.png +0 -0
  35. package/lib/types/client/assets/cliworker-now-logo.png +0 -0
  36. package/lib/types/client/assets/codex.png +0 -0
  37. package/lib/types/client/assets/grok.png +0 -0
  38. package/lib/types/client/assets/hermes.png +0 -0
  39. package/lib/types/client/assets/kimi-dark.png +0 -0
  40. package/lib/types/client/assets/kimi-light.png +0 -0
  41. package/lib/types/client/assets/mimo-code.png +0 -0
  42. package/lib/types/client/assets/omp.png +0 -0
  43. package/lib/types/client/assets/opencode.png +0 -0
  44. package/lib/types/client/assets/pi.png +0 -0
  45. package/lib/types/client/assets/zcode.png +0 -0
  46. package/lib/types/client/composer-keymap.d.ts +18 -0
  47. package/lib/types/client/composer-keymap.js +49 -0
  48. package/lib/types/client/composer-keymap.js.map +1 -0
  49. package/lib/types/client/conversation-timeline.d.ts +6 -0
  50. package/lib/types/client/conversation-timeline.js +65 -0
  51. package/lib/types/client/conversation-timeline.js.map +1 -0
  52. package/lib/types/client/copy-text.d.ts +5 -0
  53. package/lib/types/client/copy-text.js +45 -0
  54. package/lib/types/client/copy-text.js.map +1 -0
  55. package/lib/types/client/icons.d.ts +21 -0
  56. package/lib/types/client/icons.js +68 -0
  57. package/lib/types/client/icons.js.map +1 -0
  58. package/lib/types/client/index.d.ts +3 -0
  59. package/lib/types/client/index.js +124 -0
  60. package/lib/types/client/index.js.map +1 -0
  61. package/lib/types/client/management-styles.d.ts +1 -0
  62. package/lib/types/client/management-styles.js +17 -0
  63. package/lib/types/client/management-styles.js.map +1 -0
  64. package/lib/types/client/name-copy.d.ts +5 -0
  65. package/lib/types/client/name-copy.js +107 -0
  66. package/lib/types/client/name-copy.js.map +1 -0
  67. package/lib/types/client/native-job-overlay.d.ts +11 -0
  68. package/lib/types/client/native-job-overlay.js +129 -0
  69. package/lib/types/client/native-job-overlay.js.map +1 -0
  70. package/lib/types/client/operation-error.d.ts +2 -0
  71. package/lib/types/client/operation-error.js +12 -0
  72. package/lib/types/client/operation-error.js.map +1 -0
  73. package/lib/types/client/panel.d.ts +8 -0
  74. package/lib/types/client/panel.js +310 -0
  75. package/lib/types/client/panel.js.map +1 -0
  76. package/lib/types/client/rename-copy-styles.d.ts +1 -0
  77. package/lib/types/client/rename-copy-styles.js +21 -0
  78. package/lib/types/client/rename-copy-styles.js.map +1 -0
  79. package/lib/types/client/rename-worker.d.ts +9 -0
  80. package/lib/types/client/rename-worker.js +53 -0
  81. package/lib/types/client/rename-worker.js.map +1 -0
  82. package/lib/types/client/role-presets.d.ts +6 -0
  83. package/lib/types/client/role-presets.js +111 -0
  84. package/lib/types/client/role-presets.js.map +1 -0
  85. package/lib/types/client/settings-dialog.d.ts +13 -0
  86. package/lib/types/client/settings-dialog.js +415 -0
  87. package/lib/types/client/settings-dialog.js.map +1 -0
  88. package/lib/types/client/stat-popover.d.ts +10 -0
  89. package/lib/types/client/stat-popover.js +32 -0
  90. package/lib/types/client/stat-popover.js.map +1 -0
  91. package/lib/types/client/styles.d.ts +9 -0
  92. package/lib/types/client/styles.js +221 -0
  93. package/lib/types/client/styles.js.map +1 -0
  94. package/lib/types/client/telemetry.d.ts +11 -0
  95. package/lib/types/client/telemetry.js +24 -0
  96. package/lib/types/client/telemetry.js.map +1 -0
  97. package/lib/types/client/worker-card.d.ts +10 -0
  98. package/lib/types/client/worker-card.js +75 -0
  99. package/lib/types/client/worker-card.js.map +1 -0
  100. package/lib/types/client/worker-model-menu.d.ts +9 -0
  101. package/lib/types/client/worker-model-menu.js +136 -0
  102. package/lib/types/client/worker-model-menu.js.map +1 -0
  103. package/lib/types/client/workers.d.ts +21 -0
  104. package/lib/types/client/workers.js +59 -0
  105. package/lib/types/client/workers.js.map +1 -0
  106. package/lib/types/host/account-identity.d.ts +16 -0
  107. package/lib/types/host/account-identity.js +126 -0
  108. package/lib/types/host/account-identity.js.map +1 -0
  109. package/lib/types/host/account-login.d.ts +10 -0
  110. package/lib/types/host/account-login.js +126 -0
  111. package/lib/types/host/account-login.js.map +1 -0
  112. package/lib/types/host/account-models.d.mts +19 -0
  113. package/lib/types/host/account-models.mjs +259 -0
  114. package/lib/types/host/accounts.d.ts +41 -0
  115. package/lib/types/host/accounts.js +838 -0
  116. package/lib/types/host/accounts.js.map +1 -0
  117. package/lib/types/host/adapters.d.ts +24 -0
  118. package/lib/types/host/adapters.js +331 -0
  119. package/lib/types/host/adapters.js.map +1 -0
  120. package/lib/types/host/agy-context.d.ts +8 -0
  121. package/lib/types/host/agy-context.js +122 -0
  122. package/lib/types/host/agy-context.js.map +1 -0
  123. package/lib/types/host/agy-models.d.ts +4 -0
  124. package/lib/types/host/agy-models.js +37 -0
  125. package/lib/types/host/agy-models.js.map +1 -0
  126. package/lib/types/host/authorized-catalog.d.ts +14 -0
  127. package/lib/types/host/authorized-catalog.js +26 -0
  128. package/lib/types/host/authorized-catalog.js.map +1 -0
  129. package/lib/types/host/bridge-protocol.d.ts +15 -0
  130. package/lib/types/host/bridge-protocol.js +80 -0
  131. package/lib/types/host/bridge-protocol.js.map +1 -0
  132. package/lib/types/host/cli-account-binding.d.ts +32 -0
  133. package/lib/types/host/cli-account-binding.js +502 -0
  134. package/lib/types/host/cli-account-binding.js.map +1 -0
  135. package/lib/types/host/cli-protocol.d.ts +27 -0
  136. package/lib/types/host/cli-protocol.js +212 -0
  137. package/lib/types/host/cli-protocol.js.map +1 -0
  138. package/lib/types/host/codex-account.d.ts +8 -0
  139. package/lib/types/host/codex-account.js +143 -0
  140. package/lib/types/host/codex-account.js.map +1 -0
  141. package/lib/types/host/codex-models.d.ts +6 -0
  142. package/lib/types/host/codex-models.js +165 -0
  143. package/lib/types/host/codex-models.js.map +1 -0
  144. package/lib/types/host/extended-adapters.d.ts +43 -0
  145. package/lib/types/host/extended-adapters.js +205 -0
  146. package/lib/types/host/extended-adapters.js.map +1 -0
  147. package/lib/types/host/first-party-account-context.d.ts +26 -0
  148. package/lib/types/host/first-party-account-context.js +55 -0
  149. package/lib/types/host/first-party-account-context.js.map +1 -0
  150. package/lib/types/host/first-party-models.d.ts +28 -0
  151. package/lib/types/host/first-party-models.js +370 -0
  152. package/lib/types/host/first-party-models.js.map +1 -0
  153. package/lib/types/host/grok-adapter.d.ts +44 -0
  154. package/lib/types/host/grok-adapter.js +293 -0
  155. package/lib/types/host/grok-adapter.js.map +1 -0
  156. package/lib/types/host/grok-models.d.ts +47 -0
  157. package/lib/types/host/grok-models.js +320 -0
  158. package/lib/types/host/grok-models.js.map +1 -0
  159. package/lib/types/host/harness-opencode-accounts.d.ts +17 -0
  160. package/lib/types/host/harness-opencode-accounts.js +80 -0
  161. package/lib/types/host/harness-opencode-accounts.js.map +1 -0
  162. package/lib/types/host/hermes-account-context.d.ts +8 -0
  163. package/lib/types/host/hermes-account-context.js +99 -0
  164. package/lib/types/host/hermes-account-context.js.map +1 -0
  165. package/lib/types/host/hermes-accounts.d.ts +19 -0
  166. package/lib/types/host/hermes-accounts.js +342 -0
  167. package/lib/types/host/hermes-accounts.js.map +1 -0
  168. package/lib/types/host/hermes-adapter.d.ts +90 -0
  169. package/lib/types/host/hermes-adapter.js +446 -0
  170. package/lib/types/host/hermes-adapter.js.map +1 -0
  171. package/lib/types/host/hermes-env.d.ts +4 -0
  172. package/lib/types/host/hermes-env.js +22 -0
  173. package/lib/types/host/hermes-env.js.map +1 -0
  174. package/lib/types/host/hermes-installation.d.ts +10 -0
  175. package/lib/types/host/hermes-installation.js +162 -0
  176. package/lib/types/host/hermes-installation.js.map +1 -0
  177. package/lib/types/host/hermes-models.d.ts +26 -0
  178. package/lib/types/host/hermes-models.js +328 -0
  179. package/lib/types/host/hermes-models.js.map +1 -0
  180. package/lib/types/host/hermes-native-entry.py +61 -0
  181. package/lib/types/host/hermes-nous.d.ts +49 -0
  182. package/lib/types/host/hermes-nous.js +343 -0
  183. package/lib/types/host/hermes-nous.js.map +1 -0
  184. package/lib/types/host/hermes-suppression.d.ts +7 -0
  185. package/lib/types/host/hermes-suppression.js +69 -0
  186. package/lib/types/host/hermes-suppression.js.map +1 -0
  187. package/lib/types/host/index.d.ts +138 -0
  188. package/lib/types/host/index.js +932 -0
  189. package/lib/types/host/index.js.map +1 -0
  190. package/lib/types/host/kimi-accounts.d.ts +15 -0
  191. package/lib/types/host/kimi-accounts.js +218 -0
  192. package/lib/types/host/kimi-accounts.js.map +1 -0
  193. package/lib/types/host/managed-agent.d.ts +4 -0
  194. package/lib/types/host/managed-agent.js +127 -0
  195. package/lib/types/host/managed-agent.js.map +1 -0
  196. package/lib/types/host/mimo-configuration.d.ts +22 -0
  197. package/lib/types/host/mimo-configuration.js +258 -0
  198. package/lib/types/host/mimo-configuration.js.map +1 -0
  199. package/lib/types/host/native-launch.d.mts +2 -0
  200. package/lib/types/host/native-launch.mjs +179 -0
  201. package/lib/types/host/native-process.d.ts +3 -0
  202. package/lib/types/host/native-process.js +26 -0
  203. package/lib/types/host/native-process.js.map +1 -0
  204. package/lib/types/host/opencode-adapter.d.ts +94 -0
  205. package/lib/types/host/opencode-adapter.js +507 -0
  206. package/lib/types/host/opencode-adapter.js.map +1 -0
  207. package/lib/types/host/opencode-native.d.ts +27 -0
  208. package/lib/types/host/opencode-native.js +403 -0
  209. package/lib/types/host/opencode-native.js.map +1 -0
  210. package/lib/types/host/own-account-lease.d.mts +5 -0
  211. package/lib/types/host/own-account-lease.mjs +105 -0
  212. package/lib/types/host/pi-installation.d.mts +7 -0
  213. package/lib/types/host/pi-installation.mjs +63 -0
  214. package/lib/types/host/pi-omp-accounts.d.ts +28 -0
  215. package/lib/types/host/pi-omp-accounts.js +175 -0
  216. package/lib/types/host/pi-omp-accounts.js.map +1 -0
  217. package/lib/types/host/pi-omp-adapter.d.ts +32 -0
  218. package/lib/types/host/pi-omp-adapter.js +176 -0
  219. package/lib/types/host/pi-omp-adapter.js.map +1 -0
  220. package/lib/types/host/pi-omp-environment.d.mts +1 -0
  221. package/lib/types/host/pi-omp-environment.mjs +15 -0
  222. package/lib/types/host/pi-omp-identity.d.ts +2 -0
  223. package/lib/types/host/pi-omp-identity.js +142 -0
  224. package/lib/types/host/pi-omp-identity.js.map +1 -0
  225. package/lib/types/host/pi-omp-logout.d.ts +3 -0
  226. package/lib/types/host/pi-omp-logout.js +152 -0
  227. package/lib/types/host/pi-omp-logout.js.map +1 -0
  228. package/lib/types/host/pi-omp-native.d.ts +71 -0
  229. package/lib/types/host/pi-omp-native.js +753 -0
  230. package/lib/types/host/pi-omp-native.js.map +1 -0
  231. package/lib/types/host/pi-omp-refresh.d.mts +7 -0
  232. package/lib/types/host/pi-omp-refresh.mjs +324 -0
  233. package/lib/types/host/process.d.ts +43 -0
  234. package/lib/types/host/process.js +134 -0
  235. package/lib/types/host/process.js.map +1 -0
  236. package/lib/types/host/protocol.d.ts +23 -0
  237. package/lib/types/host/protocol.js +112 -0
  238. package/lib/types/host/protocol.js.map +1 -0
  239. package/lib/types/host/roles.d.ts +34 -0
  240. package/lib/types/host/roles.js +80 -0
  241. package/lib/types/host/roles.js.map +1 -0
  242. package/lib/types/host/routing.d.ts +31 -0
  243. package/lib/types/host/routing.js +225 -0
  244. package/lib/types/host/routing.js.map +1 -0
  245. package/lib/types/host/runtime.d.ts +60 -0
  246. package/lib/types/host/runtime.js +586 -0
  247. package/lib/types/host/runtime.js.map +1 -0
  248. package/lib/types/host/storage.d.ts +48 -0
  249. package/lib/types/host/storage.js +449 -0
  250. package/lib/types/host/storage.js.map +1 -0
  251. package/lib/types/host/telemetry.d.ts +17 -0
  252. package/lib/types/host/telemetry.js +158 -0
  253. package/lib/types/host/telemetry.js.map +1 -0
  254. package/lib/types/host/zcode-account-models.d.ts +16 -0
  255. package/lib/types/host/zcode-account-models.js +114 -0
  256. package/lib/types/host/zcode-account-models.js.map +1 -0
  257. package/lib/types/host/zcode-adapter.d.ts +93 -0
  258. package/lib/types/host/zcode-adapter.js +804 -0
  259. package/lib/types/host/zcode-adapter.js.map +1 -0
  260. package/lib/types/host/zcode-grok-accounts.d.ts +28 -0
  261. package/lib/types/host/zcode-grok-accounts.js +359 -0
  262. package/lib/types/host/zcode-grok-accounts.js.map +1 -0
  263. package/lib/types/shared/accounts.d.ts +43 -0
  264. package/lib/types/shared/accounts.js +2 -0
  265. package/lib/types/shared/accounts.js.map +1 -0
  266. package/lib/types/shared/builtin-presets.d.ts +2 -0
  267. package/lib/types/shared/builtin-presets.js +231 -0
  268. package/lib/types/shared/builtin-presets.js.map +1 -0
  269. package/lib/types/shared/cli-settings.d.ts +5 -0
  270. package/lib/types/shared/cli-settings.js +2 -0
  271. package/lib/types/shared/cli-settings.js.map +1 -0
  272. package/lib/types/shared/model-presentation.d.ts +10 -0
  273. package/lib/types/shared/model-presentation.js +95 -0
  274. package/lib/types/shared/model-presentation.js.map +1 -0
  275. package/lib/types/shared/models.d.ts +7 -0
  276. package/lib/types/shared/models.js +35 -0
  277. package/lib/types/shared/models.js.map +1 -0
  278. package/lib/types/shared/telemetry.d.ts +18 -0
  279. package/lib/types/shared/telemetry.js +16 -0
  280. package/lib/types/shared/telemetry.js.map +1 -0
  281. package/lib/types/shared/types.d.ts +127 -0
  282. package/lib/types/shared/types.js +147 -0
  283. package/lib/types/shared/types.js.map +1 -0
  284. package/lib/zcode-resume.mjs +423 -0
  285. package/package.json +109 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/host/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { AccountIdentity } from './account-identity.ts';
2
+ export declare const KIMI_MANAGE_LOGIN = "\u5DF2\u767B\u5F55 Kimi\u3002\u82E5\u51FA\u73B0 Trust \u63D0\u793A\uFF0C\u8BF7\u81EA\u884C\u786E\u8BA4\u6B64\u7A7A\u8D26\u53F7\u76EE\u5F55\uFF1B\u5207\u6362\u8D26\u53F7\u8F93\u5165 /logout\uFF0C\u518D\u8F93\u5165 /login\u3002";
3
+ /** Native Kimi has no --no-mcp switch and asks Trust even for an empty folder.
4
+ * Its findGitWorkTree stops at the first .git directory. An empty owned marker
5
+ * keeps project MCP lookup here even when plugin state lives under a repository.
6
+ * Never mark the folder trusted or change the native account home. */
7
+ export declare function prepareKimiAccountDirectory(stateDirectory: string, signal: AbortSignal): Promise<{
8
+ cwd: string;
9
+ cleanup: () => Promise<void>;
10
+ }>;
11
+ /** Consume native `provider list --json` internally; only safe identity metadata escapes. */
12
+ export declare function readKimiAccount(raw: string, signal: AbortSignal, options?: {
13
+ home?: string;
14
+ now?: number;
15
+ }): Promise<AccountIdentity>;
@@ -0,0 +1,218 @@
1
+ import { constants } from 'node:fs';
2
+ import { lstat, mkdir, mkdtemp, open, realpath, rm, writeFile } from 'node:fs/promises';
3
+ import { homedir } from 'node:os';
4
+ import { basename, join, resolve } from 'node:path';
5
+ import { safePiOmpAncestors } from "./pi-omp-native.js";
6
+ const object = (value) => !!value && typeof value === 'object' && !Array.isArray(value);
7
+ const text = (value) => typeof value === 'string' && !!value.trim();
8
+ const literal = (value) => text(value) && !/^(?:!|\$|\{|<|your[_ -]|placeholder|changeme)/i.test(value) && !/[\x00-\x20]/.test(value);
9
+ const unavailable = () => ({
10
+ state: 'unavailable',
11
+ verification: 'local',
12
+ summary: 'Kimi 登录状态读取失败,请检查配置',
13
+ });
14
+ export const KIMI_MANAGE_LOGIN = '已登录 Kimi。若出现 Trust 提示,请自行确认此空账号目录;切换账号输入 /logout,再输入 /login。';
15
+ /** Native Kimi has no --no-mcp switch and asks Trust even for an empty folder.
16
+ * Its findGitWorkTree stops at the first .git directory. An empty owned marker
17
+ * keeps project MCP lookup here even when plugin state lives under a repository.
18
+ * Never mark the folder trusted or change the native account home. */
19
+ export async function prepareKimiAccountDirectory(stateDirectory, signal) {
20
+ signal.throwIfAborted();
21
+ const parent = join(resolve(stateDirectory), 'account-runtime');
22
+ await safePiOmpAncestors(parent);
23
+ await mkdir(parent, { recursive: true, mode: 0o700 });
24
+ await safePiOmpAncestors(parent);
25
+ const canonicalParent = await realpath(parent);
26
+ const parentIdentity = await lstat(canonicalParent);
27
+ const cwd = await mkdtemp(join(canonicalParent, 'kimi-'));
28
+ const identity = await lstat(cwd);
29
+ let removed = false;
30
+ const cleanup = async () => {
31
+ if (removed)
32
+ return;
33
+ const parentNow = await lstat(canonicalParent);
34
+ if (parentNow.isSymbolicLink() ||
35
+ parentNow.dev !== parentIdentity.dev ||
36
+ parentNow.ino !== parentIdentity.ino)
37
+ throw new Error('Kimi account runtime parent changed before cleanup');
38
+ try {
39
+ const current = await lstat(cwd);
40
+ if (current.isSymbolicLink() || current.dev !== identity.dev || current.ino !== identity.ino)
41
+ throw new Error('Kimi account runtime changed before cleanup');
42
+ await rm(cwd, { recursive: true, force: true });
43
+ removed = true;
44
+ }
45
+ catch (error) {
46
+ if (error.code === 'ENOENT')
47
+ removed = true;
48
+ else
49
+ throw error;
50
+ }
51
+ };
52
+ try {
53
+ await mkdir(join(cwd, '.git'), { mode: 0o700 });
54
+ await mkdir(join(cwd, '.kimi-code'), { mode: 0o700 });
55
+ for (const path of [join(cwd, '.mcp.json'), join(cwd, '.kimi-code/mcp.json')])
56
+ await writeFile(path, '{"mcpServers":{}}\n', { flag: 'wx', mode: 0o600 });
57
+ signal.throwIfAborted();
58
+ return { cwd, cleanup };
59
+ }
60
+ catch (error) {
61
+ await cleanup();
62
+ throw error;
63
+ }
64
+ }
65
+ /** Installed Kimi toolkit.resolveKimiTokenStorageName, constrained to one own file. */
66
+ function tokenSlot(key) {
67
+ if (key === 'kimi-code' || key === 'oauth/kimi-code')
68
+ return 'kimi-code';
69
+ if (!text(key))
70
+ throw new Error('Unknown Kimi OAuth slot');
71
+ const slot = key.startsWith('oauth/') ? key.slice(6) : key;
72
+ if (!slot || basename(slot) !== slot || slot.startsWith('.') || /[\\\x00-\x1f]/.test(slot))
73
+ throw new Error('Unsafe Kimi OAuth slot');
74
+ return slot;
75
+ }
76
+ /** Display metadata only, never a JWT verification or an authentication decision.
77
+ * Native stableJwtSubject uses sub, then user_id. Recognize the observed native
78
+ * kimi-auth issuer and omit ambiguous/unknown identities without changing login.
79
+ * The label contains six decoded account-ID characters, never token characters. */
80
+ function kimiAccountLabel(accessToken) {
81
+ const parts = accessToken.split('.');
82
+ if (parts.length !== 3 ||
83
+ !parts.every((part) => part.length > 0 && /^[A-Za-z0-9_-]+$/.test(part)) ||
84
+ parts[1].length > 16 * 1024)
85
+ return undefined;
86
+ let bytes;
87
+ try {
88
+ bytes = Buffer.from(parts[1], 'base64url');
89
+ if (bytes.toString('base64url') !== parts[1])
90
+ return undefined;
91
+ const claims = JSON.parse(bytes.toString('utf8'));
92
+ if (!object(claims) || claims.iss !== 'kimi-auth')
93
+ return undefined;
94
+ const safeId = (value) => typeof value === 'string' &&
95
+ /^[A-Za-z0-9][A-Za-z0-9_-]{6,127}$/.test(value) &&
96
+ !/^(?:sk[-_]|pk[-_]|api[-_]?key|access[-_]?token|refresh[-_]?token|secret|bearer|token|eyJ|placeholder|changeme|your[-_])/i.test(value);
97
+ if ((claims.sub !== undefined && !safeId(claims.sub)) ||
98
+ (claims.user_id !== undefined && !safeId(claims.user_id)) ||
99
+ (claims.sub !== undefined && claims.user_id !== undefined && claims.sub !== claims.user_id))
100
+ return undefined;
101
+ const id = claims.sub ?? claims.user_id;
102
+ return safeId(id) ? `Kimi ID · …${id.slice(-6)}` : undefined;
103
+ }
104
+ catch {
105
+ return undefined;
106
+ }
107
+ finally {
108
+ bytes?.fill(0);
109
+ }
110
+ }
111
+ /** No-follow, bounded read; never refreshes, creates or modifies the native token. */
112
+ async function readToken(directory, slot, signal) {
113
+ let handle;
114
+ let bytes;
115
+ try {
116
+ signal.throwIfAborted();
117
+ await safePiOmpAncestors(directory);
118
+ const path = join(directory, `${slot}.json`);
119
+ const entry = await lstat(path);
120
+ if (entry.isSymbolicLink() || !entry.isFile() || entry.nlink !== 1)
121
+ throw new Error('Unsafe Kimi token file');
122
+ handle = await open(path, constants.O_RDONLY | constants.O_NOFOLLOW | constants.O_NONBLOCK);
123
+ const before = await handle.stat();
124
+ if (!before.isFile() ||
125
+ before.nlink !== 1 ||
126
+ before.dev !== entry.dev ||
127
+ before.ino !== entry.ino ||
128
+ before.size > 64 * 1024)
129
+ throw new Error('Unsafe Kimi token file');
130
+ bytes = Buffer.alloc(before.size + 1);
131
+ let offset = 0;
132
+ while (offset < bytes.length) {
133
+ signal.throwIfAborted();
134
+ const { bytesRead } = await handle.read(bytes, offset, bytes.length - offset, offset);
135
+ if (!bytesRead)
136
+ break;
137
+ offset += bytesRead;
138
+ }
139
+ const after = await handle.stat();
140
+ const current = await lstat(path);
141
+ if (current.isSymbolicLink() ||
142
+ current.dev !== before.dev ||
143
+ current.ino !== before.ino ||
144
+ current.nlink !== 1 ||
145
+ offset !== before.size ||
146
+ after.size !== before.size ||
147
+ after.mtimeMs !== before.mtimeMs ||
148
+ current.size !== after.size ||
149
+ current.mtimeMs !== after.mtimeMs)
150
+ throw new Error('Kimi token changed during read');
151
+ signal.throwIfAborted();
152
+ const parsed = JSON.parse(bytes.subarray(0, offset).toString('utf8'));
153
+ if (!object(parsed))
154
+ throw new Error('Invalid Kimi token file');
155
+ return parsed;
156
+ }
157
+ catch (error) {
158
+ if (error.code === 'ENOENT')
159
+ return undefined;
160
+ throw error;
161
+ }
162
+ finally {
163
+ bytes?.fill(0);
164
+ await handle?.close();
165
+ }
166
+ }
167
+ /** Consume native `provider list --json` internally; only safe identity metadata escapes. */
168
+ export async function readKimiAccount(raw, signal, options = {}) {
169
+ try {
170
+ signal.throwIfAborted();
171
+ const config = JSON.parse(raw);
172
+ if (!object(config) || !object(config.providers))
173
+ return unavailable();
174
+ const providers = Object.values(config.providers).filter(object);
175
+ const api = providers.some((provider) => !provider.oauth && (literal(provider.apiKey) || literal(provider.env?.KIMI_API_KEY)));
176
+ const configured = api
177
+ ? { state: 'configured', verification: 'local', authMethod: 'api', summary: '已配置 Kimi API' }
178
+ : { state: 'unconfigured', verification: 'local', summary: '尚未登录 Kimi' };
179
+ const provider = config.providers['managed:kimi-code'];
180
+ if (!object(provider) || provider.oauth === undefined)
181
+ return configured;
182
+ if (provider.type !== 'kimi' || !object(provider.oauth) || provider.oauth.storage !== 'file')
183
+ return { state: 'unknown', verification: 'local', summary: 'Kimi 登录配置暂不支持,请打开账号终端' };
184
+ const slot = tokenSlot(provider.oauth.key);
185
+ const token = await readToken(join(options.home ?? process.env.KIMI_CODE_HOME ?? join(homedir(), '.kimi-code'), 'credentials'), slot, signal);
186
+ if (!token)
187
+ return configured;
188
+ // Native classifyToken treats an empty access token as a revoked tombstone,
189
+ // including one with an old refresh token. Expiry is negative evidence only.
190
+ if (token.access_token === '' || token.access_token === undefined)
191
+ return api
192
+ ? configured
193
+ : { state: 'unauthenticated', verification: 'local', summary: 'Kimi 登录已失效,请重新登录' };
194
+ if (!text(token.access_token) ||
195
+ (token.refresh_token !== undefined && typeof token.refresh_token !== 'string') ||
196
+ (token.expires_at !== undefined &&
197
+ (typeof token.expires_at !== 'number' || !Number.isFinite(token.expires_at) || token.expires_at < 0)))
198
+ return unavailable();
199
+ const expires = token.expires_at ?? 0;
200
+ if (expires > 0 && expires * 1000 <= (options.now ?? Date.now()) && !text(token.refresh_token))
201
+ return api
202
+ ? configured
203
+ : { state: 'unauthenticated', verification: 'local', summary: 'Kimi 登录已过期,请重新登录' };
204
+ const accountLabel = kimiAccountLabel(token.access_token);
205
+ return {
206
+ state: 'authenticated',
207
+ authMethod: 'oauth',
208
+ verification: 'local',
209
+ summary: '已登录 Kimi',
210
+ ...(accountLabel ? { accountLabel } : {}),
211
+ };
212
+ }
213
+ catch {
214
+ signal.throwIfAborted();
215
+ return unavailable();
216
+ }
217
+ }
218
+ //# sourceMappingURL=kimi-accounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kimi-accounts.js","sourceRoot":"","sources":["../../../src/host/kimi-accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { SubprocessHandle, SubprocessSpawnSpec } from '@deepseek-ai/dsh-subprocess';
2
+ import type { ProcessBackend } from './process.ts';
3
+ /** Preserve pipes while using Harness's stronger terminal descendant ownership. */
4
+ export declare function spawnManagedAgent(backend: ProcessBackend, spec: SubprocessSpawnSpec): Promise<SubprocessHandle>;
@@ -0,0 +1,127 @@
1
+ import { PassThrough } from 'node:stream';
2
+ import { fileURLToPath } from 'node:url';
3
+ /** Preserve pipes while using Harness's stronger terminal descendant ownership. */
4
+ export async function spawnManagedAgent(backend, spec) {
5
+ // Unit-test backends can implement only pipe spawning. The production Host
6
+ // always provides the native terminal primitive.
7
+ // On Windows ordinary spawning owns a native Job. ConPTY does not have that
8
+ // owner in the pinned Host, so a terminal bridge would weaken descendant cleanup.
9
+ if (process.platform === 'win32' || !backend.spawnTerminal)
10
+ return backend.spawn(spec);
11
+ spec.signal?.throwIfAborted();
12
+ const terminal = await backend.spawnTerminal({
13
+ argv: [process.execPath, fileURLToPath(new URL('./terminal-bridge.mjs', import.meta.url)), ...spec.argv],
14
+ cwd: spec.cwd,
15
+ env: { ...spec.env, ELECTRON_RUN_AS_NODE: '1' },
16
+ rows: 24,
17
+ cols: 240,
18
+ terminalType: 'dumb',
19
+ graceMs: spec.graceMs ?? 5000,
20
+ signal: spec.signal,
21
+ });
22
+ const stdout = new PassThrough(), stderr = new PassThrough();
23
+ let resolve, reject;
24
+ const done = new Promise((yes, no) => {
25
+ resolve = yes;
26
+ reject = no;
27
+ });
28
+ void done.catch(() => undefined);
29
+ let cleanup, exited = false, pending = '';
30
+ const terminate = () => {
31
+ if (!cleanup) {
32
+ clearInterval(observe);
33
+ cleanup = terminal.terminate();
34
+ void cleanup.catch((error) => reject(error));
35
+ }
36
+ };
37
+ // Retain PID + start identities before agy can detach a background child.
38
+ let inspecting = false;
39
+ const observe = setInterval(() => {
40
+ if (inspecting || cleanup)
41
+ return;
42
+ inspecting = true;
43
+ void terminal
44
+ .inspectForeground()
45
+ .catch((error) => {
46
+ reject(error);
47
+ terminate();
48
+ })
49
+ .finally(() => {
50
+ inspecting = false;
51
+ });
52
+ }, 200);
53
+ const abort = () => terminate();
54
+ spec.signal?.addEventListener('abort', abort, { once: true });
55
+ if (spec.signal?.aborted)
56
+ terminate();
57
+ void (async () => {
58
+ try {
59
+ for await (const chunk of terminal.output) {
60
+ pending += String(chunk);
61
+ let end;
62
+ while ((end = pending.indexOf('\n')) >= 0) {
63
+ const text = pending.slice(0, end).trim();
64
+ pending = pending.slice(end + 1);
65
+ if (!text)
66
+ continue;
67
+ const frame = JSON.parse(text);
68
+ if (frame.channel === 'stdout' || frame.channel === 'stderr') {
69
+ if (typeof frame.bytes !== 'string')
70
+ throw new Error('Invalid CLI bridge bytes');
71
+ (frame.channel === 'stdout' ? stdout : stderr).write(Buffer.from(frame.bytes, 'base64'));
72
+ }
73
+ else if (frame.channel === 'exit') {
74
+ exited = true;
75
+ stdout.end();
76
+ stderr.end();
77
+ resolve({ exitCode: frame.exitCode, signal: frame.signal });
78
+ }
79
+ else if (frame.channel === 'error')
80
+ throw new Error(frame.message);
81
+ else
82
+ throw new Error('Invalid CLI bridge frame');
83
+ }
84
+ if (pending.length > 2_097_152)
85
+ throw new Error('CLI bridge frame too large');
86
+ }
87
+ if (!exited) {
88
+ stdout.end();
89
+ stderr.end();
90
+ reject(new Error('CLI bridge ended before exit receipt'));
91
+ }
92
+ }
93
+ catch (error) {
94
+ stdout.destroy(error);
95
+ stderr.destroy(error);
96
+ reject(error);
97
+ terminate();
98
+ }
99
+ })();
100
+ void terminal.done.catch((error) => {
101
+ stdout.destroy(error);
102
+ stderr.destroy(error);
103
+ reject(error);
104
+ });
105
+ return {
106
+ stdin: undefined,
107
+ stdout,
108
+ stderr,
109
+ control: undefined,
110
+ collected: {},
111
+ done,
112
+ terminate,
113
+ waitForExit: async () => {
114
+ terminate();
115
+ try {
116
+ await cleanup;
117
+ await terminal.done;
118
+ return true;
119
+ }
120
+ finally {
121
+ spec.signal?.removeEventListener('abort', abort);
122
+ clearInterval(observe);
123
+ }
124
+ },
125
+ };
126
+ }
127
+ //# sourceMappingURL=managed-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-agent.js","sourceRoot":"","sources":["../../../src/host/managed-agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { AccountIdentity } from './account-identity.ts';
2
+ export declare class MimoConfigurationError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ /** Mirrors native Global.Path; arbitrary config/content/DB selectors are cleared in the child. */
6
+ export declare function mimoConfigurationPaths(options?: {
7
+ env?: NodeJS.ProcessEnv;
8
+ osHome?: string;
9
+ paths?: Pick<typeof import('node:path'), 'join' | 'isAbsolute'>;
10
+ }): {
11
+ home: string;
12
+ config: string;
13
+ data: string;
14
+ };
15
+ export declare function mimoConfigurationFiles(project: string): Promise<string[]>;
16
+ /** Auth.Service reads this file independently of model/project configuration. */
17
+ export declare function readMimoOwnAuth(signal: AbortSignal): Promise<Record<string, any>>;
18
+ export declare function readMimoAccount(signal: AbortSignal): Promise<AccountIdentity>;
19
+ /** Only unavoidable external inputs remain relevant in an isolated account terminal. */
20
+ export declare function assertMimoAccountConfiguration(signal: AbortSignal): Promise<void>;
21
+ /** Native Config.Service expands references before returning metadata, so inspect before spawning it. */
22
+ export declare function assertMimoConfiguration(project: string, signal: AbortSignal): Promise<void>;