pi-harness-runtime 0.10.43 → 1.1.1

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 (777) hide show
  1. package/harness/e2e/chatgpt-quota-scraper.ts +478 -0
  2. package/harness/e2e/glm-quota-scraper.ts +449 -0
  3. package/index.ts +2 -0
  4. package/package.json +1 -1
  5. package/packages/a2a-adapter/README.md +35 -0
  6. package/packages/a2a-adapter/package.json +21 -0
  7. package/packages/a2a-adapter/test/a2a.test.ts +151 -0
  8. package/packages/architecture-generator/package.json +21 -0
  9. package/packages/auth/README.md +60 -0
  10. package/packages/auth/package.json +22 -0
  11. package/packages/auth/test/auth.test.ts +238 -0
  12. package/packages/autonomous-refactor/package.json +21 -0
  13. package/packages/autonomous-refactor/test/refactor.test.ts +202 -0
  14. package/packages/autonomous-runtime/README.md +48 -0
  15. package/packages/autonomous-runtime/package.json +34 -0
  16. package/packages/autonomous-runtime/test/autonomous-runtime.test.ts +194 -0
  17. package/packages/autonomous-runtime/test/inbox.test.ts +80 -0
  18. package/packages/autonomous-runtime/test/types.test.ts +68 -0
  19. package/packages/cache-strategy/package.json +21 -0
  20. package/packages/cache-strategy/test/cache.test.ts +137 -0
  21. package/packages/capability-registry/package.json +41 -0
  22. package/packages/capability-registry/test/registry.test.ts +204 -0
  23. package/packages/checkpoint/README.md +206 -0
  24. package/packages/checkpoint/package.json +33 -0
  25. package/packages/checkpoint/test/engine.test.ts +265 -0
  26. package/packages/cli-plugin-sdk/README.md +48 -0
  27. package/packages/cli-plugin-sdk/package.json +24 -0
  28. package/packages/cli-plugin-sdk/test/cli.test.ts +45 -0
  29. package/packages/clipboard/package.json +12 -0
  30. package/packages/clipboard-plugin/package.json +17 -0
  31. package/packages/code-generation/README.md +302 -0
  32. package/packages/code-generation/package.json +38 -0
  33. package/packages/code-generation/test/generator.test.ts +238 -0
  34. package/packages/code-review/README.md +312 -0
  35. package/packages/code-review/package.json +38 -0
  36. package/packages/code-review/test/engine.test.ts +302 -0
  37. package/packages/codex-adapter/package.json +24 -0
  38. package/packages/codex-adapter/test/provider.test.ts +142 -0
  39. package/packages/config-capture/package.json +23 -0
  40. package/packages/context-compiler/package.json +28 -0
  41. package/packages/context-compiler/test/context-compiler.test.ts +746 -0
  42. package/packages/context-discovery/package.json +12 -0
  43. package/packages/context-manager/package.json +21 -0
  44. package/packages/context-manager/test/context.test.ts +198 -0
  45. package/packages/cookie-sanitizer/README.md +141 -0
  46. package/packages/cookie-sanitizer/package.json +27 -0
  47. package/packages/cookie-sanitizer/test/infer.test.ts +110 -0
  48. package/packages/cookie-sanitizer/test/normalize.test.ts +113 -0
  49. package/packages/cookie-sanitizer/test/parse.test.ts +204 -0
  50. package/packages/cookie-sanitizer/test/sync.test.ts +231 -0
  51. package/packages/cookie-sanitizer/test/watcher.test.ts +27 -0
  52. package/packages/cost-optimizer/package.json +41 -0
  53. package/packages/cost-optimizer/test/cost-optimizer.test.ts +438 -0
  54. package/packages/dependency-analyzer/package.json +12 -0
  55. package/packages/dependency-analyzer/test/analyzer.test.ts +48 -0
  56. package/packages/django-plugin/README.md +1 -0
  57. package/packages/django-plugin/package.json +20 -0
  58. package/packages/django-plugin/test/analyzer.test.ts +195 -0
  59. package/packages/doc-generator/package.json +21 -0
  60. package/packages/doc-generator/test/docs.test.ts +168 -0
  61. package/packages/evaluation-engine/package.json +23 -0
  62. package/packages/evaluation-engine/test/engine.test.ts +277 -0
  63. package/packages/evaluation-runner/package.json +21 -0
  64. package/packages/evaluation-runner/test/runner.test.ts +168 -0
  65. package/packages/event-bus/package.json +12 -0
  66. package/packages/event-bus/test/bus.test.ts +88 -0
  67. package/packages/event-store/package.json +12 -0
  68. package/packages/event-store/test/store.test.ts +115 -0
  69. package/packages/experience-replay/package.json +23 -0
  70. package/packages/experience-replay/test/replay.test.ts +267 -0
  71. package/packages/feedback-collector/package.json +21 -0
  72. package/packages/feedback-collector/test/collector.test.ts +142 -0
  73. package/packages/file-copy-helper/package.json +17 -0
  74. package/packages/framework-detector/README.md +283 -0
  75. package/packages/framework-detector/package.json +38 -0
  76. package/packages/framework-detector/test/detector.test.ts +75 -0
  77. package/packages/framework-plugin-sdk/README.md +399 -0
  78. package/packages/framework-plugin-sdk/package.json +39 -0
  79. package/packages/framework-plugin-sdk/test/manager.test.ts +320 -0
  80. package/packages/frappe-plugin/package.json +20 -0
  81. package/packages/frappe-plugin/test/analyzer.test.ts +250 -0
  82. package/packages/generic-web-plugin/package.json +20 -0
  83. package/packages/generic-web-plugin/test/analyzer.test.ts +134 -0
  84. package/packages/health-monitor/package.json +21 -0
  85. package/packages/health-monitor/test/health.test.ts +231 -0
  86. package/packages/intent-analyzer/package.json +12 -0
  87. package/packages/intent-analyzer/test/analyzer.test.ts +72 -0
  88. package/packages/knowledge-graph/package.json +24 -0
  89. package/packages/knowledge-retrieval/package.json +25 -0
  90. package/packages/laravel-plugin/README.md +1 -0
  91. package/packages/laravel-plugin/package.json +20 -0
  92. package/packages/laravel-plugin/test/analyzer.test.ts +220 -0
  93. package/packages/learning-engine/package.json +23 -0
  94. package/packages/learning-engine/test/engine.test.ts +331 -0
  95. package/packages/mcp-adapter/README.md +47 -0
  96. package/packages/mcp-adapter/package.json +21 -0
  97. package/packages/mcp-adapter/test/server.test.ts +91 -0
  98. package/packages/memory-engine/package.json +23 -0
  99. package/packages/memory-engine/test/engine.test.ts +456 -0
  100. package/packages/milestone-manager/package.json +21 -0
  101. package/packages/model-registry/package.json +41 -0
  102. package/packages/model-registry/test/registry.test.ts +342 -0
  103. package/packages/nextjs-plugin/README.md +1 -0
  104. package/packages/nextjs-plugin/package.json +30 -0
  105. package/packages/nextjs-plugin/test/analyzer.test.ts +149 -0
  106. package/packages/notification/adapters/email-adapter.ts +126 -0
  107. package/packages/notification/adapters/ntfy-adapter.ts +100 -0
  108. package/packages/notification/adapters/telegram-adapter.ts +107 -0
  109. package/packages/notification/adapters/webhook-adapter.ts +75 -0
  110. package/packages/notification/base-adapter.ts +75 -0
  111. package/packages/notification/index.ts +51 -0
  112. package/packages/notification/notification-center.ts +286 -0
  113. package/packages/notification/package.json +22 -0
  114. package/packages/notification/test/notification.test.ts +372 -0
  115. package/packages/notification/types.ts +89 -0
  116. package/packages/observability/README.md +241 -0
  117. package/packages/observability/package.json +34 -0
  118. package/packages/observability/test/observability.test.ts +1350 -0
  119. package/packages/okf-indexer/package.json +12 -0
  120. package/packages/performance-optimizer/package.json +23 -0
  121. package/packages/performance-optimizer/test/optimizer.test.ts +267 -0
  122. package/packages/privilege-broker/README.md +45 -0
  123. package/packages/privilege-broker/package.json +35 -0
  124. package/packages/project-analyzer/package.json +43 -0
  125. package/packages/project-analyzer/test/index.test.ts +1719 -0
  126. package/packages/project-bootstrap/package.json +24 -0
  127. package/packages/projection-engine/package.json +12 -0
  128. package/packages/prompt-compiler/package.json +28 -0
  129. package/packages/prompt-compiler/test/prompt-compiler.test.ts +813 -0
  130. package/packages/prompt-versioning/package.json +21 -0
  131. package/packages/prompt-versioning/test/versioning.test.ts +112 -0
  132. package/packages/provider-adapter-sdk/README.md +221 -0
  133. package/packages/provider-adapter-sdk/examples/custom-adapter.ts +353 -0
  134. package/packages/provider-adapter-sdk/package.json +36 -0
  135. package/packages/provider-adapter-sdk/test/sdk.test.ts +220 -0
  136. package/packages/provider-router/package.json +41 -0
  137. package/packages/provider-router/test/provider-router.test.ts +405 -0
  138. package/packages/provider-selector/package.json +21 -0
  139. package/packages/provider-selector/test/selector.test.ts +192 -0
  140. package/packages/providers/README.md +3 -0
  141. package/packages/providers/adapters.ts +362 -0
  142. package/packages/providers/deepagents-adapter.ts +458 -0
  143. package/packages/providers/glm-usage.ts +248 -0
  144. package/packages/providers/index.ts +85 -0
  145. package/packages/providers/openai-usage.ts +263 -0
  146. package/packages/providers/package.json +22 -0
  147. package/packages/providers/test/providers.test.ts +225 -0
  148. package/packages/quota-manager/README.md +3 -0
  149. package/packages/quota-manager/{dist/examples/tui-usage-integration.js → examples/tui-usage-integration.ts} +16 -17
  150. package/packages/quota-manager/index.ts +28 -0
  151. package/packages/quota-manager/package.json +22 -0
  152. package/packages/quota-manager/quota-manager.ts +339 -0
  153. package/packages/quota-manager/test/quota.test.ts +432 -0
  154. package/packages/quota-manager/tui-usage-monitor.ts +355 -0
  155. package/packages/rate-limiter/package.json +21 -0
  156. package/packages/rate-limiter/test/limiter.test.ts +128 -0
  157. package/packages/react-vite-plugin/README.md +1 -0
  158. package/packages/react-vite-plugin/package.json +20 -0
  159. package/packages/react-vite-plugin/test/analyzer.test.ts +139 -0
  160. package/packages/release-manager/package.json +21 -0
  161. package/packages/release-manager/test/release.test.ts +215 -0
  162. package/packages/requirement-compiler/package.json +25 -0
  163. package/packages/requirement-compiler/test/requirement-compiler.test.ts +743 -0
  164. package/packages/runtime/README.md +3 -0
  165. package/packages/runtime/command-executor.ts +523 -0
  166. package/packages/runtime/index.ts +50 -0
  167. package/packages/runtime/local-runtime-agent.ts +480 -0
  168. package/packages/runtime/package.json +22 -0
  169. package/packages/runtime/policy-engine.ts +813 -0
  170. package/packages/runtime/runtime-api.ts +665 -0
  171. package/packages/runtime/test/runtime.test.ts +297 -0
  172. package/packages/runtime/workspace-manager.ts +591 -0
  173. package/packages/scheduler/README.md +3 -0
  174. package/packages/scheduler/package.json +22 -0
  175. package/packages/scheduler/test/scheduler.test.ts +125 -0
  176. package/packages/scheduler-adapter/README.md +36 -0
  177. package/packages/scheduler-adapter/package.json +32 -0
  178. package/packages/session/README.md +273 -0
  179. package/packages/session/package.json +38 -0
  180. package/packages/session/test/manager.test.ts +233 -0
  181. package/packages/session-api/package.json +12 -0
  182. package/packages/session-export/package.json +12 -0
  183. package/packages/shared-context/README.md +3 -0
  184. package/packages/shared-context/package.json +22 -0
  185. package/packages/shared-context/test/shared-context.test.ts +114 -0
  186. package/packages/skill-registry/package.json +41 -0
  187. package/packages/skill-registry/test/registry.test.ts +508 -0
  188. package/packages/sprint-planner/package.json +21 -0
  189. package/packages/sprint-planner/test/planner.test.ts +187 -0
  190. package/packages/subscription-engine/package.json +12 -0
  191. package/packages/task-compiler/package.json +43 -0
  192. package/packages/task-compiler/test/task-compiler.test.ts +628 -0
  193. package/packages/tencentdb-memory/package.json +23 -0
  194. package/packages/tencentdb-sync/package.json +26 -0
  195. package/packages/test-data-generator/README.md +365 -0
  196. package/packages/test-data-generator/package.json +39 -0
  197. package/packages/test-data-generator/test/generator.test.ts +265 -0
  198. package/packages/test-generator/package.json +21 -0
  199. package/packages/test-generator/test/generator.test.ts +156 -0
  200. package/packages/todo-bd-sync/package.json +22 -0
  201. package/packages/token-estimation/package.json +22 -0
  202. package/packages/token-estimation/test/token-estimation.test.ts +207 -0
  203. package/packages/token-optimizer/package.json +21 -0
  204. package/packages/token-optimizer/test/optimizer.test.ts +141 -0
  205. package/packages/tui/README.md +3 -0
  206. package/packages/tui/package.json +22 -0
  207. package/packages/types/package.json +25 -0
  208. package/packages/workflow-events/package.json +12 -0
  209. package/packages/workspace-scanner/package.json +12 -0
  210. package/packages/workspace-scanner/test/scanner.test.ts +42 -0
  211. package/packages/worktree/README.md +3 -0
  212. package/packages/worktree/package.json +22 -0
  213. package/packages/worktree/test/worktree.test.ts +163 -0
  214. package/packages/worktree/worktree.ts +293 -0
  215. package/packages/write-review/package.json +22 -0
  216. package/packages/a2a-adapter/dist/discovery.d.ts +0 -52
  217. package/packages/a2a-adapter/dist/discovery.d.ts.map +0 -1
  218. package/packages/a2a-adapter/dist/discovery.js +0 -76
  219. package/packages/a2a-adapter/dist/discovery.js.map +0 -1
  220. package/packages/architecture-generator/dist/adr.d.ts +0 -15
  221. package/packages/architecture-generator/dist/adr.d.ts.map +0 -1
  222. package/packages/architecture-generator/dist/adr.js +0 -42
  223. package/packages/architecture-generator/dist/adr.js.map +0 -1
  224. package/packages/architecture-generator/dist/index.d.ts +0 -9
  225. package/packages/architecture-generator/dist/index.d.ts.map +0 -1
  226. package/packages/architecture-generator/dist/index.js +0 -9
  227. package/packages/architecture-generator/dist/index.js.map +0 -1
  228. package/packages/architecture-generator/dist/mermaid.d.ts +0 -30
  229. package/packages/architecture-generator/dist/mermaid.d.ts.map +0 -1
  230. package/packages/architecture-generator/dist/mermaid.js +0 -58
  231. package/packages/architecture-generator/dist/mermaid.js.map +0 -1
  232. package/packages/architecture-generator/dist/types.d.ts +0 -30
  233. package/packages/architecture-generator/dist/types.d.ts.map +0 -1
  234. package/packages/architecture-generator/dist/types.js +0 -7
  235. package/packages/architecture-generator/dist/types.js.map +0 -1
  236. package/packages/auth/dist/minimax-browser-auth.d.ts +0 -89
  237. package/packages/auth/dist/minimax-browser-auth.d.ts.map +0 -1
  238. package/packages/auth/dist/minimax-browser-auth.js +0 -890
  239. package/packages/auth/dist/minimax-browser-auth.js.map +0 -1
  240. package/packages/auth/dist/run-minimax-auth.d.ts +0 -19
  241. package/packages/auth/dist/run-minimax-auth.d.ts.map +0 -1
  242. package/packages/auth/dist/run-minimax-auth.js +0 -112
  243. package/packages/auth/dist/run-minimax-auth.js.map +0 -1
  244. package/packages/capability-registry/src/types.js +0 -10
  245. package/packages/clipboard/dist/src/clipboard.d.ts +0 -11
  246. package/packages/clipboard/dist/src/clipboard.d.ts.map +0 -1
  247. package/packages/clipboard/dist/src/clipboard.js +0 -51
  248. package/packages/clipboard/dist/src/clipboard.js.map +0 -1
  249. package/packages/clipboard/dist/src/copy-sync.d.ts +0 -27
  250. package/packages/clipboard/dist/src/copy-sync.d.ts.map +0 -1
  251. package/packages/clipboard/dist/src/copy-sync.js +0 -212
  252. package/packages/clipboard/dist/src/copy-sync.js.map +0 -1
  253. package/packages/clipboard/dist/src/gist-relay.d.ts +0 -48
  254. package/packages/clipboard/dist/src/gist-relay.d.ts.map +0 -1
  255. package/packages/clipboard/dist/src/gist-relay.js +0 -186
  256. package/packages/clipboard/dist/src/gist-relay.js.map +0 -1
  257. package/packages/clipboard/dist/src/github-login.d.ts +0 -16
  258. package/packages/clipboard/dist/src/github-login.d.ts.map +0 -1
  259. package/packages/clipboard/dist/src/github-login.js +0 -69
  260. package/packages/clipboard/dist/src/github-login.js.map +0 -1
  261. package/packages/clipboard/dist/src/index.d.ts +0 -5
  262. package/packages/clipboard/dist/src/index.d.ts.map +0 -1
  263. package/packages/clipboard/dist/src/index.js +0 -4
  264. package/packages/clipboard/dist/src/index.js.map +0 -1
  265. package/packages/clipboard/dist/src/paste-bridge.d.ts +0 -19
  266. package/packages/clipboard/dist/src/paste-bridge.d.ts.map +0 -1
  267. package/packages/clipboard/dist/src/paste-bridge.js +0 -78
  268. package/packages/clipboard/dist/src/paste-bridge.js.map +0 -1
  269. package/packages/clipboard/dist/src/types.d.ts +0 -13
  270. package/packages/clipboard/dist/src/types.d.ts.map +0 -1
  271. package/packages/clipboard/dist/src/types.js +0 -5
  272. package/packages/clipboard/dist/src/types.js.map +0 -1
  273. package/packages/clipboard-plugin/dist/index.d.ts +0 -28
  274. package/packages/clipboard-plugin/dist/index.d.ts.map +0 -1
  275. package/packages/clipboard-plugin/dist/index.js +0 -64
  276. package/packages/clipboard-plugin/dist/index.js.map +0 -1
  277. package/packages/clipboard-plugin/dist/types.d.ts +0 -30
  278. package/packages/clipboard-plugin/dist/types.d.ts.map +0 -1
  279. package/packages/clipboard-plugin/dist/types.js +0 -5
  280. package/packages/clipboard-plugin/dist/types.js.map +0 -1
  281. package/packages/context-discovery/dist/src/discover.d.ts +0 -3
  282. package/packages/context-discovery/dist/src/discover.d.ts.map +0 -1
  283. package/packages/context-discovery/dist/src/discover.js +0 -42
  284. package/packages/context-discovery/dist/src/discover.js.map +0 -1
  285. package/packages/context-discovery/dist/src/discovery.d.ts +0 -28
  286. package/packages/context-discovery/dist/src/discovery.d.ts.map +0 -1
  287. package/packages/context-discovery/dist/src/discovery.js +0 -21
  288. package/packages/context-discovery/dist/src/discovery.js.map +0 -1
  289. package/packages/context-discovery/dist/src/index.d.ts +0 -3
  290. package/packages/context-discovery/dist/src/index.d.ts.map +0 -1
  291. package/packages/context-discovery/dist/src/index.js +0 -2
  292. package/packages/context-discovery/dist/src/index.js.map +0 -1
  293. package/packages/context-discovery/dist/src/types.d.ts +0 -16
  294. package/packages/context-discovery/dist/src/types.d.ts.map +0 -1
  295. package/packages/context-discovery/dist/src/types.js +0 -2
  296. package/packages/context-discovery/dist/src/types.js.map +0 -1
  297. package/packages/dependency-analyzer/dist/analyzer.d.ts +0 -17
  298. package/packages/dependency-analyzer/dist/analyzer.d.ts.map +0 -1
  299. package/packages/dependency-analyzer/dist/analyzer.js +0 -106
  300. package/packages/dependency-analyzer/dist/analyzer.js.map +0 -1
  301. package/packages/dependency-analyzer/dist/imports.d.ts +0 -12
  302. package/packages/dependency-analyzer/dist/imports.d.ts.map +0 -1
  303. package/packages/dependency-analyzer/dist/imports.js +0 -73
  304. package/packages/dependency-analyzer/dist/imports.js.map +0 -1
  305. package/packages/dependency-analyzer/dist/index.d.ts +0 -4
  306. package/packages/dependency-analyzer/dist/index.d.ts.map +0 -1
  307. package/packages/dependency-analyzer/dist/index.js +0 -3
  308. package/packages/dependency-analyzer/dist/index.js.map +0 -1
  309. package/packages/dependency-analyzer/dist/src/analyzer.d.ts +0 -17
  310. package/packages/dependency-analyzer/dist/src/analyzer.d.ts.map +0 -1
  311. package/packages/dependency-analyzer/dist/src/analyzer.js +0 -119
  312. package/packages/dependency-analyzer/dist/src/analyzer.js.map +0 -1
  313. package/packages/dependency-analyzer/dist/src/imports.d.ts +0 -12
  314. package/packages/dependency-analyzer/dist/src/imports.d.ts.map +0 -1
  315. package/packages/dependency-analyzer/dist/src/imports.js +0 -73
  316. package/packages/dependency-analyzer/dist/src/imports.js.map +0 -1
  317. package/packages/dependency-analyzer/dist/src/index.d.ts +0 -4
  318. package/packages/dependency-analyzer/dist/src/index.d.ts.map +0 -1
  319. package/packages/dependency-analyzer/dist/src/index.js +0 -3
  320. package/packages/dependency-analyzer/dist/src/index.js.map +0 -1
  321. package/packages/dependency-analyzer/dist/src/types.d.ts +0 -28
  322. package/packages/dependency-analyzer/dist/src/types.d.ts.map +0 -1
  323. package/packages/dependency-analyzer/dist/src/types.js +0 -5
  324. package/packages/dependency-analyzer/dist/src/types.js.map +0 -1
  325. package/packages/dependency-analyzer/dist/test/analyzer.test.js +0 -37
  326. package/packages/dependency-analyzer/dist/types.d.ts +0 -28
  327. package/packages/dependency-analyzer/dist/types.d.ts.map +0 -1
  328. package/packages/dependency-analyzer/dist/types.js +0 -5
  329. package/packages/dependency-analyzer/dist/types.js.map +0 -1
  330. package/packages/event-bus/dist/src/bus.d.ts +0 -15
  331. package/packages/event-bus/dist/src/bus.d.ts.map +0 -1
  332. package/packages/event-bus/dist/src/bus.js +0 -98
  333. package/packages/event-bus/dist/src/bus.js.map +0 -1
  334. package/packages/event-bus/dist/src/herdr-bus.d.ts +0 -121
  335. package/packages/event-bus/dist/src/herdr-bus.d.ts.map +0 -1
  336. package/packages/event-bus/dist/src/herdr-bus.js +0 -324
  337. package/packages/event-bus/dist/src/herdr-bus.js.map +0 -1
  338. package/packages/event-bus/dist/src/index.d.ts +0 -6
  339. package/packages/event-bus/dist/src/index.d.ts.map +0 -1
  340. package/packages/event-bus/dist/src/index.js +0 -4
  341. package/packages/event-bus/dist/src/index.js.map +0 -1
  342. package/packages/event-bus/dist/src/types.d.ts +0 -27
  343. package/packages/event-bus/dist/src/types.d.ts.map +0 -1
  344. package/packages/event-bus/dist/src/types.js +0 -10
  345. package/packages/event-bus/dist/src/types.js.map +0 -1
  346. package/packages/event-store/dist/src/index.d.ts +0 -3
  347. package/packages/event-store/dist/src/index.d.ts.map +0 -1
  348. package/packages/event-store/dist/src/index.js +0 -2
  349. package/packages/event-store/dist/src/index.js.map +0 -1
  350. package/packages/event-store/dist/src/store.d.ts +0 -15
  351. package/packages/event-store/dist/src/store.d.ts.map +0 -1
  352. package/packages/event-store/dist/src/store.js +0 -139
  353. package/packages/event-store/dist/src/store.js.map +0 -1
  354. package/packages/event-store/dist/src/types.d.ts +0 -48
  355. package/packages/event-store/dist/src/types.d.ts.map +0 -1
  356. package/packages/event-store/dist/src/types.js +0 -5
  357. package/packages/event-store/dist/src/types.js.map +0 -1
  358. package/packages/file-copy-helper/dist/src/extension.js +0 -121
  359. package/packages/file-copy-helper/src/extension.js +0 -149
  360. package/packages/intent-analyzer/dist/analyzer.d.ts +0 -13
  361. package/packages/intent-analyzer/dist/analyzer.d.ts.map +0 -1
  362. package/packages/intent-analyzer/dist/analyzer.js +0 -72
  363. package/packages/intent-analyzer/dist/analyzer.js.map +0 -1
  364. package/packages/intent-analyzer/dist/index.d.ts +0 -3
  365. package/packages/intent-analyzer/dist/index.d.ts.map +0 -1
  366. package/packages/intent-analyzer/dist/index.js +0 -2
  367. package/packages/intent-analyzer/dist/index.js.map +0 -1
  368. package/packages/intent-analyzer/dist/src/analyzer.d.ts +0 -13
  369. package/packages/intent-analyzer/dist/src/analyzer.d.ts.map +0 -1
  370. package/packages/intent-analyzer/dist/src/analyzer.js +0 -239
  371. package/packages/intent-analyzer/dist/src/analyzer.js.map +0 -1
  372. package/packages/intent-analyzer/dist/src/index.d.ts +0 -3
  373. package/packages/intent-analyzer/dist/src/index.d.ts.map +0 -1
  374. package/packages/intent-analyzer/dist/src/index.js +0 -2
  375. package/packages/intent-analyzer/dist/src/index.js.map +0 -1
  376. package/packages/intent-analyzer/dist/src/types.d.ts +0 -26
  377. package/packages/intent-analyzer/dist/src/types.d.ts.map +0 -1
  378. package/packages/intent-analyzer/dist/src/types.js +0 -7
  379. package/packages/intent-analyzer/dist/src/types.js.map +0 -1
  380. package/packages/intent-analyzer/dist/test/analyzer.test.js +0 -56
  381. package/packages/intent-analyzer/dist/types.d.ts +0 -26
  382. package/packages/intent-analyzer/dist/types.d.ts.map +0 -1
  383. package/packages/intent-analyzer/dist/types.js +0 -7
  384. package/packages/intent-analyzer/dist/types.js.map +0 -1
  385. package/packages/knowledge-graph/dist/graph-extractor.d.ts +0 -27
  386. package/packages/knowledge-graph/dist/graph-extractor.d.ts.map +0 -1
  387. package/packages/knowledge-graph/dist/graph-extractor.js +0 -276
  388. package/packages/knowledge-graph/dist/graph-extractor.js.map +0 -1
  389. package/packages/knowledge-graph/dist/index.d.ts +0 -27
  390. package/packages/knowledge-graph/dist/index.d.ts.map +0 -1
  391. package/packages/knowledge-graph/dist/index.js +0 -27
  392. package/packages/knowledge-graph/dist/index.js.map +0 -1
  393. package/packages/knowledge-graph/dist/mcp-client.d.ts +0 -38
  394. package/packages/knowledge-graph/dist/mcp-client.d.ts.map +0 -1
  395. package/packages/knowledge-graph/dist/mcp-client.js +0 -157
  396. package/packages/knowledge-graph/dist/mcp-client.js.map +0 -1
  397. package/packages/knowledge-graph/dist/provenance-linker.d.ts +0 -19
  398. package/packages/knowledge-graph/dist/provenance-linker.d.ts.map +0 -1
  399. package/packages/knowledge-graph/dist/provenance-linker.js +0 -91
  400. package/packages/knowledge-graph/dist/provenance-linker.js.map +0 -1
  401. package/packages/knowledge-graph/dist/types.d.ts +0 -53
  402. package/packages/knowledge-graph/dist/types.d.ts.map +0 -1
  403. package/packages/knowledge-graph/dist/types.js +0 -7
  404. package/packages/knowledge-graph/dist/types.js.map +0 -1
  405. package/packages/knowledge-retrieval/dist/index.d.ts +0 -8
  406. package/packages/knowledge-retrieval/dist/index.d.ts.map +0 -1
  407. package/packages/knowledge-retrieval/dist/index.js +0 -7
  408. package/packages/knowledge-retrieval/dist/index.js.map +0 -1
  409. package/packages/knowledge-retrieval/dist/mcp-client.d.ts +0 -61
  410. package/packages/knowledge-retrieval/dist/mcp-client.d.ts.map +0 -1
  411. package/packages/knowledge-retrieval/dist/mcp-client.js +0 -132
  412. package/packages/knowledge-retrieval/dist/mcp-client.js.map +0 -1
  413. package/packages/knowledge-retrieval/dist/types.d.ts +0 -105
  414. package/packages/knowledge-retrieval/dist/types.d.ts.map +0 -1
  415. package/packages/knowledge-retrieval/dist/types.js +0 -7
  416. package/packages/knowledge-retrieval/dist/types.js.map +0 -1
  417. package/packages/milestone-manager/dist/engine.d.ts +0 -27
  418. package/packages/milestone-manager/dist/engine.d.ts.map +0 -1
  419. package/packages/milestone-manager/dist/engine.js +0 -78
  420. package/packages/milestone-manager/dist/engine.js.map +0 -1
  421. package/packages/milestone-manager/dist/index.d.ts +0 -6
  422. package/packages/milestone-manager/dist/index.d.ts.map +0 -1
  423. package/packages/milestone-manager/dist/index.js +0 -6
  424. package/packages/milestone-manager/dist/index.js.map +0 -1
  425. package/packages/milestone-manager/dist/types.d.ts +0 -25
  426. package/packages/milestone-manager/dist/types.d.ts.map +0 -1
  427. package/packages/milestone-manager/dist/types.js +0 -7
  428. package/packages/milestone-manager/dist/types.js.map +0 -1
  429. package/packages/notification/dist/adapters/email-adapter.d.ts +0 -17
  430. package/packages/notification/dist/adapters/email-adapter.d.ts.map +0 -1
  431. package/packages/notification/dist/adapters/email-adapter.js +0 -89
  432. package/packages/notification/dist/adapters/email-adapter.js.map +0 -1
  433. package/packages/notification/dist/adapters/line-adapter.d.ts +0 -17
  434. package/packages/notification/dist/adapters/line-adapter.d.ts.map +0 -1
  435. package/packages/notification/dist/adapters/line-adapter.js +0 -99
  436. package/packages/notification/dist/adapters/line-adapter.js.map +0 -1
  437. package/packages/notification/dist/adapters/ntfy-adapter.d.ts +0 -17
  438. package/packages/notification/dist/adapters/ntfy-adapter.d.ts.map +0 -1
  439. package/packages/notification/dist/adapters/ntfy-adapter.js +0 -84
  440. package/packages/notification/dist/adapters/ntfy-adapter.js.map +0 -1
  441. package/packages/notification/dist/adapters/telegram-adapter.d.ts +0 -17
  442. package/packages/notification/dist/adapters/telegram-adapter.d.ts.map +0 -1
  443. package/packages/notification/dist/adapters/telegram-adapter.js +0 -88
  444. package/packages/notification/dist/adapters/telegram-adapter.js.map +0 -1
  445. package/packages/notification/dist/adapters/webhook-adapter.d.ts +0 -15
  446. package/packages/notification/dist/adapters/webhook-adapter.d.ts.map +0 -1
  447. package/packages/notification/dist/adapters/webhook-adapter.js +0 -64
  448. package/packages/notification/dist/adapters/webhook-adapter.js.map +0 -1
  449. package/packages/notification/dist/base-adapter.d.ts +0 -36
  450. package/packages/notification/dist/base-adapter.d.ts.map +0 -1
  451. package/packages/notification/dist/base-adapter.js +0 -39
  452. package/packages/notification/dist/base-adapter.js.map +0 -1
  453. package/packages/notification/dist/index.d.ts +0 -10
  454. package/packages/notification/dist/index.d.ts.map +0 -1
  455. package/packages/notification/dist/index.js +0 -10
  456. package/packages/notification/dist/index.js.map +0 -1
  457. package/packages/notification/dist/notification-center.d.ts +0 -46
  458. package/packages/notification/dist/notification-center.d.ts.map +0 -1
  459. package/packages/notification/dist/notification-center.js +0 -232
  460. package/packages/notification/dist/notification-center.js.map +0 -1
  461. package/packages/notification/dist/types.d.ts +0 -69
  462. package/packages/notification/dist/types.d.ts.map +0 -1
  463. package/packages/notification/dist/types.js +0 -7
  464. package/packages/notification/dist/types.js.map +0 -1
  465. package/packages/okf-indexer/dist/cli.d.ts +0 -8
  466. package/packages/okf-indexer/dist/cli.d.ts.map +0 -1
  467. package/packages/okf-indexer/dist/cli.js +0 -23
  468. package/packages/okf-indexer/dist/cli.js.map +0 -1
  469. package/packages/okf-indexer/dist/indexer.d.ts +0 -55
  470. package/packages/okf-indexer/dist/indexer.d.ts.map +0 -1
  471. package/packages/okf-indexer/dist/indexer.js +0 -147
  472. package/packages/okf-indexer/dist/indexer.js.map +0 -1
  473. package/packages/project-bootstrap/dist/bootstrap.d.ts +0 -23
  474. package/packages/project-bootstrap/dist/bootstrap.d.ts.map +0 -1
  475. package/packages/project-bootstrap/dist/bootstrap.js +0 -128
  476. package/packages/project-bootstrap/dist/bootstrap.js.map +0 -1
  477. package/packages/project-bootstrap/dist/frappe.d.ts +0 -8
  478. package/packages/project-bootstrap/dist/frappe.d.ts.map +0 -1
  479. package/packages/project-bootstrap/dist/frappe.js +0 -82
  480. package/packages/project-bootstrap/dist/frappe.js.map +0 -1
  481. package/packages/project-bootstrap/dist/index.d.ts +0 -27
  482. package/packages/project-bootstrap/dist/index.d.ts.map +0 -1
  483. package/packages/project-bootstrap/dist/index.js +0 -27
  484. package/packages/project-bootstrap/dist/index.js.map +0 -1
  485. package/packages/project-bootstrap/dist/minimal.d.ts +0 -8
  486. package/packages/project-bootstrap/dist/minimal.d.ts.map +0 -1
  487. package/packages/project-bootstrap/dist/minimal.js +0 -35
  488. package/packages/project-bootstrap/dist/minimal.js.map +0 -1
  489. package/packages/project-bootstrap/dist/types.d.ts +0 -61
  490. package/packages/project-bootstrap/dist/types.d.ts.map +0 -1
  491. package/packages/project-bootstrap/dist/types.js +0 -7
  492. package/packages/project-bootstrap/dist/types.js.map +0 -1
  493. package/packages/project-bootstrap/dist/typescript.d.ts +0 -8
  494. package/packages/project-bootstrap/dist/typescript.d.ts.map +0 -1
  495. package/packages/project-bootstrap/dist/typescript.js +0 -103
  496. package/packages/project-bootstrap/dist/typescript.js.map +0 -1
  497. package/packages/projection-engine/dist/src/engine.d.ts +0 -61
  498. package/packages/projection-engine/dist/src/engine.d.ts.map +0 -1
  499. package/packages/projection-engine/dist/src/engine.js +0 -87
  500. package/packages/projection-engine/dist/src/engine.js.map +0 -1
  501. package/packages/projection-engine/dist/src/index.d.ts +0 -2
  502. package/packages/projection-engine/dist/src/index.d.ts.map +0 -1
  503. package/packages/projection-engine/dist/src/index.js +0 -2
  504. package/packages/projection-engine/dist/src/index.js.map +0 -1
  505. package/packages/projection-engine/dist/src/project.d.ts +0 -3
  506. package/packages/projection-engine/dist/src/project.d.ts.map +0 -1
  507. package/packages/projection-engine/dist/src/project.js +0 -24
  508. package/packages/projection-engine/dist/src/project.js.map +0 -1
  509. package/packages/projection-engine/dist/src/types.d.ts +0 -55
  510. package/packages/projection-engine/dist/src/types.d.ts.map +0 -1
  511. package/packages/projection-engine/dist/src/types.js +0 -5
  512. package/packages/projection-engine/dist/src/types.js.map +0 -1
  513. package/packages/providers/dist/adapters.d.ts +0 -133
  514. package/packages/providers/dist/adapters.d.ts.map +0 -1
  515. package/packages/providers/dist/adapters.js +0 -236
  516. package/packages/providers/dist/adapters.js.map +0 -1
  517. package/packages/providers/dist/deepagents-adapter.d.ts +0 -78
  518. package/packages/providers/dist/deepagents-adapter.d.ts.map +0 -1
  519. package/packages/providers/dist/deepagents-adapter.js +0 -323
  520. package/packages/providers/dist/deepagents-adapter.js.map +0 -1
  521. package/packages/providers/dist/glm-usage.d.ts +0 -102
  522. package/packages/providers/dist/glm-usage.d.ts.map +0 -1
  523. package/packages/providers/dist/glm-usage.js +0 -197
  524. package/packages/providers/dist/glm-usage.js.map +0 -1
  525. package/packages/providers/dist/index.d.ts +0 -11
  526. package/packages/providers/dist/index.d.ts.map +0 -1
  527. package/packages/providers/dist/index.js +0 -11
  528. package/packages/providers/dist/index.js.map +0 -1
  529. package/packages/providers/dist/openai-usage.d.ts +0 -103
  530. package/packages/providers/dist/openai-usage.d.ts.map +0 -1
  531. package/packages/providers/dist/openai-usage.js +0 -208
  532. package/packages/providers/dist/openai-usage.js.map +0 -1
  533. package/packages/providers/dist/provider-id.d.ts +0 -46
  534. package/packages/providers/dist/provider-id.d.ts.map +0 -1
  535. package/packages/providers/dist/provider-id.js +0 -113
  536. package/packages/providers/dist/provider-id.js.map +0 -1
  537. package/packages/providers/dist/src/adapters.d.ts +0 -133
  538. package/packages/providers/dist/src/adapters.d.ts.map +0 -1
  539. package/packages/providers/dist/src/adapters.js +0 -236
  540. package/packages/providers/dist/src/adapters.js.map +0 -1
  541. package/packages/providers/dist/src/deepagents-adapter.d.ts +0 -78
  542. package/packages/providers/dist/src/deepagents-adapter.d.ts.map +0 -1
  543. package/packages/providers/dist/src/deepagents-adapter.js +0 -323
  544. package/packages/providers/dist/src/deepagents-adapter.js.map +0 -1
  545. package/packages/providers/dist/src/glm-usage.d.ts +0 -102
  546. package/packages/providers/dist/src/glm-usage.d.ts.map +0 -1
  547. package/packages/providers/dist/src/glm-usage.js +0 -197
  548. package/packages/providers/dist/src/glm-usage.js.map +0 -1
  549. package/packages/providers/dist/src/index.d.ts +0 -11
  550. package/packages/providers/dist/src/index.d.ts.map +0 -1
  551. package/packages/providers/dist/src/index.js +0 -11
  552. package/packages/providers/dist/src/index.js.map +0 -1
  553. package/packages/providers/dist/src/openai-usage.d.ts +0 -103
  554. package/packages/providers/dist/src/openai-usage.d.ts.map +0 -1
  555. package/packages/providers/dist/src/openai-usage.js +0 -208
  556. package/packages/providers/dist/src/openai-usage.js.map +0 -1
  557. package/packages/providers/dist/src/provider-id.d.ts +0 -46
  558. package/packages/providers/dist/src/provider-id.d.ts.map +0 -1
  559. package/packages/providers/dist/src/provider-id.js +0 -113
  560. package/packages/providers/dist/src/provider-id.js.map +0 -1
  561. package/packages/quota-manager/dist/examples/tui-usage-integration.d.ts +0 -35
  562. package/packages/quota-manager/dist/examples/tui-usage-integration.d.ts.map +0 -1
  563. package/packages/quota-manager/dist/examples/tui-usage-integration.js.map +0 -1
  564. package/packages/quota-manager/dist/index.d.ts +0 -8
  565. package/packages/quota-manager/dist/index.d.ts.map +0 -1
  566. package/packages/quota-manager/dist/index.js +0 -8
  567. package/packages/quota-manager/dist/index.js.map +0 -1
  568. package/packages/quota-manager/dist/quota-manager.d.ts +0 -70
  569. package/packages/quota-manager/dist/quota-manager.d.ts.map +0 -1
  570. package/packages/quota-manager/dist/quota-manager.js +0 -260
  571. package/packages/quota-manager/dist/quota-manager.js.map +0 -1
  572. package/packages/quota-manager/dist/src/examples/tui-usage-integration.d.ts +0 -35
  573. package/packages/quota-manager/dist/src/examples/tui-usage-integration.d.ts.map +0 -1
  574. package/packages/quota-manager/dist/src/examples/tui-usage-integration.js +0 -73
  575. package/packages/quota-manager/dist/src/examples/tui-usage-integration.js.map +0 -1
  576. package/packages/quota-manager/dist/src/index.d.ts +0 -8
  577. package/packages/quota-manager/dist/src/index.d.ts.map +0 -1
  578. package/packages/quota-manager/dist/src/index.js +0 -8
  579. package/packages/quota-manager/dist/src/index.js.map +0 -1
  580. package/packages/quota-manager/dist/src/quota-manager.d.ts +0 -70
  581. package/packages/quota-manager/dist/src/quota-manager.d.ts.map +0 -1
  582. package/packages/quota-manager/dist/src/quota-manager.js +0 -260
  583. package/packages/quota-manager/dist/src/quota-manager.js.map +0 -1
  584. package/packages/quota-manager/dist/src/tui-usage-monitor.d.ts +0 -96
  585. package/packages/quota-manager/dist/src/tui-usage-monitor.d.ts.map +0 -1
  586. package/packages/quota-manager/dist/src/tui-usage-monitor.js +0 -268
  587. package/packages/quota-manager/dist/src/tui-usage-monitor.js.map +0 -1
  588. package/packages/quota-manager/dist/tui-usage-monitor.d.ts +0 -96
  589. package/packages/quota-manager/dist/tui-usage-monitor.d.ts.map +0 -1
  590. package/packages/quota-manager/dist/tui-usage-monitor.js +0 -268
  591. package/packages/quota-manager/dist/tui-usage-monitor.js.map +0 -1
  592. package/packages/runtime/dist/command-executor.d.ts +0 -129
  593. package/packages/runtime/dist/command-executor.d.ts.map +0 -1
  594. package/packages/runtime/dist/command-executor.js +0 -383
  595. package/packages/runtime/dist/command-executor.js.map +0 -1
  596. package/packages/runtime/dist/index.d.ts +0 -11
  597. package/packages/runtime/dist/index.d.ts.map +0 -1
  598. package/packages/runtime/dist/index.js +0 -11
  599. package/packages/runtime/dist/index.js.map +0 -1
  600. package/packages/runtime/dist/local-runtime-agent.d.ts +0 -111
  601. package/packages/runtime/dist/local-runtime-agent.d.ts.map +0 -1
  602. package/packages/runtime/dist/local-runtime-agent.js +0 -356
  603. package/packages/runtime/dist/local-runtime-agent.js.map +0 -1
  604. package/packages/runtime/dist/policy-engine.d.ts +0 -203
  605. package/packages/runtime/dist/policy-engine.d.ts.map +0 -1
  606. package/packages/runtime/dist/policy-engine.js +0 -592
  607. package/packages/runtime/dist/policy-engine.js.map +0 -1
  608. package/packages/runtime/dist/runtime-api.d.ts +0 -137
  609. package/packages/runtime/dist/runtime-api.d.ts.map +0 -1
  610. package/packages/runtime/dist/runtime-api.js +0 -454
  611. package/packages/runtime/dist/runtime-api.js.map +0 -1
  612. package/packages/runtime/dist/src/command-executor.d.ts +0 -129
  613. package/packages/runtime/dist/src/command-executor.d.ts.map +0 -1
  614. package/packages/runtime/dist/src/command-executor.js +0 -383
  615. package/packages/runtime/dist/src/command-executor.js.map +0 -1
  616. package/packages/runtime/dist/src/index.d.ts +0 -11
  617. package/packages/runtime/dist/src/index.d.ts.map +0 -1
  618. package/packages/runtime/dist/src/index.js +0 -11
  619. package/packages/runtime/dist/src/index.js.map +0 -1
  620. package/packages/runtime/dist/src/local-runtime-agent.d.ts +0 -111
  621. package/packages/runtime/dist/src/local-runtime-agent.d.ts.map +0 -1
  622. package/packages/runtime/dist/src/local-runtime-agent.js +0 -356
  623. package/packages/runtime/dist/src/local-runtime-agent.js.map +0 -1
  624. package/packages/runtime/dist/src/policy-engine.d.ts +0 -203
  625. package/packages/runtime/dist/src/policy-engine.d.ts.map +0 -1
  626. package/packages/runtime/dist/src/policy-engine.js +0 -592
  627. package/packages/runtime/dist/src/policy-engine.js.map +0 -1
  628. package/packages/runtime/dist/src/runtime-api.d.ts +0 -137
  629. package/packages/runtime/dist/src/runtime-api.d.ts.map +0 -1
  630. package/packages/runtime/dist/src/runtime-api.js +0 -454
  631. package/packages/runtime/dist/src/runtime-api.js.map +0 -1
  632. package/packages/runtime/dist/src/workspace-manager.d.ts +0 -162
  633. package/packages/runtime/dist/src/workspace-manager.d.ts.map +0 -1
  634. package/packages/runtime/dist/src/workspace-manager.js +0 -451
  635. package/packages/runtime/dist/src/workspace-manager.js.map +0 -1
  636. package/packages/runtime/dist/workspace-manager.d.ts +0 -162
  637. package/packages/runtime/dist/workspace-manager.d.ts.map +0 -1
  638. package/packages/runtime/dist/workspace-manager.js +0 -451
  639. package/packages/runtime/dist/workspace-manager.js.map +0 -1
  640. package/packages/session-api/dist/src/api.d.ts +0 -83
  641. package/packages/session-api/dist/src/api.d.ts.map +0 -1
  642. package/packages/session-api/dist/src/api.js +0 -49
  643. package/packages/session-api/dist/src/api.js.map +0 -1
  644. package/packages/session-api/dist/src/index.d.ts +0 -2
  645. package/packages/session-api/dist/src/index.d.ts.map +0 -1
  646. package/packages/session-api/dist/src/index.js +0 -2
  647. package/packages/session-api/dist/src/index.js.map +0 -1
  648. package/packages/session-api/dist/src/types.d.ts +0 -22
  649. package/packages/session-api/dist/src/types.d.ts.map +0 -1
  650. package/packages/session-api/dist/src/types.js +0 -5
  651. package/packages/session-api/dist/src/types.js.map +0 -1
  652. package/packages/session-export/dist/src/exporter.d.ts +0 -28
  653. package/packages/session-export/dist/src/exporter.d.ts.map +0 -1
  654. package/packages/session-export/dist/src/exporter.js +0 -42
  655. package/packages/session-export/dist/src/exporter.js.map +0 -1
  656. package/packages/session-export/dist/src/index.d.ts +0 -2
  657. package/packages/session-export/dist/src/index.d.ts.map +0 -1
  658. package/packages/session-export/dist/src/index.js +0 -2
  659. package/packages/session-export/dist/src/index.js.map +0 -1
  660. package/packages/session-export/dist/src/types.d.ts +0 -20
  661. package/packages/session-export/dist/src/types.d.ts.map +0 -1
  662. package/packages/session-export/dist/src/types.js +0 -5
  663. package/packages/session-export/dist/src/types.js.map +0 -1
  664. package/packages/subscription-engine/dist/src/engine.d.ts +0 -13
  665. package/packages/subscription-engine/dist/src/engine.d.ts.map +0 -1
  666. package/packages/subscription-engine/dist/src/engine.js +0 -40
  667. package/packages/subscription-engine/dist/src/engine.js.map +0 -1
  668. package/packages/subscription-engine/dist/src/index.d.ts +0 -2
  669. package/packages/subscription-engine/dist/src/index.d.ts.map +0 -1
  670. package/packages/subscription-engine/dist/src/index.js +0 -2
  671. package/packages/subscription-engine/dist/src/index.js.map +0 -1
  672. package/packages/subscription-engine/dist/src/subscriptions.d.ts +0 -19
  673. package/packages/subscription-engine/dist/src/subscriptions.d.ts.map +0 -1
  674. package/packages/subscription-engine/dist/src/subscriptions.js +0 -39
  675. package/packages/subscription-engine/dist/src/subscriptions.js.map +0 -1
  676. package/packages/subscription-engine/dist/src/types.d.ts +0 -24
  677. package/packages/subscription-engine/dist/src/types.d.ts.map +0 -1
  678. package/packages/subscription-engine/dist/src/types.js +0 -5
  679. package/packages/subscription-engine/dist/src/types.js.map +0 -1
  680. package/packages/tencentdb-sync/dist/cli.d.ts +0 -7
  681. package/packages/tencentdb-sync/dist/cli.d.ts.map +0 -1
  682. package/packages/tencentdb-sync/dist/cli.js +0 -311
  683. package/packages/tencentdb-sync/dist/cli.js.map +0 -1
  684. package/packages/tencentdb-sync/dist/client.d.ts +0 -141
  685. package/packages/tencentdb-sync/dist/client.d.ts.map +0 -1
  686. package/packages/tencentdb-sync/dist/client.js +0 -166
  687. package/packages/tencentdb-sync/dist/client.js.map +0 -1
  688. package/packages/tencentdb-sync/dist/config.d.ts +0 -32
  689. package/packages/tencentdb-sync/dist/config.d.ts.map +0 -1
  690. package/packages/tencentdb-sync/dist/config.js +0 -102
  691. package/packages/tencentdb-sync/dist/config.js.map +0 -1
  692. package/packages/tencentdb-sync/dist/index.d.ts +0 -9
  693. package/packages/tencentdb-sync/dist/index.d.ts.map +0 -1
  694. package/packages/tencentdb-sync/dist/index.js +0 -8
  695. package/packages/tencentdb-sync/dist/index.js.map +0 -1
  696. package/packages/todo-bd-sync/dist/src/detector.js +0 -108
  697. package/packages/todo-bd-sync/dist/src/extension.js +0 -9
  698. package/packages/types/dist/ai-providers.d.ts +0 -36
  699. package/packages/types/dist/ai-providers.d.ts.map +0 -1
  700. package/packages/types/dist/ai-providers.js +0 -66
  701. package/packages/types/dist/ai-providers.js.map +0 -1
  702. package/packages/types/src/agent-worker-types.js +0 -41
  703. package/packages/types/src/ai-providers.js +0 -66
  704. package/packages/types/src/runtime-types.js +0 -3
  705. package/packages/workflow-events/dist/src/events.d.ts +0 -38
  706. package/packages/workflow-events/dist/src/events.d.ts.map +0 -1
  707. package/packages/workflow-events/dist/src/events.js +0 -55
  708. package/packages/workflow-events/dist/src/events.js.map +0 -1
  709. package/packages/workflow-events/dist/src/index.d.ts +0 -2
  710. package/packages/workflow-events/dist/src/index.d.ts.map +0 -1
  711. package/packages/workflow-events/dist/src/index.js +0 -2
  712. package/packages/workflow-events/dist/src/index.js.map +0 -1
  713. package/packages/workflow-events/dist/src/pipeline.d.ts +0 -21
  714. package/packages/workflow-events/dist/src/pipeline.d.ts.map +0 -1
  715. package/packages/workflow-events/dist/src/pipeline.js +0 -36
  716. package/packages/workflow-events/dist/src/pipeline.js.map +0 -1
  717. package/packages/workflow-events/dist/src/types.d.ts +0 -110
  718. package/packages/workflow-events/dist/src/types.d.ts.map +0 -1
  719. package/packages/workflow-events/dist/src/types.js +0 -5
  720. package/packages/workflow-events/dist/src/types.js.map +0 -1
  721. package/packages/workspace-scanner/dist/detect.d.ts +0 -3
  722. package/packages/workspace-scanner/dist/detect.d.ts.map +0 -1
  723. package/packages/workspace-scanner/dist/detect.js +0 -58
  724. package/packages/workspace-scanner/dist/detect.js.map +0 -1
  725. package/packages/workspace-scanner/dist/git.d.ts +0 -7
  726. package/packages/workspace-scanner/dist/git.d.ts.map +0 -1
  727. package/packages/workspace-scanner/dist/git.js +0 -75
  728. package/packages/workspace-scanner/dist/git.js.map +0 -1
  729. package/packages/workspace-scanner/dist/index.d.ts +0 -5
  730. package/packages/workspace-scanner/dist/index.d.ts.map +0 -1
  731. package/packages/workspace-scanner/dist/index.js +0 -4
  732. package/packages/workspace-scanner/dist/index.js.map +0 -1
  733. package/packages/workspace-scanner/dist/scanner.d.ts +0 -11
  734. package/packages/workspace-scanner/dist/scanner.d.ts.map +0 -1
  735. package/packages/workspace-scanner/dist/scanner.js +0 -46
  736. package/packages/workspace-scanner/dist/scanner.js.map +0 -1
  737. package/packages/workspace-scanner/dist/src/detect.d.ts +0 -3
  738. package/packages/workspace-scanner/dist/src/detect.d.ts.map +0 -1
  739. package/packages/workspace-scanner/dist/src/detect.js +0 -60
  740. package/packages/workspace-scanner/dist/src/detect.js.map +0 -1
  741. package/packages/workspace-scanner/dist/src/git.d.ts +0 -7
  742. package/packages/workspace-scanner/dist/src/git.d.ts.map +0 -1
  743. package/packages/workspace-scanner/dist/src/git.js +0 -75
  744. package/packages/workspace-scanner/dist/src/git.js.map +0 -1
  745. package/packages/workspace-scanner/dist/src/index.d.ts +0 -5
  746. package/packages/workspace-scanner/dist/src/index.d.ts.map +0 -1
  747. package/packages/workspace-scanner/dist/src/index.js +0 -4
  748. package/packages/workspace-scanner/dist/src/index.js.map +0 -1
  749. package/packages/workspace-scanner/dist/src/scanner.d.ts +0 -11
  750. package/packages/workspace-scanner/dist/src/scanner.d.ts.map +0 -1
  751. package/packages/workspace-scanner/dist/src/scanner.js +0 -59
  752. package/packages/workspace-scanner/dist/src/scanner.js.map +0 -1
  753. package/packages/workspace-scanner/dist/src/types.d.ts +0 -35
  754. package/packages/workspace-scanner/dist/src/types.d.ts.map +0 -1
  755. package/packages/workspace-scanner/dist/src/types.js +0 -5
  756. package/packages/workspace-scanner/dist/src/types.js.map +0 -1
  757. package/packages/workspace-scanner/dist/test/scanner.test.js +0 -34
  758. package/packages/workspace-scanner/dist/types.d.ts +0 -35
  759. package/packages/workspace-scanner/dist/types.d.ts.map +0 -1
  760. package/packages/workspace-scanner/dist/types.js +0 -5
  761. package/packages/workspace-scanner/dist/types.js.map +0 -1
  762. package/packages/worktree/dist/index.d.ts +0 -7
  763. package/packages/worktree/dist/index.d.ts.map +0 -1
  764. package/packages/worktree/dist/index.js +0 -7
  765. package/packages/worktree/dist/index.js.map +0 -1
  766. package/packages/worktree/dist/src/index.d.ts +0 -7
  767. package/packages/worktree/dist/src/index.d.ts.map +0 -1
  768. package/packages/worktree/dist/src/index.js +0 -7
  769. package/packages/worktree/dist/src/index.js.map +0 -1
  770. package/packages/worktree/dist/src/worktree.d.ts +0 -88
  771. package/packages/worktree/dist/src/worktree.d.ts.map +0 -1
  772. package/packages/worktree/dist/src/worktree.js +0 -239
  773. package/packages/worktree/dist/src/worktree.js.map +0 -1
  774. package/packages/worktree/dist/worktree.d.ts +0 -88
  775. package/packages/worktree/dist/worktree.d.ts.map +0 -1
  776. package/packages/worktree/dist/worktree.js +0 -239
  777. package/packages/worktree/dist/worktree.js.map +0 -1
@@ -0,0 +1,458 @@
1
+ /**
2
+ * DeepAgents Adapter — RFC-0029
3
+ *
4
+ * Implements the AgentWorker interface for DeepAgents.
5
+ * DeepAgents is an optional Agent Worker; Runtime remains the orchestrator.
6
+ *
7
+ * @module deepagents-adapter
8
+ */
9
+
10
+ import type {
11
+ AgentWorker,
12
+ AgentWorkerConfig,
13
+ AgentStatus,
14
+ TaskRequest,
15
+ TaskResult,
16
+ TaskResultStatus,
17
+ HealthStatus,
18
+ AgentWorkerEvents,
19
+ TaskProgress,
20
+ DeepAgentsConfig,
21
+ DeepAgentsTaskRequest,
22
+ DeepAgentsResult,
23
+ } from "../../packages/types/src/agent-worker-types.js";
24
+ import type { RuntimeTask } from "../../packages/types/src/runtime-types.js";
25
+
26
+ /**
27
+ * DeepAgents Adapter
28
+ *
29
+ * Connects the harness runtime to a DeepAgents worker.
30
+ * Runtime orchestrates; DeepAgents executes tasks.
31
+ */
32
+ export class DeepAgentsAdapter implements AgentWorker {
33
+ readonly id: string;
34
+ readonly provider = "deepagents" as const;
35
+
36
+ private config: DeepAgentsConfig | null = null;
37
+ private _status: AgentStatus = "idle";
38
+ private abortController: AbortController | null = null;
39
+ private currentTaskId: string | null = null;
40
+
41
+ constructor(id: string) {
42
+ this.id = id;
43
+ }
44
+
45
+ /**
46
+ * Initialize the DeepAgents adapter
47
+ */
48
+ async initialize(config: AgentWorkerConfig): Promise<void> {
49
+ if (config.provider !== "deepagents") {
50
+ throw new Error(
51
+ `Invalid provider: ${config.provider}. Expected "deepagents".`,
52
+ );
53
+ }
54
+
55
+ this.config = config as DeepAgentsConfig;
56
+ this._status = "initializing";
57
+
58
+ // Validate configuration
59
+ if (!this.config.endpoint) {
60
+ throw new Error("DeepAgents endpoint is required");
61
+ }
62
+
63
+ // Test connection to DeepAgents server
64
+ try {
65
+ await this.health();
66
+ } catch (error) {
67
+ this._status = "error";
68
+ throw new Error(
69
+ `Failed to connect to DeepAgents at ${this.config.endpoint}: ${
70
+ error instanceof Error ? error.message : String(error)
71
+ }`,
72
+ );
73
+ }
74
+
75
+ this._status = "idle";
76
+ }
77
+
78
+ /**
79
+ * Execute a task using DeepAgents
80
+ */
81
+ async execute(
82
+ request: TaskRequest,
83
+ events?: Partial<AgentWorkerEvents>,
84
+ ): Promise<TaskResult> {
85
+ if (!this.config) {
86
+ throw new Error("Agent not initialized. Call initialize() first.");
87
+ }
88
+
89
+ if (this._status === "stopped") {
90
+ throw new Error("Agent has been stopped");
91
+ }
92
+
93
+ const startTime = Date.now();
94
+ this._status = "running";
95
+ this.currentTaskId = request.task.id;
96
+ this.abortController = new AbortController();
97
+
98
+ // Emit status change
99
+ events?.onStatusChange?.("running");
100
+
101
+ try {
102
+ // Report planning phase
103
+ const planningProgress: TaskProgress = {
104
+ taskId: request.task.id,
105
+ phase: "planning",
106
+ message: `Planning task: ${request.task.title}`,
107
+ percentComplete: 10,
108
+ timestamp: new Date().toISOString(),
109
+ };
110
+ events?.onProgress?.(request.task.id, planningProgress);
111
+
112
+ // Build DeepAgents request
113
+ const deepAgentsRequest = this.buildDeepAgentsRequest(request);
114
+
115
+ // Report executing phase
116
+ const executingProgress: TaskProgress = {
117
+ taskId: request.task.id,
118
+ phase: "executing",
119
+ message: `Executing task: ${request.task.title}`,
120
+ percentComplete: 30,
121
+ timestamp: new Date().toISOString(),
122
+ };
123
+ events?.onProgress?.(request.task.id, executingProgress);
124
+
125
+ // Execute via DeepAgents
126
+ const response = await this.callDeepAgents(deepAgentsRequest);
127
+
128
+ // Report reviewing phase
129
+ const reviewingProgress: TaskProgress = {
130
+ taskId: request.task.id,
131
+ phase: "reviewing",
132
+ message: "Reviewing results",
133
+ percentComplete: 80,
134
+ timestamp: new Date().toISOString(),
135
+ };
136
+ events?.onProgress?.(request.task.id, reviewingProgress);
137
+
138
+ // Parse response and build result
139
+ const result = this.parseDeepAgentsResponse(
140
+ request.task,
141
+ response,
142
+ startTime,
143
+ );
144
+
145
+ // Report finalizing phase
146
+ const finalizingProgress: TaskProgress = {
147
+ taskId: request.task.id,
148
+ phase: "finalizing",
149
+ message: "Finalizing task",
150
+ percentComplete: 100,
151
+ timestamp: new Date().toISOString(),
152
+ };
153
+ events?.onProgress?.(request.task.id, finalizingProgress);
154
+
155
+ // Emit completion
156
+ events?.onTaskComplete?.(result);
157
+
158
+ this._status = "idle";
159
+ this.currentTaskId = null;
160
+ events?.onStatusChange?.("idle");
161
+
162
+ return result;
163
+ } catch (error) {
164
+ this._status = "error";
165
+ this.currentTaskId = null;
166
+ events?.onStatusChange?.("error");
167
+
168
+ const taskError =
169
+ error instanceof Error ? error : new Error(String(error));
170
+ events?.onError?.(request.task.id, taskError);
171
+
172
+ // Return failure result
173
+ return {
174
+ taskId: request.task.id,
175
+ status: "failure",
176
+ summary: `Task failed: ${taskError.message}`,
177
+ error: taskError.message,
178
+ durationMs: Date.now() - startTime,
179
+ completedAt: new Date().toISOString(),
180
+ };
181
+ }
182
+ }
183
+
184
+ /**
185
+ * Check health of DeepAgents connection
186
+ */
187
+ async health(): Promise<HealthStatus> {
188
+ if (!this.config) {
189
+ return {
190
+ healthy: false,
191
+ status: this._status,
192
+ load: 0,
193
+ activeTasks: 0,
194
+ queueDepth: 0,
195
+ checkedAt: new Date().toISOString(),
196
+ error: "Not initialized",
197
+ };
198
+ }
199
+
200
+ try {
201
+ const controller = new AbortController();
202
+ const timeout = setTimeout(() => controller.abort(), 5000);
203
+
204
+ const response = await fetch(`${this.config.endpoint}/health`, {
205
+ method: "GET",
206
+ headers: {
207
+ "Content-Type": "application/json",
208
+ ...(this.config.apiKey && {
209
+ Authorization: `Bearer ${this.config.apiKey}`,
210
+ }),
211
+ },
212
+ signal: controller.signal,
213
+ });
214
+
215
+ clearTimeout(timeout);
216
+
217
+ if (!response.ok) {
218
+ return {
219
+ healthy: false,
220
+ status: this._status,
221
+ load: this.currentTaskId ? 1 : 0,
222
+ activeTasks: this.currentTaskId ? 1 : 0,
223
+ queueDepth: 0,
224
+ checkedAt: new Date().toISOString(),
225
+ error: `Health check failed: ${response.status}`,
226
+ };
227
+ }
228
+
229
+ const data = (await response.json()) as {
230
+ status?: string;
231
+ load?: number;
232
+ activeTasks?: number;
233
+ queueDepth?: number;
234
+ };
235
+
236
+ return {
237
+ healthy: true,
238
+ status: this._status,
239
+ load: data.load ?? 0,
240
+ activeTasks: data.activeTasks ?? (this.currentTaskId ? 1 : 0),
241
+ queueDepth: data.queueDepth ?? 0,
242
+ checkedAt: new Date().toISOString(),
243
+ };
244
+ } catch (error) {
245
+ return {
246
+ healthy: false,
247
+ status: this._status,
248
+ load: this.currentTaskId ? 1 : 0,
249
+ activeTasks: this.currentTaskId ? 1 : 0,
250
+ queueDepth: 0,
251
+ checkedAt: new Date().toISOString(),
252
+ error: error instanceof Error ? error.message : "Health check failed",
253
+ };
254
+ }
255
+ }
256
+
257
+ /**
258
+ * Get current status
259
+ */
260
+ status(): AgentStatus {
261
+ return this._status;
262
+ }
263
+
264
+ /**
265
+ * Pause the agent
266
+ */
267
+ async pause(): Promise<void> {
268
+ if (this._status === "running" && this.abortController) {
269
+ this.abortController.abort();
270
+ }
271
+ this._status = "paused";
272
+ }
273
+
274
+ /**
275
+ * Resume the agent
276
+ */
277
+ async resume(): Promise<void> {
278
+ if (this._status === "paused") {
279
+ this._status = "idle";
280
+ }
281
+ }
282
+
283
+ /**
284
+ * Stop the agent
285
+ */
286
+ async stop(): Promise<void> {
287
+ if (this.abortController) {
288
+ this.abortController.abort();
289
+ }
290
+ this._status = "stopped";
291
+ this.currentTaskId = null;
292
+ }
293
+
294
+ /**
295
+ * Check if a model is supported
296
+ */
297
+ supportsModel(model: string): boolean {
298
+ const supported = this.config?.supportedModels ?? ["deepagents/default"];
299
+ return supported.some(
300
+ (m) => m.toLowerCase() === model.toLowerCase() || m === "*",
301
+ );
302
+ }
303
+
304
+ /**
305
+ * Get supported models
306
+ */
307
+ getSupportedModels(): string[] {
308
+ return this.config?.supportedModels ?? ["deepagents/default"];
309
+ }
310
+
311
+ // ─── Private Methods ────────────────────────────────────────────────
312
+
313
+ /**
314
+ * Build a DeepAgents API request from a task request
315
+ */
316
+ private buildDeepAgentsRequest(request: TaskRequest): {
317
+ task: {
318
+ id: string;
319
+ title: string;
320
+ description: string;
321
+ acceptanceCriteria?: string[];
322
+ };
323
+ workingDir: string;
324
+ context?: string;
325
+ config?: DeepAgentsTaskRequest["config"];
326
+ } {
327
+ const deepRequest = {
328
+ task: {
329
+ id: request.task.id,
330
+ title: request.task.title,
331
+ description: request.task.description,
332
+ acceptanceCriteria: request.task.acceptanceCriteria,
333
+ },
334
+ workingDir: request.workingDir,
335
+ context: request.context,
336
+ config: (request as DeepAgentsTaskRequest).config,
337
+ };
338
+
339
+ return deepRequest;
340
+ }
341
+
342
+ /**
343
+ * Call the DeepAgents API
344
+ */
345
+ private async callDeepAgents(
346
+ request: ReturnType<DeepAgentsAdapter["buildDeepAgentsRequest"]>,
347
+ ): Promise<{
348
+ taskId: string;
349
+ status: "success" | "failure" | "partial";
350
+ summary: string;
351
+ filesChanged?: string[];
352
+ output?: string;
353
+ error?: string;
354
+ usage?: {
355
+ input: number;
356
+ output: number;
357
+ cost?: number;
358
+ };
359
+ metadata?: {
360
+ agentId?: string;
361
+ workerId?: string;
362
+ sandboxUrl?: string;
363
+ };
364
+ }> {
365
+ if (!this.config) {
366
+ throw new Error("Not initialized");
367
+ }
368
+
369
+ const controller = this.abortController ?? new AbortController();
370
+ const timeout = setTimeout(
371
+ () => controller.abort(),
372
+ this.config.timeoutMs ?? 300000, // 5 min default
373
+ );
374
+
375
+ try {
376
+ const response = await fetch(`${this.config.endpoint}/tasks/execute`, {
377
+ method: "POST",
378
+ headers: {
379
+ "Content-Type": "application/json",
380
+ ...(this.config.apiKey && {
381
+ Authorization: `Bearer ${this.config.apiKey}`,
382
+ }),
383
+ },
384
+ body: JSON.stringify(request),
385
+ signal: controller.signal,
386
+ });
387
+
388
+ clearTimeout(timeout);
389
+
390
+ if (!response.ok) {
391
+ const errorBody = await response.text().catch(() => "");
392
+ throw new Error(
393
+ `DeepAgents API error: ${response.status} ${response.statusText} - ${errorBody}`,
394
+ );
395
+ }
396
+
397
+ const result = (await response.json()) as Awaited<
398
+ ReturnType<typeof fetch>
399
+ > extends {
400
+ json: () => Promise<infer T>;
401
+ }
402
+ ? T
403
+ : unknown;
404
+
405
+ return result as typeof response extends { json: () => Promise<infer T> }
406
+ ? T
407
+ : never;
408
+ } catch (error) {
409
+ clearTimeout(timeout);
410
+
411
+ if (error instanceof Error && error.name === "AbortError") {
412
+ throw new Error("Task was cancelled");
413
+ }
414
+
415
+ throw error;
416
+ }
417
+ }
418
+
419
+ /**
420
+ * Parse DeepAgents response into TaskResult
421
+ */
422
+ private parseDeepAgentsResponse(
423
+ task: RuntimeTask,
424
+ response: Awaited<ReturnType<DeepAgentsAdapter["callDeepAgents"]>>,
425
+ startTime: number,
426
+ ): DeepAgentsResult {
427
+ const status: TaskResultStatus = response.status;
428
+ const durationMs = Date.now() - startTime;
429
+
430
+ const result: DeepAgentsResult = {
431
+ taskId: task.id,
432
+ status,
433
+ summary: response.summary,
434
+ filesChanged: response.filesChanged,
435
+ output: response.output,
436
+ error: response.error,
437
+ usage: response.usage,
438
+ durationMs,
439
+ completedAt: new Date().toISOString(),
440
+ metadata: response.metadata,
441
+ };
442
+
443
+ return result;
444
+ }
445
+ }
446
+
447
+ /**
448
+ * Factory function to create a DeepAgentsAdapter
449
+ * Matches AgentWorkerFactory signature from RFC-0030
450
+ */
451
+ export function createDeepAgentsAdapter(
452
+ config: AgentWorkerConfig,
453
+ ): AgentWorker {
454
+ const adapter = new DeepAgentsAdapter(
455
+ config.id ?? `deepagents-${Date.now()}`,
456
+ );
457
+ return adapter;
458
+ }
@@ -0,0 +1,248 @@
1
+ /**
2
+ * GLM (Zhipu AI) Usage Fetcher — TUI Integration
3
+ *
4
+ * GLM reports quota exhaustion directly via TUI in pi.dev.
5
+ * When tokens run out or context window is full, pi shows:
6
+ * - Exact reset time
7
+ * - Which limit was hit
8
+ *
9
+ * This module hooks into TUI messages to capture quota signals.
10
+ */
11
+
12
+ import { EventEmitter } from "node:events";
13
+
14
+ export interface GLMUsageData {
15
+ provider: "glm";
16
+ timestamp: string;
17
+ /** Usage percentage (0-100), if available */
18
+ usedPct?: number;
19
+ /** Remaining percentage (0-100) */
20
+ remainingPct: number;
21
+ /** If exhausted */
22
+ exhausted: boolean;
23
+ /** Reset time */
24
+ resetsAt: string;
25
+ /** Which limit was hit */
26
+ limitType: "tokens" | "context_window" | "rate_limit" | "unknown";
27
+ /** Original message from TUI */
28
+ originalMessage: string;
29
+ }
30
+
31
+ export interface GLMUsageConfig {
32
+ /** Called when GLM quota signal is detected from TUI */
33
+ onQuotaSignal?: (data: GLMUsageData) => void;
34
+ }
35
+
36
+ /**
37
+ * GLM quota message patterns from TUI
38
+ * These patterns match the messages pi displays when GLM hits limits
39
+ */
40
+ const GLM_QUOTA_PATTERNS = [
41
+ // Context window full
42
+ {
43
+ pattern: /GLM.*context.*(?:window|length).*(?:full|exceeded|limit)/i,
44
+ limitType: "context_window" as const,
45
+ },
46
+ {
47
+ pattern: /tokens.*(?:exhausted|limit|ran out|remaining).*(\d+)h?\s*(\d+)m/i,
48
+ limitType: "tokens" as const,
49
+ },
50
+ // Reset time patterns
51
+ {
52
+ pattern: /GLM.*reset.*(?:at|in).*(\d{1,2}):(\d{2})/i,
53
+ limitType: "unknown" as const,
54
+ },
55
+ {
56
+ pattern: /GLM.*(?:quota|limit|exhausted|rate.?limit)/i,
57
+ limitType: "tokens" as const,
58
+ },
59
+ // OpenRouter GLM via OpenRouter
60
+ {
61
+ pattern: /ZhipuAI|GLM.*(?:exhausted|limit|quota)/i,
62
+ limitType: "tokens" as const,
63
+ },
64
+ ];
65
+
66
+ const RESET_TIME_PATTERNS = [
67
+ /reset(?:s)?\s+(?:at|in)\s+(\d{1,2}):(\d{2})/i,
68
+ /(?:at|in)\s+(\d{1,2}):(\d{2})/i,
69
+ /retry\s+after\s+(\d{1,2}):(\d{2})/i,
70
+ ];
71
+
72
+ export class GLMUsageProvider extends EventEmitter {
73
+ private lastUsageData: GLMUsageData | null = null;
74
+ private onQuotaSignal?: (data: GLMUsageData) => void;
75
+
76
+ constructor(config: GLMUsageConfig = {}) {
77
+ super();
78
+ this.onQuotaSignal = config.onQuotaSignal;
79
+ }
80
+
81
+ /**
82
+ * Check if auto-fetch is possible via TUI
83
+ * GLM reports quota via TUI, so this is always true when hooked
84
+ */
85
+ supportsAutoFetch(): boolean {
86
+ return true; // TUI integration is always available
87
+ }
88
+
89
+ /**
90
+ * Process a TUI message and extract GLM quota data
91
+ * Call this when receiving error/status messages from pi
92
+ */
93
+ processTUIMessage(message: string): GLMUsageData | null {
94
+ // Check if this is a GLM quota message
95
+ for (const { pattern, limitType } of GLM_QUOTA_PATTERNS) {
96
+ if (pattern.test(message)) {
97
+ const usageData = this.parseGLMQuotaMessage(message, limitType);
98
+
99
+ if (usageData) {
100
+ this.lastUsageData = usageData;
101
+
102
+ // Emit event
103
+ this.emit("quota", usageData);
104
+
105
+ // Call callback if set
106
+ this.onQuotaSignal?.(usageData);
107
+
108
+ return usageData;
109
+ }
110
+ }
111
+ }
112
+
113
+ return null;
114
+ }
115
+
116
+ /**
117
+ * Parse reset time from message
118
+ */
119
+ private parseResetTime(message: string): string | undefined {
120
+ for (const pattern of RESET_TIME_PATTERNS) {
121
+ const match = message.match(pattern);
122
+ if (match) {
123
+ const hour = parseInt(match[1], 10);
124
+ const minute = parseInt(match[2], 10);
125
+
126
+ // Convert to ISO string for today or tomorrow
127
+ const now = new Date();
128
+ const resetTime = new Date(now);
129
+ resetTime.setHours(hour, minute, 0, 0);
130
+
131
+ // If time has passed today, assume tomorrow
132
+ if (resetTime <= now) {
133
+ resetTime.setDate(resetTime.getDate() + 1);
134
+ }
135
+
136
+ return resetTime.toISOString();
137
+ }
138
+ }
139
+
140
+ return undefined;
141
+ }
142
+
143
+ /**
144
+ * Parse the GLM quota message
145
+ */
146
+ private parseGLMQuotaMessage(
147
+ message: string,
148
+ limitType: GLMUsageData["limitType"],
149
+ ): GLMUsageData {
150
+ const resetsAt =
151
+ this.parseResetTime(message) ??
152
+ new Date(Date.now() + 60 * 60 * 1000).toISOString();
153
+
154
+ // Try to extract percentage if present
155
+ let usedPct: number | undefined;
156
+ const pctMatch = message.match(/(\d+)%/);
157
+ if (pctMatch) {
158
+ usedPct = parseInt(pctMatch[1], 10);
159
+ }
160
+
161
+ return {
162
+ provider: "glm",
163
+ timestamp: new Date().toISOString(),
164
+ usedPct,
165
+ remainingPct: usedPct !== undefined ? 100 - usedPct : 0,
166
+ exhausted: true,
167
+ resetsAt,
168
+ limitType,
169
+ originalMessage: message,
170
+ };
171
+ }
172
+
173
+ /**
174
+ * Get the last captured usage data
175
+ */
176
+ getLastUsage(): GLMUsageData | null {
177
+ return this.lastUsageData;
178
+ }
179
+
180
+ /**
181
+ * Clear stored usage data
182
+ */
183
+ clear(): void {
184
+ this.lastUsageData = null;
185
+ }
186
+
187
+ /**
188
+ * For QuotaManager integration
189
+ * Returns current state (from last TUI message)
190
+ */
191
+ async getUsage(): Promise<GLMUsageData> {
192
+ if (!this.lastUsageData) {
193
+ return {
194
+ provider: "glm",
195
+ timestamp: new Date().toISOString(),
196
+ remainingPct: 100,
197
+ exhausted: false,
198
+ resetsAt: "",
199
+ limitType: "unknown",
200
+ originalMessage: "",
201
+ };
202
+ }
203
+ return this.lastUsageData;
204
+ }
205
+
206
+ /**
207
+ * Get usage as percentage
208
+ */
209
+ async getUsagePercent(): Promise<number> {
210
+ const usage = await this.getUsage();
211
+ return usage.usedPct ?? 100 - usage.remainingPct;
212
+ }
213
+
214
+ /**
215
+ * Check if quota is exhausted
216
+ */
217
+ async isExhausted(): Promise<boolean> {
218
+ const usage = await this.getUsage();
219
+ return usage.exhausted;
220
+ }
221
+ }
222
+
223
+ /**
224
+ * Integration helper: Hook GLM usage provider into pi extension
225
+ *
226
+ * Usage:
227
+ * ```typescript
228
+ * const glmUsage = new GLMUsageProvider({
229
+ * onQuotaSignal: (data) => {
230
+ * quotaManager.recordSignal({
231
+ * provider: "glm",
232
+ * source: "tui_message",
233
+ * windowType: data.limitType === "context_window" ? "daily" : "5h",
234
+ * exhausted: data.exhausted,
235
+ * resetsAt: data.resetsAt,
236
+ * });
237
+ * }
238
+ * });
239
+ *
240
+ * pi.on("error", (event) => {
241
+ * glmUsage.processTUIMessage(event.message);
242
+ * });
243
+ *
244
+ * pi.on("message", (event) => {
245
+ * glmUsage.processTUIMessage(event.message);
246
+ * });
247
+ * ```
248
+ */