Skip to content
Back to skills

Pdfcraft

ASecurity

Use this skill whenever the user mentions PdfCraft (or "the PDF workbench"), asks what PdfCraft can do, asks about its supported file formats, CLI flags, MCP/agent tools, or keyboard shortcuts, or wants to inspect, render, search, organize, combine, split, comment on, fill, sign, protect, redact, OCR, compare, print or export PDFs with it. Trigger it for automate/script/verify/ troubleshoot requests around PdfCraft, and even when the app is not named but the job is Acrobat-style document work...

  • 11 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 16, 2026
developmentjavascriptrustgojavagitsecurityperformance

Works with

  • cli
  • mcp

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned October 16, 2026

npx -y skills add midasmatterhorn/artcraft-skills --skill pdfcraft --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pdfcraft?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Pdfcraft
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/midasmatterhorn-pdfcraft/badge)](https://www.skillsdirectory.com/skills/midasmatterhorn-pdfcraft)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: pdfcraft
description: >
  Use this skill whenever the user mentions PdfCraft (or "the PDF workbench"), asks what PdfCraft
  can do, asks about its supported file formats, CLI flags, MCP/agent tools, or keyboard shortcuts,
  or wants to inspect, render, search, organize, combine, split, comment on, fill, sign, protect,
  redact, OCR, compare, print or export PDFs with it. Trigger it for automate/script/verify/
  troubleshoot requests around PdfCraft, and even when the app is not named but the job is
  Acrobat-style document work (merge these PDFs, add page numbers, make this scan
  searchable, strip metadata, fill this form, check this signature, annotate this contract).
  All claims in this skill are grounded in the source repo storytold/pdfcraft; read
  references/ for the full automatable feature list before promising a capability.
---

# PdfCraft

## Overview

PdfCraft is a PDF workbench: a clean-room, pure-Rust reimplementation of Adobe Acrobat (explicit
target: Acrobat Pro, `docs/roadmap.md` header), built by ArtCraft (storytold) — source at
github.com/storytold/pdfcraft. It reads, renders, edits, organizes, combines, splits, comments on,
fills, signs, protects, redacts, OCRs, compares, prints and exports PDFs; the PDF object graph is
the document model, so there is no separate project format (`docs/architecture.md` §Data model).
Workspace version at HEAD is 0.8.0 (`Cargo.toml:8`); the project self-describes as **alpha**
(ROADMAP.md:3, docs/roadmap.md alpha gate). Runs natively on macOS, Windows, Linux and FreeBSD,
plus a WebAssembly browser build (`apps/pdfcraft-web`, `docs/architecture.md` §Shape). Rendering is
currently borrowed from the vendored `hayro` family while PdfCraft's own renderer is built
(`docs/gaps.md` gap 2) — factor that into fidelity claims.

Line numbers below are for the inspected commit (see §Sources); confirm against your installed
version — the locally installed app may be older than HEAD.

## Capabilities (verified)

### Core viewing, text and navigation
- PDF viewing with tiled rendering, continuous/single/two-up layouts, rotation, full screen and
  Read mode; themes light/dark/system (`README.md` §Read; `crates/ui-egui/src/lib.rs:2448-2600`
  startup view options). Pages are rendered on the CPU by vendored hayro and uploaded to the GPU
  (`docs/architecture.md` §Rendering and text).
- Reading-order text extraction (columns, RTL runs, vertical CJK), find-as-you-type, next/previous
  match, text selection/copy (`crates/render`, `docs/architecture.md` §Rendering and text;
  shortcuts ⌘F/⌘G/⇧⌘G in `crates/ui-egui/src/canvas.rs:1930-1980`).
- Search the corpus: `pdfcraft-cli text <file.pdf>`; find tool `text_find` with page/line rects
  (`apps/pdfcraft-cli/src/main.rs:315-377`, `crates/automation/src/tools.rs` text_find).
- Bookmarks (nested, searchable), page thumbnails, document page labels (`README.md` §Navigate).

### Page organization, combine, split, create
- Rotate, delete, move, duplicate, replace, insert blank/file pages; crop/boxes; page labels
  (tools `page_rotate`, `page_delete`, `page_move`, `page_duplicate`, `page_replace`,
  `page_insert_blank`, `page_insert_file`, `page_set_box`, `page_number` —
  `crates/automation/src/tools.rs`; Organize pages UI in `README.md` §Organize).
- Combine (bookmark per file, links/fields/layers/attachments carried), extract, split by every N
  pages / before pages / bookmarks / max size (`doc_combine`, `page_extract`, `doc_split` tools;
  CLI `combine|extract|split`, `apps/pdfcraft-cli/src/main.rs:479-525`).
- Create PDFs from blank pages, images (PNG/JPEG/TIFF incl. multi-page, GIF, BMP, JP2/J2K/JPX) and
  `.txt`/`.text` (`doc_create`, `doc_create_multiple`; extensions list
  `crates/create/src/lib.rs:488`).

### Comments, forms, layers, attachments
- All Acrobat markup types: note, highlight, underline, strikeout, squiggly, replace, rectangle,
  oval, line, arrow, ink, textbox, stamp (static and dynamic), polygon, cloud, polyline, callout,
  caret, attachment; replies, review status, checkmarks, locking, summarize, flatten
  (`comment_*` tools, `crates/automation/src/comments.rs`; `crates/annot`).
- Forms: field listing, filling with regenerated appearances, field creation (text/date/checkbox/
  radio/combo/list/button/image/signature), properties, tab order, calculations, field
  JavaScript, automatic field detection, data import/export
  (`crates/forms`, `crates/automation/src/forms.rs`; tools `form_*`, `doc_export_data`,
  `doc_import_data`, `form_detect_fields`).
- Fill & Sign without preparing fields: typed text, checks/crosses/dots/lines, dates, typed or
  image signatures and initials, photo-signature scanning (`fill_sign_add` tool).
- Acrobat JavaScript in a sandbox (boa): console, document scripts, field scripts, button scripts
  (`crates/js`; tools `js_run`, `js_document_scripts`, `js_set_document_script`,
  `form_set_script`, `js_enabled`). XFA: static/dynamic layout, FormCalc, data import
  (`crates/xfa`, `crates/automation/src/tools.rs` js_run/XFA notes).

### Protect, redact, sanitize, audit
- Standard security handler R2–R6: RC4-40/128, AES-128/256, user/owner passwords with SASLprep,
  permissions (`crates/crypt`; `doc_protect`, `doc_unprotect`; CLI `--password`).
- Redaction: mark by rect/find/words/pattern/whole pages with FOIA/Privacy Act codes, apply with a
  verification pass that fails if readable content remains; sanitize/remove hidden information
  (`crates/redact/src/lib.rs:12`; tools `redact_mark`, `redact_apply`, `redact_clear`,
  `doc_hidden_info`, `doc_remove_hidden`).
- Faux-redaction audit: finds text hidden under painted boxes and unapplied marks; CLI `audit`
  exits non-zero on findings (`doc_audit_redactions`; `apps/pdfcraft-cli/src/main.rs:158-179`;
  `crates/audit`).

### Signatures
- Sign with .p12/.pfx digital IDs, macOS Keychain identities or Windows certificate store; PAdES
  B-B, SHA-256/384; certification signatures; visible signatures with image/text/drawn graphic;
  create self-signed digital IDs; trust list; validation reporting (valid/unknown/invalid, changes
  after signing) (`crates/sign`; tools `sign_document`, `sign_id_create`, `sign_keychain_ids`,
  `sign_windows_ids`, `sign_list`, `sign_trust`).

### OCR, camera cleanup, print, export, optimize, standards, accessibility
- OCR (English, unaccented Latin): searchable-image text layer, batch recognition, camera-image
  straighten/clean-up (`crates/ocr`; tools `ocr_recognize`, `ocr_recognize_files`,
  `ocr_status`, `page_enhance_camera`). Needs models: `cargo xtask models` for source builds,
  `PDFCRAFT_MODELS` override (`crates/ocr/src/lib.rs:4-66`).
- Print: full Print-dialog model (ranges, subset, reverse, fit/actual/shrink/custom, multiple,
  booklet, poster, comments/forms, paper sizes, copies, duplex, grayscale, CUPS driver options),
  or write a print-ready PDF (`crates/print`, craft-print spooler; tools `doc_print`, `printers`,
  `printer_options`, `print_readiness`).
- Export: pages as PNG/JPEG/TIFF (150 dpi default, incl. unsaved edits), all embedded images,
  text; Word .docx, PowerPoint .pptx, HTML, RTF (`crates/export`; tools `doc_export_images`,
  `doc_export_all_images`, `doc_export_text`, `doc_export_office`).
- Optimize: Reduce File Size and full Optimizer (downsample/compress images, discard options);
  space audit (`crates/optimize`; tools `doc_reduce`, `doc_optimize`, `doc_audit_space`).
- Standards: PDF/A-2b/3b verify and convert (`crates/preflight/src/lib.rs:304,549`; tools
  `pdfa_verify`, `pdfa_convert`).
- Accessibility: 32-rule checker, HTML report, review records/sidecars, figure alt text, tag
  property/sibling-order edits, text-only auto-tagging (`crates/a11y`; tools
  `accessibility_*`).
- Compare: text diff (with optional visual-region diff), PDF report, mark differences as comments
  (`crates/compare`; tools `doc_compare*`).
- Measure: calibrated 2D distance/perimeter/area annotations and readouts, scale viewports, CSV
  export (`crates/measure`; tools `measure_*`).
- Editing existing content: text paragraphs/lines in-place rewrite (Western fonts, or Japanese
  via embedded fallback faces), image move/rotate/flip/replace/delete, added text/image/link
  content editing (`crates/edit`; tools `text_edit`, `text_lines`, `text_paragraphs`,
  `page_images`, `image_edit`, `content_*`, `link_*`).
- Headers/footers (with Bates numbering), watermarks (text or image), backgrounds
  (`doc_header_footer`, `doc_watermark`, `doc_background`, `doc_remove_marks`).

### Automation surfaces (three front doors, one tool table)
- **CLI** `pdfcraft-cli` — `info`, `render` (png/jpg/tif/pam), `text`, `edit`, `combine`,
  `extract`, `split`, `check` (child-process robustness sweep), `audit`, `batch`
  (convert/ocr/optimize over folders, `docs/cli-batch.md`), `tools`, `run` (single tool, `key=value`
  or `--script steps.json`), `ui` (drive a running app), `mcp` (`USAGE` in
  `apps/pdfcraft-cli/src/main.rs:49-74`).
- **Tool table**: 163 JSON-Schema tools at HEAD, each with read_only/destructive hints and,
  where one exists, a registry command id (`crates/automation/src/tools.rs`; full list in
  `references/automation-tools.md`; `pdfcraft-cli tools` prints the live set for your version).
  194 commands in the registry carry menus, shortcuts and enabled-state
  (`crates/engine/src/commands.rs:163`, COMMANDS).
- **MCP server**: opt-in, stdio only, no port, `pdfcraft-cli mcp [--root DIR] [--compact]`;
  tools/list + tools/call + resources (open-document info/text/page images); default-on `mcp`
  Cargo feature can be compiled out (`crates/automation/src/mcp.rs`, `docs/mcp.md`,
  `apps/pdfcraft-cli/Cargo.toml` features).
- **UI control channel**: opt-in `pdfcraft --control FILE`; loopback random port + per-launch
  token in an owner-only file; methods `ui.state, inspect, click, focus, resize, quit, move,
  drag, type, key, command, commands, set, open, screenshot`, plus docking; driven by
  `pdfcraft-cli ui --control FILE <method> …` (`crates/ui-egui/src/control.rs:276-360`,
  `README.md` §Driving the app itself; client + control-file safety checks in
  `apps/pdfcraft-cli/src/main.rs:811-916`).
- All engine entry points are wrapped in a last-resort `catch_unwind`
  (`crates/engine/src/lib.rs:2551`).

## Known limitations and not-implemented

- **Renderer fidelity unmeasured and borrowed** — pages drawn by vendored hayro; own renderer
  incomplete; comparison against Acrobat not yet measured (`docs/gaps.md` gaps 2 & 12).
- **Editing existing text is fragile beyond simple cases**: robust CJK/RTL, rotated text,
  lists, superscript, keep-tags-on-edit, vector editing, arrange/align are missing or planned
  (`docs/gaps.md` gap 3; `text_edit` refuses text no available font can show).
- **Office import absent; Office export lossy**: no Create-PDF-from-Word/Excel/PPT/HTML/web/
  PostScript; Word export can lose layout; no .xlsx export; no SVG/EPS/PS/JPEG-2000 export
  (`docs/gaps.md` gap 8; `crates/create/src/lib.rs:488` lists only images/text as convertible).
- **OCR is English/unaccented-Latin only**; no other scripts/accents, no OCR in the browser, no
  work without models (`docs/gaps.md` gap 7; `crates/automation/src/tools.rs` ocr_recognize
  `language` enum is `["en"]`).
- **No Preflight**; PDF/A only 2b/3b (partial: CMYK docs get no output intent); no PDF/X,
  PDF/UA verify, PDF/E, PDF/VT, transparency flattening (`docs/gaps.md` gap 9).
- **Signatures**: no PKCS #11/smart cards on macOS/Linux, no timestamp-server configuration, no
  online OCSP/CRL fetching (LTV only with caller-supplied evidence), no OS trust store, no EU
  Trusted Lists, no signing in the browser (`docs/gaps.md` gap 10).
- **Accessibility**: checker + alt text + tag edits + text-only auto-tag (refuses mixed content
  and existing tags); no reading-order/table editor, no Read Out Loud, app not fully
  keyboard-operable (`docs/gaps.md` gap 11).
- **Forms**: wider Acrobat JS object model incomplete, document actions/submit/debugger/barcode
  fields missing, XFA flattening absent (`docs/gaps.md` gap 15).
- **No scanners** (no TWAIN/WIA/ICA/SANE), **no GPU page rendering, no pen pressure, no
  Read Out Loud** (`docs/gaps.md` gap 20).
- **Compare** has no side-by-side view, filters, page ranges, or scanned-document handling
  (`docs/gaps.md` gap 21).
- **Preferences mostly missing** (only language, documents/view, identity, Fill & Sign,
  JavaScript areas) (`docs/gaps.md` gap 19).
- **No print production tools** (Output Preview, separations, ink manager, printer marks…)
  (`docs/gaps.md` gap 18).
- **Performance**: whole file is held in memory to view; editing peaks at ~2 copies, saving at
  ~3; no file-backed input yet (`docs/gaps.md` gap 13).
- **UI precision**: moving a multi-page selection across pages, rulers/grids/guides, in-app
  multiple windows and split view are still missing (`docs/gaps.md` gap 16); Arabic UI is not
  mirrored and no Hindi/Indonesian/Korean/Vietnamese catalogs (`docs/gaps.md` gap 14); Chinese
  UI may show missing-glyph boxes without an installed Chinese face (`docs/gaps.md` gap 5).
- **Web build limits**: no crash-recovery store (`crates/ui-egui/src/recovery.rs:11`), no control
  channel/`ui.open` (file system) (`crates/ui-egui/src/control.rs` wasm arms), printing goes
  through the browser dialog, embedded Japanese is Gothic Regular only
  (`docs/localization.md`; `docs/gaps.md` gap 4 closure note).
- **No AI features**: cloud AI is out of scope; a local/opt-in provider is only planned
  (`docs/gaps.md` gap 23).
- **Copy-protected documents**: text extraction and copy honour permissions — the owner password
  is required (`apps/pdfcraft-cli/src/main.rs:346-354`).
- **macOS CLI is not in the .app**: `pdfcraft-cli` ships as a separate release zip; the `.app`
  contains only the desktop app (`crates/automation/README.md` §From an installed release).

## How to operate

### Launch (macOS)
- Installed app: `/Applications/PdfCraft.app` (bundle id `ai.storyteller.pdfcraft`; binary
  `/Applications/PdfCraft.app/Contents/MacOS/PdfCraft`). Launch: `open -a PdfCraft`, or with a
  document `open -a PdfCraft /path/file.pdf`; pass app flags via
  `open -a PdfCraft --args --control ~/.pdfcraft-control.json`.
- Desktop flags (parsed in `apps/pdfcraft/src/main.rs:1-19,179-200`): files…, `--version`,
  `--control FILE`, `--create-images [images…]`, `--new-window`, `--page N`, `--zoom 150`,
  `--layout single|continuous|two-up|two-page`, `--continuous on|off`,
  `--panel comments|bookmarks|pages|fields|layers|attachments|none`, `--theme light|dark|system`,
  `--language auto|<code>`, `--mode all|read|edit|convert|sign`, `--tool <id>`, `--left open|closed`,
  `--organize on`, `--fields on`, `--dialog properties|shortcuts|about`, `--palette <query>`,
  `--home on`, `--cover on|off`, `--default-layout …`, `--default-continuous on|off`,
  `--default-zoom fit-width|fit-page|<percent>`, `--combine-view grid|list`, `--combine-zoom 60..200`.
- `pdfcraft-cli` (headless): download `pdfcraft-cli-<ver>-macos-universal.zip` from the GitHub
  release and put it on `PATH`; run `pdfcraft-cli --help` for the exact usage at that version.

### Document model and workflow
- One window, multiple documents as tabs (right-click a tab to close/reveal; dot marks unsaved
  changes). `--new-window` gives a launch its own window. Edits stay in memory as undo steps
  (`⌘Z` / `⇧⌘Z`), shown by name in the Edit menu; autosave writes recovery snapshots every 60 s to
  the settings folder and offers recovery after a crash; encrypted documents are recovered
  encrypted (`README.md` §Organize; `crates/ui-egui/src/recovery.rs:4-17`).
- Open: PDF only as a document (Encrypted PDFs prompt for password). Create inserts images/text;
  Combine also accepts them.
- Save: `⌘S` writes an **incremental update appended to the same file** — original bytes stay
  untouched, prior signatures stay valid; Save As (⇧⌘S) or a new path is a full rewrite; writes
  are atomic (temp copy then replace); `doc_save` `full: true` forces a rewrite
  (`README.md` §Saves you can trust; `docs/architecture.md` §Data model; `doc_save` tool).
- Export: File menu / tools as listed under Capabilities; the extension of the target path picks
  the format for data export (`.xfdf/.fdf/.xml/.xdp/.csv/.txt`) and Office export
  (`.docx/.pptx/.html/.rtf`) — `crates/xfdf/src/lib.rs:49-59`, `doc_export_office`.
- Panels: comments, bookmarks, pages, fields, layers, attachments, signatures, accessibility,
  tags, search, compare (set with `--panel` or `ui.set panel=<name>`,
  `crates/ui-egui/src/lib.rs:2347-2362`).

### Keyboard (verified in the command registry, `crates/engine/src/commands.rs`)
⌘K command palette (`:197`) · ⌘F find / ⇧⌘F advanced search (`:195-196`) · ⌘G / ⇧⌘G next/previous
match (`crates/ui-egui/src/canvas.rs:1978`) · ⌘Z/⇧⌘Z undo/redo (`:193-194`) · ⌘S / ⇧⌘S save /
save as (`:186-187`) · ⌘O open, ⌘W close, ⇧⌘W close all (`:164,188-189`) · ⌘D document properties
(`:192`) · ⌘J JavaScript console (`:323`) · ⌘, preferences (`:322`) · ⌘L full screen (`:217`) ·
⌃⌘H Read mode (`:218`) · ⇧⌘N go to page (`:224`). Labels follow the interface language; machine
ids never change. For the live truth at a given version ask the tools: `command_list` returns
every command with menu, shortcut, enabled state and mapped automation tool.

### Headless recipes
```sh
pdfcraft-cli info report.pdf                       # JSON: pages, encryption, forms, layers, warnings
pdfcraft-cli text paper.pdf --page 3               # reading-order text
pdfcraft-cli render paper.pdf --page 1 --dpi 144 --out p1.png
pdfcraft-cli edit in.pdf --rotate 1,2:90 --delete 5 --title "Q3" --out out.pdf
pdfcraft-cli combine a.pdf b.pdf --out combined.pdf
pdfcraft-cli extract report.pdf --pages 1,3,5 --out highlights.pdf
pdfcraft-cli split report.pdf --every 10 --out-dir parts/
pdfcraft-cli batch scans --recursive --steps ocr,optimize --out-dir out --root .
pdfcraft-cli tools | jq '.[].name'                 # the current tool table
pdfcraft-cli run text_find doc=1 query=invoice
pdfcraft-cli run --script steps.json --root ./work # multi-step JSON script
pdfcraft-cli audit maybe-redacted.pdf              # exits non-zero on faux redactions
```
Scripts are `[{"tool": "doc_open", "args": {"path": "in.pdf"}}, {"tool": "page_rotate",
"args": {"doc": 1, "degrees": 90}}, {"tool": "doc_save", "args": {"doc": 1}}]` with an optional
per-step `"out"` for images; with `--root`, every read/write path must resolve inside it.
MCP: `claude mcp add pdfcraft -- pdfcraft-cli mcp --root <dir>` (stdio, opt-in).

## Working with an AI agent

**Legitimate work.**
- Drive the engine headlessly through `pdfcraft-cli run`/`--script` or MCP; prefer the tool table
  (`pdfcraft-cli tools`) as the capability contract for the installed version rather than this
  file, which tracks HEAD.
- Prepare inputs: images (PNG/JPEG/TIFF/GIF/BMP/JP2) and `.txt` for `doc_create`; XFDF/FDF/XML/
  CSV/TXT for `doc_import_data`/`form_merge_data`; `.p12`/`.pfx` for signing; openly licensed
  TrueType/OpenType files for `text_font_import` (the engine validates embedding permissions and
  refuses restricted fonts).
- Interpret and repair documents: the PDF *is* the project file. `doc_revisions` +
  `doc_open_revision` show what each incremental save appended; `doc_info.warnings` and
  `doc_inspect` expose repairs; `--full` rewrites only when needed (redaction, PDF/A, password
  change, Save As GC — `docs/architecture.md` §Data model).
- Verify outputs independently: `page_render`/`render_preview` for pixels, `text_extract` for
  text, `doc_audit_redactions` after redaction, `pdfa_verify` after PDF/A conversion, and
  external oracles qpdf/poppler/hayro as the repo itself uses (`README.md` §How it's built).
- For UI work, launch with `--control` and use `pdfcraft-cli ui inspect/click/type/key/command/
  screenshot`; `inspect` returns the accessibility tree with labels — click by unique label, and
  screenshot to confirm. `quit` never silently discards work.

**Must not.**
- Do not drive the GUI blind (clicks by guessed coordinates without `--control` + `inspect`);
  do not expect deterministic GUI state across launches.
- Do not assume unsupported conversions: no Office→PDF, no .xlsx, no SVG/EPS/PS export, no
  non-English OCR, no PDF/UA or PDF/X verification.
- Do not edit CJK/RTL/rotated existing text or promise layout fidelity for Word export.
- Do not rewrite signed documents destructively: saving in place is incremental and keeps
  signatures valid, but `doc_optimize` refuses signed files, and any full rewrite invalidates
  certification; keep the original bytes.
- Do not put the control file in a shared folder (`/tmp`) or enable the MCP server/control
  channel by default — both are opt-in and loopback-only (`README.md` §Driving the app itself).

## Verification protocol

Alpha-software discipline for every session:
1. **Throwaway round-trip first**: open → edit → `doc_save` to a *new* path → reopen that file
   elsewhere (`pdfcraft-cli info/text`, then Preview/Acrobat or `qpdf --check`). Reopening in
   PdfCraft alone proves nothing about other readers.
2. **Never trust a silent export**: re-render exported images, re-read exported text, and open
   exported .docx/.pptx in their real app before declaring success. Office export is known
   lossy — compare against the page images.
3. **Redaction**: always run `pdfcraft-cli audit` (or `doc_audit_redactions`) on the saved file;
   `redact_apply`'s internal verification pass is a gate, not a substitute for the audit.
4. **Backups and versions**: keep the original PDF (incremental saves preserve it, but keep a copy
   anyway before full rewrites); the installed app may lag HEAD (installed here: 0.7.1 vs repo
   0.8.0) — check `pdfcraft --version` / `pdfcraft-cli --version` before trusting flags or tools
   from this skill. Update apps only between projects, never mid-task.
5. **Large or hostile files**: render/check via child-process `pdfcraft-cli check` when a file
   misbehaves; fuzzing still finds crashes and hangs (`README.md` §What's next), so treat an
   unexpected exit as a bug, not a boundary.

## Sources & evidence

- Repo: https://github.com/storytold/pdfcraft · installed app: `/Applications/PdfCraft.app`
  v0.7.1 (`Contents/Info.plist`), repo HEAD version 0.8.0.
- Inspected commit: `9931329b9fae0b05373b4dc3ac7c58541f0891a4` ("Release 0.8.0"), 2026-10-14.
- Key files read: `README.md`, `ROADMAP.md`, `docs/{gaps,roadmap,architecture,development,mcp,cli-batch,localization}.md`, `Cargo.toml`, `apps/pdfcraft/src/main.rs`,
  `apps/pdfcraft-cli/src/main.rs`, `crates/automation/{README.md,src/tools.rs,src/lib.rs}`,
  `crates/engine/src/commands.rs`, `crates/ui-egui/src/{control.rs,recovery.rs,lib.rs,canvas.rs}`,
  `crates/create/src/lib.rs`, `crates/export/src/lib.rs`, `crates/xfdf/src/lib.rs`,
  `crates/preflight/src/lib.rs`, `crates/ocr/src/lib.rs`, `apps/pdfcraft-web/`,
  `apps/pdfcraft-cli/Cargo.toml`.
- Companion: `evidence.md` (claim → evidence → tier table) for spot-checking.

Files in this skill

  • SKILL.md22.7 KB
  • agents/openai.yaml143 B
  • evidence.md7.9 KB
  • references/automation-tools.md7.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.