Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured…

MITAuto-check passedKnowledge Management

Install Survey

skills CLI
$ npx skills add SNL-UCSB/literature-survey-skill --skill survey -a claude-code

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

GitHub CLI
$ gh skill install SNL-UCSB/literature-survey-skill survey --agent claude-code

Project 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/

Facts

Skill name
survey
GitHub stars
106
Token cost
~5k tokens
SKILL.md length
1,847 words
Files
16
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured…

  • Works in 12 steps: Identify the survey archetype → Assess expertise level → Define success criteria → …
  • Students mention reading papers
  • SKILL.md covers Mode 1: Intent — "What are you…, Mode 2: Triage — "What's in…, Mode 3: Deepen — "What does… and Mode 4: Synthesize — "What…
  • Runs Shell scripts from its folder

What it does

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.

When your agent uses it

  • Students mention reading papers
  • Literature review
  • Any systematic reading task

Example prompts

  • “/survey”

Requirements

  • A Bash shell

Workflow steps

12 steps, taken from the step headings in SKILL.md.

  1. Identify the survey archetype
  2. Assess expertise level
  3. Define success criteria
  4. Check for advisor input
  5. Generate the intent profile
  6. Set up NotebookLM backend
  7. Seed the corpus
  8. Generate Pass 1 summaries
  9. Generate landscape map
  10. WYSIATI check and intent comparison
  11. Prioritize reading depth
  12. Surface expansion candidates

What it can do on your machine

Read from SKILL.md and the folder at commit 1847596. 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

    Ships script files (Shell), which the agent can run.

    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

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.

Always · name and description, kept in context so the agent knows when to use it
~132
When it runs · the whole SKILL.md, loaded when a task matches
~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 SNL-UCSB/literature-survey-skill at commit 1847596, republished under its MIT licence (© SNL-UCSB). 1,847 words, ~4,987 tokens.

Download SKILL.mdSave it as .claude/skills/survey/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.
name
survey
description
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 task.

Literature Survey Skill — Intent → Triage → Deepen → Synthesize

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 proposals

If 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.


Mode 1: Intent — "What are you trying to learn?"

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.

Step 1: Identify the survey archetype

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:

ArchetypeTriage scopeDeepen targetsPass 3 countSynthesize output
Explorer50-100+ papers8-15 at Pass 22-3Landscape overview
Investigator10-25 papers5-10 at Pass 23-5Technique comparison
Validator15-30 papers3-5 closest at Pass 2+33-5Positioning argument
Examiner80-150+ papers15-25 at Pass 25-8Full narrative survey
Step 2: Assess expertise level

Ask calibration questions for the chosen topic:

  1. Vocabulary check: Can you name 3 key technical terms in this area and define each in one sentence?
  2. Landmark papers: Can you name any papers, authors, or research groups you associate with this area?
  3. Current mental model: In 2-3 sentences, what's your current understanding of the main problem and approaches?
  4. 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.

Step 3: Define success criteria
  1. Deliverable: Related work section? Area exam presentation? Gap analysis? Idea validation?
  2. Scope: Approximately how many papers do you expect to cover?
  3. Timeline: When do you need the output?
  4. Time budget: How many hours per week can you invest?
Step 4: Check for advisor input

Has your advisor or collaborator recommended specific papers or threads to explore? Any "must-read" papers with suggested reading depth?

Step 5: Generate the intent profile

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.md

Also create the directory structure:

surveys/<topic-slug>/
├── survey_intent.md
├── pdfs/
├── papers/
│   └── figures/
├── synthesis/
├── corpus_log.md
├── backlog.md
└── nlm_config.md

Tell the student: "Your survey intent is captured. Run /survey triage when you're ready to start mapping the landscape."


Mode 2: Triage — "What's in this pile?"

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.

Step 1: Set up NotebookLM backend

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.

Step 2: Seed the corpus

Ask the student for their initial papers (PDFs, URLs, BibTeX). For each paper:

  1. Acquire the PDF locally using the priority chain:

    • Student already has the file → copy to pdfs/YYYY_author_shorttitle.pdf
    • Open-access URL (Arxiv, university repo) → download via wget
    • Semantic Scholar API → query for open-access PDF URL
    • Prompt the student for upload or URL
  2. Ingest into NotebookLM (async for large batches):

    source_add(notebook_id=<id>, source_type="file", file=<path>, wait=False)
  3. 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.

Step 3: Generate Pass 1 summaries

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.

Step 4: Generate landscape map

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.

Step 5: WYSIATI check and intent comparison

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?"

Step 6: Prioritize reading depth

Help the student categorize each paper against their time budget:

  • Pass 1 only — background knowledge
  • Pass 2 recommended — relevant to core thread
  • Pass 3 required — foundational, must deeply understand

Update survey_triage.md with the prioritized reading list.

Step 7: Surface expansion candidates
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).


Mode 3: Deepen — "What does this paper really say?"

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.

Step 1: Select a paper

Ask which paper from the triage reading list. Read their existing paper note if one exists.

Step 2: Pass 2 protocol

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.

Step 3: Calibration check (System 2 prosthetic)

After the student has read the paper themselves, compare their understanding with NLM's grounded extraction:

  1. Ask the student: "In one sentence, what is this paper's main contribution?"
  2. Query NLM: "Quote the exact main contribution claim from the abstract or introduction."
  3. Show both side by side in a [Calibration] section. Highlight the specificity gap.
Step 4: First-principles decomposition
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.

Step 5: Pass 3 — Virtual re-implementation (foundational papers only)

Ask the student:

  • "If you had to build this system from scratch with the same goals, what would your design look like?"
  • "What assumptions are never explicitly stated?"
  • "Write three critical questions a skeptical PC member would ask."
Show full SKILL.md (756 more words)Show less
Step 6: Writing craft extraction (Pass 3+ papers the student admires)

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.

Step 7: Visualization extraction (all Pass 2+ papers)

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.

Output

The local paper note (papers/YYYY_author_shorttitle.md) grows through the mode: [Pass 1] → [Pass 2] → [Calibration] → [First-Principles] → [Craft] → [Visualization] → [My Notes]


Mode 4: Synthesize — "What connects all of this?"

Purpose: Cross-paper synthesis for a specific deliverable. Uses NLM cross-corpus queries, writes all results locally.

Step 1: Select synthesis goal

The student chooses (informed by their intent profile):

  • Related work section — organized thematic narrative
  • Area exam presentation — breadth + depth + frontier identification
  • Research gap identification — systematic analysis of what's missing
  • New idea synthesis — creative recombination of insights
Step 2: Invariant matrix
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.

Step 3: Dependency graph
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.

Step 4: Gap identification
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.

Step 5: Cross-survey synthesis (if multiple survey notebooks exist)
cross_notebook_query(query="How do approaches to [dimension] differ between
    [survey A] and [survey B]?", tags=["survey"])
Step 6: Narrative construction

Based on the synthesis goal, generate the deliverable draft:

  • Related work: Thematic threads with intellectual arcs, not chronological lists. Each thread: "These papers address X by solving Y, but none handle Z — our contribution."
  • Area exam: Breadth across subfield + depth on 2-3 foundational papers + frontier identification + student's own position.
  • Gap analysis: Constraint-change analysis → candidate problems with first-principles justification.
  • New ideas: "Paper A solves X under constraint C1. C1 is changing because of [trend]. Under C2, Paper A breaks because [dependency]. New approach needs [design principle]."
Step 7: WYSIATI final audit

Before finalizing:

"What perspectives are missing? What would someone from [adjacent field] say? Am I over-indexing on [one group/venue/methodology]?"

Step 8: Generate artifacts from NLM Studio (optional)
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.


Cross-Cutting: Expand — "Should this corpus grow?"

Purpose: Structured, student-in-the-loop corpus expansion. Triggers at transition points between modes, not mid-reading.

When candidates emerge
  • During triage: Frequently-cited references not in corpus → reason=FOUNDATIONAL
  • During deepen: Dependencies the student hasn't read → reason=DEPENDENCY
  • During synthesize: Entire sub-areas missing → reason=GAP_FILL
  • Papers that challenge existing corpus → reason=COUNTER
  • Adjacent community working on same problem → reason=ADJACENT
The proposal workflow

Batch candidates and present at transition points with:

PaperSource of discoveryReasonRelevance to intentSuggested passTime cost

For each, the student chooses:

  • Add → source_add to NLM notebook, download PDF locally, create paper note with Pass 1, update corpus_log.md
  • Bookmark → save to backlog.md for future surveys
  • Skip → log the reason (especially important for COUNTER papers)
Budget guard

Track 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.

Discovery via NLM research

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])

Session Continuity

When a student returns after time away:

  1. Read their local files: survey_intent.md (why), survey_triage.md (landscape), corpus_log.md (what's in the corpus), papers/*.md (what's been read).
  2. Read nlm_config.md to reconnect to the NLM notebook.
  3. Check which papers need deeper reading (marked Pass 2/3 in triage but no [Pass 2] section in paper note).
  4. Resume from where they left off.

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.


Reference Files

Read these when deeper guidance is needed:

When you need...Read this file
Keshav's three-pass method detailsreference/keshav_three_pass.md
Kahneman biases relevant to surveysreference/kahneman_biases.md
First-principles invariant questionsreference/first_principles.md
NotebookLM MCP tool referencereference/notebooklm_tools.md
Six-move intro formula + craft questionsreference/writing_craft_moves.md
Figure analysis guide + quality checklistreference/viz_analysis_guide.md
Survey intent templatetemplates/survey_intent_template.md
Paper note templatetemplates/paper_note_template.md
Triage templatetemplates/survey_triage_template.md
Synthesis templatetemplates/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

Files

SKILL.md and 15 other files in the repository root of SNL-UCSB/literature-survey-skill.

  • SKILL.md
  • .gitignore
  • LICENSE
  • NOTEBOOKLM_SETUP.md
  • README.md
  • reference/first_principles.md
  • reference/kahneman_biases.md
  • reference/keshav_three_pass.md
  • reference/notebooklm_tools.md
  • reference/viz_analysis_guide.md
  • reference/writing_craft_moves.md
  • setup.sh
  • templates/paper_note_template.md
  • templates/survey_intent_template.md
  • templates/survey_triage_template.md
  • templates/synthesis_template.md

Open the folder on GitHubat commit 1847596

Compare with similar skills

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.

Survey compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Survey this skillSNL-UCSB/literature-survey-skill106—~5kAutomated safety check: PassMIT
NotebookLM Research Workflowclaude-world/notebooklm-skill467—~1.8kAutomated safety check: PassMIT
Nlm Skilliusztinpaul/ai-research-os-workshop1791 repos~6.9kAutomated safety check: PassMIT
NotebookLM CLI Guidejacob-bd/notebooklm-cli256—~3.4kAutomated safety check: WarnMIT
Notebooklmalirezarezvani/claude-skills28k—~4kAutomated safety check: PassMIT
Notebooklm CLIItamarZand88/CLI-Anything-WEB231—~997Automated safety check: PassMIT

Similar skills

  • 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.

    467 GitHub stars~1.8k tokensUpdated 2 mo ago
    Knowledge ManagementAuto-check passed
  • Nlm Skill

    iusztinpaul/ai-research-os-workshop

    Expert guide for the NotebookLM CLI (nlm) and MCP server - interfaces for Google NotebookLM.

    179 GitHub starsUsed in 1 repo~6.9k tokens
    Knowledge ManagementAuto-check passed
  • NotebookLM CLI Guide

    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.

    256 GitHub stars~3.4k tokensUpdated 4 mo ago
    Knowledge ManagementAuto-check: warnings
  • Notebooklm

    alirezarezvani/claude-skills

    Browser automation skill for controlling Google's NotebookLM.

    28k GitHub stars~4k tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check passed
  • Notebooklm CLI

    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…

    231 GitHub stars~997 tokensUpdated 9 days ago
    Knowledge ManagementAuto-check passed
  • Notebooklm

    Mathews-Tom/armory

    Full NotebookLM API via notebooklm-py CLI: create notebooks, add sources, generate podcasts, videos, infographics, slides, quizzes, flashcards, mind maps.

    329 GitHub stars~4k tokensUpdated 4 days ago
    Knowledge ManagementAuto-check passed

Works with

Questions about Survey

What does Survey do?

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).

When should I use Survey?

Survey fits situations like: students mention reading papers; literature review; any systematic reading task.

How do I install Survey in Claude Code?

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.

How do I install Survey in Codex?

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.

Can I use Survey 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 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.

What does Survey need to run?

Going by SKILL.md and its folder, Survey needs a shell for the scripts in its folder. Our summary lists: A Bash shell.

Does Survey 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 Survey 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 Survey use?

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.

How many tokens does Survey use?

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.

What are the alternatives to Survey?

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.

Who maintains Survey?

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.