feat: 添加一键优化提示词功能

- 在 ICHelperPanel.ts 添加 optimizePrompt 消息处理分支
- 新增 promptOptimizeService.ts 调用后端优化 API
- 完善 WebView 端优化按钮交互逻辑
This commit is contained in:
XiaoFeng
2026-01-13 19:29:17 +08:00
parent 21a8abd5cf
commit 5753e120ba
6 changed files with 238 additions and 12 deletions

View File

@ -22,6 +22,7 @@ import {
checkBalanceBeforeSend,
fetchBalance,
} from "../services/creditsService";
import { optimizePrompt } from "../services/promptOptimizeService";
import type { RunMode, ServiceTier } from "../types/api";
@ -1031,3 +1032,35 @@ async function handleVCDGeneration(
vscode.window.showErrorMessage(errorMsg);
}
}
/**
* 处理提示词优化请求
*/
export async function handleOptimizePrompt(
panel: vscode.WebviewPanel,
prompt: string
): Promise<void> {
console.log("[MessageHandler] ========== 收到提示词优化请求 ==========");
console.log("[MessageHandler] prompt:", prompt);
console.log("[MessageHandler] prompt 长度:", prompt?.length);
try {
console.log("[MessageHandler] 开始调用 optimizePrompt...");
const optimized = await optimizePrompt(prompt);
console.log("[MessageHandler] 优化成功,结果:", optimized);
panel.webview.postMessage({
command: "optimizeResult",
success: true,
optimizedPrompt: optimized,
});
} catch (error) {
const errorMsg = error instanceof Error ? error.message : "优化失败";
console.error("[MessageHandler] 提示词优化失败:", errorMsg);
panel.webview.postMessage({
command: "optimizeResult",
success: false,
error: errorMsg,
});
vscode.window.showErrorMessage(`提示词优化失败: ${errorMsg}`);
}
}