ワンクリックで
extract-claims
Extract propositional claims from a paper directory into the propstore source branch using pks source propose-claim.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Extract propositional claims from a paper directory into the propstore source branch using pks source propose-claim.
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 | extract-claims |
| description | Extract propositional claims from a paper directory into the propstore source branch using pks source propose-claim. |
| argument-hint | <papers/Author_Year_Title> |
| disable-model-invocation | false |
| compatibility | Claude Code, Codex CLI, and Gemini CLI. |
Extract high-value claims from a paper and author them directly into the paper's propstore source branch. Do not create, edit, validate, or ingest paper-directory claim batch files.
Ontology-policy reference:
plugins/research-papers/docs/ontology-authoring-policy.mdpaper_dir="$ARGUMENTS"
source_name=$(basename "$paper_dir")
ls "$paper_dir"/notes.md 2>/dev/null || echo "MISSING: notes.md"
ls knowledge/.git 2>/dev/null || echo "MISSING: knowledge/.git"
pks source finalize "$source_name" 2>&1 || true
notes.md missing -> STOP. Run paper-reader first.knowledge/.git missing -> STOP. Run source-bootstrap or paper-process.source-bootstrap first.Read:
<paper_dir>/notes.md as the primary source.<paper_dir>/pngs/ for every exact numeric value, confidence interval, p-value, sample size, page citation, or claim whose wording matters.spot-check every extracted high-value claim against the relevant page image before proposing it.
When a claim cites page N, the corresponding page image is:
pngs/page-{(N-1):03d}.pngExamples:
pngs/page-000.pngpngs/page-011.pngDo not use PDF text extraction as the basis for rereading the paper.
Every claim must have a context. Use the context created by author-context, conventionally:
ctx_<author>_<year>_<trial_or_short_slug>
If no context exists for this paper, run author-context before extracting claims.
Before proposing a claim, every referenced concept must be present on the source branch or master registry. Use register-concepts to propose missing concepts.
If pks source propose-claim fails with unknown concept reference(s): ..., do not edit a file. Propose the missing concepts with pks source propose-concept, then rerun the failed claim command.
Use one pks source propose-claim command per claim. This command is the validation boundary and the mutation boundary. It validates source-local concepts, CEL conditions, and numeric value bounds before writing.
For empirical, clinical, statistical, benchmark, or otherwise quantitative papers, extract the quantitative result as structured evidence while reading the paper. Do not postpone this to collection reconciliation.
If the paper reports an endpoint-level estimate, threshold, rate, count, confidence interval, credible interval, standard error, p-value, or uncertainty bound that someone could compare against another paper, author a parameter or measurement claim for it. A prose observation may summarize the authors' interpretation, but it must not be the only representation of the numeric result.
Required behavior:
--value and the relevant --condition axes.--lower-bound and --upper-bound whenever reported.--uncertainty for a confidence interval or credible interval. If the paper reports "95% CI" or similar interval metadata, record that wording in --quote-fragment or --notes unless you also have a separate scalar uncertainty measure such as a standard error or standard deviation.endpoint, comparison, population, analysis_set, follow_up, intervention, and comparator.Bad extraction:
pks source propose-claim "$source_name" \
--id claim4 \
--type observation \
--statement "The intervention improved one outcome but worsened another." \
--context "ctx_author_year_trial" \
--page 5
Good extraction:
pks source propose-claim "$source_name" \
--id claim4 \
--type parameter \
--concept effect_estimate \
--value 1.25 \
--lower-bound 1.05 \
--upper-bound 1.49 \
--context "ctx_author_year_trial" \
--condition "endpoint == 'primary_outcome'" \
--condition "comparison == 'intervention_vs_comparator'" \
--condition "analysis_set == 'prespecified_analysis'" \
--quote-fragment "effect estimate 1.25; 95% CI, 1.05 to 1.49" \
--page 5
Also author the corresponding harm endpoint separately rather than folding it into the same prose statement.
Observation, mechanism, comparison, and limitation claims:
pks source propose-claim "$source_name" \
--id claim1 \
--type observation \
--statement "Single declarative sentence capturing the claim." \
--context "ctx_<author>_<year>_<slug>" \
--concept-ref concept_a \
--concept-ref concept_b \
--condition "endpoint == 'primary_endpoint'" \
--page 7 \
--section "Results" \
--quote-fragment "Brief supporting quote" \
--notes "Any methodological qualifier needed to interpret the claim."
Parameter claims:
pks source propose-claim "$source_name" \
--id claim2 \
--type parameter \
--concept hazard_ratio \
--value 0.88 \
--context "ctx_<author>_<year>_<slug>" \
--condition "endpoint == 'serious_vascular_event'" \
--page 5 \
--section "Results" \
--quote-fragment "Brief supporting quote"
Bounds and uncertainty:
pks source propose-claim "$source_name" \
--id claim3 \
--type parameter \
--concept hazard_ratio \
--value 0.88 \
--lower-bound 0.79 \
--upper-bound 0.97 \
--context "ctx_<author>_<year>_<slug>" \
--quote-fragment "hazard ratio, 0.88; 95% CI, 0.79 to 0.97" \
--page 5
Use --uncertainty and --uncertainty-type only when the paper reports a scalar uncertainty measure:
pks source propose-claim "$source_name" \
--id claim4 \
--type parameter \
--concept effect_estimate \
--value 1.25 \
--uncertainty 0.08 \
--uncertainty-type "standard_error" \
--context "ctx_<author>_<year>_<slug>" \
--page 5
Rules:
claim1, claim2, ...--concept-ref for every referenced concept.--concept for the form-bearing output concept.--condition for CEL conditions.pks source propose-claim.Before extracting a claim, ask: "Would someone building a system in this domain query this claim?" and "Would someone adjudicating between competing approaches query this?" If neither, skip it.
Extract:
Skip:
Every name on the left side of a CEL condition must be a registered concept. Category condition values are string literals; boolean conditions use true / false; structural concepts cannot appear in CEL expressions.
If a condition axis such as endpoint, comparison, population, or analysis_set is missing, propose it as a category concept first:
pks source propose-concept "$source_name" \
--concept-name endpoint \
--definition "Outcome or endpoint selected for a claim-specific result." \
--form category \
--values "primary_endpoint,all_cause_mortality,major_bleeding"
Claims extracted for: papers/[dirname]
Context: [ctx_author_year_slug]
Claims proposed: N total
Missing concepts encountered and fixed: [...]
Validation boundary: pks source propose-claim