聊天界面
大多数 AI 产品把机器的劳动藏起来:你发问,看到一个转圈,然后答案落进来。Previously 反着来——**它怎么想起来的、它翻了哪段过去、它趁你不注意改了什么,全部摊在你面前。**记忆被使用的过程,本身就是界面。
一条回答,三个阶段
你发出的每条消息,会收到一个动画块,里面按流式顺序渲染三个视觉上截然不同的阶段:
- 思考 —— 一张可折叠的卡片,标题是「Thinking · Ns」加一枚大脑图标。点开,里面是完整的推理 Markdown;不想看就折起来,它不占地方。
- 工具卡片 —— 每件被调用的工具都有自己的卡片,标签是有内容感知的:一张 recall 卡片上写着它在回答的那个问题,一张 slice 卡片上标着它打开的日期。每张卡片有五种状态——运行中、完成、出错、被打断、被拒绝——点开可以通过一段平滑的 grid-rows 过渡展开完整输出。
- 回答正文 —— 最后才是 Markdown 格式的回答。
这个顺序不是排版偏好,它是事实的顺序:先想,再查,再答。
回忆是直播的
recall 卡片不只是一个结果容器。它把自己的步骤实时流出来——读取时间线窗口、追踪一条 strand、打开一个切片——最后沉淀为答案加置信度。你能看见它翻到哪一年、打开了哪几片、最后有多确定。「想不起来」也会原样显示,而不是被包装成一个含糊的回答。
进化也有一张卡片
一次进化运行在流里占据它自己的位置:一张卡片,标题是「evolved: ……」或「checked, no updates」。点开可以看到触发的 fitness 信号、方向裁决,以及 mutations 的 diff。系统在你没看的时候改了它自己——第二天早晨,改动就躺在对话里,带着证据。
家务活在明处
每轮开始前的 housekeeping——解析切片、检查进化、记账——不是后台黑盒。它显示为回答之前的一张紧凑的准备清单卡片,一项一项勾掉。在本机形态的 bridge 模式下,整个阶段合并成一张流式卡片;如果你的订阅 CLI 给不出结构化事件,卡片会诚实地挂上琥珀色的降级警告,而不是假装一切正常。
过去是一个可以滚到的地方
界面左侧是一轮全高的时间轮:由真实切片组成的聚焦轮盘。滚动只是预览——里程表式滚动的日期读出告诉你正悬停在哪段时间上;点击才是加载——一次「时间旅行」过渡之后,你站在了那一天,顶部有相对时间读出(「3 天前」)。
历史视图里有:一条「Previously On」条(这一天接着上次的什么),当天的轮次列表,每个轮次上的认知气泡——点开是 agent 当时的想法,来自那片切片的 timeline/agent.md——以及页脚的未闭合线索与决定。过去不是一份导出的记录,是一个可以回去看看的地方。
到达与出发
打开界面时,迎接你的不是空白输入框,而是一张标题卡:「PREVIOUSLY ON」加你的名字,从活跃切片的焦点和未闭合线索热启动,附上建议问题。它记得你们上次聊到哪。
输入框是一个 textarea:图片可以粘贴或拖入,发送键在流式时变成停止键,模型选择器持久化在服务端——换设备不换模型。界面自带中英切换、深色主题,在手机上也是完整响应式的。
一句话:这台机器的工作发生在明处——它是怎么想起来的,你可以亲眼看。