我日常的开发环境是 VSCode Remote SSH 连到一台 Linux 开发机,然后在 VSCode 的集成终端里开 tmux。Claude Code 在 VSCode 终端里直接运行时,能正常连接 IDE——可以读到我选中的代码、跳转文件。但一旦进入 tmux,状态栏就显示「Visual Studio Code disconnected」。
这篇文章记录了从现象到根因的完整排查过程。涉及 Claude Code 的 IDE 发现机制源码、tmux 环境变量继承的坑,以及最终的修复方案。
我日常的开发环境是 VSCode Remote SSH 连到一台 Linux 开发机,然后在 VSCode 的集成终端里开 tmux。Claude Code 在 VSCode 终端里直接运行时,能正常连接 IDE——可以读到我选中的代码、跳转文件。但一旦进入 tmux,状态栏就显示「Visual Studio Code disconnected」。
这篇文章记录了从现象到根因的完整排查过程。涉及 Claude Code 的 IDE 发现机制源码、tmux 环境变量继承的坑,以及最终的修复方案。
一台 4 核 15G 的多用户开发机,某天下午突然卡死了。不是那种「卡一下就好了」的卡,而是整台机器几乎失去响应、持续了将近四个小时的那种卡。SSH 能连上但每个命令都要等很久才有回应,top 刷不动,日志也写不进去。
事后我用 atop(这台机器上每 30 秒打一次点)做了完整的事后分析,从系统级指标一路追到具体进程,最终定位到一条看起来人畜无害的构建命令。然后用 Linux cgroup 给机器加上了系统级的内存防护。
最近注意到一个叫 mattpocock/skills 的仓库登上了 GitHub Trending 榜首——一天新增五千多 Star,总数突破三万。作者 Matt Pocock 是个 TypeScript 教育者,过去一年半一直在教人怎么用 AI 智能体做开发。他最近有两场演讲被放出来,讲的是他这一年半观察下来总结出的一套 AI 编程方法论。我看完之后觉得挺有意思,所以写这篇来梳理一下他的思路——不只是仓库里那些 skill 文件本身,而是它们背后的诊断逻辑和设计哲学。
越狱检测是 iOS 移动端安全对抗中被讨论最多、也最容易被低估的环节。多数公开方案停留在「检查几条文件路径」的层面——这类检测在生产环境中几乎不堪一击。本文以一个国内大型金融 App(下文简称「App X」)的越狱检测实现为分析对象,从防御方的视角完整还原其三层纵深防御体系:检测层、冻结层、退出层。所有结论均来自对 rootless 越狱环境(Dopamine,iOS 16.x,arm64)的实际逆向验证,每一条检测手段背后都对应着真实的攻防博弈,而非理论推演。
xeCJK 是 XeLaTeX 下中文排版的核心引擎——几乎所有使用 XeLaTeX 编译的中文文档,都直接或间接依赖它处理字体切换、字间距和标点压缩。但 xeCJK 的内部机制鲜有系统性的介绍:多数用户只知道 \setCJKmainfont 和 \xeCJKsetup,对「字符之间的间距是怎么插入的」「标点压缩的数据从哪里来」「为什么 \textcolor 会破坏间距」这类问题缺乏直觉。本文试图从 XeTeX 原语层出发,逐层拆解 xeCJK 的设计,让读者建立一个从整体到局部的心智模型。