pi-harness-runtime 1.1.0 → 1.1.2

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 (612) hide show
  1. package/.pi/plugins/herdr-clipboard/herdr-plugin.toml +22 -0
  2. package/.pi/plugins/herdr-clipboard/start-bridge.sh +29 -0
  3. package/.pi/plugins/herdr-clipboard/tmux-watch.sh +39 -0
  4. package/CHANGELOG.md +175 -13
  5. package/README.md +87 -1
  6. package/config.toml.example +35 -0
  7. package/harness/autonomous-review.ts +5 -2
  8. package/harness/e2e/chatgpt-quota-scraper.ts +478 -0
  9. package/harness/e2e/glm-quota-scraper.ts +449 -0
  10. package/harness/herdr-agents.ts +6 -2
  11. package/harness/loop-code-agent.ts +4 -1
  12. package/harness/loop-review-agent.ts +5 -6
  13. package/harness/notification-events.ts +2 -2
  14. package/harness/task-graph.d.ts +51 -0
  15. package/index.ts +147 -2
  16. package/package.json +17 -16
  17. package/packages/a2a-adapter/dist/index.d.ts +1 -0
  18. package/packages/a2a-adapter/dist/index.d.ts.map +1 -1
  19. package/packages/a2a-adapter/dist/index.js +1 -0
  20. package/packages/a2a-adapter/dist/index.js.map +1 -1
  21. package/packages/a2a-adapter/package.json +1 -1
  22. package/packages/a2a-adapter/src/discovery.ts +106 -0
  23. package/packages/a2a-adapter/src/index.ts +8 -0
  24. package/packages/architecture-generator/package.json +21 -0
  25. package/packages/architecture-generator/src/adr.ts +51 -0
  26. package/packages/architecture-generator/src/index.ts +9 -0
  27. package/packages/architecture-generator/src/mermaid.ts +76 -0
  28. package/packages/architecture-generator/src/types.ts +30 -0
  29. package/packages/auth/package.json +1 -1
  30. package/packages/autonomous-refactor/package.json +1 -1
  31. package/packages/autonomous-runtime/package.json +1 -1
  32. package/packages/cache-strategy/package.json +1 -1
  33. package/packages/capability-registry/package.json +1 -1
  34. package/packages/checkpoint/package.json +1 -1
  35. package/packages/cli-plugin-sdk/package.json +2 -2
  36. package/packages/clipboard/package.json +1 -1
  37. package/packages/clipboard/src/copy-sync.ts +52 -3
  38. package/packages/clipboard/src/index.ts +1 -0
  39. package/packages/clipboard/src/paste-bridge.ts +86 -0
  40. package/packages/clipboard-plugin/package.json +17 -0
  41. package/packages/clipboard-plugin/src/index.ts +74 -0
  42. package/packages/clipboard-plugin/src/types.ts +30 -0
  43. package/packages/code-generation/package.json +1 -1
  44. package/packages/code-review/package.json +1 -1
  45. package/packages/codex-adapter/package.json +2 -2
  46. package/packages/config-capture/package.json +23 -0
  47. package/packages/config-capture/src/index.ts +357 -0
  48. package/packages/context-compiler/package.json +1 -1
  49. package/packages/context-discovery/package.json +1 -1
  50. package/packages/context-manager/package.json +1 -1
  51. package/packages/cookie-sanitizer/package.json +1 -1
  52. package/packages/cost-optimizer/package.json +1 -1
  53. package/packages/dependency-analyzer/package.json +1 -1
  54. package/packages/django-plugin/package.json +1 -1
  55. package/packages/doc-generator/package.json +1 -1
  56. package/packages/evaluation-engine/package.json +1 -1
  57. package/packages/evaluation-runner/package.json +1 -1
  58. package/packages/event-bus/package.json +1 -1
  59. package/packages/event-bus/src/herdr-bus.ts +4 -1
  60. package/packages/event-store/package.json +1 -1
  61. package/packages/experience-replay/package.json +1 -1
  62. package/packages/feedback-collector/package.json +1 -1
  63. package/packages/file-copy-helper/package.json +17 -0
  64. package/packages/file-copy-helper/src/extension.debug.ts +226 -0
  65. package/packages/file-copy-helper/src/extension.ts +226 -0
  66. package/packages/file-copy-helper/src/index.ts +1 -0
  67. package/packages/framework-detector/package.json +1 -1
  68. package/packages/framework-plugin-sdk/package.json +1 -1
  69. package/packages/frappe-plugin/package.json +1 -1
  70. package/packages/generic-web-plugin/package.json +1 -1
  71. package/packages/health-monitor/package.json +1 -1
  72. package/packages/intent-analyzer/package.json +1 -1
  73. package/packages/knowledge-graph/package.json +24 -0
  74. package/packages/knowledge-graph/src/graph-extractor.ts +338 -0
  75. package/packages/knowledge-graph/src/index.ts +27 -0
  76. package/packages/knowledge-graph/src/mcp-client.ts +237 -0
  77. package/packages/knowledge-graph/src/provenance-linker.ts +101 -0
  78. package/packages/knowledge-graph/src/types.ts +86 -0
  79. package/packages/knowledge-retrieval/package.json +25 -0
  80. package/packages/knowledge-retrieval/src/index.ts +18 -0
  81. package/packages/knowledge-retrieval/src/mcp-client.ts +212 -0
  82. package/packages/knowledge-retrieval/src/types.ts +112 -0
  83. package/packages/laravel-plugin/package.json +1 -1
  84. package/packages/learning-engine/package.json +1 -1
  85. package/packages/mcp-adapter/package.json +1 -1
  86. package/packages/memory-engine/package.json +1 -1
  87. package/packages/milestone-manager/package.json +21 -0
  88. package/packages/milestone-manager/src/engine.ts +105 -0
  89. package/packages/milestone-manager/src/index.ts +6 -0
  90. package/packages/milestone-manager/src/types.ts +28 -0
  91. package/packages/model-registry/package.json +1 -1
  92. package/packages/nextjs-plugin/package.json +1 -1
  93. package/packages/notification/package.json +1 -1
  94. package/packages/notification/src/adapters/line-adapter.ts +119 -0
  95. package/packages/notification/src/index.ts +1 -0
  96. package/packages/notification/src/notification-center.ts +6 -0
  97. package/packages/notification/src/types.ts +7 -2
  98. package/packages/observability/package.json +1 -1
  99. package/packages/okf-indexer/package.json +12 -0
  100. package/packages/okf-indexer/src/cli.ts +25 -0
  101. package/packages/okf-indexer/src/indexer.ts +186 -0
  102. package/packages/performance-optimizer/package.json +1 -1
  103. package/packages/privilege-broker/package.json +1 -1
  104. package/packages/project-analyzer/package.json +1 -1
  105. package/packages/project-bootstrap/package.json +24 -0
  106. package/packages/project-bootstrap/src/bootstrap.ts +166 -0
  107. package/packages/project-bootstrap/src/frappe.ts +97 -0
  108. package/packages/project-bootstrap/src/index.ts +27 -0
  109. package/packages/project-bootstrap/src/minimal.ts +45 -0
  110. package/packages/project-bootstrap/src/types.ts +66 -0
  111. package/packages/project-bootstrap/src/typescript.ts +114 -0
  112. package/packages/projection-engine/package.json +1 -1
  113. package/packages/prompt-compiler/package.json +1 -1
  114. package/packages/prompt-versioning/package.json +1 -1
  115. package/packages/provider-adapter-sdk/package.json +1 -1
  116. package/packages/provider-router/dist/src/types.js +1 -1
  117. package/packages/provider-router/package.json +1 -1
  118. package/packages/provider-selector/package.json +1 -1
  119. package/packages/providers/package.json +1 -1
  120. package/packages/providers/src/adapters.ts +1 -1
  121. package/packages/providers/src/deepagents-adapter.ts +2 -2
  122. package/packages/quota-manager/package.json +1 -1
  123. package/packages/quota-manager/src/quota-manager.ts +1 -4
  124. package/packages/rate-limiter/package.json +1 -1
  125. package/packages/react-vite-plugin/package.json +1 -1
  126. package/packages/release-manager/package.json +1 -1
  127. package/packages/requirement-compiler/package.json +1 -1
  128. package/packages/runtime/package.json +1 -1
  129. package/packages/runtime/src/runtime-api.ts +16 -16
  130. package/packages/scheduler/package.json +1 -1
  131. package/packages/scheduler-adapter/package.json +1 -1
  132. package/packages/session/dist/manager.d.ts.map +1 -1
  133. package/packages/session/dist/manager.js +3 -1
  134. package/packages/session/dist/manager.js.map +1 -1
  135. package/packages/session/package.json +1 -1
  136. package/packages/session/src/manager.ts +4 -1
  137. package/packages/session-api/package.json +1 -1
  138. package/packages/session-export/package.json +1 -1
  139. package/packages/shared-context/package.json +1 -1
  140. package/packages/skill-registry/package.json +1 -1
  141. package/packages/sprint-planner/package.json +1 -1
  142. package/packages/subscription-engine/package.json +1 -1
  143. package/packages/task-compiler/package.json +1 -1
  144. package/packages/tencentdb-memory/package.json +23 -0
  145. package/packages/tencentdb-memory/src/client.ts +130 -0
  146. package/packages/tencentdb-memory/src/index.ts +32 -0
  147. package/packages/tencentdb-memory/src/loader.ts +150 -0
  148. package/packages/tencentdb-memory/src/mcp-tools.ts +213 -0
  149. package/packages/tencentdb-memory/src/types.ts +101 -0
  150. package/packages/tencentdb-sync/package.json +26 -0
  151. package/packages/tencentdb-sync/src/cli.ts +363 -0
  152. package/packages/tencentdb-sync/src/client.ts +268 -0
  153. package/packages/tencentdb-sync/src/config.ts +139 -0
  154. package/packages/tencentdb-sync/src/index.ts +15 -0
  155. package/packages/test-data-generator/package.json +1 -1
  156. package/packages/test-generator/package.json +1 -1
  157. package/packages/todo-bd-sync/package.json +1 -1
  158. package/packages/todo-bd-sync/src/detector.ts +25 -4
  159. package/packages/todo-bd-sync/src/extension.ts +8 -86
  160. package/packages/todo-bd-sync/src/task-analyzer.ts +314 -0
  161. package/packages/token-estimation/package.json +1 -1
  162. package/packages/token-optimizer/package.json +1 -1
  163. package/packages/tui/package.json +1 -1
  164. package/packages/types/package.json +1 -1
  165. package/packages/types/src/agent-worker-types.d.ts +206 -0
  166. package/packages/types/src/ai-providers.d.ts +36 -0
  167. package/packages/types/src/runtime-types.d.ts +6 -0
  168. package/packages/workflow-events/package.json +1 -1
  169. package/packages/workspace-scanner/package.json +1 -1
  170. package/packages/worktree/package.json +1 -1
  171. package/packages/worktree/src/worktree.ts +1 -4
  172. package/packages/write-review/package.json +22 -0
  173. package/packages/write-review/src/blackboard.ts +249 -0
  174. package/packages/write-review/src/gate.ts +169 -0
  175. package/packages/write-review/src/index.ts +65 -0
  176. package/packages/write-review/src/injection.ts +190 -0
  177. package/packages/write-review/src/review.ts +206 -0
  178. package/packages/write-review/src/trigger.ts +133 -0
  179. package/packages/write-review/src/types.ts +90 -0
  180. package/prompts/agents/reviewer.md +57 -0
  181. package/prompts/agents/writer.md +42 -0
  182. package/prompts/slash-commands.md +40 -0
  183. package/prompts/tencentdb-connect.md +35 -0
  184. package/prompts/tencentdb-setup.md +101 -0
  185. package/prompts/tencentdb.md +88 -0
  186. package/prompts/write-review.md +50 -0
  187. package/scripts/check-version-sync.ts +80 -0
  188. package/scripts/convert-skills-to-okf.ts +168 -0
  189. package/scripts/copy-plugins.js +56 -0
  190. package/scripts/gist-auth.ts +64 -0
  191. package/scripts/gist-poll.sh +127 -0
  192. package/scripts/release/actions-monitor.ts +357 -0
  193. package/scripts/release/adapters/base.ts +95 -0
  194. package/scripts/release/adapters/detector.ts +181 -0
  195. package/scripts/release/adapters/node-workspace.ts +230 -0
  196. package/scripts/release/adapters/python.ts +236 -0
  197. package/scripts/release/adapters/rust.ts +129 -0
  198. package/scripts/release/adapters/tauri.ts +298 -0
  199. package/scripts/release/orchestrator.ts +278 -0
  200. package/scripts/release-all.ts +211 -0
  201. package/scripts/scan-secrets.sh +68 -0
  202. package/scripts/skills-sync.ts +487 -0
  203. package/packages/a2a-adapter/tsconfig.json +0 -5
  204. package/packages/auth/dist/minimax-browser-auth.d.ts +0 -89
  205. package/packages/auth/dist/minimax-browser-auth.d.ts.map +0 -1
  206. package/packages/auth/dist/minimax-browser-auth.js +0 -890
  207. package/packages/auth/dist/minimax-browser-auth.js.map +0 -1
  208. package/packages/auth/dist/run-minimax-auth.d.ts +0 -19
  209. package/packages/auth/dist/run-minimax-auth.d.ts.map +0 -1
  210. package/packages/auth/dist/run-minimax-auth.js +0 -112
  211. package/packages/auth/dist/run-minimax-auth.js.map +0 -1
  212. package/packages/auth/tsconfig.json +0 -9
  213. package/packages/autonomous-refactor/tsconfig.json +0 -5
  214. package/packages/autonomous-runtime/test/inbox.test.mjs +0 -266
  215. package/packages/autonomous-runtime/tsconfig.json +0 -22
  216. package/packages/autonomous-runtime/tsconfig.tsbuildinfo +0 -1
  217. package/packages/cache-strategy/tsconfig.json +0 -5
  218. package/packages/capability-registry/src/types.d.ts.map +0 -1
  219. package/packages/capability-registry/src/types.js +0 -10
  220. package/packages/capability-registry/src/types.js.map +0 -1
  221. package/packages/capability-registry/tsconfig.json +0 -22
  222. package/packages/checkpoint/tsconfig.json +0 -33
  223. package/packages/checkpoint/tsconfig.tsbuildinfo +0 -1
  224. package/packages/cli-plugin-sdk/tsconfig.json +0 -11
  225. package/packages/clipboard/dist/src/clipboard.d.ts +0 -11
  226. package/packages/clipboard/dist/src/clipboard.d.ts.map +0 -1
  227. package/packages/clipboard/dist/src/clipboard.js +0 -51
  228. package/packages/clipboard/dist/src/clipboard.js.map +0 -1
  229. package/packages/clipboard/dist/src/copy-sync.d.ts +0 -27
  230. package/packages/clipboard/dist/src/copy-sync.d.ts.map +0 -1
  231. package/packages/clipboard/dist/src/copy-sync.js +0 -170
  232. package/packages/clipboard/dist/src/copy-sync.js.map +0 -1
  233. package/packages/clipboard/dist/src/gist-relay.d.ts +0 -48
  234. package/packages/clipboard/dist/src/gist-relay.d.ts.map +0 -1
  235. package/packages/clipboard/dist/src/gist-relay.js +0 -186
  236. package/packages/clipboard/dist/src/gist-relay.js.map +0 -1
  237. package/packages/clipboard/dist/src/github-login.d.ts +0 -16
  238. package/packages/clipboard/dist/src/github-login.d.ts.map +0 -1
  239. package/packages/clipboard/dist/src/github-login.js +0 -69
  240. package/packages/clipboard/dist/src/github-login.js.map +0 -1
  241. package/packages/clipboard/dist/src/index.d.ts +0 -4
  242. package/packages/clipboard/dist/src/index.d.ts.map +0 -1
  243. package/packages/clipboard/dist/src/index.js +0 -3
  244. package/packages/clipboard/dist/src/index.js.map +0 -1
  245. package/packages/clipboard/dist/src/types.d.ts +0 -13
  246. package/packages/clipboard/dist/src/types.d.ts.map +0 -1
  247. package/packages/clipboard/dist/src/types.js +0 -5
  248. package/packages/clipboard/dist/src/types.js.map +0 -1
  249. package/packages/clipboard/test/mojibake.test.mjs +0 -143
  250. package/packages/clipboard/tsconfig.json +0 -10
  251. package/packages/code-generation/tsconfig.json +0 -33
  252. package/packages/code-generation/tsconfig.tsbuildinfo +0 -1
  253. package/packages/code-review/tsconfig.json +0 -33
  254. package/packages/code-review/tsconfig.tsbuildinfo +0 -1
  255. package/packages/codex-adapter/tsconfig.json +0 -5
  256. package/packages/context-compiler/tsconfig.json +0 -17
  257. package/packages/context-discovery/dist/src/discover.d.ts +0 -3
  258. package/packages/context-discovery/dist/src/discover.d.ts.map +0 -1
  259. package/packages/context-discovery/dist/src/discover.js +0 -42
  260. package/packages/context-discovery/dist/src/discover.js.map +0 -1
  261. package/packages/context-discovery/dist/src/discovery.d.ts +0 -28
  262. package/packages/context-discovery/dist/src/discovery.d.ts.map +0 -1
  263. package/packages/context-discovery/dist/src/discovery.js +0 -21
  264. package/packages/context-discovery/dist/src/discovery.js.map +0 -1
  265. package/packages/context-discovery/dist/src/index.d.ts +0 -3
  266. package/packages/context-discovery/dist/src/index.d.ts.map +0 -1
  267. package/packages/context-discovery/dist/src/index.js +0 -2
  268. package/packages/context-discovery/dist/src/index.js.map +0 -1
  269. package/packages/context-discovery/dist/src/types.d.ts +0 -16
  270. package/packages/context-discovery/dist/src/types.d.ts.map +0 -1
  271. package/packages/context-discovery/dist/src/types.js +0 -2
  272. package/packages/context-discovery/dist/src/types.js.map +0 -1
  273. package/packages/context-discovery/tsconfig.json +0 -10
  274. package/packages/context-manager/tsconfig.json +0 -6
  275. package/packages/cookie-sanitizer/tsconfig.json +0 -8
  276. package/packages/cost-optimizer/tsconfig.json +0 -22
  277. package/packages/dependency-analyzer/dist/src/analyzer.d.ts +0 -17
  278. package/packages/dependency-analyzer/dist/src/analyzer.d.ts.map +0 -1
  279. package/packages/dependency-analyzer/dist/src/analyzer.js +0 -119
  280. package/packages/dependency-analyzer/dist/src/analyzer.js.map +0 -1
  281. package/packages/dependency-analyzer/dist/src/imports.d.ts +0 -12
  282. package/packages/dependency-analyzer/dist/src/imports.d.ts.map +0 -1
  283. package/packages/dependency-analyzer/dist/src/imports.js +0 -73
  284. package/packages/dependency-analyzer/dist/src/imports.js.map +0 -1
  285. package/packages/dependency-analyzer/dist/src/index.d.ts +0 -4
  286. package/packages/dependency-analyzer/dist/src/index.d.ts.map +0 -1
  287. package/packages/dependency-analyzer/dist/src/index.js +0 -3
  288. package/packages/dependency-analyzer/dist/src/index.js.map +0 -1
  289. package/packages/dependency-analyzer/dist/src/types.d.ts +0 -28
  290. package/packages/dependency-analyzer/dist/src/types.d.ts.map +0 -1
  291. package/packages/dependency-analyzer/dist/src/types.js +0 -5
  292. package/packages/dependency-analyzer/dist/src/types.js.map +0 -1
  293. package/packages/dependency-analyzer/test/analyzer.test.js +0 -37
  294. package/packages/dependency-analyzer/tsconfig.json +0 -10
  295. package/packages/django-plugin/tsconfig.json +0 -12
  296. package/packages/doc-generator/tsconfig.json +0 -6
  297. package/packages/evaluation-engine/tsconfig.json +0 -8
  298. package/packages/evaluation-runner/tsconfig.json +0 -5
  299. package/packages/event-bus/dist/src/bus.d.ts +0 -15
  300. package/packages/event-bus/dist/src/bus.d.ts.map +0 -1
  301. package/packages/event-bus/dist/src/bus.js +0 -98
  302. package/packages/event-bus/dist/src/bus.js.map +0 -1
  303. package/packages/event-bus/dist/src/herdr-bus.d.ts +0 -121
  304. package/packages/event-bus/dist/src/herdr-bus.d.ts.map +0 -1
  305. package/packages/event-bus/dist/src/herdr-bus.js +0 -322
  306. package/packages/event-bus/dist/src/herdr-bus.js.map +0 -1
  307. package/packages/event-bus/dist/src/index.d.ts +0 -6
  308. package/packages/event-bus/dist/src/index.d.ts.map +0 -1
  309. package/packages/event-bus/dist/src/index.js +0 -4
  310. package/packages/event-bus/dist/src/index.js.map +0 -1
  311. package/packages/event-bus/dist/src/types.d.ts +0 -27
  312. package/packages/event-bus/dist/src/types.d.ts.map +0 -1
  313. package/packages/event-bus/dist/src/types.js +0 -10
  314. package/packages/event-bus/dist/src/types.js.map +0 -1
  315. package/packages/event-bus/tsconfig.json +0 -10
  316. package/packages/event-store/dist/src/index.d.ts +0 -3
  317. package/packages/event-store/dist/src/index.d.ts.map +0 -1
  318. package/packages/event-store/dist/src/index.js +0 -2
  319. package/packages/event-store/dist/src/index.js.map +0 -1
  320. package/packages/event-store/dist/src/store.d.ts +0 -15
  321. package/packages/event-store/dist/src/store.d.ts.map +0 -1
  322. package/packages/event-store/dist/src/store.js +0 -139
  323. package/packages/event-store/dist/src/store.js.map +0 -1
  324. package/packages/event-store/dist/src/types.d.ts +0 -48
  325. package/packages/event-store/dist/src/types.d.ts.map +0 -1
  326. package/packages/event-store/dist/src/types.js +0 -5
  327. package/packages/event-store/dist/src/types.js.map +0 -1
  328. package/packages/event-store/src/types.d.ts.map +0 -1
  329. package/packages/event-store/src/types.js +0 -5
  330. package/packages/event-store/src/types.js.map +0 -1
  331. package/packages/event-store/tsconfig.json +0 -10
  332. package/packages/experience-replay/tsconfig.json +0 -8
  333. package/packages/feedback-collector/tsconfig.json +0 -5
  334. package/packages/framework-detector/tsconfig.json +0 -33
  335. package/packages/framework-detector/tsconfig.tsbuildinfo +0 -1
  336. package/packages/framework-plugin-sdk/tsconfig.json +0 -33
  337. package/packages/framework-plugin-sdk/tsconfig.tsbuildinfo +0 -1
  338. package/packages/frappe-plugin/tsconfig.json +0 -12
  339. package/packages/generic-web-plugin/tsconfig.json +0 -12
  340. package/packages/health-monitor/tsconfig.json +0 -5
  341. package/packages/intent-analyzer/dist/src/analyzer.d.ts +0 -13
  342. package/packages/intent-analyzer/dist/src/analyzer.d.ts.map +0 -1
  343. package/packages/intent-analyzer/dist/src/analyzer.js +0 -239
  344. package/packages/intent-analyzer/dist/src/analyzer.js.map +0 -1
  345. package/packages/intent-analyzer/dist/src/index.d.ts +0 -3
  346. package/packages/intent-analyzer/dist/src/index.d.ts.map +0 -1
  347. package/packages/intent-analyzer/dist/src/index.js +0 -2
  348. package/packages/intent-analyzer/dist/src/index.js.map +0 -1
  349. package/packages/intent-analyzer/dist/src/types.d.ts +0 -26
  350. package/packages/intent-analyzer/dist/src/types.d.ts.map +0 -1
  351. package/packages/intent-analyzer/dist/src/types.js +0 -7
  352. package/packages/intent-analyzer/dist/src/types.js.map +0 -1
  353. package/packages/intent-analyzer/tsconfig.json +0 -10
  354. package/packages/laravel-plugin/tsconfig.json +0 -12
  355. package/packages/learning-engine/tsconfig.json +0 -8
  356. package/packages/mcp-adapter/tsconfig.json +0 -8
  357. package/packages/memory-engine/tsconfig.json +0 -8
  358. package/packages/model-registry/src/types.d.ts.map +0 -1
  359. package/packages/model-registry/src/types.js +0 -5
  360. package/packages/model-registry/src/types.js.map +0 -1
  361. package/packages/model-registry/tsconfig.json +0 -22
  362. package/packages/nextjs-plugin/tsconfig.json +0 -12
  363. package/packages/notification/dist/adapters/email-adapter.d.ts +0 -17
  364. package/packages/notification/dist/adapters/email-adapter.d.ts.map +0 -1
  365. package/packages/notification/dist/adapters/email-adapter.js +0 -89
  366. package/packages/notification/dist/adapters/email-adapter.js.map +0 -1
  367. package/packages/notification/dist/adapters/ntfy-adapter.d.ts +0 -17
  368. package/packages/notification/dist/adapters/ntfy-adapter.d.ts.map +0 -1
  369. package/packages/notification/dist/adapters/ntfy-adapter.js +0 -84
  370. package/packages/notification/dist/adapters/ntfy-adapter.js.map +0 -1
  371. package/packages/notification/dist/adapters/telegram-adapter.d.ts +0 -17
  372. package/packages/notification/dist/adapters/telegram-adapter.d.ts.map +0 -1
  373. package/packages/notification/dist/adapters/telegram-adapter.js +0 -88
  374. package/packages/notification/dist/adapters/telegram-adapter.js.map +0 -1
  375. package/packages/notification/dist/adapters/webhook-adapter.d.ts +0 -15
  376. package/packages/notification/dist/adapters/webhook-adapter.d.ts.map +0 -1
  377. package/packages/notification/dist/adapters/webhook-adapter.js +0 -64
  378. package/packages/notification/dist/adapters/webhook-adapter.js.map +0 -1
  379. package/packages/notification/dist/base-adapter.d.ts +0 -36
  380. package/packages/notification/dist/base-adapter.d.ts.map +0 -1
  381. package/packages/notification/dist/base-adapter.js +0 -39
  382. package/packages/notification/dist/base-adapter.js.map +0 -1
  383. package/packages/notification/dist/index.d.ts +0 -9
  384. package/packages/notification/dist/index.d.ts.map +0 -1
  385. package/packages/notification/dist/index.js +0 -9
  386. package/packages/notification/dist/index.js.map +0 -1
  387. package/packages/notification/dist/notification-center.d.ts +0 -46
  388. package/packages/notification/dist/notification-center.d.ts.map +0 -1
  389. package/packages/notification/dist/notification-center.js +0 -228
  390. package/packages/notification/dist/notification-center.js.map +0 -1
  391. package/packages/notification/dist/types.d.ts +0 -65
  392. package/packages/notification/dist/types.d.ts.map +0 -1
  393. package/packages/notification/dist/types.js +0 -7
  394. package/packages/notification/dist/types.js.map +0 -1
  395. package/packages/notification/tsconfig.json +0 -8
  396. package/packages/observability/tsconfig.json +0 -33
  397. package/packages/observability/tsconfig.tsbuildinfo +0 -1
  398. package/packages/performance-optimizer/tsconfig.json +0 -8
  399. package/packages/privilege-broker/config/privileges.yaml.example +0 -172
  400. package/packages/privilege-broker/tsconfig.json +0 -22
  401. package/packages/privilege-broker/tsconfig.tsbuildinfo +0 -1
  402. package/packages/project-analyzer/tsconfig.json +0 -33
  403. package/packages/project-analyzer/tsconfig.tsbuildinfo +0 -1
  404. package/packages/projection-engine/dist/src/engine.d.ts +0 -61
  405. package/packages/projection-engine/dist/src/engine.d.ts.map +0 -1
  406. package/packages/projection-engine/dist/src/engine.js +0 -87
  407. package/packages/projection-engine/dist/src/engine.js.map +0 -1
  408. package/packages/projection-engine/dist/src/index.d.ts +0 -2
  409. package/packages/projection-engine/dist/src/index.d.ts.map +0 -1
  410. package/packages/projection-engine/dist/src/index.js +0 -2
  411. package/packages/projection-engine/dist/src/index.js.map +0 -1
  412. package/packages/projection-engine/dist/src/project.d.ts +0 -3
  413. package/packages/projection-engine/dist/src/project.d.ts.map +0 -1
  414. package/packages/projection-engine/dist/src/project.js +0 -24
  415. package/packages/projection-engine/dist/src/project.js.map +0 -1
  416. package/packages/projection-engine/dist/src/types.d.ts +0 -55
  417. package/packages/projection-engine/dist/src/types.d.ts.map +0 -1
  418. package/packages/projection-engine/dist/src/types.js +0 -5
  419. package/packages/projection-engine/dist/src/types.js.map +0 -1
  420. package/packages/projection-engine/src/types.d.ts.map +0 -1
  421. package/packages/projection-engine/src/types.js +0 -5
  422. package/packages/projection-engine/src/types.js.map +0 -1
  423. package/packages/projection-engine/tsconfig.json +0 -10
  424. package/packages/prompt-compiler/tsconfig.json +0 -19
  425. package/packages/prompt-versioning/tsconfig.json +0 -5
  426. package/packages/provider-adapter-sdk/dist/tsconfig.tsbuildinfo +0 -1
  427. package/packages/provider-adapter-sdk/tsconfig.json +0 -34
  428. package/packages/provider-adapter-sdk/tsconfig.tsbuildinfo +0 -1
  429. package/packages/provider-router/tsconfig.json +0 -20
  430. package/packages/provider-selector/tsconfig.json +0 -6
  431. package/packages/providers/dist/adapters.d.ts +0 -133
  432. package/packages/providers/dist/adapters.d.ts.map +0 -1
  433. package/packages/providers/dist/adapters.js +0 -236
  434. package/packages/providers/dist/adapters.js.map +0 -1
  435. package/packages/providers/dist/deepagents-adapter.d.ts +0 -78
  436. package/packages/providers/dist/deepagents-adapter.d.ts.map +0 -1
  437. package/packages/providers/dist/deepagents-adapter.js +0 -323
  438. package/packages/providers/dist/deepagents-adapter.js.map +0 -1
  439. package/packages/providers/dist/glm-usage.d.ts +0 -102
  440. package/packages/providers/dist/glm-usage.d.ts.map +0 -1
  441. package/packages/providers/dist/glm-usage.js +0 -197
  442. package/packages/providers/dist/glm-usage.js.map +0 -1
  443. package/packages/providers/dist/index.d.ts +0 -11
  444. package/packages/providers/dist/index.d.ts.map +0 -1
  445. package/packages/providers/dist/index.js +0 -11
  446. package/packages/providers/dist/index.js.map +0 -1
  447. package/packages/providers/dist/openai-usage.d.ts +0 -103
  448. package/packages/providers/dist/openai-usage.d.ts.map +0 -1
  449. package/packages/providers/dist/openai-usage.js +0 -208
  450. package/packages/providers/dist/openai-usage.js.map +0 -1
  451. package/packages/providers/dist/provider-id.d.ts +0 -46
  452. package/packages/providers/dist/provider-id.d.ts.map +0 -1
  453. package/packages/providers/dist/provider-id.js +0 -113
  454. package/packages/providers/dist/provider-id.js.map +0 -1
  455. package/packages/providers/tsconfig.json +0 -8
  456. package/packages/quota-manager/dist/examples/tui-usage-integration.d.ts +0 -35
  457. package/packages/quota-manager/dist/examples/tui-usage-integration.d.ts.map +0 -1
  458. package/packages/quota-manager/dist/examples/tui-usage-integration.js +0 -73
  459. package/packages/quota-manager/dist/examples/tui-usage-integration.js.map +0 -1
  460. package/packages/quota-manager/dist/index.d.ts +0 -8
  461. package/packages/quota-manager/dist/index.d.ts.map +0 -1
  462. package/packages/quota-manager/dist/index.js +0 -8
  463. package/packages/quota-manager/dist/index.js.map +0 -1
  464. package/packages/quota-manager/dist/quota-manager.d.ts +0 -70
  465. package/packages/quota-manager/dist/quota-manager.d.ts.map +0 -1
  466. package/packages/quota-manager/dist/quota-manager.js +0 -260
  467. package/packages/quota-manager/dist/quota-manager.js.map +0 -1
  468. package/packages/quota-manager/dist/tui-usage-monitor.d.ts +0 -96
  469. package/packages/quota-manager/dist/tui-usage-monitor.d.ts.map +0 -1
  470. package/packages/quota-manager/dist/tui-usage-monitor.js +0 -268
  471. package/packages/quota-manager/dist/tui-usage-monitor.js.map +0 -1
  472. package/packages/quota-manager/tsconfig.json +0 -8
  473. package/packages/rate-limiter/tsconfig.json +0 -5
  474. package/packages/react-vite-plugin/tsconfig.json +0 -12
  475. package/packages/release-manager/tsconfig.json +0 -5
  476. package/packages/requirement-compiler/tsconfig.json +0 -22
  477. package/packages/runtime/dist/command-executor.d.ts +0 -129
  478. package/packages/runtime/dist/command-executor.d.ts.map +0 -1
  479. package/packages/runtime/dist/command-executor.js +0 -383
  480. package/packages/runtime/dist/command-executor.js.map +0 -1
  481. package/packages/runtime/dist/index.d.ts +0 -11
  482. package/packages/runtime/dist/index.d.ts.map +0 -1
  483. package/packages/runtime/dist/index.js +0 -11
  484. package/packages/runtime/dist/index.js.map +0 -1
  485. package/packages/runtime/dist/local-runtime-agent.d.ts +0 -111
  486. package/packages/runtime/dist/local-runtime-agent.d.ts.map +0 -1
  487. package/packages/runtime/dist/local-runtime-agent.js +0 -356
  488. package/packages/runtime/dist/local-runtime-agent.js.map +0 -1
  489. package/packages/runtime/dist/policy-engine.d.ts +0 -203
  490. package/packages/runtime/dist/policy-engine.d.ts.map +0 -1
  491. package/packages/runtime/dist/policy-engine.js +0 -592
  492. package/packages/runtime/dist/policy-engine.js.map +0 -1
  493. package/packages/runtime/dist/runtime-api.d.ts +0 -137
  494. package/packages/runtime/dist/runtime-api.d.ts.map +0 -1
  495. package/packages/runtime/dist/runtime-api.js +0 -454
  496. package/packages/runtime/dist/runtime-api.js.map +0 -1
  497. package/packages/runtime/dist/workspace-manager.d.ts +0 -162
  498. package/packages/runtime/dist/workspace-manager.d.ts.map +0 -1
  499. package/packages/runtime/dist/workspace-manager.js +0 -451
  500. package/packages/runtime/dist/workspace-manager.js.map +0 -1
  501. package/packages/runtime/tsconfig.json +0 -8
  502. package/packages/scheduler-adapter/tsconfig.json +0 -22
  503. package/packages/scheduler-adapter/tsconfig.tsbuildinfo +0 -1
  504. package/packages/session/tsconfig.json +0 -33
  505. package/packages/session/tsconfig.tsbuildinfo +0 -1
  506. package/packages/session-api/dist/src/api.d.ts +0 -83
  507. package/packages/session-api/dist/src/api.d.ts.map +0 -1
  508. package/packages/session-api/dist/src/api.js +0 -49
  509. package/packages/session-api/dist/src/api.js.map +0 -1
  510. package/packages/session-api/dist/src/index.d.ts +0 -2
  511. package/packages/session-api/dist/src/index.d.ts.map +0 -1
  512. package/packages/session-api/dist/src/index.js +0 -2
  513. package/packages/session-api/dist/src/index.js.map +0 -1
  514. package/packages/session-api/dist/src/types.d.ts +0 -22
  515. package/packages/session-api/dist/src/types.d.ts.map +0 -1
  516. package/packages/session-api/dist/src/types.js +0 -5
  517. package/packages/session-api/dist/src/types.js.map +0 -1
  518. package/packages/session-api/tsconfig.json +0 -10
  519. package/packages/session-export/dist/src/exporter.d.ts +0 -28
  520. package/packages/session-export/dist/src/exporter.d.ts.map +0 -1
  521. package/packages/session-export/dist/src/exporter.js +0 -42
  522. package/packages/session-export/dist/src/exporter.js.map +0 -1
  523. package/packages/session-export/dist/src/index.d.ts +0 -2
  524. package/packages/session-export/dist/src/index.d.ts.map +0 -1
  525. package/packages/session-export/dist/src/index.js +0 -2
  526. package/packages/session-export/dist/src/index.js.map +0 -1
  527. package/packages/session-export/dist/src/types.d.ts +0 -20
  528. package/packages/session-export/dist/src/types.d.ts.map +0 -1
  529. package/packages/session-export/dist/src/types.js +0 -5
  530. package/packages/session-export/dist/src/types.js.map +0 -1
  531. package/packages/session-export/tsconfig.json +0 -10
  532. package/packages/skill-registry/tsconfig.json +0 -22
  533. package/packages/sprint-planner/tsconfig.json +0 -5
  534. package/packages/subscription-engine/dist/src/engine.d.ts +0 -13
  535. package/packages/subscription-engine/dist/src/engine.d.ts.map +0 -1
  536. package/packages/subscription-engine/dist/src/engine.js +0 -40
  537. package/packages/subscription-engine/dist/src/engine.js.map +0 -1
  538. package/packages/subscription-engine/dist/src/index.d.ts +0 -2
  539. package/packages/subscription-engine/dist/src/index.d.ts.map +0 -1
  540. package/packages/subscription-engine/dist/src/index.js +0 -2
  541. package/packages/subscription-engine/dist/src/index.js.map +0 -1
  542. package/packages/subscription-engine/dist/src/subscriptions.d.ts +0 -19
  543. package/packages/subscription-engine/dist/src/subscriptions.d.ts.map +0 -1
  544. package/packages/subscription-engine/dist/src/subscriptions.js +0 -39
  545. package/packages/subscription-engine/dist/src/subscriptions.js.map +0 -1
  546. package/packages/subscription-engine/dist/src/types.d.ts +0 -24
  547. package/packages/subscription-engine/dist/src/types.d.ts.map +0 -1
  548. package/packages/subscription-engine/dist/src/types.js +0 -5
  549. package/packages/subscription-engine/dist/src/types.js.map +0 -1
  550. package/packages/subscription-engine/tsconfig.json +0 -10
  551. package/packages/task-compiler/tsconfig.json +0 -24
  552. package/packages/test-data-generator/tsconfig.json +0 -33
  553. package/packages/test-data-generator/tsconfig.tsbuildinfo +0 -1
  554. package/packages/test-generator/tsconfig.json +0 -6
  555. package/packages/token-optimizer/tsconfig.json +0 -6
  556. package/packages/tui/tsconfig.json +0 -8
  557. package/packages/types/src/runtime-types.d.ts.map +0 -1
  558. package/packages/types/src/runtime-types.js +0 -2
  559. package/packages/types/src/runtime-types.js.map +0 -1
  560. package/packages/types/tsconfig.json +0 -21
  561. package/packages/types/tsconfig.tsbuildinfo +0 -1
  562. package/packages/workflow-events/dist/src/events.d.ts +0 -38
  563. package/packages/workflow-events/dist/src/events.d.ts.map +0 -1
  564. package/packages/workflow-events/dist/src/events.js +0 -55
  565. package/packages/workflow-events/dist/src/events.js.map +0 -1
  566. package/packages/workflow-events/dist/src/index.d.ts +0 -2
  567. package/packages/workflow-events/dist/src/index.d.ts.map +0 -1
  568. package/packages/workflow-events/dist/src/index.js +0 -2
  569. package/packages/workflow-events/dist/src/index.js.map +0 -1
  570. package/packages/workflow-events/dist/src/pipeline.d.ts +0 -21
  571. package/packages/workflow-events/dist/src/pipeline.d.ts.map +0 -1
  572. package/packages/workflow-events/dist/src/pipeline.js +0 -36
  573. package/packages/workflow-events/dist/src/pipeline.js.map +0 -1
  574. package/packages/workflow-events/dist/src/types.d.ts +0 -110
  575. package/packages/workflow-events/dist/src/types.d.ts.map +0 -1
  576. package/packages/workflow-events/dist/src/types.js +0 -5
  577. package/packages/workflow-events/dist/src/types.js.map +0 -1
  578. package/packages/workflow-events/src/types.d.ts.map +0 -1
  579. package/packages/workflow-events/src/types.js +0 -5
  580. package/packages/workflow-events/src/types.js.map +0 -1
  581. package/packages/workflow-events/tsconfig.json +0 -10
  582. package/packages/workspace-scanner/dist/src/detect.d.ts +0 -3
  583. package/packages/workspace-scanner/dist/src/detect.d.ts.map +0 -1
  584. package/packages/workspace-scanner/dist/src/detect.js +0 -60
  585. package/packages/workspace-scanner/dist/src/detect.js.map +0 -1
  586. package/packages/workspace-scanner/dist/src/git.d.ts +0 -7
  587. package/packages/workspace-scanner/dist/src/git.d.ts.map +0 -1
  588. package/packages/workspace-scanner/dist/src/git.js +0 -75
  589. package/packages/workspace-scanner/dist/src/git.js.map +0 -1
  590. package/packages/workspace-scanner/dist/src/index.d.ts +0 -5
  591. package/packages/workspace-scanner/dist/src/index.d.ts.map +0 -1
  592. package/packages/workspace-scanner/dist/src/index.js +0 -4
  593. package/packages/workspace-scanner/dist/src/index.js.map +0 -1
  594. package/packages/workspace-scanner/dist/src/scanner.d.ts +0 -11
  595. package/packages/workspace-scanner/dist/src/scanner.d.ts.map +0 -1
  596. package/packages/workspace-scanner/dist/src/scanner.js +0 -59
  597. package/packages/workspace-scanner/dist/src/scanner.js.map +0 -1
  598. package/packages/workspace-scanner/dist/src/types.d.ts +0 -35
  599. package/packages/workspace-scanner/dist/src/types.d.ts.map +0 -1
  600. package/packages/workspace-scanner/dist/src/types.js +0 -5
  601. package/packages/workspace-scanner/dist/src/types.js.map +0 -1
  602. package/packages/workspace-scanner/test/scanner.test.js +0 -31
  603. package/packages/workspace-scanner/tsconfig.json +0 -10
  604. package/packages/worktree/dist/index.d.ts +0 -7
  605. package/packages/worktree/dist/index.d.ts.map +0 -1
  606. package/packages/worktree/dist/index.js +0 -7
  607. package/packages/worktree/dist/index.js.map +0 -1
  608. package/packages/worktree/dist/worktree.d.ts +0 -88
  609. package/packages/worktree/dist/worktree.d.ts.map +0 -1
  610. package/packages/worktree/dist/worktree.js +0 -242
  611. package/packages/worktree/dist/worktree.js.map +0 -1
  612. package/packages/worktree/tsconfig.json +0 -8
@@ -1,103 +0,0 @@
1
- /**
2
- * OpenAI Usage Parser — TUI Message Parsing
3
- *
4
- * OpenAI (GPT) reports quota exhaustion 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
- * No API key needed - uses the same method as GLM.
11
- */
12
- import { EventEmitter } from "node:events";
13
- export interface OpenAIUsageData {
14
- provider: "openai";
15
- timestamp: string;
16
- /** Usage percentage (0-100), if available */
17
- usedPct?: number;
18
- /** Remaining percentage (0-100) */
19
- remainingPct: number;
20
- /** If exhausted */
21
- exhausted: boolean;
22
- /** Reset time */
23
- resetsAt: string;
24
- /** Which limit was hit */
25
- limitType: "tokens" | "context_window" | "rate_limit" | "unknown";
26
- /** Original message from TUI */
27
- originalMessage: string;
28
- }
29
- export interface OpenAIUsageConfig {
30
- /** Called when OpenAI quota signal is detected from TUI */
31
- onQuotaSignal?: (data: OpenAIUsageData) => void;
32
- }
33
- export declare class OpenAIUsageProvider extends EventEmitter {
34
- private lastUsageData;
35
- private onQuotaSignal?;
36
- constructor(config?: OpenAIUsageConfig);
37
- /**
38
- * Check if auto-fetch is possible via TUI
39
- * OpenAI reports quota via TUI, so this is always true when hooked
40
- */
41
- supportsAutoFetch(): boolean;
42
- /**
43
- * Process a TUI message and extract OpenAI quota data
44
- * Call this when receiving error/status messages from pi
45
- */
46
- processTUIMessage(message: string): OpenAIUsageData | null;
47
- /**
48
- * Parse reset time from message
49
- */
50
- private parseResetTime;
51
- /**
52
- * Parse the OpenAI quota message
53
- */
54
- private parseOpenAIQuotaMessage;
55
- /**
56
- * Get the last captured usage data
57
- */
58
- getLastUsage(): OpenAIUsageData | null;
59
- /**
60
- * Clear stored usage data
61
- */
62
- clear(): void;
63
- /**
64
- * For QuotaManager integration
65
- * Returns current state (from last TUI message)
66
- */
67
- getUsage(): Promise<OpenAIUsageData>;
68
- /**
69
- * Get usage as percentage
70
- */
71
- getUsagePercent(): Promise<number>;
72
- /**
73
- * Check if quota is exhausted
74
- */
75
- isExhausted(): Promise<boolean>;
76
- }
77
- /**
78
- * Integration helper: Hook OpenAI usage provider into pi extension
79
- *
80
- * Usage:
81
- * ```typescript
82
- * const openaiUsage = new OpenAIUsageProvider({
83
- * onQuotaSignal: (data) => {
84
- * quotaManager.recordSignal({
85
- * provider: "openai",
86
- * source: "tui_message",
87
- * windowType: data.limitType === "context_window" ? "daily" : "5h",
88
- * exhausted: data.exhausted,
89
- * resetsAt: data.resetsAt,
90
- * });
91
- * }
92
- * });
93
- *
94
- * pi.on("error", (event) => {
95
- * openaiUsage.processTUIMessage(event.message);
96
- * });
97
- *
98
- * pi.on("message", (event) => {
99
- * openaiUsage.processTUIMessage(event.message);
100
- * });
101
- * ```
102
- */
103
- //# sourceMappingURL=openai-usage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai-usage.d.ts","sourceRoot":"","sources":["../src/openai-usage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,SAAS,EAAE,QAAQ,GAAG,gBAAgB,GAAG,YAAY,GAAG,SAAS,CAAC;IAClE,gCAAgC;IAChC,eAAe,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IACjC,2DAA2D;IAC3D,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;CAChD;AAyCD,qBAAa,mBAAoB,SAAQ,YAAY;IACpD,OAAO,CAAC,aAAa,CAAgC;IACrD,OAAO,CAAC,aAAa,CAAC,CAAkC;IAExD,YAAY,MAAM,GAAE,iBAAsB,EAGzC;IAED;;;OAGG;IACH,iBAAiB,IAAI,OAAO,CAE3B;IAED;;;OAGG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAqBzD;IAED;;OAEG;IACH,OAAO,CAAC,cAAc;IAmCtB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;OAEG;IACH,YAAY,IAAI,eAAe,GAAG,IAAI,CAErC;IAED;;OAEG;IACH,KAAK,IAAI,IAAI,CAEZ;IAED;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,CAazC;IAED;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAGvC;IAED;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAGpC;CACD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG"}
@@ -1,208 +0,0 @@
1
- /**
2
- * OpenAI Usage Parser — TUI Message Parsing
3
- *
4
- * OpenAI (GPT) reports quota exhaustion 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
- * No API key needed - uses the same method as GLM.
11
- */
12
- import { EventEmitter } from "node:events";
13
- /**
14
- * OpenAI quota message patterns from TUI
15
- * These patterns match the messages pi displays when OpenAI hits limits
16
- */
17
- const OPENAI_QUOTA_PATTERNS = [
18
- // Context window full
19
- {
20
- pattern: /OpenAI|GPT|context.*(?:window|length).*(?:full|exceeded|limit)/i,
21
- limitType: "context_window",
22
- },
23
- // Tokens exhausted
24
- {
25
- pattern: /openai.*(?:quota|limit|exhausted|tokens?.*(?:ran out|exceeded))/i,
26
- limitType: "tokens",
27
- },
28
- // Rate limit
29
- {
30
- pattern: /openai.*rate.?limit|429/i,
31
- limitType: "rate_limit",
32
- },
33
- // Reset time patterns
34
- {
35
- pattern: /openai.*reset.*(?:at|in).*(\d{1,2}):(\d{2})/i,
36
- limitType: "unknown",
37
- },
38
- // Error codes
39
- {
40
- pattern: /insufficient_quota|context_length_exceeded/i,
41
- limitType: "tokens",
42
- },
43
- ];
44
- const RESET_TIME_PATTERNS = [
45
- /reset(?:s)?\s+(?:at|in)\s+(\d{1,2}):(\d{2})/i,
46
- /(?:at|in)\s+(\d{1,2}):(\d{2})/i,
47
- /retry\s+after\s+(\d{1,2}):(\d{2})/i,
48
- /(\d{1,2}):(\d{2})\s*(?:am|pm)/i,
49
- ];
50
- export class OpenAIUsageProvider extends EventEmitter {
51
- lastUsageData = null;
52
- onQuotaSignal;
53
- constructor(config = {}) {
54
- super();
55
- this.onQuotaSignal = config.onQuotaSignal;
56
- }
57
- /**
58
- * Check if auto-fetch is possible via TUI
59
- * OpenAI reports quota via TUI, so this is always true when hooked
60
- */
61
- supportsAutoFetch() {
62
- return true; // TUI integration is always available
63
- }
64
- /**
65
- * Process a TUI message and extract OpenAI quota data
66
- * Call this when receiving error/status messages from pi
67
- */
68
- processTUIMessage(message) {
69
- // Check if this is an OpenAI quota message
70
- for (const { pattern, limitType } of OPENAI_QUOTA_PATTERNS) {
71
- if (pattern.test(message)) {
72
- const usageData = this.parseOpenAIQuotaMessage(message, limitType);
73
- if (usageData) {
74
- this.lastUsageData = usageData;
75
- // Emit event
76
- this.emit("quota", usageData);
77
- // Call callback if set
78
- this.onQuotaSignal?.(usageData);
79
- return usageData;
80
- }
81
- }
82
- }
83
- return null;
84
- }
85
- /**
86
- * Parse reset time from message
87
- */
88
- parseResetTime(message) {
89
- for (const pattern of RESET_TIME_PATTERNS) {
90
- const match = message.match(pattern);
91
- if (match) {
92
- let hour = parseInt(match[1], 10);
93
- const minute = parseInt(match[2], 10);
94
- // Handle AM/PM
95
- const isPM = /pm/i.test(message.slice(match.index ?? 0, (match.index ?? 0) + 10));
96
- const isAM = /am/i.test(message.slice(match.index ?? 0, (match.index ?? 0) + 10));
97
- if (isPM && hour < 12)
98
- hour += 12;
99
- if (isAM && hour === 12)
100
- hour = 0;
101
- // Convert to ISO string for today or tomorrow
102
- const now = new Date();
103
- const resetTime = new Date(now);
104
- resetTime.setHours(hour, minute, 0, 0);
105
- // If time has passed today, assume tomorrow
106
- if (resetTime <= now) {
107
- resetTime.setDate(resetTime.getDate() + 1);
108
- }
109
- return resetTime.toISOString();
110
- }
111
- }
112
- return undefined;
113
- }
114
- /**
115
- * Parse the OpenAI quota message
116
- */
117
- parseOpenAIQuotaMessage(message, limitType) {
118
- const resetsAt = this.parseResetTime(message) ??
119
- new Date(Date.now() + 60 * 60 * 1000).toISOString();
120
- // Try to extract percentage if present
121
- let usedPct;
122
- const pctMatch = message.match(/(\d+)%/);
123
- if (pctMatch) {
124
- usedPct = parseInt(pctMatch[1], 10);
125
- }
126
- return {
127
- provider: "openai",
128
- timestamp: new Date().toISOString(),
129
- usedPct,
130
- remainingPct: usedPct !== undefined ? 100 - usedPct : 0,
131
- exhausted: true,
132
- resetsAt,
133
- limitType,
134
- originalMessage: message,
135
- };
136
- }
137
- /**
138
- * Get the last captured usage data
139
- */
140
- getLastUsage() {
141
- return this.lastUsageData;
142
- }
143
- /**
144
- * Clear stored usage data
145
- */
146
- clear() {
147
- this.lastUsageData = null;
148
- }
149
- /**
150
- * For QuotaManager integration
151
- * Returns current state (from last TUI message)
152
- */
153
- async getUsage() {
154
- if (!this.lastUsageData) {
155
- return {
156
- provider: "openai",
157
- timestamp: new Date().toISOString(),
158
- remainingPct: 100,
159
- exhausted: false,
160
- resetsAt: "",
161
- limitType: "unknown",
162
- originalMessage: "",
163
- };
164
- }
165
- return this.lastUsageData;
166
- }
167
- /**
168
- * Get usage as percentage
169
- */
170
- async getUsagePercent() {
171
- const usage = await this.getUsage();
172
- return usage.usedPct ?? 100 - usage.remainingPct;
173
- }
174
- /**
175
- * Check if quota is exhausted
176
- */
177
- async isExhausted() {
178
- const usage = await this.getUsage();
179
- return usage.exhausted;
180
- }
181
- }
182
- /**
183
- * Integration helper: Hook OpenAI usage provider into pi extension
184
- *
185
- * Usage:
186
- * ```typescript
187
- * const openaiUsage = new OpenAIUsageProvider({
188
- * onQuotaSignal: (data) => {
189
- * quotaManager.recordSignal({
190
- * provider: "openai",
191
- * source: "tui_message",
192
- * windowType: data.limitType === "context_window" ? "daily" : "5h",
193
- * exhausted: data.exhausted,
194
- * resetsAt: data.resetsAt,
195
- * });
196
- * }
197
- * });
198
- *
199
- * pi.on("error", (event) => {
200
- * openaiUsage.processTUIMessage(event.message);
201
- * });
202
- *
203
- * pi.on("message", (event) => {
204
- * openaiUsage.processTUIMessage(event.message);
205
- * });
206
- * ```
207
- */
208
- //# sourceMappingURL=openai-usage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai-usage.js","sourceRoot":"","sources":["../src/openai-usage.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- /**
2
- * Provider ID — single source of truth for "which provider does this model id belong to".
3
- *
4
- * Used by:
5
- * - `index.ts` to gate fetcher calls (replaces the old `isMiniMaxModel` check)
6
- * - `mirror.ts` to key per-provider records
7
- * - the footer renderer to label lines correctly
8
- * - the cookie sanitizer and quota manager
9
- *
10
- * Provider boundaries (model-id prefix → provider id):
11
- *
12
- * | Model id prefix | Provider | Notes |
13
- * |-----------------|----------------|--------------------------------------|
14
- * | `minimax/` | minimax | Playwright scrape path |
15
- * | `openai/` | openai | TUI signal path |
16
- * | `openai-codex/` | openai-codex | OAuth (different auth shape) |
17
- * | `zai/` | glm | Z.ai / Zhipu |
18
- * | `zhipu/` | glm | alt alias |
19
- * | `anthropic/` | anthropic | TUI signal path |
20
- * | `openrouter/` | openrouter | TUI signal path |
21
- * | other | null | unknown — caller decides default |
22
- *
23
- * Match is case-insensitive on the prefix portion.
24
- *
25
- * The set is intentionally small and explicit. To add a provider: add
26
- * a row to MODEL_PREFIXES and to the sanitization doc in
27
- * wiki/bugs/multi-provider-usage-status.md.
28
- */
29
- export type KnownProvider = "minimax" | "openai" | "openai-codex" | "glm" | "anthropic" | "openrouter";
30
- /** True if the given string is a known, canonical provider id. */
31
- export declare function isKnownAiProvider(value: string): value is KnownProvider;
32
- export type ProviderId = KnownProvider | (string & {});
33
- /** Return the provider id for a model id, or null if unknown. */
34
- export declare function providerFromModelId(modelId: string | null | undefined): ProviderId | null;
35
- /** Display name for the provider (used in the footer label). */
36
- export declare function providerDisplayName(provider: ProviderId): string;
37
- /** True if this provider has a continuous scrape path today (only MiniMax). */
38
- /**
39
- * Providers with continuous quota scraping via browser/API.
40
- * - minimax: has both 5h and weekly windows
41
- * - openai: has weekly-only window (no 5h limit since 2026)
42
- */
43
- export declare function providerHasContinuousScrape(provider: ProviderId): boolean;
44
- /** True if this provider has a TUI-driven signal path today. */
45
- export declare function providerHasTUISignal(provider: ProviderId): boolean;
46
- //# sourceMappingURL=provider-id.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-id.d.ts","sourceRoot":"","sources":["../src/provider-id.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,MAAM,MAAM,aAAa,GACtB,SAAS,GACT,QAAQ,GACR,cAAc,GACd,KAAK,GACL,WAAW,GACX,YAAY,CAAC;AAEhB,kEAAkE;AAClE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,aAAa,CASvE;AAED,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAYvD,iEAAiE;AACjE,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAChC,UAAU,GAAG,IAAI,CAuBnB;AAED,gEAAgE;AAChE,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAiBhE;AAED,+EAA+E;AAC/E;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAEzE;AAED,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAQlE"}
@@ -1,113 +0,0 @@
1
- /**
2
- * Provider ID — single source of truth for "which provider does this model id belong to".
3
- *
4
- * Used by:
5
- * - `index.ts` to gate fetcher calls (replaces the old `isMiniMaxModel` check)
6
- * - `mirror.ts` to key per-provider records
7
- * - the footer renderer to label lines correctly
8
- * - the cookie sanitizer and quota manager
9
- *
10
- * Provider boundaries (model-id prefix → provider id):
11
- *
12
- * | Model id prefix | Provider | Notes |
13
- * |-----------------|----------------|--------------------------------------|
14
- * | `minimax/` | minimax | Playwright scrape path |
15
- * | `openai/` | openai | TUI signal path |
16
- * | `openai-codex/` | openai-codex | OAuth (different auth shape) |
17
- * | `zai/` | glm | Z.ai / Zhipu |
18
- * | `zhipu/` | glm | alt alias |
19
- * | `anthropic/` | anthropic | TUI signal path |
20
- * | `openrouter/` | openrouter | TUI signal path |
21
- * | other | null | unknown — caller decides default |
22
- *
23
- * Match is case-insensitive on the prefix portion.
24
- *
25
- * The set is intentionally small and explicit. To add a provider: add
26
- * a row to MODEL_PREFIXES and to the sanitization doc in
27
- * wiki/bugs/multi-provider-usage-status.md.
28
- */
29
- /** True if the given string is a known, canonical provider id. */
30
- export function isKnownAiProvider(value) {
31
- return (value === "minimax" ||
32
- value === "openai" ||
33
- value === "openai-codex" ||
34
- value === "glm" ||
35
- value === "anthropic" ||
36
- value === "openrouter");
37
- }
38
- const MODEL_PREFIXES = [
39
- { prefix: "minimax/", provider: "minimax" },
40
- { prefix: "openai-codex/", provider: "openai-codex" },
41
- { prefix: "openai/", provider: "openai" },
42
- { prefix: "anthropic/", provider: "anthropic" },
43
- { prefix: "openrouter/", provider: "openrouter" },
44
- { prefix: "zai/", provider: "glm" },
45
- { prefix: "zhipu/", provider: "glm" },
46
- ];
47
- /** Return the provider id for a model id, or null if unknown. */
48
- export function providerFromModelId(modelId) {
49
- if (!modelId || typeof modelId !== "string")
50
- return null;
51
- const lower = modelId.toLowerCase();
52
- for (const { prefix, provider } of MODEL_PREFIXES) {
53
- if (lower.startsWith(prefix))
54
- return provider;
55
- }
56
- // Some model ids may be just the provider name (no `/` separator) —
57
- // common when the user picks via a friendly picker.
58
- if (lower.startsWith("minimax"))
59
- return "minimax";
60
- if (lower.startsWith("openai-codex"))
61
- return "openai-codex";
62
- if (lower.startsWith("openai"))
63
- return "openai";
64
- if (lower.startsWith("anthropic") || lower.startsWith("claude"))
65
- return "anthropic";
66
- if (lower.startsWith("openrouter"))
67
- return "openrouter";
68
- if (lower.startsWith("zai") ||
69
- lower.startsWith("zhipu") ||
70
- lower.startsWith("glm"))
71
- return "glm";
72
- // Fallback for bare model names (no provider prefix)
73
- if (lower.startsWith("gpt"))
74
- return "openai"; // e.g., "gpt-5.4" → openai
75
- return null;
76
- }
77
- /** Display name for the provider (used in the footer label). */
78
- export function providerDisplayName(provider) {
79
- switch (provider) {
80
- case "minimax":
81
- return "MiniMax";
82
- case "openai":
83
- return "OpenAI";
84
- case "openai-codex":
85
- return "OpenAI Codex";
86
- case "glm":
87
- return "GLM";
88
- case "anthropic":
89
- return "Anthropic";
90
- case "openrouter":
91
- return "OpenRouter";
92
- default:
93
- return provider;
94
- }
95
- }
96
- /** True if this provider has a continuous scrape path today (only MiniMax). */
97
- /**
98
- * Providers with continuous quota scraping via browser/API.
99
- * - minimax: has both 5h and weekly windows
100
- * - openai: has weekly-only window (no 5h limit since 2026)
101
- */
102
- export function providerHasContinuousScrape(provider) {
103
- return provider === "minimax" || provider === "openai";
104
- }
105
- /** True if this provider has a TUI-driven signal path today. */
106
- export function providerHasTUISignal(provider) {
107
- return (provider === "openai" ||
108
- provider === "openai-codex" ||
109
- provider === "glm" ||
110
- provider === "anthropic" ||
111
- provider === "openrouter");
112
- }
113
- //# sourceMappingURL=provider-id.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-id.js","sourceRoot":"","sources":["../src/provider-id.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "outDir": "./dist",
5
- "rootDir": "./src"
6
- },
7
- "include": ["src/**/*"]
8
- }
@@ -1,35 +0,0 @@
1
- /**
2
- * TUI Usage Integration Example
3
- *
4
- * Shows how to integrate TUIUsageMonitor with the pi extension.
5
- *
6
- * Usage:
7
- * ```typescript
8
- * import { QuotaManager, TUIUsageMonitor } from "@pi-harness/quota-manager";
9
- *
10
- * // In your extension setup:
11
- * const quotaManager = new QuotaManager();
12
- *
13
- * const monitor = new TUIUsageMonitor({
14
- * quotaManager,
15
- * debug: true,
16
- * });
17
- *
18
- * // Hook into pi events
19
- * pi.on("error", (event) => {
20
- * monitor.processMessage(event.message);
21
- * });
22
- *
23
- * pi.on("message", (event) => {
24
- * monitor.processMessage(event.message);
25
- * });
26
- *
27
- * // Now QuotaManager automatically receives signals from all providers
28
- * // Check provider availability:
29
- * if (!quotaManager.isAvailable("openai")) {
30
- * console.log("OpenAI exhausted, waiting for:", quotaManager.getWaitTime("openai"));
31
- * }
32
- * ```
33
- */
34
- export {};
35
- //# sourceMappingURL=tui-usage-integration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tui-usage-integration.d.ts","sourceRoot":"","sources":["../../src/examples/tui-usage-integration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG"}
@@ -1,73 +0,0 @@
1
- /**
2
- * TUI Usage Integration Example
3
- *
4
- * Shows how to integrate TUIUsageMonitor with the pi extension.
5
- *
6
- * Usage:
7
- * ```typescript
8
- * import { QuotaManager, TUIUsageMonitor } from "@pi-harness/quota-manager";
9
- *
10
- * // In your extension setup:
11
- * const quotaManager = new QuotaManager();
12
- *
13
- * const monitor = new TUIUsageMonitor({
14
- * quotaManager,
15
- * debug: true,
16
- * });
17
- *
18
- * // Hook into pi events
19
- * pi.on("error", (event) => {
20
- * monitor.processMessage(event.message);
21
- * });
22
- *
23
- * pi.on("message", (event) => {
24
- * monitor.processMessage(event.message);
25
- * });
26
- *
27
- * // Now QuotaManager automatically receives signals from all providers
28
- * // Check provider availability:
29
- * if (!quotaManager.isAvailable("openai")) {
30
- * console.log("OpenAI exhausted, waiting for:", quotaManager.getWaitTime("openai"));
31
- * }
32
- * ```
33
- */
34
- export {};
35
- // Example standalone usage
36
- /*
37
- import { QuotaManager, TUIUsageMonitor } from "./index.js";
38
-
39
- // Create quota manager
40
- const quotaManager = new QuotaManager();
41
-
42
- // Create TUI monitor
43
- const monitor = new TUIUsageMonitor({
44
- quotaManager,
45
- debug: true,
46
- });
47
-
48
- // Process some example messages
49
- const messages = [
50
- "OpenAI: Quota exhausted. Reset at 14:30",
51
- "GLM context window full. Retry in 30 minutes",
52
- "Anthropic Claude rate limit hit. 429 error",
53
- "OpenRouter tokens running out",
54
- ];
55
-
56
- for (const msg of messages) {
57
- const signal = monitor.processMessage(msg);
58
- if (signal) {
59
- console.log(`Detected: ${signal.provider} - ${signal.limitType}`);
60
- console.log(` Exhausted: ${signal.exhausted}`);
61
- console.log(` Resets at: ${signal.resetsAt}`);
62
- console.log("");
63
- }
64
- }
65
-
66
- // Check quota state
67
- console.log("=== Quota State ===");
68
- for (const provider of ["openai", "glm", "anthropic", "openrouter"]) {
69
- const state = quotaManager.getProviderState(provider);
70
- console.log(`${provider}: ${state.exhausted ? "EXHAUSTED" : state.limited ? "LIMITED" : "AVAILABLE"}`);
71
- }
72
- */
73
- //# sourceMappingURL=tui-usage-integration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tui-usage-integration.js","sourceRoot":"","sources":["../../src/examples/tui-usage-integration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;;AAEH,2BAA2B;AAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCE"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Quota Manager (RFC-0003)
3
- *
4
- * Multi-provider quota tracking and reset estimation.
5
- */
6
- export * from "./quota-manager.js";
7
- export * from "./tui-usage-monitor.js";
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Quota Manager (RFC-0003)
3
- *
4
- * Multi-provider quota tracking and reset estimation.
5
- */
6
- export * from "./quota-manager.js";
7
- export * from "./tui-usage-monitor.js";
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}