gsd-pi 2.6.0 → 2.7.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 (1002) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/onboarding.d.ts +1 -1
  3. package/dist/pi-migration.d.ts +1 -1
  4. package/dist/resource-loader.d.ts +1 -1
  5. package/dist/resource-loader.js +1 -1
  6. package/dist/wizard.d.ts +1 -1
  7. package/package.json +12 -6
  8. package/packages/pi-agent-core/dist/agent-loop.d.ts +21 -0
  9. package/packages/pi-agent-core/dist/agent-loop.d.ts.map +1 -0
  10. package/packages/pi-agent-core/dist/agent-loop.js +308 -0
  11. package/packages/pi-agent-core/dist/agent-loop.js.map +1 -0
  12. package/packages/pi-agent-core/dist/agent.d.ts +162 -0
  13. package/packages/pi-agent-core/dist/agent.d.ts.map +1 -0
  14. package/packages/pi-agent-core/dist/agent.js +399 -0
  15. package/packages/pi-agent-core/dist/agent.js.map +1 -0
  16. package/packages/pi-agent-core/dist/index.d.ts +5 -0
  17. package/packages/pi-agent-core/dist/index.d.ts.map +1 -0
  18. package/packages/pi-agent-core/dist/index.js +9 -0
  19. package/packages/pi-agent-core/dist/index.js.map +1 -0
  20. package/packages/pi-agent-core/dist/proxy.d.ts +85 -0
  21. package/packages/pi-agent-core/dist/proxy.d.ts.map +1 -0
  22. package/packages/pi-agent-core/dist/proxy.js +268 -0
  23. package/packages/pi-agent-core/dist/proxy.js.map +1 -0
  24. package/packages/pi-agent-core/dist/types.d.ts +178 -0
  25. package/packages/pi-agent-core/dist/types.d.ts.map +1 -0
  26. package/packages/pi-agent-core/dist/types.js +2 -0
  27. package/packages/pi-agent-core/dist/types.js.map +1 -0
  28. package/packages/pi-agent-core/package.json +14 -0
  29. package/packages/pi-agent-core/src/agent-loop.ts +417 -0
  30. package/packages/pi-agent-core/src/agent.ts +568 -0
  31. package/packages/pi-agent-core/src/index.ts +8 -0
  32. package/packages/pi-agent-core/src/proxy.ts +340 -0
  33. package/packages/pi-agent-core/src/types.ts +194 -0
  34. package/packages/pi-agent-core/tsconfig.json +27 -0
  35. package/packages/pi-ai/bedrock-provider.d.ts +1 -0
  36. package/packages/pi-ai/bedrock-provider.js +1 -0
  37. package/packages/pi-ai/dist/api-registry.d.ts +20 -0
  38. package/packages/pi-ai/dist/api-registry.d.ts.map +1 -0
  39. package/packages/pi-ai/dist/api-registry.js +44 -0
  40. package/packages/pi-ai/dist/api-registry.js.map +1 -0
  41. package/packages/pi-ai/dist/bedrock-provider.d.ts +5 -0
  42. package/packages/pi-ai/dist/bedrock-provider.d.ts.map +1 -0
  43. package/packages/pi-ai/dist/bedrock-provider.js +6 -0
  44. package/packages/pi-ai/dist/bedrock-provider.js.map +1 -0
  45. package/packages/pi-ai/dist/cli.d.ts +3 -0
  46. package/packages/pi-ai/dist/cli.d.ts.map +1 -0
  47. package/packages/pi-ai/dist/cli.js +116 -0
  48. package/packages/pi-ai/dist/cli.js.map +1 -0
  49. package/packages/pi-ai/dist/env-api-keys.d.ts +9 -0
  50. package/packages/pi-ai/dist/env-api-keys.d.ts.map +1 -0
  51. package/packages/pi-ai/dist/env-api-keys.js +104 -0
  52. package/packages/pi-ai/dist/env-api-keys.js.map +1 -0
  53. package/packages/pi-ai/dist/index.d.ts +23 -0
  54. package/packages/pi-ai/dist/index.d.ts.map +1 -0
  55. package/packages/pi-ai/dist/index.js +21 -0
  56. package/packages/pi-ai/dist/index.js.map +1 -0
  57. package/packages/pi-ai/dist/models.d.ts +24 -0
  58. package/packages/pi-ai/dist/models.d.ts.map +1 -0
  59. package/packages/pi-ai/dist/models.generated.d.ts +13572 -0
  60. package/packages/pi-ai/dist/models.generated.d.ts.map +1 -0
  61. package/packages/pi-ai/dist/models.generated.js +13368 -0
  62. package/packages/pi-ai/dist/models.generated.js.map +1 -0
  63. package/packages/pi-ai/dist/models.js +55 -0
  64. package/packages/pi-ai/dist/models.js.map +1 -0
  65. package/packages/pi-ai/dist/oauth.d.ts +2 -0
  66. package/packages/pi-ai/dist/oauth.d.ts.map +1 -0
  67. package/packages/pi-ai/dist/oauth.js +2 -0
  68. package/packages/pi-ai/dist/oauth.js.map +1 -0
  69. package/packages/pi-ai/dist/providers/amazon-bedrock.d.ts +15 -0
  70. package/packages/pi-ai/dist/providers/amazon-bedrock.d.ts.map +1 -0
  71. package/packages/pi-ai/dist/providers/amazon-bedrock.js +600 -0
  72. package/packages/pi-ai/dist/providers/amazon-bedrock.js.map +1 -0
  73. package/packages/pi-ai/dist/providers/anthropic.d.ts +33 -0
  74. package/packages/pi-ai/dist/providers/anthropic.d.ts.map +1 -0
  75. package/packages/pi-ai/dist/providers/anthropic.js +732 -0
  76. package/packages/pi-ai/dist/providers/anthropic.js.map +1 -0
  77. package/packages/pi-ai/dist/providers/azure-openai-responses.d.ts +15 -0
  78. package/packages/pi-ai/dist/providers/azure-openai-responses.d.ts.map +1 -0
  79. package/packages/pi-ai/dist/providers/azure-openai-responses.js +187 -0
  80. package/packages/pi-ai/dist/providers/azure-openai-responses.js.map +1 -0
  81. package/packages/pi-ai/dist/providers/github-copilot-headers.d.ts +8 -0
  82. package/packages/pi-ai/dist/providers/github-copilot-headers.d.ts.map +1 -0
  83. package/packages/pi-ai/dist/providers/github-copilot-headers.js +29 -0
  84. package/packages/pi-ai/dist/providers/github-copilot-headers.js.map +1 -0
  85. package/packages/pi-ai/dist/providers/google-gemini-cli.d.ts +74 -0
  86. package/packages/pi-ai/dist/providers/google-gemini-cli.d.ts.map +1 -0
  87. package/packages/pi-ai/dist/providers/google-gemini-cli.js +757 -0
  88. package/packages/pi-ai/dist/providers/google-gemini-cli.js.map +1 -0
  89. package/packages/pi-ai/dist/providers/google-shared.d.ts +65 -0
  90. package/packages/pi-ai/dist/providers/google-shared.d.ts.map +1 -0
  91. package/packages/pi-ai/dist/providers/google-shared.js +300 -0
  92. package/packages/pi-ai/dist/providers/google-shared.js.map +1 -0
  93. package/packages/pi-ai/dist/providers/google-vertex.d.ts +15 -0
  94. package/packages/pi-ai/dist/providers/google-vertex.d.ts.map +1 -0
  95. package/packages/pi-ai/dist/providers/google-vertex.js +374 -0
  96. package/packages/pi-ai/dist/providers/google-vertex.js.map +1 -0
  97. package/packages/pi-ai/dist/providers/google.d.ts +13 -0
  98. package/packages/pi-ai/dist/providers/google.d.ts.map +1 -0
  99. package/packages/pi-ai/dist/providers/google.js +355 -0
  100. package/packages/pi-ai/dist/providers/google.js.map +1 -0
  101. package/packages/pi-ai/dist/providers/mistral.d.ts +22 -0
  102. package/packages/pi-ai/dist/providers/mistral.d.ts.map +1 -0
  103. package/packages/pi-ai/dist/providers/mistral.js +498 -0
  104. package/packages/pi-ai/dist/providers/mistral.js.map +1 -0
  105. package/packages/pi-ai/dist/providers/openai-codex-responses.d.ts +9 -0
  106. package/packages/pi-ai/dist/providers/openai-codex-responses.d.ts.map +1 -0
  107. package/packages/pi-ai/dist/providers/openai-codex-responses.js +704 -0
  108. package/packages/pi-ai/dist/providers/openai-codex-responses.js.map +1 -0
  109. package/packages/pi-ai/dist/providers/openai-completions.d.ts +15 -0
  110. package/packages/pi-ai/dist/providers/openai-completions.d.ts.map +1 -0
  111. package/packages/pi-ai/dist/providers/openai-completions.js +705 -0
  112. package/packages/pi-ai/dist/providers/openai-completions.js.map +1 -0
  113. package/packages/pi-ai/dist/providers/openai-responses-shared.d.ts +17 -0
  114. package/packages/pi-ai/dist/providers/openai-responses-shared.d.ts.map +1 -0
  115. package/packages/pi-ai/dist/providers/openai-responses-shared.js +442 -0
  116. package/packages/pi-ai/dist/providers/openai-responses-shared.js.map +1 -0
  117. package/packages/pi-ai/dist/providers/openai-responses.d.ts +13 -0
  118. package/packages/pi-ai/dist/providers/openai-responses.d.ts.map +1 -0
  119. package/packages/pi-ai/dist/providers/openai-responses.js +201 -0
  120. package/packages/pi-ai/dist/providers/openai-responses.js.map +1 -0
  121. package/packages/pi-ai/dist/providers/register-builtins.d.ts +11 -0
  122. package/packages/pi-ai/dist/providers/register-builtins.d.ts.map +1 -0
  123. package/packages/pi-ai/dist/providers/register-builtins.js +138 -0
  124. package/packages/pi-ai/dist/providers/register-builtins.js.map +1 -0
  125. package/packages/pi-ai/dist/providers/simple-options.d.ts +8 -0
  126. package/packages/pi-ai/dist/providers/simple-options.d.ts.map +1 -0
  127. package/packages/pi-ai/dist/providers/simple-options.js +35 -0
  128. package/packages/pi-ai/dist/providers/simple-options.js.map +1 -0
  129. package/packages/pi-ai/dist/providers/transform-messages.d.ts +8 -0
  130. package/packages/pi-ai/dist/providers/transform-messages.d.ts.map +1 -0
  131. package/packages/pi-ai/dist/providers/transform-messages.js +155 -0
  132. package/packages/pi-ai/dist/providers/transform-messages.js.map +1 -0
  133. package/packages/pi-ai/dist/stream.d.ts +8 -0
  134. package/packages/pi-ai/dist/stream.d.ts.map +1 -0
  135. package/packages/pi-ai/dist/stream.js +27 -0
  136. package/packages/pi-ai/dist/stream.js.map +1 -0
  137. package/packages/pi-ai/dist/types.d.ts +285 -0
  138. package/packages/pi-ai/dist/types.d.ts.map +1 -0
  139. package/packages/pi-ai/dist/types.js +2 -0
  140. package/packages/pi-ai/dist/types.js.map +1 -0
  141. package/packages/pi-ai/dist/utils/event-stream.d.ts +21 -0
  142. package/packages/pi-ai/dist/utils/event-stream.d.ts.map +1 -0
  143. package/packages/pi-ai/dist/utils/event-stream.js +77 -0
  144. package/packages/pi-ai/dist/utils/event-stream.js.map +1 -0
  145. package/packages/pi-ai/dist/utils/hash.d.ts +3 -0
  146. package/packages/pi-ai/dist/utils/hash.d.ts.map +1 -0
  147. package/packages/pi-ai/dist/utils/hash.js +14 -0
  148. package/packages/pi-ai/dist/utils/hash.js.map +1 -0
  149. package/packages/pi-ai/dist/utils/json-parse.d.ts +9 -0
  150. package/packages/pi-ai/dist/utils/json-parse.d.ts.map +1 -0
  151. package/packages/pi-ai/dist/utils/json-parse.js +29 -0
  152. package/packages/pi-ai/dist/utils/json-parse.js.map +1 -0
  153. package/packages/pi-ai/dist/utils/oauth/anthropic.d.ts +17 -0
  154. package/packages/pi-ai/dist/utils/oauth/anthropic.d.ts.map +1 -0
  155. package/packages/pi-ai/dist/utils/oauth/anthropic.js +104 -0
  156. package/packages/pi-ai/dist/utils/oauth/anthropic.js.map +1 -0
  157. package/packages/pi-ai/dist/utils/oauth/github-copilot.d.ts +30 -0
  158. package/packages/pi-ai/dist/utils/oauth/github-copilot.d.ts.map +1 -0
  159. package/packages/pi-ai/dist/utils/oauth/github-copilot.js +281 -0
  160. package/packages/pi-ai/dist/utils/oauth/github-copilot.js.map +1 -0
  161. package/packages/pi-ai/dist/utils/oauth/google-antigravity.d.ts +26 -0
  162. package/packages/pi-ai/dist/utils/oauth/google-antigravity.d.ts.map +1 -0
  163. package/packages/pi-ai/dist/utils/oauth/google-antigravity.js +373 -0
  164. package/packages/pi-ai/dist/utils/oauth/google-antigravity.js.map +1 -0
  165. package/packages/pi-ai/dist/utils/oauth/google-gemini-cli.d.ts +26 -0
  166. package/packages/pi-ai/dist/utils/oauth/google-gemini-cli.d.ts.map +1 -0
  167. package/packages/pi-ai/dist/utils/oauth/google-gemini-cli.js +478 -0
  168. package/packages/pi-ai/dist/utils/oauth/google-gemini-cli.js.map +1 -0
  169. package/packages/pi-ai/dist/utils/oauth/index.d.ts +61 -0
  170. package/packages/pi-ai/dist/utils/oauth/index.d.ts.map +1 -0
  171. package/packages/pi-ai/dist/utils/oauth/index.js +131 -0
  172. package/packages/pi-ai/dist/utils/oauth/index.js.map +1 -0
  173. package/packages/pi-ai/dist/utils/oauth/openai-codex.d.ts +34 -0
  174. package/packages/pi-ai/dist/utils/oauth/openai-codex.d.ts.map +1 -0
  175. package/packages/pi-ai/dist/utils/oauth/openai-codex.js +380 -0
  176. package/packages/pi-ai/dist/utils/oauth/openai-codex.js.map +1 -0
  177. package/packages/pi-ai/dist/utils/oauth/pkce.d.ts +13 -0
  178. package/packages/pi-ai/dist/utils/oauth/pkce.d.ts.map +1 -0
  179. package/packages/pi-ai/dist/utils/oauth/pkce.js +31 -0
  180. package/packages/pi-ai/dist/utils/oauth/pkce.js.map +1 -0
  181. package/packages/pi-ai/dist/utils/oauth/types.d.ts +47 -0
  182. package/packages/pi-ai/dist/utils/oauth/types.d.ts.map +1 -0
  183. package/packages/pi-ai/dist/utils/oauth/types.js +2 -0
  184. package/packages/pi-ai/dist/utils/oauth/types.js.map +1 -0
  185. package/packages/pi-ai/dist/utils/overflow.d.ts +52 -0
  186. package/packages/pi-ai/dist/utils/overflow.d.ts.map +1 -0
  187. package/packages/pi-ai/dist/utils/overflow.js +117 -0
  188. package/packages/pi-ai/dist/utils/overflow.js.map +1 -0
  189. package/packages/pi-ai/dist/utils/sanitize-unicode.d.ts +22 -0
  190. package/packages/pi-ai/dist/utils/sanitize-unicode.d.ts.map +1 -0
  191. package/packages/pi-ai/dist/utils/sanitize-unicode.js +26 -0
  192. package/packages/pi-ai/dist/utils/sanitize-unicode.js.map +1 -0
  193. package/packages/pi-ai/dist/utils/typebox-helpers.d.ts +17 -0
  194. package/packages/pi-ai/dist/utils/typebox-helpers.d.ts.map +1 -0
  195. package/packages/pi-ai/dist/utils/typebox-helpers.js +21 -0
  196. package/packages/pi-ai/dist/utils/typebox-helpers.js.map +1 -0
  197. package/packages/pi-ai/dist/utils/validation.d.ts +18 -0
  198. package/packages/pi-ai/dist/utils/validation.d.ts.map +1 -0
  199. package/packages/pi-ai/dist/utils/validation.js +72 -0
  200. package/packages/pi-ai/dist/utils/validation.js.map +1 -0
  201. package/packages/pi-ai/package.json +40 -0
  202. package/packages/pi-ai/src/api-registry.ts +98 -0
  203. package/packages/pi-ai/src/bedrock-provider.ts +6 -0
  204. package/packages/pi-ai/src/cli.ts +133 -0
  205. package/packages/pi-ai/src/env-api-keys.ts +129 -0
  206. package/packages/pi-ai/src/index.ts +32 -0
  207. package/packages/pi-ai/src/models.generated.ts +13370 -0
  208. package/packages/pi-ai/src/models.ts +77 -0
  209. package/packages/pi-ai/src/oauth.ts +1 -0
  210. package/packages/pi-ai/src/providers/amazon-bedrock.ts +751 -0
  211. package/packages/pi-ai/src/providers/anthropic.ts +883 -0
  212. package/packages/pi-ai/src/providers/azure-openai-responses.ts +259 -0
  213. package/packages/pi-ai/src/providers/github-copilot-headers.ts +37 -0
  214. package/packages/pi-ai/src/providers/google-gemini-cli.ts +967 -0
  215. package/packages/pi-ai/src/providers/google-shared.ts +313 -0
  216. package/packages/pi-ai/src/providers/google-vertex.ts +485 -0
  217. package/packages/pi-ai/src/providers/google.ts +455 -0
  218. package/packages/pi-ai/src/providers/mistral.ts +582 -0
  219. package/packages/pi-ai/src/providers/openai-codex-responses.ts +875 -0
  220. package/packages/pi-ai/src/providers/openai-completions.ts +820 -0
  221. package/packages/pi-ai/src/providers/openai-responses-shared.ts +496 -0
  222. package/packages/pi-ai/src/providers/openai-responses.ts +262 -0
  223. package/packages/pi-ai/src/providers/register-builtins.ts +186 -0
  224. package/packages/pi-ai/src/providers/simple-options.ts +46 -0
  225. package/packages/pi-ai/src/providers/transform-messages.ts +172 -0
  226. package/packages/pi-ai/src/stream.ts +59 -0
  227. package/packages/pi-ai/src/types.ts +321 -0
  228. package/packages/pi-ai/src/utils/event-stream.ts +87 -0
  229. package/packages/pi-ai/src/utils/hash.ts +13 -0
  230. package/packages/pi-ai/src/utils/json-parse.ts +28 -0
  231. package/packages/pi-ai/src/utils/oauth/anthropic.ts +138 -0
  232. package/packages/pi-ai/src/utils/oauth/github-copilot.ts +381 -0
  233. package/packages/pi-ai/src/utils/oauth/google-antigravity.ts +457 -0
  234. package/packages/pi-ai/src/utils/oauth/google-gemini-cli.ts +599 -0
  235. package/packages/pi-ai/src/utils/oauth/index.ts +162 -0
  236. package/packages/pi-ai/src/utils/oauth/openai-codex.ts +455 -0
  237. package/packages/pi-ai/src/utils/oauth/pkce.ts +34 -0
  238. package/packages/pi-ai/src/utils/oauth/types.ts +59 -0
  239. package/packages/pi-ai/src/utils/overflow.ts +123 -0
  240. package/packages/pi-ai/src/utils/sanitize-unicode.ts +25 -0
  241. package/packages/pi-ai/src/utils/typebox-helpers.ts +24 -0
  242. package/packages/pi-ai/src/utils/validation.ts +84 -0
  243. package/packages/pi-ai/tsconfig.json +27 -0
  244. package/packages/pi-coding-agent/dist/cli/args.d.ts +48 -0
  245. package/packages/pi-coding-agent/dist/cli/args.d.ts.map +1 -0
  246. package/packages/pi-coding-agent/dist/cli/args.js +299 -0
  247. package/packages/pi-coding-agent/dist/cli/args.js.map +1 -0
  248. package/packages/pi-coding-agent/dist/cli/config-selector.d.ts +14 -0
  249. package/packages/pi-coding-agent/dist/cli/config-selector.d.ts.map +1 -0
  250. package/packages/pi-coding-agent/dist/cli/config-selector.js +31 -0
  251. package/packages/pi-coding-agent/dist/cli/config-selector.js.map +1 -0
  252. package/packages/pi-coding-agent/dist/cli/file-processor.d.ts +15 -0
  253. package/packages/pi-coding-agent/dist/cli/file-processor.d.ts.map +1 -0
  254. package/packages/pi-coding-agent/dist/cli/file-processor.js +79 -0
  255. package/packages/pi-coding-agent/dist/cli/file-processor.js.map +1 -0
  256. package/packages/pi-coding-agent/dist/cli/list-models.d.ts +9 -0
  257. package/packages/pi-coding-agent/dist/cli/list-models.d.ts.map +1 -0
  258. package/packages/pi-coding-agent/dist/cli/list-models.js +92 -0
  259. package/packages/pi-coding-agent/dist/cli/list-models.js.map +1 -0
  260. package/packages/pi-coding-agent/dist/cli/session-picker.d.ts +9 -0
  261. package/packages/pi-coding-agent/dist/cli/session-picker.d.ts.map +1 -0
  262. package/packages/pi-coding-agent/dist/cli/session-picker.js +34 -0
  263. package/packages/pi-coding-agent/dist/cli/session-picker.js.map +1 -0
  264. package/packages/pi-coding-agent/dist/cli.d.ts +3 -0
  265. package/packages/pi-coding-agent/dist/cli.d.ts.map +1 -0
  266. package/packages/pi-coding-agent/dist/cli.js +16 -0
  267. package/packages/pi-coding-agent/dist/cli.js.map +1 -0
  268. package/packages/pi-coding-agent/dist/config.d.ts +68 -0
  269. package/packages/pi-coding-agent/dist/config.d.ts.map +1 -0
  270. package/packages/pi-coding-agent/dist/config.js +203 -0
  271. package/packages/pi-coding-agent/dist/config.js.map +1 -0
  272. package/packages/pi-coding-agent/dist/core/agent-session.d.ts +618 -0
  273. package/packages/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -0
  274. package/packages/pi-coding-agent/dist/core/agent-session.js +2481 -0
  275. package/packages/pi-coding-agent/dist/core/agent-session.js.map +1 -0
  276. package/packages/pi-coding-agent/dist/core/auth-storage.d.ts +134 -0
  277. package/packages/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -0
  278. package/packages/pi-coding-agent/dist/core/auth-storage.js +415 -0
  279. package/packages/pi-coding-agent/dist/core/auth-storage.js.map +1 -0
  280. package/packages/pi-coding-agent/dist/core/bash-executor.d.ts +47 -0
  281. package/packages/pi-coding-agent/dist/core/bash-executor.d.ts.map +1 -0
  282. package/packages/pi-coding-agent/dist/core/bash-executor.js +212 -0
  283. package/packages/pi-coding-agent/dist/core/bash-executor.js.map +1 -0
  284. package/packages/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts +86 -0
  285. package/packages/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts.map +1 -0
  286. package/packages/pi-coding-agent/dist/core/compaction/branch-summarization.js +242 -0
  287. package/packages/pi-coding-agent/dist/core/compaction/branch-summarization.js.map +1 -0
  288. package/packages/pi-coding-agent/dist/core/compaction/compaction.d.ts +121 -0
  289. package/packages/pi-coding-agent/dist/core/compaction/compaction.d.ts.map +1 -0
  290. package/packages/pi-coding-agent/dist/core/compaction/compaction.js +610 -0
  291. package/packages/pi-coding-agent/dist/core/compaction/compaction.js.map +1 -0
  292. package/packages/pi-coding-agent/dist/core/compaction/index.d.ts +7 -0
  293. package/packages/pi-coding-agent/dist/core/compaction/index.d.ts.map +1 -0
  294. package/packages/pi-coding-agent/dist/core/compaction/index.js +7 -0
  295. package/packages/pi-coding-agent/dist/core/compaction/index.js.map +1 -0
  296. package/packages/pi-coding-agent/dist/core/compaction/utils.d.ts +38 -0
  297. package/packages/pi-coding-agent/dist/core/compaction/utils.d.ts.map +1 -0
  298. package/packages/pi-coding-agent/dist/core/compaction/utils.js +153 -0
  299. package/packages/pi-coding-agent/dist/core/compaction/utils.js.map +1 -0
  300. package/packages/pi-coding-agent/dist/core/defaults.d.ts +3 -0
  301. package/packages/pi-coding-agent/dist/core/defaults.d.ts.map +1 -0
  302. package/packages/pi-coding-agent/dist/core/defaults.js +2 -0
  303. package/packages/pi-coding-agent/dist/core/defaults.js.map +1 -0
  304. package/packages/pi-coding-agent/dist/core/diagnostics.d.ts +15 -0
  305. package/packages/pi-coding-agent/dist/core/diagnostics.d.ts.map +1 -0
  306. package/packages/pi-coding-agent/dist/core/diagnostics.js +2 -0
  307. package/packages/pi-coding-agent/dist/core/diagnostics.js.map +1 -0
  308. package/packages/pi-coding-agent/dist/core/event-bus.d.ts +9 -0
  309. package/packages/pi-coding-agent/dist/core/event-bus.d.ts.map +1 -0
  310. package/packages/pi-coding-agent/dist/core/event-bus.js +25 -0
  311. package/packages/pi-coding-agent/dist/core/event-bus.js.map +1 -0
  312. package/packages/pi-coding-agent/dist/core/exec.d.ts +29 -0
  313. package/packages/pi-coding-agent/dist/core/exec.d.ts.map +1 -0
  314. package/packages/pi-coding-agent/dist/core/exec.js +71 -0
  315. package/packages/pi-coding-agent/dist/core/exec.js.map +1 -0
  316. package/packages/pi-coding-agent/dist/core/export-html/ansi-to-html.d.ts +22 -0
  317. package/packages/pi-coding-agent/dist/core/export-html/ansi-to-html.d.ts.map +1 -0
  318. package/packages/pi-coding-agent/dist/core/export-html/ansi-to-html.js +249 -0
  319. package/packages/pi-coding-agent/dist/core/export-html/ansi-to-html.js.map +1 -0
  320. package/packages/pi-coding-agent/dist/core/export-html/index.d.ts +37 -0
  321. package/packages/pi-coding-agent/dist/core/export-html/index.d.ts.map +1 -0
  322. package/packages/pi-coding-agent/dist/core/export-html/index.js +223 -0
  323. package/packages/pi-coding-agent/dist/core/export-html/index.js.map +1 -0
  324. package/packages/pi-coding-agent/dist/core/export-html/template.css +971 -0
  325. package/packages/pi-coding-agent/dist/core/export-html/template.html +54 -0
  326. package/packages/pi-coding-agent/dist/core/export-html/template.js +1583 -0
  327. package/packages/pi-coding-agent/dist/core/export-html/tool-renderer.d.ts +38 -0
  328. package/packages/pi-coding-agent/dist/core/export-html/tool-renderer.d.ts.map +1 -0
  329. package/packages/pi-coding-agent/dist/core/export-html/tool-renderer.js +70 -0
  330. package/packages/pi-coding-agent/dist/core/export-html/tool-renderer.js.map +1 -0
  331. package/packages/pi-coding-agent/dist/core/export-html/vendor/highlight.min.js +1213 -0
  332. package/packages/pi-coding-agent/dist/core/export-html/vendor/marked.min.js +6 -0
  333. package/packages/pi-coding-agent/dist/core/extensions/index.d.ts +11 -0
  334. package/packages/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -0
  335. package/packages/pi-coding-agent/dist/core/extensions/index.js +9 -0
  336. package/packages/pi-coding-agent/dist/core/extensions/index.js.map +1 -0
  337. package/packages/pi-coding-agent/dist/core/extensions/loader.d.ts +25 -0
  338. package/packages/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -0
  339. package/packages/pi-coding-agent/dist/core/extensions/loader.js +426 -0
  340. package/packages/pi-coding-agent/dist/core/extensions/loader.js.map +1 -0
  341. package/packages/pi-coding-agent/dist/core/extensions/runner.d.ts +147 -0
  342. package/packages/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -0
  343. package/packages/pi-coding-agent/dist/core/extensions/runner.js +672 -0
  344. package/packages/pi-coding-agent/dist/core/extensions/runner.js.map +1 -0
  345. package/packages/pi-coding-agent/dist/core/extensions/types.d.ts +1040 -0
  346. package/packages/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -0
  347. package/packages/pi-coding-agent/dist/core/extensions/types.js +35 -0
  348. package/packages/pi-coding-agent/dist/core/extensions/types.js.map +1 -0
  349. package/packages/pi-coding-agent/dist/core/extensions/wrapper.d.ts +27 -0
  350. package/packages/pi-coding-agent/dist/core/extensions/wrapper.d.ts.map +1 -0
  351. package/packages/pi-coding-agent/dist/core/extensions/wrapper.js +102 -0
  352. package/packages/pi-coding-agent/dist/core/extensions/wrapper.js.map +1 -0
  353. package/packages/pi-coding-agent/dist/core/footer-data-provider.d.ts +32 -0
  354. package/packages/pi-coding-agent/dist/core/footer-data-provider.d.ts.map +1 -0
  355. package/packages/pi-coding-agent/dist/core/footer-data-provider.js +134 -0
  356. package/packages/pi-coding-agent/dist/core/footer-data-provider.js.map +1 -0
  357. package/packages/pi-coding-agent/dist/core/index.d.ts +9 -0
  358. package/packages/pi-coding-agent/dist/core/index.d.ts.map +1 -0
  359. package/packages/pi-coding-agent/dist/core/index.js +9 -0
  360. package/packages/pi-coding-agent/dist/core/index.js.map +1 -0
  361. package/packages/pi-coding-agent/dist/core/keybindings.d.ts +55 -0
  362. package/packages/pi-coding-agent/dist/core/keybindings.d.ts.map +1 -0
  363. package/packages/pi-coding-agent/dist/core/keybindings.js +151 -0
  364. package/packages/pi-coding-agent/dist/core/keybindings.js.map +1 -0
  365. package/packages/pi-coding-agent/dist/core/messages.d.ts +77 -0
  366. package/packages/pi-coding-agent/dist/core/messages.d.ts.map +1 -0
  367. package/packages/pi-coding-agent/dist/core/messages.js +123 -0
  368. package/packages/pi-coding-agent/dist/core/messages.js.map +1 -0
  369. package/packages/pi-coding-agent/dist/core/model-registry.d.ts +113 -0
  370. package/packages/pi-coding-agent/dist/core/model-registry.d.ts.map +1 -0
  371. package/packages/pi-coding-agent/dist/core/model-registry.js +537 -0
  372. package/packages/pi-coding-agent/dist/core/model-registry.js.map +1 -0
  373. package/packages/pi-coding-agent/dist/core/model-resolver.d.ts +104 -0
  374. package/packages/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -0
  375. package/packages/pi-coding-agent/dist/core/model-resolver.js +462 -0
  376. package/packages/pi-coding-agent/dist/core/model-resolver.js.map +1 -0
  377. package/packages/pi-coding-agent/dist/core/package-manager.d.ts +156 -0
  378. package/packages/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -0
  379. package/packages/pi-coding-agent/dist/core/package-manager.js +1442 -0
  380. package/packages/pi-coding-agent/dist/core/package-manager.js.map +1 -0
  381. package/packages/pi-coding-agent/dist/core/prompt-templates.d.ts +50 -0
  382. package/packages/pi-coding-agent/dist/core/prompt-templates.d.ts.map +1 -0
  383. package/packages/pi-coding-agent/dist/core/prompt-templates.js +251 -0
  384. package/packages/pi-coding-agent/dist/core/prompt-templates.js.map +1 -0
  385. package/packages/pi-coding-agent/dist/core/resolve-config-value.d.ts +17 -0
  386. package/packages/pi-coding-agent/dist/core/resolve-config-value.d.ts.map +1 -0
  387. package/packages/pi-coding-agent/dist/core/resolve-config-value.js +59 -0
  388. package/packages/pi-coding-agent/dist/core/resolve-config-value.js.map +1 -0
  389. package/packages/pi-coding-agent/dist/core/resource-loader.d.ts +184 -0
  390. package/packages/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -0
  391. package/packages/pi-coding-agent/dist/core/resource-loader.js +633 -0
  392. package/packages/pi-coding-agent/dist/core/resource-loader.js.map +1 -0
  393. package/packages/pi-coding-agent/dist/core/sdk.d.ts +90 -0
  394. package/packages/pi-coding-agent/dist/core/sdk.d.ts.map +1 -0
  395. package/packages/pi-coding-agent/dist/core/sdk.js +242 -0
  396. package/packages/pi-coding-agent/dist/core/sdk.js.map +1 -0
  397. package/packages/pi-coding-agent/dist/core/session-manager.d.ts +323 -0
  398. package/packages/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -0
  399. package/packages/pi-coding-agent/dist/core/session-manager.js +1094 -0
  400. package/packages/pi-coding-agent/dist/core/session-manager.js.map +1 -0
  401. package/packages/pi-coding-agent/dist/core/settings-manager.d.ts +232 -0
  402. package/packages/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -0
  403. package/packages/pi-coding-agent/dist/core/settings-manager.js +682 -0
  404. package/packages/pi-coding-agent/dist/core/settings-manager.js.map +1 -0
  405. package/packages/pi-coding-agent/dist/core/skills.d.ts +58 -0
  406. package/packages/pi-coding-agent/dist/core/skills.d.ts.map +1 -0
  407. package/packages/pi-coding-agent/dist/core/skills.js +364 -0
  408. package/packages/pi-coding-agent/dist/core/skills.js.map +1 -0
  409. package/packages/pi-coding-agent/dist/core/slash-commands.d.ts +15 -0
  410. package/packages/pi-coding-agent/dist/core/slash-commands.d.ts.map +1 -0
  411. package/packages/pi-coding-agent/dist/core/slash-commands.js +22 -0
  412. package/packages/pi-coding-agent/dist/core/slash-commands.js.map +1 -0
  413. package/packages/pi-coding-agent/dist/core/system-prompt.d.ts +28 -0
  414. package/packages/pi-coding-agent/dist/core/system-prompt.d.ts.map +1 -0
  415. package/packages/pi-coding-agent/dist/core/system-prompt.js +159 -0
  416. package/packages/pi-coding-agent/dist/core/system-prompt.js.map +1 -0
  417. package/packages/pi-coding-agent/dist/core/timings.d.ts +7 -0
  418. package/packages/pi-coding-agent/dist/core/timings.d.ts.map +1 -0
  419. package/packages/pi-coding-agent/dist/core/timings.js +25 -0
  420. package/packages/pi-coding-agent/dist/core/timings.js.map +1 -0
  421. package/packages/pi-coding-agent/dist/core/tools/bash.d.ts +55 -0
  422. package/packages/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -0
  423. package/packages/pi-coding-agent/dist/core/tools/bash.js +269 -0
  424. package/packages/pi-coding-agent/dist/core/tools/bash.js.map +1 -0
  425. package/packages/pi-coding-agent/dist/core/tools/edit-diff.d.ts +63 -0
  426. package/packages/pi-coding-agent/dist/core/tools/edit-diff.d.ts.map +1 -0
  427. package/packages/pi-coding-agent/dist/core/tools/edit-diff.js +243 -0
  428. package/packages/pi-coding-agent/dist/core/tools/edit-diff.js.map +1 -0
  429. package/packages/pi-coding-agent/dist/core/tools/edit.d.ts +39 -0
  430. package/packages/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -0
  431. package/packages/pi-coding-agent/dist/core/tools/edit.js +146 -0
  432. package/packages/pi-coding-agent/dist/core/tools/edit.js.map +1 -0
  433. package/packages/pi-coding-agent/dist/core/tools/find.d.ts +39 -0
  434. package/packages/pi-coding-agent/dist/core/tools/find.d.ts.map +1 -0
  435. package/packages/pi-coding-agent/dist/core/tools/find.js +206 -0
  436. package/packages/pi-coding-agent/dist/core/tools/find.js.map +1 -0
  437. package/packages/pi-coding-agent/dist/core/tools/grep.d.ts +45 -0
  438. package/packages/pi-coding-agent/dist/core/tools/grep.d.ts.map +1 -0
  439. package/packages/pi-coding-agent/dist/core/tools/grep.js +239 -0
  440. package/packages/pi-coding-agent/dist/core/tools/grep.js.map +1 -0
  441. package/packages/pi-coding-agent/dist/core/tools/index.d.ts +73 -0
  442. package/packages/pi-coding-agent/dist/core/tools/index.d.ts.map +1 -0
  443. package/packages/pi-coding-agent/dist/core/tools/index.js +61 -0
  444. package/packages/pi-coding-agent/dist/core/tools/index.js.map +1 -0
  445. package/packages/pi-coding-agent/dist/core/tools/ls.d.ts +40 -0
  446. package/packages/pi-coding-agent/dist/core/tools/ls.d.ts.map +1 -0
  447. package/packages/pi-coding-agent/dist/core/tools/ls.js +118 -0
  448. package/packages/pi-coding-agent/dist/core/tools/ls.js.map +1 -0
  449. package/packages/pi-coding-agent/dist/core/tools/path-utils.d.ts +8 -0
  450. package/packages/pi-coding-agent/dist/core/tools/path-utils.d.ts.map +1 -0
  451. package/packages/pi-coding-agent/dist/core/tools/path-utils.js +81 -0
  452. package/packages/pi-coding-agent/dist/core/tools/path-utils.js.map +1 -0
  453. package/packages/pi-coding-agent/dist/core/tools/read.d.ts +39 -0
  454. package/packages/pi-coding-agent/dist/core/tools/read.d.ts.map +1 -0
  455. package/packages/pi-coding-agent/dist/core/tools/read.js +166 -0
  456. package/packages/pi-coding-agent/dist/core/tools/read.js.map +1 -0
  457. package/packages/pi-coding-agent/dist/core/tools/truncate.d.ts +70 -0
  458. package/packages/pi-coding-agent/dist/core/tools/truncate.d.ts.map +1 -0
  459. package/packages/pi-coding-agent/dist/core/tools/truncate.js +205 -0
  460. package/packages/pi-coding-agent/dist/core/tools/truncate.js.map +1 -0
  461. package/packages/pi-coding-agent/dist/core/tools/write.d.ts +29 -0
  462. package/packages/pi-coding-agent/dist/core/tools/write.d.ts.map +1 -0
  463. package/packages/pi-coding-agent/dist/core/tools/write.js +78 -0
  464. package/packages/pi-coding-agent/dist/core/tools/write.js.map +1 -0
  465. package/packages/pi-coding-agent/dist/index.d.ts +27 -0
  466. package/packages/pi-coding-agent/dist/index.d.ts.map +1 -0
  467. package/packages/pi-coding-agent/dist/index.js +42 -0
  468. package/packages/pi-coding-agent/dist/index.js.map +1 -0
  469. package/packages/pi-coding-agent/dist/main.d.ts +8 -0
  470. package/packages/pi-coding-agent/dist/main.d.ts.map +1 -0
  471. package/packages/pi-coding-agent/dist/main.js +691 -0
  472. package/packages/pi-coding-agent/dist/main.js.map +1 -0
  473. package/packages/pi-coding-agent/dist/migrations.d.ts +33 -0
  474. package/packages/pi-coding-agent/dist/migrations.d.ts.map +1 -0
  475. package/packages/pi-coding-agent/dist/migrations.js +261 -0
  476. package/packages/pi-coding-agent/dist/migrations.js.map +1 -0
  477. package/packages/pi-coding-agent/dist/modes/index.d.ts +9 -0
  478. package/packages/pi-coding-agent/dist/modes/index.d.ts.map +1 -0
  479. package/packages/pi-coding-agent/dist/modes/index.js +8 -0
  480. package/packages/pi-coding-agent/dist/modes/index.js.map +1 -0
  481. package/packages/pi-coding-agent/dist/modes/interactive/components/armin.d.ts +34 -0
  482. package/packages/pi-coding-agent/dist/modes/interactive/components/armin.d.ts.map +1 -0
  483. package/packages/pi-coding-agent/dist/modes/interactive/components/armin.js +329 -0
  484. package/packages/pi-coding-agent/dist/modes/interactive/components/armin.js.map +1 -0
  485. package/packages/pi-coding-agent/dist/modes/interactive/components/assistant-message.d.ts +16 -0
  486. package/packages/pi-coding-agent/dist/modes/interactive/components/assistant-message.d.ts.map +1 -0
  487. package/packages/pi-coding-agent/dist/modes/interactive/components/assistant-message.js +92 -0
  488. package/packages/pi-coding-agent/dist/modes/interactive/components/assistant-message.js.map +1 -0
  489. package/packages/pi-coding-agent/dist/modes/interactive/components/bash-execution.d.ts +35 -0
  490. package/packages/pi-coding-agent/dist/modes/interactive/components/bash-execution.d.ts.map +1 -0
  491. package/packages/pi-coding-agent/dist/modes/interactive/components/bash-execution.js +156 -0
  492. package/packages/pi-coding-agent/dist/modes/interactive/components/bash-execution.js.map +1 -0
  493. package/packages/pi-coding-agent/dist/modes/interactive/components/bordered-loader.d.ts +16 -0
  494. package/packages/pi-coding-agent/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -0
  495. package/packages/pi-coding-agent/dist/modes/interactive/components/bordered-loader.js +48 -0
  496. package/packages/pi-coding-agent/dist/modes/interactive/components/bordered-loader.js.map +1 -0
  497. package/packages/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.d.ts +16 -0
  498. package/packages/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -0
  499. package/packages/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.js +42 -0
  500. package/packages/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.js.map +1 -0
  501. package/packages/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.d.ts +16 -0
  502. package/packages/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -0
  503. package/packages/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.js +43 -0
  504. package/packages/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.js.map +1 -0
  505. package/packages/pi-coding-agent/dist/modes/interactive/components/config-selector.d.ts +71 -0
  506. package/packages/pi-coding-agent/dist/modes/interactive/components/config-selector.d.ts.map +1 -0
  507. package/packages/pi-coding-agent/dist/modes/interactive/components/config-selector.js +470 -0
  508. package/packages/pi-coding-agent/dist/modes/interactive/components/config-selector.js.map +1 -0
  509. package/packages/pi-coding-agent/dist/modes/interactive/components/countdown-timer.d.ts +14 -0
  510. package/packages/pi-coding-agent/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -0
  511. package/packages/pi-coding-agent/dist/modes/interactive/components/countdown-timer.js +28 -0
  512. package/packages/pi-coding-agent/dist/modes/interactive/components/countdown-timer.js.map +1 -0
  513. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-editor.d.ts +21 -0
  514. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-editor.d.ts.map +1 -0
  515. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-editor.js +63 -0
  516. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-editor.js.map +1 -0
  517. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-message.d.ts +20 -0
  518. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-message.d.ts.map +1 -0
  519. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-message.js +74 -0
  520. package/packages/pi-coding-agent/dist/modes/interactive/components/custom-message.js.map +1 -0
  521. package/packages/pi-coding-agent/dist/modes/interactive/components/daxnuts.d.ts +23 -0
  522. package/packages/pi-coding-agent/dist/modes/interactive/components/daxnuts.d.ts.map +1 -0
  523. package/packages/pi-coding-agent/dist/modes/interactive/components/daxnuts.js +138 -0
  524. package/packages/pi-coding-agent/dist/modes/interactive/components/daxnuts.js.map +1 -0
  525. package/packages/pi-coding-agent/dist/modes/interactive/components/diff.d.ts +12 -0
  526. package/packages/pi-coding-agent/dist/modes/interactive/components/diff.d.ts.map +1 -0
  527. package/packages/pi-coding-agent/dist/modes/interactive/components/diff.js +133 -0
  528. package/packages/pi-coding-agent/dist/modes/interactive/components/diff.js.map +1 -0
  529. package/packages/pi-coding-agent/dist/modes/interactive/components/dynamic-border.d.ts +15 -0
  530. package/packages/pi-coding-agent/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -0
  531. package/packages/pi-coding-agent/dist/modes/interactive/components/dynamic-border.js +20 -0
  532. package/packages/pi-coding-agent/dist/modes/interactive/components/dynamic-border.js.map +1 -0
  533. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-editor.d.ts +20 -0
  534. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-editor.d.ts.map +1 -0
  535. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-editor.js +106 -0
  536. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-editor.js.map +1 -0
  537. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-input.d.ts +23 -0
  538. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-input.d.ts.map +1 -0
  539. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-input.js +55 -0
  540. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-input.js.map +1 -0
  541. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-selector.d.ts +24 -0
  542. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-selector.d.ts.map +1 -0
  543. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-selector.js +71 -0
  544. package/packages/pi-coding-agent/dist/modes/interactive/components/extension-selector.js.map +1 -0
  545. package/packages/pi-coding-agent/dist/modes/interactive/components/footer.d.ts +26 -0
  546. package/packages/pi-coding-agent/dist/modes/interactive/components/footer.d.ts.map +1 -0
  547. package/packages/pi-coding-agent/dist/modes/interactive/components/footer.js +196 -0
  548. package/packages/pi-coding-agent/dist/modes/interactive/components/footer.js.map +1 -0
  549. package/packages/pi-coding-agent/dist/modes/interactive/components/index.d.ts +32 -0
  550. package/packages/pi-coding-agent/dist/modes/interactive/components/index.d.ts.map +1 -0
  551. package/packages/pi-coding-agent/dist/modes/interactive/components/index.js +33 -0
  552. package/packages/pi-coding-agent/dist/modes/interactive/components/index.js.map +1 -0
  553. package/packages/pi-coding-agent/dist/modes/interactive/components/keybinding-hints.d.ts +41 -0
  554. package/packages/pi-coding-agent/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -0
  555. package/packages/pi-coding-agent/dist/modes/interactive/components/keybinding-hints.js +61 -0
  556. package/packages/pi-coding-agent/dist/modes/interactive/components/keybinding-hints.js.map +1 -0
  557. package/packages/pi-coding-agent/dist/modes/interactive/components/login-dialog.d.ts +42 -0
  558. package/packages/pi-coding-agent/dist/modes/interactive/components/login-dialog.d.ts.map +1 -0
  559. package/packages/pi-coding-agent/dist/modes/interactive/components/login-dialog.js +139 -0
  560. package/packages/pi-coding-agent/dist/modes/interactive/components/login-dialog.js.map +1 -0
  561. package/packages/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts +47 -0
  562. package/packages/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts.map +1 -0
  563. package/packages/pi-coding-agent/dist/modes/interactive/components/model-selector.js +259 -0
  564. package/packages/pi-coding-agent/dist/modes/interactive/components/model-selector.js.map +1 -0
  565. package/packages/pi-coding-agent/dist/modes/interactive/components/oauth-selector.d.ts +19 -0
  566. package/packages/pi-coding-agent/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -0
  567. package/packages/pi-coding-agent/dist/modes/interactive/components/oauth-selector.js +92 -0
  568. package/packages/pi-coding-agent/dist/modes/interactive/components/oauth-selector.js.map +1 -0
  569. package/packages/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.d.ts +49 -0
  570. package/packages/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -0
  571. package/packages/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.js +271 -0
  572. package/packages/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.js.map +1 -0
  573. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector-search.d.ts +23 -0
  574. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -0
  575. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector-search.js +155 -0
  576. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector-search.js.map +1 -0
  577. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector.d.ts +95 -0
  578. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector.d.ts.map +1 -0
  579. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector.js +825 -0
  580. package/packages/pi-coding-agent/dist/modes/interactive/components/session-selector.js.map +1 -0
  581. package/packages/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +58 -0
  582. package/packages/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -0
  583. package/packages/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +295 -0
  584. package/packages/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -0
  585. package/packages/pi-coding-agent/dist/modes/interactive/components/show-images-selector.d.ts +10 -0
  586. package/packages/pi-coding-agent/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -0
  587. package/packages/pi-coding-agent/dist/modes/interactive/components/show-images-selector.js +34 -0
  588. package/packages/pi-coding-agent/dist/modes/interactive/components/show-images-selector.js.map +1 -0
  589. package/packages/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.d.ts +17 -0
  590. package/packages/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -0
  591. package/packages/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.js +45 -0
  592. package/packages/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.js.map +1 -0
  593. package/packages/pi-coding-agent/dist/modes/interactive/components/theme-selector.d.ts +11 -0
  594. package/packages/pi-coding-agent/dist/modes/interactive/components/theme-selector.d.ts.map +1 -0
  595. package/packages/pi-coding-agent/dist/modes/interactive/components/theme-selector.js +44 -0
  596. package/packages/pi-coding-agent/dist/modes/interactive/components/theme-selector.js.map +1 -0
  597. package/packages/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts +11 -0
  598. package/packages/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -0
  599. package/packages/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js +46 -0
  600. package/packages/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js.map +1 -0
  601. package/packages/pi-coding-agent/dist/modes/interactive/components/tool-execution.d.ts +77 -0
  602. package/packages/pi-coding-agent/dist/modes/interactive/components/tool-execution.d.ts.map +1 -0
  603. package/packages/pi-coding-agent/dist/modes/interactive/components/tool-execution.js +773 -0
  604. package/packages/pi-coding-agent/dist/modes/interactive/components/tool-execution.js.map +1 -0
  605. package/packages/pi-coding-agent/dist/modes/interactive/components/tree-selector.d.ts +87 -0
  606. package/packages/pi-coding-agent/dist/modes/interactive/components/tree-selector.d.ts.map +1 -0
  607. package/packages/pi-coding-agent/dist/modes/interactive/components/tree-selector.js +1026 -0
  608. package/packages/pi-coding-agent/dist/modes/interactive/components/tree-selector.js.map +1 -0
  609. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message-selector.d.ts +30 -0
  610. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -0
  611. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message-selector.js +110 -0
  612. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message-selector.js.map +1 -0
  613. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message.d.ts +9 -0
  614. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message.d.ts.map +1 -0
  615. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message.js +27 -0
  616. package/packages/pi-coding-agent/dist/modes/interactive/components/user-message.js.map +1 -0
  617. package/packages/pi-coding-agent/dist/modes/interactive/components/visual-truncate.d.ts +24 -0
  618. package/packages/pi-coding-agent/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -0
  619. package/packages/pi-coding-agent/dist/modes/interactive/components/visual-truncate.js +33 -0
  620. package/packages/pi-coding-agent/dist/modes/interactive/components/visual-truncate.js.map +1 -0
  621. package/packages/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +330 -0
  622. package/packages/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -0
  623. package/packages/pi-coding-agent/dist/modes/interactive/interactive-mode.js +3755 -0
  624. package/packages/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -0
  625. package/packages/pi-coding-agent/dist/modes/interactive/theme/dark.json +85 -0
  626. package/packages/pi-coding-agent/dist/modes/interactive/theme/light.json +84 -0
  627. package/packages/pi-coding-agent/dist/modes/interactive/theme/theme-schema.json +335 -0
  628. package/packages/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts +78 -0
  629. package/packages/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts.map +1 -0
  630. package/packages/pi-coding-agent/dist/modes/interactive/theme/theme.js +944 -0
  631. package/packages/pi-coding-agent/dist/modes/interactive/theme/theme.js.map +1 -0
  632. package/packages/pi-coding-agent/dist/modes/print-mode.d.ts +28 -0
  633. package/packages/pi-coding-agent/dist/modes/print-mode.d.ts.map +1 -0
  634. package/packages/pi-coding-agent/dist/modes/print-mode.js +101 -0
  635. package/packages/pi-coding-agent/dist/modes/print-mode.js.map +1 -0
  636. package/packages/pi-coding-agent/dist/modes/rpc/jsonl.d.ts +17 -0
  637. package/packages/pi-coding-agent/dist/modes/rpc/jsonl.d.ts.map +1 -0
  638. package/packages/pi-coding-agent/dist/modes/rpc/jsonl.js +49 -0
  639. package/packages/pi-coding-agent/dist/modes/rpc/jsonl.js.map +1 -0
  640. package/packages/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts +217 -0
  641. package/packages/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts.map +1 -0
  642. package/packages/pi-coding-agent/dist/modes/rpc/rpc-client.js +400 -0
  643. package/packages/pi-coding-agent/dist/modes/rpc/rpc-client.js.map +1 -0
  644. package/packages/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts +20 -0
  645. package/packages/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -0
  646. package/packages/pi-coding-agent/dist/modes/rpc/rpc-mode.js +509 -0
  647. package/packages/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -0
  648. package/packages/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts +409 -0
  649. package/packages/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts.map +1 -0
  650. package/packages/pi-coding-agent/dist/modes/rpc/rpc-types.js +8 -0
  651. package/packages/pi-coding-agent/dist/modes/rpc/rpc-types.js.map +1 -0
  652. package/packages/pi-coding-agent/dist/utils/changelog.d.ts +21 -0
  653. package/packages/pi-coding-agent/dist/utils/changelog.d.ts.map +1 -0
  654. package/packages/pi-coding-agent/dist/utils/changelog.js +87 -0
  655. package/packages/pi-coding-agent/dist/utils/changelog.js.map +1 -0
  656. package/packages/pi-coding-agent/dist/utils/clipboard-image.d.ts +11 -0
  657. package/packages/pi-coding-agent/dist/utils/clipboard-image.d.ts.map +1 -0
  658. package/packages/pi-coding-agent/dist/utils/clipboard-image.js +162 -0
  659. package/packages/pi-coding-agent/dist/utils/clipboard-image.js.map +1 -0
  660. package/packages/pi-coding-agent/dist/utils/clipboard-native.d.ts +7 -0
  661. package/packages/pi-coding-agent/dist/utils/clipboard-native.d.ts.map +1 -0
  662. package/packages/pi-coding-agent/dist/utils/clipboard-native.js +14 -0
  663. package/packages/pi-coding-agent/dist/utils/clipboard-native.js.map +1 -0
  664. package/packages/pi-coding-agent/dist/utils/clipboard.d.ts +2 -0
  665. package/packages/pi-coding-agent/dist/utils/clipboard.d.ts.map +1 -0
  666. package/packages/pi-coding-agent/dist/utils/clipboard.js +67 -0
  667. package/packages/pi-coding-agent/dist/utils/clipboard.js.map +1 -0
  668. package/packages/pi-coding-agent/dist/utils/frontmatter.d.ts +8 -0
  669. package/packages/pi-coding-agent/dist/utils/frontmatter.d.ts.map +1 -0
  670. package/packages/pi-coding-agent/dist/utils/frontmatter.js +26 -0
  671. package/packages/pi-coding-agent/dist/utils/frontmatter.js.map +1 -0
  672. package/packages/pi-coding-agent/dist/utils/git.d.ts +26 -0
  673. package/packages/pi-coding-agent/dist/utils/git.d.ts.map +1 -0
  674. package/packages/pi-coding-agent/dist/utils/git.js +163 -0
  675. package/packages/pi-coding-agent/dist/utils/git.js.map +1 -0
  676. package/packages/pi-coding-agent/dist/utils/image-convert.d.ts +9 -0
  677. package/packages/pi-coding-agent/dist/utils/image-convert.d.ts.map +1 -0
  678. package/packages/pi-coding-agent/dist/utils/image-convert.js +35 -0
  679. package/packages/pi-coding-agent/dist/utils/image-convert.js.map +1 -0
  680. package/packages/pi-coding-agent/dist/utils/image-resize.d.ts +36 -0
  681. package/packages/pi-coding-agent/dist/utils/image-resize.d.ts.map +1 -0
  682. package/packages/pi-coding-agent/dist/utils/image-resize.js +181 -0
  683. package/packages/pi-coding-agent/dist/utils/image-resize.js.map +1 -0
  684. package/packages/pi-coding-agent/dist/utils/mime.d.ts +2 -0
  685. package/packages/pi-coding-agent/dist/utils/mime.d.ts.map +1 -0
  686. package/packages/pi-coding-agent/dist/utils/mime.js +26 -0
  687. package/packages/pi-coding-agent/dist/utils/mime.js.map +1 -0
  688. package/packages/pi-coding-agent/dist/utils/photon.d.ts +21 -0
  689. package/packages/pi-coding-agent/dist/utils/photon.d.ts.map +1 -0
  690. package/packages/pi-coding-agent/dist/utils/photon.js +121 -0
  691. package/packages/pi-coding-agent/dist/utils/photon.js.map +1 -0
  692. package/packages/pi-coding-agent/dist/utils/shell.d.ts +26 -0
  693. package/packages/pi-coding-agent/dist/utils/shell.d.ts.map +1 -0
  694. package/packages/pi-coding-agent/dist/utils/shell.js +186 -0
  695. package/packages/pi-coding-agent/dist/utils/shell.js.map +1 -0
  696. package/packages/pi-coding-agent/dist/utils/sleep.d.ts +5 -0
  697. package/packages/pi-coding-agent/dist/utils/sleep.d.ts.map +1 -0
  698. package/packages/pi-coding-agent/dist/utils/sleep.js +17 -0
  699. package/packages/pi-coding-agent/dist/utils/sleep.js.map +1 -0
  700. package/packages/pi-coding-agent/dist/utils/tools-manager.d.ts +3 -0
  701. package/packages/pi-coding-agent/dist/utils/tools-manager.d.ts.map +1 -0
  702. package/packages/pi-coding-agent/dist/utils/tools-manager.js +251 -0
  703. package/packages/pi-coding-agent/dist/utils/tools-manager.js.map +1 -0
  704. package/packages/pi-coding-agent/package.json +55 -0
  705. package/packages/pi-coding-agent/src/cli/args.ts +316 -0
  706. package/packages/pi-coding-agent/src/cli/config-selector.ts +52 -0
  707. package/packages/pi-coding-agent/src/cli/file-processor.ts +96 -0
  708. package/packages/pi-coding-agent/src/cli/list-models.ts +104 -0
  709. package/packages/pi-coding-agent/src/cli/session-picker.ts +51 -0
  710. package/packages/pi-coding-agent/src/cli.ts +18 -0
  711. package/packages/pi-coding-agent/src/config.ts +241 -0
  712. package/packages/pi-coding-agent/src/core/agent-session.ts +3050 -0
  713. package/packages/pi-coding-agent/src/core/auth-storage.ts +489 -0
  714. package/packages/pi-coding-agent/src/core/bash-executor.ts +278 -0
  715. package/packages/pi-coding-agent/src/core/compaction/branch-summarization.ts +352 -0
  716. package/packages/pi-coding-agent/src/core/compaction/compaction.ts +813 -0
  717. package/packages/pi-coding-agent/src/core/compaction/index.ts +7 -0
  718. package/packages/pi-coding-agent/src/core/compaction/utils.ts +170 -0
  719. package/packages/pi-coding-agent/src/core/defaults.ts +3 -0
  720. package/packages/pi-coding-agent/src/core/diagnostics.ts +15 -0
  721. package/packages/pi-coding-agent/src/core/event-bus.ts +33 -0
  722. package/packages/pi-coding-agent/src/core/exec.ts +104 -0
  723. package/packages/pi-coding-agent/src/core/export-html/ansi-to-html.ts +258 -0
  724. package/packages/pi-coding-agent/src/core/export-html/index.ts +306 -0
  725. package/packages/pi-coding-agent/src/core/export-html/template.css +971 -0
  726. package/packages/pi-coding-agent/src/core/export-html/template.html +54 -0
  727. package/packages/pi-coding-agent/src/core/export-html/template.js +1583 -0
  728. package/packages/pi-coding-agent/src/core/export-html/tool-renderer.ts +114 -0
  729. package/packages/pi-coding-agent/src/core/export-html/vendor/highlight.min.js +1213 -0
  730. package/packages/pi-coding-agent/src/core/export-html/vendor/marked.min.js +6 -0
  731. package/packages/pi-coding-agent/src/core/extensions/index.ts +171 -0
  732. package/packages/pi-coding-agent/src/core/extensions/loader.ts +545 -0
  733. package/packages/pi-coding-agent/src/core/extensions/runner.ts +884 -0
  734. package/packages/pi-coding-agent/src/core/extensions/types.ts +1411 -0
  735. package/packages/pi-coding-agent/src/core/extensions/wrapper.ts +118 -0
  736. package/packages/pi-coding-agent/src/core/footer-data-provider.ts +144 -0
  737. package/packages/pi-coding-agent/src/core/index.ts +61 -0
  738. package/packages/pi-coding-agent/src/core/keybindings.ts +211 -0
  739. package/packages/pi-coding-agent/src/core/messages.ts +195 -0
  740. package/packages/pi-coding-agent/src/core/model-registry.ts +694 -0
  741. package/packages/pi-coding-agent/src/core/model-resolver.ts +594 -0
  742. package/packages/pi-coding-agent/src/core/package-manager.ts +1794 -0
  743. package/packages/pi-coding-agent/src/core/prompt-templates.ts +299 -0
  744. package/packages/pi-coding-agent/src/core/resolve-config-value.ts +64 -0
  745. package/packages/pi-coding-agent/src/core/resource-loader.ts +868 -0
  746. package/packages/pi-coding-agent/src/core/sdk.ts +373 -0
  747. package/packages/pi-coding-agent/src/core/session-manager.ts +1410 -0
  748. package/packages/pi-coding-agent/src/core/settings-manager.ts +942 -0
  749. package/packages/pi-coding-agent/src/core/skills.ts +459 -0
  750. package/packages/pi-coding-agent/src/core/slash-commands.ts +38 -0
  751. package/packages/pi-coding-agent/src/core/system-prompt.ts +218 -0
  752. package/packages/pi-coding-agent/src/core/timings.ts +25 -0
  753. package/packages/pi-coding-agent/src/core/tools/bash.ts +347 -0
  754. package/packages/pi-coding-agent/src/core/tools/edit-diff.ts +308 -0
  755. package/packages/pi-coding-agent/src/core/tools/edit.ts +227 -0
  756. package/packages/pi-coding-agent/src/core/tools/find.ts +273 -0
  757. package/packages/pi-coding-agent/src/core/tools/grep.ts +346 -0
  758. package/packages/pi-coding-agent/src/core/tools/index.ts +139 -0
  759. package/packages/pi-coding-agent/src/core/tools/ls.ts +170 -0
  760. package/packages/pi-coding-agent/src/core/tools/path-utils.ts +94 -0
  761. package/packages/pi-coding-agent/src/core/tools/read.ts +222 -0
  762. package/packages/pi-coding-agent/src/core/tools/truncate.ts +265 -0
  763. package/packages/pi-coding-agent/src/core/tools/write.ts +118 -0
  764. package/packages/pi-coding-agent/src/index.ts +333 -0
  765. package/packages/pi-coding-agent/src/main.ts +821 -0
  766. package/packages/pi-coding-agent/src/migrations.ts +295 -0
  767. package/packages/pi-coding-agent/src/modes/index.ts +9 -0
  768. package/packages/pi-coding-agent/src/modes/interactive/components/armin.ts +382 -0
  769. package/packages/pi-coding-agent/src/modes/interactive/components/assistant-message.ts +115 -0
  770. package/packages/pi-coding-agent/src/modes/interactive/components/bash-execution.ts +210 -0
  771. package/packages/pi-coding-agent/src/modes/interactive/components/bordered-loader.ts +66 -0
  772. package/packages/pi-coding-agent/src/modes/interactive/components/branch-summary-message.ts +58 -0
  773. package/packages/pi-coding-agent/src/modes/interactive/components/compaction-summary-message.ts +59 -0
  774. package/packages/pi-coding-agent/src/modes/interactive/components/config-selector.ts +592 -0
  775. package/packages/pi-coding-agent/src/modes/interactive/components/countdown-timer.ts +38 -0
  776. package/packages/pi-coding-agent/src/modes/interactive/components/custom-editor.ts +80 -0
  777. package/packages/pi-coding-agent/src/modes/interactive/components/custom-message.ts +99 -0
  778. package/packages/pi-coding-agent/src/modes/interactive/components/daxnuts.ts +164 -0
  779. package/packages/pi-coding-agent/src/modes/interactive/components/diff.ts +147 -0
  780. package/packages/pi-coding-agent/src/modes/interactive/components/dynamic-border.ts +25 -0
  781. package/packages/pi-coding-agent/src/modes/interactive/components/extension-editor.ts +147 -0
  782. package/packages/pi-coding-agent/src/modes/interactive/components/extension-input.ts +85 -0
  783. package/packages/pi-coding-agent/src/modes/interactive/components/extension-selector.ts +107 -0
  784. package/packages/pi-coding-agent/src/modes/interactive/components/footer.ts +216 -0
  785. package/packages/pi-coding-agent/src/modes/interactive/components/index.ts +32 -0
  786. package/packages/pi-coding-agent/src/modes/interactive/components/keybinding-hints.ts +66 -0
  787. package/packages/pi-coding-agent/src/modes/interactive/components/login-dialog.ts +174 -0
  788. package/packages/pi-coding-agent/src/modes/interactive/components/model-selector.ts +329 -0
  789. package/packages/pi-coding-agent/src/modes/interactive/components/oauth-selector.ts +121 -0
  790. package/packages/pi-coding-agent/src/modes/interactive/components/scoped-models-selector.ts +346 -0
  791. package/packages/pi-coding-agent/src/modes/interactive/components/session-selector-search.ts +194 -0
  792. package/packages/pi-coding-agent/src/modes/interactive/components/session-selector.ts +1019 -0
  793. package/packages/pi-coding-agent/src/modes/interactive/components/settings-selector.ts +421 -0
  794. package/packages/pi-coding-agent/src/modes/interactive/components/show-images-selector.ts +45 -0
  795. package/packages/pi-coding-agent/src/modes/interactive/components/skill-invocation-message.ts +55 -0
  796. package/packages/pi-coding-agent/src/modes/interactive/components/theme-selector.ts +62 -0
  797. package/packages/pi-coding-agent/src/modes/interactive/components/thinking-selector.ts +64 -0
  798. package/packages/pi-coding-agent/src/modes/interactive/components/tool-execution.ts +916 -0
  799. package/packages/pi-coding-agent/src/modes/interactive/components/tree-selector.ts +1184 -0
  800. package/packages/pi-coding-agent/src/modes/interactive/components/user-message-selector.ts +143 -0
  801. package/packages/pi-coding-agent/src/modes/interactive/components/user-message.ts +32 -0
  802. package/packages/pi-coding-agent/src/modes/interactive/components/visual-truncate.ts +50 -0
  803. package/packages/pi-coding-agent/src/modes/interactive/interactive-mode.ts +4464 -0
  804. package/packages/pi-coding-agent/src/modes/interactive/theme/dark.json +85 -0
  805. package/packages/pi-coding-agent/src/modes/interactive/theme/light.json +84 -0
  806. package/packages/pi-coding-agent/src/modes/interactive/theme/theme-schema.json +335 -0
  807. package/packages/pi-coding-agent/src/modes/interactive/theme/theme.ts +1105 -0
  808. package/packages/pi-coding-agent/src/modes/print-mode.ts +124 -0
  809. package/packages/pi-coding-agent/src/modes/rpc/jsonl.ts +58 -0
  810. package/packages/pi-coding-agent/src/modes/rpc/rpc-client.ts +505 -0
  811. package/packages/pi-coding-agent/src/modes/rpc/rpc-mode.ts +638 -0
  812. package/packages/pi-coding-agent/src/modes/rpc/rpc-types.ts +263 -0
  813. package/packages/pi-coding-agent/src/utils/changelog.ts +99 -0
  814. package/packages/pi-coding-agent/src/utils/clipboard-image.ts +207 -0
  815. package/packages/pi-coding-agent/src/utils/clipboard-native.ts +21 -0
  816. package/packages/pi-coding-agent/src/utils/clipboard.ts +62 -0
  817. package/packages/pi-coding-agent/src/utils/frontmatter.ts +39 -0
  818. package/packages/pi-coding-agent/src/utils/git.ts +192 -0
  819. package/packages/pi-coding-agent/src/utils/image-convert.ts +38 -0
  820. package/packages/pi-coding-agent/src/utils/image-resize.ts +231 -0
  821. package/packages/pi-coding-agent/src/utils/mime.ts +30 -0
  822. package/packages/pi-coding-agent/src/utils/photon.ts +139 -0
  823. package/packages/pi-coding-agent/src/utils/shell.ts +202 -0
  824. package/packages/pi-coding-agent/src/utils/sleep.ts +18 -0
  825. package/packages/pi-coding-agent/src/utils/tools-manager.ts +286 -0
  826. package/packages/pi-coding-agent/tsconfig.json +27 -0
  827. package/packages/pi-tui/dist/autocomplete.d.ts +50 -0
  828. package/packages/pi-tui/dist/autocomplete.d.ts.map +1 -0
  829. package/packages/pi-tui/dist/autocomplete.js +593 -0
  830. package/packages/pi-tui/dist/autocomplete.js.map +1 -0
  831. package/packages/pi-tui/dist/components/box.d.ts +22 -0
  832. package/packages/pi-tui/dist/components/box.d.ts.map +1 -0
  833. package/packages/pi-tui/dist/components/box.js +99 -0
  834. package/packages/pi-tui/dist/components/box.js.map +1 -0
  835. package/packages/pi-tui/dist/components/cancellable-loader.d.ts +22 -0
  836. package/packages/pi-tui/dist/components/cancellable-loader.d.ts.map +1 -0
  837. package/packages/pi-tui/dist/components/cancellable-loader.js +36 -0
  838. package/packages/pi-tui/dist/components/cancellable-loader.js.map +1 -0
  839. package/packages/pi-tui/dist/components/editor.d.ts +219 -0
  840. package/packages/pi-tui/dist/components/editor.d.ts.map +1 -0
  841. package/packages/pi-tui/dist/components/editor.js +1693 -0
  842. package/packages/pi-tui/dist/components/editor.js.map +1 -0
  843. package/packages/pi-tui/dist/components/image.d.ts +28 -0
  844. package/packages/pi-tui/dist/components/image.d.ts.map +1 -0
  845. package/packages/pi-tui/dist/components/image.js +61 -0
  846. package/packages/pi-tui/dist/components/image.js.map +1 -0
  847. package/packages/pi-tui/dist/components/input.d.ts +37 -0
  848. package/packages/pi-tui/dist/components/input.d.ts.map +1 -0
  849. package/packages/pi-tui/dist/components/input.js +443 -0
  850. package/packages/pi-tui/dist/components/input.js.map +1 -0
  851. package/packages/pi-tui/dist/components/loader.d.ts +21 -0
  852. package/packages/pi-tui/dist/components/loader.d.ts.map +1 -0
  853. package/packages/pi-tui/dist/components/loader.js +46 -0
  854. package/packages/pi-tui/dist/components/loader.js.map +1 -0
  855. package/packages/pi-tui/dist/components/markdown.d.ts +95 -0
  856. package/packages/pi-tui/dist/components/markdown.d.ts.map +1 -0
  857. package/packages/pi-tui/dist/components/markdown.js +641 -0
  858. package/packages/pi-tui/dist/components/markdown.js.map +1 -0
  859. package/packages/pi-tui/dist/components/select-list.d.ts +32 -0
  860. package/packages/pi-tui/dist/components/select-list.d.ts.map +1 -0
  861. package/packages/pi-tui/dist/components/select-list.js +148 -0
  862. package/packages/pi-tui/dist/components/select-list.js.map +1 -0
  863. package/packages/pi-tui/dist/components/settings-list.d.ts +50 -0
  864. package/packages/pi-tui/dist/components/settings-list.d.ts.map +1 -0
  865. package/packages/pi-tui/dist/components/settings-list.js +177 -0
  866. package/packages/pi-tui/dist/components/settings-list.js.map +1 -0
  867. package/packages/pi-tui/dist/components/spacer.d.ts +12 -0
  868. package/packages/pi-tui/dist/components/spacer.d.ts.map +1 -0
  869. package/packages/pi-tui/dist/components/spacer.js +22 -0
  870. package/packages/pi-tui/dist/components/spacer.js.map +1 -0
  871. package/packages/pi-tui/dist/components/text.d.ts +19 -0
  872. package/packages/pi-tui/dist/components/text.d.ts.map +1 -0
  873. package/packages/pi-tui/dist/components/text.js +81 -0
  874. package/packages/pi-tui/dist/components/text.js.map +1 -0
  875. package/packages/pi-tui/dist/components/truncated-text.d.ts +13 -0
  876. package/packages/pi-tui/dist/components/truncated-text.d.ts.map +1 -0
  877. package/packages/pi-tui/dist/components/truncated-text.js +48 -0
  878. package/packages/pi-tui/dist/components/truncated-text.js.map +1 -0
  879. package/packages/pi-tui/dist/editor-component.d.ts +39 -0
  880. package/packages/pi-tui/dist/editor-component.d.ts.map +1 -0
  881. package/packages/pi-tui/dist/editor-component.js +2 -0
  882. package/packages/pi-tui/dist/editor-component.js.map +1 -0
  883. package/packages/pi-tui/dist/fuzzy.d.ts +16 -0
  884. package/packages/pi-tui/dist/fuzzy.d.ts.map +1 -0
  885. package/packages/pi-tui/dist/fuzzy.js +107 -0
  886. package/packages/pi-tui/dist/fuzzy.js.map +1 -0
  887. package/packages/pi-tui/dist/index.d.ts +23 -0
  888. package/packages/pi-tui/dist/index.d.ts.map +1 -0
  889. package/packages/pi-tui/dist/index.js +32 -0
  890. package/packages/pi-tui/dist/index.js.map +1 -0
  891. package/packages/pi-tui/dist/keybindings.d.ts +39 -0
  892. package/packages/pi-tui/dist/keybindings.d.ts.map +1 -0
  893. package/packages/pi-tui/dist/keybindings.js +116 -0
  894. package/packages/pi-tui/dist/keybindings.js.map +1 -0
  895. package/packages/pi-tui/dist/keys.d.ts +170 -0
  896. package/packages/pi-tui/dist/keys.d.ts.map +1 -0
  897. package/packages/pi-tui/dist/keys.js +1046 -0
  898. package/packages/pi-tui/dist/keys.js.map +1 -0
  899. package/packages/pi-tui/dist/kill-ring.d.ts +28 -0
  900. package/packages/pi-tui/dist/kill-ring.d.ts.map +1 -0
  901. package/packages/pi-tui/dist/kill-ring.js +46 -0
  902. package/packages/pi-tui/dist/kill-ring.js.map +1 -0
  903. package/packages/pi-tui/dist/stdin-buffer.d.ts +48 -0
  904. package/packages/pi-tui/dist/stdin-buffer.d.ts.map +1 -0
  905. package/packages/pi-tui/dist/stdin-buffer.js +316 -0
  906. package/packages/pi-tui/dist/stdin-buffer.js.map +1 -0
  907. package/packages/pi-tui/dist/terminal-image.d.ts +68 -0
  908. package/packages/pi-tui/dist/terminal-image.d.ts.map +1 -0
  909. package/packages/pi-tui/dist/terminal-image.js +288 -0
  910. package/packages/pi-tui/dist/terminal-image.js.map +1 -0
  911. package/packages/pi-tui/dist/terminal.d.ts +85 -0
  912. package/packages/pi-tui/dist/terminal.d.ts.map +1 -0
  913. package/packages/pi-tui/dist/terminal.js +271 -0
  914. package/packages/pi-tui/dist/terminal.js.map +1 -0
  915. package/packages/pi-tui/dist/tui.d.ts +220 -0
  916. package/packages/pi-tui/dist/tui.d.ts.map +1 -0
  917. package/packages/pi-tui/dist/tui.js +976 -0
  918. package/packages/pi-tui/dist/tui.js.map +1 -0
  919. package/packages/pi-tui/dist/undo-stack.d.ts +17 -0
  920. package/packages/pi-tui/dist/undo-stack.d.ts.map +1 -0
  921. package/packages/pi-tui/dist/undo-stack.js +27 -0
  922. package/packages/pi-tui/dist/undo-stack.js.map +1 -0
  923. package/packages/pi-tui/dist/utils.d.ts +78 -0
  924. package/packages/pi-tui/dist/utils.d.ts.map +1 -0
  925. package/packages/pi-tui/dist/utils.js +817 -0
  926. package/packages/pi-tui/dist/utils.js.map +1 -0
  927. package/packages/pi-tui/package.json +21 -0
  928. package/packages/pi-tui/src/autocomplete.ts +736 -0
  929. package/packages/pi-tui/src/components/box.ts +137 -0
  930. package/packages/pi-tui/src/components/cancellable-loader.ts +40 -0
  931. package/packages/pi-tui/src/components/editor.ts +2035 -0
  932. package/packages/pi-tui/src/components/image.ts +104 -0
  933. package/packages/pi-tui/src/components/input.ts +521 -0
  934. package/packages/pi-tui/src/components/loader.ts +55 -0
  935. package/packages/pi-tui/src/components/markdown.ts +806 -0
  936. package/packages/pi-tui/src/components/select-list.ts +188 -0
  937. package/packages/pi-tui/src/components/settings-list.ts +250 -0
  938. package/packages/pi-tui/src/components/spacer.ts +28 -0
  939. package/packages/pi-tui/src/components/text.ts +106 -0
  940. package/packages/pi-tui/src/components/truncated-text.ts +65 -0
  941. package/packages/pi-tui/src/editor-component.ts +74 -0
  942. package/packages/pi-tui/src/fuzzy.ts +133 -0
  943. package/packages/pi-tui/src/index.ts +93 -0
  944. package/packages/pi-tui/src/keybindings.ts +189 -0
  945. package/packages/pi-tui/src/keys.ts +1255 -0
  946. package/packages/pi-tui/src/kill-ring.ts +46 -0
  947. package/packages/pi-tui/src/stdin-buffer.ts +386 -0
  948. package/packages/pi-tui/src/terminal-image.ts +381 -0
  949. package/packages/pi-tui/src/terminal.ts +349 -0
  950. package/packages/pi-tui/src/tui.ts +1212 -0
  951. package/packages/pi-tui/src/undo-stack.ts +28 -0
  952. package/packages/pi-tui/src/utils.ts +905 -0
  953. package/packages/pi-tui/tsconfig.json +27 -0
  954. package/pkg/dist/modes/interactive/theme/theme.d.ts +2 -2
  955. package/pkg/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  956. package/pkg/dist/modes/interactive/theme/theme.js +1 -6
  957. package/pkg/dist/modes/interactive/theme/theme.js.map +1 -1
  958. package/scripts/postinstall.js +1 -16
  959. package/src/resources/extensions/ask-user-questions.ts +2 -2
  960. package/src/resources/extensions/bg-shell/index.ts +4 -4
  961. package/src/resources/extensions/browser-tools/index.ts +3 -3
  962. package/src/resources/extensions/context7/index.ts +3 -3
  963. package/src/resources/extensions/get-secrets-from-user.ts +2 -2
  964. package/src/resources/extensions/google-search/index.ts +3 -3
  965. package/src/resources/extensions/gsd/activity-log.ts +1 -1
  966. package/src/resources/extensions/gsd/auto.ts +2 -2
  967. package/src/resources/extensions/gsd/commands.ts +2 -2
  968. package/src/resources/extensions/gsd/dashboard-overlay.ts +2 -2
  969. package/src/resources/extensions/gsd/guided-flow.ts +1 -1
  970. package/src/resources/extensions/gsd/index.ts +4 -4
  971. package/src/resources/extensions/gsd/metrics.ts +1 -1
  972. package/src/resources/extensions/gsd/migrate/command.ts +1 -1
  973. package/src/resources/extensions/gsd/preferences.ts +1 -1
  974. package/src/resources/extensions/gsd/skill-discovery.ts +1 -1
  975. package/src/resources/extensions/gsd/tests/resolve-ts-hooks.mjs +2 -1
  976. package/src/resources/extensions/gsd/worktree-command.ts +1 -1
  977. package/src/resources/extensions/mac-tools/index.ts +2 -2
  978. package/src/resources/extensions/mcporter/index.ts +3 -3
  979. package/src/resources/extensions/remote-questions/remote-command.ts +3 -3
  980. package/src/resources/extensions/search-the-web/command-search-provider.ts +2 -2
  981. package/src/resources/extensions/search-the-web/index.ts +1 -1
  982. package/src/resources/extensions/search-the-web/provider.ts +1 -1
  983. package/src/resources/extensions/search-the-web/tool-fetch-page.ts +3 -3
  984. package/src/resources/extensions/search-the-web/tool-llm-context.ts +4 -4
  985. package/src/resources/extensions/search-the-web/tool-search.ts +4 -4
  986. package/src/resources/extensions/shared/confirm-ui.ts +3 -3
  987. package/src/resources/extensions/shared/interview-ui.ts +3 -3
  988. package/src/resources/extensions/shared/next-action-ui.ts +3 -3
  989. package/src/resources/extensions/shared/progress-widget.ts +2 -2
  990. package/src/resources/extensions/shared/thinking-widget.ts +3 -3
  991. package/src/resources/extensions/shared/ui.ts +4 -4
  992. package/src/resources/extensions/shared/wizard-ui.ts +4 -4
  993. package/src/resources/extensions/slash-commands/audit.ts +1 -1
  994. package/src/resources/extensions/slash-commands/clear.ts +1 -1
  995. package/src/resources/extensions/slash-commands/create-extension.ts +2 -2
  996. package/src/resources/extensions/slash-commands/create-slash-command.ts +2 -2
  997. package/src/resources/extensions/slash-commands/index.ts +1 -1
  998. package/src/resources/extensions/subagent/agents.ts +1 -1
  999. package/src/resources/extensions/subagent/index.ts +5 -5
  1000. package/src/resources/extensions/voice/index.ts +3 -3
  1001. package/patches/@mariozechner+pi-coding-agent+0.57.1.patch +0 -108
  1002. package/patches/@mariozechner+pi-tui+0.57.1.patch +0 -47
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * CLI argument parsing and help display\n */\n\nimport type { ThinkingLevel } from \"@gsd/pi-agent-core\";\nimport chalk from \"chalk\";\nimport { APP_NAME, CONFIG_DIR_NAME, ENV_AGENT_DIR } from \"../config.js\";\nimport { allTools, type ToolName } from \"../core/tools/index.js\";\n\nexport type Mode = \"text\" | \"json\" | \"rpc\";\n\nexport interface Args {\n\tprovider?: string;\n\tmodel?: string;\n\tapiKey?: string;\n\tsystemPrompt?: string;\n\tappendSystemPrompt?: string;\n\tthinking?: ThinkingLevel;\n\tcontinue?: boolean;\n\tresume?: boolean;\n\thelp?: boolean;\n\tversion?: boolean;\n\tmode?: Mode;\n\tnoSession?: boolean;\n\tsession?: string;\n\tsessionDir?: string;\n\tmodels?: string[];\n\ttools?: ToolName[];\n\tnoTools?: boolean;\n\textensions?: string[];\n\tnoExtensions?: boolean;\n\tprint?: boolean;\n\texport?: string;\n\tnoSkills?: boolean;\n\tskills?: string[];\n\tpromptTemplates?: string[];\n\tnoPromptTemplates?: boolean;\n\tthemes?: string[];\n\tnoThemes?: boolean;\n\tlistModels?: string | true;\n\toffline?: boolean;\n\tverbose?: boolean;\n\tmessages: string[];\n\tfileArgs: string[];\n\t/** Unknown flags (potentially extension flags) - map of flag name to value */\n\tunknownFlags: Map<string, boolean | string>;\n}\n\nconst VALID_THINKING_LEVELS = [\"off\", \"minimal\", \"low\", \"medium\", \"high\", \"xhigh\"] as const;\n\nexport function isValidThinkingLevel(level: string): level is ThinkingLevel {\n\treturn VALID_THINKING_LEVELS.includes(level as ThinkingLevel);\n}\n\nexport function parseArgs(args: string[], extensionFlags?: Map<string, { type: \"boolean\" | \"string\" }>): Args {\n\tconst result: Args = {\n\t\tmessages: [],\n\t\tfileArgs: [],\n\t\tunknownFlags: new Map(),\n\t};\n\n\tfor (let i = 0; i < args.length; i++) {\n\t\tconst arg = args[i];\n\n\t\tif (arg === \"--help\" || arg === \"-h\") {\n\t\t\tresult.help = true;\n\t\t} else if (arg === \"--version\" || arg === \"-v\") {\n\t\t\tresult.version = true;\n\t\t} else if (arg === \"--mode\" && i + 1 < args.length) {\n\t\t\tconst mode = args[++i];\n\t\t\tif (mode === \"text\" || mode === \"json\" || mode === \"rpc\") {\n\t\t\t\tresult.mode = mode;\n\t\t\t}\n\t\t} else if (arg === \"--continue\" || arg === \"-c\") {\n\t\t\tresult.continue = true;\n\t\t} else if (arg === \"--resume\" || arg === \"-r\") {\n\t\t\tresult.resume = true;\n\t\t} else if (arg === \"--provider\" && i + 1 < args.length) {\n\t\t\tresult.provider = args[++i];\n\t\t} else if (arg === \"--model\" && i + 1 < args.length) {\n\t\t\tresult.model = args[++i];\n\t\t} else if (arg === \"--api-key\" && i + 1 < args.length) {\n\t\t\tresult.apiKey = args[++i];\n\t\t} else if (arg === \"--system-prompt\" && i + 1 < args.length) {\n\t\t\tresult.systemPrompt = args[++i];\n\t\t} else if (arg === \"--append-system-prompt\" && i + 1 < args.length) {\n\t\t\tresult.appendSystemPrompt = args[++i];\n\t\t} else if (arg === \"--no-session\") {\n\t\t\tresult.noSession = true;\n\t\t} else if (arg === \"--session\" && i + 1 < args.length) {\n\t\t\tresult.session = args[++i];\n\t\t} else if (arg === \"--session-dir\" && i + 1 < args.length) {\n\t\t\tresult.sessionDir = args[++i];\n\t\t} else if (arg === \"--models\" && i + 1 < args.length) {\n\t\t\tresult.models = args[++i].split(\",\").map((s) => s.trim());\n\t\t} else if (arg === \"--no-tools\") {\n\t\t\tresult.noTools = true;\n\t\t} else if (arg === \"--tools\" && i + 1 < args.length) {\n\t\t\tconst toolNames = args[++i].split(\",\").map((s) => s.trim());\n\t\t\tconst validTools: ToolName[] = [];\n\t\t\tfor (const name of toolNames) {\n\t\t\t\tif (name in allTools) {\n\t\t\t\t\tvalidTools.push(name as ToolName);\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\tchalk.yellow(`Warning: Unknown tool \"${name}\". Valid tools: ${Object.keys(allTools).join(\", \")}`),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\tresult.tools = validTools;\n\t\t} else if (arg === \"--thinking\" && i + 1 < args.length) {\n\t\t\tconst level = args[++i];\n\t\t\tif (isValidThinkingLevel(level)) {\n\t\t\t\tresult.thinking = level;\n\t\t\t} else {\n\t\t\t\tconsole.error(\n\t\t\t\t\tchalk.yellow(\n\t\t\t\t\t\t`Warning: Invalid thinking level \"${level}\". Valid values: ${VALID_THINKING_LEVELS.join(\", \")}`,\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (arg === \"--print\" || arg === \"-p\") {\n\t\t\tresult.print = true;\n\t\t} else if (arg === \"--export\" && i + 1 < args.length) {\n\t\t\tresult.export = args[++i];\n\t\t} else if ((arg === \"--extension\" || arg === \"-e\") && i + 1 < args.length) {\n\t\t\tresult.extensions = result.extensions ?? [];\n\t\t\tresult.extensions.push(args[++i]);\n\t\t} else if (arg === \"--no-extensions\" || arg === \"-ne\") {\n\t\t\tresult.noExtensions = true;\n\t\t} else if (arg === \"--skill\" && i + 1 < args.length) {\n\t\t\tresult.skills = result.skills ?? [];\n\t\t\tresult.skills.push(args[++i]);\n\t\t} else if (arg === \"--prompt-template\" && i + 1 < args.length) {\n\t\t\tresult.promptTemplates = result.promptTemplates ?? [];\n\t\t\tresult.promptTemplates.push(args[++i]);\n\t\t} else if (arg === \"--theme\" && i + 1 < args.length) {\n\t\t\tresult.themes = result.themes ?? [];\n\t\t\tresult.themes.push(args[++i]);\n\t\t} else if (arg === \"--no-skills\" || arg === \"-ns\") {\n\t\t\tresult.noSkills = true;\n\t\t} else if (arg === \"--no-prompt-templates\" || arg === \"-np\") {\n\t\t\tresult.noPromptTemplates = true;\n\t\t} else if (arg === \"--no-themes\") {\n\t\t\tresult.noThemes = true;\n\t\t} else if (arg === \"--list-models\") {\n\t\t\t// Check if next arg is a search pattern (not a flag or file arg)\n\t\t\tif (i + 1 < args.length && !args[i + 1].startsWith(\"-\") && !args[i + 1].startsWith(\"@\")) {\n\t\t\t\tresult.listModels = args[++i];\n\t\t\t} else {\n\t\t\t\tresult.listModels = true;\n\t\t\t}\n\t\t} else if (arg === \"--verbose\") {\n\t\t\tresult.verbose = true;\n\t\t} else if (arg === \"--offline\") {\n\t\t\tresult.offline = true;\n\t\t} else if (arg.startsWith(\"@\")) {\n\t\t\tresult.fileArgs.push(arg.slice(1)); // Remove @ prefix\n\t\t} else if (arg.startsWith(\"--\") && extensionFlags) {\n\t\t\t// Check if it's an extension-registered flag\n\t\t\tconst flagName = arg.slice(2);\n\t\t\tconst extFlag = extensionFlags.get(flagName);\n\t\t\tif (extFlag) {\n\t\t\t\tif (extFlag.type === \"boolean\") {\n\t\t\t\t\tresult.unknownFlags.set(flagName, true);\n\t\t\t\t} else if (extFlag.type === \"string\" && i + 1 < args.length) {\n\t\t\t\t\tresult.unknownFlags.set(flagName, args[++i]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Unknown flags without extensionFlags are silently ignored (first pass)\n\t\t} else if (!arg.startsWith(\"-\")) {\n\t\t\tresult.messages.push(arg);\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function printHelp(): void {\n\tconsole.log(`${chalk.bold(APP_NAME)} - AI coding assistant with read, bash, edit, write tools\n\n${chalk.bold(\"Usage:\")}\n ${APP_NAME} [options] [@files...] [messages...]\n\n${chalk.bold(\"Commands:\")}\n ${APP_NAME} install <source> [-l] Install extension source and add to settings\n ${APP_NAME} remove <source> [-l] Remove extension source from settings\n ${APP_NAME} update [source] Update installed extensions (skips pinned sources)\n ${APP_NAME} list List installed extensions from settings\n ${APP_NAME} config Open TUI to enable/disable package resources\n ${APP_NAME} <command> --help Show help for install/remove/update/list\n\n${chalk.bold(\"Options:\")}\n --provider <name> Provider name (default: google)\n --model <pattern> Model pattern or ID (supports \"provider/id\" and optional \":<thinking>\")\n --api-key <key> API key (defaults to env vars)\n --system-prompt <text> System prompt (default: coding assistant prompt)\n --append-system-prompt <text> Append text or file contents to the system prompt\n --mode <mode> Output mode: text (default), json, or rpc\n --print, -p Non-interactive mode: process prompt and exit\n --continue, -c Continue previous session\n --resume, -r Select a session to resume\n --session <path> Use specific session file\n --session-dir <dir> Directory for session storage and lookup\n --no-session Don't save session (ephemeral)\n --models <patterns> Comma-separated model patterns for Ctrl+P cycling\n Supports globs (anthropic/*, *sonnet*) and fuzzy matching\n --no-tools Disable all built-in tools\n --tools <tools> Comma-separated list of tools to enable (default: read,bash,edit,write)\n Available: read, bash, edit, write, grep, find, ls\n --thinking <level> Set thinking level: off, minimal, low, medium, high, xhigh\n --extension, -e <path> Load an extension file (can be used multiple times)\n --no-extensions, -ne Disable extension discovery (explicit -e paths still work)\n --skill <path> Load a skill file or directory (can be used multiple times)\n --no-skills, -ns Disable skills discovery and loading\n --prompt-template <path> Load a prompt template file or directory (can be used multiple times)\n --no-prompt-templates, -np Disable prompt template discovery and loading\n --theme <path> Load a theme file or directory (can be used multiple times)\n --no-themes Disable theme discovery and loading\n --export <file> Export session file to HTML and exit\n --list-models [search] List available models (with optional fuzzy search)\n --verbose Force verbose startup (overrides quietStartup setting)\n --offline Disable startup network operations (same as PI_OFFLINE=1)\n --help, -h Show this help\n --version, -v Show version number\n\nExtensions can register additional flags (e.g., --plan from plan-mode extension).\n\n${chalk.bold(\"Examples:\")}\n # Interactive mode\n ${APP_NAME}\n\n # Interactive mode with initial prompt\n ${APP_NAME} \"List all .ts files in src/\"\n\n # Include files in initial message\n ${APP_NAME} @prompt.md @image.png \"What color is the sky?\"\n\n # Non-interactive mode (process and exit)\n ${APP_NAME} -p \"List all .ts files in src/\"\n\n # Multiple messages (interactive)\n ${APP_NAME} \"Read package.json\" \"What dependencies do we have?\"\n\n # Continue previous session\n ${APP_NAME} --continue \"What did we discuss?\"\n\n # Use different model\n ${APP_NAME} --provider openai --model gpt-4o-mini \"Help me refactor this code\"\n\n # Use model with provider prefix (no --provider needed)\n ${APP_NAME} --model openai/gpt-4o \"Help me refactor this code\"\n\n # Use model with thinking level shorthand\n ${APP_NAME} --model sonnet:high \"Solve this complex problem\"\n\n # Limit model cycling to specific models\n ${APP_NAME} --models claude-sonnet,claude-haiku,gpt-4o\n\n # Limit to a specific provider with glob pattern\n ${APP_NAME} --models \"github-copilot/*\"\n\n # Cycle models with fixed thinking levels\n ${APP_NAME} --models sonnet:high,haiku:low\n\n # Start with a specific thinking level\n ${APP_NAME} --thinking high \"Solve this complex problem\"\n\n # Read-only mode (no file modifications possible)\n ${APP_NAME} --tools read,grep,find,ls -p \"Review the code in src/\"\n\n # Export a session file to HTML\n ${APP_NAME} --export ~/${CONFIG_DIR_NAME}/agent/sessions/--path--/session.jsonl\n ${APP_NAME} --export session.jsonl output.html\n\n${chalk.bold(\"Environment Variables:\")}\n ANTHROPIC_API_KEY - Anthropic Claude API key\n ANTHROPIC_OAUTH_TOKEN - Anthropic OAuth token (alternative to API key)\n OPENAI_API_KEY - OpenAI GPT API key\n AZURE_OPENAI_API_KEY - Azure OpenAI API key\n AZURE_OPENAI_BASE_URL - Azure OpenAI base URL (https://{resource}.openai.azure.com/openai/v1)\n AZURE_OPENAI_RESOURCE_NAME - Azure OpenAI resource name (alternative to base URL)\n AZURE_OPENAI_API_VERSION - Azure OpenAI API version (default: v1)\n AZURE_OPENAI_DEPLOYMENT_NAME_MAP - Azure OpenAI model=deployment map (comma-separated)\n GEMINI_API_KEY - Google Gemini API key\n GROQ_API_KEY - Groq API key\n CEREBRAS_API_KEY - Cerebras API key\n XAI_API_KEY - xAI Grok API key\n OPENROUTER_API_KEY - OpenRouter API key\n AI_GATEWAY_API_KEY - Vercel AI Gateway API key\n ZAI_API_KEY - ZAI API key\n MISTRAL_API_KEY - Mistral API key\n MINIMAX_API_KEY - MiniMax API key\n OPENCODE_API_KEY - OpenCode Zen/OpenCode Go API key\n KIMI_API_KEY - Kimi For Coding API key\n AWS_PROFILE - AWS profile for Amazon Bedrock\n AWS_ACCESS_KEY_ID - AWS access key for Amazon Bedrock\n AWS_SECRET_ACCESS_KEY - AWS secret key for Amazon Bedrock\n AWS_BEARER_TOKEN_BEDROCK - Bedrock API key (bearer token)\n AWS_REGION - AWS region for Amazon Bedrock (e.g., us-east-1)\n ${ENV_AGENT_DIR.padEnd(32)} - Session storage directory (default: ~/${CONFIG_DIR_NAME}/agent)\n PI_PACKAGE_DIR - Override package directory (for Nix/Guix store paths)\n PI_OFFLINE - Disable startup network operations when set to 1/true/yes\n PI_SHARE_VIEWER_URL - Base URL for /share command (default: https://pi.dev/session/)\n PI_AI_ANTIGRAVITY_VERSION - Override Antigravity User-Agent version (e.g., 1.23.0)\n\n${chalk.bold(\"Available Tools (default: read, bash, edit, write):\")}\n read - Read file contents\n bash - Execute bash commands\n edit - Edit files with find/replace\n write - Write files (creates/overwrites)\n grep - Search file contents (read-only, off by default)\n find - Find files by glob pattern (read-only, off by default)\n ls - List directory contents (read-only, off by default)\n`);\n}\n"]}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * TUI config selector for `pi config` command
3
+ */
4
+ import type { ResolvedPaths } from "../core/package-manager.js";
5
+ import type { SettingsManager } from "../core/settings-manager.js";
6
+ export interface ConfigSelectorOptions {
7
+ resolvedPaths: ResolvedPaths;
8
+ settingsManager: SettingsManager;
9
+ cwd: string;
10
+ agentDir: string;
11
+ }
12
+ /** Show TUI config selector and return when closed */
13
+ export declare function selectConfig(options: ConfigSelectorOptions): Promise<void>;
14
+ //# sourceMappingURL=config-selector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-selector.d.ts","sourceRoot":"","sources":["../../src/cli/config-selector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAInE,MAAM,WAAW,qBAAqB;IACrC,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,sDAAsD;AACtD,wBAAsB,YAAY,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiChF"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * TUI config selector for `pi config` command
3
+ */
4
+ import { ProcessTerminal, TUI } from "@gsd/pi-tui";
5
+ import { ConfigSelectorComponent } from "../modes/interactive/components/config-selector.js";
6
+ import { initTheme, stopThemeWatcher } from "../modes/interactive/theme/theme.js";
7
+ /** Show TUI config selector and return when closed */
8
+ export async function selectConfig(options) {
9
+ // Initialize theme before showing TUI
10
+ initTheme(options.settingsManager.getTheme(), true);
11
+ return new Promise((resolve) => {
12
+ const ui = new TUI(new ProcessTerminal());
13
+ let resolved = false;
14
+ const selector = new ConfigSelectorComponent(options.resolvedPaths, options.settingsManager, options.cwd, options.agentDir, () => {
15
+ if (!resolved) {
16
+ resolved = true;
17
+ ui.stop();
18
+ stopThemeWatcher();
19
+ resolve();
20
+ }
21
+ }, () => {
22
+ ui.stop();
23
+ stopThemeWatcher();
24
+ process.exit(0);
25
+ }, () => ui.requestRender());
26
+ ui.addChild(selector);
27
+ ui.setFocus(selector.getResourceList());
28
+ ui.start();
29
+ });
30
+ }
31
+ //# sourceMappingURL=config-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-selector.js","sourceRoot":"","sources":["../../src/cli/config-selector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAC7F,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AASlF,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA8B;IAChE,sCAAsC;IACtC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;IAEpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;QAC1C,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,MAAM,QAAQ,GAAG,IAAI,uBAAuB,CAC3C,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,QAAQ,EAChB,GAAG,EAAE;YACJ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,QAAQ,GAAG,IAAI,CAAC;gBAChB,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,gBAAgB,EAAE,CAAC;gBACnB,OAAO,EAAE,CAAC;YACX,CAAC;QACF,CAAC,EACD,GAAG,EAAE;YACJ,EAAE,CAAC,IAAI,EAAE,CAAC;YACV,gBAAgB,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC,EACD,GAAG,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,CACxB,CAAC;QAEF,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtB,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;QACxC,EAAE,CAAC,KAAK,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACJ,CAAC","sourcesContent":["/**\n * TUI config selector for `pi config` command\n */\n\nimport { ProcessTerminal, TUI } from \"@gsd/pi-tui\";\nimport type { ResolvedPaths } from \"../core/package-manager.js\";\nimport type { SettingsManager } from \"../core/settings-manager.js\";\nimport { ConfigSelectorComponent } from \"../modes/interactive/components/config-selector.js\";\nimport { initTheme, stopThemeWatcher } from \"../modes/interactive/theme/theme.js\";\n\nexport interface ConfigSelectorOptions {\n\tresolvedPaths: ResolvedPaths;\n\tsettingsManager: SettingsManager;\n\tcwd: string;\n\tagentDir: string;\n}\n\n/** Show TUI config selector and return when closed */\nexport async function selectConfig(options: ConfigSelectorOptions): Promise<void> {\n\t// Initialize theme before showing TUI\n\tinitTheme(options.settingsManager.getTheme(), true);\n\n\treturn new Promise((resolve) => {\n\t\tconst ui = new TUI(new ProcessTerminal());\n\t\tlet resolved = false;\n\n\t\tconst selector = new ConfigSelectorComponent(\n\t\t\toptions.resolvedPaths,\n\t\t\toptions.settingsManager,\n\t\t\toptions.cwd,\n\t\t\toptions.agentDir,\n\t\t\t() => {\n\t\t\t\tif (!resolved) {\n\t\t\t\t\tresolved = true;\n\t\t\t\t\tui.stop();\n\t\t\t\t\tstopThemeWatcher();\n\t\t\t\t\tresolve();\n\t\t\t\t}\n\t\t\t},\n\t\t\t() => {\n\t\t\t\tui.stop();\n\t\t\t\tstopThemeWatcher();\n\t\t\t\tprocess.exit(0);\n\t\t\t},\n\t\t\t() => ui.requestRender(),\n\t\t);\n\n\t\tui.addChild(selector);\n\t\tui.setFocus(selector.getResourceList());\n\t\tui.start();\n\t});\n}\n"]}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Process @file CLI arguments into text content and image attachments
3
+ */
4
+ import type { ImageContent } from "@gsd/pi-ai";
5
+ export interface ProcessedFiles {
6
+ text: string;
7
+ images: ImageContent[];
8
+ }
9
+ export interface ProcessFileOptions {
10
+ /** Whether to auto-resize images to 2000x2000 max. Default: true */
11
+ autoResizeImages?: boolean;
12
+ }
13
+ /** Process @file arguments into text content and image attachments */
14
+ export declare function processFileArguments(fileArgs: string[], options?: ProcessFileOptions): Promise<ProcessedFiles>;
15
+ //# sourceMappingURL=file-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-processor.d.ts","sourceRoot":"","sources":["../../src/cli/file-processor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO/C,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAClC,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,sEAAsE;AACtE,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAwEpH"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Process @file CLI arguments into text content and image attachments
3
+ */
4
+ import { access, readFile, stat } from "node:fs/promises";
5
+ import chalk from "chalk";
6
+ import { resolve } from "path";
7
+ import { resolveReadPath } from "../core/tools/path-utils.js";
8
+ import { formatDimensionNote, resizeImage } from "../utils/image-resize.js";
9
+ import { detectSupportedImageMimeTypeFromFile } from "../utils/mime.js";
10
+ /** Process @file arguments into text content and image attachments */
11
+ export async function processFileArguments(fileArgs, options) {
12
+ const autoResizeImages = options?.autoResizeImages ?? true;
13
+ let text = "";
14
+ const images = [];
15
+ for (const fileArg of fileArgs) {
16
+ // Expand and resolve path (handles ~ expansion and macOS screenshot Unicode spaces)
17
+ const absolutePath = resolve(resolveReadPath(fileArg, process.cwd()));
18
+ // Check if file exists
19
+ try {
20
+ await access(absolutePath);
21
+ }
22
+ catch {
23
+ console.error(chalk.red(`Error: File not found: ${absolutePath}`));
24
+ process.exit(1);
25
+ }
26
+ // Check if file is empty
27
+ const stats = await stat(absolutePath);
28
+ if (stats.size === 0) {
29
+ // Skip empty files
30
+ continue;
31
+ }
32
+ const mimeType = await detectSupportedImageMimeTypeFromFile(absolutePath);
33
+ if (mimeType) {
34
+ // Handle image file
35
+ const content = await readFile(absolutePath);
36
+ const base64Content = content.toString("base64");
37
+ let attachment;
38
+ let dimensionNote;
39
+ if (autoResizeImages) {
40
+ const resized = await resizeImage({ type: "image", data: base64Content, mimeType });
41
+ dimensionNote = formatDimensionNote(resized);
42
+ attachment = {
43
+ type: "image",
44
+ mimeType: resized.mimeType,
45
+ data: resized.data,
46
+ };
47
+ }
48
+ else {
49
+ attachment = {
50
+ type: "image",
51
+ mimeType,
52
+ data: base64Content,
53
+ };
54
+ }
55
+ images.push(attachment);
56
+ // Add text reference to image with optional dimension note
57
+ if (dimensionNote) {
58
+ text += `<file name="${absolutePath}">${dimensionNote}</file>\n`;
59
+ }
60
+ else {
61
+ text += `<file name="${absolutePath}"></file>\n`;
62
+ }
63
+ }
64
+ else {
65
+ // Handle text file
66
+ try {
67
+ const content = await readFile(absolutePath, "utf-8");
68
+ text += `<file name="${absolutePath}">\n${content}\n</file>\n`;
69
+ }
70
+ catch (error) {
71
+ const message = error instanceof Error ? error.message : String(error);
72
+ console.error(chalk.red(`Error: Could not read file ${absolutePath}: ${message}`));
73
+ process.exit(1);
74
+ }
75
+ }
76
+ }
77
+ return { text, images };
78
+ }
79
+ //# sourceMappingURL=file-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-processor.js","sourceRoot":"","sources":["../../src/cli/file-processor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Process @file CLI arguments into text content and image attachments\n */\n\nimport { access, readFile, stat } from \"node:fs/promises\";\nimport type { ImageContent } from \"@gsd/pi-ai\";\nimport chalk from \"chalk\";\nimport { resolve } from \"path\";\nimport { resolveReadPath } from \"../core/tools/path-utils.js\";\nimport { formatDimensionNote, resizeImage } from \"../utils/image-resize.js\";\nimport { detectSupportedImageMimeTypeFromFile } from \"../utils/mime.js\";\n\nexport interface ProcessedFiles {\n\ttext: string;\n\timages: ImageContent[];\n}\n\nexport interface ProcessFileOptions {\n\t/** Whether to auto-resize images to 2000x2000 max. Default: true */\n\tautoResizeImages?: boolean;\n}\n\n/** Process @file arguments into text content and image attachments */\nexport async function processFileArguments(fileArgs: string[], options?: ProcessFileOptions): Promise<ProcessedFiles> {\n\tconst autoResizeImages = options?.autoResizeImages ?? true;\n\tlet text = \"\";\n\tconst images: ImageContent[] = [];\n\n\tfor (const fileArg of fileArgs) {\n\t\t// Expand and resolve path (handles ~ expansion and macOS screenshot Unicode spaces)\n\t\tconst absolutePath = resolve(resolveReadPath(fileArg, process.cwd()));\n\n\t\t// Check if file exists\n\t\ttry {\n\t\t\tawait access(absolutePath);\n\t\t} catch {\n\t\t\tconsole.error(chalk.red(`Error: File not found: ${absolutePath}`));\n\t\t\tprocess.exit(1);\n\t\t}\n\n\t\t// Check if file is empty\n\t\tconst stats = await stat(absolutePath);\n\t\tif (stats.size === 0) {\n\t\t\t// Skip empty files\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst mimeType = await detectSupportedImageMimeTypeFromFile(absolutePath);\n\n\t\tif (mimeType) {\n\t\t\t// Handle image file\n\t\t\tconst content = await readFile(absolutePath);\n\t\t\tconst base64Content = content.toString(\"base64\");\n\n\t\t\tlet attachment: ImageContent;\n\t\t\tlet dimensionNote: string | undefined;\n\n\t\t\tif (autoResizeImages) {\n\t\t\t\tconst resized = await resizeImage({ type: \"image\", data: base64Content, mimeType });\n\t\t\t\tdimensionNote = formatDimensionNote(resized);\n\t\t\t\tattachment = {\n\t\t\t\t\ttype: \"image\",\n\t\t\t\t\tmimeType: resized.mimeType,\n\t\t\t\t\tdata: resized.data,\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tattachment = {\n\t\t\t\t\ttype: \"image\",\n\t\t\t\t\tmimeType,\n\t\t\t\t\tdata: base64Content,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\timages.push(attachment);\n\n\t\t\t// Add text reference to image with optional dimension note\n\t\t\tif (dimensionNote) {\n\t\t\t\ttext += `<file name=\"${absolutePath}\">${dimensionNote}</file>\\n`;\n\t\t\t} else {\n\t\t\t\ttext += `<file name=\"${absolutePath}\"></file>\\n`;\n\t\t\t}\n\t\t} else {\n\t\t\t// Handle text file\n\t\t\ttry {\n\t\t\t\tconst content = await readFile(absolutePath, \"utf-8\");\n\t\t\t\ttext += `<file name=\"${absolutePath}\">\\n${content}\\n</file>\\n`;\n\t\t\t} catch (error: unknown) {\n\t\t\t\tconst message = error instanceof Error ? error.message : String(error);\n\t\t\t\tconsole.error(chalk.red(`Error: Could not read file ${absolutePath}: ${message}`));\n\t\t\t\tprocess.exit(1);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn { text, images };\n}\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * List available models with optional fuzzy search
3
+ */
4
+ import type { ModelRegistry } from "../core/model-registry.js";
5
+ /**
6
+ * List available models, optionally filtered by search pattern
7
+ */
8
+ export declare function listModels(modelRegistry: ModelRegistry, searchPattern?: string): Promise<void>;
9
+ //# sourceMappingURL=list-models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-models.d.ts","sourceRoot":"","sources":["../../src/cli/list-models.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAiB/D;;GAEG;AACH,wBAAsB,UAAU,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6EpG"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * List available models with optional fuzzy search
3
+ */
4
+ import { fuzzyFilter } from "@gsd/pi-tui";
5
+ /**
6
+ * Format a number as human-readable (e.g., 200000 -> "200K", 1000000 -> "1M")
7
+ */
8
+ function formatTokenCount(count) {
9
+ if (count >= 1_000_000) {
10
+ const millions = count / 1_000_000;
11
+ return millions % 1 === 0 ? `${millions}M` : `${millions.toFixed(1)}M`;
12
+ }
13
+ if (count >= 1_000) {
14
+ const thousands = count / 1_000;
15
+ return thousands % 1 === 0 ? `${thousands}K` : `${thousands.toFixed(1)}K`;
16
+ }
17
+ return count.toString();
18
+ }
19
+ /**
20
+ * List available models, optionally filtered by search pattern
21
+ */
22
+ export async function listModels(modelRegistry, searchPattern) {
23
+ const models = modelRegistry.getAvailable();
24
+ if (models.length === 0) {
25
+ console.log("No models available. Set API keys in environment variables.");
26
+ return;
27
+ }
28
+ // Apply fuzzy filter if search pattern provided
29
+ let filteredModels = models;
30
+ if (searchPattern) {
31
+ filteredModels = fuzzyFilter(models, searchPattern, (m) => `${m.provider} ${m.id}`);
32
+ }
33
+ if (filteredModels.length === 0) {
34
+ console.log(`No models matching "${searchPattern}"`);
35
+ return;
36
+ }
37
+ // Sort by provider, then by model id
38
+ filteredModels.sort((a, b) => {
39
+ const providerCmp = a.provider.localeCompare(b.provider);
40
+ if (providerCmp !== 0)
41
+ return providerCmp;
42
+ return a.id.localeCompare(b.id);
43
+ });
44
+ // Calculate column widths
45
+ const rows = filteredModels.map((m) => ({
46
+ provider: m.provider,
47
+ model: m.id,
48
+ context: formatTokenCount(m.contextWindow),
49
+ maxOut: formatTokenCount(m.maxTokens),
50
+ thinking: m.reasoning ? "yes" : "no",
51
+ images: m.input.includes("image") ? "yes" : "no",
52
+ }));
53
+ const headers = {
54
+ provider: "provider",
55
+ model: "model",
56
+ context: "context",
57
+ maxOut: "max-out",
58
+ thinking: "thinking",
59
+ images: "images",
60
+ };
61
+ const widths = {
62
+ provider: Math.max(headers.provider.length, ...rows.map((r) => r.provider.length)),
63
+ model: Math.max(headers.model.length, ...rows.map((r) => r.model.length)),
64
+ context: Math.max(headers.context.length, ...rows.map((r) => r.context.length)),
65
+ maxOut: Math.max(headers.maxOut.length, ...rows.map((r) => r.maxOut.length)),
66
+ thinking: Math.max(headers.thinking.length, ...rows.map((r) => r.thinking.length)),
67
+ images: Math.max(headers.images.length, ...rows.map((r) => r.images.length)),
68
+ };
69
+ // Print header
70
+ const headerLine = [
71
+ headers.provider.padEnd(widths.provider),
72
+ headers.model.padEnd(widths.model),
73
+ headers.context.padEnd(widths.context),
74
+ headers.maxOut.padEnd(widths.maxOut),
75
+ headers.thinking.padEnd(widths.thinking),
76
+ headers.images.padEnd(widths.images),
77
+ ].join(" ");
78
+ console.log(headerLine);
79
+ // Print rows
80
+ for (const row of rows) {
81
+ const line = [
82
+ row.provider.padEnd(widths.provider),
83
+ row.model.padEnd(widths.model),
84
+ row.context.padEnd(widths.context),
85
+ row.maxOut.padEnd(widths.maxOut),
86
+ row.thinking.padEnd(widths.thinking),
87
+ row.images.padEnd(widths.images),
88
+ ].join(" ");
89
+ console.log(line);
90
+ }
91
+ }
92
+ //# sourceMappingURL=list-models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-models.js","sourceRoot":"","sources":["../../src/cli/list-models.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * List available models with optional fuzzy search\n */\n\nimport type { Api, Model } from \"@gsd/pi-ai\";\nimport { fuzzyFilter } from \"@gsd/pi-tui\";\nimport type { ModelRegistry } from \"../core/model-registry.js\";\n\n/**\n * Format a number as human-readable (e.g., 200000 -> \"200K\", 1000000 -> \"1M\")\n */\nfunction formatTokenCount(count: number): string {\n\tif (count >= 1_000_000) {\n\t\tconst millions = count / 1_000_000;\n\t\treturn millions % 1 === 0 ? `${millions}M` : `${millions.toFixed(1)}M`;\n\t}\n\tif (count >= 1_000) {\n\t\tconst thousands = count / 1_000;\n\t\treturn thousands % 1 === 0 ? `${thousands}K` : `${thousands.toFixed(1)}K`;\n\t}\n\treturn count.toString();\n}\n\n/**\n * List available models, optionally filtered by search pattern\n */\nexport async function listModels(modelRegistry: ModelRegistry, searchPattern?: string): Promise<void> {\n\tconst models = modelRegistry.getAvailable();\n\n\tif (models.length === 0) {\n\t\tconsole.log(\"No models available. Set API keys in environment variables.\");\n\t\treturn;\n\t}\n\n\t// Apply fuzzy filter if search pattern provided\n\tlet filteredModels: Model<Api>[] = models;\n\tif (searchPattern) {\n\t\tfilteredModels = fuzzyFilter(models, searchPattern, (m) => `${m.provider} ${m.id}`);\n\t}\n\n\tif (filteredModels.length === 0) {\n\t\tconsole.log(`No models matching \"${searchPattern}\"`);\n\t\treturn;\n\t}\n\n\t// Sort by provider, then by model id\n\tfilteredModels.sort((a, b) => {\n\t\tconst providerCmp = a.provider.localeCompare(b.provider);\n\t\tif (providerCmp !== 0) return providerCmp;\n\t\treturn a.id.localeCompare(b.id);\n\t});\n\n\t// Calculate column widths\n\tconst rows = filteredModels.map((m) => ({\n\t\tprovider: m.provider,\n\t\tmodel: m.id,\n\t\tcontext: formatTokenCount(m.contextWindow),\n\t\tmaxOut: formatTokenCount(m.maxTokens),\n\t\tthinking: m.reasoning ? \"yes\" : \"no\",\n\t\timages: m.input.includes(\"image\") ? \"yes\" : \"no\",\n\t}));\n\n\tconst headers = {\n\t\tprovider: \"provider\",\n\t\tmodel: \"model\",\n\t\tcontext: \"context\",\n\t\tmaxOut: \"max-out\",\n\t\tthinking: \"thinking\",\n\t\timages: \"images\",\n\t};\n\n\tconst widths = {\n\t\tprovider: Math.max(headers.provider.length, ...rows.map((r) => r.provider.length)),\n\t\tmodel: Math.max(headers.model.length, ...rows.map((r) => r.model.length)),\n\t\tcontext: Math.max(headers.context.length, ...rows.map((r) => r.context.length)),\n\t\tmaxOut: Math.max(headers.maxOut.length, ...rows.map((r) => r.maxOut.length)),\n\t\tthinking: Math.max(headers.thinking.length, ...rows.map((r) => r.thinking.length)),\n\t\timages: Math.max(headers.images.length, ...rows.map((r) => r.images.length)),\n\t};\n\n\t// Print header\n\tconst headerLine = [\n\t\theaders.provider.padEnd(widths.provider),\n\t\theaders.model.padEnd(widths.model),\n\t\theaders.context.padEnd(widths.context),\n\t\theaders.maxOut.padEnd(widths.maxOut),\n\t\theaders.thinking.padEnd(widths.thinking),\n\t\theaders.images.padEnd(widths.images),\n\t].join(\" \");\n\tconsole.log(headerLine);\n\n\t// Print rows\n\tfor (const row of rows) {\n\t\tconst line = [\n\t\t\trow.provider.padEnd(widths.provider),\n\t\t\trow.model.padEnd(widths.model),\n\t\t\trow.context.padEnd(widths.context),\n\t\t\trow.maxOut.padEnd(widths.maxOut),\n\t\t\trow.thinking.padEnd(widths.thinking),\n\t\t\trow.images.padEnd(widths.images),\n\t\t].join(\" \");\n\t\tconsole.log(line);\n\t}\n}\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * TUI session selector for --resume flag
3
+ */
4
+ import type { SessionInfo, SessionListProgress } from "../core/session-manager.js";
5
+ type SessionsLoader = (onProgress?: SessionListProgress) => Promise<SessionInfo[]>;
6
+ /** Show TUI session selector and return selected session path or null if cancelled */
7
+ export declare function selectSession(currentSessionsLoader: SessionsLoader, allSessionsLoader: SessionsLoader): Promise<string | null>;
8
+ export {};
9
+ //# sourceMappingURL=session-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-picker.d.ts","sourceRoot":"","sources":["../../src/cli/session-picker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAGnF,KAAK,cAAc,GAAG,CAAC,UAAU,CAAC,EAAE,mBAAmB,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAEnF,sFAAsF;AACtF,wBAAsB,aAAa,CAClC,qBAAqB,EAAE,cAAc,EACrC,iBAAiB,EAAE,cAAc,GAC/B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAmCxB"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * TUI session selector for --resume flag
3
+ */
4
+ import { ProcessTerminal, TUI } from "@gsd/pi-tui";
5
+ import { KeybindingsManager } from "../core/keybindings.js";
6
+ import { SessionSelectorComponent } from "../modes/interactive/components/session-selector.js";
7
+ /** Show TUI session selector and return selected session path or null if cancelled */
8
+ export async function selectSession(currentSessionsLoader, allSessionsLoader) {
9
+ return new Promise((resolve) => {
10
+ const ui = new TUI(new ProcessTerminal());
11
+ const keybindings = KeybindingsManager.create();
12
+ let resolved = false;
13
+ const selector = new SessionSelectorComponent(currentSessionsLoader, allSessionsLoader, (path) => {
14
+ if (!resolved) {
15
+ resolved = true;
16
+ ui.stop();
17
+ resolve(path);
18
+ }
19
+ }, () => {
20
+ if (!resolved) {
21
+ resolved = true;
22
+ ui.stop();
23
+ resolve(null);
24
+ }
25
+ }, () => {
26
+ ui.stop();
27
+ process.exit(0);
28
+ }, () => ui.requestRender(), { showRenameHint: false, keybindings });
29
+ ui.addChild(selector);
30
+ ui.setFocus(selector.getSessionList());
31
+ ui.start();
32
+ });
33
+ }
34
+ //# sourceMappingURL=session-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-picker.js","sourceRoot":"","sources":["../../src/cli/session-picker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AAI/F,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,qBAAqC,EACrC,iBAAiC;IAEjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC;QAChD,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,MAAM,QAAQ,GAAG,IAAI,wBAAwB,CAC5C,qBAAqB,EACrB,iBAAiB,EACjB,CAAC,IAAY,EAAE,EAAE;YAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,QAAQ,GAAG,IAAI,CAAC;gBAChB,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;QACF,CAAC,EACD,GAAG,EAAE;YACJ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,QAAQ,GAAG,IAAI,CAAC;gBAChB,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;QACF,CAAC,EACD,GAAG,EAAE;YACJ,EAAE,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC,EACD,GAAG,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,EACxB,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,CACtC,CAAC;QAEF,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtB,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC;QACvC,EAAE,CAAC,KAAK,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACJ,CAAC","sourcesContent":["/**\n * TUI session selector for --resume flag\n */\n\nimport { ProcessTerminal, TUI } from \"@gsd/pi-tui\";\nimport { KeybindingsManager } from \"../core/keybindings.js\";\nimport type { SessionInfo, SessionListProgress } from \"../core/session-manager.js\";\nimport { SessionSelectorComponent } from \"../modes/interactive/components/session-selector.js\";\n\ntype SessionsLoader = (onProgress?: SessionListProgress) => Promise<SessionInfo[]>;\n\n/** Show TUI session selector and return selected session path or null if cancelled */\nexport async function selectSession(\n\tcurrentSessionsLoader: SessionsLoader,\n\tallSessionsLoader: SessionsLoader,\n): Promise<string | null> {\n\treturn new Promise((resolve) => {\n\t\tconst ui = new TUI(new ProcessTerminal());\n\t\tconst keybindings = KeybindingsManager.create();\n\t\tlet resolved = false;\n\n\t\tconst selector = new SessionSelectorComponent(\n\t\t\tcurrentSessionsLoader,\n\t\t\tallSessionsLoader,\n\t\t\t(path: string) => {\n\t\t\t\tif (!resolved) {\n\t\t\t\t\tresolved = true;\n\t\t\t\t\tui.stop();\n\t\t\t\t\tresolve(path);\n\t\t\t\t}\n\t\t\t},\n\t\t\t() => {\n\t\t\t\tif (!resolved) {\n\t\t\t\t\tresolved = true;\n\t\t\t\t\tui.stop();\n\t\t\t\t\tresolve(null);\n\t\t\t\t}\n\t\t\t},\n\t\t\t() => {\n\t\t\t\tui.stop();\n\t\t\t\tprocess.exit(0);\n\t\t\t},\n\t\t\t() => ui.requestRender(),\n\t\t\t{ showRenameHint: false, keybindings },\n\t\t);\n\n\t\tui.addChild(selector);\n\t\tui.setFocus(selector.getSessionList());\n\t\tui.start();\n\t});\n}\n"]}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * CLI entry point for the refactored coding agent.
4
+ * Uses main.ts with AgentSession and new mode modules.
5
+ *
6
+ * Test with: npx tsx src/cli-new.ts [args...]
7
+ */
8
+ process.title = "pi";
9
+ import { setBedrockProviderModule } from "@gsd/pi-ai";
10
+ import { bedrockProviderModule } from "@gsd/pi-ai/bedrock-provider";
11
+ import { EnvHttpProxyAgent, setGlobalDispatcher } from "undici";
12
+ import { main } from "./main.js";
13
+ setGlobalDispatcher(new EnvHttpProxyAgent());
14
+ setBedrockProviderModule(bedrockProviderModule);
15
+ main(process.argv.slice(2));
16
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AACH,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;AAErB,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,mBAAmB,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;AAC7C,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;AAEhD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC","sourcesContent":["#!/usr/bin/env node\n/**\n * CLI entry point for the refactored coding agent.\n * Uses main.ts with AgentSession and new mode modules.\n *\n * Test with: npx tsx src/cli-new.ts [args...]\n */\nprocess.title = \"pi\";\n\nimport { setBedrockProviderModule } from \"@gsd/pi-ai\";\nimport { bedrockProviderModule } from \"@gsd/pi-ai/bedrock-provider\";\nimport { EnvHttpProxyAgent, setGlobalDispatcher } from \"undici\";\nimport { main } from \"./main.js\";\n\nsetGlobalDispatcher(new EnvHttpProxyAgent());\nsetBedrockProviderModule(bedrockProviderModule);\n\nmain(process.argv.slice(2));\n"]}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Detect if we're running as a Bun compiled binary.
3
+ * Bun binaries have import.meta.url containing "$bunfs", "~BUN", or "%7EBUN" (Bun's virtual filesystem path)
4
+ */
5
+ export declare const isBunBinary: boolean;
6
+ /** Detect if Bun is the runtime (compiled binary or bun run) */
7
+ export declare const isBunRuntime: boolean;
8
+ export type InstallMethod = "bun-binary" | "npm" | "pnpm" | "yarn" | "bun" | "unknown";
9
+ export declare function detectInstallMethod(): InstallMethod;
10
+ export declare function getUpdateInstruction(packageName: string): string;
11
+ /**
12
+ * Get the base directory for resolving package assets (themes, package.json, README.md, CHANGELOG.md).
13
+ * - For Bun binary: returns the directory containing the executable
14
+ * - For Node.js (dist/): returns __dirname (the dist/ directory)
15
+ * - For tsx (src/): returns parent directory (the package root)
16
+ */
17
+ export declare function getPackageDir(): string;
18
+ /**
19
+ * Get path to built-in themes directory (shipped with package)
20
+ * - For Bun binary: theme/ next to executable
21
+ * - For Node.js (dist/): dist/modes/interactive/theme/
22
+ * - For tsx (src/): src/modes/interactive/theme/
23
+ */
24
+ export declare function getThemesDir(): string;
25
+ /**
26
+ * Get path to HTML export template directory (shipped with package)
27
+ * - For Bun binary: export-html/ next to executable
28
+ * - For Node.js (dist/): dist/core/export-html/
29
+ * - For tsx (src/): src/core/export-html/
30
+ */
31
+ export declare function getExportTemplateDir(): string;
32
+ /** Get path to package.json */
33
+ export declare function getPackageJsonPath(): string;
34
+ /** Get path to README.md */
35
+ export declare function getReadmePath(): string;
36
+ /** Get path to docs directory */
37
+ export declare function getDocsPath(): string;
38
+ /** Get path to examples directory */
39
+ export declare function getExamplesPath(): string;
40
+ /** Get path to CHANGELOG.md */
41
+ export declare function getChangelogPath(): string;
42
+ export declare const APP_NAME: string;
43
+ export declare const CONFIG_DIR_NAME: string;
44
+ export declare const VERSION: string;
45
+ export declare const ENV_AGENT_DIR: string;
46
+ /** Get the share viewer URL for a gist ID */
47
+ export declare function getShareViewerUrl(gistId: string): string;
48
+ /** Get the agent config directory (e.g., ~/.pi/agent/) */
49
+ export declare function getAgentDir(): string;
50
+ /** Get path to user's custom themes directory */
51
+ export declare function getCustomThemesDir(): string;
52
+ /** Get path to models.json */
53
+ export declare function getModelsPath(): string;
54
+ /** Get path to auth.json */
55
+ export declare function getAuthPath(): string;
56
+ /** Get path to settings.json */
57
+ export declare function getSettingsPath(): string;
58
+ /** Get path to tools directory */
59
+ export declare function getToolsDir(): string;
60
+ /** Get path to managed binaries directory (fd, rg) */
61
+ export declare function getBinDir(): string;
62
+ /** Get path to prompt templates directory */
63
+ export declare function getPromptsDir(): string;
64
+ /** Get path to sessions directory */
65
+ export declare function getSessionsDir(): string;
66
+ /** Get path to debug log file */
67
+ export declare function getDebugLogPath(): string;
68
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAYA;;;GAGG;AACH,eAAO,MAAM,WAAW,SACqF,CAAC;AAE9G,gEAAgE;AAChE,eAAO,MAAM,YAAY,SAAyB,CAAC;AAMnD,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;AAEvF,wBAAgB,mBAAmB,IAAI,aAAa,CAqBnD;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAgBhE;AAMD;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAuBtC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAQrC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAO7C;AAED,+BAA+B;AAC/B,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,4BAA4B;AAC5B,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,iCAAiC;AACjC,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,qCAAqC;AACrC,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,+BAA+B;AAC/B,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAQD,eAAO,MAAM,QAAQ,EAAE,MAAmC,CAAC;AAC3D,eAAO,MAAM,eAAe,EAAE,MAAyC,CAAC;AACxE,eAAO,MAAM,OAAO,EAAE,MAAoB,CAAC;AAG3C,eAAO,MAAM,aAAa,QAA+C,CAAC;AAI1E,6CAA6C;AAC7C,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGxD;AAMD,0DAA0D;AAC1D,wBAAgB,WAAW,IAAI,MAAM,CASpC;AAED,iDAAiD;AACjD,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,8BAA8B;AAC9B,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,4BAA4B;AAC5B,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,gCAAgC;AAChC,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,kCAAkC;AAClC,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,sDAAsD;AACtD,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,6CAA6C;AAC7C,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,qCAAqC;AACrC,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,iCAAiC;AACjC,wBAAgB,eAAe,IAAI,MAAM,CAExC"}