@code-yeongyu/senpi-ai 2026.7.30 → 2026.7.31-2
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/dist/api/anthropic-messages.d.ts.map +1 -1
- package/dist/api/anthropic-messages.js +10 -15
- package/dist/api/anthropic-messages.js.map +1 -1
- package/dist/api/azure-openai-responses.js +2 -2
- package/dist/api/azure-openai-responses.js.map +1 -1
- package/dist/api/openai-codex-responses.js +2 -2
- package/dist/api/openai-codex-responses.js.map +1 -1
- package/dist/api/openai-completions.js +2 -2
- package/dist/api/openai-completions.js.map +1 -1
- package/dist/api/openai-responses.js +2 -2
- package/dist/api/openai-responses.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/models.d.ts +1 -0
- package/dist/models.d.ts.map +1 -1
- package/dist/models.js +69 -19
- package/dist/models.js.map +1 -1
- package/dist/providers/data/.manifest.json +1 -1
- package/dist/providers/data/amazon-bedrock.json +1 -1
- package/dist/providers/data/azure-openai-responses.json +1 -1
- package/dist/providers/data/huggingface.json +1 -1
- package/dist/providers/data/openai.json +1 -1
- package/dist/providers/data/opencode-go.json +1 -1
- package/dist/providers/data/opencode.json +1 -1
- package/dist/providers/data/openrouter.json +1 -1
- package/dist/providers/data/vercel-ai-gateway.json +1 -1
- package/dist/tool-call-middleware/index.d.ts +2 -1
- package/dist/tool-call-middleware/index.d.ts.map +1 -1
- package/dist/tool-call-middleware/index.js +13 -0
- package/dist/tool-call-middleware/index.js.map +1 -1
- package/dist/tool-call-middleware/protocols/kimi-xtml/recovery-stream.js +2 -2
- package/dist/tool-call-middleware/protocols/kimi-xtml/recovery-stream.js.map +1 -1
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery-stream.d.ts +3 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery-stream.d.ts.map +1 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery-stream.js +29 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery-stream.js.map +1 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery.d.ts +3 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery.d.ts.map +1 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery.js +82 -0
- package/dist/tool-call-middleware/protocols/kimi-xtml/thinking-recovery.js.map +1 -0
- package/dist/types.d.ts +5 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/unavailable-tool-text.d.ts +3 -0
- package/dist/utils/unavailable-tool-text.d.ts.map +1 -0
- package/dist/utils/unavailable-tool-text.js +36 -0
- package/dist/utils/unavailable-tool-text.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-messages.d.ts","sourceRoot":"","sources":["../../src/api/anthropic-messages.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAU1C,OAAO,KAAK,EAWX,mBAAmB,EAEnB,cAAc,EACd,aAAa,EAOb,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"anthropic-messages.d.ts","sourceRoot":"","sources":["../../src/api/anthropic-messages.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAU1C,OAAO,KAAK,EAWX,mBAAmB,EAEnB,cAAc,EACd,aAAa,EAOb,MAAM,aAAa,CAAC;AAgCrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AA6JlE,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAE1E,MAAM,MAAM,wBAAwB,GAAG,YAAY,GAAG,SAAS,CAAC;AAoEhE,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACtD;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,EAAE,wBAAwB,CAAC;IAC3C;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtE;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;CACnB;AAuzBD,eAAO,MAAM,MAAM,EAAE,cAAc,CAAC,oBAAoB,EAAE,gBAAgB,CAqYzE,CAAC;AA0FF,eAAO,MAAM,YAAY,EAAE,cAAc,CAAC,oBAAoB,EAAE,mBAAmB,CA2ClF,CAAC"}
|
|
@@ -13,6 +13,7 @@ import { sanitizeSurrogates } from "../utils/sanitize-unicode.js";
|
|
|
13
13
|
import { applyServerFallbackAbort, parseServerFallbackReceipt, parseStickyFallbackReceipt, } from "../utils/server-fallback-receipt.js";
|
|
14
14
|
import { normalizeToolCallId } from "../utils/tool-call-id.js";
|
|
15
15
|
import { isForcedToolChoiceUnsupportedError, omitToolChoiceParam } from "../utils/tool-choice-fallback.js";
|
|
16
|
+
import { demotedToolCallText, demotedToolResultText } from "../utils/unavailable-tool-text.js";
|
|
16
17
|
import { resolveCloudflareBaseUrl } from "./cloudflare.js";
|
|
17
18
|
import { resolveJsonSchemaStrictSampling } from "./constrained-sampling.js";
|
|
18
19
|
import { buildCopilotDynamicHeaders, hasCopilotVisionInput } from "./github-copilot-headers.js";
|
|
@@ -571,6 +572,8 @@ function demoteUnavailableToolReferences(params) {
|
|
|
571
572
|
if (demotedCallNames.size === 0 && danglingReferenceNames.size === 0)
|
|
572
573
|
return params;
|
|
573
574
|
let changed = false;
|
|
575
|
+
const availableToolNames = [...definedNames];
|
|
576
|
+
const seenDemotedCallNames = new Set();
|
|
574
577
|
const rewrittenMessages = [];
|
|
575
578
|
for (const message of messages) {
|
|
576
579
|
if (!Array.isArray(message.content)) {
|
|
@@ -584,7 +587,12 @@ function demoteUnavailableToolReferences(params) {
|
|
|
584
587
|
const demotedName = demotedCallNames.get(block.id);
|
|
585
588
|
if (demotedName !== undefined) {
|
|
586
589
|
messageChanged = true;
|
|
587
|
-
|
|
590
|
+
const firstOccurrence = !seenDemotedCallNames.has(demotedName);
|
|
591
|
+
seenDemotedCallNames.add(demotedName);
|
|
592
|
+
content.push({
|
|
593
|
+
type: "text",
|
|
594
|
+
text: demotedToolCallText(demotedName, availableToolNames, firstOccurrence),
|
|
595
|
+
});
|
|
588
596
|
continue;
|
|
589
597
|
}
|
|
590
598
|
}
|
|
@@ -592,7 +600,7 @@ function demoteUnavailableToolReferences(params) {
|
|
|
592
600
|
const demotedName = demotedCallNames.get(block.tool_use_id);
|
|
593
601
|
if (demotedName !== undefined) {
|
|
594
602
|
messageChanged = true;
|
|
595
|
-
content.push({ type: "text", text: demotedToolResultText(demotedName, block.content) });
|
|
603
|
+
content.push({ type: "text", text: demotedToolResultText(demotedName, toolResultText(block.content)) });
|
|
596
604
|
continue;
|
|
597
605
|
}
|
|
598
606
|
if (danglingReferenceNames.size > 0 && Array.isArray(block.content)) {
|
|
@@ -648,19 +656,6 @@ function collectToolReferenceNames(value, names) {
|
|
|
648
656
|
for (const nested of Object.values(value))
|
|
649
657
|
collectToolReferenceNames(nested, names);
|
|
650
658
|
}
|
|
651
|
-
function demotedToolCallText(name, input) {
|
|
652
|
-
let serializedInput;
|
|
653
|
-
try {
|
|
654
|
-
serializedInput = JSON.stringify(input ?? {});
|
|
655
|
-
}
|
|
656
|
-
catch {
|
|
657
|
-
serializedInput = "{}";
|
|
658
|
-
}
|
|
659
|
-
return `[Called tool "${name}" (no longer available in this session) with input: ${serializedInput}]`;
|
|
660
|
-
}
|
|
661
|
-
function demotedToolResultText(name, content) {
|
|
662
|
-
return `[Result of unavailable tool "${name}": ${toolResultText(content)}]`;
|
|
663
|
-
}
|
|
664
659
|
function toolResultText(content) {
|
|
665
660
|
if (typeof content === "string")
|
|
666
661
|
return content;
|