工具
privibe:面向本地推理的 Mistral Vibe 隐私分支
一款基于 Mistral Vibe 重写的本地优先 CLI 编程助手,去除云端回调,专为 llama.cpp 与 Qwe…
2026.08.16 · 周日约 5 分钟阅读
开发者社区中出现了一款名为 privibe 的命令行编程助手,它是 Mistral 公司开源 CLI 工具 Vibe 的本地优先分支。与上游版本相比,privibe 移除了所有云端调用与账号体系,所有推理都跑在用户自己的本地 llama.cpp 服务上,强调「绝不上传任何数据」的隐私定位。
项目定位与适用人群
privibe 的核心思路是:把 Vibe 原本绑定 Mistral 云端的体验,重写为面向本地模型的轻量编程代理。开发者可以用它对接自建的 llama.cpp 服务(兼容 OpenAI API)来运行 Qwen3.x 等开源权重模型。
- 完全去除云端特性:删除 telemetry、tracing、teleport、远程鉴权、数据保留等模块,配套测试与死代码一并清理。
- Mistral SDK 改为可选:默认不安装,需要时通过
uv sync --extra mistral手动启用。 - 后端适配现状:继承自上游的 Anthropic、llama.cpp 后端适配器仍在代码中,但作者明确表示未在本分支内测试,使用需自行验证。
针对本地 llama.cpp 的深度优化
privibe 大量细节都围绕 llama.cpp 的 KV 缓存机制展开,目的是让长会话在本地小模型上也能保持流畅。
- 会话结构固定前缀:
ConversationList设计上保持前缀不可变,避免破坏服务端的 prompt/KV 缓存。 - 断点恢复:
--resume/--continue通过还原原始系统提示来恢复 KV 缓存,而非重新生成导致缓存失效。 - 上下文自动探测:内置
/detect-context-size切换,模型切换后可重新探测。 - 按消息粒度调整推理强度:
/effort提供 off / low / medium / xhigh 四档,新消息切换档位不会破坏 KV 缓存,需配套定制版 llama-server,普通版本会忽略这些标记。 - 大会话渲染优化:超长会话通过「Load more」分页加载,streaming 输出按渲染节流,避免终端绘制跟不上模型生成速度。
- 兼容新版 llama.cpp 的 SSE keep-alive 心跳。
代码编辑与子代理能力
为配合较小参数量的本地模型,privibe 在代码编辑工具链上做了若干妥协与增强。
- 行级文件工具拆分为单行、块、删除三种明确操作,并提供
find_symbol符号查找。 - 每个子代理维护独立 undo 栈,写入操作串行化处理。
- 缩进自动纠正、哈希行地址在编辑偏移后自动重定位;超大文件读取返回头部预览而非全部塞进上下文。
- 跨环境路径翻译:覆盖 Windows / WSL / Git Bash / Cygwin,配置项集中在
[paths]段落。 @文件补全基于无状态 git 枚举。
交互与体验细节
--console模式提供无颜色 REPL 版本,便于脚本调用与远程 SSH。Alt+Up可向前浏览历史消息并从任意位置 fork 会话,文件回滚需键入确认码。- 双击
Ctrl+C退出,避免误触。 /resume提供文件夹路径与会话摘要的搜索面板,支持-word排除词,结果按匹配度排序。- 上下文页脚持续显示模型名与 tokens/sec,方便观察本地推理速度。
安装与运行
privibe 要求 Python ≥ 3.12,并通过 uv 管理依赖。
- 克隆仓库:
git clone https://github.com/alainnothere/privibe.git,进入目录后执行uv sync。 - 通过 alias:
alias privibe='uv run --project /path/to/privibe privibe'即可在任何目录下调用。 - 首次运行会在
~/.privibe/config.toml写入配置,开发者只需将模型条目指向本地 llama.cpp 服务即可开始使用。 - 编辑器集成:提供
uv run privibe-acp入口。 - Windows:在 Git Bash 或 PowerShell 下流程基本一致,作者表示已在日常使用中验证。
整体来看,privibe 是一个面向「不想把代码送出去」的本地开发者的细分工具:在 Mistral Vibe 体验基础上,对 llama.cpp 的 KV 缓存与小模型交互做了较深的工程化打磨,但作为个人维护的分支,其生态覆盖度与官方支持仍较为有限。
