second-opinion

Run an external LLM code review with Codex CLI, Gemini CLI, or both. Use when the user asks for a second opinion, external review, Codex review, Gemini review, or wants a model-vs-model review of current changes, a branch diff, a specific commit, or a GitHub pull request.

14 stars

Best use case

second-opinion is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Run an external LLM code review with Codex CLI, Gemini CLI, or both. Use when the user asks for a second opinion, external review, Codex review, Gemini review, or wants a model-vs-model review of current changes, a branch diff, a specific commit, or a GitHub pull request.

Teams using second-opinion should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/second-opinion/SKILL.md --create-dirs "https://raw.githubusercontent.com/blacktop/dotfiles/main/ai/skills/second-opinion/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/second-opinion/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How second-opinion Compares

Feature / Agentsecond-opinionStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Run an external LLM code review with Codex CLI, Gemini CLI, or both. Use when the user asks for a second opinion, external review, Codex review, Gemini review, or wants a model-vs-model review of current changes, a branch diff, a specific commit, or a GitHub pull request.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Second Opinion

Run an independent code review without changing the repo.

## When to use it

- non-trivial code changes
- risky refactors
- security, performance, or concurrency-sensitive edits
- schema or API changes
- before opening or merging a PR
- when the user explicitly wants another model's view

## When to skip it

- docs-only or formatting-only changes, unless the user still wants it
- repos or diffs that must not be sent to external services
- empty diffs

If repository guidance or user instructions forbid sending code to third-party tools, stop and ask before proceeding.

## Infer the request first

Infer as much as possible from the user's message:

- tool: `codex`, `gemini`, or `both`
- scope: `uncommitted`, `branch diff`, `commit`, or `PR`
- focus: `general`, `security`, `performance`, `error handling`, `architecture`, or a custom concern

Ask one concise follow-up only if a missing detail blocks the run.

## Read only what you need

- Read [references/workflow.md](references/workflow.md) for scope detection, diff sizing, review-brief construction, and synthesis rules.
- Read [references/codex.md](references/codex.md) only if running Codex.
- Read [references/gemini.md](references/gemini.md) only if running Gemini.

## Core workflow

1. Detect the scope and compute diff stats.
2. Stop on empty diffs.
3. Warn on large diffs and suggest narrowing scope before spending tokens.
4. Build a short review brief that tells the reviewer:
   - what changed
   - what to focus on
   - how to inspect the diff locally
   - that the review is read-only
   - what output format to return
5. Run the selected tool or tools in parallel if independent.
6. Present findings first, then agreement and disagreement across tools.
7. Never auto-apply suggested fixes unless the user explicitly asks.

## Safety defaults

- Keep the review read-only.
- Do not commit, push, stage, or edit files as part of the second opinion run.
- Prefer tool-native review commands over manual diff pasting when the tool can inspect the repo directly.
- Prefer prompt files or stdin over fragile one-line shell quoting for long review briefs.
- Use explicit timeouts and capture output cleanly when automating external review CLIs.
- Clean up temporary prompt and output files after reading them.

## Review result format

Present results in this order:

1. Findings by tool, highest severity first.
2. Explicit `No findings` if a tool returns nothing substantive.
3. A short synthesis:
   - where the tools agree
   - where they disagree
   - what looks worth acting on first

Keep the synthesis separate from the raw reviewer output so the user can distinguish the outside opinion from your judgment.

Related Skills

seatbelt-sandboxer

14
from blacktop/dotfiles

Generates minimal macOS Seatbelt sandbox configurations. Use when sandboxing, isolating, or restricting macOS applications with allowlist-based profiles.

screenshot-analyzer

14
from blacktop/dotfiles

Find and analyze screenshots from ~/Downloads/Screenshots/ for UI/UX review. Use when asked to look at screenshots, review UI designs, inspect interface errors, analyze layout issues, or examine visual problems. Triggers on "check my latest screenshot", "review my UI", "analyze this screen capture".

save-session

14
from blacktop/dotfiles

Save AI agent session information for later resumption. Use when: (1) Finishing a work session and want to save progress (2) User says "save session", "remember this session", or "save your session ID" (3) Before ending a long coding/debugging session (4) When user wants to be able to resume this conversation later Supports Claude, Codex, Gemini, Copilot, Cursor, and other AI agents.

rust-profiling

14
from blacktop/dotfiles

Profile Rust code using samply to identify CPU bottlenecks. Use when performance is slow, before optimizing, or when the user asks to profile.

ratatui-tui

14
from blacktop/dotfiles

Build terminal UIs with ratatui following 2026 Rust best practices. Use when: (1) Creating new TUI apps, (2) Adding widgets/layouts, (3) Keyboard navigation/state management, (4) Image integration via ratatui-image, (5) Async event handling, (6) Release optimization. Covers v0.30.0+ API, Elm Architecture, StatefulWidget, color-eyre.

orchestrate

14
from blacktop/dotfiles

Orchestrate multi-step work with Claude Code CLI as a bounded worker while Codex stays lead developer. Use when Codex should split a task into scoped sub-tasks, delegate planning or implementation to Claude with `claude -p`, run parallel Claude sessions, isolate risky edits in worktrees, define custom Claude subagents, or move repeated enforcement into Claude hooks/settings.

karpathy-guidelines

14
from blacktop/dotfiles

Behavioral checklist for disciplined LLM coding. Use when starting non-trivial tasks to enforce assumption surfacing, minimal changes, and verifiable goals. Derived from Andrej Karpathy's observations on LLM coding pitfalls.

instruments-profiling

14
from blacktop/dotfiles

Use when profiling native macOS or iOS apps with Instruments/xctrace. Covers correct binary selection, CLI arguments, exports, and common gotchas.

humanizer

14
from blacktop/dotfiles

Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases. 30c5c8d (Update humanizer plugin to upstream v2.2.0)

html-artifacts

14
from blacktop/dotfiles

Produce a single self-contained .html artifact (no build, no external assets) when the task is spatial, interactive, visual, multi-axis, or long-running. Triggers on "build me an HTML for X", "make a dashboard / status snapshot / comparison / decision tree / timeline / architecture map", "render this plan as a clickable site", or when content can't fit markdown structurally. Skips short replies, code-only outputs, simple plans.

handoff

14
from blacktop/dotfiles

Generate optimized handoff prompts for delegating work to another LLM agent. Use when handing work to GPT-5.x/Codex, Claude 4.x, Gemini 3.x, or Grok 4.x, either as a shared-workspace sub-task handoff or a fresh-context handoff for a new session or model. Triggers on requests like "create a handoff prompt", "delegate this task to another agent", "hand this off", or "prepare context for another agent".

go-performance

14
from blacktop/dotfiles

Measure and improve Go program performance on modern Go (1.24+). Use when profiling Go code, diagnosing CPU or memory bottlenecks, investigating latency or contention, writing or fixing benchmarks, comparing benchmark results, using pprof or trace data, applying PGO, or tuning hot-path Go code.