新增 MiMo (小米) LLM Provider 适配器,支持 mimo-v2.5-pro 和 mimo-v2.5 两个文本模型,复用 OpenAI 兼容 SSE 流式解析,支持 Thinking 模式和 Function Calling。同步校准全量 docs 文档与 README 使其与实际代码一致。 主要变更: - 新增 mimo.adapter.ts 适配器(SSE + thinking.type + max_completion_tokens) - 修复 thinking 逻辑 bug:禁用思考时未传 temperature/top_p - 补全 sse-stream.ts 的 MiMo 缓存字段映射(prompt_tokens_details.cached_tokens) - 补全 sse-stream.ts 的 finish_reason 映射(repetition_truncation) - 注册 MiMo 适配器到 adapters/index.ts、main.ts 工厂 - handlers.ts 添加 mimo.contextWindow 热重载触发 - database.service.ts seed 添加 mimo 默认配置 - SettingsModal/OnboardingWizard/Header 添加 MiMo Provider UI - constants.ts PROVIDER_LABELS 添加 mimo - .env.example 添加 MIMO_API_KEY/MIMO_BASE_URL - 反向修改 4 个 docs HTML 设计文档(工具数量/版本日期/适配器列表/数据库表) - 反向修改 Agent网络工具通用设计-v2.md 附录 B 文件索引 - 完全重写 README.md(v0.3.4、27 工具、4 适配器、9 表)
96 lines
2.3 KiB
TypeScript
96 lines
2.3 KiB
TypeScript
/**
|
|
* 常量定义
|
|
*
|
|
* 快捷键映射、状态颜色、消息类型等全局常量。
|
|
*/
|
|
|
|
// ===== 布局尺寸 =====
|
|
|
|
export const LAYOUT = {
|
|
HEADER_HEIGHT: 0, // 已移除顶部栏
|
|
STATUS_BAR_HEIGHT: 36,
|
|
SIDEBAR_WIDTH: 300,
|
|
DETAIL_WIDTH: 360,
|
|
CHAT_MAX_WIDTH: 768,
|
|
} as const;
|
|
|
|
// ===== Agent 状态颜色 =====
|
|
|
|
export const AGENT_STATUS_COLORS = {
|
|
idle: 'var(--green)',
|
|
thinking: 'var(--amber)',
|
|
executing: 'var(--purple)',
|
|
error: 'var(--red)',
|
|
} as const;
|
|
|
|
export const AGENT_STATUS_LABELS = {
|
|
idle: 'Agent Ready',
|
|
thinking: '思考中...',
|
|
executing: '执行中...',
|
|
error: '错误',
|
|
} as const;
|
|
|
|
// ===== Trace 步骤状态 =====
|
|
|
|
export const TRACE_STATE_COLORS: Record<string, string> = {
|
|
INIT: 'var(--cyan)',
|
|
THINKING: 'var(--amber)',
|
|
PARSING: 'var(--orange)',
|
|
EXECUTING: 'var(--purple)',
|
|
OBSERVING: 'var(--cyan)',
|
|
REFLECTING: 'var(--purple)',
|
|
COMPRESSING: 'var(--amber)',
|
|
TERMINATED: 'var(--green)',
|
|
};
|
|
|
|
export const TRACE_STATE_LABELS: Record<string, string> = {
|
|
INIT: '初始化',
|
|
THINKING: '思考',
|
|
PARSING: '解析',
|
|
EXECUTING: '执行',
|
|
OBSERVING: '观察',
|
|
REFLECTING: '反思',
|
|
COMPRESSING: '压缩',
|
|
TERMINATED: '终止',
|
|
};
|
|
|
|
// ===== 工具调用状态 =====
|
|
|
|
export const TOOL_CALL_STATUS_COLORS = {
|
|
pending: 'var(--amber)',
|
|
executing: 'var(--purple)',
|
|
success: 'var(--green)',
|
|
error: 'var(--red)',
|
|
blocked: 'var(--orange)',
|
|
} as const;
|
|
|
|
// ===== 快捷键定义 =====
|
|
|
|
export const SHORTCUTS = {
|
|
NEW_SESSION: { key: 'n', ctrl: true },
|
|
QUICK_SEARCH: { key: 'k', ctrl: true },
|
|
SEND_MESSAGE: { key: 'Enter', ctrl: false },
|
|
NEW_LINE: { key: 'Enter', ctrl: true },
|
|
ABORT: { key: '.', ctrl: true },
|
|
// v0.3.0: 已实现的面板控制快捷键
|
|
FOCUS_MODE: { key: 'f', ctrl: true, shift: true },
|
|
TOGGLE_SIDEBAR: { key: 'b', ctrl: true },
|
|
TOGGLE_DETAIL: { key: 'j', ctrl: true },
|
|
OPEN_SETTINGS: { key: ',', ctrl: true },
|
|
PREV_SESSION: { key: '[', ctrl: true },
|
|
NEXT_SESSION: { key: ']', ctrl: true },
|
|
CLOSE_POPUP: { key: 'Escape' },
|
|
FOCUS_INPUT: { key: 'l', ctrl: true },
|
|
COPY_LAST_REPLY: { key: 'c', ctrl: true, shift: true },
|
|
TOGGLE_THEME: { key: 'd', ctrl: true },
|
|
} as const;
|
|
|
|
// ===== Provider 信息 =====
|
|
|
|
export const PROVIDER_LABELS: Record<string, string> = {
|
|
deepseek: 'DeepSeek',
|
|
agnes: 'Agnes AI',
|
|
mimo: 'MiMo (小米)',
|
|
ollama: 'Ollama',
|
|
};
|