NotebookLM Research Workflow
claude-world/notebooklm-skill
Creates NotebookLM notebooks from URLs, text and files, asks cited questions, runs web research and generates audio, slides, quizzes and other artifacts.
Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured…
$ npx skills add SNL-UCSB/literature-survey-skill --skill survey -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install SNL-UCSB/literature-survey-skill survey --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
Claude Code skills documentation · loads skills from .claude/skills/
Install the "survey" agent skill from https://github.com/SNL-UCSB/literature-survey-skill/tree/main into .claude/skills/survey/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "survey", 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.
$ npx skills add SNL-UCSB/literature-survey-skill --skill survey -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install SNL-UCSB/literature-survey-skill survey --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "survey" agent skill from https://github.com/SNL-UCSB/literature-survey-skill/tree/main into .agents/skills/survey/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "survey", 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 SNL-UCSB/literature-survey-skill --skill survey -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install SNL-UCSB/literature-survey-skill survey --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "survey" agent skill from https://github.com/SNL-UCSB/literature-survey-skill/tree/main into .cursor/skills/survey/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "survey", 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.
$ npx skills add SNL-UCSB/literature-survey-skill --skill survey -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install SNL-UCSB/literature-survey-skill survey --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "survey" agent skill from https://github.com/SNL-UCSB/literature-survey-skill/tree/main into .gemini/skills/survey/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "survey", 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 SNL-UCSB/literature-survey-skill surveyInstalls 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 SNL-UCSB/literature-survey-skill --skill survey -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "survey" agent skill from https://github.com/SNL-UCSB/literature-survey-skill/tree/main into .github/skills/survey/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "survey", 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 SNL-UCSB/literature-survey-skill --skill survey -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install SNL-UCSB/literature-survey-skill survey --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "survey" agent skill from https://github.com/SNL-UCSB/literature-survey-skill/tree/main into .opencode/skills/survey/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "survey", 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.
surveyLiterature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured…
Survey is an agent skill from SNL-UCSB/literature-survey-skill. Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured reading with craft and visualization extraction), /survey synthesize (cross-paper analysis for related work, area exams, gap identification). Also: /survey expand (corpus growth proposals). Use when students mention reading papers, literature review, related work, area exam prep, paper corpus, or any systematic reading…
Its SKILL.md is about 5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 17 other files (for example `NOTEBOOKLM_SETUP.md`, `README.md` and `reference/first_principles.md`).
It sits in Knowledge Management, covering Literature review, Source-grounded notebooks and Proposals and quotes. It works with NotebookLM. The repository describes itself as: A Claude Code skill that takes PhD students from a pile of papers to a synthesized understanding of what the field knows, what it doesn't, and where to push next. Intent → Triage… The licence is MIT.
12 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1847596. 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.
Ships script files (Shell), which the agent can run.
From 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.
Survey loads about 5k tokens when it runs. Until then it costs about 132 tokens; SKILL.md has 1,847 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 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.
The full file from SNL-UCSB/literature-survey-skill at commit 1847596, republished under its MIT licence (© SNL-UCSB). 1,847 words, ~4,987 tokens.
.claude/skills/survey/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.This skill helps PhD students build a deep, synthesized corpus of research insights through a structured, cognitively-aware workflow. It combines Kahneman's dual-process theory, Keshav's three-pass reading method, first-principles analysis, and NotebookLM as a backend query engine.
Architecture: All student work lives locally (Obsidian/filesystem). NotebookLM is a query backend only — papers go in, grounded answers come out.
Modes:
/survey intent — Capture what you're trying to learn and where you're starting from/survey triage — Map the landscape, prioritize reading depth/survey deepen — Structured reading with craft and visualization extraction/survey synthesize — Cross-paper analysis for deliverables/survey expand — Structured corpus growth proposalsIf the student invokes /survey without a mode, ask which mode they want. If they seem unsure or are starting a new survey, begin with intent.
Prerequisites: NotebookLM MCP CLI must be configured. See reference/notebooklm_tools.md for setup.
Purpose: Capture the student's survey goals, expertise level, and success criteria BEFORE any paper is read. This shapes all subsequent modes.
Do NOT create any NotebookLM notebooks in this mode. Do NOT ingest any papers. The goal is purely clarifying intent.
Ask the student which best describes their situation:
Before we look at any papers, I need to understand what kind of survey this is. Which best describes you?
A. Explorer — "I'm entering a new area and need to understand the landscape." B. Investigator — "I have specific questions I need answered from the literature." C. Validator — "I think I've found a gap/idea and want to confirm it's novel." D. Examiner — "I need to demonstrate comprehensive mastery for an exam or survey paper."
Each archetype has different defaults:
| Archetype | Triage scope | Deepen targets | Pass 3 count | Synthesize output |
|---|---|---|---|---|
| Explorer | 50-100+ papers | 8-15 at Pass 2 | 2-3 | Landscape overview |
| Investigator | 10-25 papers | 5-10 at Pass 2 | 3-5 | Technique comparison |
| Validator | 15-30 papers | 3-5 closest at Pass 2+3 | 3-5 | Positioning argument |
| Examiner | 80-150+ papers | 15-25 at Pass 2 | 5-8 | Full narrative survey |
Ask calibration questions for the chosen topic:
- Vocabulary check: Can you name 3 key technical terms in this area and define each in one sentence?
- Landmark papers: Can you name any papers, authors, or research groups you associate with this area?
- Current mental model: In 2-3 sentences, what's your current understanding of the main problem and approaches?
- Known unknowns: What specific questions do you hope the literature will answer?
Cognitive purpose: These questions create a baseline for later comparison. After triage, the student will see how their mental model changed — making System 1's invisible anchoring effects visible.
- Deliverable: Related work section? Area exam presentation? Gap analysis? Idea validation?
- Scope: Approximately how many papers do you expect to cover?
- Timeline: When do you need the output?
- Time budget: How many hours per week can you invest?
Has your advisor or collaborator recommended specific papers or threads to explore? Any "must-read" papers with suggested reading depth?
Write a survey_intent.md file using the template from templates/survey_intent_template.md. Save it to the student's survey directory:
literature-survey/surveys/<topic-slug>/survey_intent.mdAlso create the directory structure:
surveys/<topic-slug>/
├── survey_intent.md
├── pdfs/
├── papers/
│ └── figures/
├── synthesis/
├── corpus_log.md
├── backlog.md
└── nlm_config.mdTell the student: "Your survey intent is captured. Run /survey triage when you're ready to start mapping the landscape."
Purpose: Rapid Pass 1 over a corpus of papers using NotebookLM. Map the landscape and decide where to invest deeper reading. The archetype from intent mode shapes scope and clustering.
Read the student's survey_intent.md and nlm_config.md. If no notebook exists yet:
notebook_create(title="survey-<topic-slug>")
chat_configure(notebook_id=<id>, goal="custom",
custom_prompt="You are a research corpus query engine for a PhD student
surveying [topic]. The student is an [archetype] with goals: [from intent].
Always cite specific papers and quote relevant passages.",
response_length="longer")
tag(action="add", notebook_id=<id>, tags=["survey", "<topic>", "<term>"])Save the notebook_id to nlm_config.md.
Ask the student for their initial papers (PDFs, URLs, BibTeX). For each paper:
Acquire the PDF locally using the priority chain:
pdfs/YYYY_author_shorttitle.pdfwgetIngest into NotebookLM (async for large batches):
source_add(notebook_id=<id>, source_type="file", file=<path>, wait=False)Log in corpus_log.md with status "ingesting".
While papers load (3-5 min for 15+ papers), use the time productively — refine intent, discuss the topic, let the student start reading local PDFs if they want.
Once sources are ready, for each paper query NLM:
notebook_query(notebook_id=<id>,
query="For [title] by [author]: provide CATEGORY (measurement/systems-building/theory/survey),
PROBLEM (one sentence), CONTRIBUTION (exact quote of main claim), EVALUATION (system/dataset/testbed),
KEY REFERENCES (3-5 most cited references), RELEVANCE to survey goals (high/medium/low)")Write each response to a local file: papers/YYYY_author_shorttitle.md with a [Pass 1] header.
Query NLM for a cross-corpus landscape:
notebook_query(notebook_id=<id>,
query="Group all papers by PROBLEM addressed (3-5 major threads). For each thread, list papers
and methodology. Identify chronological patterns. WYSIATI CHECK: What problem areas or
methodologies are absent? What would a skeptical reviewer say is missing?")Write to survey_triage.md.
This is a System 2 checkpoint. Show the student their initial mental model (from survey_intent.md) alongside the landscape map:
"Here's what you thought the area looked like when you started. Here's what the corpus actually shows. What's different? What surprised you?"
Help the student categorize each paper against their time budget:
Update survey_triage.md with the prioritized reading list.
notebook_query(notebook_id=<id>,
query="Which references appear in 3+ papers but are NOT sources in this notebook?
For each, explain why it might be important to add.")Append candidates to corpus_log.md with reason=FOUNDATIONAL. Present to student for Add/Bookmark/Skip decision (see /survey expand protocol).
Purpose: Structured Pass 2 and Pass 3 reading for individual papers. Forces System 2 engagement, captures insights locally, uses NLM for grounded extraction and calibration.
Ask which paper from the triage reading list. Read their existing paper note if one exists.
Run four NLM queries and write results to the local paper note:
a. Claim extraction:
notebook_query: "For [title]: Quote the 3 most important claims with section/page references."b. Evidence audit:
notebook_query: "For [title]: For each claim, what evidence is provided? Rate as strong/moderate/weak."c. Methodology probe:
notebook_query: "For [title]: Describe evaluation setup. What explicit and implicit assumptions?
What would break if workload/scale/topology changed?"d. Dependency extraction:
notebook_query: "For [title]: What results from other papers does this depend on?
Which dependencies might not hold in other contexts?"Write all responses to the paper's local note as a [Pass 2] section.
After the student has read the paper themselves, compare their understanding with NLM's grounded extraction:
[Calibration] section. Highlight the specificity gap.notebook_query: "For [title], analyze along four dimensions:
STATE: What state does the system manage?
TIME: What timescales matter?
COORDINATION: How do components coordinate?
INTERFACE: What are the boundaries between components?
Quote specific passages as evidence."Write to the paper note as [First-Principles] section.
Ask the student:
Read reference/writing_craft_moves.md for the full framework. Query NLM and guide the student through:
a. Introduction anatomy — the six-move formula:
notebook_query: "For [title], analyze the INTRODUCTION:
MOVE 1 (Stakes): How does it open? Specific actors/applications/dollar amounts?
MOVE 2 (Problem Gap): Structural or quantitative? Numbered limitations?
MOVE 3 (Key Abstraction): Does it coin a memorable, citable term?
MOVE 4 (Design Intuition): One-paragraph mental model? Overview figure?
MOVE 5 (Contributions): Claims with evidence, or process descriptions? Numbered?
MOVE 6 (Results Preview): Concrete headline numbers?
Quote specific passages."b. Evaluation architecture:
notebook_query: "For [title], analyze the EVALUATION:
CLAIM-EVIDENCE MAP: List every intro claim → evaluation subsection → figure/table.
SETUP: Compressed or technical report?
DEEP DIVE: Results disaggregated by meaningful dimensions?
TAKEAWAYS: Explicit takeaway after every experiment cluster?
ABLATION: Shows each component contributes?"c. Design section craft:
notebook_query: "For [title], analyze the DESIGN:
Opens with abstraction or implementation?
'Why' move — justification via negative result?
Named components? Key configurable 'knob'?"d. Related work positioning: Ask the student: How many categories? Structural or quantitative limitations? Explicit positioning sentence?
e. Peak observation: What is the single most memorable insight — the thing you'd cite 10 years from now?
f. Lessons for my writing: The student captures what they want to adopt for their own papers.
Write to paper note as [Craft] section. Also append key lessons to synthesis/writing_craft_corpus.md.
Read reference/viz_analysis_guide.md. Query NLM and guide the student through:
a. Figure inventory:
notebook_query: "For [title]: List every figure and table. For each: caption, role
(overview/comparison/deep-dive/ablation/case-study), claim it supports, encoding used.
Which is the headline figure?"b. Visual argument analysis (2-3 key figures):
notebook_query: "For [title], for the 2-3 most important figures:
What claim does each support? Describe encoding choices (axes, scale, color, faceting).
WHY those choices — does the encoding serve the argument?
What does the figure NOT show that would be useful?"c. Figure extraction from local PDF: If the student wants key figures extracted, use PyMuPDF on the local PDF in pdfs/, or prompt for manual screenshots. Save to papers/figures/.
Write to paper note as [Visualization] section. Append best-practice examples to synthesis/viz_patterns.md.
The local paper note (papers/YYYY_author_shorttitle.md) grows through the mode:
[Pass 1] → [Pass 2] → [Calibration] → [First-Principles] → [Craft] → [Visualization] → [My Notes]
Purpose: Cross-paper synthesis for a specific deliverable. Uses NLM cross-corpus queries, writes all results locally.
The student chooses (informed by their intent profile):
notebook_query: "For every paper, build a comparison matrix:
State management | Primary timescale | Coordination model | Interface design.
Highlight where papers make fundamentally different choices."Write to synthesis/invariant_matrix.md. Student annotates locally.
notebook_query: "Identify cases where one paper's design DEPENDS ON an assumption
another paper challenges. Quote the assumption and the challenging evidence."Write to synthesis/dependency_graph.md.
notebook_query: "If [bandwidth/latency/scale] changed by 10x, which solutions still work?
Which break? What new problems emerge that no paper addresses?"Also ask: "Looking at the invariant matrix — are there combinations no paper explores? Missing methodologies?"
Write to synthesis/gap_analysis.md.
cross_notebook_query(query="How do approaches to [dimension] differ between
[survey A] and [survey B]?", tags=["survey"])Based on the synthesis goal, generate the deliverable draft:
Before finalizing:
"What perspectives are missing? What would someone from [adjacent field] say? Am I over-indexing on [one group/venue/methodology]?"
studio_create(notebook_id=<id>, artifact_type="report") # or "slide_deck"
download_artifact(notebook_id=<id>, artifact_type="report", output_path="synthesis/nlm_report.md")These are starting points — the student edits locally.
Purpose: Structured, student-in-the-loop corpus expansion. Triggers at transition points between modes, not mid-reading.
Batch candidates and present at transition points with:
| Paper | Source of discovery | Reason | Relevance to intent | Suggested pass | Time cost |
|---|
For each, the student chooses:
source_add to NLM notebook, download PDF locally, create paper note with Pass 1, update corpus_log.mdbacklog.md for future surveysTrack expansion against the intent profile's scope and time budget. If corpus outgrows the plan:
"You started targeting ~30 papers. You're at 42. Your remaining time budget supports deepening ~5 more. Adjust scope or be more selective?"
For Validators: conservative expansion. For Examiners: more permissive with diminishing-returns reasoning.
For Explorers and Examiners:
research_start(query="[topic-specific search]", source="web", mode="deep", title="<topic>-expansion")
research_status(notebook_id=<research_id>, max_wait=300)
# Present discovered papers through the expand proposal workflow
research_import(notebook_id=<survey_id>, task_id=<task_id>, source_indices=[student-approved])When a student returns after time away:
survey_intent.md (why), survey_triage.md (landscape), corpus_log.md (what's in the corpus), papers/*.md (what's been read).nlm_config.md to reconnect to the NLM notebook.[Pass 2] section in paper note).The student's state is reconstructed from local files, not from NLM. If the NLM notebook were deleted, only query capability is lost — not the knowledge base.
Read these when deeper guidance is needed:
| When you need... | Read this file |
|---|---|
| Keshav's three-pass method details | reference/keshav_three_pass.md |
| Kahneman biases relevant to surveys | reference/kahneman_biases.md |
| First-principles invariant questions | reference/first_principles.md |
| NotebookLM MCP tool reference | reference/notebooklm_tools.md |
| Six-move intro formula + craft questions | reference/writing_craft_moves.md |
| Figure analysis guide + quality checklist | reference/viz_analysis_guide.md |
| Survey intent template | templates/survey_intent_template.md |
| Paper note template | templates/paper_note_template.md |
| Triage template | templates/survey_triage_template.md |
| Synthesis template | templates/synthesis_template.md |
© SNL-UCSB, 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 15 other files in the repository root of SNL-UCSB/literature-survey-skill.
Open the folder on GitHubat commit 1847596
Survey 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 |
|---|---|---|---|---|---|---|
| Survey this skillSNL-UCSB/literature-survey-skill | 106 | — | ~5k | Automated safety check: Pass | MIT | |
| NotebookLM Research Workflowclaude-world/notebooklm-skill | 467 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Nlm Skilliusztinpaul/ai-research-os-workshop | 179 | 1 repos | ~6.9k | Automated safety check: Pass | MIT | |
| NotebookLM CLI Guidejacob-bd/notebooklm-cli | 256 | — | ~3.4k | Automated safety check: Warn | MIT | |
| Notebooklmalirezarezvani/claude-skills | 28k | — | ~4k | Automated safety check: Pass | MIT | |
| Notebooklm CLIItamarZand88/CLI-Anything-WEB | 231 | — | ~997 | Automated safety check: Pass | MIT |
claude-world/notebooklm-skill
Creates NotebookLM notebooks from URLs, text and files, asks cited questions, runs web research and generates audio, slides, quizzes and other artifacts.
iusztinpaul/ai-research-os-workshop
Expert guide for the NotebookLM CLI (nlm) and MCP server - interfaces for Google NotebookLM.
jacob-bd/notebooklm-cli
Guides use of the nlm command-line tool to automate Google NotebookLM: notebooks, sources, research, one-shot questions and generated podcasts, reports, quizzes and slides.
alirezarezvani/claude-skills
Browser automation skill for controlling Google's NotebookLM.
ItamarZand88/CLI-Anything-WEB
Drives Google NotebookLM via the cli-web-notebooklm command-line tool — create and manage notebooks, add URL/text sources, ask questions grounded in the sources, and generate/download artifacts…
Mathews-Tom/armory
Full NotebookLM API via notebooklm-py CLI: create notebooks, add sources, generate podcasts, videos, infographics, slides, quizzes, flashcards, mind maps.
Works with
Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured…. Survey is an agent skill from SNL-UCSB/literature-survey-skill. Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured reading with craft and visualization extraction), /survey synthesize (cross-paper analysis for related work, area exams, gap identification).
Survey fits situations like: students mention reading papers; literature review; any systematic reading task.
Run `npx skills add SNL-UCSB/literature-survey-skill --skill survey -a claude-code`. Or copy the skill folder (the SNL-UCSB/literature-survey-skill repository) into .claude/skills/survey in your project. Claude Code loads it when a task matches its description.
Run `npx skills add SNL-UCSB/literature-survey-skill --skill survey -a codex`. Or copy the skill folder (the SNL-UCSB/literature-survey-skill repository) into .agents/skills/survey 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 SNL-UCSB/literature-survey-skill --skill survey -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/survey, .gemini/skills/survey, .github/skills/survey and .opencode/skills/survey in your project.
Going by SKILL.md and its folder, Survey needs a shell for the scripts in its folder. Our summary lists: A Bash shell.
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 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.
Survey is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 5k tokens (SKILL.md is roughly 20k 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 Survey: NotebookLM Research Workflow (claude-world/notebooklm-skill, 467 stars), Nlm Skill (iusztinpaul/ai-research-os-workshop, 179 stars), NotebookLM CLI Guide (jacob-bd/notebooklm-cli, 256 stars) and Notebooklm (alirezarezvani/claude-skills, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
SNL-UCSB (a GitHub organization) maintains it in SNL-UCSB/literature-survey-skill, which has 106 GitHub stars. The repository was last updated on March 27, 2026.
Source: SNL-UCSB/literature-survey-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.