chronicle-import-reports

Imports research-report PDFs into a Chronicle organization's library with dedup and indexing.

1|1|Updated May 9, 2026
One-click install
npx skills add https://github.com/methodic-research/skills --skill chronicle-import-reports-methodic-research
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: chronicle-import-reports
Source: https://github.com/methodic-research/skills/tree/main/plugins/chronicle/skills/import-reports
Command: npx skills add https://github.com/methodic-research/skills --skill chronicle-import-reports-methodic-research

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires methodic-research.

What problem does it solve? Getting a batch of third-party research-report PDFs into a shared, searchable team library normally means manual uploads, duplicate files, and no provenance tracking. This skill bulk-imports PDFs into a Chronicle organization as deduplicated, provenance-recorded assets that the server extracts and indexes for role-filtered search. ## Core Features & Use Cases - Bulk PDF import: Registers each PDF as an org-scoped imported_report asset with sha256-based deduplication, so re-running a batch reports already-present files instead of duplicating them. - Provenance and access control: Records sha256, size, source filename, and batch label in asset_config, and scopes search visibility to the organization (or a team), refusing personal-scope and public uploads. - Server-side extraction and indexing: Finalizing the batch enqueues extraction (math-capable OCR for scanned PDFs, layout parsing with derived HTML/Markdown views when configured) and indexes content into role-filtered search. - Use Case: A research lead says "import this folder of 40 papers into our org's library" — the skill resolves the organization, uploads each PDF with dedup, and reports imported/duplicate/failed counts plus the extraction job id. ## Quick Start Import all PDFs in the folder ./reading-list into our Chronicle organization and tell me which ones were already imported.

Frequently Asked Questions about chronicle-import-reports

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I bulk import research paper PDFs into a shared team library?▼

Use chronicle.imports.research_reports with a list of PDF files or directories plus an organization_id. Each PDF becomes an org-scoped imported_report asset, and the summary reports imported, duplicate, and failed counts along with the extraction job id.

How does PDF deduplication work when importing documents?▼

Deduplication is based on the (organization_id, sha256) pair, so the same file bytes import only once per organization. Re-running a batch reports already-present files instead of creating duplicates.

Can I import PDFs into a personal workspace instead of an organization?▼

No. Imported reports are always organization-scoped, and the server refuses personal-scope rows with a 400 error. You must resolve an organization explicitly, from config, or from the CHRONICLE_ORGANIZATION_ID environment variable.

Does the import handle scanned PDFs without a text layer?▼

Yes. The server-side extraction job runs math-capable OCR for image-only scans, preserving equations as LaTeX. When a layout parser is configured, it also produces HTML and Markdown views plus table and equation enrichment.

Why does a PDF import fail with a 413 or size cap error?▼

PDFs over the server cap (pdf_import.max_pdf_mb, default 50 MB) are refused at registration. Check file sizes locally before importing and list the oversized files rather than uploading them.

What Python package is required for Chronicle PDF imports?▼

Install methodic-research version 0.14 or later for chronicle.imports. On 0.13, a per-file fallback using assets.create_with_presigned, upload_component, and finalize works but does not auto-enqueue extraction.