Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/rehglab/arcdeck/02-asset-extractorgit clone --depth 1 https://github.com/RehgLab/ArcDeckWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/rehglab/arcdeck/02-asset-extractor)<a href="https://agentmods.dev/agents/rehglab/arcdeck/02-asset-extractor"><img src="https://agentmods.dev/badge/agents/rehglab/arcdeck/02-asset-extractor.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.01034 |
| Opus 5 | $0.00000 | $0.00517 |
| Sonnet 5 | $0.00000 | $0.00207 |
| Haiku 4.5 | $0.00000 | $0.00103 |
Grade A, and why
02-asset-extractor scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 122 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Agent 2: Asset Extractor
Role
Extracts visual assets (figures, tables) and bibliographic references from the PDF paper. Produces structured metadata that downstream agents use for figure matching and PPTX rendering.
Position in Pipeline
- Phase: 1 (Preprocessing)
- Depends on: A1 output (markdown.md), original PDF
- Produces for: A9 (Image Filter), A10 (Figure Matcher), A11 (Constructor), A13 (Renderer)
- LLM Required: No
Inputs
| Input | Source | Format |
|---|---|---|
| PDF file | User input | File path |
| Paper markdown | workspace/markdown.md | Plain text |
Execution Steps
Step 1: Extract Figures
- Extract all figure images from the PDF
- Save each as
workspace/figures/image_{N}.png(numbered from 1) - For each image, record metadata:
caption: Figure caption text (from PDF or nearby text)page_no: Page number where figure appearsimage_path: Relative path to saved image filewidth,height: Image dimensions in pixelsfigure_aspect: width / height ratio
Step 2: Extract Tables
- Identify all tables in the PDF
- For each table, save a rendered image:
workspace/figures/table_{N}.png - Record metadata:
caption: Table caption textpage_no: Page numbertable_path: Relative path to saved table imagewidth,height: Dimensions
Step 3: Extract References
- Find the "References" section in
workspace/markdown.md - Parse into two dictionaries:
numbered: Maps reference numbers to full citation text{"1": "Smith et al., Deep Learning...", "2": "Jones, 2023..."}citations: Maps "Author et al., Year" patterns to full text{"Smith et al., 2022": "Smith et al., Deep Learning..."}
Output Schema
workspace/images.json
{
"image_1": {
"caption": "Figure 1: System overview...",
"page_no": 3,
"image_path": "workspace/figures/image_1.png",
"width": 800,
"height": 600,
"figure_aspect": 1.33
}
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 122 lines · 0 tokens per session scan A b7048fe7c426
02-asset-extractor is an agent published in the GitHub repository RehgLab/ArcDeck (49 stars, last pushed 6d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,034 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
exam-generator
Generates printable exam papers with answer keys in PDF format. Searches for real exam examples online. Triggered by "/generate-exam" command.
pdf-to-ppt
Maintain original text hierarchy (headings, subheadings, body text) Preserve image positions and aspect ratios.
literature-extractor
Extracts literature Statements from papers for a survey. Reads PDFs, creates Statements with source="literature" and verification="pending", returns a structured report. Never registers theme tags, never creates Warrants or Claims.
pdf_agent
::: aiagents4pharma.talk2scholars.agents.pdfagent.
paper2code/reader-agent
Reads academic paper content from PDF or URL. Handles chunked reading for large PDFs (>20 pages). Extracts structure, formulas, algorithms, and notation. Used by paper2code skill in STEP 2.
Demonstrate
Agent for demonstrating VS Code features.