关于
The crit-cli skill enables programmatic creation and management of inline code review comments for multi-agent workflows. It allows publishing/unpublishing reviews, syncing with GitHub PRs/GitLab MRs, and reading crit JSON files. Use this for headless operations instead of interactive review sessions.
快速安装
Claude Code
推荐npx skills add tomasz-tomczyk/crit -a claude-code/plugin add https://github.com/tomasz-tomczyk/critgit clone https://github.com/tomasz-tomczyk/crit.git ~/.claude/skills/crit-cli在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
Crit CLI reference
Use this skill for headless operations, not to start an interactive review.
Comments have three scopes: line and file comments live under
files.<path>.comments; review comments live in review_comments.
The review file path is shown by crit status.
Read comments and select a session
crit comments
crit comments --json
crit comments --all
crit comments --plan <slug>
crit comments [path]
crit status --json
Default comment output includes unresolved review-level and file comments.
Missing resolved means unresolved; only true means resolved. Read replies
before acting. quote narrows the requested change, anchor locates content
after edits, and drifted: true means line numbers may be approximate.
When multiple sessions match, headless commands refuse to guess. Use the
sessions from crit status --json to select --session <id> for
comment, comments, share, pull, or push.
Review JSON
{
"review_comments": [
{
"id": "r_a1b2c3",
"scope": "review",
"body": "Overall feedback",
"resolved": false,
"replies": []
}
],
"files": {
"src/example.go": {
"comments": [
{
"id": "c_d4e5f6",
"scope": "line",
"start_line": 5,
"end_line": 10,
"body": "Inline feedback",
"quote": "selected text",
"anchor": "Original source lines",
"author": "Reviewer",
"resolved": false,
"replies": [
{"id": "rp_a1b2c3", "body": "Updated", "author": "omp"}
]
}
]
}
}
}
File comments use scope: "file" and start_line: 0.
Author and reply
crit comment --author 'omp' '<review-level body>'
crit comment --author 'omp' <path> '<file-level body>'
crit comment --author 'omp' <path>:<line> '<body>'
crit comment --author 'omp' <path>:<start>-<end> '<body>'
crit comment --reply-to <id> --author 'omp' '<what changed>'
Always pass --author 'omp'. Single-quote bodies to protect backticks and
shell metacharacters. Source lines are 1-indexed file-on-disk lines, not
diff line numbers. Reply bodies support markdown.
Only use --resolve when the user explicitly asks. The same restriction
applies to the resolve field in JSON.
Plan-mode reviews live under ~/.crit/plans/<slug>/. Always use
--plan <slug> when replying; the slug is in the feedback prompt.
crit comment --plan <slug> --reply-to <id> --author 'omp' '<what changed>'
If an ID occurs in multiple files, disambiguate with --path <path> or the
file field in a bulk entry.
Bulk comments and replies
For three or more comments, write a JSON array using the write tool:
[
{"scope": "review", "body": "Overall feedback"},
{"path": "src/example.go", "scope": "file", "body": "File feedback"},
{"file": "src/example.go", "line": "5-10", "body": "Inline feedback"},
{"reply_to": "c_d4e5f6", "body": "Updated"}
]
crit comment --json --file /tmp/crit-comments.json --author 'omp'
Bulk writes are atomic. --file - reads stdin. Each entry requires body.
line accepts an integer or range string; end_line is optional.
file and path are aliases. Per-entry author overrides --author.
Optional quote and quote_offset describe a selected substring.
Scope is inferred: reply_to means reply; no file/path or line means review;
path without a line means file; file/path plus line means line.
Forge sync
crit pull [number-or-url]
crit push --dry-run [number-or-url]
crit push --event comment [-m '<body>'] [number-or-url]
crit push --event approve [number-or-url]
crit push --event request-changes [number-or-url]
crit pull --forge gitlab <iid>
Use authenticated gh for GitHub or glab for GitLab. The current branch
can supply the PR/MR number. Only post reviews when the user asks.
Sharing
crit share <file> [file...]
crit share --share-url <url> <file>
crit share --org <slug> --visibility unlisted <file>
crit unpublish [file...]
Only share or unpublish when requested. Relay the complete printed URL.
Use --qr only in real monospace terminals. Organization visibility defaults
to organization; other values are unlisted and public.
--share-url chooses the deployment; it is required if multiple configured
targets have no default. Unpublish uses the persisted delete token.
GitHub 仓库
常见问题
什么是 crit-cli Skill?
crit-cli 是一个 Claude Skill,作者为 tomasz-tomczyk。Skill 将 Claude 按需加载的说明和资源打包,让 Claude 无需额外提示即可执行与 crit-cli 相关的任务。
如何安装 crit-cli?
使用本页的安装命令:将 crit-cli 作为插件添加到 Claude Code,或将其仓库克隆到 skills 目录,然后重启 Claude 以加载该 Skill。
crit-cli 属于哪个分类?
crit-cli 属于元分类。
crit-cli 可以免费使用吗?
可以。crit-cli 已收录在 AIMCP,可免费安装。
相关推荐技能
Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。
这个Claude Skill为开发者提供完整的Polymarket预测市场开发支持,涵盖API调用、交易执行和市场数据分析。关键特性包括实时WebSocket数据流,可监控实时交易、订单和市场动态。开发者可用它构建预测市场应用、实施交易策略并集成实时市场预测功能。
该Skill帮助开发者创建OpenCode插件,用于接入命令、文件、LSP等25+种事件。它提供了插件结构、事件API规范和JavaScript/TypeScript实现模式,适合需要拦截操作、扩展功能或自定义事件处理的场景。开发者可通过它快速构建响应式模块来增强OpenCode AI助手的能力。
SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。
