GitHub Review Iteration
prisma/orm
Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.
Orchestrate a multi-model code review: spawn 3 review subagents, merge findings.
$ npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install EliasOulkadi/shokunin zen-comprehensive-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/EliasOulkadi/shokunin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.pack/skills/zen-comprehensive-review .claude/skills/zen-comprehensive-review && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "zen-comprehensive-review" agent skill from https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-review into .claude/skills/zen-comprehensive-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zen-comprehensive-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install EliasOulkadi/shokunin zen-comprehensive-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliasOulkadi/shokunin.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.pack/skills/zen-comprehensive-review .agents/skills/zen-comprehensive-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "zen-comprehensive-review" agent skill from https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-review into .agents/skills/zen-comprehensive-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zen-comprehensive-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install EliasOulkadi/shokunin zen-comprehensive-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliasOulkadi/shokunin.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.pack/skills/zen-comprehensive-review .cursor/skills/zen-comprehensive-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "zen-comprehensive-review" agent skill from https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-review into .cursor/skills/zen-comprehensive-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zen-comprehensive-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/EliasOulkadi/shokunin.git --path .pack/skills/zen-comprehensive-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install EliasOulkadi/shokunin zen-comprehensive-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliasOulkadi/shokunin.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.pack/skills/zen-comprehensive-review .gemini/skills/zen-comprehensive-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "zen-comprehensive-review" agent skill from https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-review into .gemini/skills/zen-comprehensive-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zen-comprehensive-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install EliasOulkadi/shokunin zen-comprehensive-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/EliasOulkadi/shokunin.git skills-src && mkdir -p .github/skills && cp -r skills-src/.pack/skills/zen-comprehensive-review .github/skills/zen-comprehensive-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "zen-comprehensive-review" agent skill from https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-review into .github/skills/zen-comprehensive-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zen-comprehensive-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install EliasOulkadi/shokunin zen-comprehensive-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliasOulkadi/shokunin.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.pack/skills/zen-comprehensive-review .opencode/skills/zen-comprehensive-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "zen-comprehensive-review" agent skill from https://github.com/EliasOulkadi/shokunin/tree/master/.pack/skills/zen-comprehensive-review into .opencode/skills/zen-comprehensive-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "zen-comprehensive-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
zen-comprehensive-reviewOrchestrate a multi-model code review: spawn 3 review subagents, merge findings.
Zen Comprehensive Review is an agent skill from EliasOulkadi/shokunin. Orchestrate a multi-model code review: spawn 3 review subagents, merge findings. In PR mode, posts GitHub PR comments with reactions. In local mode, outputs findings directly. CRITICAL: this skill is costly, don't use it unless user explicitly requested to use it.
Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: opencode
It sits in Development, covering Subagents and Code review. It works with GitHub. The repository describes itself as: 職人 Shokunin 62 AI agent skills for OpenCode, Claude Code, Cursor, Windsurf. ChromaDB memory, MCP servers, declarative self-updates. Multi-model, open source, zero cost. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4c68e5b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitnodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
opencode
From compatibility in the SKILL.md frontmatter.
Zen Comprehensive Review loads about 4k tokens when it runs. Until then it costs about 72 tokens; SKILL.md has 2,057 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from EliasOulkadi/shokunin at commit 4c68e5b, republished under its MIT licence (© EliasOulkadi). 2,057 words, ~3,985 tokens.
.claude/skills/zen-comprehensive-review/SKILL.md (or your agent's skills folder).Note:
scripts/post_review_strict.jsis distributed with the full Shokunin tooling. Manual posting to PRs is available without it.
You are a code review orchestrator. Your job:
Check the user's prompt for PR information.
PR mode: The prompt contains Owner/Repo and PR Number (e.g., provided as Owner/Repo: org/repo and PR Number: 123). Extract these values.
In PR mode, the prompt may also include the PR title and description. Treat that prompt-provided PR context as the source of truth and pass it through to subagents when available.
Local mode: No PR information provided. The review will be based on the diff between the current branch and its base branch, plus any uncommitted changes.
Before spawning subagents, save the diff to /tmp/review-diff.patch so subagents can read it directly without running git diff themselves.
PR mode:
git diff $(git merge-base HEAD origin/main) > /tmp/review-diff.patchLocal mode:
MERGE_BASE=$(git merge-base HEAD origin/main 2>/dev/null || git merge-base HEAD origin/master)
git diff $MERGE_BASE > /tmp/review-diff.patch
git diff >> /tmp/review-diff.patchVerify the file was created and is non-empty before proceeding.
Spawn exactly 3 subagents using the subagent tool. Each should use the zen-review skill.
Default models (use these unless the user's prompt specifies different models):
If the user prompt specifies preferred model names or families (for example claude/codex), follow the user's preference and map it to the closest available model IDs. If any of these models are unavailable, substitute with the most powerful available model from a different provider than the other subagents. If only 1 provider is available, use its most powerful model for all 3.
For each subagent, set the prompt to:
PR mode: "IMPORTANT: Follow the skill instructions STRICTLY and IN ORDER. The diff is saved at /tmp/review-diff.patch. Your FIRST action MUST be to read that file — do NOT run git diff, do NOT read any other files before you have the diff. Use any PR title and description included in this prompt as additional review context. Review this PR."
Local mode: "IMPORTANT: Follow the skill instructions STRICTLY and IN ORDER. The diff is saved at /tmp/review-diff.patch. Your FIRST action MUST be to read that file — do NOT run git diff, do NOT read any other files before you have the diff. Review the changes on this branch."
Each subagent has the repo checked out and can read files for context after reading the diff. The skill provides review instructions. Each subagent will return a JSON array of findings.
Spawn all 3 in parallel, then await all results.
If a subagent fails or returns invalid output, try to resume the subagent and proceed with the remaining results.
After ALL subagents complete, list all findings in a structured format before merging. For each finding, note which subagent/model reported it. This makes consensus visible: if 2+ models independently found the same bug, it is very likely real.
Then merge and deduplicate:
For each finding, read the referenced file and line to confirm it describes real code. Drop findings that are clearly wrong when you read the actual code.
For each subagent's findings:
Two findings are duplicates if they point to the same file and describe the same root cause, even if worded differently. Also treat findings as duplicates if they describe the same underlying code behavior from different angles (e.g. "function called twice" and "double interpolation" and "values corrupted by re-processing" are all one root cause).
Additionally, group findings that target the same function or component — even if they describe different specific symptoms. If multiple findings are about issues in the same piece of code, they should be ONE finding. Pick the most impactful issue and mention others briefly. A good code review leaves at most 1-2 comments per code area.
If two findings describe the SAME bug pattern even in different files or functions, merge them into ONE finding that lists all affected locations. Examples:
Maximum output: aim for no more than 5-7 findings per PR. If you have more, you are likely not grouping aggressively enough. But if the PR is huge, you could have more.
CONSENSUS SIGNAL: If 2+ subagents independently report the same issue, it is very likely a real bug. Do NOT drop consensus findings unless they are clearly wrong.
When in doubt, KEEP the finding. It is better to include a borderline finding than to drop a real bug. Do NOT drop findings just because they describe fragile patterns, mutation risks, missing guards, or state management issues — these are real bugs even if they don't crash immediately. Only drop findings that are genuinely irrelevant to code correctness.
Drop or merge a finding if:
Also drop findings (unless clearly defined in task description) that are:
CRITICAL RULES:
If Local mode: Output the final merged findings as a human-readable markdown review. Do NOT output raw JSON.
Format:
## Code Review
**Verdict**: [APPROVE if no P0/P1 findings | REQUEST CHANGES if P0/P1 exist]
### Summary
[1-2 sentences: what the changes do and overall assessment]
### Findings
| Priority | Issue | Location |
|----------|-------|----------|
| P0 | {body summary} | [./path/to/file.ts:42](./path/to/file.ts:42) |
| ... | ... | ... |
### Details
#### [severity] Issue title
**File:** [./path/to/file.ts:42](./path/to/file.ts:42)
Description with root cause and consequence.
**Suggested fix:**code
(Repeat for each P0/P1 finding. P2/P3 items only need the table entry.)
### Recommendation
[Concise actionable recommendation]If no issues survived merging, output:
## Code Review
**Verdict**: APPROVE
No issues found.Create a JSON file at /tmp/review_payload.json:
{
"event": "COMMENT",
"body": "",
"comments": [
{
"path": "src/file.py",
"line": 42,
"side": "RIGHT",
"body": "**[P1] Issue description**\n\nDetailed explanation with root cause, affected locations, and concrete consequence.\n\n**Suggested fix:**\n```\ncode\n```"
}
]
}IMPORTANT: Do NOT put a summary table or findings list in the body.
Severity mapping:
Every inline comment MUST have:
path: relative file path from repo rootline: line number in the NEW file (right side of diff)side: always "RIGHT" for new/modified codebody: detailed, self-contained descriptionPosting rules:
Body format (when P3 findings exist):
file.ts:42 — description of minor issue"Drop any P0/P1/P2 finding that cannot be tied to a specific file and line.
For each inline comment (P0-P2), the body must include:
IMPORTANT: Do NOT include internal details in comment bodies. Never mention:
If no issues survive merging, write: {"comments": [], "event": "COMMENT", "body": "LGTM"}
The posting script needs /tmp/review-diff.patch to validate line numbers. This file was already created in Step 0b. Verify it still exists before proceeding.
Post the review using the strict posting script:
node <SKILL_DIRECTORY>/scripts/post_review_strict.js \
"$GITHUB_REPOSITORY" "$PR_NUMBER" /tmp/review-diff.patch /tmp/review_payload.jsonWhere $GITHUB_REPOSITORY and $PR_NUMBER are provided in the prompt.
The script validates every comment line number against the diff:
If the script fails with line errors, you MUST:
/tmp/review_payload.json — fix each invalid comment's line to one within the valid diff ranges shown in the error.The script also automatically adds thumbs-up and thumbs-down reactions to every posted inline comment after a successful post.
This is a non-interactive review run. Do NOT ask questions and do NOT fix code. Post the review, then stop.
| Cause | Fix |
|---|---|
/tmp/review-diff.patch is empty after Step 0b | Verify the diff file exists and is non-empty before spawning subagents. Re-run git diff if needed. |
| Subagent returns invalid or non-JSON output | Resume the subagent with a corrective prompt. Proceed with results from the other two subagents. |
| Subagent fails entirely (timeout, crash) | Proceed with results from the remaining subagents. Note the failure in the output. |
| Posting script fails with invalid line numbers | Read the error output for valid diff ranges. Update /tmp/review_payload.json line numbers to valid ranges. Re-run script. |
GITHUB_REPOSITORY or PR_NUMBER not set in environment | Extract from user prompt. Verify format: owner/repo and integer PR number. |
node not available to run posting script | Install Node.js 18+. Alternatively, output review as markdown and instruct user to post manually. |
| All three subagents fail | Output an error review indicating no results could be generated. Do not fabricate findings. |
| Merged findings exceed 5-7 but all are real bugs | Preserve all valid findings. The 5-7 target is guidance, not a hard limit. Group by code area to reduce count. |
| Pattern | Problem | Fix |
|---|---|---|
| Dropping findings because "only one model found it" | Consensus is a signal, not a requirement. Single-model findings can be valid. | Verify against actual code. Keep if real, drop only if clearly wrong. |
| Adding original findings not reported by any subagent | Violates the orchestrator's role. Fabricates review content. | Output must contain ONLY findings from subagent results. Never add new ones. |
| Mentioning model names or consensus counts in PR comments | Reveals internal review mechanics to the author | Write review as if from a single reviewer. No "2/3 models agree" language. |
| Including style/formatting issues as P0/P1 | Inflates severity, dilutes critical findings | P0/P1 reserved for crashes, data loss, security. P2 for code smells. P3 for style. |
| Posting summary table in PR comment body | Redundant with inline comments, clutters the review | Only body text: status line + P3 notes. All P0-P2 findings go inline. |
| Silently dropping findings that don't map to a clear file:line | Violates the requirement to not silently drop | Document dropped findings with reason. If they describe real issues, find the nearest code location. |
| Running git diff inside subagents | Wastes subagent context. Diff may differ between agents. | Pre-save diff to /tmp/review-diff.patch. Subagents read that file only. |
| Reviewing pre-existing code not in the diff | Scope creep. Reviews irrelevant code. | Only review code in the diff. Pre-existing issues are out of scope. |
© EliasOulkadi, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .pack/skills/zen-comprehensive-review of EliasOulkadi/shokunin.
Open the folder on GitHubat commit 4c68e5b
Zen Comprehensive Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Zen Comprehensive Review this skillEliasOulkadi/shokunin | 114 | — | ~4k | Automated safety check: Pass | MIT | |
| GitHub Review Iterationprisma/orm | 48k | — | ~2.2k | Automated safety check: Pass | Apache-2.0 | |
| Cherry Studio PR ReviewCherryHQ/cherry-studio | 53k | — | ~3.9k | Automated safety check: Pass | AGPL-3.0 | |
| PR Reviewjaemk/self_update | 961 | — | ~1.5k | Automated safety check: Notes | MIT | |
| Local PR Reviewwindmill-labs/windmill | 18k | — | ~995 | Automated safety check: Pass | Custom licence | |
| PR Reviewjaemk/cached | 2.1k | — | ~2.5k | Automated safety check: Notes | MIT |
prisma/orm
Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.
CherryHQ/cherry-studio
Reviews Cherry Studio branches, pull requests, commits, files and docs against the project's own architecture, naming, API-boundary and UI rules, report-only by default.
jaemk/self_update
Targeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/self_update.
windmill-labs/windmill
Runs the same code review locally that GitHub's auto-review actions run on a PR, delegating to a fresh-context subagent so the review isn't biased by the main session's own reasoning.
jaemk/cached
Targeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/cached.
openinterpreter/openinterpreter
Run a final code review on a pull request
EliasOulkadi/shokunin
Design CI/CD pipelines for GitHub Actions, GitLab CI, and CircleCI with matrix builds, test sharding, caching, Docker layer caching, OIDC auth, deployment strategies (rolling, blue-green, canary)…
EliasOulkadi/shokunin
Build production-grade components for React, Vue 3, and Svelte 5 with all states (loading, empty, error, success, idle), TypeScript strict, WCAG 2.2 accessibility, server components (RSC), and…
EliasOulkadi/shokunin
PostgreSQL database administration — backup/restore (pgdump, PITR, WAL archiving), health monitoring (connections, bloat, cache hit ratio, dead tuples), connection pooling (PgBouncer), replication…
EliasOulkadi/shokunin
Design database schemas with Prisma/Drizzle, PostgreSQL index strategy (B-tree, GIN, GiST, BRIN, Hash), query optimization (EXPLAIN ANALYZE), migration safety (expand/contract, zero-downtime), and…
EliasOulkadi/shokunin
Optimize Docker images with multi-stage builds, distroless bases, BuildKit cache mounts, multi-arch builds, compose watch, security hardening (non-root, seccomp, capabilities drop), and…
EliasOulkadi/shokunin
Design error handling, structured logging, and observability with OpenTelemetry (traces, metrics, logs), error classification, recovery patterns (retry with jitter, circuit breaker, bulkhead…
Works with
Categories
Orchestrate a multi-model code review: spawn 3 review subagents, merge findings. Zen Comprehensive Review is an agent skill from EliasOulkadi/shokunin. Orchestrate a multi-model code review: spawn 3 review subagents, merge findings.
Zen Comprehensive Review fits situations like: tasks that involve Subagents; tasks that involve Code review.
Run `npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a claude-code`. Or copy the skill folder (.pack/skills/zen-comprehensive-review in EliasOulkadi/shokunin) into .claude/skills/zen-comprehensive-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a codex`. Or copy the skill folder (.pack/skills/zen-comprehensive-review in EliasOulkadi/shokunin) into .agents/skills/zen-comprehensive-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add EliasOulkadi/shokunin --skill zen-comprehensive-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/zen-comprehensive-review, .gemini/skills/zen-comprehensive-review, .github/skills/zen-comprehensive-review and .opencode/skills/zen-comprehensive-review in your project.
Going by SKILL.md and its folder, Zen Comprehensive Review needs the command-line tools its instructions call (git and node). Compatibility (from SKILL.md): opencode.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Zen Comprehensive Review is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Zen Comprehensive Review: GitHub Review Iteration (prisma/orm, 48k stars), Cherry Studio PR Review (CherryHQ/cherry-studio, 53k stars), PR Review (jaemk/self_update, 961 stars) and Local PR Review (windmill-labs/windmill, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
EliasOulkadi (a GitHub user) maintains it in EliasOulkadi/shokunin, which has 114 GitHub stars. The repository holds 49 skills in this directory. The repository was last updated on October 5, 2026.
Source: EliasOulkadi/shokunin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.