aicodeman 1.16.6 → 1.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/README.md +77 -18
  2. package/README.zh-CN.md +7 -7
  3. package/dist/config/dependency-registry.d.ts +7 -0
  4. package/dist/config/dependency-registry.d.ts.map +1 -1
  5. package/dist/config/dependency-registry.js +25 -0
  6. package/dist/config/dependency-registry.js.map +1 -1
  7. package/dist/cron/cron-service.d.ts +20 -0
  8. package/dist/cron/cron-service.d.ts.map +1 -1
  9. package/dist/cron/cron-service.js +28 -6
  10. package/dist/cron/cron-service.js.map +1 -1
  11. package/dist/docker-hosts.d.ts.map +1 -1
  12. package/dist/docker-hosts.js +14 -0
  13. package/dist/docker-hosts.js.map +1 -1
  14. package/dist/mux-interface.d.ts +3 -1
  15. package/dist/mux-interface.d.ts.map +1 -1
  16. package/dist/remote-hosts.d.ts.map +1 -1
  17. package/dist/remote-hosts.js +2 -0
  18. package/dist/remote-hosts.js.map +1 -1
  19. package/dist/session.d.ts +28 -4
  20. package/dist/session.d.ts.map +1 -1
  21. package/dist/session.js +46 -6
  22. package/dist/session.js.map +1 -1
  23. package/dist/tmux-manager.d.ts +2 -1
  24. package/dist/tmux-manager.d.ts.map +1 -1
  25. package/dist/tmux-manager.js +71 -5
  26. package/dist/tmux-manager.js.map +1 -1
  27. package/dist/types/session.d.ts +47 -4
  28. package/dist/types/session.d.ts.map +1 -1
  29. package/dist/types/session.js +2 -1
  30. package/dist/types/session.js.map +1 -1
  31. package/dist/utils/dependency-checker.d.ts.map +1 -1
  32. package/dist/utils/dependency-checker.js +7 -1
  33. package/dist/utils/dependency-checker.js.map +1 -1
  34. package/dist/utils/index.d.ts +1 -0
  35. package/dist/utils/index.d.ts.map +1 -1
  36. package/dist/utils/index.js +1 -0
  37. package/dist/utils/index.js.map +1 -1
  38. package/dist/utils/pi-cli-resolver.d.ts +50 -0
  39. package/dist/utils/pi-cli-resolver.d.ts.map +1 -0
  40. package/dist/utils/pi-cli-resolver.js +144 -0
  41. package/dist/utils/pi-cli-resolver.js.map +1 -0
  42. package/dist/web/public/admin-ui.js.gz +0 -0
  43. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  44. package/dist/web/public/{app.f9c6aadd.js → app.a13ac13b.js} +7 -7
  45. package/dist/web/public/app.a13ac13b.js.br +0 -0
  46. package/dist/web/public/app.a13ac13b.js.gz +0 -0
  47. package/dist/web/public/approvals-ui.js.gz +0 -0
  48. package/dist/web/public/{constants.53dc0fa1.js → constants.42b8bbc9.js} +131 -0
  49. package/dist/web/public/constants.42b8bbc9.js.br +0 -0
  50. package/dist/web/public/constants.42b8bbc9.js.gz +0 -0
  51. package/dist/web/public/cron-ui.js.gz +0 -0
  52. package/dist/web/public/entrance-animations.js.gz +0 -0
  53. package/dist/web/public/home-sessions.js +1 -0
  54. package/dist/web/public/home-sessions.js.br +0 -0
  55. package/dist/web/public/home-sessions.js.gz +0 -0
  56. package/dist/web/public/i18n.86757605.js +1 -0
  57. package/dist/web/public/i18n.86757605.js.br +0 -0
  58. package/dist/web/public/i18n.86757605.js.gz +0 -0
  59. package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
  60. package/dist/web/public/index.html +30 -13
  61. package/dist/web/public/index.html.br +0 -0
  62. package/dist/web/public/index.html.gz +0 -0
  63. package/dist/web/public/input-cjk.63794d0b.js.gz +0 -0
  64. package/dist/web/public/keyboard-accessory.0454a3e9.js.gz +0 -0
  65. package/dist/web/public/mobile-handlers.32fdd57f.js.gz +0 -0
  66. package/dist/web/public/mobile-overview.js +1 -0
  67. package/dist/web/public/mobile-overview.js.br +0 -0
  68. package/dist/web/public/mobile-overview.js.gz +0 -0
  69. package/dist/web/public/mobile.1eef31fe.css +1 -0
  70. package/dist/web/public/mobile.1eef31fe.css.br +0 -0
  71. package/dist/web/public/mobile.1eef31fe.css.gz +0 -0
  72. package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
  73. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  74. package/dist/web/public/{panels-ui.54b0d004.js → panels-ui.4255e1bc.js} +1 -1
  75. package/dist/web/public/panels-ui.4255e1bc.js.br +0 -0
  76. package/dist/web/public/panels-ui.4255e1bc.js.gz +0 -0
  77. package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
  78. package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
  79. package/dist/web/public/readmymind-ui.js.gz +0 -0
  80. package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
  81. package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
  82. package/dist/web/public/session-lineage.js +174 -0
  83. package/dist/web/public/session-lineage.js.br +0 -0
  84. package/dist/web/public/session-lineage.js.gz +0 -0
  85. package/dist/web/public/{session-ui.46a0993c.js → session-ui.20be58fa.js} +3 -3
  86. package/dist/web/public/session-ui.20be58fa.js.br +0 -0
  87. package/dist/web/public/session-ui.20be58fa.js.gz +0 -0
  88. package/dist/web/public/settings-ui.eacb4f92.js +67 -0
  89. package/dist/web/public/settings-ui.eacb4f92.js.br +0 -0
  90. package/dist/web/public/settings-ui.eacb4f92.js.gz +0 -0
  91. package/dist/web/public/styles.b6e8b4ae.css +1 -0
  92. package/dist/web/public/styles.b6e8b4ae.css.br +0 -0
  93. package/dist/web/public/styles.b6e8b4ae.css.gz +0 -0
  94. package/dist/web/public/{subagent-windows.4cc8b005.js → subagent-windows.2a192c3e.js} +5 -0
  95. package/dist/web/public/subagent-windows.2a192c3e.js.br +0 -0
  96. package/dist/web/public/subagent-windows.2a192c3e.js.gz +0 -0
  97. package/dist/web/public/sw.js.gz +0 -0
  98. package/dist/web/public/{terminal-ui.feed829c.js → terminal-ui.5046620b.js} +1 -1
  99. package/dist/web/public/terminal-ui.5046620b.js.br +0 -0
  100. package/dist/web/public/terminal-ui.5046620b.js.gz +0 -0
  101. package/dist/web/public/ultracode-panel.js.gz +0 -0
  102. package/dist/web/public/ultracode-windows.js.gz +0 -0
  103. package/dist/web/public/upload.html.gz +0 -0
  104. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  105. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  106. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  107. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  108. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  109. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  110. package/dist/web/public/vendor/xterm-predictive-echo.6cec0fba.js.gz +0 -0
  111. package/dist/web/public/vendor/xterm-zerolag-input.137ad9f0.js.gz +0 -0
  112. package/dist/web/public/vendor/xterm.css.gz +0 -0
  113. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  114. package/dist/web/public/voice-input.4ec670b0.js.gz +0 -0
  115. package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
  116. package/dist/web/public/webview-tabs.js.gz +0 -0
  117. package/dist/web/route-helpers.d.ts +19 -0
  118. package/dist/web/route-helpers.d.ts.map +1 -1
  119. package/dist/web/route-helpers.js +45 -0
  120. package/dist/web/route-helpers.js.map +1 -1
  121. package/dist/web/routes/session-routes.d.ts +30 -0
  122. package/dist/web/routes/session-routes.d.ts.map +1 -1
  123. package/dist/web/routes/session-routes.js +65 -17
  124. package/dist/web/routes/session-routes.js.map +1 -1
  125. package/dist/web/routes/system-routes.d.ts.map +1 -1
  126. package/dist/web/routes/system-routes.js +14 -1
  127. package/dist/web/routes/system-routes.js.map +1 -1
  128. package/dist/web/schemas.d.ts +40 -0
  129. package/dist/web/schemas.d.ts.map +1 -1
  130. package/dist/web/schemas.js +52 -5
  131. package/dist/web/schemas.js.map +1 -1
  132. package/dist/web/server.d.ts.map +1 -1
  133. package/dist/web/server.js +8 -1
  134. package/dist/web/server.js.map +1 -1
  135. package/dist/web/sse-events.d.ts +16 -1
  136. package/dist/web/sse-events.d.ts.map +1 -1
  137. package/dist/web/sse-events.js +18 -1
  138. package/dist/web/sse-events.js.map +1 -1
  139. package/dist/web/sse-stream-manager.d.ts +8 -1
  140. package/dist/web/sse-stream-manager.d.ts.map +1 -1
  141. package/dist/web/sse-stream-manager.js +12 -6
  142. package/dist/web/sse-stream-manager.js.map +1 -1
  143. package/package.json +2 -1
  144. package/skills/codeman/SKILL.md +757 -243
  145. package/skills/codeman/reference/endpoints.md +590 -73
  146. package/skills/codeman/reference/messaging.md +336 -70
  147. package/skills/codeman/reference/recipes.md +346 -52
  148. package/dist/web/public/app.f9c6aadd.js.br +0 -0
  149. package/dist/web/public/app.f9c6aadd.js.gz +0 -0
  150. package/dist/web/public/constants.53dc0fa1.js.br +0 -0
  151. package/dist/web/public/constants.53dc0fa1.js.gz +0 -0
  152. package/dist/web/public/i18n.89097ff5.js +0 -1
  153. package/dist/web/public/i18n.89097ff5.js.br +0 -0
  154. package/dist/web/public/i18n.89097ff5.js.gz +0 -0
  155. package/dist/web/public/mobile.90287e03.css +0 -1
  156. package/dist/web/public/mobile.90287e03.css.br +0 -0
  157. package/dist/web/public/mobile.90287e03.css.gz +0 -0
  158. package/dist/web/public/panels-ui.54b0d004.js.br +0 -0
  159. package/dist/web/public/panels-ui.54b0d004.js.gz +0 -0
  160. package/dist/web/public/session-ui.46a0993c.js.br +0 -0
  161. package/dist/web/public/session-ui.46a0993c.js.gz +0 -0
  162. package/dist/web/public/settings-ui.63be4178.js +0 -67
  163. package/dist/web/public/settings-ui.63be4178.js.br +0 -0
  164. package/dist/web/public/settings-ui.63be4178.js.gz +0 -0
  165. package/dist/web/public/styles.2759a2fd.css +0 -1
  166. package/dist/web/public/styles.2759a2fd.css.br +0 -0
  167. package/dist/web/public/styles.2759a2fd.css.gz +0 -0
  168. package/dist/web/public/subagent-windows.4cc8b005.js.br +0 -0
  169. package/dist/web/public/subagent-windows.4cc8b005.js.gz +0 -0
  170. package/dist/web/public/terminal-ui.feed829c.js.br +0 -0
  171. package/dist/web/public/terminal-ui.feed829c.js.gz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"dependency-checker.js","sourceRoot":"","sources":["../../src/utils/dependency-checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependency-checker.js","sourceRoot":"","sources":["../../src/utils/dependency-checker.ts"],"names":[],"mappings":"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"}
@@ -24,4 +24,5 @@ export { resolveOpenCodeDir } from './opencode-cli-resolver.js';
24
24
  export { resolveCodexDir, isCodexAvailable } from './codex-cli-resolver.js';
25
25
  export { resolveGeminiDir, isGeminiAvailable } from './gemini-cli-resolver.js';
26
26
  export { resolveAntigravityDir, isAntigravityAvailable } from './antigravity-cli-resolver.js';
27
+ export { resolvePiDir, isPiAvailable, getPiCliVersion } from './pi-cli-resolver.js';
27
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,2BAA2B,EAC3B,SAAS,EACT,iBAAiB,EACjB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,2BAA2B,EAC3B,SAAS,EACT,iBAAiB,EACjB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
@@ -23,4 +23,5 @@ export { resolveOpenCodeDir } from './opencode-cli-resolver.js';
23
23
  export { resolveCodexDir, isCodexAvailable } from './codex-cli-resolver.js';
24
24
  export { resolveGeminiDir, isGeminiAvailable } from './gemini-cli-resolver.js';
25
25
  export { resolveAntigravityDir, isAntigravityAvailable } from './antigravity-cli-resolver.js';
26
+ export { resolvePiDir, isPiAvailable, getPiCliVersion } from './pi-cli-resolver.js';
26
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,2BAA2B,EAC3B,SAAS,EACT,iBAAiB,EACjB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,2BAA2B,EAC3B,SAAS,EACT,iBAAiB,EACjB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @fileoverview Resolve the Pi CLI (`pi`) binary across common install paths.
3
+ *
4
+ * Mirrors antigravity-cli-resolver.ts, with one addition the other external-CLI
5
+ * resolvers do not need: `pi` is a SHORT, GENERIC name (Raspberry Pi tooling,
6
+ * personal scripts, `$PATH` accidents), so a `which pi` hit is not by itself
7
+ * evidence that the coding agent is installed. Every candidate is therefore
8
+ * sanity-probed with `pi --version` and required to print a semver-shaped
9
+ * string; a binary that fails the probe is treated as absent and the rejected
10
+ * path is logged so a misresolution is diagnosable.
11
+ *
12
+ * Pi ships as the npm package `@earendil-works/pi-coding-agent`, so the search
13
+ * dirs are the usual global-bin locations (npm/bun/manual installs).
14
+ *
15
+ * @module utils/pi-cli-resolver
16
+ */
17
+ /**
18
+ * A real `pi --version` prints a semver-shaped string (e.g. `0.84.1`).
19
+ *
20
+ * Exported and SHARED with the `pi` entry in `config/dependency-registry.ts`, so
21
+ * `codeman doctor` and the run mode cannot disagree about what counts as an installed
22
+ * pi: two copies of this rule would let the Dependencies panel report "Pi CLI ✓" on a
23
+ * box where `resolvePiDir()` rejects the same binary and Run Pi stays hidden.
24
+ *
25
+ * Shape is dictated by the doctor's `extractVersion()`, which returns the first CAPTURE
26
+ * GROUP and scans the whole output: hence a capturing group, and a leading boundary
27
+ * instead of `^` so `pi 0.84.1` matches while `v0.84.1` (some other program) does not.
28
+ * No `g` flag, so there is no shared `lastIndex` to reset.
29
+ */
30
+ export declare const PI_VERSION_REGEX: RegExp;
31
+ /**
32
+ * Finds the directory containing a verified `pi` binary.
33
+ * Checks `which pi` first, then falls back to common install locations. Every
34
+ * candidate must pass the `pi --version` sanity probe (§2.6 of the integration
35
+ * plan) before it is accepted.
36
+ *
37
+ * @returns Directory path, or null if not found
38
+ */
39
+ export declare function resolvePiDir(): string | null;
40
+ /**
41
+ * Check if the Pi CLI is available on the system.
42
+ */
43
+ export declare function isPiAvailable(): boolean;
44
+ /**
45
+ * Version reported by the resolved `pi` binary, or null when pi is unavailable
46
+ * (or when the probe was skipped, i.e. under vitest). Surfaced through
47
+ * `GET /api/pi/status` so a misresolution is diagnosable from the UI.
48
+ */
49
+ export declare function getPiCliVersion(): string | null;
50
+ //# sourceMappingURL=pi-cli-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi-cli-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/pi-cli-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAiBH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,QAA4B,CAAC;AAkC1D;;;;;;;GAOG;AACH,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAyC5C;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,IAAI,CAG/C"}
@@ -0,0 +1,144 @@
1
+ /**
2
+ * @fileoverview Resolve the Pi CLI (`pi`) binary across common install paths.
3
+ *
4
+ * Mirrors antigravity-cli-resolver.ts, with one addition the other external-CLI
5
+ * resolvers do not need: `pi` is a SHORT, GENERIC name (Raspberry Pi tooling,
6
+ * personal scripts, `$PATH` accidents), so a `which pi` hit is not by itself
7
+ * evidence that the coding agent is installed. Every candidate is therefore
8
+ * sanity-probed with `pi --version` and required to print a semver-shaped
9
+ * string; a binary that fails the probe is treated as absent and the rejected
10
+ * path is logged so a misresolution is diagnosable.
11
+ *
12
+ * Pi ships as the npm package `@earendil-works/pi-coding-agent`, so the search
13
+ * dirs are the usual global-bin locations (npm/bun/manual installs).
14
+ *
15
+ * @module utils/pi-cli-resolver
16
+ */
17
+ import { execFileSync, execSync } from 'node:child_process';
18
+ import { existsSync } from 'node:fs';
19
+ import { dirname, join } from 'node:path';
20
+ import { homedir } from 'node:os';
21
+ import { EXEC_TIMEOUT_MS } from '../config/exec-timeout.js';
22
+ /** Common directories where the Pi CLI binary may be installed */
23
+ const PI_SEARCH_DIRS = [
24
+ join(homedir(), '.local', 'bin'),
25
+ '/usr/local/bin',
26
+ join(homedir(), '.bun', 'bin'),
27
+ join(homedir(), '.npm-global', 'bin'),
28
+ join(homedir(), 'bin'),
29
+ ];
30
+ /**
31
+ * A real `pi --version` prints a semver-shaped string (e.g. `0.84.1`).
32
+ *
33
+ * Exported and SHARED with the `pi` entry in `config/dependency-registry.ts`, so
34
+ * `codeman doctor` and the run mode cannot disagree about what counts as an installed
35
+ * pi: two copies of this rule would let the Dependencies panel report "Pi CLI ✓" on a
36
+ * box where `resolvePiDir()` rejects the same binary and Run Pi stays hidden.
37
+ *
38
+ * Shape is dictated by the doctor's `extractVersion()`, which returns the first CAPTURE
39
+ * GROUP and scans the whole output: hence a capturing group, and a leading boundary
40
+ * instead of `^` so `pi 0.84.1` matches while `v0.84.1` (some other program) does not.
41
+ * No `g` flag, so there is no shared `lastIndex` to reset.
42
+ */
43
+ export const PI_VERSION_REGEX = /(?:^|\s)(\d+\.\d+\.\d+)/;
44
+ /** Cached directory containing the pi binary (empty string = searched but not found) */
45
+ let _piDir = null;
46
+ /** Cached version string reported by the resolved binary (empty string = probed, unusable) */
47
+ let _piVersion = null;
48
+ /**
49
+ * Run `pi --version` on a candidate path and return the trimmed version when it
50
+ * looks like the coding agent. Returns null for anything else — a missing
51
+ * binary, a non-zero exit, a hang (timeout), or output that is not semver-shaped
52
+ * (which is how an unrelated `pi` on PATH gets rejected).
53
+ *
54
+ * Never runs under vitest: the suites must stay hermetic and must not depend on
55
+ * whether the dev box happens to have pi installed.
56
+ */
57
+ function probePiVersion(binPath) {
58
+ if (process.env.VITEST)
59
+ return null;
60
+ try {
61
+ const out = execFileSync(binPath, ['--version'], {
62
+ encoding: 'utf-8',
63
+ timeout: EXEC_TIMEOUT_MS,
64
+ stdio: ['ignore', 'pipe', 'ignore'],
65
+ }).trim();
66
+ // Upstream prints a bare version today; tolerate a `pi 0.84.1` style prefix too.
67
+ const candidate = PI_VERSION_REGEX.exec(out)?.[1];
68
+ if (candidate)
69
+ return candidate;
70
+ console.warn(`[PiResolver] Ignoring ${binPath}: "pi --version" printed ${JSON.stringify(out.slice(0, 80))}`);
71
+ }
72
+ catch (err) {
73
+ console.warn(`[PiResolver] Ignoring ${binPath}: "pi --version" failed (${err.message})`);
74
+ }
75
+ return null;
76
+ }
77
+ /**
78
+ * Finds the directory containing a verified `pi` binary.
79
+ * Checks `which pi` first, then falls back to common install locations. Every
80
+ * candidate must pass the `pi --version` sanity probe (§2.6 of the integration
81
+ * plan) before it is accepted.
82
+ *
83
+ * @returns Directory path, or null if not found
84
+ */
85
+ export function resolvePiDir() {
86
+ if (_piDir !== null)
87
+ return _piDir || null;
88
+ const accept = (binPath) => {
89
+ // Under vitest the probe never runs, so existence alone decides (keeps the
90
+ // suites hermetic and matches how the sibling resolvers behave there).
91
+ if (process.env.VITEST) {
92
+ _piDir = dirname(binPath);
93
+ _piVersion = '';
94
+ return _piDir;
95
+ }
96
+ const version = probePiVersion(binPath);
97
+ if (!version)
98
+ return null;
99
+ _piDir = dirname(binPath);
100
+ _piVersion = version;
101
+ return _piDir;
102
+ };
103
+ try {
104
+ const result = execSync('which pi', {
105
+ encoding: 'utf-8',
106
+ timeout: EXEC_TIMEOUT_MS,
107
+ }).trim();
108
+ if (result && existsSync(result)) {
109
+ const dir = accept(result);
110
+ if (dir)
111
+ return dir;
112
+ }
113
+ }
114
+ catch {
115
+ // pi not in PATH, will check common locations
116
+ }
117
+ for (const dir of PI_SEARCH_DIRS) {
118
+ const binPath = join(dir, 'pi');
119
+ if (!existsSync(binPath))
120
+ continue;
121
+ const accepted = accept(binPath);
122
+ if (accepted)
123
+ return accepted;
124
+ }
125
+ _piDir = '';
126
+ _piVersion = '';
127
+ return null;
128
+ }
129
+ /**
130
+ * Check if the Pi CLI is available on the system.
131
+ */
132
+ export function isPiAvailable() {
133
+ return resolvePiDir() !== null;
134
+ }
135
+ /**
136
+ * Version reported by the resolved `pi` binary, or null when pi is unavailable
137
+ * (or when the probe was skipped, i.e. under vitest). Surfaced through
138
+ * `GET /api/pi/status` so a misresolution is diagnosable from the UI.
139
+ */
140
+ export function getPiCliVersion() {
141
+ resolvePiDir();
142
+ return _piVersion || null;
143
+ }
144
+ //# sourceMappingURL=pi-cli-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi-cli-resolver.js","sourceRoot":"","sources":["../../src/utils/pi-cli-resolver.ts"],"names":[],"mappings":"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"}
Binary file