@trenchwork/erosolar 1.1.40 → 1.1.41

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 (81) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +236 -225
  3. package/agents/erosolar-code.rules.json +199 -199
  4. package/dist/bin/deepseek.js +18 -198
  5. package/dist/bin/deepseek.js.map +1 -1
  6. package/dist/bin/erosolar.js +0 -0
  7. package/dist/capabilities/enhancedGitCapability.js +63 -63
  8. package/dist/config.js +12 -12
  9. package/dist/contracts/agent-profiles.schema.json +5 -23
  10. package/dist/contracts/agent-schemas.json +31 -343
  11. package/dist/contracts/models.schema.json +9 -9
  12. package/dist/contracts/module-schema.json +367 -367
  13. package/dist/contracts/schemas/agent-profile.schema.json +157 -157
  14. package/dist/contracts/schemas/agent-rules.schema.json +238 -238
  15. package/dist/contracts/schemas/agent-schemas.schema.json +528 -528
  16. package/dist/contracts/schemas/agent.schema.json +90 -90
  17. package/dist/contracts/schemas/tool-selection.schema.json +174 -174
  18. package/dist/contracts/tools.schema.json +42 -42
  19. package/dist/contracts/unified-schema.json +8 -628
  20. package/dist/core/constants.js +7 -7
  21. package/dist/core/contextManager.js +16 -16
  22. package/dist/core/modelDiscovery.d.ts +0 -3
  23. package/dist/core/modelDiscovery.d.ts.map +1 -1
  24. package/dist/core/modelDiscovery.js +3 -355
  25. package/dist/core/modelDiscovery.js.map +1 -1
  26. package/dist/core/quotaErrors.d.ts +42 -0
  27. package/dist/core/quotaErrors.d.ts.map +1 -0
  28. package/dist/core/quotaErrors.js +88 -0
  29. package/dist/core/quotaErrors.js.map +1 -0
  30. package/dist/core/secretStore.d.ts.map +1 -1
  31. package/dist/core/secretStore.js +1 -14
  32. package/dist/core/secretStore.js.map +1 -1
  33. package/dist/core/taskCompletionDetector.js +17 -17
  34. package/dist/headless/interactiveShell.d.ts.map +1 -1
  35. package/dist/headless/interactiveShell.js +7 -58
  36. package/dist/headless/interactiveShell.js.map +1 -1
  37. package/dist/leanAgent.js +38 -38
  38. package/dist/plugins/providers/deepseek/index.d.ts +1 -0
  39. package/dist/plugins/providers/deepseek/index.d.ts.map +1 -1
  40. package/dist/plugins/providers/deepseek/index.js +65 -4
  41. package/dist/plugins/providers/deepseek/index.js.map +1 -1
  42. package/dist/plugins/providers/index.d.ts.map +1 -1
  43. package/dist/plugins/providers/index.js +0 -7
  44. package/dist/plugins/providers/index.js.map +1 -1
  45. package/dist/providers/openaiChatCompletionsProvider.js +7 -30
  46. package/dist/providers/openaiChatCompletionsProvider.js.map +1 -1
  47. package/dist/providers/resilientProvider.d.ts.map +1 -1
  48. package/dist/providers/resilientProvider.js +0 -31
  49. package/dist/providers/resilientProvider.js.map +1 -1
  50. package/dist/runtime/agentSession.js +4 -4
  51. package/dist/shell/vimMode.js +29 -29
  52. package/dist/tools/hitlTools.js +18 -18
  53. package/dist/tools/webTools.d.ts.map +1 -1
  54. package/dist/tools/webTools.js +10 -0
  55. package/dist/tools/webTools.js.map +1 -1
  56. package/package.json +116 -123
  57. package/scripts/postinstall.cjs +57 -58
  58. package/dist/bin/cliMode.d.ts +0 -8
  59. package/dist/bin/cliMode.d.ts.map +0 -1
  60. package/dist/bin/cliMode.js +0 -20
  61. package/dist/bin/cliMode.js.map +0 -1
  62. package/dist/bin/selfTest.d.ts +0 -14
  63. package/dist/bin/selfTest.d.ts.map +0 -1
  64. package/dist/bin/selfTest.js +0 -298
  65. package/dist/bin/selfTest.js.map +0 -1
  66. package/dist/headless/printMode.d.ts +0 -17
  67. package/dist/headless/printMode.d.ts.map +0 -1
  68. package/dist/headless/printMode.js +0 -40
  69. package/dist/headless/printMode.js.map +0 -1
  70. package/dist/plugins/providers/anthropic/index.d.ts +0 -9
  71. package/dist/plugins/providers/anthropic/index.d.ts.map +0 -1
  72. package/dist/plugins/providers/anthropic/index.js +0 -48
  73. package/dist/plugins/providers/anthropic/index.js.map +0 -1
  74. package/dist/plugins/providers/openai/index.d.ts +0 -10
  75. package/dist/plugins/providers/openai/index.d.ts.map +0 -1
  76. package/dist/plugins/providers/openai/index.js +0 -47
  77. package/dist/plugins/providers/openai/index.js.map +0 -1
  78. package/dist/plugins/providers/xai/index.d.ts +0 -10
  79. package/dist/plugins/providers/xai/index.d.ts.map +0 -1
  80. package/dist/plugins/providers/xai/index.js +0 -47
  81. package/dist/plugins/providers/xai/index.js.map +0 -1
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Quota / balance exhaustion handling for the two external services the
3
+ * agent leans on: Tavily (web search) and DeepSeek (the LLM provider).
4
+ *
5
+ * The goal is a single, recognizable user message when a paid quota or
6
+ * monthly free-tier cap is the actual cause of a failure — so the user
7
+ * isn't reading "Tavily API error: 432" or "402 Insufficient Balance"
8
+ * and guessing what to do. The helpers are pure (no I/O, no logging)
9
+ * so they can be exercised from both the web-tools layer and the
10
+ * provider layer without coupling.
11
+ */
12
+ export const TAVILY_QUOTA_MESSAGE = [
13
+ 'Web search is disabled: the Tavily monthly free-tier quota is exhausted.',
14
+ ' • This automatically re-enables on the 1st of next month (UTC reset).',
15
+ ' • To restore search immediately, top up at https://app.tavily.com/billing',
16
+ ' or set your own TAVILY_API_KEY (`/secrets set TAVILY_API_KEY`).',
17
+ ].join('\n');
18
+ export const DEEPSEEK_QUOTA_MESSAGE = [
19
+ 'DeepSeek API is disabled: your account balance is exhausted.',
20
+ ' • Top up at https://platform.deepseek.com/billing to resume this month.',
21
+ ' • DeepSeek does not auto-reset — you must top up; the 75% promo period',
22
+ ' (now ended) is no longer subsidizing usage.',
23
+ ' • Or switch keys: `/secrets set DEEPSEEK_API_KEY` (paid provider).',
24
+ ].join('\n');
25
+ /**
26
+ * Detect a Tavily response that means "you've hit your monthly quota
27
+ * (or rate limit) — nothing else will succeed until you top up or
28
+ * the cycle resets". Tavily uses 432 for usage cap, 433 for plan
29
+ * paused, and 429 for short-window rate limits — all three deserve
30
+ * the same user-facing message because the user's remediation is
31
+ * identical.
32
+ *
33
+ * `bodyText` is the response body, lowercased by the caller (or
34
+ * empty if the body could not be read). It's checked as a defence
35
+ * against Tavily changing status codes — quota-language in the body
36
+ * is sufficient.
37
+ */
38
+ export function isTavilyQuotaResponse(status, bodyText) {
39
+ if (status === 402 || status === 429 || status === 432 || status === 433) {
40
+ return true;
41
+ }
42
+ const text = bodyText.toLowerCase();
43
+ return (text.includes('usage limit') ||
44
+ text.includes('monthly limit') ||
45
+ text.includes('plan limit') ||
46
+ text.includes('usage_limit_exceeded') ||
47
+ text.includes('quota'));
48
+ }
49
+ /**
50
+ * Detect a DeepSeek error that means "your account balance is exhausted
51
+ * — top up or wait for a paid plan to refill". DeepSeek returns HTTP 402
52
+ * with `Insufficient Balance` in the body when the prepaid balance hits
53
+ * zero; that is the canonical signal. We also catch the lowercase / spaced
54
+ * variants and an explicit `status === 402` from the OpenAI SDK error
55
+ * shape (numeric `.status`, not a string).
56
+ */
57
+ export function isDeepSeekQuotaError(error) {
58
+ if (!(error instanceof Error))
59
+ return false;
60
+ const status = error.status;
61
+ if (status === 402)
62
+ return true;
63
+ const message = error.message.toLowerCase();
64
+ if (message.includes('402'))
65
+ return true;
66
+ if (message.includes('insufficient balance'))
67
+ return true;
68
+ if (message.includes('insufficient_balance'))
69
+ return true;
70
+ if (message.includes('balance is not enough'))
71
+ return true;
72
+ if (message.includes('payment required'))
73
+ return true;
74
+ return false;
75
+ }
76
+ /**
77
+ * Build a quota-exhaustion Error for DeepSeek. Centralized so the
78
+ * agent-facing message is identical wherever a 402 is detected.
79
+ */
80
+ export function buildDeepSeekQuotaError() {
81
+ const err = new Error(DEEPSEEK_QUOTA_MESSAGE);
82
+ // Tag it so retry / circuit-breaker layers can treat it as
83
+ // non-transient without re-detecting via message scraping.
84
+ err.isQuotaExhausted = true;
85
+ err.provider = 'deepseek';
86
+ return err;
87
+ }
88
+ //# sourceMappingURL=quotaErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quotaErrors.js","sourceRoot":"","sources":["../../src/core/quotaErrors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,0EAA0E;IAC1E,yEAAyE;IACzE,6EAA6E;IAC7E,qEAAqE;CACtE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,8DAA8D;IAC9D,2EAA2E;IAC3E,0EAA0E;IAC1E,iDAAiD;IACjD,sEAAsE;CACvE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAc,EAAE,QAAgB;IACpE,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACpC,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CACvB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,MAAM,GAAI,KAA8B,CAAC,MAAM,CAAC;IACtD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC9C,2DAA2D;IAC3D,2DAA2D;IAC1D,GAAsC,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/D,GAA6B,CAAC,QAAQ,GAAG,UAAU,CAAC;IACrD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"secretStore.d.ts","sourceRoot":"","sources":["../../src/core/secretStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,UAAU,GAClB,kBAAkB,GAClB,gBAAgB,CAAC;AAErB,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,UAAU,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,UAAU,EAAE,CAAC;CACzB;AA2BD,qBAAa,kBAAmB,SAAQ,KAAK;aACf,MAAM,EAAE,gBAAgB;gBAAxB,MAAM,EAAE,gBAAgB;CAIrD;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAE1D;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI,CAE3E;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAkB5D;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAYrC;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAUrE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAUhD;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAQpE;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI,CAE5F;AAgFD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA4B5D;AAoCD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAQlD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQvD"}
1
+ {"version":3,"file":"secretStore.d.ts","sourceRoot":"","sources":["../../src/core/secretStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,MAAM,UAAU,GAClB,kBAAkB,GAClB,gBAAgB,CAAC;AAErB,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,UAAU,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,UAAU,EAAE,CAAC;CACzB;AA2BD,qBAAa,kBAAmB,SAAQ,KAAK;aACf,MAAM,EAAE,gBAAgB;gBAAxB,MAAM,EAAE,gBAAgB;CAIrD;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAE1D;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI,CAE3E;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAkB5D;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAYrC;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAUrE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAUhD;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,CAQpE;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI,CAE5F;AAmED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA4B5D;AAoCD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAQlD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQvD"}
@@ -132,7 +132,7 @@ function writeSecretStore(store) {
132
132
  // concurrent CLIs writing the secret store at the same moment can
133
133
  // produce a half-written file that subsequent reads parse as `{}`.
134
134
  const tmp = `${SECRET_FILE}.${process.pid}.${Date.now()}.tmp`;
135
- writeFileSync(tmp, `${payload}
135
+ writeFileSync(tmp, `${payload}
136
136
  `, { mode: 0o600 });
137
137
  renameSync(tmp, SECRET_FILE);
138
138
  }
@@ -158,23 +158,10 @@ function sanitize(value) {
158
158
  * These patterns match common API key formats from various providers.
159
159
  */
160
160
  const API_KEY_PATTERNS = [
161
- // Anthropic API keys: sk-ant-api03-...
162
- /sk-ant-api\d{2}-[A-Za-z0-9_-]{20,}/g,
163
- // OpenAI API keys: sk-proj-... or sk-...
164
- /sk-(?:proj-)?[A-Za-z0-9_-]{20,}/g,
165
- // Generic Bearer tokens in headers
166
161
  /Bearer\s+[A-Za-z0-9_.-]{20,}/gi,
167
- // x-api-key header values
168
162
  /x-api-key['":\s]+[A-Za-z0-9_.-]{20,}/gi,
169
- // API keys in URLs (key=value pattern)
170
163
  /[?&](?:key|api_key|apiKey|api-key|token|access_token)=([A-Za-z0-9_.-]{16,})/gi,
171
- // DeepSeek keys
172
164
  /sk-[a-f0-9]{32,}/gi,
173
- // xAI/Grok keys
174
- /xai-[A-Za-z0-9_-]{20,}/gi,
175
- // Google/Gemini API keys (AIza...)
176
- /AIza[A-Za-z0-9_-]{30,}/g,
177
- // Generic long alphanumeric tokens that look like API keys
178
165
  /(?:api[_-]?key|token|secret|password|credential)['"]?\s*[:=]\s*['"]?([A-Za-z0-9_.-]{20,})['"]?/gi,
179
166
  ];
180
167
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"secretStore.js","sourceRoot":"","sources":["../../src/core/secretStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secretStore.js","sourceRoot":"","sources":["../../src/core/secretStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBnD,MAAM,kBAAkB,GAAuB;IAC7C;QACE,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,mDAAmD;QAChE,MAAM,EAAE,kBAAkB;QAC1B,SAAS,EAAE,CAAC,UAAU,CAAC;KACxB;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,8EAA8E;QAC3F,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,EAAE;KACd;CACF,CAAC;AAEF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAChD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;AACnF,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAErD,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IACf;IAA5B,YAA4B,MAAwB;QAClD,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,qBAAqB,CAAC,CAAC;QADlB,WAAM,GAAN,MAAM,CAAkB;QAElD,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,GAAG,kBAAkB,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAc;IAChD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAc;IAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,oEAAoE;QACpE,wEAAwE;QACxE,yEAAyE;QACzE,+DAA+D;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC;IAC9B,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QACnD,IAAI,WAAW,EAAE,CAAC;YAChB,2EAA2E;YAC3E,+CAA+C;YAC/C,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC;QAC3C,CAAC;QACD,0EAA0E;QAC1E,yDAAyD;IAC3D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAc,EAAE,QAAgB;IAC7D,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IAClB,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACxB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,QAAoB;IAC1D,MAAM,UAAU,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IACvC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,QAAoB;IACjE,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC;AACxF,CAAC;AAED,SAAS,eAAe;IACtB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO,MAAyB,CAAC;QACnC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAsB;IAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACvC,oEAAoE;IACpE,sEAAsE;IACtE,6DAA6D;IAC7D,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC/C,mEAAmE;IACnE,kEAAkE;IAClE,mEAAmE;IACnE,MAAM,GAAG,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAC9D,aAAa,CAAC,GAAG,EAAE,GAAG,OAAO;CAC9B,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClB,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,yBAAyB,CAAC,QAAoB;IACrD,MAAM,UAAU,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,QAAQ,IAAI,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AACzC,CAAC;AAED,+EAA+E;AAC/E,yCAAyC;AACzC,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,gBAAgB,GAAa;IACjC,gCAAgC;IAChC,wCAAwC;IACxC,+EAA+E;IAC/E,oBAAoB;IACpB,kGAAkG;CACnG,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,SAAS,GAAG,OAAO,CAAC;IAExB,6BAA6B;IAC7B,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;QACvC,sCAAsC;QACtC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QACtB,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/C,4DAA4D;YAC5D,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,YAAY,CAAC;gBAC7C,CAAC;YACH,CAAC;YACD,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,SAAS,GAAG,4BAA4B,CAAC,SAAS,CAAC,CAAC;IAEpD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,4BAA4B,CAAC,OAAe;IACnD,MAAM,WAAW,GAAiB;QAChC,kBAAkB;QAClB,gBAAgB;KACjB,CAAC;IAEF,IAAI,SAAS,GAAG,OAAO,CAAC;IAExB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC/B,oDAAoD;YACpD,4DAA4D;YAC5D,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxD,CAAC;YAED,uEAAuE;YACvE,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACvB,MAAM,cAAc,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACzF,IAAI,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBACvC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnE,IAAI,KAAK,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QAC/B,OAAO,GAAG,OAAO,KAAK,KAAK,EAAE,CAAC;IAChC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,wBAAwB,CAAC;AAClC,CAAC"}
@@ -355,29 +355,29 @@ export class TaskCompletionDetector {
355
355
  concerns.push('you mentioned potential future improvements');
356
356
  }
357
357
  const concernsText = concerns.length > 0 ? `However, ${concerns.join(' and ')}. ` : '';
358
- return `You indicated the task might be complete. ${concernsText}Please confirm:
359
-
360
- 1. Have ALL the originally requested changes been implemented in actual code files?
361
- 2. Are there any remaining errors or issues that need to be fixed?
362
- 3. Is there anything else you need to do to fully complete this task?
363
-
364
- IMPORTANT: Creating markdown documentation files does NOT count as completing a task.
365
- Focus on the actual code/implementation work requested.
366
-
367
- If everything is truly done, respond with exactly: "TASK_FULLY_COMPLETE"
358
+ return `You indicated the task might be complete. ${concernsText}Please confirm:
359
+
360
+ 1. Have ALL the originally requested changes been implemented in actual code files?
361
+ 2. Are there any remaining errors or issues that need to be fixed?
362
+ 3. Is there anything else you need to do to fully complete this task?
363
+
364
+ IMPORTANT: Creating markdown documentation files does NOT count as completing a task.
365
+ Focus on the actual code/implementation work requested.
366
+
367
+ If everything is truly done, respond with exactly: "TASK_FULLY_COMPLETE"
368
368
  If there's more work to do, describe what remains and continue working.`;
369
369
  }
370
370
  /**
371
371
  * Generate a verification prompt for stagnation cases
372
372
  */
373
373
  generateStagnationVerificationPrompt() {
374
- return `I notice you haven't used any tools for several responses. Let me check:
375
-
376
- 1. Is the task complete? If so, summarize what was accomplished.
377
- 2. Are you blocked on something? If so, what do you need?
378
- 3. Is there more work to do? If so, please continue.
379
-
380
- If everything is done, respond with exactly: "TASK_FULLY_COMPLETE"
374
+ return `I notice you haven't used any tools for several responses. Let me check:
375
+
376
+ 1. Is the task complete? If so, summarize what was accomplished.
377
+ 2. Are you blocked on something? If so, what do you need?
378
+ 3. Is there more work to do? If so, please continue.
379
+
380
+ If everything is done, respond with exactly: "TASK_FULLY_COMPLETE"
381
381
  Otherwise, please continue with the next action.`;
382
382
  }
383
383
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/headless/interactiveShell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA+IH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAkBrE;AAMD;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDzF"}
1
+ {"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/headless/interactiveShell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA+IH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAkBrE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmDzF"}
@@ -171,7 +171,11 @@ export async function runInteractiveShell(options) {
171
171
  exit(1);
172
172
  }
173
173
  loadAllSecrets();
174
- const parsed = parseArgs(options.argv);
174
+ // argv intentionally unused — the bin is shell-only. Any tokens after
175
+ // `erosolar` are ignored on purpose; configuration lives in /secrets,
176
+ // /model, /auto, etc. The options.argv field stays only because tests
177
+ // pass it; it does not affect runtime.
178
+ void options;
175
179
  const profile = resolveProfile();
176
180
  const workingDir = process.cwd();
177
181
  const workspaceOptions = resolveWorkspaceCaptureOptions(process.env);
@@ -187,10 +191,6 @@ export async function runInteractiveShell(options) {
187
191
  });
188
192
  // Create the interactive shell instance
189
193
  const shell = new InteractiveShell(controller, profile, profileConfig, workingDir);
190
- // Handle initial prompt if provided
191
- if (parsed.initialPrompt) {
192
- shell.queuePrompt(parsed.initialPrompt);
193
- }
194
194
  await shell.run();
195
195
  }
196
196
  class InteractiveShell {
@@ -933,18 +933,8 @@ class InteractiveShell {
933
933
  return prefix.id;
934
934
  // Alias matching
935
935
  const aliases = {
936
- 'claude': 'anthropic',
937
- 'ant': 'anthropic',
938
- 'gpt': 'openai',
939
- 'oai': 'openai',
940
- 'gemini': 'google',
941
- 'gem': 'google',
942
936
  'ds': 'deepseek',
943
937
  'deep': 'deepseek',
944
- 'grok': 'xai',
945
- 'x': 'xai',
946
- 'local': 'ollama',
947
- 'llama': 'ollama',
948
938
  };
949
939
  if (aliases[lower]) {
950
940
  const aliased = providers.find(p => p.id === aliases[lower]);
@@ -958,24 +948,9 @@ class InteractiveShell {
958
948
  */
959
949
  inferProviderFromModel(model) {
960
950
  const lower = model.toLowerCase();
961
- if (lower.startsWith('claude') || lower.startsWith('opus') || lower.startsWith('sonnet') || lower.startsWith('haiku')) {
962
- return 'anthropic';
963
- }
964
- if (lower.startsWith('gpt') || lower.startsWith('o1') || lower.startsWith('o3') || lower.startsWith('codex')) {
965
- return 'openai';
966
- }
967
- if (lower.startsWith('gemini')) {
968
- return 'google';
969
- }
970
951
  if (lower.startsWith('deepseek')) {
971
952
  return 'deepseek';
972
953
  }
973
- if (lower.startsWith('grok')) {
974
- return 'xai';
975
- }
976
- if (lower.startsWith('llama') || lower.startsWith('mistral') || lower.startsWith('qwen')) {
977
- return 'ollama';
978
- }
979
954
  return null;
980
955
  }
981
956
  /**
@@ -1110,16 +1085,8 @@ class InteractiveShell {
1110
1085
  * Format model ID for display (shorten long IDs).
1111
1086
  */
1112
1087
  formatModelLabel(modelId) {
1113
- // Shorten common prefixes
1114
1088
  let label = modelId
1115
- .replace(/^claude-/, '')
1116
- .replace(/^gpt-/, 'GPT-')
1117
- .replace(/^gemini-/, 'Gemini ')
1118
- .replace(/^deepseek-/, 'DeepSeek ')
1119
- .replace(/^grok-/, 'Grok ')
1120
- .replace(/^llama/, 'Llama ')
1121
- .replace(/^qwen-/, 'Qwen ');
1122
- // Truncate if too long
1089
+ .replace(/^deepseek-/, 'DeepSeek ');
1123
1090
  if (label.length > 30) {
1124
1091
  label = label.slice(0, 27) + '...';
1125
1092
  }
@@ -1287,12 +1254,11 @@ class InteractiveShell {
1287
1254
  cmd('/exit') + dim(' Quit'),
1288
1255
  '',
1289
1256
  heading('Quick start'),
1290
- dim(' 1. /key sk-… (or set ANTHROPIC_API_KEY / OPENAI_API_KEY)'),
1257
+ dim(' 1. /key sk-… (or set DEEPSEEK_API_KEY)'),
1291
1258
  dim(' 2. Type any prompt; the agent reads files, edits, runs commands'),
1292
1259
  dim(' 3. Ctrl+C interrupts an in-flight run'),
1293
1260
  '',
1294
1261
  dim('Launch: erosolar (interactive)'),
1295
- dim(' erosolar "task" (interactive, pre-filled with the prompt)'),
1296
1262
  dim('Docs: https://ero.solar/docs | README.md'),
1297
1263
  ];
1298
1264
  this.promptController.setInlinePanel(lines);
@@ -2025,23 +1991,6 @@ class InteractiveShell {
2025
1991
  });
2026
1992
  }
2027
1993
  }
2028
- function parseArgs(argv) {
2029
- const promptTokens = [];
2030
- for (let index = 0; index < argv.length; index += 1) {
2031
- const token = argv[index];
2032
- if (!token) {
2033
- continue;
2034
- }
2035
- // Skip known flags
2036
- if (token.startsWith('--') || token.startsWith('-')) {
2037
- continue;
2038
- }
2039
- promptTokens.push(token);
2040
- }
2041
- return {
2042
- initialPrompt: promptTokens.length ? promptTokens.join(' ').trim() : null,
2043
- };
2044
- }
2045
1994
  // The --profile / -p flag was removed; the only call site passes nothing.
2046
1995
  // We retain the function as a single source of truth for the hardcoded
2047
1996
  // profile name that downstream config (agent prompt, model, rulebook)