Visual Review
ai-dynamo/dynamo
Create self-contained interactive HTML code-review dashboards from GitHub or GitLab pull requests, checked-out branch diffs, or supplied unified diffs, with correctness and safe-to-merge scores…
A skill your agent uses when the user wants to create a visual code review on a Miro board from a pull/merge request (GitHub, GitLab, or any forge), local uncommitted changes, or a branch comparison…
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add miroapp/miro-ai --skill miro-code-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install miroapp/miro-ai miro-code-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/miroapp/miro-ai.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/miro-code-review .claude/skills/miro-code-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 "miro-code-review" agent skill from https://github.com/miroapp/miro-ai/tree/main/skills/miro-code-review into .claude/skills/miro-code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "miro-code-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/miroapp/miro-ai/tree/main/skills/miro-code-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 miroapp/miro-ai --skill miro-code-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install miroapp/miro-ai miro-code-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/miroapp/miro-ai.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/miro-code-review .agents/skills/miro-code-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 "miro-code-review" agent skill from https://github.com/miroapp/miro-ai/tree/main/skills/miro-code-review into .agents/skills/miro-code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "miro-code-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 miroapp/miro-ai --skill miro-code-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install miroapp/miro-ai miro-code-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/miroapp/miro-ai.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/miro-code-review .cursor/skills/miro-code-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 "miro-code-review" agent skill from https://github.com/miroapp/miro-ai/tree/main/skills/miro-code-review into .cursor/skills/miro-code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "miro-code-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/miroapp/miro-ai.git --path skills/miro-code-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 miroapp/miro-ai --skill miro-code-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install miroapp/miro-ai miro-code-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/miroapp/miro-ai.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/miro-code-review .gemini/skills/miro-code-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 "miro-code-review" agent skill from https://github.com/miroapp/miro-ai/tree/main/skills/miro-code-review into .gemini/skills/miro-code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "miro-code-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 miroapp/miro-ai miro-code-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 miroapp/miro-ai --skill miro-code-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/miroapp/miro-ai.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/miro-code-review .github/skills/miro-code-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 "miro-code-review" agent skill from https://github.com/miroapp/miro-ai/tree/main/skills/miro-code-review into .github/skills/miro-code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "miro-code-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 miroapp/miro-ai --skill miro-code-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 miroapp/miro-ai miro-code-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/miroapp/miro-ai.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/miro-code-review .opencode/skills/miro-code-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 "miro-code-review" agent skill from https://github.com/miroapp/miro-ai/tree/main/skills/miro-code-review into .opencode/skills/miro-code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "miro-code-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.
miro-code-reviewA skill your agent uses when the user wants to create a visual code review on a Miro board from a pull/merge request (GitHub, GitLab, or any forge), local uncommitted changes, or a branch comparison…
Miro Code Review is an agent skill from miroapp/miro-ai. Use when the user wants to create a visual code review on a Miro board from a pull/merge request (GitHub, GitLab, or any forge), local uncommitted changes, or a branch comparison — produces a file-changes table, summary/architecture/security docs, and architecture diagrams, then links them back from the PR/MR.
Its SKILL.md is about 4.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including reference files (for example `references/background.md`, `references/diagram-conventions.md` and `references/document-templates.md`).
It sits in Development, covering Code review and Diagrams. It works with GitLab, GitHub and Git. The repository describes itself as: Official Miro AI developer tools and integrations. Includes MCP server configuration, Claude Code skills, and resources for building AI-powered experiences with Miro boards. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit b6408e1. 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:
gitghglabFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, gh and glab, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GITHUB_TOKENGITLAB_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Miro Code Review loads about 4.8k tokens when it runs, and up to ~9.6k if it reads all its reference files. Until then it costs about 82 tokens; SKILL.md has 2,505 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 patterns that need a careful read before installing.
he user already has configured (e.g. `~/.netrc`, env var tokens like `$GITHUB_TOKEN`, `$GITLAB_TOKEN`)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 miroapp/miro-ai at commit b6408e1, republished under its MIT licence (© miroapp). 2,505 words, ~4,800 tokens.
.claude/skills/miro-code-review/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.Generate a comprehensive visual code review on a Miro board from a pull/merge request, local changes, or a branch comparison. Includes architecture analysis, security review, and optionally enriches with enterprise documentation. After the artifacts are created, link them back from the PR/MR description so reviewers can find them without leaving their forge.
The user provides a Miro board URL plus one source: a PR/MR number, owner/repo#number (or group/project!number), a full PR/MR URL, the keyword "local changes", or a branch name to compare against the default branch. The skill is platform-agnostic: it detects the forge from the URL or the configured git remote and uses whichever CLI is available locally.
Determine the source type and infer the platform from the URL or configured git remote:
git remote get-url origin)owner/repo#number (or group/project!number for GitLab-style) → PR/MR in an external repo on the same platform as the current remote, unless a host is givenmain or whatever the remote shows as default)Pick the CLI based on what's installed and what the source points at. Do not assume gh. Run command -v <cli> to check availability before invoking:
github.com remote → gh CLI if availablegitlab.com or self-hosted GitLab → glab CLI if availablecurl using whatever credentials the user already has configured (e.g. ~/.netrc, env var tokens like $GITHUB_TOKEN, $GITLAB_TOKEN)git is sufficient — no platform CLI neededState the detected platform and tool in chat output before proceeding.
Fetch two things, regardless of platform:
Use whichever CLI matches the platform detected in §1; the JSON/text shape will differ between forges — normalize fields downstream.
GitHub example (gh):
# Current repo
gh pr view $PR_NUMBER --json title,body,author,files,additions,deletions
gh pr diff $PR_NUMBER
# External repo
gh pr view $PR_NUMBER --repo $OWNER/$REPO --json title,body,author,files,additions,deletions
gh pr diff $PR_NUMBER --repo $OWNER/$REPOGitLab example (glab):
# Current project
glab mr view $MR_NUMBER -F json
glab mr diff $MR_NUMBER
# External project
glab mr view $MR_NUMBER -R $GROUP/$PROJECT -F json
glab mr diff $MR_NUMBER -R $GROUP/$PROJECTREST fallback (any platform): issue an authenticated curl to the platform's REST endpoint for the PR/MR and its diff. Use the user's configured token ($GITHUB_TOKEN, $GITLAB_TOKEN, etc.) and pass Accept: application/vnd.github.v3.diff (or platform equivalent) for the diff.
For Local Changes:
git status --porcelain
git diff HEADFor Branch Comparison:
DEFAULT_BRANCH=$(git symbolic-ref refs/remotes/origin/HEAD | sed 's@^refs/remotes/origin/@@')
git log $DEFAULT_BRANCH..HEAD --oneline
git diff $DEFAULT_BRANCH...HEADCapture once and reuse for every file reference in §5 (table cells, document bullets, diagram labels). Pin links to the head SHA so they survive force-pushes. Record:
LINK_HOST, LINK_OWNER/LINK_REPO (or LINK_GROUP/LINK_PROJECT) — from §1LINK_SHA — PR/MR head commit SHA (fall back to git rev-parse HEAD for local/branch sources)LINK_BASE_SHA — base commit SHA (PR/MR target tip, or git merge-base for branch comparisons); required by §5 "Showing change". If unreachable, skip "before" diagrams and announce once in chat.LINK_TEMPLATE — host-shaped blob URL with a {path} placeholder and optional #L<start>-L<end> anchor. For no-remote sources (local changes or a branch with no remote/PR) set it to "" and render plain paths — never invent URLs.State the chosen template in chat before creating artifacts. See references/source-links.md for the per-platform SHA-fetch commands, URL templates by forge, and the no-remote / unreachable-base handling.
For each changed file, determine:
Basic Analysis:
Architecture Analysis:
Security Analysis:
| Risk Level | Criteria |
|---|---|
| High | Security-sensitive, auth/authz, database migrations, core business logic, breaking API changes, cryptography |
| Medium | API changes, configuration, shared utilities, new dependencies, data model changes |
| Low | Tests, documentation, styling, localization, internal refactoring |
Every artifact must earn its place. Before doing any creation work, decide whether the PR is worth visualizing at all and which artifact types would actually help a reviewer.
Bail-out rule. If all of the following hold, create no Miro artifacts and report only in chat:
In that case, the entire skill output is a single chat message of the form:
PR is trivial (N files, ±M lines, no high-risk areas). Skipping Miro visualization — a board would not add review value. PR/MR description was not modified.
Skip §5 and §6 entirely.
Value gate (per artifact). When the bail-out does not apply, still only create an artifact if it tells a reviewer something the diff itself does not already make obvious:
Announce the plan in chat before creating anything, e.g.:
Plan: 1 table, 1 summary doc, no diagrams (changes are localized to a single function).
This makes the triage visible and lets the user redirect before any board content is created.
Principle: every artifact must earn its place. If an artifact would not help a reviewer understand the PR faster than the diff alone, do not create it. See §4.5 for the triage rules.
Scale content up to these caps based on PR size, and apply the §4.5 value gates — fewer artifacts is fine.
Every file reference produced in §5 must be a clickable hyperlink to the source platform when a base URL is available. Use the LINK_TEMPLATE and LINK_SHA captured in §2.
LINK_TEMPLATE is set (PR/MR or branch with a known remote): build the URL by substituting the file {path}. Add a line anchor #L<start>-L<end> when calling out a specific hunk (high-risk files, security findings, architecture callouts). Resolve start/end from the diff hunks captured in §2 (@@ -a,b +c,d @@, use the new-file range). Skip the anchor if the reference spans multiple non-contiguous hunks.LINK_TEMPLATE is empty (local changes or no remote): render every file reference as a plain path. Do not invent URLs.Per-artifact rules:
[path/to/file.ts](url) for whole-file references and [path/to/file.ts:42-58](url#L42-L58) for hunk references. Apply this in every file mention (Overview, Key Changes, High-Risk Areas, Architecture > New Components / Modified Interfaces, Security > Security-Sensitive Changes, etc.).Positioning:
Prefer laying artifacts out in a single row so the reviewer can scan them left-to-right. Pass placement to the Miro MCP tools per their schemas.
| PR Size | Files | LOC (±) | Documents | Diagrams |
|---|---|---|---|---|
| Trivial | 1–2 | < 20 | none (bail out per §4.5) | none |
| Small | 1–5 | < 100 | 0–1 summary | 0–1 flow |
| Medium | 6–15 | < 500 | 1–2 (summary + deep-dive if needed) | 1–3 |
| Large | 16–30 | < 1500 | 2–3 (summary + architecture + security if applicable) | 2–4 |
| Very Large | 30+ | ≥ 1500 | 3+ (by subsystem) | 3+ |
A side-by-side before/after pair counts as one diagram for the budgets above — the column limits conceptual artifacts, not raw board widgets.
Create first (appears at board center). Using the Miro MCP table tool, create a table with four columns in this order:
Pick the column types and option shape from the table tool's live schema.
For very large PRs (30+ files), create separate tables:
Document 1: Main Summary — create when the §4.5 value gate for the summary doc passes. Skip if the PR description already covers the same ground.
Document 2: Architecture Analysis — create only when the §4.5 architecture-doc value gate passes (the diff introduces new modules, modifies public interfaces, changes dependencies, or adds breaking changes). Skip otherwise, even on Medium/Large PRs.
Document 3: Security Analysis — create only when security-sensitive paths are touched (auth, crypto, config, migrations, input handling). Never create as a checklist-only artifact on a PR with no security-relevant diff.
Additional Documents — for Very Large PRs, create per-subsystem documents in the same row ("API Changes Analysis", "Database Migration Review", "UI/Frontend Changes", etc.).
See references/document-templates.md for the full markdown template of each document.
Create diagrams based on the type of changes. Position after the last document (continue x increments of 800).
Every diagram must make the delta visible at a glance, not just the post-change state.
LINK_BASE_SHA revision (use git show $LINK_BASE_SHA:path when the unified diff doesn't carry enough surrounding structure), and the "after" from LINK_SHA.LINK_BASE_SHA is unreachable (shallow clone, history pruned), degrade every pair to a single annotated "after" diagram and reuse the chat announcement from §2.Primary signal is the label prefix (per-element styling is not guaranteed by the Miro Mermaid renderer): [ADDED] (after diagram only), [REMOVED] (before diagram only), [UPDATED] (both diagrams, prefix in the after only); unmarked elements are unchanged context. Prefixes alone must be self-sufficient. Additionally emit Mermaid classDef directives as a best-effort colour layer.
See references/diagram-conventions.md for the full prefix semantics and the classDef block to emit.
Diagram Selection Guide:
| Change Type | Diagram Type | Pattern | Purpose |
|---|---|---|---|
| Feature addition (purely additive) | flowchart | Single annotated (after) | Show new components and how they wire in |
| Refactoring | class diagram | Side-by-side before/after | Structural rearrangement is the whole point |
| API/integration change | sequence diagram | Side-by-side before/after | Flow shape changes |
| DB migration / schema change | ER diagram | Side-by-side before/after | Schema delta is the focus |
| Bug fix | flowchart | Single annotated (after) | Mark the fix point in the flow |
| Data pipeline restructure | flowchart | Side-by-side before/after | Data flow shape changes |
| Mixed / large refactor | per-subsystem | Side-by-side per subsystem | One pair per affected boundary |
Diagram Positions:
Place a side-by-side pair adjacent to each other so the delta is visible at a glance. Otherwise let the row layout from §5 "Positioning" carry — pass placement to the Miro MCP diagram tool per its schema.
| Diagram (or pair) | When to create |
|---|---|
| Main flow/architecture pair | Always |
| Component relationships pair | Medium+ PRs with structural change |
| Sequence/interaction pair | API/integration changes |
| ER pair | Data pipeline / schema changes |
| Single annotated (additions only) | Purely additive change, ≤ 3 new elements |
Each diagram should show:
LINK_BASE_SHA in URLs on before diagrams; use LINK_SHA on after diagrams.Once the artifacts are created, surface the link from the PR/MR itself so reviewers see it without leaving their forge.
Skip this step entirely when:
In those cases the link is reported only in chat output (see §Output below).
Append a delimited block (reusing the same <!-- miro-pr-docs:start --> … <!-- miro-pr-docs:end --> markers each run) to the existing description, replacing it in place if already present and never overwriting the user-authored portion. Use the same CLI selection from §1 to read, splice, and write the body back; if editing fails for lack of permission, post the block as a PR/MR comment instead and note it in chat.
See references/pr-linking.md for the exact block format, link rules, idempotency rules, and per-platform (gh/glab/REST) commands.
If the §4.5 bail-out applied, the entire output is the trivial-PR chat message — no board link, no description update, nothing else.
Otherwise, after completion provide:
moveToWidget was provided)<short LINK_BASE_SHA> and head revision <short LINK_SHA> in this chat summary only — do not place these SHAs on the Miro board. Also note which artifact types were intentionally skipped per §4.5, with a one-line reason.references/risk-assessment.md — detailed scoring criteriareferences/review-patterns.md — review patternsreferences/source-links.md — per-platform SHA-fetch commands and blob-URL templates for §2references/diagram-conventions.md — diagram change-marking prefixes and the Mermaid classDef block (§5)references/document-templates.md — full markdown templates for the summary, architecture, and security documents (§5)references/pr-linking.md — block format, link/idempotency rules, and per-platform commands for posting the link back to the PR/MR (§6)references/background.md — review philosophy, visual-review benefits, the artifact-selection table, and the board layout reference© miroapp, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (references) in skills/miro-code-review of miroapp/miro-ai.
Open the folder on GitHubat commit b6408e1
Miro Code 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 |
|---|---|---|---|---|---|---|
| Miro Code Review this skillmiroapp/miro-ai | 160 | — | ~4.8k | Automated safety check: Warn | MIT | |
| Visual Reviewai-dynamo/dynamo | 8.2k | — | ~4.5k | Automated safety check: Pass | Apache-2.0 | |
| Greploop Appsmichaelshimeles/skills | 1.3k | 1 repos | ~3.6k | Automated safety check: Pass | MIT | |
| Qodo PR Resolversbusso/claudeclaw | 194 | — | ~4k | Automated safety check: Pass | MIT | |
| PR Review State Fetchprisma/orm | 48k | — | ~767 | Automated safety check: Pass | Apache-2.0 | |
| degit Project ScaffoldingRich-Harris/degit | 7.9k | — | ~534 | Automated safety check: Pass | MIT |
ai-dynamo/dynamo
Create self-contained interactive HTML code-review dashboards from GitHub or GitLab pull requests, checked-out branch diffs, or supplied unified diffs, with correctness and safe-to-merge scores…
michaelshimeles/skills
Loops on a large pull request, merge request or Perforce changelist, fixing Greptile findings until it scores 5/5 with no unresolved comments.
sbusso/claudeclaw
Review and resolve PR issues with Qodo - get AI-powered code review issues and fix them interactively (GitHub, GitLab, Bitbucket, Azure DevOps)
prisma/orm
Fetches a pull request's canonical review state as JSON, validates it, and renders markdown, a text summary and triage target files from it using bundled scripts.
Rich-Harris/degit
Downloads a repository snapshot or template with degit into an empty folder, from GitHub, GitLab, Bitbucket, Sourcehut or a Gist, optionally at a branch, tag or commit.
HezaoHezao/poirot
Pre-commit review: security scan, quality gates, auto-fix. An agent skill from HezaoHezao/poirot.
miroapp/miro-ai
Documentation architecture for this repository. An agent skill from miroapp/miro-ai.
miroapp/miro-ai
A skill your agent uses when the user wants to extract a Miro board's specs (documents, diagrams, prototypes, tables, frames, images) to local .miro/specs/ files for AI-assisted planning and…
miroapp/miro-ai
A skill your agent uses when the user wants to explain or visualize a codebase on a Miro board — produces a minimal, notation-correct set of architecture / structure / behavior diagrams (flowchart…
miroapp/miro-ai
A skill your agent uses when authoring or revising plugin SKILL.md files in this repo.
Categories
A skill your agent uses when the user wants to create a visual code review on a Miro board from a pull/merge request (GitHub, GitLab, or any forge), local uncommitted changes, or a branch comparison…. Miro Code Review is an agent skill from miroapp/miro-ai. Use when the user wants to create a visual code review on a Miro board from a pull/merge request (GitHub, GitLab, or any forge), local uncommitted changes, or a branch comparison — produces a file-changes table, summary/architecture/security docs, and architecture diagrams, then links them back from the PR/MR.
Miro Code Review fits situations like: the user wants to create a visual code review on a Miro board from a pull/merge request (GitHub; local uncommitted changes; A branch comparison — produces a file-changes table; summary/architecture/security docs.
Run `npx skills add miroapp/miro-ai --skill miro-code-review -a claude-code`. Or copy the skill folder (skills/miro-code-review in miroapp/miro-ai) into .claude/skills/miro-code-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add miroapp/miro-ai --skill miro-code-review -a codex`. Or copy the skill folder (skills/miro-code-review in miroapp/miro-ai) into .agents/skills/miro-code-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 miroapp/miro-ai --skill miro-code-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/miro-code-review, .gemini/skills/miro-code-review, .github/skills/miro-code-review and .opencode/skills/miro-code-review in your project.
Going by SKILL.md and its folder, Miro Code Review needs the command-line tools its instructions call (git, gh and glab) and credentials named GITHUB_TOKEN and GITLAB_TOKEN. Our summary lists: A credential in GITHUB_TOKEN; A credential in GITLAB_TOKEN.
SKILL.md contains no URLs. Its commands use git and gh, 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 flagged 1 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.
Miro Code Review is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.8k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Miro Code Review: Visual Review (ai-dynamo/dynamo, 8.2k stars), Greploop Apps (michaelshimeles/skills, 1.3k stars), Qodo PR Resolver (sbusso/claudeclaw, 194 stars) and PR Review State Fetch (prisma/orm, 48k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
miroapp (a GitHub organization) maintains it in miroapp/miro-ai, which has 160 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on September 17, 2026.
Source: miroapp/miro-ai on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.