// ai.js import { COMMANDS } from './commands.js'; export async function translateToCommand(userInput) { const availableKeys = COMMANDS.map(c => c.key).join(', '); const systemPrompt = `你是一个助手。将输入映射到以下关键词之一:${availableKeys}。只输出关键词,不要其他字。无法匹配则输出 UNKNOWN。`; return new Promise((resolve) => { // 1. 监听结果 const handler = (event) => { const response = event.detail; window.removeEventListener("AI_RESULT", handler); if (response.success) { const content = response.data.choices[0].message.content.trim(); console.log("📥 AI 识别结果:", content); resolve(content === "UNKNOWN" ? null : content); } else { console.error("AI 失败:", response.error); resolve(null); } }; window.addEventListener("AI_RESULT", handler); // 2. 触发请求 window.dispatchEvent(new CustomEvent("DO_AI_REQUEST", { detail: { userInput, systemPrompt } })); }); }