一键导入
paper-process
Retrieve a paper, read it, and run the full per-paper propstore ingestion flow through nested skills. Give it a URL, DOI, or title.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Retrieve a paper, read it, and run the full per-paper propstore ingestion flow through nested skills. Give it a URL, DOI, or title.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Credentialed-source backend for retrieving books from Bookshare (bookshare.org) into the papers/ collection. Given a book title or ISBN and a target directory name, it searches Bookshare and downloads the EPUB via the published `bookshare` CLI. Download-only (produces book.epub). Enable only if you have a Bookshare account; requires credentials in a gitignored .secrets/bookshare.json.
Paywalled-access backend for paper-retriever. Retrieves a paywalled paper's PDF through an institutional / library subscription (a library proxy such as EZproxy or OpenAthens, or an institutional login), given an identifier (DOI/URL) and the target paper directory name. Invoked by paper-retriever when open-access channels fail. Enable this skill only if the install has institutional access configured.
Paywalled-access backend for paper-retriever. Retrieves a paywalled paper's PDF via sci-hub browser automation, given an identifier (DOI/URL) and the target paper directory name. Invoked by paper-retriever when open-access channels fail; enabled by default. Disable this skill to remove sci-hub from the retrieval waterfall.
Retrieve a scientific paper PDF given an arxiv URL, DOI, or paper title. Downloads to papers/ directory. Handles open-access retrieval (arxiv direct, Chrome print-to-pdf for publisher-direct HTML, Unpaywall, title-based open-repository search); for paywalled papers it hands off to whichever paper-retriever-* access skill is enabled (sci-hub by default, or institutional).
Read scientific papers and extract implementation-focused notes. Converts PDFs to page images, then reads them. Papers <=300pp are read directly by the assigned worker; papers >300pp use a chapter-aligned chunk protocol (preferred) or 50-page chunks (fallback) and synthesize a master notes.md that links to per-chapter files. Creates structured notes in papers/ directory.
Cross-reference a paper against the collection. Finds which cited papers are already collected, which are new leads, which collection papers cite this one, and reconciles all cross-references bidirectionally. Run on a single paper directory or use --all for the entire collection.
| name | paper-process |
| description | Retrieve a paper, read it, and run the full per-paper propstore ingestion flow through nested skills. Give it a URL, DOI, or title. |
| argument-hint | <url-or-doi-or-title> |
| disable-model-invocation | false |
| compatibility | Claude Code, Codex CLI, and Gemini CLI. |
Retrieve one paper, extract the paper artifacts, and run the per-paper propstore ingestion flow.
This is a pure orchestrator. It calls nested skills. It does not inline propstore source-branch mutation commands.
--light / --notes-only)If $ARGUMENTS includes --light (or --notes-only), run the notes-layer-only
flow and stop. This is the supported path for notes-layer lit reviews that do not
use the propstore.
Run, in order, skipping every propstore step:
/research-papers:paper-retriever <input> — retrieve the PDF./research-papers:paper-reader <path-from-step-1> — extract the paper artifacts./research-papers:tag-papers <paper-directory> — tag and update tags.yaml counts./research-papers:reconcile <paper-directory> — cross-reference into the collection.Then stop. In --light mode you skip Steps 4 onward of the full flow — i.e.
skip source-bootstrap, author-context, register-concepts,
extract-claims, extract-justifications, extract-stances, source-promote,
and every pks source-branch command. The notes layer (notes/description/abstract/
citations + index + cross-references) is the complete deliverable here; no
propstore branch is created or mutated.
If --light is not present, ignore this section and run the full flow below.
$ARGUMENTS names exactly one intended paper.Invoke:
/research-papers:paper-retriever $ARGUMENTS
When retrieval finishes, record the resulting paper path.
Invoke:
/research-papers:paper-reader <path-from-step-1>
When reading finishes, record the resulting paper directory.
If the original argument was a local root-level PDF and the paper directory now contains paper.pdf, remove the original root-level PDF so the papers/ root continues to mean "unprocessed PDFs only".
Invoke:
/research-papers:source-bootstrap <paper-directory-path>
Invoke:
/research-papers:author-context <paper-directory-path>
This creates knowledge/contexts/ctx_<author>_<year>_<slug>.yaml with the trial's structural CEL assumptions, parameters, and perspective. Every claim extracted in later steps references this context by name. Promote fails if claims are contextless.
Invoke:
/research-papers:register-concepts <paper-directory-path>
This is the notes-first concept pass.
Invoke:
/research-papers:extract-claims <paper-directory-path>
If claim ingestion or auto-finalize feedback reports unknown concepts:
register-conceptsextract-claimsDo not invent a different recovery path. The intended loop is:
register-conceptsextract-claimsConcepts and claims are stable at this point, so the paper now has a fixed vocabulary for DeLP/Datalog predicate declarations. This step authors one canonical predicate artifact per predicate id via pks predicate add, using paper/source metadata for readability. Those predicates are the symbol table the next step's rules reference; without them, rule heads and bodies have nothing to bind to.
Invoke:
/research-papers:register-predicates <paper-directory-path>
Follow the nested skill literally. Do not invent predicates outside its workflow, do not skip ahead to authoring rules, and if the skill is blocked stop here and report the blocker.
With predicates declared, this step encodes the paper's stated argument structure as DeLP strict, defeasible, proper-defeater, and blocking-defeater rule artifacts via pks rule add. These rules are what makes the DeLP layer non-empty for this paper; the later justification and stance passes describe the paper's argumentation in prose-aligned form, but only the rules authored here participate in propstore's defeasible reasoning.
Invoke:
/research-papers:author-rules <paper-directory-path>
Follow the nested skill literally. Do not author rules referencing predicates that were not declared in Step 9, do not substitute an ad hoc rule format, and if the skill is blocked stop here and report the blocker.
Invoke:
/research-papers:extract-justifications <paper-directory-path>
Invoke:
/research-papers:extract-stances <paper-directory-path>
This is per-paper stance extraction against whatever claims already exist in the current knowledge store.
Invoke:
/research-papers:source-promote <paper-directory-path>
If this run is being used as a single-paper ingestion flow rather than a large collection batch, rebuild the sidecar:
pks build
If this run is part of a larger batch orchestrator that will do one final build later, defer the build there instead of rebuilding after every paper.
Write a concise report to reports/paper-$SAFE_NAME.md summarizing:
source-bootstrap succeededregister-concepts needed rerunsextract-claims needed rerunsregister-predicates succeededauthor-rules succeededextract-justifications succeededextract-stances succeededsource-promote succeededpks build was run or deferredIf direct nested skill invocation is unavailable, use this skill's helper:
uv run "<skill-dir>/scripts/emit_nested_process_fallback.py"
Read the FULL stdout and follow it exactly instead of opening sibling skills piecemeal.