青雲的工程笔记

关于 AI Coding Agent、源码解析,以及写代码过程中的思考。

最新文章

全部文章

给 Agent 建一套能力评测:先把「不会」和「没时间」分开

搭一套能力评测的完整过程:axis A 用 2× / 4× 预算把 16 道 0 分题拆成 time-bound、环境和能力三类;三层评测(L1 契约 / TB2 外部基准 / A–H 能力阶梯)各回答一个问题;场景是数据(scenario.json + fixture + verify + prepare 钩子),执行可换后端(host / docker / harbor),验证器跑完才注入隐藏测试,失败按 harness → environment → product_bug → time_bound → verification_strictness → capability_gap 的顺序归因;以及踩过的几个坑(workflow 异步启动、全过时 L50 不可拟合、docker 只读挂载冲突、goal 只能走 TUI)。附录是八条轴在 v0.5.14 上的实测结果。

阅读文章

截图里明明有字,OCR 为什么返回空?

一次本机 OCR 开发复盘:用搜索词召回率和字符错误率评测 macOS Vision,处理大图小字的空结果,以解码一次的分块方式缩短长截图耗时,拆分 SQLite 图片与识别文字,用 epoch 丢弃关闭重开后的旧结果,并用针对错误的测试守住行为。

留白 0.6.7 开发复盘:全文搜索、双链和取消跳转

留白 0.6.7 的开发复盘,从摘要搜索的范围缺口出发,讲 Go 内存扫描与索引的取舍、正则热点的定位、三个 Markdown 解析器共享双链样本,以及搜索导航取消后前后端状态不一致的真实 API 回归。

Computer Use 每轮 40 个工具错误,都出在哪里

Orca computer use 真机验收复盘:15 项任务的 harness 怎么跑(PTY 里的真实 TUI、从渲染出来的面板读授权、独立核验、清理核查)、前五次运行为什么都死在 harness 自己身上、基线的 37 和 40 个工具错误分别来自 bash 绕路、没有 AX 窗口的窗口编号和系统设置的 AXRaise,可靠性修复(可用窗口、带下一步的错误、无窗口快捷键、AXRaise 回退、失败预算)把错误降到 8、9 个,以及为什么一个改动至少要跑两轮。

让 Agent 去开个文件夹,它用了我自己开着的 Finder 窗口

Orca v0.5.14 computer use 窗口边界复盘:窗口归属怎么判定(本轮第一个 computer 调用时拍快照)、逐窗口审批目标 bundle#window:<id> 和规则匹配、拒绝之后为什么让本轮继续、驱动层的四道过滤(托盘 app、桌面、Chrome 同尺寸窗口、辅助窗口)、作用于整个 app 的快捷键(包括 Quit and Keep Windows)、三次真机验收的结果,以及一句 Esc 的说明为什么改了三遍。

查一次系统版本要 14 秒:测试慢在 94 万个 .o 文件上

一次 macOS 测试变慢的排查:host_supported 调用 NSProcessInfo.operatingSystemVersion,CoreFoundation 为了本地化版本字符串去找主 bundle 的 .lproj 目录,裸可执行文件的主 bundle 就是它所在的目录;target/debug/deps 里有 94.7 万个条目(94 万个 .o,来自 macOS 上 dev 构建默认的 split-debuginfo=unpacked);用一个只调用一次 operatingSystemVersion 的小程序测出空目录 2 毫秒、30 万个文件 290 毫秒、真实目录 13.6 秒;以及前两次为什么都对上了症状却没找到原因。

源码小册

沿着源码,读懂一个 Coding Agent。

全部小册

我开发的项目

把想法写成代码,持续打磨。

全部项目