Phase 1.2: nerve sense list — CLI 查看已注册 Sense 及状态 #37

Closed
opened 2026-04-22 15:16:43 +00:00 by xiaoju · 0 comments
Owner

背景

用户/agent 需要知道当前 workspace 有哪些 sense、属于哪个 group、最后一次 compute 时间等信息。

需求

nerve sense list

nerve.yaml 读取 sense 配置,展示:

SENSE          GROUP    THROTTLE  TIMEOUT   LAST COMPUTE
cpu-usage      system   5s        10s       2s ago
disk-usage     system   30s       —         1m ago  
active-tasks   tasks    10s       30s       never

nerve sense 作为子命令入口

// packages/cli/src/commands/sense.ts
const senseCommand = defineCommand({
  subCommands: {
    list: senseListCommand,
    trigger: senseTriggerCommand,  // from Phase 1.1
  }
})

cli.ts 注册 sense 子命令。

"Last Compute" 数据来源

方案 A(简单,推荐):从 data/logs.db 查询 source='reflex', type='run_complete' 最新记录。

方案 B(如果 log 没记录 sense compute):查询每个 sense 的 .db 文件最新 ts。

验证

  • 单元测试:格式化输出
  • 集成测试:读取 nerve.yaml + 查询 last compute

参考

  • packages/cli/src/commands/status.ts
  • packages/core/src/config.ts
## 背景 用户/agent 需要知道当前 workspace 有哪些 sense、属于哪个 group、最后一次 compute 时间等信息。 ## 需求 ### `nerve sense list` 从 `nerve.yaml` 读取 sense 配置,展示: ``` SENSE GROUP THROTTLE TIMEOUT LAST COMPUTE cpu-usage system 5s 10s 2s ago disk-usage system 30s — 1m ago active-tasks tasks 10s 30s never ``` ### `nerve sense` 作为子命令入口 ```typescript // packages/cli/src/commands/sense.ts const senseCommand = defineCommand({ subCommands: { list: senseListCommand, trigger: senseTriggerCommand, // from Phase 1.1 } }) ``` 在 `cli.ts` 注册 `sense` 子命令。 ### "Last Compute" 数据来源 **方案 A(简单,推荐)**:从 `data/logs.db` 查询 `source='reflex', type='run_complete'` 最新记录。 **方案 B(如果 log 没记录 sense compute)**:查询每个 sense 的 `.db` 文件最新 ts。 ### 验证 - 单元测试:格式化输出 - 集成测试:读取 nerve.yaml + 查询 last compute ### 参考 - `packages/cli/src/commands/status.ts` - `packages/core/src/config.ts`
This repo is archived. You cannot comment on issues.
No Label
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/nerve#37