可视化调试仪表盘
rnix dashboard 命令启动一个多面板 TUI 可视化调试界面,将智能体树视图、追踪时间线、上下文热力图、进程详情、意图可视化等功能整合在一个界面中。
概览
$ rnix dashboard┌─ Agent Tree ──────────┬─ Tracing Timeline ─────────────────────┐
│ │ │
│ ● PID 1 (running) │ [0.0s]─────[3.8s]─────[8.0s]──[10.5s]│
│ ├─ PID 5 analyst ● │ ██████ Open Read Write Close │
│ ├─ PID 6 doc-gen ◐ │ ████████ LLM call (5.2s) │
│ └─ PID 7 checker ○ │ ██ tool call │
│ │ │
├────────────────────────┼────────────────────────────────────────┤
│ Context Heatmap │ Details │
│ ████ System prompt 27% │ PID 5: code-analyst │
│ ███ Skill bodies 19% │ State: running, Step: 4/10 │
│ ████ Dialog 21% │ Tokens: 2,340 / 8,192 │
│ █████ Tool results 32% │ Skills: code-analysis, security-scan │
└────────────────────────┴────────────────────────────────────────┘视图模式
仪表盘支持三种视图模式,提供灵活的布局控制:
| 模式 | 说明 | 按键 |
|---|---|---|
| 默认 | 标准多面板布局(树 + 时间线 + 热力图) | d |
| 扩展 | 放大聚焦面板,缩小其他面板 | e |
| 全屏 | 仅显示聚焦面板,占满整个屏幕 | f |
使用 v 在模式间循环切换。当前模式指示器显示在状态栏中。
面板
智能体树面板
实时展示所有进程及其父子关系:
- 进程状态指示器:
●运行中、⏸已暂停、◐僵尸、○已终止 - 每个进程的 token 消耗量
- 当前执行阶段(step N/M)
- 使用方向键展开/折叠子树
- 显示进程 UUID 和 PID 以确保唯一标识
追踪时间线面板
水平时间线展示选中智能体(或整个 Compose 工作流)的 syscall 事件:
- 三级详细信息:在事件上按
Enter深入查看:- 第 1 级:事件类别(LLM / Tool / IPC / VFS)
- 第 2 级:事件参数和耗时
- 第 3 级:完整请求/响应数据
- 使用
+/-缩放 - 使用左右方向键滚动
- 按类别过滤:
f→ LLM / Tool / IPC / VFS - LLM 调用以耗时标注高亮显示
上下文热力图面板
可视化展示选中智能体的上下文组成:
- 按来源颜色编码:系统提示词 / Skill 指令 / 工具结果 / 对话历史
- 面积与 token 数量成正比
- 颜色深浅表示活跃程度(活跃 / 温热 / 冷却)
进程详情面板
在树中选中进程后按 Enter 打开详情面板:
- 完整进程元数据(PID、UUID、PPID、状态、Provider、Model)
- 已加载的 Skill 和允许的设备
- Token 使用量和预算
- 当前步骤和执行进度
- MCP 挂载信息
Prompt 视图
在时间线中选中步骤后按 P(Shift+P)查看该步骤的 LLM prompt。Prompt 查看器有三个标签页:
- Messages:带角色标识(system、user、assistant、tool)的对话历史。对于 CLI 驱动的进程(Claude CLI、Cursor CLI),初始用户意图会自动作为第一条消息注入。
- System:该进程加载的完整系统提示词内容,包括 Agent 指令和 Skill 内容。
- Tools:该步骤中调用的工具详情 — 名称、描述、路径/参数、输入 JSON、结果输出、错误(如有)及执行耗时。数据来源于 StepRecord,与时间线显示一致。
使用 ←/→ 切换标签页。使用 ↑/↓ 在步骤间导航,比较不同步骤的 prompt。
意图树面板
按 i 切换意图树可视化:
- 展示声明式意图的分解 DAG
- 节点状态:pending、decomposing、await_confirm、executing、completed、failed
- 子意图之间的依赖边
- 每个节点的进度指示器
安全异常面板
按 s 切换免疫系统异常面板(当免疫系统启用时):
- 活跃的安全告警及严重级别
- 行为基线偏差
- 匹配的威胁签名
- 已暂停的进程列表
分布式追踪面板
按 t 切换分布式追踪面板:
- 跨进程因果追踪的 Span 树可视化
- Trace ID 和 Span 层级结构
- 每个 Span 的耗时和 Token 使用量
- 关键路径高亮
多智能体评估面板
按 m 切换多智能体评估视图:
- 智能体声誉评分
- 协作拓扑
- Skill 协同数据
- SLA 合规指标
统一进程树(含历史)
Agent 树面板显示所有进程 — 运行中、已完成和失败的 — 在一个统一视图中。没有单独的历史模式;已结束的进程与活跃进程并列显示。
- 列:PID、状态标识(
●运行中、✓完成、✕失败、⏸已暂停)、Agent/Model、Token 数、耗时、退出码、原因 - 耗时冻结:当进程被暂停(SIGPAUSE)时,elapsed 计时器会冻结在
PausedAt - CreatedAt,不再继续计时。当进程恢复(SIGRESUME)后计时器继续运行。 - 汇总栏:Running / Done / Failed 计数、总 Token 数、平均生命周期
- 排序模式:按时间(最新优先,活跃在前)、按 PID、按状态
- 历史进程数据从
.rnix/data/steps/<uuid>/proc-info.json加载 - 已结束的子树可折叠/展开,保持导航清爽
- 选择任何进程(存活或已结束)查看完整观察数据:
- 详情面板 — PID、UUID、Provider/Model、状态、Skills、Token
- 时间线 — 从磁盘
events.jsonl加载事件 - 热力图 — 来自
ctx-profile.json的上下文快照 - 步骤/LLM — 来自
steps.jsonl的推理步骤 +process-meta.json的系统提示词
LLM 对话查看器
在选中的进程上按 L(Shift+L)进入全屏 LLM 对话查看器:
- 逐步导航(
h/l或←/→)浏览推理步骤 - 每步展示完整的 LLM 请求和响应
- 角色标识(system、user、assistant、tool)及 Token 计数
- 历史(已结束)进程的数据从磁盘
steps.jsonl加载 - 步骤列表面板显示动作类型、Token 数和每步耗时
- 按
Esc返回上一视图
调试模式
按 d 进入调试模式 — 结合实时 strace 事件和上下文分析的专用视图:
- Strace 面板 — 实时 syscall 事件流(Open、Read、Write、Close)含计时和设备标注
- 上下文分析面板 — 段级上下文热力图和预算分析
- 设备延迟统计 — 每设备平均延迟和错误计数
- 历史进程的事件从磁盘
events.jsonl加载
调试模式快捷键
| 按键 | 操作 |
|---|---|
j/k | 导航事件 |
s | 切换 strace 流 |
S(Shift+S) | 切换步骤模式显示 |
f | 按类别过滤事件 |
v | 展开事件详情 |
Tab | 在 strace 和上下文面板间切换 |
d 或 Esc | 退出调试模式 |
导航
面板导航
| 按键 | 操作 |
|---|---|
1–8 | 按编号直接跳转面板 |
Tab | 焦点切到下一面板 |
Shift+Tab | 焦点切到上一面板 |
z | 展开聚焦面板 / 恢复布局 |
滚动(树、时间线、历史)
| 按键 | 操作 |
|---|---|
j/↓ | 向下移动一项 |
k/↑ | 向上移动一项 |
PgDn | 向下翻页 |
PgUp | 向上翻页 |
g/Home | 跳转到顶部 |
G/End | 跳转到底部 |
时间线专用
| 按键 | 操作 |
|---|---|
v/Enter | 展开步骤详情 (L2) |
V(Shift+V) | 调试详情 (L3) |
e | 展开所有可见步骤 |
E(Shift+E) | 折叠所有可见步骤 |
n | 跳转到下一个错误 |
N(Shift+N) | 跳转到上一个错误 |
P(Shift+P) | 打开选中步骤的 Prompt 查看器 |
f | 进入过滤模式 |
过滤模式(在时间线中按 f)
| 按键 | 操作 |
|---|---|
T | 切换 tool_call 步骤 |
P | 切换 plan 步骤 |
A | 切换 text 步骤 |
C | 切换 complete 步骤 |
S | 切换 spawn 步骤 |
R | 切换 replan 步骤 |
Z | 切换 specialize 步骤 |
* | 全部启用 |
Esc | 退出过滤模式 |
Top 与 Dashboard 双向导航
在 rnix top 中按 d 可直接切换到仪表盘,并携带当前选中的进程。
交互操作
| 按键 | 操作 |
|---|---|
p | 暂停/恢复进程树(通过 SignalTree 切换 SIGPAUSE/SIGRESUME) |
K(Shift+K) | 终止选中的进程 |
R(Shift+R) | 恢复已挂起的进程 |
l | 查看选中进程的日志 |
r | 切换选中进程的录制 |
a | 切换告警面板 |
L(Shift+L) | 打开 LLM 对话查看器 |
d | 进入调试模式 |
? | 显示快捷键帮助 |
q | 退出仪表盘 |
在树中选中一个智能体后,所有面板会联动显示该智能体的数据。
步骤记录
仪表盘与步骤记录系统集成。每个 reasonStep 会被记录为一个 StepRecord,包含:
- 步骤号和时间戳
- LLM 消息和响应
- 每步的 token 计数
- 工具调用及其输入和结果
- 动作类型(tool_call、plan、spawn、complete 等)
- 步骤摘要
步骤记录以 NDJSON 格式持久化到 .rnix/data/steps/<uuid>/steps.jsonl,可在历史视图中浏览。
离线回放
加载持久化的录制文件进行离线分析:
$ rnix dashboard --replay <record-id>提供与实时模式相同的多面板视图,支持完整的历史数据导航,无需运行中的 daemon。