@earendil-works/pi-coding-agent 0.75.5 → 0.76.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 (60) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/cli/args.d.ts +1 -0
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +4 -0
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/config.d.ts.map +1 -1
  7. package/dist/config.js +15 -2
  8. package/dist/config.js.map +1 -1
  9. package/dist/core/agent-session.d.ts +1 -0
  10. package/dist/core/agent-session.d.ts.map +1 -1
  11. package/dist/core/agent-session.js +5 -0
  12. package/dist/core/agent-session.js.map +1 -1
  13. package/dist/core/compaction/compaction.d.ts.map +1 -1
  14. package/dist/core/compaction/compaction.js +18 -24
  15. package/dist/core/compaction/compaction.js.map +1 -1
  16. package/dist/core/output-guard.d.ts +1 -0
  17. package/dist/core/output-guard.d.ts.map +1 -1
  18. package/dist/core/output-guard.js +52 -22
  19. package/dist/core/output-guard.js.map +1 -1
  20. package/dist/core/package-manager.d.ts.map +1 -1
  21. package/dist/core/package-manager.js +16 -4
  22. package/dist/core/package-manager.js.map +1 -1
  23. package/dist/core/sdk.d.ts.map +1 -1
  24. package/dist/core/sdk.js +6 -1
  25. package/dist/core/sdk.js.map +1 -1
  26. package/dist/core/session-manager.d.ts +3 -2
  27. package/dist/core/session-manager.d.ts.map +1 -1
  28. package/dist/core/session-manager.js +33 -11
  29. package/dist/core/session-manager.js.map +1 -1
  30. package/dist/core/settings-manager.d.ts +2 -0
  31. package/dist/core/settings-manager.d.ts.map +1 -1
  32. package/dist/core/settings-manager.js +14 -9
  33. package/dist/core/settings-manager.js.map +1 -1
  34. package/dist/main.d.ts.map +1 -1
  35. package/dist/main.js +54 -14
  36. package/dist/main.js.map +1 -1
  37. package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  38. package/dist/modes/interactive/components/user-message.js +1 -1
  39. package/dist/modes/interactive/components/user-message.js.map +1 -1
  40. package/dist/modes/rpc/rpc-client.d.ts +3 -0
  41. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  42. package/dist/modes/rpc/rpc-client.js +64 -7
  43. package/dist/modes/rpc/rpc-client.js.map +1 -1
  44. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  45. package/dist/modes/rpc/rpc-mode.js +18 -4
  46. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  47. package/dist/modes/rpc/rpc-types.d.ts +1 -0
  48. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  49. package/dist/modes/rpc/rpc-types.js.map +1 -1
  50. package/docs/settings.md +6 -2
  51. package/docs/terminal-setup.md +6 -0
  52. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  53. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  54. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  55. package/examples/extensions/sandbox/package-lock.json +2 -2
  56. package/examples/extensions/sandbox/package.json +1 -1
  57. package/examples/extensions/with-deps/package-lock.json +2 -2
  58. package/examples/extensions/with-deps/package.json +1 -1
  59. package/npm-shrinkwrap.json +12 -12
  60. package/package.json +4 -4
@@ -1926,6 +1926,9 @@ export class AgentSession {
1926
1926
  // =========================================================================
1927
1927
  // Auto-Retry
1928
1928
  // =========================================================================
1929
+ _isNonRetryableProviderLimitError(errorMessage) {
1930
+ return /GoUsageLimitError|FreeUsageLimitError|Monthly usage limit reached|available balance|insufficient_quota|out of budget|quota exceeded|billing/i.test(errorMessage);
1931
+ }
1929
1932
  /**
1930
1933
  * Check if an error is retryable (overloaded, rate limit, server errors).
1931
1934
  * Context overflow errors are NOT retryable (handled by compaction instead).
@@ -1938,6 +1941,8 @@ export class AgentSession {
1938
1941
  if (isContextOverflow(message, contextWindow))
1939
1942
  return false;
1940
1943
  const err = message.errorMessage;
1944
+ if (this._isNonRetryableProviderLimitError(err))
1945
+ return false;
1941
1946
  // Match: overloaded_error, provider returned error, rate limit, 429, 500, 502, 503, 504, service unavailable, network/connection errors (including connection lost), WebSocket transport closes/errors, fetch failed, premature stream endings, HTTP/2 closed before response, terminated, retry delay exceeded
1942
1947
  return /overloaded|provider.?returned.?error|rate.?limit|too many requests|429|500|502|503|504|service.?unavailable|server.?error|internal.?error|network.?error|connection.?error|connection.?refused|connection.?lost|websocket.?closed|websocket.?error|other side closed|fetch failed|upstream.?connect|reset before headers|socket hang up|ended without|stream ended before message_stop|http2 request did not get a response|timed? out|timeout|terminated|retry delay/i.test(err);
1943
1948
  }