最近在做分享的时候,被大家经常问到当Claude Code和Codex多开的时候,我是怎么做session状态管理的?

大家现在Coding都是开四五个session并行作业,每个session负责一个模块的活,这样和AI一起的执行力会变强很多。

但人脑的带宽是有限的,人的反馈和验收只能是串行的,那session的处理就要一个一个进行,这时候就要尽可能的让每一个session不间断,才能达成效率的最大化。

我在开发时候,基本上每一个session会占据一个屏幕,这个时候就要来回切屏去查看每一个session的状态,会容易发生一些遗漏的情况。

所以我索性直接搞了个蓝牙音箱外设来做管理,它能够通过亮灯和语音提醒的方式让我知道每个任务到了什么阶段。

它是一个Coding桌面工作台,实际使用中的效果是这样子的。

当Claude Code和Codex启动任务的时候,对应的状态灯就会亮起来,目前支持1-9个session并行展示。

黄绿红三种颜色分别对应任务的三个执行状态,每个灯都能够和session做一一对应。

这是黄灯的状态,任务正在执行中。

这是红灯对应的状态,任务需要人进行反馈给AI才能走下一步。

这是绿灯对应的状态,任务已经执行完成了。

这样一来,我就不用一直来回切屏看状态了。

比如我同时开了 5 个Claude Code和Codex 任务,桌面上就会亮起5个对应的状态灯。我只要抬头看一眼,就知道现在有几个任务还在执行,几个任务已经完成,哪个任务需要我马上处理。

除了状态灯,我还加了语音提醒。

语音的话则是在任务开始时会进行一轮播报,任务结束时会做一轮提醒,这个是用deepseekv4的flash模型和豆包的tts语音来进行实现的。

实际用下来在家里跑还是非常爽的,但在公司里开这个语音外放有点太羞耻了,所以我在CodePal做了一个模块来管理状态灯和语音的启用说明,在家一般都会全部打开,公司里就只开状态灯了。

广告媒流(小程序)-公众号

如果你不想自己折腾开发,也可以直接去买和我一样的硬件,然后通过CodePal后台来管理运行状态即可(目前仅支持mac系统使用,Windows还未进行测试)

在GitHub上下载这个项目到本地,然后让AI把它运行起来:https://github.com/yunshu0909/CodePal

点击状态灯安装对应的组件,然后测试使用就可以啦。

如果想自己开发,可以参考我的开发流程。

整个环节中最麻烦的其实就是第一步,抓包到蓝牙的信号,因为我想让自己程序去控制这个硬件,就得先知道官方App到底是怎么发出蓝牙指令的,所以抓包就是核心。

抓包过程我让AI帮我整理了一些语料,你可以直接扔给AI在它抓包的时候可以少走点弯路。

1. 用 Apple PacketLogger 抓 HCI/ATT,不是 Wireshark 直接抓。
2. 因为官方 XiaoBai LED 是 iOS App Wrapper 在 Apple Silicon 上跑,BLE 走 Mac 蓝牙栈,所以可以用 File > New macOS Trace 抓。
3. 先装 Apple 的 Bluetooth 日志描述文件并重启,否则 BCM4388C2 默认不往 PacketLogger 流式吐 HCI。
4. PacketLogger 里确认 total 计数在涨。
5. 回官方 App 推纯红/纯绿整屏,让包量猛涨几百包。
6. 保存 .pklg。
7. 自己解析 .pklg:type=2 是发出的 ACL,ATT Write 在这里;按 ACL PB flag 重组 L2CAP 分片,找 cid=0x0004 的 ATT 写入。

在抓包完成之后,通过多个指令的测试确定如何发信息给蓝牙让它可以用就行了。

产品开发我就是让Claude Code帮我做了一堆设计图,然后选了一个我最喜欢的。

最后定下来的图案是这样的。

剩下的开发工作就是常规写PRD文档、梳理测试用例了,大家花点时间自然而然的和AI把产品搞出来就好啦。

这个产品做出来后,我觉得AI时代好奇心真的太重要了。

很多有趣的东西,一开始未必能够带来什么商业价值,而是人得发自内心觉得这个事情好玩,才有动力去往下推,试着试着,一个小产品就被孵化出来了,未来也许有机会变成参天大树。

也非常欢迎大家在评论区分享自己的session管理思路,让我学习萃取一下~

这个Coding桌面工作台,也是吸收了很多好朋友的想法反馈,才一点点变得更好玩的。