@vamdawn/cconvo 1.7.1 → 1.8.0

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.
Files changed (40) hide show
  1. package/dist/components/conversation-list.d.ts.map +1 -1
  2. package/dist/components/conversation-list.js +68 -1
  3. package/dist/components/conversation-list.js.map +1 -1
  4. package/dist/interactive.d.ts.map +1 -1
  5. package/dist/interactive.js +13 -2
  6. package/dist/interactive.js.map +1 -1
  7. package/dist/llm/analyzer.d.ts +7 -0
  8. package/dist/llm/analyzer.d.ts.map +1 -0
  9. package/dist/llm/analyzer.js +160 -0
  10. package/dist/llm/analyzer.js.map +1 -0
  11. package/dist/llm/client.d.ts +11 -0
  12. package/dist/llm/client.d.ts.map +1 -0
  13. package/dist/llm/client.js +164 -0
  14. package/dist/llm/client.js.map +1 -0
  15. package/dist/llm/config-ui.d.ts +3 -0
  16. package/dist/llm/config-ui.d.ts.map +1 -0
  17. package/dist/llm/config-ui.js +243 -0
  18. package/dist/llm/config-ui.js.map +1 -0
  19. package/dist/llm/index.d.ts +6 -0
  20. package/dist/llm/index.d.ts.map +1 -0
  21. package/dist/llm/index.js +6 -0
  22. package/dist/llm/index.js.map +1 -0
  23. package/dist/llm/prompts.d.ts +16 -0
  24. package/dist/llm/prompts.d.ts.map +1 -0
  25. package/dist/llm/prompts.js +106 -0
  26. package/dist/llm/prompts.js.map +1 -0
  27. package/dist/llm/stats.d.ts +3 -0
  28. package/dist/llm/stats.d.ts.map +1 -0
  29. package/dist/llm/stats.js +84 -0
  30. package/dist/llm/stats.js.map +1 -0
  31. package/dist/models/types.d.ts +55 -0
  32. package/dist/models/types.d.ts.map +1 -1
  33. package/dist/utils/i18n.d.ts.map +1 -1
  34. package/dist/utils/i18n.js +118 -2
  35. package/dist/utils/i18n.js.map +1 -1
  36. package/dist/utils/settings.d.ts +9 -0
  37. package/dist/utils/settings.d.ts.map +1 -1
  38. package/dist/utils/settings.js +65 -0
  39. package/dist/utils/settings.js.map +1 -1
  40. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-list.d.ts","sourceRoot":"","sources":["../../src/components/conversation-list.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAsC,MAAM,oBAAoB,CAAC;AAUtF,MAAM,MAAM,sBAAsB,GAC9B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAuMvB,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,sBAAsB,CAAC,CAqJjC"}
1
+ {"version":3,"file":"conversation-list.d.ts","sourceRoot":"","sources":["../../src/components/conversation-list.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAsC,MAAM,oBAAoB,CAAC;AAUtF,MAAM,MAAM,sBAAsB,GAC9B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAgRvB,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,sBAAsB,CAAC,CA+JjC"}
@@ -1,12 +1,14 @@
1
1
  // src/components/conversation-list.ts
2
2
  import chalk from 'chalk';
3
3
  import readline from 'readline';
4
+ import { writeFile } from 'fs/promises';
4
5
  import { formatDateTime, formatSize, formatTokens, formatDuration } from '../utils/format.js';
5
6
  import { t } from '../utils/i18n.js';
6
7
  import { exportConversation, getFileExtension } from '../exporters/index.js';
7
8
  import { parseConversation } from '../core/parser.js';
9
+ import { analyzeConversation, formatAnalysisResult } from '../llm/analyzer.js';
8
10
  import { showBanner } from './banner.js';
9
- import { getLanguage } from '../utils/settings.js';
11
+ import { getLanguage, getActiveLLMProvider } from '../utils/settings.js';
10
12
  // 获取当前语言
11
13
  function getLang() {
12
14
  return getLanguage();
@@ -44,6 +46,61 @@ function renderInfoPanel(conv) {
44
46
  console.log(` ${chalk.dim(conv.firstUserMessage || t('none', lang))}`);
45
47
  console.log(chalk.gray(line));
46
48
  }
49
+ // AI 分析
50
+ async function performAnalysis(project, conv) {
51
+ const lang = getLang();
52
+ const provider = getActiveLLMProvider();
53
+ // 检查 LLM 配置
54
+ if (!provider) {
55
+ console.log(chalk.yellow(`\n ${t('llmNotConfigured', lang)}`));
56
+ await waitForKeypress();
57
+ return;
58
+ }
59
+ // 解析完整会话
60
+ const conversation = await parseConversation(conv.filePath, project.originalPath);
61
+ if (conversation.messages.length === 0) {
62
+ console.log(chalk.yellow(`\n ${t('analysisNoData', lang)}`));
63
+ await waitForKeypress();
64
+ return;
65
+ }
66
+ console.log();
67
+ // 定义分析阶段名称
68
+ const phaseNames = {
69
+ timeline: t('analysisTimeline', lang),
70
+ patterns: t('analysisPatterns', lang),
71
+ knowledge: t('analysisKnowledge', lang),
72
+ quality: t('analysisQuality', lang),
73
+ };
74
+ let currentPhase = '';
75
+ try {
76
+ // 流式输出分析结果
77
+ const result = await analyzeConversation(conversation, provider, lang, (phase, chunk) => {
78
+ if (phase !== currentPhase) {
79
+ currentPhase = phase;
80
+ console.log();
81
+ console.log(chalk.bold.cyan(` ── ${phaseNames[phase] || phase} ──`));
82
+ console.log();
83
+ }
84
+ process.stdout.write(chunk);
85
+ });
86
+ console.log('\n');
87
+ // 询问是否保存
88
+ console.log(` ${t('analysisSavePrompt', lang)} [y/n]`);
89
+ const key = await waitForKeypress();
90
+ if (key.toLowerCase() === 'y') {
91
+ const markdown = formatAnalysisResult(result, conversation, lang);
92
+ const outputPath = `${conv.slug || conv.sessionId}-analysis.md`;
93
+ await writeFile(outputPath, markdown, 'utf-8');
94
+ console.log(chalk.green(` ✓ ${t('analysisSaved', lang)} ${outputPath}`));
95
+ await waitForKeypress();
96
+ }
97
+ }
98
+ catch (error) {
99
+ const errMsg = error instanceof Error ? error.message : String(error);
100
+ console.log(chalk.red(`\n Error: ${errMsg}`));
101
+ await waitForKeypress();
102
+ }
103
+ }
47
104
  // 快速导出(使用默认格式 Markdown)
48
105
  async function quickExport(project, conv) {
49
106
  const conversation = await parseConversation(conv.filePath, project.originalPath);
@@ -295,6 +352,16 @@ export async function showConversationList(project) {
295
352
  renderList(project, filteredConversations, selectedIndex, searchTerm);
296
353
  }
297
354
  break;
355
+ case 'a':
356
+ if (filteredConversations.length > 0) {
357
+ process.stdin.removeListener('keypress', handleKeypress);
358
+ process.stdin.setRawMode(false);
359
+ await performAnalysis(project, filteredConversations[selectedIndex]);
360
+ process.stdin.setRawMode(true);
361
+ process.stdin.on('keypress', handleKeypress);
362
+ renderList(project, filteredConversations, selectedIndex, searchTerm);
363
+ }
364
+ break;
298
365
  }
299
366
  }
300
367
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-list.js","sourceRoot":"","sources":["../../src/components/conversation-list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation-list.js","sourceRoot":"","sources":["../../src/components/conversation-list.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"AAOA,OAAO,EAAK,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAcnD,wBAAgB,kBAAkB,IAAI,QAAQ,CAE7C;AA6CD,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAqDpD"}
1
+ {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"AAOA,OAAO,EAAK,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAenD,wBAAgB,kBAAkB,IAAI,QAAQ,CAE7C;AA6CD,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAqDpD"}
@@ -7,6 +7,7 @@ import { showInteractiveList } from './components/interactive-list.js';
7
7
  import { t } from './utils/i18n.js';
8
8
  import { formatSize } from './utils/format.js';
9
9
  import { getLanguage, setLanguage } from './utils/settings.js';
10
+ import { showLLMConfig } from './llm/config-ui.js';
10
11
  // 当前语言(从配置加载)
11
12
  let currentLang = getLanguage();
12
13
  // 语言显示名称
@@ -183,6 +184,11 @@ async function showSettings() {
183
184
  label: `${t('language', currentLang)}: ${currentLanguageName}`,
184
185
  description: ''
185
186
  },
187
+ {
188
+ id: 'llm',
189
+ label: t('llmConfig', currentLang),
190
+ description: ''
191
+ },
186
192
  ];
187
193
  const result = await showInteractiveList({
188
194
  title: t('settings', currentLang),
@@ -196,8 +202,13 @@ async function showSettings() {
196
202
  if (result.action === 'back' || result.action === 'main') {
197
203
  return;
198
204
  }
199
- if (result.action === 'select' && result.item?.id === 'language') {
200
- await showLanguageSettings();
205
+ if (result.action === 'select') {
206
+ if (result.item?.id === 'language') {
207
+ await showLanguageSettings();
208
+ }
209
+ else if (result.item?.id === 'llm') {
210
+ await showLLMConfig(currentLang);
211
+ }
201
212
  }
202
213
  }
203
214
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { Conversation, AnalysisResult, LLMProvider } from '../models/types.js';
2
+ import type { Language } from '../utils/i18n.js';
3
+ import type { TurnData } from './prompts.js';
4
+ export declare function prepareTurns(conversation: Conversation): TurnData[];
5
+ export declare function analyzeConversation(conversation: Conversation, provider: LLMProvider, lang: Language, onProgress?: (phase: string, chunk: string) => void): Promise<AnalysisResult>;
6
+ export declare function formatAnalysisResult(result: AnalysisResult, conversation: Conversation, lang: Language): string;
7
+ //# sourceMappingURL=analyzer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../src/llm/analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EAEZ,cAAc,EACd,WAAW,EAEZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAW7C,wBAAgB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,QAAQ,EAAE,CA2DnE;AAGD,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,QAAQ,EACd,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAClD,OAAO,CAAC,cAAc,CAAC,CAiCzB;AAGD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,cAAc,EACtB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,QAAQ,GACb,MAAM,CA8CR"}
@@ -0,0 +1,160 @@
1
+ import { t } from '../utils/i18n.js';
2
+ import { extractTextContent, extractToolCalls, summarizeToolCall, formatDateTime, formatTokens, truncate } from '../utils/format.js';
3
+ import { isRealUserInput, cleanUserInput, extractUserText } from '../utils/noise-filter.js';
4
+ import { computeStats } from './stats.js';
5
+ import { buildTimelinePrompt, buildPatternsPrompt, buildKnowledgePrompt, buildQualityPrompt } from './prompts.js';
6
+ import { chatCompletion, chatCompletionStream } from './client.js';
7
+ // 最大工具结果长度
8
+ const MAX_TOOL_RESULT_LENGTH = 100;
9
+ // 从会话中提取对话轮次数据
10
+ export function prepareTurns(conversation) {
11
+ const turns = [];
12
+ const messages = conversation.messages;
13
+ let turnNumber = 0;
14
+ let i = 0;
15
+ while (i < messages.length) {
16
+ const msg = messages[i];
17
+ // 跳过非用户消息或非真实用户输入
18
+ if (msg.type !== 'user' || !isRealUserInput(msg)) {
19
+ i++;
20
+ continue;
21
+ }
22
+ turnNumber++;
23
+ const userMsg = msg;
24
+ const userText = cleanUserInput(extractUserText(userMsg));
25
+ const timestamp = formatDateTime(new Date(userMsg.timestamp));
26
+ // 收集后续 assistant 响应
27
+ i++;
28
+ const agentParts = [];
29
+ while (i < messages.length) {
30
+ const nextMsg = messages[i];
31
+ // 遇到下一条真实用户输入时停止
32
+ if (nextMsg.type === 'user' && isRealUserInput(nextMsg)) {
33
+ break;
34
+ }
35
+ if (nextMsg.type === 'assistant') {
36
+ // 文本内容
37
+ const text = extractTextContent(nextMsg);
38
+ if (text) {
39
+ agentParts.push(text);
40
+ }
41
+ // 工具调用摘要
42
+ const tools = extractToolCalls(nextMsg);
43
+ for (const tool of tools) {
44
+ const summary = summarizeToolCall(tool);
45
+ agentParts.push(`[Tool: ${summary.name}] ${truncate(summary.summary, MAX_TOOL_RESULT_LENGTH)}`);
46
+ }
47
+ }
48
+ i++;
49
+ }
50
+ turns.push({
51
+ turnNumber,
52
+ timestamp,
53
+ userInput: userText,
54
+ agentContent: agentParts.join('\n'),
55
+ });
56
+ }
57
+ return turns;
58
+ }
59
+ // 执行完整分析
60
+ export async function analyzeConversation(conversation, provider, lang, onProgress) {
61
+ // 本地统计
62
+ const stats = computeStats(conversation);
63
+ // 预处理轮次数据
64
+ const turns = prepareTurns(conversation);
65
+ // 流式回调包装
66
+ const streamOrComplete = async (phase, promptData) => {
67
+ if (onProgress) {
68
+ return chatCompletionStream(provider, promptData, (chunk) => {
69
+ onProgress(phase, chunk);
70
+ });
71
+ }
72
+ return chatCompletion(provider, promptData);
73
+ };
74
+ // 依次执行四项分析
75
+ const timeline = await streamOrComplete('timeline', buildTimelinePrompt(turns, lang));
76
+ const patterns = await streamOrComplete('patterns', buildPatternsPrompt(stats, lang));
77
+ const knowledge = await streamOrComplete('knowledge', buildKnowledgePrompt(turns, lang));
78
+ const quality = await streamOrComplete('quality', buildQualityPrompt(turns, stats, lang));
79
+ return {
80
+ timeline,
81
+ patterns,
82
+ knowledge,
83
+ quality,
84
+ stats,
85
+ };
86
+ }
87
+ // 格式化分析结果为 Markdown
88
+ export function formatAnalysisResult(result, conversation, lang) {
89
+ const lines = [];
90
+ // 标题
91
+ lines.push(`# ${t('analysis', lang)} - ${conversation.slug || conversation.sessionId}`);
92
+ lines.push('');
93
+ lines.push(`> **Session**: ${conversation.sessionId}`);
94
+ lines.push(`> **Time**: ${formatDateTime(conversation.startTime)} - ${formatDateTime(conversation.endTime)}`);
95
+ lines.push('');
96
+ lines.push('---');
97
+ lines.push('');
98
+ // 时间线摘要
99
+ lines.push(`## ${t('analysisTimeline', lang)}`);
100
+ lines.push('');
101
+ lines.push(result.timeline);
102
+ lines.push('');
103
+ lines.push('---');
104
+ lines.push('');
105
+ // 使用模式分析
106
+ lines.push(`## ${t('analysisPatterns', lang)}`);
107
+ lines.push('');
108
+ lines.push(formatStatsSection(result.stats, lang));
109
+ lines.push('');
110
+ lines.push(`### ${t('analysisInsights', lang)}`);
111
+ lines.push('');
112
+ lines.push(result.patterns);
113
+ lines.push('');
114
+ lines.push('---');
115
+ lines.push('');
116
+ // 知识提取
117
+ lines.push(`## ${t('analysisKnowledge', lang)}`);
118
+ lines.push('');
119
+ lines.push(result.knowledge);
120
+ lines.push('');
121
+ lines.push('---');
122
+ lines.push('');
123
+ // 质量评估
124
+ lines.push(`## ${t('analysisQuality', lang)}`);
125
+ lines.push('');
126
+ lines.push(result.quality);
127
+ return lines.join('\n');
128
+ }
129
+ // 格式化统计数据段
130
+ function formatStatsSection(stats, lang) {
131
+ const lines = [];
132
+ // 工具使用统计表
133
+ lines.push(`### ${t('analysisToolStats', lang)}`);
134
+ lines.push('');
135
+ lines.push(`| ${t('statsTool', lang)} | ${t('statsCount', lang)} | ${t('statsPercentage', lang)} |`);
136
+ lines.push('|------|------|------|');
137
+ for (const tool of stats.toolUsage) {
138
+ lines.push(`| ${tool.name} | ${tool.count} | ${tool.percentage}% |`);
139
+ }
140
+ lines.push('');
141
+ // Token 消耗
142
+ lines.push(`### ${t('analysisTokenStats', lang)}`);
143
+ lines.push('');
144
+ lines.push(`- ${t('statsTotalInput', lang)}: ${formatTokens(stats.tokenBreakdown.totalInput)}`);
145
+ lines.push(`- ${t('statsTotalOutput', lang)}: ${formatTokens(stats.tokenBreakdown.totalOutput)}`);
146
+ lines.push(`- ${t('statsCacheHitRate', lang)}: ${stats.tokenBreakdown.cacheHitRate.toFixed(1)}%`);
147
+ lines.push('');
148
+ // 文件操作热点
149
+ if (stats.fileOperations.length > 0) {
150
+ lines.push(`### ${t('analysisFileHotspot', lang)}`);
151
+ lines.push('');
152
+ lines.push(`| ${t('statsFile', lang)} | ${t('statsOperations', lang)} |`);
153
+ lines.push('|------|------|');
154
+ for (const file of stats.fileOperations) {
155
+ lines.push(`| ${file.file} | ${file.count} |`);
156
+ }
157
+ }
158
+ return lines.join('\n');
159
+ }
160
+ //# sourceMappingURL=analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../src/llm/analyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { LLMProvider, ChatCompletionOptions, StreamCallback } from '../models/types.js';
2
+ interface RequestData {
3
+ url: string;
4
+ init: RequestInit;
5
+ }
6
+ export declare function buildRequest(provider: LLMProvider, options: ChatCompletionOptions): RequestData;
7
+ export declare function chatCompletion(provider: LLMProvider, options: ChatCompletionOptions): Promise<string>;
8
+ export declare function chatCompletionStream(provider: LLMProvider, options: ChatCompletionOptions, onChunk: StreamCallback): Promise<string>;
9
+ export declare function testConnection(provider: LLMProvider): Promise<boolean>;
10
+ export {};
11
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/llm/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAe,qBAAqB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG1G,UAAU,WAAW;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,WAAW,CAAC;CACnB;AAGD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,GAAG,WAAW,CAK/F;AA2FD,wBAAsB,cAAc,CAClC,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAWjB;AAGD,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,MAAM,CAAC,CAyDjB;AAGD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAU5E"}
@@ -0,0 +1,164 @@
1
+ // 构建请求
2
+ export function buildRequest(provider, options) {
3
+ if (provider.provider === 'anthropic') {
4
+ return buildAnthropicRequest(provider, options);
5
+ }
6
+ return buildOpenAIRequest(provider, options);
7
+ }
8
+ // 构建 OpenAI 兼容请求
9
+ function buildOpenAIRequest(provider, options) {
10
+ const url = `${provider.baseUrl.replace(/\/$/, '')}/chat/completions`;
11
+ const body = {
12
+ model: provider.model,
13
+ messages: options.messages,
14
+ stream: options.stream ?? false,
15
+ };
16
+ if (options.temperature !== undefined) {
17
+ body.temperature = options.temperature;
18
+ }
19
+ if (options.maxTokens !== undefined) {
20
+ body.max_tokens = options.maxTokens;
21
+ }
22
+ return {
23
+ url,
24
+ init: {
25
+ method: 'POST',
26
+ headers: {
27
+ 'Content-Type': 'application/json',
28
+ 'Authorization': `Bearer ${provider.apiKey}`,
29
+ },
30
+ body: JSON.stringify(body),
31
+ },
32
+ };
33
+ }
34
+ // 构建 Anthropic 原生请求
35
+ function buildAnthropicRequest(provider, options) {
36
+ const url = `${provider.baseUrl.replace(/\/$/, '')}/messages`;
37
+ // 提取 system 消息
38
+ let system;
39
+ const messages = [];
40
+ for (const msg of options.messages) {
41
+ if (msg.role === 'system') {
42
+ system = msg.content;
43
+ }
44
+ else {
45
+ messages.push(msg);
46
+ }
47
+ }
48
+ const body = {
49
+ model: provider.model,
50
+ messages,
51
+ max_tokens: options.maxTokens ?? 8192,
52
+ stream: options.stream ?? false,
53
+ };
54
+ if (system) {
55
+ body.system = system;
56
+ }
57
+ if (options.temperature !== undefined) {
58
+ body.temperature = options.temperature;
59
+ }
60
+ return {
61
+ url,
62
+ init: {
63
+ method: 'POST',
64
+ headers: {
65
+ 'Content-Type': 'application/json',
66
+ 'x-api-key': provider.apiKey,
67
+ 'anthropic-version': '2023-06-01',
68
+ },
69
+ body: JSON.stringify(body),
70
+ },
71
+ };
72
+ }
73
+ // 从响应中提取文本
74
+ function extractTextFromResponse(provider, data) {
75
+ if (provider.provider === 'anthropic') {
76
+ const resp = data;
77
+ return resp.content
78
+ .filter(block => block.type === 'text')
79
+ .map(block => block.text)
80
+ .join('');
81
+ }
82
+ // OpenAI 兼容格式
83
+ const resp = data;
84
+ return resp.choices[0]?.message?.content || '';
85
+ }
86
+ // 非流式调用
87
+ export async function chatCompletion(provider, options) {
88
+ const { url, init } = buildRequest(provider, { ...options, stream: false });
89
+ const response = await fetch(url, init);
90
+ if (!response.ok) {
91
+ const errorText = await response.text();
92
+ throw new Error(`LLM API error ${response.status}: ${errorText}`);
93
+ }
94
+ const data = await response.json();
95
+ return extractTextFromResponse(provider, data);
96
+ }
97
+ // 流式调用
98
+ export async function chatCompletionStream(provider, options, onChunk) {
99
+ const { url, init } = buildRequest(provider, { ...options, stream: true });
100
+ const response = await fetch(url, init);
101
+ if (!response.ok) {
102
+ const errorText = await response.text();
103
+ throw new Error(`LLM API error ${response.status}: ${errorText}`);
104
+ }
105
+ if (!response.body) {
106
+ throw new Error('Response body is empty');
107
+ }
108
+ let fullText = '';
109
+ const reader = response.body.getReader();
110
+ const decoder = new TextDecoder();
111
+ let buffer = '';
112
+ while (true) {
113
+ const { done, value } = await reader.read();
114
+ if (done)
115
+ break;
116
+ buffer += decoder.decode(value, { stream: true });
117
+ const lines = buffer.split('\n');
118
+ buffer = lines.pop() || '';
119
+ for (const line of lines) {
120
+ const trimmed = line.trim();
121
+ if (!trimmed || !trimmed.startsWith('data: '))
122
+ continue;
123
+ const jsonStr = trimmed.slice(6);
124
+ if (jsonStr === '[DONE]')
125
+ continue;
126
+ try {
127
+ const chunk = JSON.parse(jsonStr);
128
+ let text = '';
129
+ if (provider.provider === 'anthropic') {
130
+ // Anthropic SSE 格式
131
+ if (chunk.type === 'content_block_delta' && chunk.delta?.text) {
132
+ text = chunk.delta.text;
133
+ }
134
+ }
135
+ else {
136
+ // OpenAI SSE 格式
137
+ text = chunk.choices?.[0]?.delta?.content || '';
138
+ }
139
+ if (text) {
140
+ fullText += text;
141
+ onChunk(text);
142
+ }
143
+ }
144
+ catch {
145
+ // 跳过无效 JSON
146
+ }
147
+ }
148
+ }
149
+ return fullText;
150
+ }
151
+ // 连接测试
152
+ export async function testConnection(provider) {
153
+ try {
154
+ await chatCompletion(provider, {
155
+ messages: [{ role: 'user', content: 'hi' }],
156
+ maxTokens: 10,
157
+ });
158
+ return true;
159
+ }
160
+ catch {
161
+ return false;
162
+ }
163
+ }
164
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/llm/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type Language } from '../utils/i18n.js';
2
+ export declare function showLLMConfig(lang: Language): Promise<void>;
3
+ //# sourceMappingURL=config-ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-ui.d.ts","sourceRoot":"","sources":["../../src/llm/config-ui.ts"],"names":[],"mappings":"AAGA,OAAO,EAAK,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AA2EpD,wBAAsB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCjE"}