$npx -y skills add Zsun79/LitReviewSkill --skill write-literature-reviewIterative literature-review workflow for a research topic. Use this skill to draft up to 10 search keywords, build a seed set from OpenAlex title-and-abstract matches, expand by backward and forward citations, screen candidates by title and abstract, repeat until no new relevant
| 1 | # Write Literature Review |
| 2 | |
| 3 | ## Overview |
| 4 | |
| 5 | Use this skill when the user wants a serious literature review rather than a quick paper list. The workflow is intentionally iterative: search broadly, expand by citations, screen with judgment, repeat until saturation, then read deeply and synthesize. |
| 6 | |
| 7 | Keep a separate execution log throughout the whole workflow at `logs/workflow_log.md`. Update it step by step as work happens. The log should record what you did, what inputs you used, what outputs you produced, what you learned, and what decision or next action followed. |
| 8 | |
| 9 | ## Workflow |
| 10 | |
| 11 | Use `references/workflow.md` as the authoritative workflow. |
| 12 | |
| 13 | At a high level, the agent should: |
| 14 | |
| 15 | 1. Clarify scope, confirm the citation format, and record the setup in `plan/review_plan.md`. |
| 16 | 2. Draft up to 10 search keywords and save them in `search/seed_keywords.json`. |
| 17 | 3. Build a seed set with `scripts/lit_review_pipeline.py search`. |
| 18 | 4. Screen by title and abstract, then iteratively expand and rescreen until saturation. |
| 19 | 5. Rank the final filtered set and inspect up to 30 full texts. |
| 20 | 6. Build the knowledge graph artifacts. |
| 21 | 7. Write `review/literature_review.md`, render the final deliverables, and finalize `logs/workflow_log.md`. |
| 22 | |
| 23 | When there is any ambiguity about step order, stopping conditions, screening rules, or expected intermediate files, defer to `references/workflow.md`. |
| 24 | |
| 25 | ## Workspace Layout |
| 26 | |
| 27 | Keep only three presentation files at the workspace root: |
| 28 | |
| 29 | - `literature_review.pdf` |
| 30 | - `references.md` |
| 31 | - `knowledge_graph.png` |
| 32 | |
| 33 | Put all editable or machine-readable files in shallow named folders: |
| 34 | |
| 35 | - `plan/`: scope and planning notes |
| 36 | - `logs/`: step-by-step execution log and audit trail |
| 37 | - `search/`: keyword drafts, seed set, merged search pool, deduped search pool |
| 38 | - `screening/`: screening queue, filtered set, visited titles, screening log |
| 39 | - `expansion/`: raw backward and forward expansion outputs |
| 40 | - `fulltext/`: full-text discovery outputs and reading notes |
| 41 | - `review/`: editable markdown review source |
| 42 | - `graph/`: graph markdown, graph JSON, and graph DOT source |
| 43 | - `references/`: ranked reference artifacts and optional machine-readable reference exports |
| 44 | |
| 45 | ## Deliverables |
| 46 | |
| 47 | Produce these files unless the user asks for a different format: |
| 48 | |
| 49 | - `plan/review_plan.md`: scope, criteria, assumptions, and search boundaries. |
| 50 | - `logs/workflow_log.md`: step-by-step record of actions taken, outputs produced, and decisions made. |
| 51 | - `search/seed_keywords.json`: up to 10 drafted keywords. |
| 52 | - `search/seed_candidates.jsonl`: initial title-and-abstract seed set. |
| 53 | - `screening/screening_queue.jsonl`: newly expanded records awaiting LLM screening. |
| 54 | - `screening/visited_titles.jsonl`: all already visited article titles, including seeds and candidates. |
| 55 | - `screening/filtered_candidates.jsonl`: final title-and-abstract relevant set after iterative screening. |
| 56 | - `references/ranked_references.jsonl`: ranked final filtered list. |
| 57 | - `references/ranked_references.md`: readable ranking table. |
| 58 | - `fulltext/fulltext_hits.json`: discovery results for up to 30 deeper reads. |
| 59 | - `review/literature_review.md`: editable review source. |
| 60 | - `graph/knowledge_graph.md`: text version of the concept-reference graph. |
| 61 | - `graph/knowledge_graph.json`: structured graph nodes and edges. |
| 62 | - `graph/knowledge_graph.dot`: Graphviz source used to render the root PNG. |
| 63 | - `literature_review.pdf`: final review article at root. |
| 64 | - `references.md`: final reference list at root. |
| 65 | - `knowledge_graph.png`: final graph image at root. |
| 66 | |
| 67 | ## Subtasks |
| 68 | |
| 69 | Use code-based subtasks for repeatable operations: |
| 70 | |
| 71 | - Seed search by keyword: `scripts/lit_review_pipeline.py search` |
| 72 | - Backward and forward expansion: `scripts/lit_review_pipeline.py expand` |
| 73 | - Deduplication: `scripts/lit_review_pipeline.py dedupe` |
| 74 | - Reference ranking: `scripts/lit_review_pipeline.py rank` |
| 75 | - Full-text discovery: `scripts/lit_review_pipeline.py fulltext` |
| 76 | - Knowledge graph construction: `scripts/build_knowledge_graph.py` |
| 77 | |
| 78 | Use prompt-based judgment for interpretation-heavy operations: |
| 79 | |
| 80 | - Drafting the keyword list from the user topic. |
| 81 | - Screening title-and-abstract candidates for relevance. |
| 82 | - Deciding when saturation has been reached. |
| 83 | - Interpreting methods, concepts, findings, and limitations. |
| 84 | - Writing the final review. |
| 85 | |
| 86 | ## Screening Rules |
| 87 | |
| 88 | - During iterative screening, judge relevance from title and abstract only. |
| 89 | - Prefer recall in early rounds and precision in later rounds. |
| 90 | - Keep borderline-but-possibly-useful papers unless the mismatch is clear. |
| 91 | - Track i |