agentleFS
jinxiy1104jinxiy1104/Obsidian_Paper_Ingestion_Skill/paper-reading/SKILL.md

paper-reading

Skill1 starsChanged 5 months agoMITView on GitHub

Manage an Obsidian academic-paper vault by processing PDFs from an Inbox into organized PDFs and Markdown paper notes, and optionally creating or updating concept notes from existing paper notes when explicitly requested. Use when Codex needs to read academic papers, scan an Inbox folder for PDFs, extract paper metadata, move PDFs into a PDFs folder, create Obsidian Markdown notes in Papers, generate YAML frontmatter, assign broad research tags, summarize papers in English or Chinese, or synthesize concept notes from Papers notes based on prompts such as "read this paper", "用英文读这篇paper", "用中文读这篇paper", "process my paper inbox", "turn these PDFs into Obsidian notes", "create a concept note for Self Distillation", "整理 Self Distillation 这个 concept", or "update a concept note based on my paper notes".

20 other projects use a version of this.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

38 rules. 0 are common, 24 are distinctive, and 14 are very specific to this project.

  • 0

    Common

    Most of the 10 edited versions we read keep these.

  • 24

    Distinctive

    This author's own choices. Worth a look.

  • 14

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Treat the current working directory as the vault root when it contains Inbox/, PDFs/, Papers/, Concepts/, and Ideas/.

    line 25
  2. Very specific:

    When the user manually invokes this skill for the vault, scan Inbox/ for PDF files and process each PDF.

    line 26
  3. Very specific:

    If the user provides a specific PDF path, process that PDF.

    line 27
  4. Distinctive:

    Use English when the user says English, 英文, or asks in English without specifying another language.

    line 29
  5. Distinctive:

    Use Chinese when the user says Chinese, 中文, or asks explicitly for Chinese notes.

    line 30
  6. Distinctive:

    Default to English when the requested language is unclear.

    line 31
  7. Distinctive:

    Keep Markdown section headings exactly as defined in the template for consistency across the vault.

    line 32
  8. Distinctive:

    Read the PDF and extract metadata.

    line 38
  9. Distinctive:

    Prefer metadata embedded in the PDF, arXiv identifiers in the file name or first page, and paper text near the title/abstract.

    line 40
  10. Distinctive:

    If a field is unknown, leave it blank rather than inventing it.

    line 41
  11. Distinctive:

    Prefer the paper title line as the file base name, preserving spaces, capitalization, and meaningful in-title hyphens.

    line 45
  12. Distinctive:

    Do not convert spaces to hyphens.

    line 46
  13. Very specific:

    Before writing anything, check for duplicate papers already in the vault by comparing normalized title, arXiv ID, and target Papers/ and …

    line 49
  14. Very specific:

    If the title matches but arXiv versions differ, treat it as a versioned duplicate only when the existing note clearly covers the same arXiv …

    line 51
  15. Distinctive:

    If a target file already exists for a different paper, append the year or arXiv ID to avoid overwriting.

    line 52
  16. Very specific:

    After successful processing, no processed PDF should remain in Inbox/.

    line 56
  17. Very specific:

    Do not delete PDFs outside Inbox/.

    line 57
  18. Distinctive:

    Create the paper note.

    line 59
  19. Distinctive:

    Use YAML frontmatter followed by the required Markdown sections.

    line 61
  20. Distinctive:

    Do not overwrite an existing note for a different paper.

    line 63
  21. Very specific:

    If a note appears to describe the same paper but the stored PDF is missing, repair the missing PDF link by moving the Inbox PDF into PDFs/ …

    line 64
  22. Distinctive:

    Do not implement background monitoring, recurring jobs, RAG, vector search, or automatic multi-paper synthesis.

    line 69
  23. Distinctive:

    Use this workflow only when the user explicitly asks to create, update, synthesize, or organize a concept note from paper notes.

    line 73
  24. Very specific:

    Search Papers/ for relevant notes.

    line 77
  25. Very specific:

    Search filenames, YAML tags, # Related Concepts, headings, and note body text.

    line 78
  26. Distinctive:

    Prefer notes with direct conceptual relevance over notes with a single incidental mention.

    line 80
  27. Distinctive:

    Read all relevant paper notes.

    line 82
  28. Distinctive:

    Write or update the concept note.

    line 87
  29. Very specific:

    If Concepts/<Concept Name>.md already exists, read it first and update it by merging newly relevant paper-note evidence into the existing …

    line 90
  30. Very specific:

    Do not create, modify, or delete anything under Ideas/.

    line 92
  31. Distinctive:

    Keep the output reviewable.

    line 94
  32. Distinctive:

    Keep the note concept-centered, not bibliography-centered.

    line 96
  33. Very specific:

    Use references/obsidian-paper-template-en.md for English notes and references/obsidian-paper-template-zh.md for Chinese notes.

    line 101
  34. Distinctive:

    Every note must include this YAML frontmatter:

    line 103
  35. Very specific:

    Use YAML lists for authors and tags when there are multiple values.

    line 117
  36. Distinctive:

    Avoid overly narrow tags such as exact model names, dataset split names, one-off benchmark variants, or paper-specific acronyms unless they …

    line 136
  37. Distinctive:

    Prefer faithful paraphrase over broad claims.

    line 140
  38. Distinctive:

    Do not invent missing experimental results, citations, venues, arXiv IDs, or implementation details.

    line 145

“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Paper Reading

Purpose

Use this skill to process a simple Obsidian paper-reading vault. Extend the existing paper-reading behavior; do not introduce RAG, vector databases, background watchers, automatic concept maintenance, or idea generation. Concept work is allowed only when the user explicitly asks for a concept note or concept synthesis.

Expected vault layout:

PaperReading/
├── Inbox/
├── PDFs/
├── Papers/
├── Concepts/
└── Ideas/

Default Behavior

  • Treat the current working directory as the vault root when it contains Inbox/, PDFs/, Papers/, Concepts/, and Ideas/.
  • When the user manually invokes this skill for the vault, scan Inbox/ for PDF files and process each PDF.
  • If the user provides a specific PDF path, process that PDF; if it is inside Inbox/, move it after successful processing.
  • Produce note body text in the language requested by the user:
    • Use English when the user says English, 英文, or asks in English without specifying another language.
    • Use Chinese when the user says Chinese, 中文, or asks explicitly for Chinese notes.
    • Default to English when the requested language is unclear.
  • Keep Markdown section headings exactly as defined in the template for consistency across the vault.

Vault Workflow

For each PDF:

  1. Read the PDF and extract metadata.
    • Extract title, authors, year, venue, arXiv ID, and core paper content.
    • Prefer metadata embedded in the PDF, arXiv identifiers in the file name or first page, and paper text near the title/abstract.
    • If a field is unknown, leave it blank rather than inventing it.
    • Temporary text extraction is allowed, but do not keep txt, extracted.txt, *.extracted.txt, or similar extracted-text files in the vault.
  2. Generate a readable file base name from the paper title.
    • Prefer the paper title line as the file base name, preserving spaces, capitalization, and meaningful in-title hyphens.
    • Do not convert spaces to hyphens.
    • Replace filename-unsafe punctuation only when required by the operating system. On Windows, replace : with - and remove or replace \, /, *, ?, ", <, >, and |.
    • Normalize repeated whitespace and trim leading/trailing punctuation.
    • Before writing anything, check for duplicate papers already in the vault by comparing normalized title, arXiv ID, and target Papers/ and PDFs/ paths.
    • If the Inbox PDF is a duplicate of an already processed paper with matching title/arXiv ID and an existing note/PDF, do not create another note and do not store another PDF. Delete only the duplicate Inbox PDF and report that it was skipped as a duplicate.
    • If the title matches but arXiv versions differ, treat it as a versioned duplicate only when the existing note clearly covers the same arXiv ID/version. Otherwise append the arXiv version to the filename, such as (2604.00626v2), to avoid overwriting.
    • If a target file already exists for a different paper, append the year or arXiv ID to avoid overwriting.
  3. Move the PDF.
    • Move the processed PDF from Inbox/ to PDFs/<Readable Paper Title>.pdf.
    • After successful processing, no processed PDF should remain in Inbox/.
    • Do not delete PDFs outside Inbox/.
  4. Create the paper note.
    • Write Papers/<Readable Paper Title>.md.
    • Use YAML frontmatter followed by the required Markdown sections.
    • Set pdf_path to an Obsidian wikilink such as [[PDFs/<Readable Paper Title>.pdf]] so the PDF is clickable from the note metadata.
    • Do not overwrite an existing note for a different paper. If a note appears to describe the same paper and the same PDF is already stored, treat the Inbox file as a duplicate, delete only that Inbox duplicate, and report it.
    • If a note appears to describe the same paper but the stored PDF is missing, repair the missing PDF link by moving the Inbox PDF into PDFs/ and updating the existing note only when needed.
  5. Respect vault boundaries.
    • Concepts/ is read-only during paper Inbox processing. Create or update files in Concepts/ only when the user explicitly asks for a concept note or concept synthesis.
    • Ideas/ is completely user-maintained. Do not create, modify, or delete Idea notes.
    • Do not implement background monitoring, recurring jobs, RAG, vector search, or automatic multi-paper synthesis. Concept synthesis is manual-request only.

Concept Note Workflow

Use this workflow only when the user explicitly asks to create, update, synthesize, or organize a concept note from paper notes. Do not run it for ordinary paper Inbox processing or paper summarization.

For a requested concept such as Self Distillation:

  1. Search Papers/ for relevant notes.
    • Search filenames, YAML tags, # Related Concepts, headings, and note body text.
    • Include close spelling and hyphenation variants such as self-distillation, self distillation, and Self-Distillation.
    • Prefer notes with direct conceptual relevance over notes with a single incidental mention.
  2. Read all relevant paper notes.
    • Synthesize at the concept level; do not produce a paper-by-paper summary.
    • Identify agreements, disagreements, advantages, limitations, and open problems across the notes.
    • Link related papers using Obsidian wikilinks to paper notes, for example [[Self-Distillation Enables Continual Learning]].
  3. Write or update the concept note.
    • Use references/concept-note-template.md.
    • Save to Concepts/<Concept Name>.md.
    • If Concepts/<Concept Name>.md already exists, read it first and update it by merging newly relevant paper-note evidence into the existing structure.
    • Preserve useful existing user-written content where possible; do not replace the whole note with a fresh summary unless the user explicitly asks for a rewrite.
    • Do not create, modify, or delete anything under Ideas/.
  4. Keep the output reviewable.
    • Mark uncertainty explicitly.
    • Keep the note concept-centered, not bibliography-centered.
    • Include # Related Papers with wikilinks to the relevant paper notes used.

Note Template

Use references/obsidian-paper-template-en.md for English notes and references/obsidian-paper-template-zh.md for Chinese notes.

Every note must include this YAML frontmatter:

---
title:
authors:
year:
venue:
arxiv_id:
pdf_path:
tags:
---

Use YAML lists for authors and tags when there are multiple values.

Tags

Generate broad, reusable research tags. Prefer 3-8 tags.

Good examples:

  • llm
  • agent
  • safety
  • time-series
  • distillation
  • reasoning
  • sft
  • rlhf
  • rag
  • speculative-decoding

Avoid overly narrow tags such as exact model names, dataset split names, one-off benchmark variants, or paper-specific acronyms unless they are genuinely central research areas.

Reading Standards

  • Prefer faithful paraphrase over broad claims.
  • Separate what the paper says from what the evidence supports.
  • In English notes, mark unsupported or weakly supported claims as author claims or insufficient evidence.
  • In Chinese notes, mark unsupported or weakly supported claims as 作者声称 or 证据不足.
  • Preserve uncertainty when the PDF text, math, tables, or figures are hard to parse.
  • Do not invent missing experimental results, citations, venues, arXiv IDs, or implementation details.
  • For equations, algorithms, tables, and figures, explain their role and interpretation instead of transcribing every detail.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.