@psnext/slingcli 2.4.20260525-4 → 2.4.20260527-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/bin/sling.js +4 -1
  2. package/node_modules/@aws-sdk/core/package.json +2 -2
  3. package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
  4. package/node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js +12 -6
  5. package/node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/fromHttp.js +12 -6
  6. package/node_modules/@aws-sdk/credential-provider-http/package.json +3 -2
  7. package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
  8. package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
  9. package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
  10. package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
  11. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/package.json +3 -3
  12. package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
  13. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
  14. package/node_modules/@aws-sdk/middleware-websocket/package.json +2 -2
  15. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
  16. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
  17. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
  18. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
  19. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
  20. package/node_modules/@aws-sdk/nested-clients/package.json +3 -3
  21. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +1 -2
  22. package/node_modules/@aws-sdk/xml-builder/package.json +2 -2
  23. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js +18 -24
  24. package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
  25. package/node_modules/@earendil-works/pi-ai/dist/cli.js +14 -0
  26. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js +78 -63
  27. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js +2 -1
  28. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js +8 -22
  29. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js +1 -1
  30. package/node_modules/@earendil-works/pi-ai/dist/providers/images/openrouter.js +1 -1
  31. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js +60 -40
  32. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js +1 -1
  33. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js +1 -1
  34. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/device-code.js +55 -0
  35. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.js +45 -69
  36. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.js +1 -0
  37. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +5 -2
  38. package/node_modules/@earendil-works/pi-ai/package.json +4 -3
  39. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js +2 -3
  40. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js +18 -12
  41. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.js +2 -1
  42. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js +3 -2
  43. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +8 -2
  44. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +2 -1
  45. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js +18 -24
  46. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/index.js +8 -6
  47. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/template.js +6 -3
  48. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +12 -29
  49. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js +5 -1
  50. package/node_modules/@earendil-works/pi-coding-agent/dist/core/output-guard.js +52 -22
  51. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +63 -36
  52. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.js +6 -20
  53. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +38 -31
  54. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +9 -4
  55. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +32 -24
  56. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +6 -13
  57. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js +8 -22
  58. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +54 -53
  59. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js +8 -1
  60. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +44 -81
  61. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/file-mutation-queue.js +27 -12
  62. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js +2 -3
  63. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js +3 -3
  64. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js +5 -5
  65. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/output-accumulator.js +9 -3
  66. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.js +39 -21
  67. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js +9 -8
  68. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/truncate.js +12 -2
  69. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js +20 -35
  70. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +5 -6
  71. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/config-selector.js +1 -1
  72. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js +14 -5
  73. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.js +29 -4
  74. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.js +1 -1
  75. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +4 -4
  76. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js +37 -28
  77. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js +64 -7
  78. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +15 -3
  79. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-native.js +14 -8
  80. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-core.js +124 -0
  81. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-worker.js +31 -0
  82. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.js +75 -115
  83. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.js +33 -7
  84. package/node_modules/@earendil-works/pi-coding-agent/npm-shrinkwrap.json +13 -26
  85. package/node_modules/@earendil-works/pi-coding-agent/package.json +6 -6
  86. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +40 -55
  87. package/node_modules/@earendil-works/pi-tui/dist/components/input.js +2 -2
  88. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +12 -2
  89. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +53 -0
  90. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +4 -1
  91. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +38 -16
  92. package/node_modules/@earendil-works/pi-tui/dist/utils.js +19 -12
  93. package/node_modules/@earendil-works/pi-tui/native/darwin/prebuilds/darwin-arm64/darwin-modifiers.node +0 -0
  94. package/node_modules/@earendil-works/pi-tui/native/darwin/prebuilds/darwin-x64/darwin-modifiers.node +0 -0
  95. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-arm64/win32-console-mode.node +0 -0
  96. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-x64/win32-console-mode.node +0 -0
  97. package/node_modules/@earendil-works/pi-tui/package.json +3 -5
  98. package/node_modules/@smithy/node-http-handler/package.json +2 -2
  99. package/node_modules/undici/lib/api/api-request.js +1 -1
  100. package/node_modules/undici/lib/cache/sqlite-cache-store.js +3 -3
  101. package/node_modules/undici/lib/core/connect.js +16 -0
  102. package/node_modules/undici/lib/core/request.js +17 -2
  103. package/node_modules/undici/lib/core/socks5-client.js +10 -5
  104. package/node_modules/undici/lib/core/socks5-utils.js +17 -22
  105. package/node_modules/undici/lib/dispatcher/client-h1.js +64 -20
  106. package/node_modules/undici/lib/dispatcher/client.js +6 -2
  107. package/node_modules/undici/lib/dispatcher/h2c-client.js +1 -1
  108. package/node_modules/undici/lib/mock/mock-call-history.js +15 -15
  109. package/node_modules/undici/lib/util/cache.js +8 -7
  110. package/node_modules/undici/lib/web/fetch/formdata-parser.js +17 -6
  111. package/node_modules/undici/lib/web/fetch/index.js +5 -2
  112. package/node_modules/undici/lib/web/webidl/index.js +5 -5
  113. package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +1 -7
  114. package/node_modules/undici/package.json +1 -1
  115. package/package.json +6 -6
  116. package/slingshot/index.js +269 -266
  117. package/node_modules/koffi/CHANGELOG.md +0 -1093
  118. package/node_modules/koffi/LICENSE.txt +0 -22
  119. package/node_modules/koffi/README.md +0 -43
  120. package/node_modules/koffi/build/koffi/darwin_arm64/koffi.node +0 -0
  121. package/node_modules/koffi/build/koffi/darwin_x64/koffi.node +0 -0
  122. package/node_modules/koffi/build/koffi/freebsd_arm64/koffi.node +0 -0
  123. package/node_modules/koffi/build/koffi/freebsd_ia32/koffi.node +0 -0
  124. package/node_modules/koffi/build/koffi/freebsd_x64/koffi.node +0 -0
  125. package/node_modules/koffi/build/koffi/linux_arm64/koffi.node +0 -0
  126. package/node_modules/koffi/build/koffi/linux_armhf/koffi.node +0 -0
  127. package/node_modules/koffi/build/koffi/linux_ia32/koffi.node +0 -0
  128. package/node_modules/koffi/build/koffi/linux_loong64/koffi.node +0 -0
  129. package/node_modules/koffi/build/koffi/linux_riscv64d/koffi.node +0 -0
  130. package/node_modules/koffi/build/koffi/linux_x64/koffi.node +0 -0
  131. package/node_modules/koffi/build/koffi/musl_arm64/koffi.node +0 -0
  132. package/node_modules/koffi/build/koffi/musl_x64/koffi.node +0 -0
  133. package/node_modules/koffi/build/koffi/openbsd_ia32/koffi.node +0 -0
  134. package/node_modules/koffi/build/koffi/openbsd_x64/koffi.node +0 -0
  135. package/node_modules/koffi/build/koffi/win32_arm64/koffi.exp +0 -0
  136. package/node_modules/koffi/build/koffi/win32_arm64/koffi.lib +0 -0
  137. package/node_modules/koffi/build/koffi/win32_arm64/koffi.node +0 -0
  138. package/node_modules/koffi/build/koffi/win32_ia32/koffi.exp +0 -0
  139. package/node_modules/koffi/build/koffi/win32_ia32/koffi.lib +0 -0
  140. package/node_modules/koffi/build/koffi/win32_ia32/koffi.node +0 -0
  141. package/node_modules/koffi/build/koffi/win32_x64/koffi.exp +0 -0
  142. package/node_modules/koffi/build/koffi/win32_x64/koffi.lib +0 -0
  143. package/node_modules/koffi/build/koffi/win32_x64/koffi.node +0 -0
  144. package/node_modules/koffi/doc/benchmarks.md +0 -126
  145. package/node_modules/koffi/doc/callbacks.md +0 -210
  146. package/node_modules/koffi/doc/contribute.md +0 -148
  147. package/node_modules/koffi/doc/functions.md +0 -250
  148. package/node_modules/koffi/doc/index.md +0 -61
  149. package/node_modules/koffi/doc/input.md +0 -471
  150. package/node_modules/koffi/doc/migration.md +0 -159
  151. package/node_modules/koffi/doc/misc.md +0 -180
  152. package/node_modules/koffi/doc/output.md +0 -305
  153. package/node_modules/koffi/doc/packaging.md +0 -88
  154. package/node_modules/koffi/doc/platforms.md +0 -36
  155. package/node_modules/koffi/doc/pointers.md +0 -328
  156. package/node_modules/koffi/doc/start.md +0 -118
  157. package/node_modules/koffi/doc/unions.md +0 -186
  158. package/node_modules/koffi/doc/variables.md +0 -102
  159. package/node_modules/koffi/index.d.ts +0 -288
  160. package/node_modules/koffi/index.js +0 -634
  161. package/node_modules/koffi/indirect.js +0 -533
  162. package/node_modules/koffi/lib/native/base/base.cc +0 -11015
  163. package/node_modules/koffi/lib/native/base/base.hh +0 -6003
  164. package/node_modules/koffi/lib/native/base/crc.inc +0 -2214
  165. package/node_modules/koffi/lib/native/base/crc_gen.py +0 -72
  166. package/node_modules/koffi/lib/native/base/mimetypes.inc +0 -1248
  167. package/node_modules/koffi/lib/native/base/mimetypes_gen.py +0 -58
  168. package/node_modules/koffi/lib/native/base/tower.cc +0 -821
  169. package/node_modules/koffi/lib/native/base/tower.hh +0 -81
  170. package/node_modules/koffi/lib/native/base/unicode.inc +0 -408
  171. package/node_modules/koffi/lib/native/base/unicode_gen.py +0 -152
  172. package/node_modules/koffi/package.json +0 -38
  173. package/node_modules/koffi/src/cnoke/LICENSE.txt +0 -22
  174. package/node_modules/koffi/src/cnoke/README.md +0 -99
  175. package/node_modules/koffi/src/cnoke/assets/FindCNoke.cmake +0 -127
  176. package/node_modules/koffi/src/cnoke/assets/toolchains.json +0 -126
  177. package/node_modules/koffi/src/cnoke/assets/win_delay_hook.c +0 -36
  178. package/node_modules/koffi/src/cnoke/cnoke.js +0 -170
  179. package/node_modules/koffi/src/cnoke/package.json +0 -24
  180. package/node_modules/koffi/src/cnoke/src/builder.js +0 -511
  181. package/node_modules/koffi/src/cnoke/src/index.js +0 -10
  182. package/node_modules/koffi/src/cnoke/src/tools.js +0 -407
  183. package/node_modules/koffi/src/koffi/CMakeLists.txt +0 -182
  184. package/node_modules/koffi/src/koffi/src/abi_arm32.cc +0 -1018
  185. package/node_modules/koffi/src/koffi/src/abi_arm32_asm.S +0 -169
  186. package/node_modules/koffi/src/koffi/src/abi_arm64.cc +0 -1295
  187. package/node_modules/koffi/src/koffi/src/abi_arm64_asm.S +0 -195
  188. package/node_modules/koffi/src/koffi/src/abi_arm64_asm.asm +0 -174
  189. package/node_modules/koffi/src/koffi/src/abi_loong64.cc +0 -5
  190. package/node_modules/koffi/src/koffi/src/abi_loong64_asm.S +0 -204
  191. package/node_modules/koffi/src/koffi/src/abi_riscv64.cc +0 -915
  192. package/node_modules/koffi/src/koffi/src/abi_riscv64_asm.S +0 -203
  193. package/node_modules/koffi/src/koffi/src/abi_x64_sysv.cc +0 -939
  194. package/node_modules/koffi/src/koffi/src/abi_x64_sysv_asm.S +0 -231
  195. package/node_modules/koffi/src/koffi/src/abi_x64_win.cc +0 -715
  196. package/node_modules/koffi/src/koffi/src/abi_x64_win_asm.S +0 -166
  197. package/node_modules/koffi/src/koffi/src/abi_x64_win_asm.asm +0 -192
  198. package/node_modules/koffi/src/koffi/src/abi_x86.cc +0 -860
  199. package/node_modules/koffi/src/koffi/src/abi_x86_asm.S +0 -193
  200. package/node_modules/koffi/src/koffi/src/abi_x86_asm.asm +0 -177
  201. package/node_modules/koffi/src/koffi/src/call.cc +0 -1326
  202. package/node_modules/koffi/src/koffi/src/call.hh +0 -179
  203. package/node_modules/koffi/src/koffi/src/errno.inc +0 -462
  204. package/node_modules/koffi/src/koffi/src/ffi.cc +0 -2702
  205. package/node_modules/koffi/src/koffi/src/ffi.hh +0 -354
  206. package/node_modules/koffi/src/koffi/src/init.js +0 -105
  207. package/node_modules/koffi/src/koffi/src/parser.cc +0 -220
  208. package/node_modules/koffi/src/koffi/src/parser.hh +0 -54
  209. package/node_modules/koffi/src/koffi/src/util.cc +0 -1807
  210. package/node_modules/koffi/src/koffi/src/util.hh +0 -221
  211. package/node_modules/koffi/src/koffi/src/uv.cc +0 -193
  212. package/node_modules/koffi/src/koffi/src/uv.def +0 -10
  213. package/node_modules/koffi/src/koffi/src/uv.hh +0 -40
  214. package/node_modules/koffi/src/koffi/src/win32.cc +0 -198
  215. package/node_modules/koffi/src/koffi/src/win32.hh +0 -119
  216. package/node_modules/koffi/src/koffi/tools/write_trampolines.js +0 -77
  217. package/node_modules/koffi/vendor/node-addon-api/LICENSE.md +0 -9
  218. package/node_modules/koffi/vendor/node-addon-api/README.md +0 -95
  219. package/node_modules/koffi/vendor/node-addon-api/napi-inl.deprecated.h +0 -186
  220. package/node_modules/koffi/vendor/node-addon-api/napi-inl.h +0 -7033
  221. package/node_modules/koffi/vendor/node-addon-api/napi.h +0 -3309
  222. package/node_modules/koffi/vendor/node-api-headers/LICENSE +0 -21
  223. package/node_modules/koffi/vendor/node-api-headers/README.md +0 -95
  224. package/node_modules/koffi/vendor/node-api-headers/def/js_native_api.def +0 -125
  225. package/node_modules/koffi/vendor/node-api-headers/def/node_api.def +0 -157
  226. package/node_modules/koffi/vendor/node-api-headers/include/js_native_api.h +0 -591
  227. package/node_modules/koffi/vendor/node-api-headers/include/js_native_api_types.h +0 -210
  228. package/node_modules/koffi/vendor/node-api-headers/include/node_api.h +0 -265
  229. package/node_modules/koffi/vendor/node-api-headers/include/node_api_types.h +0 -58
  230. package/node_modules/koffi/vendor/node-api-headers/include/uv/aix.h +0 -32
  231. package/node_modules/koffi/vendor/node-api-headers/include/uv/bsd.h +0 -34
  232. package/node_modules/koffi/vendor/node-api-headers/include/uv/darwin.h +0 -61
  233. package/node_modules/koffi/vendor/node-api-headers/include/uv/errno.h +0 -483
  234. package/node_modules/koffi/vendor/node-api-headers/include/uv/linux.h +0 -34
  235. package/node_modules/koffi/vendor/node-api-headers/include/uv/os390.h +0 -33
  236. package/node_modules/koffi/vendor/node-api-headers/include/uv/posix.h +0 -31
  237. package/node_modules/koffi/vendor/node-api-headers/include/uv/sunos.h +0 -44
  238. package/node_modules/koffi/vendor/node-api-headers/include/uv/threadpool.h +0 -37
  239. package/node_modules/koffi/vendor/node-api-headers/include/uv/tree.h +0 -521
  240. package/node_modules/koffi/vendor/node-api-headers/include/uv/unix.h +0 -512
  241. package/node_modules/koffi/vendor/node-api-headers/include/uv/version.h +0 -43
  242. package/node_modules/koffi/vendor/node-api-headers/include/uv/win.h +0 -698
  243. package/node_modules/koffi/vendor/node-api-headers/include/uv.h +0 -1990
package/bin/sling.js CHANGED
@@ -363,8 +363,11 @@ function updateSettings() {
363
363
  console.error("Failed to update settings.json:", err.message);
364
364
  }
365
365
  }
366
+
367
+ //disable startup notices
366
368
  config.enableInstallTelemetry = false;
367
-
369
+ config.collapseChangelog = true;
370
+
368
371
  config.powerline ={...{
369
372
  "preset": "default",
370
373
  "customItems": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/core",
3
- "version": "3.974.13",
3
+ "version": "3.974.14",
4
4
  "description": "Core functions & classes shared by multiple AWS SDK clients.",
5
5
  "scripts": {
6
6
  "build": "yarn prebuild && yarn lint && concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs",
@@ -111,7 +111,7 @@
111
111
  "license": "Apache-2.0",
112
112
  "dependencies": {
113
113
  "@aws-sdk/types": "^3.973.9",
114
- "@aws-sdk/xml-builder": "^3.972.25",
114
+ "@aws-sdk/xml-builder": "^3.972.26",
115
115
  "@aws/lambda-invoke-store": "^0.2.2",
116
116
  "@smithy/core": "^3.24.3",
117
117
  "@smithy/signature-v4": "^5.4.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-env",
3
- "version": "3.972.39",
3
+ "version": "3.972.40",
4
4
  "description": "AWS credential provider that sources credentials from known environment variables",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,7 +26,7 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@aws-sdk/core": "^3.974.13",
29
+ "@aws-sdk/core": "^3.974.14",
30
30
  "@aws-sdk/types": "^3.973.9",
31
31
  "@smithy/core": "^3.24.3",
32
32
  "@smithy/types": "^4.14.2",
@@ -46,11 +46,9 @@ Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
46
46
  }
47
47
  const url = new URL(host);
48
48
  (0, checkUrl_1.checkUrl)(url, options.logger);
49
- const requestHandler = node_http_handler_1.NodeHttpHandler.create({
50
- requestTimeout: options.timeout ?? 1000,
51
- connectionTimeout: options.timeout ?? 1000,
52
- });
53
- return (0, retry_wrapper_1.retryWrapper)(async () => {
49
+ const requestHandler = node_http_handler_1.NodeHttpHandler.create({ connectionTimeout: options.timeout ?? 1000 });
50
+ const requestTimeout = options.timeout ?? 1000;
51
+ const provider = (0, retry_wrapper_1.retryWrapper)(async () => {
54
52
  const request = (0, requestHelpers_1.createGetRequest)(url);
55
53
  if (token) {
56
54
  request.headers.Authorization = token;
@@ -59,12 +57,20 @@ Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
59
57
  request.headers.Authorization = (await promises_1.default.readFile(tokenFile)).toString();
60
58
  }
61
59
  try {
62
- const result = await requestHandler.handle(request);
60
+ const result = await requestHandler.handle(request, { requestTimeout });
63
61
  return (0, requestHelpers_1.getCredentials)(result.response).then((creds) => (0, client_1.setCredentialFeature)(creds, "CREDENTIALS_HTTP", "z"));
64
62
  }
65
63
  catch (e) {
66
64
  throw new config_1.CredentialsProviderError(String(e), { logger: options.logger });
67
65
  }
68
66
  }, options.maxRetries ?? 3, options.timeout ?? 1000);
67
+ return async () => {
68
+ try {
69
+ return await provider();
70
+ }
71
+ finally {
72
+ requestHandler.destroy?.();
73
+ }
74
+ };
69
75
  };
70
76
  exports.fromHttp = fromHttp;
@@ -42,11 +42,9 @@ Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
42
42
  }
43
43
  const url = new URL(host);
44
44
  checkUrl(url, options.logger);
45
- const requestHandler = NodeHttpHandler.create({
46
- requestTimeout: options.timeout ?? 1000,
47
- connectionTimeout: options.timeout ?? 1000,
48
- });
49
- return retryWrapper(async () => {
45
+ const requestHandler = NodeHttpHandler.create({ connectionTimeout: options.timeout ?? 1000 });
46
+ const requestTimeout = options.timeout ?? 1000;
47
+ const provider = retryWrapper(async () => {
50
48
  const request = createGetRequest(url);
51
49
  if (token) {
52
50
  request.headers.Authorization = token;
@@ -55,11 +53,19 @@ Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
55
53
  request.headers.Authorization = (await fs.readFile(tokenFile)).toString();
56
54
  }
57
55
  try {
58
- const result = await requestHandler.handle(request);
56
+ const result = await requestHandler.handle(request, { requestTimeout });
59
57
  return getCredentials(result.response).then((creds) => setCredentialFeature(creds, "CREDENTIALS_HTTP", "z"));
60
58
  }
61
59
  catch (e) {
62
60
  throw new CredentialsProviderError(String(e), { logger: options.logger });
63
61
  }
64
62
  }, options.maxRetries ?? 3, options.timeout ?? 1000);
63
+ return async () => {
64
+ try {
65
+ return await provider();
66
+ }
67
+ finally {
68
+ requestHandler.destroy?.();
69
+ }
70
+ };
65
71
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-http",
3
- "version": "3.972.41",
3
+ "version": "3.972.42",
4
4
  "description": "AWS credential provider for containers and HTTP sources",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -23,6 +23,7 @@
23
23
  "build:types:downlevel": "downlevel-dts dist-types dist-types/ts3.4",
24
24
  "clean": "premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",
25
25
  "test": "yarn g:vitest run",
26
+ "test:integration": "yarn g:vitest run -c vitest.config.integ.mts",
26
27
  "test:watch": "yarn g:vitest watch"
27
28
  },
28
29
  "keywords": [
@@ -36,7 +37,7 @@
36
37
  },
37
38
  "license": "Apache-2.0",
38
39
  "dependencies": {
39
- "@aws-sdk/core": "^3.974.13",
40
+ "@aws-sdk/core": "^3.974.14",
40
41
  "@aws-sdk/types": "^3.973.9",
41
42
  "@smithy/core": "^3.24.3",
42
43
  "@smithy/fetch-http-handler": "^5.4.3",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-ini",
3
- "version": "3.972.43",
3
+ "version": "3.972.44",
4
4
  "description": "AWS credential provider that sources credentials from ~/.aws/credentials and ~/.aws/config",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -28,14 +28,14 @@
28
28
  },
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "@aws-sdk/core": "^3.974.13",
32
- "@aws-sdk/credential-provider-env": "^3.972.39",
33
- "@aws-sdk/credential-provider-http": "^3.972.41",
34
- "@aws-sdk/credential-provider-login": "^3.972.43",
35
- "@aws-sdk/credential-provider-process": "^3.972.39",
36
- "@aws-sdk/credential-provider-sso": "^3.972.43",
37
- "@aws-sdk/credential-provider-web-identity": "^3.972.43",
38
- "@aws-sdk/nested-clients": "^3.997.11",
31
+ "@aws-sdk/core": "^3.974.14",
32
+ "@aws-sdk/credential-provider-env": "^3.972.40",
33
+ "@aws-sdk/credential-provider-http": "^3.972.42",
34
+ "@aws-sdk/credential-provider-login": "^3.972.44",
35
+ "@aws-sdk/credential-provider-process": "^3.972.40",
36
+ "@aws-sdk/credential-provider-sso": "^3.972.44",
37
+ "@aws-sdk/credential-provider-web-identity": "^3.972.44",
38
+ "@aws-sdk/nested-clients": "^3.997.12",
39
39
  "@aws-sdk/types": "^3.973.9",
40
40
  "@smithy/core": "^3.24.3",
41
41
  "@smithy/credential-provider-imds": "^4.3.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-login",
3
- "version": "3.972.43",
3
+ "version": "3.972.44",
4
4
  "description": "AWS credential provider that sources credentials from aws login cached tokens",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -28,8 +28,8 @@
28
28
  },
29
29
  "license": "Apache-2.0",
30
30
  "dependencies": {
31
- "@aws-sdk/core": "^3.974.13",
32
- "@aws-sdk/nested-clients": "^3.997.11",
31
+ "@aws-sdk/core": "^3.974.14",
32
+ "@aws-sdk/nested-clients": "^3.997.12",
33
33
  "@aws-sdk/types": "^3.973.9",
34
34
  "@smithy/core": "^3.24.3",
35
35
  "@smithy/types": "^4.14.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-node",
3
- "version": "3.972.44",
3
+ "version": "3.972.45",
4
4
  "description": "AWS credential provider that sources credentials from a Node.JS environment. ",
5
5
  "engines": {
6
6
  "node": ">=20.0.0"
@@ -31,12 +31,12 @@
31
31
  },
32
32
  "license": "Apache-2.0",
33
33
  "dependencies": {
34
- "@aws-sdk/credential-provider-env": "^3.972.39",
35
- "@aws-sdk/credential-provider-http": "^3.972.41",
36
- "@aws-sdk/credential-provider-ini": "^3.972.43",
37
- "@aws-sdk/credential-provider-process": "^3.972.39",
38
- "@aws-sdk/credential-provider-sso": "^3.972.43",
39
- "@aws-sdk/credential-provider-web-identity": "^3.972.43",
34
+ "@aws-sdk/credential-provider-env": "^3.972.40",
35
+ "@aws-sdk/credential-provider-http": "^3.972.42",
36
+ "@aws-sdk/credential-provider-ini": "^3.972.44",
37
+ "@aws-sdk/credential-provider-process": "^3.972.40",
38
+ "@aws-sdk/credential-provider-sso": "^3.972.44",
39
+ "@aws-sdk/credential-provider-web-identity": "^3.972.44",
40
40
  "@aws-sdk/types": "^3.973.9",
41
41
  "@smithy/core": "^3.24.3",
42
42
  "@smithy/credential-provider-imds": "^4.3.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-process",
3
- "version": "3.972.39",
3
+ "version": "3.972.40",
4
4
  "description": "AWS credential provider that sources credential_process from ~/.aws/credentials and ~/.aws/config",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,7 +26,7 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@aws-sdk/core": "^3.974.13",
29
+ "@aws-sdk/core": "^3.974.14",
30
30
  "@aws-sdk/types": "^3.973.9",
31
31
  "@smithy/core": "^3.24.3",
32
32
  "@smithy/types": "^4.14.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/token-providers",
3
- "version": "3.1052.0",
3
+ "version": "3.1054.0",
4
4
  "description": "A collection of token providers",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -29,8 +29,8 @@
29
29
  },
30
30
  "license": "Apache-2.0",
31
31
  "dependencies": {
32
- "@aws-sdk/core": "^3.974.13",
33
- "@aws-sdk/nested-clients": "^3.997.11",
32
+ "@aws-sdk/core": "^3.974.14",
33
+ "@aws-sdk/nested-clients": "^3.997.12",
34
34
  "@aws-sdk/types": "^3.973.9",
35
35
  "@smithy/core": "^3.24.3",
36
36
  "@smithy/types": "^4.14.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-sso",
3
- "version": "3.972.43",
3
+ "version": "3.972.44",
4
4
  "description": "AWS credential provider that exchanges a resolved SSO login token file for temporary AWS credentials",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,9 +26,9 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@aws-sdk/core": "^3.974.13",
30
- "@aws-sdk/nested-clients": "^3.997.11",
31
- "@aws-sdk/token-providers": "3.1052.0",
29
+ "@aws-sdk/core": "^3.974.14",
30
+ "@aws-sdk/nested-clients": "^3.997.12",
31
+ "@aws-sdk/token-providers": "3.1054.0",
32
32
  "@aws-sdk/types": "^3.973.9",
33
33
  "@smithy/core": "^3.24.3",
34
34
  "@smithy/types": "^4.14.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/credential-provider-web-identity",
3
- "version": "3.972.43",
3
+ "version": "3.972.44",
4
4
  "description": "AWS credential provider that calls STS assumeRole for temporary AWS credentials",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -34,8 +34,8 @@
34
34
  },
35
35
  "license": "Apache-2.0",
36
36
  "dependencies": {
37
- "@aws-sdk/core": "^3.974.13",
38
- "@aws-sdk/nested-clients": "^3.997.11",
37
+ "@aws-sdk/core": "^3.974.14",
38
+ "@aws-sdk/nested-clients": "^3.997.12",
39
39
  "@aws-sdk/types": "^3.973.9",
40
40
  "@smithy/core": "^3.24.3",
41
41
  "@smithy/types": "^4.14.2",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/middleware-websocket",
3
- "version": "3.972.21",
3
+ "version": "3.972.22",
4
4
  "main": "./dist-cjs/index.js",
5
5
  "module": "./dist-es/index.js",
6
6
  "types": "./dist-types/index.d.ts",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@aws-sdk/core": "^3.974.13",
27
+ "@aws-sdk/core": "^3.974.14",
28
28
  "@aws-sdk/types": "^3.973.9",
29
29
  "@smithy/core": "^3.24.3",
30
30
  "@smithy/fetch-http-handler": "^5.4.3",
@@ -80,7 +80,7 @@ const commonParams = {
80
80
  UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
81
81
  };
82
82
 
83
- var version = "3.997.10";
83
+ var version = "3.997.11";
84
84
  var packageInfo = {
85
85
  version: version};
86
86
 
@@ -76,7 +76,7 @@ const commonParams = {
76
76
  UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
77
77
  };
78
78
 
79
- var version = "3.997.10";
79
+ var version = "3.997.11";
80
80
  var packageInfo = {
81
81
  version: version};
82
82
 
@@ -76,7 +76,7 @@ const commonParams = {
76
76
  UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
77
77
  };
78
78
 
79
- var version = "3.997.10";
79
+ var version = "3.997.11";
80
80
  var packageInfo = {
81
81
  version: version};
82
82
 
@@ -76,7 +76,7 @@ const commonParams = {
76
76
  UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
77
77
  };
78
78
 
79
- var version = "3.997.10";
79
+ var version = "3.997.11";
80
80
  var packageInfo = {
81
81
  version: version};
82
82
 
@@ -319,7 +319,7 @@ const commonParams = {
319
319
  UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
320
320
  };
321
321
 
322
- var version = "3.997.10";
322
+ var version = "3.997.11";
323
323
  var packageInfo = {
324
324
  version: version};
325
325
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/nested-clients",
3
- "version": "3.997.11",
3
+ "version": "3.997.12",
4
4
  "description": "Nested clients for AWS SDK packages.",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -29,8 +29,8 @@
29
29
  "dependencies": {
30
30
  "@aws-crypto/sha256-browser": "5.2.0",
31
31
  "@aws-crypto/sha256-js": "5.2.0",
32
- "@aws-sdk/core": "^3.974.13",
33
- "@aws-sdk/signature-v4-multi-region": "^3.996.28",
32
+ "@aws-sdk/core": "^3.974.14",
33
+ "@aws-sdk/signature-v4-multi-region": "^3.996.29",
34
34
  "@aws-sdk/types": "^3.973.9",
35
35
  "@smithy/core": "^3.24.3",
36
36
  "@smithy/fetch-http-handler": "^5.4.3",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/signature-v4-multi-region",
3
- "version": "3.996.28",
3
+ "version": "3.996.29",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs",
6
6
  "build:cjs": "node ../../scripts/compilation/inline signature-v4-multi-region",
@@ -26,7 +26,6 @@
26
26
  "license": "Apache-2.0",
27
27
  "dependencies": {
28
28
  "@aws-sdk/types": "^3.973.9",
29
- "@smithy/core": "^3.24.3",
30
29
  "@smithy/signature-v4": "^5.4.2",
31
30
  "@smithy/types": "^4.14.2",
32
31
  "tslib": "^2.6.2"
@@ -1,9 +1,8 @@
1
1
  {
2
2
  "name": "@aws-sdk/xml-builder",
3
- "version": "3.972.25",
3
+ "version": "3.972.26",
4
4
  "description": "XML utilities for the AWS SDK",
5
5
  "dependencies": {
6
- "@nodable/entities": "2.1.0",
7
6
  "@smithy/types": "^4.14.2",
8
7
  "fast-xml-parser": "5.7.3",
9
8
  "tslib": "^2.6.2"
@@ -55,6 +54,7 @@
55
54
  "directory": "packages-internal/xml-builder"
56
55
  },
57
56
  "devDependencies": {
57
+ "@nodable/entities": "2.1.0",
58
58
  "@tsconfig/recommended": "1.0.1",
59
59
  "concurrently": "7.0.0",
60
60
  "downlevel-dts": "0.10.1",
@@ -125,22 +125,28 @@ export function shouldCompact(contextTokens, contextWindow, settings) {
125
125
  return false;
126
126
  return contextTokens > contextWindow - settings.reserveTokens;
127
127
  }
128
+ const ESTIMATED_IMAGE_CHARS = 4800;
129
+ function estimateTextAndImageContentChars(content) {
130
+ if (typeof content === "string") {
131
+ return content.length;
132
+ }
133
+ let chars = 0;
134
+ for (const block of content) {
135
+ if (block.type === "text" && block.text) {
136
+ chars += block.text.length;
137
+ }
138
+ else if (block.type === "image") {
139
+ chars += ESTIMATED_IMAGE_CHARS;
140
+ }
141
+ }
142
+ return chars;
143
+ }
128
144
  /** Estimate token count for one message using a conservative character heuristic. */
129
145
  export function estimateTokens(message) {
130
146
  let chars = 0;
131
147
  switch (message.role) {
132
148
  case "user": {
133
- const content = message.content;
134
- if (typeof content === "string") {
135
- chars = content.length;
136
- }
137
- else if (Array.isArray(content)) {
138
- for (const block of content) {
139
- if (block.type === "text" && block.text) {
140
- chars += block.text.length;
141
- }
142
- }
143
- }
149
+ chars = estimateTextAndImageContentChars(message.content);
144
150
  return Math.ceil(chars / 4);
145
151
  }
146
152
  case "assistant": {
@@ -160,19 +166,7 @@ export function estimateTokens(message) {
160
166
  }
161
167
  case "custom":
162
168
  case "toolResult": {
163
- if (typeof message.content === "string") {
164
- chars = message.content.length;
165
- }
166
- else {
167
- for (const block of message.content) {
168
- if (block.type === "text" && block.text) {
169
- chars += block.text.length;
170
- }
171
- if (block.type === "image") {
172
- chars += 4800;
173
- }
174
- }
175
- }
169
+ chars = estimateTextAndImageContentChars(message.content);
176
170
  return Math.ceil(chars / 4);
177
171
  }
178
172
  case "bashExecution": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@earendil-works/pi-agent-core",
3
- "version": "0.75.4",
3
+ "version": "0.75.5",
4
4
  "description": "General-purpose agent with transport abstraction, state management, and attachment support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -29,7 +29,7 @@
29
29
  "prepublishOnly": "npm run clean && npm run build"
30
30
  },
31
31
  "dependencies": {
32
- "@earendil-works/pi-ai": "^0.75.4",
32
+ "@earendil-works/pi-ai": "^0.75.5",
33
33
  "ignore": "7.0.5",
34
34
  "typebox": "1.1.38",
35
35
  "yaml": "2.9.0"
@@ -36,9 +36,23 @@ async function login(providerId) {
36
36
  console.log(info.instructions);
37
37
  console.log();
38
38
  },
39
+ onDeviceCode: (info) => {
40
+ console.log(`\nOpen this URL in your browser:\n${info.verificationUri}`);
41
+ console.log(`Enter code: ${info.userCode}`);
42
+ console.log();
43
+ },
39
44
  onPrompt: async (p) => {
40
45
  return await promptFn(`${p.message}${p.placeholder ? ` (${p.placeholder})` : ""}:`);
41
46
  },
47
+ onSelect: async (p) => {
48
+ console.log(`\n${p.message}`);
49
+ for (let i = 0; i < p.options.length; i++) {
50
+ console.log(` ${i + 1}. ${p.options[i].label}`);
51
+ }
52
+ const choice = await promptFn(`Enter number (1-${p.options.length}):`);
53
+ const index = parseInt(choice, 10) - 1;
54
+ return p.options[index]?.id;
55
+ },
42
56
  onProgress: (msg) => console.log(msg),
43
57
  });
44
58
  const auth = loadAuth();