系列之四 · 面向更广泛的科技读者 · 核心论点:路线图的负空间,才是信任的形状

Codewhale 是什么:一个 MIT 开源的编程智能体,主界面在终端,也能通过本地 Web、HTTP API 和编辑器插件使用;Rust 实现,4.1 万 GitHub stars。本文讲它路线图里最不寻常的一栏。

目录

  1. 大多数 roadmap 只写“要做什么”
  2. 遥测这件事,说清楚比说漂亮重要
  3. 为什么“不做”比“做”更难
  4. 这五条对用户意味着什么
  5. 一份可以拿去问任何 agent 厂商的清单
  6. 开源在这里的角色
  7. 结尾

大多数 roadmap 只写“要做什么”

Codewhale 的路线图页面有四栏:Shipped、Underway、Considered,以及一栏很少见的——Ruled out。

明确写出“不做”的,有五条:

  1. 静默或内容级遥测。 不做对话、代码、prompt、文件、模型内容的采集;不做逐轮或逐工具的时间线;不做用户不知情的收集;运行时二进制里不接第三方广告或分析 SDK。
  2. 强制本地会话走托管中继。 本地 runtime 和自带 provider 的路线,不需要经过 Codewhale 的服务。
  3. 本地运行时强制登录账号。 安装和运行不需要账号。
  4. 赞助模型推广。 模型选择器保持中立,没有付费排名。
  5. 本地会话的公开分享链接。 这个方向已经退役,不会回来;未来若有分享设计,从零开始。

我第一次看到这份清单时的反应是:这不像营销,像一份约束自己的合同。

因为每一条“不做”,都对应着一个未来可能很赚钱的方向。不做托管中继,就没有流量入口;不做账号,就没有用户体系;不做赞助排名,就没有模型厂商的预算;不做分享链接,就没有病毒式增长。

一个项目愿意提前把这些门关上,说明它想清楚了自己要靠什么活着。

遥测这件事,说清楚比说漂亮重要

必须诚实:Codewhale 的遥测默认开启。

但它开启的东西被切得很窄:版本和平台、会话时长和结果、用了哪些内置 provider、功能和错误计数。随机安装 ID 每 90 天轮换一次。不记录 IP、国家或地理位置。记录保留三个月。采集端源码在仓库里。

而它明确不碰的东西,就是 Ruled out 第一条列的那串:对话、代码、prompt、文件、文件/仓库/分支名、模型内容、凭据、逐轮或逐工具的调用时间线。

关闭方式也写得很直白:

codewhale config set telemetry false
# 或
CODEWHALE_TELEMETRY=0

首次启动会告知,而且“显示告知”这个动作本身不会替你记录任何同意。

我不认为“默认开启 + 可关闭”是完美的方案。默认关闭会更干净。但这里的区别在于:它把边界写成了可验证的条款,而不是一句“我们重视你的隐私”。 你可以去读采集端代码,可以看它到底发了什么字段。

为什么“不做”比“做”更难

做功能有正反馈:用户夸、star 涨、发布会有东西讲。

不做功能只有负反馈:有人问“为什么没有”,有人说“隔壁就有”,有人猜你是不是能力不够。

所以 Ruled out 这一栏的真实成本,不是写五句话,而是在每一次诱惑面前重复这五句话。

这也是我判断一个开源项目是否可信的方法:不看它承诺了什么,看它拒绝了什么,以及拒绝的理由是否具体。

“我们注重隐私”是口号。
“我们不采集 prompt、文件、凭据和逐工具时间线,采集端源码在这里,保留三个月,ID 每 90 天轮换”是可审计的承诺。

这五条对用户意味着什么

拆开看,每一条都对应一个具体的使用场景:

  • 不强制中继:你在飞机上、在内网、在客户现场,本地模型照样跑。
  • 不强制账号:你不用为了用一个 CLI 去注册、验证邮箱、同意一份新的服务条款。
  • 不赞助排名:/model 里的顺序不是广告位。你选模型依据的是能力和价格,不是谁付了钱。
  • 不做内容级遥测:你的代码库不会因为用了 agent 而多一条外发通道。
  • 不做公开分享链接:会话默认是私有的,分享必须是显式动作。

这些加在一起,是一句更短的话:agent 应该运行在你的机器上,用你的模型,受你的权限约束,留下你能读懂的记录。

一份可以拿去问任何 agent 厂商的清单

我把这五条改写成问题,你可以直接拿去问任何 coding agent,包括商业产品:

  1. 你的遥测具体收集哪些字段?保留多久?能不能关?采集端代码公开吗?
  2. 本地会话是否必须经过你的服务器?断网还能用吗?
  3. 不注册账号能不能用?账号和遥测是否绑定?
  4. 模型列表里有付费排名吗?厂商能不能买位置?
  5. 会话默认是私有的吗?分享是不是必须显式操作?

如果五个问题里有三个答不上来,那你面对的不是一个工具,是一个黑箱。

开源在这里的角色

Codewhale 是 MIT。这句话的实际含义不是“免费”,而是:

  • 你可以读它的遥测代码,确认它没撒谎
  • 你可以 fork 它,去掉你不想要的部分
  • 你可以把它嵌进自己的工具,不用谈授权
  • 你可以审计它的沙箱、审批和收据,而不是相信一份白皮书

“全部开源”之所以重要,不是情怀,是因为它是上面那五条“不做”唯一可执行的担保方式。没有源码,Ruled out 只是一段文案;有了源码,它是一条可以被证伪的声明。

结尾

Agent 行业现在最不缺的是能力演示。最缺的是可核对的边界。

Codewhale 的答案不复杂:一份公开的“不做”清单,一套能查的收据,一个默认只绑 loopback 的运行时,一个 MIT 的仓库。

源码在 https://github.com/codewhale-hq/Codewhale。想自己验一遍,两条命令就够:

curl -fsSL https://codewhale.net/install.sh | sh
codewhale config telemetry   # 看它到底发了什么

它没有说自己是唯一正确的选择。它只是把牌摊开了。

你可以不喜欢这副牌,但至少你知道自己在打什么。


系列下一篇:《417 人如何给 Codewhale 记账》——愿意守这些边界的,是些什么人。

Logo

更多推荐