From study
Conducts Socratic study sessions grounded in a URL or local document. Calibrates to user familiarity, persists session notes to markdown files, and supports resumption across sittings. Use when the user invokes /study or wants to study a specific document or article.
How this skill is triggered — by the user, by Claude, or both
Slash command
/study:studyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Lead Socratic study sessions grounded in a document or URL, persisting all progress to flat markdown files.
Lead Socratic study sessions grounded in a document or URL, persisting all progress to flat markdown files.
/study <uri>
<uri>: A URL (e.g., https://web.dev/learn/html/forms) or a local file path (e.g., ~/notes/rfc9110.md)Load config with the following precedence (first match wins):
.claude/skill-configs/study/config.local.yaml — personal/local scope, gitignored.claude/skill-configs/study/config.yaml — project scope, committed to repoIf no config is found, stop and ask the user:
"No study config found. Where should I store session files? You can specify a custom path or use the default
.agent-workspace/study/sessions. I'll create.claude/skill-configs/study/config.yamlwith your choice."
Wait for the user's response, then create the config file before continuing.
Resolved fields:
sessions_dir — directory for session filesinstructions — optional freeform behavior/persona instructions (inject into context if present)If instructions is set in config, treat it as additional behavioral context for the entire session. Apply it throughout — it may affect tone, depth, language, or teaching style.
URL: Fetch using WebFetch. If fetch fails (dynamic content, network issues), tell the user:
"I couldn't fetch that URL. Can you provide a local file path with the content?"
Local file: Read directly using the file read tool.
Digest the content into a working summary to drive the session.
Search sessions_dir for session files whose frontmatter uri matches the provided URI.
"I found session(s) with a similar filename — want to resume one of these, or start fresh?" Wait for the user's choice.
Ask the user how familiar they are with this topic. Based on their response, set the session depth:
| User says | Lane | Behavior |
|---|---|---|
| "Never heard of it" | full-study | Teach from the ground up using the document content. Socratic questions to build understanding step by step. |
| "Know some" / "Used it but don't understand why" | guided-study | Walk through the content focusing on the "why" behind concepts. Skip basics, probe for gaps. |
| "Pretty confident" / "Just check me" | gap-check | Ask targeted questions to test understanding. Surface gaps. Record assessment. |
The three lanes are guidelines, not rigid modes. Let the session flow naturally.
Create the session file:
TIMESTAMP=$(date +"%y%m%d-%H%M%S")
# Derive a kebab-case slug from the topic
# e.g., "HTTP Semantics" -> "http-semantics"
Session file format:
---
uri: <the source URI — URL or absolute file path>
topic: <human-readable topic name derived from the content>
started: <ISO timestamp>
last_updated: <ISO timestamp>
familiarity: <full-study|guided-study|gap-check>
status: in-progress
---
## Session Notes
Lead the discussion:
gap-check sessions: probe understanding with questions, record judgment on each area ("solid", "shaky", "gap found"), and note what was coveredUpdate the session file after every exchange:
last_updated in frontmatter to current time## Session NotesNo explicit close ceremony. When the user stops responding, the session is already persisted.
When all major topics in the document have been covered:
status to completedDetect the user's language from their first response and conduct the session in that language throughout.
instructions from config throughout the sessionnpx claudepluginhub isnbh0/shared --plugin studyDelivers structured multi-session tutoring for technical topics with Socratic diagnostics, knowledge graphs for prerequisites, agendas, teaching, quizzes, and progress tracking.
Processes research paper PDFs from local paths, URLs, or arXiv; extracts metadata, content, links; generates study materials in user's language for deep analysis.
Transforms passive reading into active comprehension using the SQ3R method (Survey, Question, Read, Recite, Review) for dense non-fiction texts.