Skip to main content

Transform academic PDFs into structured literature notes and critical-thinking canvases for Obsidian

Project description

PhD Deep Read Workflow

License: MIT PyPI version Python 3.10+ Claude Code Plugin 中文版本

Transform academic PDFs into structured literature notes and critical-thinking canvases for Obsidian.


"The human mind... operates by association. With one item in its grasp, it snaps instantly to the next that is suggested by the association of thoughts." — Vannevar Bush, As We May Think, 1945

Bush imagined this in 1945 — a desk where all your reading lives outside its original containers, ready for you to build trails of association through it. That's what this workflow is.

Step one: Convert the PDF to Markdown. The knowledge leaves the frozen PDF and becomes something you can return to, search, and connect — today, next month, next year.

Step two: Come back anytime and draw out what's relevant now. Connect ideas across papers. Visualize arguments, evidence, and assumptions side by side in an Obsidian canvas. The literature note captures what's there. The canvas lets you see it alongside everything else you know.


Prerequisites

You need both of these:

  • Claude Codedownload here if you don't have it yet. This workflow only works inside Claude Code.
  • Obsidiandownload here. The final output is a JSON canvas file that only renders in Obsidian.

If you just want AI help reading a PDF, you don't need this workflow. Drag the PDF into any AI chat and ask questions directly. This workflow is for people who want structured literature notes and a critical-thinking canvas they can revisit in Obsidian.


Install

Option 1: Install in 30 seconds (fastest)

In Claude Code, run:

/plugin marketplace add heleninsights-dot/phd-deepread-workflow
/plugin install phd-deepread@phd-deepread

Then in your terminal, install the Python CLI that converts PDFs to Markdown:

pip install phd-deepread-workflow

Done. Drag a PDF into Claude Code and say "phd-deepread read this paper".

Option 2: Paste one line (just as easy)

Paste this into Claude Code and it handles everything:

Install this skill for me: https://github.com/heleninsights-dot/phd-deepread-workflow

Then in your terminal, install the Python CLI:

pip install phd-deepread-workflow

Optional: Tesseract OCR

Only needed if you work with scanned PDFs (image-based, text not selectable):

brew install tesseract          # macOS
sudo apt install tesseract-ocr  # Ubuntu/Debian

Using the workflow

One paper

Drag a PDF into Claude Code and say:

phd-deepread read this paper

Claude extracts the text, writes a structured literature note, and creates a 9-node critical-thinking canvas — all in one go. Open the .canvas file in Obsidian to visualize arguments, evidence, assumptions, and gaps side by side.

You can also ask for specific parts: "phd-deepread extract this PDF, but just give me the prompt — I'll write the note myself."

A folder of papers

Drag a folder into Claude Code and say:

phd-deepread read this folder

Claude batch-processes every PDF inside — extracting text, writing a structured literature note for each one, and creating canvas templates. Already-processed papers are skipped automatically. Works the same as a single paper, just for the whole folder.


What you get

Each PDF you process gives you three files:

Output What it is
paper.md Full text of the PDF, converted to Markdown
paper_literature_note.md Structured academic note — see below for what's extracted
paper.canvas A 9-node critical-thinking canvas — open this in Obsidian to visualize arguments, evidence, assumptions, and gaps side by side

What the literature note extracts

The note doesn't summarize — it pulls out the specific data you need to actually use the paper in your research:

Category What you get
Findings Every key result with direction, magnitude, p-value, confidence interval, effect size, and source table/figure
Methodology Study design, sample sizes with attrition, inclusion/exclusion criteria, every instrument/assay/software named
Critique Limitations mapped to validity types (internal, external, construct, statistical), plus limitations the authors don't discuss
Connections Extensive [[wikilinks]] to methods, proteins, genes, diseases, concepts — linking the paper to your existing notes
Action items Specific, actionable follow-ups you can act on without re-reading the paper
Assessment Innovation, evidence strength, and practical potential — each with a concrete justification, not just a score

CLI reference

Claude Code calls these commands for you — you don't need to type them yourself:

Command What it does
doctor Check that all dependencies are installed
extract <pdf> Extract text and images from a PDF
generate <dir> Build a literature-note prompt from extracted text
canvas -o <file> [--from-note <md>] Create a 9-node canvas; populate from a finished note with --from-note
run <pdf> Full pipeline: extract → generate prompt → canvas
batch <dir> Process all PDFs in a folder
verify <dir> Quality-check output files

Integration with Obsidian and Zotero

Obsidian: Notes use YAML frontmatter and Dataview-compatible callouts. Canvas files open with the Obsidian Canvas plugin. Wikilinks connect to your existing notes.

Zotero: Use your Zotero citation key as the citekey field in the generated note. Export PDFs from Zotero into your processing folder before running the workflow.


Troubleshooting

"command not found: phd-deepread" — your terminal can't see the install location. Open a new terminal window. If still missing, add ~/.local/bin to your PATH:

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc

"Tesseract not found" — only matters for scanned PDFs:

brew install tesseract          # macOS
sudo apt install tesseract-ocr  # Ubuntu/Debian

"Template not found" after installing — upgrade to the latest version:

pip install --upgrade phd-deepread-workflow

Using a virtual environment (cleanest install)

python3 -m venv venv
source venv/bin/activate      # macOS/Linux
# or: venv\Scripts\activate   # Windows
pip install phd-deepread-workflow

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/my-feature
  3. Commit and push, then open a Pull Request

See CONTRIBUTING.md for details.

License

MIT — see LICENSE.

Support


Made with love for the academic community

If this workflow helps your research, consider giving it a star on GitHub!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phd_deepread_workflow-0.2.1.tar.gz (59.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phd_deepread_workflow-0.2.1-py3-none-any.whl (40.8 kB view details)

Uploaded Python 3

File details

Details for the file phd_deepread_workflow-0.2.1.tar.gz.

File metadata

  • Download URL: phd_deepread_workflow-0.2.1.tar.gz
  • Upload date:
  • Size: 59.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for phd_deepread_workflow-0.2.1.tar.gz
Algorithm Hash digest
SHA256 7d1a1d7f73df69630f5b61ab40b442c9caa9bf8b2a55a53faf010b30a05c0609
MD5 8d65b457542938cb4588634463245509
BLAKE2b-256 2f1c83fba8dba9a7bfb00b577fd4ee321840b423a1a65cb84da2c9849ee968b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for phd_deepread_workflow-0.2.1.tar.gz:

Publisher: publish.yml on heleninsights-dot/phd-deepread-workflow

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file phd_deepread_workflow-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for phd_deepread_workflow-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dc55ec4533dd63fee8466981957fa25a9fae4545d5a0c633a93dc1c042183f8a
MD5 56813ca3059382990316f9b3b22d67dd
BLAKE2b-256 70247910dfc5718191abc329786ad1db87f9f5fefcc848c721ae4bc68954e954

See more details on using hashes here.

Provenance

The following attestation bundles were made for phd_deepread_workflow-0.2.1-py3-none-any.whl:

Publisher: publish.yml on heleninsights-dot/phd-deepread-workflow

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page