Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Review GitHub pull requests with Memtrace's local graph-backed review engine. Use when the user asks to review a GitHub pull request, run Memtrace code review, post Memtrace review comments, create a PR with a review step, or publish local graph-backed review findings to GitHub. Prefer the review_github_pr MCP tool over manual diff inspection. Do not use for local working-tree diffs — that is the built-in /code-review; this skill is for GitHub PRs via review_github_pr.
.claude/skills/syncable-dev-memtrace-code-review/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-11 | ✗→✓ | ▲ Improved | -18% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -20% | 0% |
| case-13 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 51% | 0% |
| case-08 | ✓→✗ | ▼ Worse | 197% | 0% |
Use Memtrace's local-first PR review workflow. The agent should call the review_github_pr MCP tool so review runs against the developer's local indexed graph, AST detectors, YAML rule pack, and review policy. GitHub is used for PR context and optional comment publication; source code analysis stays local.
review_github_pr with post: false.review_github_pr with post: true.graphMode: "strict" by default. Use graphMode: "off" only when the user asks to benchmark non-graph behavior or the local graph is unavailable.minSeverity: "high" and maxComments: 5 when posting. For previews, maxComments: 10 is acceptable.repoRoot when the PR checkout is not the current working directory. Pass repoId when the indexed repository id is known.Full parameter spec for every Memtrace tool: references/mcp-parameters.md (bundled at the memtrace-skills plugin root).
review_github_pr is available.post: true), record the PR URL and the posted comment IDs in the session output as the audit trail.memtrace auth login.memtrace index . from the actual repo root. If the open folder is a parent containing multiple independent repos, do not index the parent unless the user explicitly wants a shared workspace.
Summarize the review_github_pr result with these fields:
| Field | Preview (post: false) | Posted (post: true) | |---|---|---| | PR URL + repository | yes | yes | | Graph state | yes | yes | | Findings | count of candidate comments, plus file, line, severity, message per finding | number of comments posted | | Posted comment IDs | — | yes — record with the PR URL as the audit trail |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-22 | pass→pass | 8,575 | 7,314 | -15% | 1 | 1 | 0% | 1,558 | 1,842 | +18% | 0 | 0 | — |
case-01 | fail→fail | 12,480 | 5,738 | -54% | 1 | 1 | 0% | 2,178 | 1,102 | -49% | 0 | 0 | — |
case-02 | fail→fail | 6,052 | 6,712 | +11% | 1 | 1 | 0% | 977 | 1,097 | +12% | 0 | 0 | — |
case-03 | fail→fail | 12,051 | 9,287 | -23% | 1 | 1 | 0% | 922 | 982 | +7% | 0 | 0 | — |
case-04 | fail→fail | 15,031 | 7,219 | -52% | 1 | 1 | 0% | 1,449 | 983 | -32% | 0 | 0 | — |
case-05 | fail→fail | 4,114 | 5,618 | +37% | 1 | 1 | 0% | 608 | 1,013 | +67% | 0 | 0 | — |
case-06 | fail→fail | 5,671 | 5,944 | +5% | 1 | 1 | 0% | 822 | 996 | +21% | 0 | 0 | — |
case-07 | fail→fail | 10,109 | 5,904 | -42% | 1 | 1 | 0% | 1,796 | 997 | -44% | 0 | 0 | — |
case-08 | pass→fail | 3,750 | 6,557 | +75% | 1 | 1 | 0% | 363 | 1,078 | +197% | 0 | 0 | — |
case-09 | fail→fail | 6,209 | 7,107 | +14% | 1 | 1 | 0% | 405 | 995 | +146% | 0 | 0 | — |
case-10 | fail→fail | 12,098 | 8,641 | -29% | 1 | 1 | 0% | 1,964 | 1,158 | -41% | 0 | 0 | — |
case-11 | fail→pass | 7,799 | 2,595 | -67% | 1 | 1 | 0% | 1,289 | 1,056 | -18% | 0 | 0 | — |
case-12 | fail→pass | 7,051 | 2,942 | -58% | 1 | 1 | 0% | 1,238 | 993 | -20% | 0 | 0 | — |
case-13 | fail→pass | 10,825 | 3,570 | -67% | 1 | 1 | 0% | 1,644 | 1,187 | -28% | 0 | 0 | — |
case-14 | pass→pass | 7,110 | 2,756 | -61% | 1 | 1 | 0% | 1,103 | 1,122 | +2% | 0 | 0 | — |
case-15 | fail→pass | 10,987 | 15,390 | +40% | 1 | 1 | 0% | 1,895 | 2,864 | +51% | 0 | 0 | — |
case-16 | fail→fail | 4,381 | 5,710 | +30% | 1 | 1 | 0% | 641 | 1,014 | +58% | 0 | 0 | — |
case-17 | fail→fail | 8,746 | 6,872 | -21% | 1 | 1 | 0% | 1,277 | 1,009 | -21% | 0 | 0 | — |
case-18 | fail→fail | 4,252 | 7,201 | +69% | 1 | 1 | 0% | 624 | 1,122 | +80% | 0 | 0 | — |
case-19 | fail→fail | 7,869 | 19,632 | +149% | 1 | 1 | 0% | 561 | 1,383 | +147% | 0 | 0 | — |
case-20 | pass→pass | 6,522 | 4,491 | -31% | 1 | 1 | 0% | 1,154 | 1,361 | +18% | 0 | 0 | — |
case-21 | pass→pass | 5,677 | 2,872 | -49% | 1 | 1 | 0% | 1,010 | 1,148 | +14% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 8 counted toward the lift figure. The other 14 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +14 percentage points is the difference between those two pass rates over the 8 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.