SuperAPI AI 工具集

crit-cli

通用与其它

查看项目

更新于 10-16 01:50

技能介绍

crit-cli 是 Crit 的命令行参考技能,用于让智能体(如 Claude Code)以编程方式编写、回复和读取 Crit 的行内评论(inline comments),覆盖多智能体在共享审阅中评论的流程。它属于 CLI 操作层:当用户说 /crit 或 crit 时应调用 /crit 命令,而非本参考技能。

用途与评论范围:评论分三种 scope——line(绑定具体行,存于 files.<path>.comments)、file(针对整个文件,start_line: 0)、review(总体反馈,存于顶层 review_comments 数组)。审阅文件路径由 crit status 显示。

读取评论:当 crit 完成一轮审阅,读取 stdout 并按其指示操作;未解决评论常以 JSON 嵌入提示中,并在 stderr 查看 approved: true/false。可使用 crit comments(默认仅未解决、人类可读)、crit comments --json(面向智能体的扁平 JSON)、crit comments --all(含已解决)、crit comments --plan <slug>、crit comments [path]。review 级评论会优先列出。

多会话:当当前目录与分支匹配多个活动会话时,crit comment、crit comments、crit share、crit push、crit pull 拒绝猜测,需先运行 crit status(或 --json)列出会话,再用 --session <id> 指定目标。

字段规则:resolved 为 false 或缺失均表示未解决,仅 true 表示已解决;quote 为审阅者选中的具体文本,用于收窄行范围;anchor 是评论所在行的完整文本,编辑导致行号漂移时应按 anchor 定位;drifted: true 表示原内容被删除或大幅改写,行号仅供参考。未解决评论可能带回复,需先阅读再操作。

评论写入:crit comment 支持 review 级、file 级、line 级(单行或范围)以及 DOM pin(用 --selector <css>,可配 --route),以及用 --reply-to <id> 回复。硬性规则:始终传 --author 'Claude Code'(或代理名)以正确归属;正文始终用单引号,双引号会被反引号和 shell 元字符破坏;行号指向磁盘文件(1 起),不是 diff 行号;回复正文支持 markdown;仅在用户明确要求时才传 --resolve,绝不主动解决。Live review 与 HTML 预览不接受 <path>:<line>,需用 --selector;--route 为页面路径(live 默认 /,preview 默认 /preview-content),在 --json 中用 "selector" 和 "route"。

JSON 模式:--json 可用于原子性(单次写入)与速度。短单行正文可用 stdin 管道传入;任何多段正文优先用 --file <path>,因为 shell 引用的 JSON 一旦 body 含裸换行就会失败(JSON 禁止裸换行),可先用 Write 工具写临时文件再指向。--file - 读取 stdin。逐条 schema 字段包括 file/path、line(int 或 "45-47")、end_line、body、author、scope、reply_to、resolve、quote、quote_offset。scope 推断规则:有 reply_to 即 reply;无 file/path 且无 line 即 review 级;有 path 无 line 即 file 级;有 file/path + line 即 line 级。JSON 模式下回复需在条目上设置 file 字段;review 级 ID(r_…)全局唯一,无需此字段。

PR/MR 操作:crit pull [number|url] 拉取 PR/MR 评论到审阅文件;crit push [--dry-run] [--event <type>] [-m <msg>] [n] 发布评论。需安装并认证 gh(GitHub)或 glab(GitLab);变更号可从当前分支自动检测;自建托管可在配置中设置 "forge"/"gitlab_url" 或传 --forge。--event 取值:comment(默认)、approve、request-changes,-m 添加 review 级消息。

分享:crit share <file> 上传并打印 URL;支持 --share-url、--qr(仅终端)、--org <slug>、--visibility。crit unpublish 移除已分享审阅,使用审阅文件中持久化的删除令牌,除非默认部署外无需额外参数。分享无需服务器,直接从磁盘读文件;若存在审阅文件,分享文件的评论会自动包含。始终把输出(URL 及 QR)转达给用户。--qr 仅终端,移动应用或 Web 聊天 UI 中应跳过。--org 分享到组织,可见性默认 organization(仅成员),可用 --visibility(organization、unlisted、public)覆盖。--share-url 在配置多个 share_targets 且无默认时必需;CRIT_SHARE_URL= 置空可禁用该进程的分享。

限制:需 gh 或 glab 已安装并认证才能 pull/push;多会话下需显式指定 --session;行号可能漂移需按 anchor 定位;--qr 依赖终端 Unicode 支持。