最近有朋友来问我 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 开发成本的隐形黑洞
在聊 Headroo
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 ...
最近在折腾本地知识库索引方案的时候,遇到了一个很常见的问题:每次新增或修改笔记之后,需要手动触发一次索引重建脚本,时间长了非常容易忘记。轮询方案(每隔几秒扫描一次目录)倒是能解决问题,但代价是 CPU 和 I/O 的持续消耗,在有几万个文件的知识库里显得格外浪费。这时候朋友推荐了 [[fswatch]],用了之后觉得这才是正确的打开方式。
fswatch 是什么
fswatch 是一个开源的跨平台文件系统监控工具,由 Enrico M. Crisostomo 开发并维护,项目托管在 GitHub 上。它的核心思路很简单:订阅操作系统提供的文件系统
Read more ...
用 [[Claude Code]] 已经有一段时间了,它作为 AI 编程助手确实好用,但有一个问题始终让我感到遗憾:每次开启新的会话,Claude 就像刚出生一样,对之前我们一起讨论过的架构决策、踩过的坑、做出的权衡,统统不记得了。我得重新介绍项目背景,重新解释上次解决的思路,重新建立起那个”默契”。直到我发现了 claude-mem 这个项目,才意识到这个问题有了相当优雅的解法。
AI 助手的”记忆缺失”问题
现代 AI 编程助手的上下文窗口虽然越来越大,但本质上仍是无状态的——每个会话独立,上一次的交流不会自动延续到下一次。对于临时性的任务,
Read more ...