@pentoshi/clai 2.0.29 → 2.0.30

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.
@@ -12,7 +12,7 @@ const REPO = "pentoshi007/clai";
12
12
  * in the compiled dist layout). Falls back to a baked constant only if the
13
13
  * file can't be read.
14
14
  */
15
- const FALLBACK_VERSION = "2.0.29";
15
+ const FALLBACK_VERSION = "2.0.30";
16
16
  function resolvePackageVersion() {
17
17
  try {
18
18
  let dir = dirname(fileURLToPath(import.meta.url));
@@ -1,9 +1,18 @@
1
1
  /**
2
2
  * `web.search` registry handler: resolves the active
3
3
  * {@link SearchProviderId}, looks up its API key, dispatches a single
4
- * outbound request (no retry on failure), validates/truncates the hits to
5
- * `maxResults`, and emits one audit-log entry per invocation. Failures
6
- * surface as `ok=false` with a categorical `error.kind` naming the provider.
4
+ * outbound request per provider (no retry of the *same* provider),
5
+ * validates/truncates the hits to `maxResults`, and emits one audit-log
6
+ * entry per attempt. Failures surface as `ok=false` with a categorical
7
+ * `error.kind` naming the provider.
8
+ *
9
+ * DuckDuckGo fallback: DuckDuckGo is the keyless default and regularly
10
+ * returns anti-bot challenges (HTTP 202) or upstream 502/5xx responses on
11
+ * shared or rate-limited networks. When the active provider is DuckDuckGo
12
+ * and it fails, the handler transparently falls back to a keyed provider
13
+ * — Tavily first, then Brave — whenever a key is configured for it. Each
14
+ * fallback is a single attempt against a *different* provider, so the
15
+ * per-provider single-attempt contract (Requirement 6.7) is preserved.
7
16
  *
8
17
  * Provider modules self-register into {@link searchProviders} on import,
9
18
  * so they're eagerly imported here.
@@ -1,9 +1,18 @@
1
1
  /**
2
2
  * `web.search` registry handler: resolves the active
3
3
  * {@link SearchProviderId}, looks up its API key, dispatches a single
4
- * outbound request (no retry on failure), validates/truncates the hits to
5
- * `maxResults`, and emits one audit-log entry per invocation. Failures
6
- * surface as `ok=false` with a categorical `error.kind` naming the provider.
4
+ * outbound request per provider (no retry of the *same* provider),
5
+ * validates/truncates the hits to `maxResults`, and emits one audit-log
6
+ * entry per attempt. Failures surface as `ok=false` with a categorical
7
+ * `error.kind` naming the provider.
8
+ *
9
+ * DuckDuckGo fallback: DuckDuckGo is the keyless default and regularly
10
+ * returns anti-bot challenges (HTTP 202) or upstream 502/5xx responses on
11
+ * shared or rate-limited networks. When the active provider is DuckDuckGo
12
+ * and it fails, the handler transparently falls back to a keyed provider
13
+ * — Tavily first, then Brave — whenever a key is configured for it. Each
14
+ * fallback is a single attempt against a *different* provider, so the
15
+ * per-provider single-attempt contract (Requirement 6.7) is preserved.
7
16
  *
8
17
  * Provider modules self-register into {@link searchProviders} on import,
9
18
  * so they're eagerly imported here.
@@ -84,56 +93,123 @@ export async function webSearch(args, options = {}) {
84
93
  return errorResult(outcome);
85
94
  }
86
95
  }
87
- // Arm the 15-second invocation timeout (Requirement 1.8) and
88
- // propagate any caller-supplied AbortSignal so SIGINT etc. still
89
- // collapse the in-flight request.
96
+ // Resolve the per-invocation timeout (Requirement 1.8).
90
97
  const timeoutMs = options.timeoutMs ?? SEARCH_TIMEOUT_MS;
98
+ // Primary attempt against the active provider. Per Requirement 6.7
99
+ // this is exactly one outbound request with no retry of the *same*
100
+ // provider.
101
+ const primaryOutcome = await attemptProvider(provider, apiKey, trimmedQuery, maxResults, timeoutMs, options.signal);
102
+ void emitAudit(primaryOutcome, trimmedQuery.length);
103
+ if (primaryOutcome.ok)
104
+ return successResult(primaryOutcome);
105
+ // DuckDuckGo is the keyless default and is prone to anti-bot
106
+ // challenges (HTTP 202) and upstream 502/5xx responses on shared or
107
+ // rate-limited networks. When DDG fails and a keyed provider is
108
+ // configured, transparently fall back to it — Tavily first, then
109
+ // Brave — so the agent still receives results instead of a hard
110
+ // failure. Each fallback is a single attempt against a *different*
111
+ // provider, so the per-provider single-attempt invariant is kept.
112
+ //
113
+ // Fallback is skipped when the caller injected a `providerOverride`
114
+ // (unit tests and explicit single-provider dispatch), preserving the
115
+ // single-attempt behavior those paths assert on.
116
+ const fallbackAllowed = options.providerOverride === undefined;
117
+ if (fallbackAllowed && provider.id === "duckduckgo") {
118
+ const fallbackNotes = [];
119
+ let anyKeyConfigured = false;
120
+ for (const candidateId of DDG_FALLBACK_ORDER) {
121
+ const candidate = searchProviders[candidateId];
122
+ if (!candidate)
123
+ continue;
124
+ const candidateKey = options.resolveKey
125
+ ? await options.resolveKey(candidateId)
126
+ : (await getSearchProviderKey(candidateId)).value;
127
+ // No key configured for this candidate → skip silently and try
128
+ // the next one.
129
+ if (!candidateKey || candidateKey.length === 0)
130
+ continue;
131
+ anyKeyConfigured = true;
132
+ const fbOutcome = await attemptProvider(candidate, candidateKey, trimmedQuery, maxResults, timeoutMs, options.signal);
133
+ void emitAudit(fbOutcome, trimmedQuery.length);
134
+ if (fbOutcome.ok)
135
+ return successResult(fbOutcome);
136
+ fallbackNotes.push(`${candidate.displayName}: ${fbOutcome.error?.kind ?? "failed"}`);
137
+ }
138
+ if (primaryOutcome.error) {
139
+ if (fallbackNotes.length > 0) {
140
+ // Every configured fallback also failed — keep DuckDuckGo's
141
+ // error as the primary signal but note the fallback attempts.
142
+ primaryOutcome.error.message += ` Fallback also failed (${fallbackNotes.join("; ")}).`;
143
+ }
144
+ else if (!anyKeyConfigured) {
145
+ // DDG failed and no keyed provider is configured to fall back
146
+ // to. Make the failure actionable (the user's network is
147
+ // likely anti-bot-challenging or rate-limiting DuckDuckGo).
148
+ primaryOutcome.error.message += ` No keyed fallback provider is configured; set one so web.search can recover automatically, e.g. \`clai search-provider tavily\` then \`clai set tavily <KEY>\` (Brave also supported).`;
149
+ }
150
+ }
151
+ }
152
+ return errorResult(primaryOutcome);
153
+ }
154
+ // ---------------------------------------------------------------------------
155
+ // Per-provider attempt
156
+ // ---------------------------------------------------------------------------
157
+ /**
158
+ * Ordered list of keyed providers `web.search` falls back to when the
159
+ * keyless DuckDuckGo default fails. Tavily is preferred over Brave per
160
+ * the operator request; a provider is only attempted when a key is
161
+ * actually configured for it.
162
+ */
163
+ const DDG_FALLBACK_ORDER = ["tavily", "brave"];
164
+ /**
165
+ * Dispatch a single search request against one provider, arming the
166
+ * per-invocation timeout and propagating any caller-supplied
167
+ * `AbortSignal`. Never throws — every failure mode is mapped to a
168
+ * `WebSearchOutcome` with `ok=false` and a categorical `error.kind`.
169
+ *
170
+ * This is the unit of "exactly one outbound request" (Requirement 6.7);
171
+ * cross-provider fallback in {@link webSearch} composes multiple
172
+ * single-attempt calls against *different* providers.
173
+ */
174
+ async function attemptProvider(provider, apiKey, query, maxResults, timeoutMs, callerSignal) {
91
175
  const controller = new AbortController();
92
176
  const onCallerAbort = () => controller.abort();
93
- if (options.signal) {
94
- if (options.signal.aborted)
177
+ if (callerSignal) {
178
+ if (callerSignal.aborted)
95
179
  controller.abort();
96
180
  else
97
- options.signal.addEventListener("abort", onCallerAbort);
181
+ callerSignal.addEventListener("abort", onCallerAbort);
98
182
  }
99
183
  const timer = setTimeout(() => controller.abort(), timeoutMs);
100
184
  // Do not pin the event loop on the timeout.
101
185
  timer.unref?.();
102
- // Dispatch (Requirement 6.7: exactly one attempt, no retry).
103
186
  let raw;
104
187
  try {
105
- raw = await provider.search(trimmedQuery, maxResults, { ...(apiKey !== undefined ? { apiKey } : {}) }, controller.signal);
188
+ raw = await provider.search(query, maxResults, { ...(apiKey !== undefined ? { apiKey } : {}) }, controller.signal);
106
189
  }
107
190
  catch (err) {
108
- clearTimeout(timer);
109
- if (options.signal)
110
- options.signal.removeEventListener("abort", onCallerAbort);
111
- const outcome = controller.signal.aborted
191
+ return controller.signal.aborted
112
192
  ? buildTimeoutOutcome(provider.id, timeoutMs)
113
193
  : buildNetworkOutcome(provider.id, err);
114
- void emitAudit(outcome, trimmedQuery.length);
115
- return errorResult(outcome);
116
194
  }
117
195
  finally {
118
196
  clearTimeout(timer);
119
- if (options.signal)
120
- options.signal.removeEventListener("abort", onCallerAbort);
197
+ if (callerSignal)
198
+ callerSignal.removeEventListener("abort", onCallerAbort);
121
199
  }
122
200
  // Map provider HTTP status to a categorical WebSearchErrorKind.
123
201
  const httpError = classifyHttpStatus(provider.id, raw);
124
202
  if (httpError) {
125
- const outcome = {
203
+ return {
126
204
  ok: false,
127
205
  provider: provider.id,
128
206
  results: [],
129
207
  error: httpError,
130
208
  };
131
- void emitAudit(outcome, trimmedQuery.length);
132
- return errorResult(outcome);
133
209
  }
134
210
  // 2xx with parseError surfaces as a `parse` failure (Requirement 6.5).
135
211
  if (raw.parseError) {
136
- const outcome = {
212
+ return {
137
213
  ok: false,
138
214
  provider: provider.id,
139
215
  results: [],
@@ -143,8 +219,6 @@ export async function webSearch(args, options = {}) {
143
219
  message: `${provider.displayName}: response parse error (${raw.parseError})`,
144
220
  },
145
221
  };
146
- void emitAudit(outcome, trimmedQuery.length);
147
- return errorResult(outcome);
148
222
  }
149
223
  // Filter and validate hits per Requirement 7.3, then truncate.
150
224
  const filtered = [];
@@ -156,13 +230,11 @@ export async function webSearch(args, options = {}) {
156
230
  continue;
157
231
  filtered.push(normalised);
158
232
  }
159
- const outcome = {
233
+ return {
160
234
  ok: true,
161
235
  provider: provider.id,
162
236
  results: filtered,
163
237
  };
164
- void emitAudit(outcome, trimmedQuery.length);
165
- return successResult(outcome);
166
238
  }
167
239
  /**
168
240
  * Synchronous validation of {@link WebSearchArgs} per Requirements 1.1,
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/tools/web/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/tools/web/search.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pentoshi/clai",
3
- "version": "2.0.29",
3
+ "version": "2.0.30",
4
4
  "description": "A fast, cross-platform AI CLI assistant with ask and agent modes for shell tasks, file operations, and cybersecurity workflows.",
5
5
  "type": "module",
6
6
  "license": "MIT",