NotebookLM Research Assistant
PleasePrompto/notebooklm-skill
Lets Claude Code ask questions of your Google NotebookLM notebooks through browser automation and return answers grounded in your uploaded sources.
Get a second opinion from Google's Gemini Pro via the locally installed Gemini CLI (defaults to gemini-3.1-pro-preview; override with the CLAUDESECONDOPINIONMODEL env var).
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install peterkrueck/Claude-Code-Development-Kit second-opinion-gemini --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/peterkrueck/Claude-Code-Development-Kit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/second-opinion-gemini .claude/skills/second-opinion-gemini && 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 "second-opinion-gemini" agent skill from https://github.com/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-gemini into .claude/skills/second-opinion-gemini/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "second-opinion-gemini", 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/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-geminiType 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 peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install peterkrueck/Claude-Code-Development-Kit second-opinion-gemini --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/peterkrueck/Claude-Code-Development-Kit.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/second-opinion-gemini .agents/skills/second-opinion-gemini && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "second-opinion-gemini" agent skill from https://github.com/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-gemini into .agents/skills/second-opinion-gemini/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "second-opinion-gemini", 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 peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install peterkrueck/Claude-Code-Development-Kit second-opinion-gemini --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/peterkrueck/Claude-Code-Development-Kit.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/second-opinion-gemini .cursor/skills/second-opinion-gemini && 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 "second-opinion-gemini" agent skill from https://github.com/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-gemini into .cursor/skills/second-opinion-gemini/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "second-opinion-gemini", 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/peterkrueck/Claude-Code-Development-Kit.git --path skills/second-opinion-gemini--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 peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install peterkrueck/Claude-Code-Development-Kit second-opinion-gemini --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/peterkrueck/Claude-Code-Development-Kit.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/second-opinion-gemini .gemini/skills/second-opinion-gemini && 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 "second-opinion-gemini" agent skill from https://github.com/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-gemini into .gemini/skills/second-opinion-gemini/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "second-opinion-gemini", 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 peterkrueck/Claude-Code-Development-Kit second-opinion-geminiInstalls 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 peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/peterkrueck/Claude-Code-Development-Kit.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/second-opinion-gemini .github/skills/second-opinion-gemini && 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 "second-opinion-gemini" agent skill from https://github.com/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-gemini into .github/skills/second-opinion-gemini/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "second-opinion-gemini", 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 peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install peterkrueck/Claude-Code-Development-Kit second-opinion-gemini --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/peterkrueck/Claude-Code-Development-Kit.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/second-opinion-gemini .opencode/skills/second-opinion-gemini && 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 "second-opinion-gemini" agent skill from https://github.com/peterkrueck/Claude-Code-Development-Kit/tree/main/skills/second-opinion-gemini into .opencode/skills/second-opinion-gemini/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "second-opinion-gemini", 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.
second-opinion-geminiGet a second opinion from Google's Gemini Pro via the locally installed Gemini CLI (defaults to gemini-3.1-pro-preview; override with the CLAUDESECONDOPINIONMODEL env var).
Second Opinion Gemini is an agent skill from peterkrueck/Claude-Code-Development-Kit. Get a second opinion from Google's Gemini Pro via the locally installed Gemini CLI (defaults to gemini-3.1-pro-preview; override with the CLAUDESECONDOPINIONMODEL env var). This is the explicit / fallback engine — invoke ONLY when the user explicitly says "ask Gemini", "Gemini's take", "what does Gemini think", or "ask both" (run alongside the default engine and synthesize). Do NOT trigger on a generic "second opinion", "another perspective", or "cross-check this" — those route to the default second-opinion…
Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `SKILL.default.md`).
It works with Google Gemini. The repository describes itself as: Claude Code Workflow for beginners & intermediate users. Tutorial and Installer included. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit ba85375. 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:
geminiFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Second Opinion Gemini loads about 2.3k tokens when it runs. Until then it costs about 182 tokens; SKILL.md has 1,141 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.
ulti-turn conversation autonomously** — do NOT ask the user for permission between rounds. Push back on Gemini's points,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 peterkrueck/Claude-Code-Development-Kit at commit ba85375, republished under its MIT licence (© peterkrueck). 1,141 words, ~2,342 tokens.
.claude/skills/second-opinion-gemini/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Get an independent second opinion from Google's Gemini Pro. This model has a completely different architecture and training from Claude, making it genuinely useful for catching blind spots, validating reasoning on edge cases, or surfacing trade-offs you might miss.
This is NOT the default second-opinion engine. Generic second-opinion requests route to the default second-opinion skill. Use this Gemini skill only when:
second-opinion skill, then synthesize all three views (yours + the default engine's + Gemini's).Gemini has full read access to the project — it can read files, grep code, and explore the codebase. Its project instructions (GEMINI.md) tell it to prime itself on the key docs before answering. You provide the specific question and any focused context; Gemini handles the rest.
Pinned to gemini-3.1-pro-preview by default for quality (smaller models give weaker second opinions; not worth the false confidence they create).
When Google deprecates the preview pin — preview models rotate fast — override per-session or globally:
export CLAUDE_SECOND_OPINION_MODEL=gemini-3.2-pro # or whatever the current Pro-tier model isEvery invocation below uses the bash pattern ${CLAUDE_SECOND_OPINION_MODEL:-gemini-3.1-pro-preview} — the env var wins if set, otherwise the pinned default.
Do not fall back to a smaller/older model when the pin breaks. Report unavailability and continue with Claude-only analysis.
Gemini has NO access to your conversation history, but it CAN read project files. Structure your prompt as:
For questions about existing project code, you can simply reference file paths — Gemini will read them itself.
CRITICAL: Permission-free invocation pattern. The command MUST start with gemini (matches the Bash(gemini:*) allow rule) and MUST NOT use $() command substitution or /tmp/ file redirects — both trigger permission prompts.
Standard call (Gemini reads project files itself — preferred):
gemini -m "${CLAUDE_SECOND_OPINION_MODEL:-gemini-3.1-pro-preview}" -p '<your question here>' -o textWith context piped via stdin (for code snippets, diffs, or focused excerpts — use when context is scattered or you want to focus attention on specific sections):
gemini -m "${CLAUDE_SECOND_OPINION_MODEL:-gemini-3.1-pro-preview}" -p '<your question here>' -o text <<'CONTEXT_EOF'
<relevant code, diff, or context here>
CONTEXT_EOFThe Bash tool captures all output (stdout + stderr) directly — no file redirects needed. Gemini's stderr noise (Loading, Registering, Scheduling, etc.) appears in the output but is easily identified and ignored.
Output markers that mean Gemini did NOT answer:
MODEL_CAPACITY_EXHAUSTED, No capacity available, code.*429. Retry later or proceed without second opinion.model not found, MODEL_NOT_FOUND, unknown model, model_id_invalid, or 404 paired with the model name. The pinned model is dead — see the unavailable-block below.Required flags — no exceptions:
| Flag | Why |
|---|---|
-m "${CLAUDE_SECOND_OPINION_MODEL:-gemini-3.1-pro-preview}" | Pro-tier model required; env var lets users self-rescue when the pin breaks |
-p | Non-interactive headless mode. Tool calls are auto-approved in this mode (-y is not needed) |
-o text | Clean text output, no JSON wrapper noise |
DO NOT use:
$() command substitution (e.g., GEMINI_RESPONSE=$(gemini ...)) — triggers "Command contains $() command substitution" permission prompt/tmp/ file redirects (e.g., 2>/tmp/gemini-stderr.txt) — triggers "allow access to tmp/" permission prompt$() — same issueSet a 600-second timeout on the Bash tool call (Gemini may need time to read files and reason through complex questions).
When the topic warrants debate (architecture, design reviews, trade-off analysis), run the full multi-turn conversation autonomously — do NOT ask the user for permission between rounds. Push back on Gemini's points, let Gemini push back on yours, iterate until you reach consensus or clearly identify the disagreements. Typically 2-4 rounds.
Resume the session instead of starting fresh to preserve conversation history:
gemini -m "${CLAUDE_SECOND_OPINION_MODEL:-gemini-3.1-pro-preview}" -r latest -p '<your follow-up question>' -o textYou can also resume by session index (-r 6) or session ID (-r <uuid>). Use gemini --list-sessions to see available sessions.
When to use multi-turn:
When NOT to use multi-turn:
If multi-turn: Present a consolidated synthesis — the key agreements, remaining disagreements, and your joint recommendation. Don't dump each round's raw output; the user wants the conclusion, not the transcript.
If single-turn: Present Gemini's response, then add your own brief synthesis: where you agree, where you disagree, and what the user should take away from both perspectives. The value is in the synthesis, not just the raw second opinion.
If "ask both": Present the default engine's view and Gemini's view side by side, then your synthesis across all three perspectives (yours + both outside models) — flag where the two outside models agree (high confidence) vs. where they diverge (the real decision point).
If Gemini is unavailable — capacity exhausted / 429:
Gemini Pro is currently at capacity. No fallback to a weaker model — only Pro-tier is capable enough for meaningful second opinions, and the value is an independent architecture. Proceeding with my own analysis (or the default engine, if requested).
Do NOT retry with a different model. Do NOT silently fall back. Report unavailability and continue.
If the model is deprecated / not found (the pinned gemini-3.1-pro-preview was rotated out by Google):
The pinned model
gemini-3.1-pro-previewis no longer available. SetCLAUDE_SECOND_OPINION_MODELto a current Gemini Pro-tier model and re-run (checkgemini --list-modelsfor current options). Proceeding without a Gemini second opinion for this turn.
Tell the user clearly — this isn't a transient failure; the skill needs an env var update or an upstream patch to keep working.
If there's another error, show the filtered stderr and continue with your own reasoning.
gemini-3.1-pro-preview by default, or whatever CLAUDE_SECOND_OPINION_MODEL is set to) or nothing. A weaker model's opinion isn't worth the false confidence it creates.second-opinion skill.'\''. For very complex prompts, use stdin heredoc (see Step 2).gemini to match the Bash(gemini:*) allow rule. Never wrap in $() or redirect to /tmp/.© peterkrueck, 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 1 other file in skills/second-opinion-gemini of peterkrueck/Claude-Code-Development-Kit.
Open the folder on GitHubat commit ba85375
Second Opinion Gemini 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 |
|---|---|---|---|---|---|---|
| Second Opinion Gemini this skillpeterkrueck/Claude-Code-Development-Kit | 1.4k | — | ~2.3k | Automated safety check: Warn | MIT | |
| NotebookLM Research AssistantPleasePrompto/notebooklm-skill | 7.8k | 14 repos | ~2.4k | Automated safety check: Notes | MIT | |
| Brand and Design Toolkitnextlevelbuilder/ui-ux-pro-max-skill | 134k | 1 repos | ~3.5k | Automated safety check: Pass | MIT | |
| AI Image Generation and Editingzhayujie/CowAgent | 47k | — | ~1.3k | Automated safety check: Pass | MIT | |
| OpenCLI Smart Search Routerjackwener/OpenCLI | 30k | 2 repos | ~753 | Automated safety check: Pass | Apache-2.0 | |
| NotebookLM Automationteng-lin/notebooklm-py | 20k | — | ~4.1k | Automated safety check: Pass | MIT |
PleasePrompto/notebooklm-skill
Lets Claude Code ask questions of your Google NotebookLM notebooks through browser automation and return answers grounded in your uploaded sources.
nextlevelbuilder/ui-ux-pro-max-skill
Bundles design tasks behind one skill: brand identity, tokens, UI styling, logos, corporate identity mockups, slides, banners, icons and social images.
zhayujie/CowAgent
Generates or edits images from text prompts through a Python script that picks an image backend based on which API keys are configured.
jackwener/OpenCLI
Routes a search question to the most suitable opencli source, normally one AI site plus up to two specialist sites, with call limits per question and a recap at the end.
teng-lin/notebooklm-py
Installs, authenticates and operates Gemini Notebook (NotebookLM) through the notebooklm-py CLI or its typed async Python API, for notebooks, sources, grounded chat and generated artifacts.
YouMind-OpenLab/nano-banana-pro-prompts-recommend-skill
Recommend suitable prompts from 10,000+ Nano Banana Pro image generation prompts based on user needs.
peterkrueck/Claude-Code-Development-Kit
Edit images with precision — crop, resize, mirror, rotate, trim, and reframe.
peterkrueck/Claude-Code-Development-Kit
Generate character art and image variations using AI image generation (Google Gemini) with reference images for style and character consistency.
peterkrueck/Claude-Code-Development-Kit
Remove backgrounds from images using local AI (rembg). An agent skill from peterkrueck/Claude-Code-Development-Kit.
peterkrueck/Claude-Code-Development-Kit
Fetch CURRENT library/framework/API/CLI documentation via Context7 instead of relying on training data.
peterkrueck/Claude-Code-Development-Kit
Get a second opinion from OpenAI's Codex CLI running locally.
peterkrueck/Claude-Code-Development-Kit
Test and deploy changes safely. An agent skill from peterkrueck/Claude-Code-Development-Kit.
Works with
Get a second opinion from Google's Gemini Pro via the locally installed Gemini CLI (defaults to gemini-3.1-pro-preview; override with the CLAUDESECONDOPINIONMODEL env var). Second Opinion Gemini is an agent skill from peterkrueck/Claude-Code-Development-Kit.1-pro-preview; override with the CLAUDESECONDOPINIONMODEL env var).
Second Opinion Gemini fits situations like: explicitly says ask Gemini; what does Gemini think; ask both (run alongside the default engine and synthesize); A generic second opinion.
Run `npx skills add peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a claude-code`. Or copy the skill folder (skills/second-opinion-gemini in peterkrueck/Claude-Code-Development-Kit) into .claude/skills/second-opinion-gemini in your project. Claude Code loads it when a task matches its description.
Run `npx skills add peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a codex`. Or copy the skill folder (skills/second-opinion-gemini in peterkrueck/Claude-Code-Development-Kit) into .agents/skills/second-opinion-gemini 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 peterkrueck/Claude-Code-Development-Kit --skill second-opinion-gemini -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/second-opinion-gemini, .gemini/skills/second-opinion-gemini, .github/skills/second-opinion-gemini and .opencode/skills/second-opinion-gemini in your project.
Going by SKILL.md and its folder, Second Opinion Gemini needs the command-line tools its instructions call (gemini).
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.
Our automated static check of SKILL.md flagged 1 warning(s): tells the agent its actions are pre-authorized / not to stop for confirmation. Read the flagged lines before installing; the check is not a guarantee either way.
Second Opinion Gemini is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.4k 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 Second Opinion Gemini: NotebookLM Research Assistant (PleasePrompto/notebooklm-skill, 7.8k stars), Brand and Design Toolkit (nextlevelbuilder/ui-ux-pro-max-skill, 134k stars), AI Image Generation and Editing (zhayujie/CowAgent, 47k stars) and OpenCLI Smart Search Router (jackwener/OpenCLI, 30k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
peterkrueck (a GitHub user) maintains it in peterkrueck/Claude-Code-Development-Kit, which has 1,386 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on July 22, 2026.
Source: peterkrueck/Claude-Code-Development-Kit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.