| name | papers-download-from-list |
| status | active-local-download |
| description | Uses colocated paper download tools to download, verify, and repair local PDFs from `obsidian-vault/paper_list.csv` rows so that `obsidian-vault/paperPDFs/` stays complete and deduplicated. Use when candidate rows are in `state=Wait` and should become `Downloaded` before the formal analysis chain. |
Paper PDF Download and Repair Tools
What this skill does
Connects obsidian-vault/paper_list.csv candidate rows to local PDFs by
orchestrating utilities in the colocated paper download tools directory:
- read candidate papers from
obsidian-vault/paper_list.csv;
- download missing PDFs into
obsidian-vault/paperPDFs/...;
- repair common download errors (bad links, wrong version downloads);
- deduplicate, verify download integrity, and mark entries that remain missing for manual follow-up.
In the pipeline
papers-collect-from-web → papers-download-from-list → formal analysis chain (scripts/run_local_paper_analysis.py) → papers-build-index → papers-query-knowledge-base / research-brainstorm-from-kb,
this skill is responsible for the Download + Repair stage.
Directory and scripts
Script directory (relative to this skill directory):
paper_download_tools/check_pdfs_against_log.py
paper_download_tools/download_wait_papers.py
paper_download_tools/dedupe_paperpdfs.py
paper_download_tools/search_download_by_info.py
Recommended workflow
Typical execution order (from candidate list to clean PDF set):
-
Prerequisite: queue exists
- Source:
obsidian-vault/paper_list.csv with state=Wait rows.
- Required columns:
state,importance,paper_title,venue,project_link_or_github_link,paper_link,sort,pdf_path
-
Batch download Wait entries
-
Check missing and broken files
-
Deduplicate and clean up
-
Manual-spec fallback
When to use vs other skills
- Collect: use
papers-collect-from-web to extract candidates and links from conference/topic pages.
- Download: use this
papers-download-from-list skill to convert paper_list.csv candidate links into local obsidian-vault/paperPDFs/ files.
- Analyze: use the formal local analysis chain (
scripts/run_local_paper_analysis.py) to parse PDFs/MinerU outputs into structured obsidian-vault/analysis/*.md.
- Classify / Index: use
papers-build-index to rebuild obsidian-vault/index indexes.
- Integrate / Query: use
papers-query-knowledge-base to retrieve, compare, and cite across the full KB.
- Reflect / Ideate: use
research-brainstorm-from-kb to distill outputs into research ideas under obsidian-vault/ideas/.
Triggers (examples)
- "Download all
Wait PDFs from obsidian-vault/paper_list.csv."
- "Check which candidate papers failed to download and repair wrong downloads."
- "Clean duplicate/broken PDFs under
obsidian-vault/paperPDFs/, then continue analysis."