Install
$ agentstack add skill-jimezsa-opencolab-paper-summary ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Paper Summary Skill
Use this skill when PDFs have already been downloaded and the next step is to create deterministic /pdf/.md summaries from those PDFs.
For precise follow-up QA after the summaries exist, switch to the shared pageindex-grounded skill instead of stretching this skill into ad hoc question answering.
This skill is the canonical summary step for:
SKILLS/fast-research/SKILL.mdSKILLS/pro-research/SKILL.mdSKILLS/deep-research/SKILL.md
Update This Skill
Only do this if the user explicitly asks to update this skill from the GitHub repo.
To refresh this skill directly from the GitHub repo:
curl -fsSL https://raw.githubusercontent.com/jimezsa/papercli/main/SKILLS/paper-summary/SKILL.md \
-o SKILLS/paper-summary/SKILL.md
curl -fsSL https://raw.githubusercontent.com/jimezsa/papercli/main/SKILLS/paper-summary/references/summary_schema.md \
-o SKILLS/paper-summary/references/summary_schema.md
curl -fsSL https://raw.githubusercontent.com/jimezsa/papercli/main/SKILLS/paper-summary/scripts/gemini_parallel_summary.py \
-o SKILLS/paper-summary/scripts/gemini_parallel_summary.py
Mission
Given one paper PDF or a directory of paper PDFs:
- Read the PDFs directly with Gemini.
- Produce one markdown summary per paper that follows the canonical schema in
references/summary_schema.md. - Write each summary as
.md, next to.pdf, unless an explicit output directory is provided. - Optionally append original paper IDs to
/meta/summarized_ids.txt.
Prerequisites
python3is installed and available inPATH.google-genaiis installed:python3 -m pip install google-genaiGEMINI_API_KEYis set in the environment.- Network access is available when running the Gemini script.
- The PDFs already exist locally.
- Optional metadata JSON files exist in
/meta/.json.
Required Inputs
- A single PDF via
--pdf, or a directory of PDFs via--pdf-dir. - Optional
--metadata-dirso the script can recover original paper IDs and metadata fallbacks. - Optional
--summarized-idsfile to append successful original paper IDs. - Optional
--failures-tsvfile to record summary failures in the same ledger used by the research skills. - The active research run folder, normally
research/-/, when this is called fromfast-research,pro-research, ordeep-research.
Hard Requirements
- Use the canonical schema from
references/summary_schema.mdunchanged. - Output markdown only. Do not wrap the summary in code fences.
- Keep figures, tables, equations, captions, and page anchors as first-class evidence.
- Use metadata only as fallback and label it clearly.
- If evidence is missing, preserve the required missing-evidence labels instead of guessing.
- Do not silently skip failures. Either rerun the paper or record the failure upstream.
Workflow
1. Confirm local inputs
- Verify the target PDF exists.
- When possible, keep PDF names aligned with the
safe_idconvention already used by the research skills. - If metadata exists, keep the matching JSON at
/meta/.json.
2. Run the Gemini batch summarizer
When this skill is called from a research run, set RUN_ROOT to the active run folder first:
RUN_ROOT="research/-"
Single paper:
python3 SKILLS/paper-summary/scripts/gemini_parallel_summary.py \
--pdf "$RUN_ROOT/pdf/.pdf" \
--metadata-dir "$RUN_ROOT/meta" \
--summarized-ids "$RUN_ROOT/meta/summarized_ids.txt" \
--failures-tsv "$RUN_ROOT/meta/failures.tsv"
Batch mode:
python3 SKILLS/paper-summary/scripts/gemini_parallel_summary.py \
--pdf-dir "$RUN_ROOT/pdf" \
--metadata-dir "$RUN_ROOT/meta" \
--summarized-ids "$RUN_ROOT/meta/summarized_ids.txt" \
--failures-tsv "$RUN_ROOT/meta/failures.tsv" \
--concurrency 4
Useful flags:
--model: override the default Gemini model.--output-dir: write summaries somewhere other than next to the PDFs.--overwrite: regenerate existing.mdsummaries.--concurrency: lower this if the API starts rate limiting.
3. Review outputs
- Each successful run should create
/pdf/.md. - Check that the output preserves the canonical headings and evidence anchors.
- If a paper failed, inspect stderr, then rerun just that paper or keep the failure recorded in
/meta/failures.tsv.
Output Contract
- One markdown summary per processed PDF.
- Each summary follows the canonical schema in
references/summary_schema.md. - Successful runs may append the original paper ID to
/meta/summarized_ids.txtwhen metadata is available.
Canonical Assets
- Summary schema:
SKILLS/paper-summary/references/summary_schema.md - Batch summarizer:
SKILLS/paper-summary/scripts/gemini_parallel_summary.py
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jimezsa
- Source: jimezsa/opencolab
- License: MIT
- Homepage: https://opencolab.ai/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.