@qwen-code/arena-agent 0.0.9-dev.21 → 0.0.9-dev.23

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 (53) hide show
  1. package/.env.example +9 -5
  2. package/README.md +20 -7
  3. package/dist/agent.js +32 -7
  4. package/dist/agent.js.map +1 -1
  5. package/dist/anthropic.js +13 -7
  6. package/dist/anthropic.js.map +1 -1
  7. package/dist/audit.d.ts +14 -0
  8. package/dist/audit.js +31 -0
  9. package/dist/audit.js.map +1 -0
  10. package/dist/brave-search.d.ts +4 -0
  11. package/dist/brave-search.js +48 -3
  12. package/dist/brave-search.js.map +1 -1
  13. package/dist/cli.js +6 -4
  14. package/dist/cli.js.map +1 -1
  15. package/dist/code-cli.js +0 -0
  16. package/dist/config.d.ts +2 -0
  17. package/dist/config.js +3 -2
  18. package/dist/config.js.map +1 -1
  19. package/dist/dashscope.d.ts +5 -0
  20. package/dist/dashscope.js +55 -0
  21. package/dist/dashscope.js.map +1 -0
  22. package/dist/fetch-page/aparat.d.ts +30 -0
  23. package/dist/fetch-page/aparat.js +209 -0
  24. package/dist/fetch-page/aparat.js.map +1 -0
  25. package/dist/fetch-page/json-path.d.ts +12 -0
  26. package/dist/fetch-page/json-path.js +111 -0
  27. package/dist/fetch-page/json-path.js.map +1 -0
  28. package/dist/fetch-page/sites.d.ts +26 -0
  29. package/dist/fetch-page/sites.js +39 -0
  30. package/dist/fetch-page/sites.js.map +1 -0
  31. package/dist/fetch-page/text.d.ts +5 -0
  32. package/dist/fetch-page/text.js +38 -0
  33. package/dist/fetch-page/text.js.map +1 -0
  34. package/dist/fetch-page/types.d.ts +17 -0
  35. package/dist/fetch-page/types.js +3 -0
  36. package/dist/fetch-page/types.js.map +1 -0
  37. package/dist/fetch-page/youtube.d.ts +35 -0
  38. package/dist/fetch-page/youtube.js +282 -0
  39. package/dist/fetch-page/youtube.js.map +1 -0
  40. package/dist/image-input-fallback.d.ts +9 -0
  41. package/dist/image-input-fallback.js +47 -0
  42. package/dist/image-input-fallback.js.map +1 -0
  43. package/dist/provider.js +22 -11
  44. package/dist/provider.js.map +1 -1
  45. package/dist/tools.d.ts +2 -1
  46. package/dist/tools.js +77 -58
  47. package/dist/tools.js.map +1 -1
  48. package/dist/types.d.ts +7 -5
  49. package/dist/web-search.d.ts +5 -0
  50. package/dist/web-search.js +465 -0
  51. package/dist/web-search.js.map +1 -0
  52. package/package.json +1 -1
  53. package/dist/web/app.d.ts +0 -1
package/.env.example CHANGED
@@ -62,12 +62,16 @@ ARENA_HARNESS_MODE=arena
62
62
  # ARENA_EXTRA_BODY={"enable_thinking":true}
63
63
  # Transient model failures use full-jitter exponential backoff. The retry delay
64
64
  # is capped by ARENA_MODEL_RETRY_MAX_MS and honors Retry-After when present.
65
- # ARENA_MODEL_MAX_RETRIES=5
65
+ # ARENA_MODEL_MAX_RETRIES=10
66
66
  # ARENA_MODEL_RETRY_BASE_MS=1000
67
- # ARENA_MODEL_RETRY_MAX_MS=30000
67
+ # ARENA_MODEL_RETRY_MAX_MS=120000
68
68
  # A stream that stays open but delivers no bytes for this long is aborted and
69
69
  # retried like a network fault (0 disables). Some gateways stall silently.
70
70
  # ARENA_MODEL_STREAM_IDLE_TIMEOUT_MS=300000
71
+ # Explicit main-model media capability overrides. When image support resolves to
72
+ # false, the optional fallback model converts Arena read_file images to text.
73
+ # ARENA_MODEL_SUPPORTS_IMAGE_INPUT=false
74
+ # ARENA_IMAGE_INPUT_FALLBACK_MODEL=qwen3.7-plus
71
75
 
72
76
  # Optional headless ask_user delegation. When enabled, `arena -p` sends the
73
77
  # current questions plus a serialized ATIF trajectory to this JSON endpoint.
@@ -97,19 +101,19 @@ ARENA_HARNESS_MODE=arena
97
101
  # defaults to ~/.arena so runs never write into the task workspace.
98
102
  # ARENA_HOME=~/.arena
99
103
 
100
- # Brave LLM Context search through the Routify gateway.
104
+ # Brave web and image search through the Routify gateway.
101
105
  ROUTIFY_API_KEY=
102
106
  # ROUTIFY_WEB_SEARCH_URL=https://routify-pub.alibaba-inc.com/protocol/compatible-mode/res/v1/llm/context
107
+ # ROUTIFY_IMAGE_SEARCH_URL=https://routify-pub.alibaba-inc.com/protocol/brave/res/v1/images/search
103
108
  # ARENA_WEB_SEARCH_MODEL=brave.llm-context
104
109
  # CODE_HARNESS_WEB_SEARCH_MODEL=brave.llm-context
105
110
  # Optional fetch_page/web_fetch path: Firecrawl first, then Jina Reader.
106
111
  # CODE_HARNESS_ROUTIFY_WEB_FETCH_ENABLED=false
107
112
 
108
- # DashScope image search, image generation, and speech generation.
113
+ # DashScope image generation and speech generation.
109
114
  DASHSCOPE_API_KEY=
110
115
  # Optional: a workspace-specific host, with or without /api/v1.
111
116
  # DASHSCOPE_API_BASE=https://your-workspace.cn-beijing.maas.aliyuncs.com
112
- # ARENA_IMAGE_SEARCH_MODEL=qwen3.7-plus
113
117
  # ARENA_IMAGE_MODEL=qwen-image-2.0-pro
114
118
  # ARENA_IMAGE_SIZE=2048*2048
115
119
  # ARENA_SPEECH_MODEL=qwen-audio-3.0-tts-flash
package/README.md CHANGED
@@ -207,11 +207,11 @@ ARENA_DISALLOWED_TOOLS=["bash","write_file"]
207
207
  参数覆盖,也会原样写入 `history.json` 的
208
208
  `metadata.parameters.extra_body`。
209
209
 
210
- `ROUTIFY_API_KEY` 供 `web_search` 使用;开启
210
+ `ROUTIFY_API_KEY` 供 `web_search` 和 `image_search` 使用;开启
211
211
  `CODE_HARNESS_ROUTIFY_WEB_FETCH_ENABLED` 后,Arena 的 `fetch_page` 和 Code Arena 的
212
212
  `web_fetch` 也复用该密钥,通过 Routify 先调用 Firecrawl,失败时回退到
213
213
  Jina Reader。
214
- `DASHSCOPE_API_KEY` 供图片搜索、图片生成和语音工具使用。这些工具密钥都不会
214
+ `DASHSCOPE_API_KEY` 供图片生成和语音工具使用。这些工具密钥都不会
215
215
  作为主模型连接的密钥。
216
216
 
217
217
  Harness 会在每次模型调用前估算消息、reasoning、工具 schema 和图片占用;达到
@@ -238,7 +238,8 @@ assistant 消息的 `usage` 字段(`history.json` 与事件流中均可见)
238
238
  见。不支持 `stream_options` 的服务可通过 `ARENA_EXTRA_BODY` 覆盖该参数。
239
239
 
240
240
  模型请求遇到网络错误、HTTP 408/409/429 或 5xx 时会自动重试,默认最多重试
241
- 5 次。没有 `Retry-After` 时使用带随机抖动的指数退避;可通过
241
+ 10 次。没有 `Retry-After` 时使用带随机抖动的指数退避,单次等待默认最多
242
+ 2 分钟;可通过
242
243
  `ARENA_MODEL_MAX_RETRIES`、`ARENA_MODEL_RETRY_BASE_MS` 和
243
244
  `ARENA_MODEL_RETRY_MAX_MS` 调整。设 `ARENA_MODEL_MAX_RETRIES=0` 可关闭。
244
245
 
@@ -313,6 +314,13 @@ Arena 还维护一份有顺序的模型输入模态表,在第一次 HTTP 调
313
314
  未知模型默认尝试发送,具体路由能力仍以端点返回为准。可以分别用
314
315
  `ARENA_MODEL_SUPPORTS_IMAGE_INPUT`、`ARENA_MODEL_SUPPORTS_VIDEO_INPUT`、
315
316
  `ARENA_MODEL_SUPPORTS_AUDIO_INPUT` 显式覆盖;覆盖值优先于内置表。
317
+ 当主模型被明确判定为不支持图片时,可设置
318
+ `ARENA_IMAGE_INPUT_FALLBACK_MODEL`,让普通 Arena 的图片 `read_file` 先由该模型
319
+ 转换为文字;主模型支持图片、模型未知或 Code Arena 模式均不触发此 fallback。
320
+ fallback 不继承 `ARENA_EXTRA_BODY` 或主模型生成参数;原生 Anthropic Messages
321
+ 因协议要求会单独使用 `max_tokens: 16384`。
322
+ 同一条件下,用户直接附加的图片不会发送给主模型;已有附件文件列表会保留,并提示
323
+ 模型调用 `read_file` 获取 fallback 生成的文字版本。
316
324
 
317
325
  输出事件及 JSON 结果中的 `session_id` 就是路径里的 `<sessionId>`。
318
326
  `history.json` 的 `messages` 是只追加的原始轨迹;上下文压缩只影响发送给模型的
@@ -693,6 +701,12 @@ snippets,仅在没有 grounding 内容时回退到来源摘要。三个 Code A
693
701
  token 预算 512/1280/1536。
694
702
  可用 `ROUTIFY_WEB_SEARCH_URL` 和 `ARENA_WEB_SEARCH_MODEL` 覆盖默认值。
695
703
 
704
+ `image_search` 使用 Routify 网关提供的 Brave Images Search,同样读取
705
+ `ROUTIFY_API_KEY`,通过 `X-Subscription-Token` 发送 GET 请求。默认接口为
706
+ `https://routify-pub.alibaba-inc.com/protocol/brave/res/v1/images/search`,可用
707
+ `ROUTIFY_IMAGE_SEARCH_URL` 覆盖。实现优先下载 Brave 返回的原图地址,原图不可用
708
+ 时回退到 Brave 代理缩略图,并保持既有工具结果格式和工作区文件命名不变。
709
+
696
710
  Arena 的 `fetch_page` 和 Code Arena 的 `web_fetch` 默认仍使用本地抓取与正文
697
711
  解析。设置 `CODE_HARNESS_ROUTIFY_WEB_FETCH_ENABLED=true` 后,两者改走 Routify 的
698
712
  `POST /protocol/search/tools`:先使用 `readpage-firecrawl-inner`,调用失败、HTTP
@@ -700,8 +714,8 @@ Arena 的 `fetch_page` 和 Code Arena 的 `web_fetch` 默认仍使用本地抓
700
714
  错误。`fetch_page` 仍按 8000 字符分块并缓存同一 URL 的后续 chunk。认证复用
701
715
  `ROUTIFY_API_KEY`。
702
716
 
703
- `image_search`、`generate_image`、`generate_speech` 继续使用阿里云百炼
704
- DashScope,并从工作区 `.env` 读取 `DASHSCOPE_API_KEY`。默认调用公共北京地域
717
+ `generate_image`、`generate_speech` 继续使用阿里云百炼 DashScope,并从工作区
718
+ `.env` 读取 `DASHSCOPE_API_KEY`。默认调用公共北京地域
705
719
  地址;若使用业务空间专属域名或新加坡地域,可设置 `DASHSCOPE_API_BASE`
706
720
  (可带或不带 `/api/v1`)。
707
721
 
@@ -718,8 +732,7 @@ DashScope,并从工作区 `.env` 读取 `DASHSCOPE_API_KEY`。默认调用公
718
732
  内容继续发送给模型。所有工具结果另有 1,000,000 字符的最终兜底。当前不做
719
733
  OCR,扫描版 PDF 只会返回无可提取文字的提示。
720
734
 
721
- 可用 `ARENA_IMAGE_SEARCH_MODEL`、`ARENA_IMAGE_MODEL`、
722
- `ARENA_SPEECH_MODEL` 覆盖 DashScope 默认模型。图片生成结果和
735
+ 可用 `ARENA_IMAGE_MODEL`、`ARENA_SPEECH_MODEL` 覆盖 DashScope 默认模型。图片生成结果和
723
736
  搜索到的图片会立即下载到工作区;每次图片搜索的结果按生产命名保存为
724
737
  `image-search/<query slug>-<序号>.<扩展名>`,并作为可预览文件显示在 Web UI。
725
738
  语音生成目前按 DashScope HTTP API 支持 `.mp3`、`.wav` 和 `.opus` 输出。
package/dist/agent.js CHANGED
@@ -55,6 +55,14 @@ function isRetryableStreamError(error) {
55
55
  const code = errorCode(error);
56
56
  return code !== undefined && retryableStreamCodes.has(code);
57
57
  }
58
+ function imageReadFileFallbackNotice() {
59
+ return ("<arena-system-message>\n" +
60
+ "The image content in this message was not delivered directly because " +
61
+ "the configured model does not support image input. Use read_file to " +
62
+ "inspect each attached image file listed above. read_file will use the " +
63
+ "configured image fallback model and return a textual representation.\n" +
64
+ "</arena-system-message>");
65
+ }
58
66
  function unsupportedMediaNotice(mediaTypes) {
59
67
  const label = mediaTypes.join(", ") || "media";
60
68
  return ("<arena-system-message>\n" +
@@ -64,24 +72,36 @@ function unsupportedMediaNotice(mediaTypes) {
64
72
  "current model; do not infer or invent its contents.\n" +
65
73
  "</arena-system-message>");
66
74
  }
67
- function replaceUnsupportedMedia(messages, mediaTypes) {
75
+ function replaceUnsupportedMedia(messages, mediaTypes, imageReadFileFallback = false) {
68
76
  const unsupported = new Set(mediaTypes);
69
77
  let replaced = 0;
70
78
  for (const message of messages) {
71
79
  if (message.role !== "user" || !Array.isArray(message.content))
72
80
  continue;
81
+ const removedMediaTypes = new Set();
73
82
  const textParts = message.content.filter((part) => {
74
83
  const partTypes = contentPartMediaTypes(part);
75
84
  if (partTypes.some((type) => unsupported.has(type))) {
85
+ for (const type of partTypes) {
86
+ if (unsupported.has(type))
87
+ removedMediaTypes.add(type);
88
+ }
76
89
  replaced += 1;
77
90
  return false;
78
91
  }
79
92
  return true;
80
93
  });
81
94
  if (textParts.length !== message.content.length) {
95
+ const useImageFallback = imageReadFileFallback && removedMediaTypes.has("image");
96
+ const genericMediaTypes = [...removedMediaTypes].filter((type) => type !== "image" || !useImageFallback);
82
97
  message.content = [
83
98
  ...textParts,
84
- { text: unsupportedMediaNotice(mediaTypes) },
99
+ ...(genericMediaTypes.length
100
+ ? [{ text: unsupportedMediaNotice(genericMediaTypes) }]
101
+ : []),
102
+ ...(useImageFallback
103
+ ? [{ text: imageReadFileFallbackNotice() }]
104
+ : []),
85
105
  ];
86
106
  }
87
107
  }
@@ -103,9 +123,13 @@ function preflightUnsupportedMedia(config, messages) {
103
123
  }
104
124
  }
105
125
  }
106
- return present.size
107
- ? replaceUnsupportedMedia(messages, [...present])
108
- : 0;
126
+ if (!present.size)
127
+ return 0;
128
+ const mediaTypes = [...present];
129
+ const imageReadFileFallback = mediaTypes.includes("image") &&
130
+ Boolean(config.imageInputFallbackModel) &&
131
+ !isCodeArenaMode(config.mode);
132
+ return replaceUnsupportedMedia(messages, mediaTypes, imageReadFileFallback);
109
133
  }
110
134
  function completeInterruptedToolCalls(messages) {
111
135
  const completed = [];
@@ -210,6 +234,7 @@ export class Agent {
210
234
  this.tools =
211
235
  options.tools ||
212
236
  new ToolExecutor(config, {
237
+ modelClient: this.client,
213
238
  signal: options.signal,
214
239
  askUserHandler: options.askUserHandler,
215
240
  workspaceContext: this.workspaceContext,
@@ -398,7 +423,7 @@ export class Agent {
398
423
  // before the first HTTP request. The lossless trajectory still retains the
399
424
  // original content, and route-specific rejections keep the runtime fallback.
400
425
  preflightUnsupportedMedia(this.config, messages);
401
- const maxRetries = Math.max(0, Math.floor(this.config.modelMaxRetries ?? 5));
426
+ const maxRetries = Math.max(0, Math.floor(this.config.modelMaxRetries ?? 10));
402
427
  let multimodalFallbackApplied = false;
403
428
  for (let attempt = 0;; attempt += 1) {
404
429
  const contentParts = [];
@@ -531,7 +556,7 @@ export class Agent {
531
556
  }
532
557
  async retryBackoff(attempt) {
533
558
  const base = Math.max(0, this.config.modelRetryBaseMs ?? 1000);
534
- const maximum = Math.max(0, this.config.modelRetryMaxMs ?? 30000);
559
+ const maximum = Math.max(0, this.config.modelRetryMaxMs ?? 120_000);
535
560
  const exponential = Math.min(maximum, base * 2 ** Math.min(attempt, 30));
536
561
  const wait = Math.floor(exponential * Math.random());
537
562
  if (wait <= 0)
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/anthropic.js CHANGED
@@ -1,5 +1,9 @@
1
- const ephemeralCacheControl = { type: "ephemeral" };
1
+ const hourCacheControl = { type: "ephemeral", ttl: "1h" };
2
2
  const dataUriPattern = /^data:([^;,]+);base64,(.+)$/s;
3
+ // Native Anthropic Messages has no provider default for max_tokens: the field
4
+ // is required. Image fallback requests otherwise omit generation controls, so
5
+ // give only this protocol path an independent, non-configurable output limit.
6
+ const anthropicFallbackMaxTokens = 16_384;
3
7
  // Anthropic replaced fixed thinking budgets with adaptive thinking starting
4
8
  // with Opus/Sonnet 4.6. Keep older Claude models and non-Anthropic Messages
5
9
  // gateways on the established manual shape; those gateways commonly emulate
@@ -131,7 +135,7 @@ export function anthropicMessages(messages, includeThinking) {
131
135
  continue;
132
136
  const lastUserBlock = message.content.at(-1);
133
137
  if (lastUserBlock)
134
- lastUserBlock.cache_control = ephemeralCacheControl;
138
+ lastUserBlock.cache_control = hourCacheControl;
135
139
  break;
136
140
  }
137
141
  return {
@@ -140,7 +144,7 @@ export function anthropicMessages(messages, includeThinking) {
140
144
  {
141
145
  type: "text",
142
146
  text: systemParts.join("\n\n"),
143
- cache_control: ephemeralCacheControl,
147
+ cache_control: hourCacheControl,
144
148
  },
145
149
  ]
146
150
  : undefined,
@@ -149,10 +153,12 @@ export function anthropicMessages(messages, includeThinking) {
149
153
  }
150
154
  export function anthropicRequestBody(request, model) {
151
155
  const adaptiveThinking = request.enableThinking && usesAdaptiveThinking(model);
152
- const { system, messages } = anthropicMessages(request.messages, request.enableThinking);
156
+ const { system, messages } = anthropicMessages(request.messages, Boolean(request.enableThinking));
157
+ const maxTokens = request.maxTokens ??
158
+ (request.useProviderDefaults ? anthropicFallbackMaxTokens : undefined);
153
159
  const body = {
154
160
  model,
155
- max_tokens: request.maxTokens,
161
+ ...(maxTokens !== undefined ? { max_tokens: maxTokens } : {}),
156
162
  messages,
157
163
  stream: true,
158
164
  };
@@ -171,7 +177,7 @@ export function anthropicRequestBody(request, model) {
171
177
  : {}),
172
178
  input_schema: tool.function.parameters,
173
179
  ...(index === request.tools.length - 1
174
- ? { cache_control: ephemeralCacheControl }
180
+ ? { cache_control: hourCacheControl }
175
181
  : {}),
176
182
  }));
177
183
  let choice = request.toolChoice === "none" ? "none" : "auto";
@@ -191,7 +197,7 @@ export function anthropicRequestBody(request, model) {
191
197
  ? { type: "adaptive" }
192
198
  : { type: "enabled", budget_tokens: request.thinkingBudget };
193
199
  }
194
- else {
200
+ else if (request.temperature !== undefined) {
195
201
  body.temperature = request.temperature;
196
202
  }
197
203
  return body;
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../src/anthropic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../src/anthropic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Non-secret description of an endpoint: the origin is recorded as-is, while
3
+ * the path is reduced to a hash so that same-origin routes stay distinguishable
4
+ * without writing userinfo, tokens, query strings or fragments to disk.
5
+ */
6
+ export declare function describeUrlForAudit(value: string): {
7
+ origin: string;
8
+ fingerprint: string | null;
9
+ };
10
+ /**
11
+ * Hash of an already normalized, credential-free descriptor. Use it when two
12
+ * runs must be distinguishable without recording the value itself.
13
+ */
14
+ export declare function fingerprintForAudit(value: string): string;
package/dist/audit.js ADDED
@@ -0,0 +1,31 @@
1
+ import { createHash } from "node:crypto";
2
+ /**
3
+ * Non-secret description of an endpoint: the origin is recorded as-is, while
4
+ * the path is reduced to a hash so that same-origin routes stay distinguishable
5
+ * without writing userinfo, tokens, query strings or fragments to disk.
6
+ */
7
+ export function describeUrlForAudit(value) {
8
+ try {
9
+ const parsed = new URL(value);
10
+ if (parsed.origin === "null") {
11
+ return { origin: "invalid-url", fingerprint: null };
12
+ }
13
+ return {
14
+ origin: parsed.origin,
15
+ fingerprint: createHash("sha256")
16
+ .update(parsed.origin + parsed.pathname)
17
+ .digest("hex"),
18
+ };
19
+ }
20
+ catch {
21
+ return { origin: "invalid-url", fingerprint: null };
22
+ }
23
+ }
24
+ /**
25
+ * Hash of an already normalized, credential-free descriptor. Use it when two
26
+ * runs must be distinguishable without recording the value itself.
27
+ */
28
+ export function fingerprintForAudit(value) {
29
+ return createHash("sha256").update(value).digest("hex");
30
+ }
31
+ //# sourceMappingURL=audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAI/C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACtD,CAAC;QACD,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC;iBAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;iBACvC,MAAM,CAAC,KAAK,CAAC;SACjB,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC"}
@@ -3,4 +3,8 @@ export interface BraveWebSearchOptions {
3
3
  profile?: "arena" | "code-arena";
4
4
  signal?: AbortSignal;
5
5
  }
6
+ export interface BraveImageSearchOptions {
7
+ signal?: AbortSignal;
8
+ }
9
+ export declare function executeBraveImageSearch(query: string, count: number, options?: BraveImageSearchOptions): Promise<Record<string, unknown>>;
6
10
  export declare function executeBraveWebSearch(query: string, depth: string, options?: BraveWebSearchOptions): Promise<Record<string, unknown>>;
@@ -7,10 +7,10 @@ function record(value) {
7
7
  function stringValue(value) {
8
8
  return typeof value === "string" ? value : "";
9
9
  }
10
- function webSearchApiKey() {
10
+ function routifyApiKey() {
11
11
  const apiKey = process.env.ROUTIFY_API_KEY;
12
12
  if (!apiKey) {
13
- throw new Error("Brave web_search through Routify requires ROUTIFY_API_KEY");
13
+ throw new Error("Routify search tools require ROUTIFY_API_KEY");
14
14
  }
15
15
  return apiKey;
16
16
  }
@@ -18,6 +18,10 @@ function webSearchUrl() {
18
18
  return (process.env.ROUTIFY_WEB_SEARCH_URL?.trim() ||
19
19
  "https://routify-pub.alibaba-inc.com/protocol/compatible-mode/res/v1/llm/context");
20
20
  }
21
+ function imageSearchUrl() {
22
+ return (process.env.ROUTIFY_IMAGE_SEARCH_URL?.trim() ||
23
+ "https://routify-pub.alibaba-inc.com/protocol/brave/res/v1/images/search");
24
+ }
21
25
  function retryableStatus(status) {
22
26
  return status === 408 || status === 409 || status === 429 || status >= 500;
23
27
  }
@@ -115,6 +119,47 @@ function pageAge(item) {
115
119
  }
116
120
  return undefined;
117
121
  }
122
+ export async function executeBraveImageSearch(query, count, options = {}) {
123
+ const url = new URL(imageSearchUrl());
124
+ url.searchParams.set("q", query);
125
+ url.searchParams.set("count", String(count));
126
+ const headers = {
127
+ accept: "application/json",
128
+ "content-type": "application/json",
129
+ "x-subscription-token": routifyApiKey(),
130
+ };
131
+ let response;
132
+ for (let attempt = 0; attempt <= 3; attempt += 1) {
133
+ response = await fetch(url, {
134
+ method: "GET",
135
+ headers,
136
+ signal: options.signal,
137
+ });
138
+ if (response.ok)
139
+ break;
140
+ if (!retryableStatus(response.status) || attempt === 3)
141
+ break;
142
+ const wait = retryDelayMilliseconds(response, attempt);
143
+ await response.body?.cancel();
144
+ await delay(wait, undefined, { signal: options.signal });
145
+ }
146
+ if (!response)
147
+ throw new Error("Brave image_search returned no response");
148
+ const rawBody = await response.text();
149
+ let payload = {};
150
+ try {
151
+ payload = record(JSON.parse(rawBody));
152
+ }
153
+ catch {
154
+ if (response.ok) {
155
+ throw new Error("Brave image_search returned malformed JSON");
156
+ }
157
+ }
158
+ if (!response.ok) {
159
+ throw new Error(`Brave image_search failed (${response.status} ${response.statusText}): ${responseDetail(payload, rawBody).slice(0, 2000)}`);
160
+ }
161
+ return payload;
162
+ }
118
163
  export async function executeBraveWebSearch(query, depth, options = {}) {
119
164
  const codeArena = options.profile === "code-arena";
120
165
  const resultLimit = codeArena
@@ -128,7 +173,7 @@ export async function executeBraveWebSearch(query, depth, options = {}) {
128
173
  : { "1": 512, "2": 552, "3": 2048 }[depth] || 552;
129
174
  const model = options.model || process.env.ARENA_WEB_SEARCH_MODEL || "brave.llm-context";
130
175
  const headers = {
131
- authorization: webSearchApiKey(),
176
+ authorization: routifyApiKey(),
132
177
  "content-type": "application/json",
133
178
  };
134
179
  const body = JSON.stringify({
@@ -1 +1 @@
1
- {"version":3,"file":"brave-search.js","sourceRoot":"","sources":["../src/brave-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brave-search.js","sourceRoot":"","sources":["../src/brave-search.ts"],"names":[],"mappings":"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"}