Files
metona-ai-desktop/src/lib/constants.ts
T
thzxx 656c6b7af1 feat: 升级至 v0.3.4 — 接入 Xiaomi MiMo Provider + 文档全量校准
新增 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 表)
2026-07-15 22:28:09 +08:00

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',
};