Agent skill

Code Review

by nteract in nteract/semiotic

Review Semiotic pull requests for behavioral bugs, regressions, contract drift, and missing evidence.

Apache-2.0Auto-check passedDevelopment

Install Code Review

skills CLI
$ npx skills add nteract/semiotic --skill code-review -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install nteract/semiotic code-review --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/nteract/semiotic.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/code-review .claude/skills/code-review && rm -rf skills-src

Use ~/.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/

Facts

Skill name
code-review
GitHub stars
2.7k
Token cost
~1.5k tokens
SKILL.md length
746 words
Files
2
Skills in repo
4
Repo updated
First seen
Licence
Apache-2.0

At a glance

Review Semiotic pull requests for behavioral bugs, regressions, contract drift, and missing evidence.

  • Works in 5 steps: Read the pull request description,… → Classify the change surface: chart HOC,… → Identify the user-visible or… → …
  • GitHub Copilot code review of TypeScript/React charts
  • SKILL.md covers Establish the review contract, Trace behavior, not files, Demand meaningful evidence and Use browser and MCP evidence…, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Code Review is an agent skill from nteract/semiotic. Review Semiotic pull requests for behavioral bugs, regressions, contract drift, and missing evidence. Use for GitHub Copilot code review of TypeScript/React charts, Stream Frames, canvas and browser interactions, SSR, public exports, docs/examples, AI schemas and tooling, generated contracts, tests, CI baselines, and custom-lint changes. Use GitHub MCP for linked issue, incident, PR, and CI context and Playwright MCP for relevant browser behavior.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It sits in Development, covering Pull requests, Code review and Linting and formatting. It works with Model Context Protocol, React, GitHub and Playwright. The repository describes itself as: React data visualization library for streaming, networks, and AI-assisted development. The licence is Apache-2.0.

When your agent uses it

  • GitHub Copilot code review of TypeScript/React charts
  • Canvas and browser interactions
  • AI schemas and tooling
  • Generated contracts

Example prompts

  • “/code-review”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Read the pull request description, changed files, and relevant sections of
  2. Classify the change surface: chart HOC, Stream Frame/runtime, browser
  3. Identify the user-visible or package-level behavior the change claims to
  4. Use GitHub MCP when the pull request references an issue, incident, prior
  5. Inspect available CI results through GitHub MCP when they can confirm a

What it can do on your machine

Read from SKILL.md and the folder at commit 7594809. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Code Review loads about 1.5k tokens when it runs. Until then it costs about 116 tokens; SKILL.md has 746 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~116
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from nteract/semiotic at commit 7594809, republished under its Apache-2.0 licence (© nteract). 746 words, ~1,524 tokens.

Download SKILL.mdSave it as .claude/skills/code-review/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
code-review
description
Review Semiotic pull requests for behavioral bugs, regressions, contract drift, and missing evidence. Use for GitHub Copilot code review of TypeScript/React charts, Stream Frames, canvas and browser interactions, SSR, public exports, docs/examples, AI schemas and tooling, generated contracts, tests, CI baselines, and custom-lint changes. Use GitHub MCP for linked issue, incident, PR, and CI context and Playwright MCP for relevant browser behavior.

Review Semiotic pull requests

Produce a findings-first review grounded in executable behavior. Treat AGENTS.md as the repository authority. Do not restate the diff or praise the change; identify defects that the author can act on.

Establish the review contract

  1. Read the pull request description, changed files, and relevant sections of AGENTS.md.
  2. Classify the change surface: chart HOC, Stream Frame/runtime, browser interaction, SSR/server, package surface, docs/example, AI/schema, generated artifact, test infrastructure, or custom lint.
  3. Identify the user-visible or package-level behavior the change claims to preserve or introduce.
  4. Use GitHub MCP when the pull request references an issue, incident, prior pull request, or failing check. Read the referenced acceptance criteria and compare them with the implementation. Do not infer requirements from an identifier without retrieving it.
  5. Inspect available CI results through GitHub MCP when they can confirm a suspected regression or reveal an unverified path. Distinguish a product defect from a stale generated baseline or an unstable-rule disagreement.

Trace behavior, not files

Follow changed values across component boundaries. A local implementation can be type-correct while breaking a downstream scene, renderer, or package contract.

For chart HOCs and Stream Frames, check:

  • Accessor, grouping, style, tooltip, hover, selection, legend, margin, and frameProps precedence through the final Stream Frame props.
  • Line-object versus flat-row normalization and preservation of parent series metadata.
  • Static mode versus push mode. Static and serialized paths require real data; React push mode omits data. data={[]} is not push mode.
  • Controlled updates, refs, rAF scheduling, cleanup, transition continuity, stable configuration identity, and retained-scene invalidation.
  • Coordinate-space assumptions involving margins, legends, scales, responsive dimensions, device pixel ratio, canvas bounds, and pointer type.
  • Browser, SSR, hydration, static renderer, and serialized/MCP parity when the shared behavior crosses those paths.

For public API changes, check all affected surfaces together:

  • Runtime implementation and exported TypeScript types.
  • Family entry points and package exports without accidental graph widening.
  • Chart specs, ai/schema.json, behavior contracts, prompts, examples, and reference coverage when agent-visible behavior changes.
  • Documentation examples using high-level charts and family subpath imports.
  • Generated sections and manifests updated only through their owning generator.

Demand meaningful evidence

Evaluate whether tests prove the changed behavior rather than merely mounting a component or finding a canvas/SVG element.

  • Prefer assertions against scene summaries, rendered marks, callbacks, accessible output, or user-visible behavior.
  • In canvas interaction tests, account for automatic legends, margins, responsive sizing, and plot coordinates before trusting literal pointer positions.
  • Require regression coverage for the exact input form and interaction mode that failed.
  • Treat regenerated bundle, package, and measurement baselines as evidence of an intentional contract change only when the implementation explains the delta.
  • Recommend focused checks from AGENTS.md; do not claim a command passed unless CI or a tool result shows that it completed successfully.
Show full SKILL.md (292 more words)Show less

Use browser and MCP evidence selectively

Use Playwright MCP when the diff changes rendering, hover/click/keyboard interaction, responsive behavior, accessibility, hydration, or a documentation example. Reproduce the relevant route or minimal scenario, inspect browser console failures, and compare observed marks and interactions with the claim. Do not spend browser-tool time on pure type, text, or build-script changes.

If a Semiotic MCP server is configured, use its chart schema, diagnostics, render evidence, or accessibility audit when reviewing serialized chart or AI tooling behavior. A successful render alone is insufficient; check that marks, domains, and accessible evidence are meaningful.

Evaluate custom lints as hypotheses

When check:custom-lints fails or a pull request changes custom lint policy, read scripts/custom-lint/README.md and scripts/custom-lint/registry.json. For every unstable-rule finding, evaluate both the code and the rule. Accept one or more dispositions:

  1. Fix a real bug and record positive evidence for the unstable rule.
  2. Adjust, demote, or retire an imprecise rule and record contrary or revision evidence.
  3. Promote only at the policy threshold with distinct positive references, focused rule tests, and no grandfathered findings.

Do not recommend blindly syncing the baseline. Promotion never excuses an unfixed violation, and a CI failure is not proof that the rule is correct.

Report only actionable findings

Order findings by severity. For each finding:

  • Give a concise title describing the defect.
  • Cite the narrowest changed line that causes it.
  • State the concrete runtime, consumer, accessibility, or maintenance impact.
  • Explain the triggering scenario and the evidence supporting it.
  • Suggest the direction of repair without prescribing a speculative rewrite.

Do not report stylistic preferences, hypothetical concerns without a reachable failure path, or issues outside the pull request's changed behavior. If no findings remain, state that explicitly and identify only material residual risks or verification gaps.

© nteract, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .github/skills/code-review of nteract/semiotic.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 7594809

Compare with similar skills

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.

Code Review compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Code Review this skillnteract/semiotic2.7k—~1.5kAutomated safety check: PassApache-2.0
Project Pull Requestswimmwatch/cloakbrowser-mcp161—~1kAutomated safety check: PassMIT
Fix Frontend Review CommentsJetBrains/kotlin-web-site1.6k—~444Automated safety check: PassApache-2.0
Record E2E Giflablup/backend.ai-webui133—~907Automated safety check: NotesLGPL-3.0
Cherry Studio PR ReviewCherryHQ/cherry-studio52k—~3.9kAutomated safety check: PassAGPL-3.0
Deepseek Automationzhu1090093659/deepseek-pp1.9k—~2.1kAutomated safety check: NotesApache-2.0

Similar skills

  • Project Pull Request

    swimmwatch/cloakbrowser-mcp

    Create, update, prepare, or review a cloakbrowser-mcp GitHub Pull Request only when the user explicitly requests PR work.

    161 GitHub stars~1k tokensUpdated 6 days ago
    DevelopmentAuto-check passed
  • Fix Frontend Review Comments

    JetBrains/kotlin-web-site

    Official

    Apply pull-request review comments to the frontend of kotlinlang.org (Next.js, React, TypeScript, CSS Modules under blocks/, components/, pages/, hooks/, utils/, test/).

    1.6k GitHub stars~444 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Record E2E Gif

    lablup/backend.ai-webui

    Record Playwright e2e tests as one GIF per test case (video → ffmpeg palette GIF) and return a markdown table for a PR description.

    133 GitHub stars~907 tokensUpdated today
    Testing & QAAuto-check: notes
  • Cherry Studio PR Review

    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.

    52k GitHub stars~3.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Deepseek Automation

    zhu1090093659/deepseek-pp

    A skill your agent uses when implementing, resuming, reviewing, or verifying the DeepSeek++ Codex-style automation feature in this repository.

    1.9k GitHub stars~2.1k tokensUpdated 1 mo ago
    DevelopmentAuto-check: notes
  • Liveagent Code Review

    Stack-Cairn/LiveAgent

    Review an open GitHub pull request or the current local branch and working tree with parallel, independent reviewers and evidence-based validation.

    2.2k GitHub stars~2k tokensUpdated today
    DevelopmentAuto-check passed

More from nteract/semiotic

  • Blog Post

    nteract/semiotic

    Author a new entry for the Semiotic blog. An agent skill from nteract/semiotic.

    2.7k GitHub stars~3.4k tokensUpdated yesterday
    Auto-check passed
  • Chatgpt App Submission

    nteract/semiotic

    Inspect a ChatGPT Apps MCP server codebase and generate chatgpt-app-submission.json with app info suggestions, tool hint justifications, test cases, and negative test cases, then report review-check…

    2.7k GitHub stars~2.8k tokensUpdated yesterday
    Auto-check passed
  • Semiotic Charts

    nteract/semiotic

    Build, repair, and verify charts in an existing Semiotic project, when Semiotic is explicitly requested, or when evaluating its documented capabilities against a visualization task.

    2.7k GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Code Review

What does Code Review do?

Review Semiotic pull requests for behavioral bugs, regressions, contract drift, and missing evidence. Code Review is an agent skill from nteract/semiotic. Review Semiotic pull requests for behavioral bugs, regressions, contract drift, and missing evidence.

When should I use Code Review?

Code Review fits situations like: GitHub Copilot code review of TypeScript/React charts; canvas and browser interactions; AI schemas and tooling; generated contracts.

How do I install Code Review in Claude Code?

Run `npx skills add nteract/semiotic --skill code-review -a claude-code`. Or copy the skill folder (.github/skills/code-review in nteract/semiotic) into .claude/skills/code-review in your project. Claude Code loads it when a task matches its description.

How do I install Code Review in Codex?

Run `npx skills add nteract/semiotic --skill code-review -a codex`. Or copy the skill folder (.github/skills/code-review in nteract/semiotic) into .agents/skills/code-review in your project. Codex loads it when a task matches its description.

Can I use Code Review in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nteract/semiotic --skill 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/code-review, .gemini/skills/code-review, .github/skills/code-review and .opencode/skills/code-review in your project.

What does Code Review need to run?

SKILL.md names no scripts, command-line tools or credentials: Code Review is instructions for the agent only.

Does Code Review access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Code Review safe to install?

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.

What licence does Code Review use?

Code Review is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Code Review use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Code Review?

Skills that share tags, products or a category with Code Review: Project Pull Request (swimmwatch/cloakbrowser-mcp, 161 stars), Fix Frontend Review Comments (JetBrains/kotlin-web-site, 1.6k stars), Record E2E Gif (lablup/backend.ai-webui, 133 stars) and Cherry Studio PR Review (CherryHQ/cherry-studio, 52k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Code Review?

nteract (a GitHub organization) maintains it in nteract/semiotic, which has 2,711 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 6, 2026.

Source: nteract/semiotic on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.