Coding & Development🤖claude🌐universal

Codem

Codem - AI Coding Assistant, Tauri + React + TypeScript

Quick Start

Install this Skill

npx skills add sdcxb/codem
# Codem 

对标 Codex,借鉴 MiMo Code CLI 和 Claude Code 开发的桌面 GUI 客户端。

## 项目简介

基于 Tauri v2 + React + TypeScript 构建的 AI 编程助手桌面应用,提供可视化界面与 MiMo 大模型交互,支持代码生成、文件操作、终端执行等功能。

> **作者的话:**
>
> 本项目初衷是为小米推出的 MiMoCode 开发一个 GUI 客户端,方便非程序员朋友在 Win 客户端使用,所以提供了 API 和 MiMo 专用的 CLI 登录两种登录方式。
>
> 基于初衷本项目最初定名为 mimo-gui,但是因为频繁调用 MiMoCode 调试本项目,并反复调用 MiMo CLI,我的 MiMo 免费模型被限制了,请悲允~
>
> 由于是对标 Codex,初心是 mimo-gui,所以最终本项目定名为 Codem。本人已经 10 年没敲代码了,全程使用 MiMoCode 开发,水平有限请轻喷。
>
> 作为一个最初始版本,目前本人亲测,CLI 小米账户登录、API登录(仅测试了deepseek,如果其他模型api有问题请反馈)、对话工具调用、项目文件读写等功能已经完成,SKILLS、MCP、子智能体调用等功能还没测试(MiMoCode 告诉我已经搞定了,让我放心使用,但是我不放心!)
>
> **v1.1.0 更新**:完成 DeepSeek Harness 第三轮对标全面整改 — Phase A-D 全部完成(孤岛模块接入 10 项 + 重复实现统一 4 项 + 缺失功能补齐 5 项)+ 5 个 Bug 修复 + 4 个新测试文件 / 118 用例。全量 107 文件 / 3624 用例通过。
>
> **v1.1.1 更新**:UI 布局优化(插件管理移至左下角 + CI/CD 移至右侧边栏 + 性能移至主对话框顶端)+ 插件条件渲染(关闭插件隐藏按钮/面板,启用后恢复)+ 宠物窗口关闭 Bug 修复 + 插件管理面板初始化时序修复 + 全工具 execute 回调 null 检查防御。
>
> **v1.2.0 更新**:Cordis 架构全面对齐 DSH — 移除核心文件 `@ts-nocheck`,`declare module` 类型声明全面生效,`ctx.get()` 返回强类型(对齐 DSH `ReflectService.get` keyof 推断模式);消除双轨制服务获取;安全加固(AST 代码验证 + Worker 隔离 + XOR 密钥混淆 + SandboxGuard 覆盖读操作);生命周期管理(复合 Dispose + LRU 淘汰 + 异步 I/O);修复 React Hooks 顺序违规和 `useSyncExternalStore` 无限循环;全量测试重构 109 套件 3690 测试通过 + 66 个架构变更新用例。
>
> **v1.3.0 更新**:Cordis 插件系统对标 DSH 全面整改 — 死 slot 从 29 个降至 0 个;7 个 UI provider 添加 `inject` 声明依赖,移除全部 null 检查;创建 ConversationRoot/Session/Composer 对标 DSH conversation slot 层级;新增 `slots.inject()` 消费声明方法;移除 11 个重复/无消费点 slot 注册;MessageBubble/InputArea/ChatPanel/Sidebar 全面接入 SlotBridge/SlotListBridge 消费 conversation 子 slot。30+ 文件修改,10 个新组件。`tsc --noEmit` 零错误 + `vite build` 通过。
>
> **v1.4.0 更新**:UI/UX 体验优化 11 项 Bug 修复 + 编译 Warnings 清零 — ①技能市场 skill.sh 插件内容乱码修复(收紧 HTML 爬取正则)②外部技能加载超时优化(http_get 30s→15s)③智能体新建编辑区滚动定位 ④启动后模型选择默认值修复(configureEngine 重试)⑤CI/CD 面板从弹窗改为面板切换 ⑥梦幻皮肤对话编辑框毛玻璃效果修复 ⑦梦幻皮肤侧边栏圆角与主对话框统一 ⑧首页区域自适应窗口大小 ⑨建议卡片点击替换式输入(不再追加)⑩深色模式安全策略按钮紫色边框样式 ⑪性能面板从弹窗改为面板切换。Rust 编译 4 个 warnings 全部清零。15 文件修改。`tsc --noEmit` 零错误 + `tauri build` 零 warning。
>
> **v1.4.1 更新**:插件管理初始化修复 + 技能市场性能优化 + 对话区域自适应 9 项 Bug 修复 — Cordis Context fiber 激活时序修复(await 微任务等待)+ PluginManager 重试增强(50→100 + non-strict fallback)+ 三大技能市场 MAX_PAGES 减少 + configureEngine DB 未就绪重试 + CicdPanel 去除 header/关闭按钮 + 三套皮肤圆角统一 12px + 首页布局 flex-start 修复 + Write Code prompt 完整化 + 底部 CI/CD 按钮移除 + 对话区域 max-width 扩展。10 文件修改,`tsc --noEmit` 零错误。
>
> **v1.4.2 更新**:10 项 Bug 修复 + 3 项架构增强 — ①默认模型显示彻底修复(dbReady 同步读取 + engineRef 重试 + model-badge 友好名称 + getConfiguredApiModels name 属性修正)②右侧边栏 CI/CD 面板遮挡彻底修复(createPortal + z-index + right/maxWidth 调整)③底部栏多余模型选择器删除 ④输入框聚焦紫色边框→透明 ⑤技能市场缓存机制(先加载缓存快速显示 + "检查更新"按钮覆盖缓存)⑥Git 分支按钮居中 + 刷新逻辑修复 ⑦右侧边栏白色背景 + 拖拽影响左侧修复 ⑧顶部栏空白区域消除 ⑨CicdPanel 白色背景修复 ⑩顶部栏右侧按钮居中副作用修复。**架构增强**:Cordis 插件系统时序改进三步方案(fiber.await() 显式等待 + consumer 重试机制 + fiber 状态日志)+ SlotBridge 降级机制健壮性增强(SlotErrorBoundary + 降级提示 + 诊断日志)+ 头像系统升级(DiceBear API 50 个预设混合 13 种风格)。20+ 文件修改,`tsc --noEmit` 零错误 + `vitest run` 全量通过。
>
> **v1.5.0 更新**:Cordis "一切插件化" 工具发现机制 — 对标 DSH `ctx.systemPrompt.section()` + `ctx.tools.schemas()` 模式,彻底解决 LLM 工具发现断档问题。①`ToolDef` 新增 `guidance` 字段,工具自带使用引导 ②`toolsProvider` 改造:工具注册时自动将 guidance 注册为 `systemPrompt` prompt section,工具卸载时自动移除 ③`buildSystemPrompt` 删除硬编码工具列表,改为从 `systemPrompt.assemble()` 动态收集 ④`LLMEngine` 新增 `collectToolGuidance()` / `collectToolGuidanceSync()` 双路径收集方法 ⑤全部 31 个工具补充 guidance 文案(核心 11 + 能力 8 + 高级 6 + 笔记 4 + 会话 4 + 目标 3 + 终端 4 + 任务 2 + 协同 4 + 小队 3 + Issue 4 + 工作流 1 + 动态插件 5)⑥`skill-creator` 技能增强:LLM 可通过 `write`/`bash` 工具从 URL 或 ZIP 安装技能,`load_skill` 增加文件系统回退自动发现新技能。31 文件修改,`tsc --noEmit` 零错误 + 全量测试通过。
>
> **v1.5.1 更新**:DSH 架构对标深度整改 + 严重 Bug 修复 + YAML 声明式插件加载 — ①新增 YAML 声明式插件加载器(对标 DSH `cordis.patch.yml`),`config/codem.base.yml` + `codem.desktop.yml` 分层 bundle,80+ 插件声明式加载 + 拓扑排序 + `assertActivated` fail-loud 验证 ②修复 LLM 回答重复问题(根因:`saveMessages` 全量追加事件日志导致重复,`buildMessages` 移除事件投影路径强制只从 DB 读取 + 事件投影去重)③修复 llmEngine 未注册为 Cordis 服务(`ctx.provide('llmEngine', engine)` 在 YAML 加载前完成)④修复 mimoAuth 未注册 + PluginLoader.load() 未调用 ⑤SlotBridge/SlotRenderer 对标 DSH `scoped-slots.tsx` 重写(SlotErrorBoundary + fiber await 超时保护)⑥30+ Provider 文件统一改造(import + re-export + inject 声明对齐)⑦新增 `mimo-auth-provider.ts` + `buffer-polyfill.ts` + 3 个测试文件。118 文件修改(+2359/-1583 行),`tsc --noEmit` 零错误。
>
> **v1.5.2 更新**:大文件性能修复 + Agent Loop 无上限改造 + 模型系统动态化 + Skills 增量搜索 + 全量测试 — ①**大文件流式分页读取**:Rust 新增 `read_file_lines` 命令,使用 `BufReader` 逐行扫描,内存占用 O(limit) 而非 O(file_size),前端 `read` 工具和 `read_attachment` 改用分页 API,彻底解决数百 MB 文件分析时前后台卡死问题(对标 DSH TextRetainer 设计)②**Agentic Loop 无上限改造**:移除硬编码 `maxIterations` 上限(原 20 轮),改为 `while(true)` 无限循环(对标 DSH),新增三重安全阀:连续无进展检测(10 次)、Token 消耗上限(2M tokens)、子智能体有限迭代,根据触发原因输出不同停止提示 ③**记忆提取 API 400 修复**:`spawnForked` 深拷贝消息时丢失 `tool_calls` 和 `toolCallId` 字段导致 API 400 `missing field tool_call_id`,修复深拷贝逻辑保留完整字段 + 截断后清理孤儿 `tool` 消息 ④**模型系统动态化**:模型选择器和配置方案面板从写死列表改为从 `codem-dynamic-models` 存储动态获取(联动设置页面 API 刷新机制),更新内置"常规模式"和"经济模式"接入 DeepSeek-V4 系列,所有模式添加视觉理解 slot,删除旧的视觉代理模式 ⑤**Skills 市场增量搜索**:搜索优先查本地缓存(TTL 30 分钟),本地无结果时自动触发增量联网搜索(SkillHub 服务端搜索 AP

... (truncated)
Repository
7stars
1forks
View on GitHub
Details
DiscoveredSep 2, 2026
Last UpdatedSep 2, 2026
Author@sdcxb
Quality Score
38/100