treq
本地优先的接口调试客户端:界面像 Insomnia,数据是磁盘上一堆能进 Git 的 YAML。
左边是空间 → 集合 → 分组(任意层级)→ 请求的树,中间编辑,右边看响应。 五种 Body、四种认证、JSON 高亮与折叠、状态码 / 耗时 / 大小、JSON 路径提示、cURL 导入与代码生成。 285 个测试函数和每次改动后的截图自检,是它敢连续重构的前提。

过去半年,我把需求用中文说给两个跑在本机的编程助手——pi 和 dsh—— 由它们读仓库、改代码、跑测试、打包、装进 /Applications。 这里是我让它们造出来的 12 件软件与工具、一组 Agent 工具链,以及每件产物背后的构建轨迹。
本地优先的接口调试客户端:界面像 Insomnia,数据是磁盘上一堆能进 Git 的 YAML。
左边是空间 → 集合 → 分组(任意层级)→ 请求的树,中间编辑,右边看响应。 五种 Body、四种认证、JSON 高亮与折叠、状态码 / 耗时 / 大小、JSON 路径提示、cURL 导入与代码生成。 285 个测试函数和每次改动后的截图自检,是它敢连续重构的前提。

原生 macOS 邮件客户端:没有 WebView,没有现成邮件库,IMAP/SMTP/MIME 全部手写。
它只回答一个问题:一个邮件客户端能有多小。3.6 万封邮件实测 94 MB 物理内存、空闲 0.3% CPU、5.4 MB 二进制。 HTML 正文用真实文本排版渲染——标题、列表、表格、引用回复、内联图片,还能拖选复制。
为「上千个源、又快又省」写的桌面 RSS / Atom / JSON Feed 阅读器。
单定时器调度、两级预算并发、条件请求(没更新就只花一个 304、零字节正文)、自适应轮询,每个队列都有硬上限。 三种浏览维度(按博客 / 标签 / 分类)全部虚拟化。 还能让本机 pi 把任意网页变成订阅:一个 OPML 落地 102 个源 / 12 个分组。
按住一个键说话,本机的 pi / dsh / opencli 替你动手。
whisper.cpp 完全离线识别,tiny 出实时预览、small 出终稿(解码耗时 0.15s / 0.9s)。 一条指令拆成录音 → 识别 → 理解 → 思考 → 执行 → 完成六步,每步耗时都来自真实信号; 执行后端可一键切换 pi RPC / dsh headless / opencli / shell。
个人创作宇宙工作台:故事、角色、事件、章节都长在一张图上。
universe → entity / era / event / story → chapter 的 SQLite 图模型;AI 对话产出提案,落库前留修订快照; 服务端渲染 + HTMX,静态样式提前构建,运行期不需要 Node;一个二进制,只监听 127.0.0.1。
拆成两半的博客系统:本地写作,服务器只读。
tblogs-admin 读本地 Markdown → 生成内容包与部署文件 → 发布;
tblogs-server 只提供 HTTP,没有任何写作入口,被攻破也改不了文章。
axum + SQLite + askama + pulldown-cmark,无前端构建、无 CDN。
27 年《政府工作报告》全文语料库,外加一层检索。
2000–2026 无缺年,27 份 Markdown、约 50.4 万字,每年一份元信息表 + 正文;保留原始 HTML 快照以便离线复核。
中央站点改版后缺失的 6 年,用省级政府官方转载补齐并逐条标注来源。rag/ 里是建库、嵌入、检索三件套。
用屏幕上的动画二维码,在没网、没共享剪贴板的两台机器之间搬文本和文件。
上游是浏览器发、摄像头收;这个 fork 新增 host/:不起摄像头,直接扫屏幕一块区域—— 专治「隔离虚拟机 ↔ 宿主机」。macOS 是 gpui 窗口版(实时预览、拖框选、多显示器、系统通知), Windows 是无界面控制台版。收到的文本不落盘,直接进剪贴板;文件写 ~/Downloads。
把 Edge 里越开越多的分组标签页,存成可检索、可选择性恢复、可安全关闭的快照。
记录窗口、分组、颜色、折叠状态、固定页、顺序和当前标签,按「办公 / 个人」归档;保存并关闭可释放几百 MB 内存; 还能导出离线 HTML 报告。保存时去重、识别 utm 跟踪参数。自带 4 套单测 + 端到端。

文件名和文件内容一起搜:三个命令行工具拼成一个 uTools 插件。
字面量 / glob / 模糊三种模式;类型、时间过滤;结果流式渲染,↑↓ 选、Enter 打开、⌘Enter 定位。 可选接本机 pi / dsh,把「上周改过的资产配置表格」解析成查询条件。
在 uTools 里录摄像头:用一个脚本 app 把 ffmpeg 变成独立的 TCC 实体。
uTools 有硬化运行时却缺相机权限,getUserMedia 拿不到帧、子进程也被 TCC 拒绝。 解法是 CamHelper.app 经 LaunchServices 启动:预览进程常驻、录制进程按需,分段 MP4 可安全强杀。
把 PDF 转成纯文本的一行命令,扫描件走 OCR。
基于 liteparse:--ocr、--pages 1-5,10、--lang chi_sim+eng。
小到只有 58 行,是「让 agent 顺手写个工具」的最小样本。
跨机派单:任务走 ssh 的 stdin,远端 Windows 上的 dsh headless 执行,中文、引号、换行都不被 shell 转义破坏。
macOS 窗口服务器失步(Dock 卡住、空间切不动)的诊断与逐级复位;唤醒探测用 sysctl kern.waketime,只有新唤醒才做重诊断。
终端管控(联软 / 微步)的临时开关:用 bootout 只卸载当前会话,重启自动恢复。
从登录快照读账号,注入 WorkBuddy 的 OTel 上报环境变量,由 LaunchAgent 开机执行。
pi 扩展:会话启动即拉余额,之后每 5 分钟刷新到状态栏——把「还剩多少钱」变成常驻信息。
把重复的流程固化成可被 agent 调用的说明书:Jira 三件套、ISMP 审计、会议室预约、macOS 三件套、成本审计……
一句话、一段抱怨、一张截图,不写规格
agent 先读 README、测试与现有代码,形成约束
一次一件事,跑测试、跑截图自检
bundle → /Applications,真实用一轮
把取舍写进 README / AGENTS.md,下次继承
--mode rpc 可被别的程序调用(TVA 就是这么接的)src/ 与 crates/ 下 .rs 的行数合计,不含 target/ 与依赖;JS/TS 同理。共 154,694 行。~/.pi/agent/sessions/<工作区>/*.jsonl 共 190 个;dsh:~/.dsh/sessions/<工作区>/ 共 68 个,合计 258。目录名即当时的工作目录。/Applications 下实际存在为准:treq、maildesk、artifeeds、RaptorQR Receiver。git remote 指向 github.com/tuean 为准:treq、maildesk、RaptorQR、utools-fd-search、toval、artifeeds、tbas、utools-selfie。docs/,非本次补拍;treq、TBAS 为运行实拍。