前几天例行 brew upgrade 之后,[[Syncthing]] 其中的某一个高频使用的同步文件夹就一直卡在 Preparing to Sync 状态,进度条纹丝不动,CPU 占用却莫名升高。我最初以为是网络问题或者对端设备没启动,结果检查一遍发现所有的其他 Syncthing 节点都正常,就是本机 macOS 这端不动弹。这个状态持续了将近一个小时,才让我意识到不对劲,开始认真排查。
问题背景
Syncthing 是一款开源的点对点文件同步工具,不依赖任何中心服务器,数据直接在你自己的设备之间流转。我用它同步多台设备上的工作目录和重要文件
Read more ...
过去一年里软件的开发方式发生了一个我自己都没料到的转变。以前写代码是工程师对着编辑器敲,现在更多时候是同时开着好几个 [[Claude Code]]、[[Codex]] 之类的编码 Agent,让它们各自去完成一个任务,工程师只负责在中间调度、审阅、拍板。这种”我带一队 Agent 干活”的模式效率确实高,但很快就撞上了一堆现实的麻烦:几个 Agent 都在同一个仓库里改文件,分支互相污染;终端窗口开了一大排,切来切去分不清哪个是哪个;改完还得一个个去看 diff、跑测试、开 PR。工具还是那套为单人设计的 IDE,可我干活的方式早就不是单人了。
直到
Read more ...
最近有朋友来问我 Git 分支和发布流程相关的问题,聊着聊着我发现,分支管理这块我自己算是比较熟悉,平时用起来也有一套固定的习惯,但当话题转到 release 发布流程的时候,我反倒得停下来想一想。
因为发布这件事,在不同的团队里真的有截然不同的管理方式。有的团队一天上线十几次,有的团队一个月才发一个大版本;有的靠一条流水线全自动,有的还保留着人工审批的关卡;有的发布的是后端服务,回滚一次只要几分钟,有的发布的是手机 App,版本一旦进了用户手机,想收回来就没那么容易了。
同样是把代码送到用户面前,路径可以差得非常远。这次朋友的提问正好戳中了这个我一
Read more ...
2026-07-03
git
,
git-flow
,
github-flow
,
trunk-based-development
,
ci-cd
,
release-management
,
devops
,
version-control
,
semantic-versioning
,
branching-strategy
,
mobile-release
,
backend-deployment
什么是 Herdr
Herdr 是一个运行在终端里的 AI 编码 agent 多路复用器(agent multiplexer)。官方用一句话概括它的定位:Herdr 之于编码 agent,就像 [[tmux]] 之于终端。它运行在你的 agent 运行的地方——本地机器、服务器,或任何可以 ssh 进去的环境,让你在一个终端里同时观察和操作多个正在工作的 agent。
随着 [[Claude Code]]、[[Codex]]、[[OpenCode]] 这类终端原生的编码 agent 流行起来,开发者常常会同时跑好几个 agent 处理不同的任务或仓库
Read more ...
最近在给自己的 AI 编程工作流加入 [[Headroom]] 上下文压缩工具时,遇到了一个需要特别注意的配置问题。相信有不少人和我一样,为了降低成本或者改善访问体验,已经在 [[Claude Code]] 或 [[Codex]] 里配置了第三方 API 代理,比如一些第三方聚合平台或者自建的转发服务。这时候想再套上一层 Headroom 做 Token 压缩,就需要特别注意配置细节,不然两层代理会打架。
为什么要用第三方代理
先简单说一下背景。使用 Claude Code 或 Codex 的时候,默认走的是 Anthropic 或 OpenAI 的
Read more ...
最近我在升级 [[Claude Code]] 的时候,翻 changelog 注意到一个一直被标着 experimental 的功能开始稳定下来,那就是 teammate,官方文档里叫 Agent Teams,社区里很多人习惯叫它 Teammate Mode,也就是队友模式。说实话,第一次看到这个名字我是有点警惕的,因为这一两年里 AI 工具圈最不缺的就是各种听起来很唬人、用起来很鸡肋的”多智能体协作”概念。但真正把它打开用了几天之后,我发现这次是真的不太一样,它解决的是一个我自己每天都会撞上的实际问题,所以想专门写一篇文章把它讲清楚。
这篇文章主
Read more ...
最近一段时间我在深度使用 [[Claude Code]] 做开发工作,用得越多,账单就越触目惊心。一次稍微复杂一点的任务,比如让它读取几个文件、搜索一下代码、跑一下测试,轻轻松松就能烧掉超过 100K 的 Token。更让人无奈的是,这 100K 里面有相当大一部分是重复冗余的内容——工具调用的输出、日志、搜索结果,它们被原封不动地塞进上下文,再一次次地发给模型,而模型其实只需要其中很小一部分关键信息。
直到我发现了 [[Headroom]] 这个工具,才意识到这个问题其实有解。
上下文膨胀是 AI 开发成本的隐形黑洞
在聊 Headroom
Read more ...
在过去几年里,[[Shottr]] 一直是我在 macOS 上的主力截图工具。它体积小巧、反应迅速,带有基础的标注和 OCR 功能,8 美元的买断价格对于这个工具类别来说相当值。但就在最近,我发现了一款叫做 Capso 的开源应用,用了一周之后,我几乎没有任何理由再打开 Shottr 了。
为什么一直用 Shottr
Shottr 的核心优势在于轻量和专注。启动快、占内存少,截图之后会立刻弹出一个浮动窗口供你标注,标注完毕可以直接拖拽到任何地方,这个工作流非常顺手。它的 OCR 功能用的是 macOS 原生的 Vision 框架,识别速度快、准确
Read more ...
很早之前就将 zoxide 放到了我的 dotfiles 中,但是却发现没有好好总结一下它的用法,前两天用 Atuin 总结了一下终端下每天高频使用的命令,切换目录的使用频率遥遥领先,所以我觉得是时候好好来介绍一下 zoxide 的使用来加速终端下切换目录的操作效率。zoxide 能学习我们的行为习惯,让我们用几个字母就跳到任意常用目录。
zoxide 是什么
zoxide 是用 Rust 编写的智能目录跳转工具,可以看作是 cd 命令的进化版。它的核心原理是”frecency”算法——即 frequency(频率)和 recency(时效性)的
Read more ...
信息过载是一个老问题,但 AI 时代让这个问题有了新的解法维度。我的 [[Obsidian]] 笔记库里存着几千篇笔记,有读书摘录、技术研究、项目记录,但很多时候我自己都找不到想要的东西,更别说让这些知识产生关联和洞见了。用过 [[ChatGPT]] 和 [[Claude]],它们的对话能力很强,但没法触碰我的私人笔记。用过向量搜索工具,可以语义检索,但没有对话能力。直到发现 Khoj,才意识到这两者可以被优雅地整合在一起。
Khoj 是什么
Khoj 把自己定位为”AI 第二大脑”(Your AI second brain),这个说法很准确地抓
Read more ...