Skip to main content

PhD Deep Read Workflow

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

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:

  • A skill-capable AI coding agent — either Claude Code (download here) or Codex. This workflow installs as a skill in whichever one you use.
  • Obsidian — download 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 in 30 seconds

Paste this into Claude Code or Codex:

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

Your agent installs the skill, the Python CLI, and everything else automatically. The skill lands in that agent's skills folder (~/.claude/skills/ for Claude Code, ~/.codex/skills/ for Codex) — restart the agent if it asks you to. Done. Drag a PDF in and say "phd-deepread read this paper".

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 or Codex and say:

phd-deepread read this paper

Your agent 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 or Codex and say:

phd-deepread read this folder

Your agent 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

Your agent (Claude Code or Codex) 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!

Metadata

Release files for phd-deepread-workflow 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for phd-deepread-workflow 0.2.2
File Size Uploaded Provenance Actions
phd_deepread_workflow-0.2.2.tar.gz 64.9 kB With provenance Details for phd_deepread_workflow-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for phd-deepread-workflow 0.2.2
File Interpreter ABI Platform Actions
phd_deepread_workflow-0.2.2-py3-none-any.whl Python 3 none any Details for phd_deepread_workflow-0.2.2-py3-none-any.whl

Total release size: 110.7 kB

Release files / phd_deepread_workflow-0.2.2.tar.gz

Download URL phd_deepread_workflow-0.2.2.tar.gz
Size 64.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9c5fef9e44f882a710d95a4569bf1f2aa9ae0fb6eb6bd26a4adc7cf5b5cbe4d2
BLAKE2b-256 checksum
How to use checksums
fe2d18cb9f09d18881effc734a82f55aa2742b3b65f87d2a689a0ddd387e6ef3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 30, 2026.

Transparency log

Release files / phd_deepread_workflow-0.2.2-py3-none-any.whl

Download URL phd_deepread_workflow-0.2.2-py3-none-any.whl
Size 45.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6f522fcc74a2acae8d854a020278f600b208c9be74df7c32fc8694574f90f0f1
BLAKE2b-256 checksum
How to use checksums
ed28fa7bac88deab166929ae7392e7ad02c1de9418df40b699ebc076355cd3ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 30, 2026.

Transparency log

Security for phd-deepread-workflow 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for phd_deepread_workflow-0.2.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 30, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page