跳转到内容

cnb-rs issue activity

cnb-rs issue activity <NUMBER> [flags]

查看 Issue 的 timeline 活动,包含状态变更、评论、处理人调整等所有事件。

选项

  • <NUMBER>:Issue 编号(必填)
  • -L, --limit <N>:最大数量(默认 30,上限 100)

继承的全局选项:

  • --repo <REPO>:指定仓库路径(格式:group/repo
  • --json:以 JSON 格式输出,包含原始 payload
  • --domain <DOMAIN>:指定目标域名(默认:cnb.cool

输出格式

表格列:TIME(14) + ACTOR(18) + TYPE(20) + DETAIL(flex 30)

DETAIL 按事件 type 自适应渲染关键字段,未识别 type 回退到紧凑 JSON 摘要:

事件 typeDETAIL 渲染规则示例
openedpayload 为空,显示 --
commented提取 body 首行(>100 字符或多行加 …)已确认问题,正在修复
closed提取 close_reason,前缀 reason:reason: completed
assign+ user1, user2 / - user3 表示增/删+ alice, bob - carol
其它 type紧凑 JSON 摘要,120 字符截断{"name":"bug","color":"#f"}

时间列 TIMEsubmitted_at,回退到 created_at;CNB 对 opened 事件返回 0001-01-01 零值时间,会被检测并显示为 -

示例

bash
# 查看 Issue #292 的 timeline
$ cnb-rs issue activity 292

Showing 5 activities on Issue #292 in wwvo/cnb-rs/cnb-rs

TIME            ACTOR               TYPE                  DETAIL
-               illegal_name_cn...  opened                -
 35 分钟前    illegal_name_cn...  commented             (已编辑)第一条评论:测试 edit 子命令
 34 分钟前    illegal_name_cn...  commented             第二条评论:包含多行…
 26 分钟前    illegal_name_cn...  commented             comment 子命令组 P0 端到端测试通过,关闭测试 issue
 26 分钟前    illegal_name_cn...  closed                reason: completed

# 处理人调整事件
$ cnb-rs issue activity 293
...
 19 分钟前    illegal_name_cn...  assign                + illegal_name_cnb.by9cbmyhqda
 18 分钟前    illegal_name_cn...  assign                - illegal_name_cnb.by9cbmyhqda
 17 分钟前    illegal_name_cn...  assign                + illegal_name_cnb.by9cbmyhqda
...

# 限制条数
$ cnb-rs issue activity 292 -L 10

# 取完整 payload 给脚本消费
$ cnb-rs --json issue activity 292 | jq '.[] | select(.type == "commented") | .payload.body'

API

步骤API方法说明
拉取活动${API}/repos/{repo}/-/issues/{n}/activitiesGET返回 IssueActivity[],按时间倒序排列

IssueActivity 字段:

json
{
  "id": "...",
  "type": "commented",
  "actor": { "username": "..." },
  "actor_access_role": "Owner",
  "submitted_at": "2026-05-17T05:42:18Z",
  "created_at": "2026-05-17T05:42:18.506840481Z",
  "payload": {
    /* untyped JSON,按 type 不同字段不同 */
  }
}

另请参阅

Released under the MIT License.