PagePacker has been scriptable since Matt Neuberg, one of the people who wrote the book on AppleScript, added the dictionary to it. Here's how to actually use that.
Dragging eight pages into place by hand is fine for one notebook. It stops being fine the moment you need thirty: a teacher prepping a week of foldable worksheets for every class, or someone converting a folder of scanned zine pages into a stack of print-ready sheets. That's exactly the kind of repetitive job AppleScript exists to kill.
PagePacker's scripting support isn't a bolt-on. Matt Neuberg, author of
O'Reilly's AppleScript: The Definitive Guide, is credited in the
project for making PagePacker AppleScriptable, and the app ships with a real
.sdef dictionary you can open straight from Script Editor.
Open PagePacker's dictionary in Script Editor (File → Open Dictionary → PagePacker) and you'll find one custom suite on top of the standard open/save/print/quit commands every macOS app gets for free:
page size property, either letter or A4.page element always contains exactly 8 pages, matching the physical fold, and pages can't be added or removed, only filled in.file source property (the file placed on that page) and a catalog source page.That's the whole model: a document is always 8 pages, and scripting one means setting what file sits on each page.
This opens a new document, sets the page size, and fills all 8 pages from files in a folder:
Swap the folder path for wherever your pages actually live, and this alone turns "drag eight files in by hand" into "run script."
The same idea extended over a list of page sets can build a whole stack of notebooks unattended, which is the actual point of scripting this instead of using the app by hand:
Fill in real paths for each set and you have a script that walks away and comes back with a printer tray full of finished notebooks.
If you use Claude Code, you don't have to write any of the above by hand. PagePacker's GitHub repo ships a Claude Code skill that reads a report, a PDF, or a topic you ask it to research, distills it into eight short panels — a cover, a handful of key-terms/notes panels, a back cover — and drives PagePacker through exactly the scripting dictionary described on this page to assemble the zine.
It isn't a new layer on top of the app; it's setting the same file
source property, one page at a time, that the scripts above set by hand.
The one step it can't script away is the final export: PagePacker's
print command doesn't honor a scripted output path, so it opens the
real Print dialog and you choose PDF → "Save as PDF" yourself.
You don't need PagePacker's source to install it — just the app itself and one command, which pulls only the skill's files out of the repo:
That drops it into ~/.claude/skills/zine, available in any project
you use Claude Code in. Then just ask it something like: "use the zine skill
to make a pocket zine from this article."
What is a pocket notebook? · How to fold one by hand · Zines, GTD, and the hipster PDA · Source on GitHub