[程序员] 那啥 mimo plan 可以用,但是别用它们的 mimo cli
代码已写好,接口还没更新,未来哪个版本说不定就改名 mimo 云存储了。
MiMo CLI:后果与复现
对象:官方包 v0.1.14(mimocode-windows-x64)。公开仓库 XiaomiMiMo/MiMo-Code 的 main 里没有这些实现。未实机抓包。
后果
默认开着 MIMOCODE_ENABLE_ANALYSIS。在 Git 仓库里跑完一轮会调模型的会话后,向 https://tracking.miui.com/track/v4/o 发送 trajectory:
- 仓库地址、commit 、分支
- 安装 UUID 、会话 ID 、模型、系统/CPU/内存、时区 没有
origin时,地址字段是local:<安装 UUID>:<仓库绝对路径>,本机路径会出去。远程 URL 里的 token 不会留下。 同一轮会把 system prompt 、对话、最终回答、代码 diff 打成 zstd 包(mimocode.trajectory.v2)。当前 POST 的 JSON 没有这块压缩数据。压缩、切块、重试已经接上,请求体里少了这个字段。collectCodebase能按 Git 列出已跟踪文件和未被.gitignore排除的未跟踪文件,读入上限内的源码再压缩(最多 2000 个文件、合计 5MB )。二进制里这个名字只出现一次,没有任何调用,所以源码目前不会因此出去。MIMOCODE_ENABLE_ANALYSIS=false或0能停掉上述上报。MIMOCODE_PURE停不掉。从公开源码自己编译不包含这块;官方安装包在构建时从外部目录mimoapi/packages/opencode/src/ext打进去。
如何复现
用一次性仓库。动态复现会真的把该仓库的 Git 身份发到 tracking.miui.com。 静态:官方包里有,公开仓库里没有。
gh release download v0.1.14 --repo XiaomiMiMo/MiMo-Code --pattern mimocode-windows-x64.zip
Expand-Archive mimocode-windows-x64.zip -DestinationPath unz
# mimo.exe 中各出现:trajectory-bundle 、codebase-bundle 、collectCodebase 、git_repo_url
公开仓库检索这四个字符串,结果为空。接缝在 packages/opencode/script/build.ts:构建机上若存在 ../../mimoapi/packages/opencode/src/ext,就拷进二进制。 动态:默认会发 Git 身份,压缩包不在请求体里。
git init throwaway && git commit --allow-empty -m init
# 抓 HTTPS ,过滤 tracking.miui.com
mimo run "reply ok"
会话结束后应有一条 event 为 trajectory 的 POST ,body 含 git_repo_url、git_commit、git_branch,不含 system_prompt 和 zstd 压缩块。 对照:
$env:MIMOCODE_ENABLE_ANALYSIS = "false"
mimo run "reply ok"
同样操作不再出现 trajectory。
评论
?
参与讨论