Virtual Reading Group
by @isonaei
Orchestrate a multi-agent virtual academic reading group. Use when reading multiple papers, generating expert discussion notes, cross-examining positions acr...
clawhub install virtual-reading-group๐ About This Skill
name: virtual-reading-group description: Orchestrate a multi-agent virtual academic reading group. Use when reading multiple papers, generating expert discussion notes, cross-examining positions across papers, and synthesizing integrated summaries with full citations. Triggers on requests to analyze academic literature, run paper discussions, create reading group sessions, or synthesize research across multiple sources. Supports 1-50 papers with configurable expert personas (1-4 papers work but produce simpler single-expert output).
Virtual Reading Group
Orchestrate parallel expert agents to read papers, discuss findings, challenge each other's interpretations, and synthesize an integrated discussion document with traceable citations.
Quick Start
Minimum inputs required: 1. Research question โ the lens through which papers are analyzed 2. Paper list โ paths to PDFs/text files, or paper descriptions for web lookup 3. Output directory โ where all outputs are written
Optional inputs:
references/default-personas.md)Workflow Overview
The skill runs 4 sequential phases. Each phase must complete before the next begins.
| Phase | Agents | Input | Output |
|-------|--------|-------|--------|
| 1. Paper Reading | N experts (parallel) | Papers + research question | {AuthorYear}_notes.md, {Expert}_session_summary.md |
| 2. Junior Discussion | 1 junior researcher | All Phase 1 outputs | {Junior}_discussion.md |
| 3. Expert Responses | N experts (parallel) | Phase 2 output + other experts' summaries | {Expert}_response_to_{Junior}.md |
| 4. Synthesis | 1 synthesizer | All previous outputs | Integrated_Discussion_Summary.md |
For detailed prompts and phase specifications: Read references/workflow.md.
Orchestration Procedure
> โ ๏ธ Important: The prompts below are abbreviated summaries. For full prompt templates that produce quality output, use references/workflow.md. The pseudocode blocks show orchestration structure โ adapt to your actual sub-agent spawning mechanism.
1. Validate Inputs
- Confirm research question is specified
Confirm paper list is non-empty
Confirm output directory exists or create it
Load personas from user input or references/default-personas.md
2. Calculate Expert Assignment
Determine number of experts and paper batches:
if paper_count <= 4:
num_experts = 1
elif paper_count <= 10:
num_experts = 2
elif paper_count <= 20:
num_experts = min(4, ceil(paper_count / 5))
else:
num_experts = min(8, ceil(paper_count / 5))Distribute papers evenly across experts (max 5 per expert).
โ ๏ธ Context contamination warning: assigning >5 papers per expert degrades
note quality โ later papers in the batch get shallower treatment as context
fills up. Prefer 3-5 papers per agent for best results.
3. Execute Phase 1 โ Paper Reading (Parallel)
For each expert, spawn a sub-agent with:
expert-reader-{expert_name}references/paper-notes-template.md
- Save as {output_dir}/{AuthorYear}_notes.md
- Write session summary with cross-cutting themes
- Critical: Quote specific passages with section labels โ all claims must be traceable๐ Full prompt template: See references/workflow.md โ Phase 1
Wait for all Phase 1 agents to complete before proceeding.
4. Execute Phase 2 โ Junior Discussion (Single Agent)
Spawn single agent with:
junior-discussion๐ Full prompt template: See references/workflow.md โ Phase 2
Wait for Phase 2 to complete before proceeding.
5. Execute Phase 3 โ Expert Responses (Parallel)
For each expert, spawn a sub-agent with:
expert-response-{expert_name}๐ Full prompt template: See references/workflow.md โ Phase 3
Wait for all Phase 3 agents to complete before proceeding.
6. Execute Phase 4 โ Synthesis (Single Agent)
Spawn single agent with:
synthesisassets/synthesis-template.md structure
- Organize by THEME, not by paper or speaker
- Every claim attributed: [Expert_A]/[Expert_B]/[Junior] + (PaperCode, ยงSection)
- Include: Points of Consensus, Points of Disagreement, Open Questions
- Synthesize, don't summarize โ find the intellectual threads๐ Full prompt template: See references/workflow.md โ Phase 4
7. Report Completion
List all generated files and provide a brief summary of the discussion themes.
Iteration and Follow-up
Deeper Discussion
If user wants experts to expand on specific points: 1. Spawn new expert response agent(s) with targeted follow-up questions 2. Re-run Phase 4 synthesis including the additional responses
Second Round
For a full second round (new questions, new responses):
1. Rename Phase 2-4 outputs with round suffix (e.g., Chen_discussion_r1.md)
2. Re-run Phase 2 with instruction to build on previous round
3. Continue through Phases 3-4
Recovery from Partial Run
If a phase fails:
1. Check error handling in references/workflow.md
2. Retry failed agent(s) individually
3. Continue from last successful phase (outputs are saved incrementally)
File Naming Conventions
| File Type | Pattern | Example |
|-----------|---------|---------|
| Paper notes | {FirstAuthorLastName}{Year}_notes.md | Chen2024_notes.md |
| Expert summary | {ExpertLastName}_session_summary.md | Lin_session_summary.md |
| Junior discussion | {JuniorLastName}_discussion.md | Chen_discussion.md |
| Expert response | {ExpertLastName}_response_to_{JuniorLastName}.md | Lin_response_to_Chen.md |
| Synthesis | Integrated_Discussion_Summary.md | โ |
Citation Requirements
Enforce in all agent prompts:
1. Every factual claim must reference a paper
2. Use format: (AuthorYear, ยงSection) or (AuthorYear, p.X)
3. Direct quotes must include section/page
4. Discussion claims must attribute speaker: [Expert_A], [Expert_B], [Junior]
โ ๏ธ Anti-Fabrication Rule (Critical)
Never fabricate citations. If an agent cannot find the exact passage in the source text:
Fabricated citations are worse than missing citations โ they corrupt the knowledge base silently. Accuracy > Coverage.
No Source = No Notes
If a paper has no PDF or markdown source available:
๐ญ ๆช่ฎOnly write substantive notes when the actual source document is accessible.
Scaling Guidelines
| Papers | Experts | Batches | Estimated Time | |--------|---------|---------|----------------| | 1-6 | 1 | 1 | 15-20 min | | 7-12 | 2 | 2 | 20-30 min | | 13-24 | 3-4 | 3-4 | 30-45 min | | 25-50 | 4-8 | 5-8 | 45-90 min |
Customization
Custom Personas
Replace default personas by providing:
Expert A: Dr. [Name], [Role]. Background in [X].
Emphasizes [methodology/perspective]. Skeptical of [Y].
Tone: [collegial/rigorous/provocative].Expert B: Dr. [Name], [Role]. Background in [X].
...
See references/default-personas.md for complete templates.
Language
Pass the language parameter when invoking the orchestration:
Language: {language} instructionExample: "Run the reading group in Japanese" โ adds Language: Japanese to all phase prompts.
Model Selection
Model choice significantly impacts output quality and cost:
| Configuration | Phases | Quality | Cost | Use When | |--------------|--------|---------|------|----------| | Full opus | All phases use opus | Highest | $$$ | Publication-quality analysis, complex papers | | Mixed | Phase 1: sonnet, Phases 2-4: opus | High | $$ | Good balance โ reading is less reasoning-intensive | | Budget | All phases use sonnet | Medium | $ | Quick exploration, simpler papers |
Recommendations:
Integration
This skill is standalone but works well with paper collection workflows:
References
references/workflow.md โ Detailed phase specifications and full prompt templatesreferences/default-personas.md โ Ready-to-use expert and junior researcher personasreferences/paper-notes-template.md โ Template for individual paper notesAssets
assets/synthesis-template.md โ Structure for the final integrated discussion summary๐ก Examples
Minimum inputs required: 1. Research question โ the lens through which papers are analyzed 2. Paper list โ paths to PDFs/text files, or paper descriptions for web lookup 3. Output directory โ where all outputs are written
Optional inputs:
references/default-personas.md)