SKILL·16054E

crit

tomasz-tomczyk
Updated Today
1,196
97
1,196
View on GitHub
Developmentgeneral

About

The Crit skill provides structured code reviews with inline comments for changes, plans, or live pages, but only activates when explicitly invoked via `/crit` or direct request. It automatically detects review targets like files, directories, URLs, or PRs without requiring mode selection. Developers use it for interactive browser-based review cycles that deliver human-like feedback on their code.

Quick Install

Claude Code

Recommended
Primary
npx skills add tomasz-tomczyk/crit -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/tomasz-tomczyk/crit
Git CloneAlternative
git clone https://github.com/tomasz-tomczyk/crit.git ~/.claude/skills/crit

Copy and paste this command in Claude Code to install this skill

Documentation

Review with Crit

Run this interactive browser review cycle only when the user invokes /skill:crit or $crit, or directly asks to use Crit. A generic request to review code, a plan, a diff, a PR, or a page does not count.

1. Choose the target

Pass the user's arguments through. Crit auto-detects files, directories, live URLs, and local HTML previews; do not ask which mode to use.

crit <arguments>
crit --pr <number-or-url>
crit --mr <number-or-url>
crit --range <base>..<head>
crit

Without arguments, review the plan file written earlier in this conversation, if there is one; otherwise run bare crit for the branch diff.

2. Start the review and await completion

Crit opens the browser and stays running until the human clicks Finish Review. Use OMO's monitor from a short eval cell to launch the command and subscribe to its output and exit. Substitute the command chosen in Step 1:

display(await tool.monitor({
  description: "Crit review feedback",
  command: "crit",
  filter: "https?://|approved:",
  persistent: true
}));

Call monitor directly if eval is unavailable. Keep the returned bash_id. persistent: true lets the human review without the default five-minute monitor deadline. The command's exit delivers a completion notification.

Relay the printed review URL verbatim: "Crit is open at <URL>. Leave inline comments, then click Finish Review."

End the turn while waiting if no independent work remains. Do not hold an eval cell open, poll bash_output, read comments early, launch a second Crit command, or ask the user to type a reply to signal completion. An existing daemon is reused automatically.

3. Read feedback

After the command exits, read its stdout and follow the finish prompt. Check stderr for approved: true or approved: false. Use bash_output with the saved bash_id to retrieve output not included in the notification. If approved, stop the review loop.

For mid-round re-entry or headless workflows, use crit comments --json (or crit comments --plan <slug> for plan reviews).

Review-level comments matter as well as file comments. Read existing replies. Treat missing resolved as unresolved. Use quote to narrow the requested change, anchor to locate content after edits, and drifted: true as a sign that line numbers are approximate.

4. Address comments

Revise the referenced plan or source files and apply suggestion blocks when present. Reply with what changed:

crit comment --reply-to <id> --author 'OMO' '<what changed>'
crit comment --plan <slug> --reply-to <id> --author 'OMO' '<what changed>'

Do not pass --resolve unless the user explicitly asks; resolution belongs to the reviewer. For multiple replies, write JSON with the file-edit tool:

crit comment --json --file /tmp/crit-replies.json --author 'OMO'

Each entry has reply_to and body. Use the crit-cli skill for the full schema and session disambiguation. Plan edits reload live in the browser.

5. Start the next round

Run the next-round command printed by Crit using the same monitor pattern. It signals round-complete and then waits for the next Finish Review.

Tell the user only: "Replied in Crit. Review the changes in your browser and click Finish Review when ready." Do not repeat your replies or list the comments in chat. The reviewer reads them in Crit. Await command completion, then return to Step 3. Continue until the reviewer approves.

Sharing

Only share or unpublish when the user asks:

crit share <file> [file...]
crit unpublish [file...]

Relay the full printed URL. Use --qr only in real monospace terminals. For another device, keep Crit on loopback and use an SSH tunnel or reverse proxy. --public-url requires --allow-unauthenticated-network and changes the printed URL, not the listener.

GitHub Repository

tomasz-tomczyk/crit
Path: integrations/omo/skills/crit
0
agentic-codingai-agentsai-toolsclicode-reviewdeveloper-tools
FAQ

Frequently asked questions

What is the crit skill?

crit is a Claude Skill by tomasz-tomczyk. Skills package instructions and resources that Claude loads on demand, so Claude can perform crit-related tasks without extra prompting.

How do I install crit?

Use the install commands on this page: add crit to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.

What category does crit belong to?

crit is in the Development category.

Is crit free to use?

Yes. crit is listed on AIMCP and free to install.

Related Skills

qmd
Development

qmd is a local search and indexing CLI tool that enables developers to index and search through local files using hybrid search combining BM25, vector embeddings, and reranking. It supports both command-line usage and MCP (Model Context Protocol) mode for integration with Claude. The tool uses Ollama for embeddings and stores indexes locally, making it ideal for searching documentation or codebases directly from the terminal.

View skill
subagent-driven-development
Development

This skill executes implementation plans by dispatching a fresh subagent for each independent task, with code review between tasks. It enables fast iteration while maintaining quality gates through this review process. Use it when working on mostly independent tasks within the same session to ensure continuous progress with built-in quality checks.

View skill
mcporter
Development

The mcporter skill enables developers to manage and call Model Context Protocol (MCP) servers directly from Claude. It provides commands to list available servers, call their tools with arguments, and handle authentication and daemon lifecycle. Use this skill for integrating and testing MCP server functionality in your development workflow.

View skill
adk-deployment-specialist
Development

This skill deploys and orchestrates Vertex AI ADK agents using A2A protocol, managing AgentCard discovery, task submission, and supporting tools like Code Execution Sandbox and Memory Bank. It enables building multi-agent systems with sequential, parallel, or loop orchestration patterns in Python, Java, or Go. Use it when asked to deploy ADK agents or orchestrate agent workflows on Google Cloud.

View skill