{"record":{"id":"44ace7184f4ab483","repo":"diegosouzapw/OmniRoute","slug":"kimi-web-does-not-support-assistant-tool-calls","errorCode":null,"errorMessage":"Kimi Web does not support assistant tool calls","messagePattern":"Kimi Web does not support assistant tool calls","errorType":"validation","errorClass":"Error","httpStatus":400,"severity":"error","filePath":"open-sse/executors/kimi-web.ts","lineNumber":242,"sourceCode":"      ) {\n        return record.text;\n      }\n      throw new Error(\"Kimi Web does not support image, audio, file, or tool content\");\n    })\n    .join(\"\");\n}\n\n/** Fold text-only OpenAI history into the single user turn accepted by Kimi Web. */\nexport function foldMessages(messages: KimiWebInputMessage[]): FoldedKimiWebMessages {\n  const systemParts: string[] = [];\n  const conversationParts: string[] = [];\n\n  for (const message of messages) {\n    if (message.role === \"tool\" || message.role === \"function\") {\n      throw new Error(\"Kimi Web does not support tool result messages\");\n    }\n    if (message.tool_calls !== undefined) {\n      throw new Error(\"Kimi Web does not support assistant tool calls\");\n    }\n\n    const text = textFromContent(message.content);\n    if (message.role === \"system\" || message.role === \"developer\") {\n      if (text) systemParts.push(text);\n    } else if (message.role === \"user\") {\n      if (text) conversationParts.push(conversationParts.length > 0 ? `User: ${text}` : text);\n    } else if (message.role === \"assistant\") {\n      if (text) conversationParts.push(`Assistant: ${text}`);\n    } else {\n      throw new Error(`Kimi Web does not support message role ${message.role}`);\n    }\n  }\n\n  return {\n    prompt: conversationParts.join(\"\\n\\n\").trim(),\n    systemPrompt: systemParts.join(\"\\n\\n\").trim(),\n  };","sourceCodeStart":224,"sourceCodeEnd":260,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/open-sse/executors/kimi-web.ts#L224-L260","documentation":"Error \"Kimi Web does not support assistant tool calls\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at open-sse/executors/kimi-web.ts:242 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d","analyzedAt":"2026-08-25T18:35:09.898Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}