cdsa-harness 0.22.4 → 0.22.5
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.
- package/package.json +1 -1
- package/src/builtins.js +1 -1
- package/src/cli.js +6 -1
- package/src/llm.js +9 -0
package/package.json
CHANGED
package/src/builtins.js
CHANGED
package/src/cli.js
CHANGED
|
@@ -297,7 +297,12 @@ async function fetchProviderModels(cfg, query = "") {
|
|
|
297
297
|
try {
|
|
298
298
|
if (cfg.provider === "openrouter") {
|
|
299
299
|
const r = await fetchJson("https://openrouter.ai/api/v1/models");
|
|
300
|
-
|
|
300
|
+
// 하네스는 항상 도구(tools)를 함께 보내므로, 도구를 지원하지 않는 모델은 어차피
|
|
301
|
+
// "No endpoints found that support tool use" 로 실패한다 — 목록에서 미리 제외.
|
|
302
|
+
let ids = (r.data || [])
|
|
303
|
+
.filter((m) => !Array.isArray(m.supported_parameters) || m.supported_parameters.includes("tools"))
|
|
304
|
+
.map((m) => m.id)
|
|
305
|
+
.sort();
|
|
301
306
|
if (q) ids = ids.filter((id) => id.toLowerCase().includes(q));
|
|
302
307
|
return { list: ids, live: true };
|
|
303
308
|
}
|
package/src/llm.js
CHANGED
|
@@ -346,6 +346,15 @@ function safeParse(jsonStr) {
|
|
|
346
346
|
|
|
347
347
|
function httpErrorMessage(status, text) {
|
|
348
348
|
let msg = `API 오류 ${status}: ${trim(text)}`;
|
|
349
|
+
// 도구(tool use) 미지원 모델/엔드포인트 — 모델명 오타 힌트는 오답이므로 여기서 끝낸다.
|
|
350
|
+
if (/tool[ _]use|support tools?/i.test(text)) {
|
|
351
|
+
msg +=
|
|
352
|
+
"\n ↳ 이 모델(또는 이 모델의 제공 엔드포인트)이 도구 호출(tool use)을 지원하지 않아요. " +
|
|
353
|
+
"에이전트 하네스는 파일 도구가 필수라 도구 지원 모델이 필요합니다." +
|
|
354
|
+
"\n ↳ /models 로 다른 모델을 고르세요 — OpenRouter 목록은 도구 지원 모델만 표시됩니다 " +
|
|
355
|
+
"(예: anthropic/claude-sonnet-4.5, openai/gpt-4o-mini).";
|
|
356
|
+
return msg;
|
|
357
|
+
}
|
|
349
358
|
if (status === 404) {
|
|
350
359
|
msg += "\n ↳ 모델 이름을 확인하세요. /model 로 변경 가능. " +
|
|
351
360
|
"OpenRouter 는 'provider/model' 형식이어야 합니다 (예: openai/gpt-4o-mini, anthropic/claude-3.7-sonnet).";
|