起因:AI 工作台里的「并发会话」

最近在用一个 AI 工作台,里面有个让我觉得很顺手的设计:在一个任务(task)里,可以创建任意数量的会话(session)。也就是说,可以在「主会话」进行到某个节点的时候,从那个节点开一条新的「支路」——新会话会继承当前的上下文,但后续的操作不会影响原来的会话。

有点像 Git 的分支,或者说像科幻小说里的平行时间线。

用着用着,忽然意识到:我平时记工作笔记的时候,其实也有类似的需求,只是一直没有找到好的解决方式。

工作笔记的「线性困境」

通常记工作笔记,都是一条时间线从头写到尾。思路清晰的时候,这没什么问题。但现实往往没那么干净——

有时候在处理一件事的中途,忽然冒出来一个相关但不完全相同的问题。如果继续顺着主线往下写,笔记会越来越长,主线的逻辑被稀释;但如果把这条「支路」单独开一篇笔记,又会面对一堆碎片文件,管理起来很头疼。

还有一种情况:已经写了一段内容之后,发现有一个前提假设需要深入探讨,这部分探讨有自己的结构,硬塞进主线里,层级标题会嵌套很深,读起来很累。

大概就是这样一种感觉:笔记的实际思维结构是一棵树,但记录的形式却只能是一条线

现有工具的局限

想过几种应对方式,都不太满意:

嵌套标题:最直接,但当层级超过三层,阅读和定位都变得困难,而且在主线里穿插大段的「支路」内容,很容易迷失在哪里是主干。

Obsidian 的 Canvas:Obsidian 是我现在主力用的笔记工具,它有画布功能,可以把不同的卡片(notes)组织成非线性的结构。但我的感觉是,Canvas 更适合「整理」已有的内容,而不适合边思考边写。在写作状态下,切换到 Canvas 视图的心智成本挺高的。

拆成多篇笔记:确实能解决主线被稀释的问题,但子笔记一多,就面临怎么命名、怎么归档、怎么找回来的问题。有时候一个任务里拆出了四五篇子笔记,光是管理这些文件本身就成了一件事。

想象中的样子

理想中的模式,大概是这样的:

在一篇笔记里,可以在任意位置「分叉」出一个子会话/子笔记,子内容和主线在视觉上是区分的,可以展开也可以折叠。子内容里还可以继续分叉。整体读起来像是一棵可以折叠的树,而不是一条拉得很长的线。

如果要类比的话,有点像代码编辑器里的代码折叠(code folding),但折叠的粒度是「一条思路的支路」,而不是代码块。

或者说,想要的其实是一种介于「单篇长文」和「多篇独立笔记」之间的东西——一棵笔记树,但住在同一个文件(或同一个逻辑容器)里

目前没有好答案

其实到现在也没有想到一个特别好的解决方式,这篇文章更多是把这个「困扰」记下来。

或许某个工具已经有了类似的功能,只是我还没发现;或许这是一个很小众的需求,本来就没有专门的解法;又或者,问题本身我还没想清楚,所以找不到合适的方案。

如果你有什么想法,欢迎告诉我。