运行时模型

了解终端界面、提供商、工具、记忆与辅助服务如何分工。

查看 Markdown

单个交互进程

普通的 q 进程拥有一个选定的工作区会话,负责协调终端界面、当前模型轮次、活跃代理以及交互生命周期。

它还会管理一个运行在私有回环端点上的 Gateway 子进程。替换提供商配置时,不必将提供商进程的生命周期与已保存的工作区状态绑定。

工作区运行时

工作区文件工具以启动 q 的目录为根。读取和编辑会检查路径与过期内容锚点。Shell 命令从工作区启动,但这并不是操作系统级沙箱。

可选的 LSP 会话也限定在工作区根目录,且从模型的角度来看是只读的。q 提供诊断、悬停信息、定义、引用与符号,同时拒绝来自语言服务器的编辑。

持久服务

q 按职责划分持久状态的归属:

组件 职责
Workspace Memory 任务历史、记录与工作区搜索索引
Global Library 共享技能、命题与判定队列
Loom 大型工具结果的不可变存档
Usage 服务 Token 事件、汇总、归档与仪表盘数据

普通 q 进程会在需要时确保这些服务可用。独立命令也可以让它们脱离 TUI 持续运行。

边界为何重要

多个 q 进程可以共享持久服务,但不会共享选定的聊天会话或正在进行的提供商对话。进程锁只占用一个会话;同一工作区内的另一个会话可以并行运行。

这一边界也使派生索引可以重建。JSON 记录是事实来源,Bleve 和 HNSW 数据都可以重新生成。