skill-up
An evaluation and evolution tool for Agent Skills.
Fast, efficient, battle-tested at Alibaba's scale. Hybrid architecture code review tool: deterministic pipelines + LLM Agent, precise line-level comments, built-in multi-language ruleset (NPE, thread-safety, XSS, SQL injection), OpenAI & Anthropic compatible.
> /plugin marketplace add alibaba/open-code-review> /plugin install open-code-review@open-code-review
What's inside
Open Code Review is an AI-powered code review CLI tool. It originated as Alibaba Group's internal official AI code review assistant โ over the past two years, it has served tens of thousands of developers and identified millions of code defects. After thorough validation at massive scale, we incubated it into an open source project for the community. Simply configure a model endpoint to get started.
It reads Git diffs, sends changed files to a configurable LLM via an agent with tool-use capabilities, and generates structured review comments with line-level precision. The agent can read full file contents, search the codebase, inspect other changed files for context, and produce deep reviews โ not just surface-level diff feedback. Beyond diff review, ocr scan reviews entire files for auditing unfamiliar codebases or directories that have no meaningful diff.
Visit the official website for more details.

Compared to general-purpose agents (Claude Code), Open Code Review achieves significantly higher Precision and F1 with the same underlying model, while consuming only ~1/9 of the tokens and completing reviews faster. Note that its Recall is lower than general-purpose agents โ a deliberate trade-off favoring precision over noise.
A real-world code review benchmark built from 50 popular open-source repositories, 200 real Pull Requests, and 10 programming languages โ cross-validated by 80+ senior engineers (1,505 annotated ground-truth issues).
| Metric | What it measures | Why it matters |
|---|---|---|
| F1 | Harmonic mean of precision and recall | Best single number for overall review quality |
| Precision | Proportion of reported issues that are real defects | Higher = fewer false alarms to triage |
| Recall | Proportion of real defects that are found | Higher = fewer issues slip through review |
| Avg Time | Wall-clock time per review | Matters for CI pipeline latency |
| Avg Token | Total tokens consumed per review | Directly impacts API cost |

If you've used general-purpose agents like Claude Code with Skills for code review, you've likely encountered these pain points:
The root cause: a purely language-driven architecture lacks hard constraints on the review process.
Open Code Review's core philosophy is to combine deterministic engineering with an agent, each handling what it does best.
Deterministic Engineering โ Hard Constraints
For review steps that must not go wrong, engineering logic โ not the language model โ guarantees correctness:
message_en.properties and message_zh.properties are bundled together). Each bundle runs as a sub-agent with isolated context โ a divide-and-conquer strategy that stays stable on very large changesets and naturally supports concurrent review.Agent โ Dynamic Decision-Making
The agent's strengths are concentrated where they matter most โ dynamic decisions and dynamic context retrieval:
npm install -g @alibaba-group/open-code-review
After installation, the ocr command is available globally.
For other installation methods (install script, GitHub Release binary, from source), see Installation.
1. Configure LLM
You must configure an LLM before reviewing code, unless you use Delegation Mode.
ocr config provider # Select a built-in provider or add a custom one
ocr config model # Pick a model for the active provider

The interactive UI guides you through provider selection, API key entry, and model configuration, then automatically tests connectivity.
For CLI setup, environment variables, custom providers, and other advanced configuration, see Configuration.
2. Review
cd your-project
# Workspace mode โ review all staged, unstaged, and untracked changes
ocr review
# Branch range โ reviews feature-branch's changes since it diverged from main (merge-base mode)
ocr review --from main --to feature-branch
# Single commit
ocr review --commit abc123
# Resume an interrupted range or commit review
ocr session list
ocr review --from main --to feature-branch --resume <session-id>
# Full-file scan โ review whole files instead of a diff (no git history needed)
ocr scan # scan the entire repository
ocr scan --path internal/agent # scan a directory or specific files
ocr scan --resume <session-id> # resume an interrupted full-file scan
# Delegation mode โ let your AI coding agent perform the review itself
# OCR handles file selection and rule resolution; no LLM configuration needed
ocr delegate preview
ocr delegate rule src/main.go src/handler.go
Full documentation lives at open-codereview.ai/docs:
This project exists thanks to all the people who contribute. See CONTRIBUTING.md for development setup, coding guidelines, and how to submit pull requests.
Apache-2.0 โ Copyright 2026 Alibaba
.claude/
.claude-plugin/
marketplace.json
commands/
commit.md
open-code-review.md
tag.md
.github/
dependabot.yml
ISSUE_TEMPLATE/
bug_report.yml
config.yml
docs_report.yml
feature_request.yml
pull_request_template.md
release.yml
workflows/
ci.yml
codeql.yml
deploy-pages.yml
ocr-review.yml
pages-ci.yml
release.yml
translation-sync.yml
vscode-ext.yml
.gitignore
.npmignore
action.yml
ASSURANCE_CASE.md
bin/
ocr.js
cmd/
opencodereview/
apply_provider_field_test.go
background_file_test.go
background_file.go
budget_output_test.go
compat_test.go
completion.go
config_cmd_test.go
config_cmd.go
config_dispatch_test.go
config_runset_test.go
config_unset_error_test.go
delegate_cmd.go
delegate_exec_test.go
delegate_helpers_test.go
emit_run_result_test.go
flag_suggest_test.go
flag_suggest.go
flags_test.go
git_test.go
git.go
llm_cmd.go
main.go
misc_helpers_test.go
output_helpers_test.go
output_manifest_test.go
output_test.go
output.go
parent_cmd_test.go
procattr_unix.go
procattr_windows.go
provider_cmd_test.go
provider_cmd.go
provider_config_apply_test.go
provider_tui_cpinput_test.go
provider_tui_customform_test.go
provider_tui_deleteconfirm_test.go
provider_tui_editsave_test.go
provider_tui_funcs_test.go
provider_tui_manualenter_test.go
provider_tui_modeltui_test.go
provider_tui_persist_test.go
provider_tui_rollback_test.go
provider_tui_savefail_test.go
provider_tui_test.go
provider_tui.go
review_cmd_test.go
review_cmd.go
review_helpers_test.go
review_mcp_more_test.go
review_resume_more_test.go
root.go
rules_check_test.go
rules_cmd.go
scan_cmd_test.go
scan_cmd.go
scan_helpers_test.go
scan_resume_more_test.go
session_cmd_test.go
session_cmd.go
session_complete_test.go
session_display_more_test.go
shared_flags.go
shared_llmruntime_test.go
shared_test.go
shared.go
shell_unix.go
shell_windows.go
smallfiles_test.go
version.go
viewer_cmd.go
zero_args_test.go
CODE_OF_CONDUCT.md
CONTRIBUTING.ja-JP.md
CONTRIBUTING.ko-KR.md
CONTRIBUTING.md
CONTRIBUTING.ru-RU.md
CONTRIBUTING.zh-CN.md
examples/
bitbucket_pipelines/
bitbucket-pipelines.yml
README.md
codeup_ci/
codeup-flow.yml
post_review_test.py
post_review.py
README.md
gerrit_ci/
Jenkinsfile
post_review_test.py
post_review.py
README.md
gitflic_ci/
gitflic-ci.yaml
post_review_test.py
post_review.py
README.md
github_actions/
ocr-review.yml
README.md
gitlab_ci/
.gitlab-ci.yml
post_review_test.py
post_review.py
README.md
README.md
extensions/
vscode/
__mocks__/
vscode.js
.eslintrc.json
.gitignore
.vscode/
launch.json
.vscodeignore
jest.config.js
LICENSE
package.json
package.nls.json
package.nls.zh-cn.json
prototype.html
README.md
README.zh-CN.md
resources/
icon.png
icon.svg
src/
extension/
commands.ts
extension.ts
providers/
__tests__/
commentAnchor.test.ts
lineOffset.test.ts
commentAnchor.ts
CommentProvider.ts
ConfigPanelProvider.ts
lineOffset.ts
SidebarProvider.ts
services/
__tests__/
cliParse.test.ts
CliService.cancel.test.ts
CliService.test.ts
configDraft.test.ts
configParse.test.ts
gitMap.test.ts
GitService.test.ts
ReviewSession.test.ts
shellEnv.test.ts
cliParse.ts
CliService.ts
configDraft.ts
configParse.ts
ConfigService.ts
gitMap.ts
GitService.ts
ReviewSession.ts
shellEnv.ts
shared/
configUtils.ts
constants.ts
i18n.ts
messages.ts
providers.ts
types.ts
webview/
__tests__/
store.test.ts
App.tsx
bridge.ts
components/
CommentCard.tsx
CustomProviderManager.tsx
EnvSetupGuide.tsx
FileList.tsx
LogViewer.tsx
PasswordInput.tsx
Select.tsx
configPanel.tsx
ConfigPanelApp.tsx
configStore.ts
I18nProvider.tsx
index.tsx
store.ts
styles/
global.css
views/
CancelledView.tsx
ConfigView.tsx
DoneView.tsx
EmptyView.tsx
FailedView.tsx
IdleView.tsx
RunningView.tsx
tsconfig.extension.json
tsconfig.json
tsconfig.webview.json
webpack.config.js
yarn.lock
go.mod
go.sum
GOVERNANCE.md
imgs/
benchmark-en.png
benchmark-ja.png
benchmark-ru.png
benchmark-zh.png
highlights-en.png
highlights-ja.png
highlights-ru.png
highlights-zh.png
logo-core.svg
logo.svg
providers.jpg
install.ps1
install.sh
internal/
agent/
agent_test.go
agent.go
budget_test.go
coverage_test.go
estimate_test.go
estimate.go
getters_test.go
init_test.go
manifest_hash_test.go
manifest_integration_test.go
preview_run_test.go
preview_test.go
preview.go
util_test.go
util.go
config/
allowlist/
allowed_ext_test.go
allowed_ext.go
default_exclude_patterns.json
supported_file_types.json
rules/
canonical_config_test.go
resolve_github_test.go
rule_docs/
arkts.md
astro.md
bicep.md
build_gradle.md
c.md
cargo_toml.md
composer_json.md
cpp.md
default.md
freemarker.md
github_config.md
github_workflows.md
go.md
graphql.md
haskell.md
java.md
json.md
julia.md
kotlin.md
mapper_dao_xml.md
nim.md
nix.md
package_json.md
php.md
po.md
pom_xml.md
pot.md
prisma.md
properties.md
protobuf.md
python.md
rust.md
terraform.md
ts_js_tsx_jsx.md
yaml.md
system_rules_test.go
system_rules_unmarshal_test.go
system_rules.go
system_rules.json
template/
prompts/
main_task_system.md
main_task_user.md
memory_compression_task_system.md
memory_compression_task_user.md
plan_task_system.md
plan_task_user.md
re_location_task_system.md
re_location_task_user.md
review_filter_task_system.md
review_filter_task_user.md
scan_template.json
task_template.json
template_test.go
template.go
testconnection/
task.json
testconnection_test.go
testconnection.go
toolsconfig/
tools.json
toolsconfig_test.go
toolsconfig.go
delegate/
format_test.go
format.go
rulegroup_test.go
rulegroup.go
diff/
first_line_test.go
git_resolve_test.go
git_test.go
git.go
gitignore_test.go
gitignore.go
hunk_test.go
hunk.go
parser_test.go
parser.go
relocation_test.go
relocation.go
resolver_test.go
resolver.go
workspace_file_test.go
workspace_file.go
gitcmd/
runner_test.go
runner.go
llm/
bpe_data/
cl100k_base.tiktoken
client_params_test.go
client_test.go
client.go
embedded_loader_test.go
embedded_loader.go
message_test.go
protocol_test.go
protocol.go
providers_test.go
providers.go
resolver_norm_test.go
resolver_shellrc_test.go
resolver_test.go
resolver.go
responses_client_test.go
responses_client.go
usage_resolver_test.go
usage_resolver.go
llmloop/
compression_test.go
compression.go
init_test.go
loop_execute_more_test.go
loop_execute_test.go
loop_test.go
loop.go
pool_test.go
pool.go
runner_test.go
mcp/
client_test.go
client.go
provider_test.go
... 392 moreAn evaluation and evolution tool for Agent Skills.
FAQ
alibaba-open-code-review is a Claude Code plugin with 4 hand-picked skills for development work, indexed on Flowy. Install it with the command on its page. It includes open-code-review-delegate, open-code-review, open-code-review-delegate. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.