Agent skill

Gog Pamphlet

by east35 in east35/GOG-Disc-Packager

Builds the printable pamphlet panels that go inside a GOG backup disc case — scrapes the store page, generates the QR badge, writes the per-title JSON and runs buildset.py to emit 483x629 SVG and…

GPL-3.0Auto-check passedData & Analytics

Install Gog Pamphlet

skills CLI
$ npx skills add east35/GOG-Disc-Packager --skill gog-pamphlet -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install east35/GOG-Disc-Packager gog-pamphlet --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/east35/GOG-Disc-Packager.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/Pamphlet .claude/skills/gog-pamphlet && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
gog-pamphlet
GitHub stars
121
Token cost
~2.2k tokens
SKILL.md length
1,135 words
Files
2
Skills in repo
2
Repo updated
First seen
Licence
GPL-3.0

At a glance

Builds the printable pamphlet panels that go inside a GOG backup disc case — scrapes the store page, generates the QR badge, writes the per-title JSON and runs buildset.py to emit 483x629 SVG and…

  • Works in 9 steps: Locate the folder — never duplicate → Scrape the store page → Decide preserved or not — this gates… → …
  • Gives a gog.com/en/game/..
  • SKILL.md covers What gets built, The flow, Traps that have actually bitten and House style
  • Calls python3

What it does

Gog Pamphlet is an agent skill from east35/GOG-Disc-Packager. Builds the printable pamphlet panels that go inside a GOG backup disc case — scrapes the store page, generates the QR badge, writes the per-title JSON and runs buildset.py to emit 483x629 SVG and PNG panels. Use this whenever the user gives a gog.com/en/game/... URL and wants a pamphlet, insert panels, or "the full flow" for a title; when they ask to rebuild, fix or restyle an existing title's panels; or when they mention AF/AB/BF/BB panels, the preservation certificate, or the production-history card. Also use…

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `per-title-json.md`).

It sits in Data & Analytics, covering Web scraping. The licence is GPL-3.0.

When your agent uses it

  • Gives a gog.com/en/game/..
  • Batches of several GOG URLs at once

Example prompts

  • “the full flow”
  • “Use the gog-pamphlet skill to build the printable pamphlet panels that go inside a GOG backup disc case — scrapes the store page, generates the QR…”
  • “/gog-pamphlet”

Requirements

  • Python 3

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. Locate the folder — never duplicate
  2. Scrape the store page
  3. Decide preserved or not — this gates card B
  4. QR badge
  5. Logos
  6. Publisher address
  7. Production history — preserved titles only
  8. Write the JSON and build
  9. Check the output

What it can do on your machine

Read from SKILL.md and the folder at commit 09ca3db. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Gog Pamphlet loads about 2.2k tokens when it runs. Until then it costs about 173 tokens; SKILL.md has 1,135 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~173
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from east35/GOG-Disc-Packager at commit 09ca3db, republished under its GPL-3.0 licence (© east35). 1,135 words, ~2,227 tokens.

Download SKILL.mdSave it as .claude/skills/gog-pamphlet/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
gog-pamphlet
description
Builds the printable pamphlet panels that go inside a GOG backup disc case — scrapes the store page, generates the QR badge, writes the per-title JSON and runs build_set.py to emit 483x629 SVG and PNG panels. Use this whenever the user gives a gog.com/en/game/... URL and wants a pamphlet, insert panels, or "the full flow" for a title; when they ask to rebuild, fix or restyle an existing title's panels; or when they mention AF/AB/BF/BB panels, the preservation certificate, or the production-history card. Also use it for batches of several GOG URLs at once. For case-insert artwork metadata alone (the disc case itself rather than the pamphlet), use gog-case-insert instead.

GOG backup pamphlet

The user prints a small pamphlet for each personal backup disc, styled as a modern reissue line. This skill turns a GOG store URL into finished print panels.

This is cosmetic dressing meant to make a shelf of burned discs look like a real product line. Don't agonise over near-equivalent legal entities or hedge every uncertainty — pick the most defensible option and say so in one line. But facts that get printed should be true: dates, ratings, DLC and company names are worth a minute of checking, because a wrong one is permanent once it's in the case.

Related: gog-case-insert covers the case artwork metadata. This skill reuses its QR script. Don't duplicate its job.

What gets built

Two cards, four panels, each 483 × 629 (127.79 × 166.42 mm at 96 dpi):

PanelContentWhen
<Title>_AFTitle, rating, copyright, publisher/developer, QR, logosalways
<Title>_ABRequirements, time to beat, genre/tags, languages, DLC, Notesalways
<Title>_BFPreservation certificate, GOG changelog, edition contentspreserved titles only
<Title>_BBProduction history, timeline, reception, creditspreserved titles only

Health & safety, warranty and "also available" are not per-title — the user has a separate stock print for those. Never add them here.

The flow

1. Locate the folder — never duplicate

Search the pipeline before creating anything:

bash
find . -ipath '*<title>*' -not -path '*/.*' | sort

Titles live in 0.1_Games in Progress/, 0.2_Ready for Print/, 0.4_Printed/ or 0.5_Archive/. If one already exists anywhere, work in it — many of these discs are already printed and the case insert is done. Only create 0.1_Games in Progress/<Title>/{Assets,For Print} for a genuinely new title.

Output goes to <title folder>/Pamphlet/, and build_set.py makes SVG/ and PNG/ inside it.

2. Scrape the store page

Open the URL in the browser, then wait and scroll before reading page text — the preservation badge, changelog and HowLongToBeat figures lazy-load and read as absent if you query straight after navigating. This has caused a wrong answer before.

navigate → wait 3s → scroll down 14 → wait 2-3s → javascript_exec

From window.productcardData.cardProduct take: id, title, publishers, developers, globalReleaseDate, gogReleaseDate, copyrights, esrbRating, pegiRating, features, size, localizations, supportedOperatingSystems, bonuses, and cardProductDlcs.

From document.body.innerText take: the preservation marker, "What improvements we made" changelog, "Time to beat", "Genre:/Tags:", and critic/user scores.

Keep each extraction under ~2,500 characters or it truncates mid-object. For a batch, chain several navigate → wait → scroll → js groups in one browser_batch call.

3. Decide preserved or not — this gates card B

A title is in the GOG Preservation Program when the page text contains "We made this game up to today's standards as part of GOG Preservation Program" (usually alongside "This game is 2026-ready" and "Windows 11 verified").

Test /GOG Preservation Program/i against the rendered text.

The "Good Old Game" tag is not the signal. Mad Max carries it; FFIX, Breath of Fire IV and both Witchers are all in the programme and none of them do. Going by the tag would have silently dropped card B from four titles.

Set "preserved": true|false in card2.json. A non-preserved build emits card A only and deletes any stale BF/BB from a previous run.

4. QR badge

Reuse the case-insert script. It needs the qrcode package, so make a venv in the scratchpad if there isn't one:

bash
python3 -m venv "$SP/venv" && "$SP/venv/bin/pip" -q install qrcode
"$SP/venv/bin/python" .claude/skills/gog-case-insert/scripts/generate_qr_badge.py \
  "<canonical url>" "<gog id>" "<Title folder>/Assets/<Title>_qr.svg" 31 45

Check for an existing QR first. Some titles carry an older bare-QR style with no ID header — regenerate as a badge and keep the old one as *_qr_old_bareQR.svg.

5. Logos

Check 0.3_Assets/Logos/Publishers-Developers/ before anything else — most major studios are covered. Ask before downloading any logo, naming the file, source and format. Say plainly when a defunct studio has no findable mark rather than inventing one. SVG and PNG/JPEG both work.

6. Publisher address

GOG has no address field. Look up the current registered or business address of the entity that actually holds the rights, and cite where it came from. Companies House, the French company registry, and a publisher's own imprint/legal-notice page are all good sources.

7. Production history — preserved titles only

Card B's back needs a real research pass: studio, engine, development story, release dates by region, what changed in later editions, reception, credits. Verify against Wikipedia or primary sources rather than recall — a plausible-sounding date that turns out wrong is worse than omitting it. Write 3 paragraphs, a dated timeline, a reception line and a credits line.

Show full SKILL.md (442 more words)Show less
8. Write the JSON and build

Per-title JSON lives in <title folder>/Assets/: <Title>_card1.json, _card2.json, and _card3.json for preserved titles. Field reference: references/per-title-json.md.

bash
python3 "0.3_Assets/Templates/scripts/build_set.py" \
  --title "<Title>" \
  --data   "<title folder>/Assets" \
  --assets "0.3_Assets" \
  --out    "<title folder>/Pamphlet"

--png-scale (default 4 → 1932×2516) and --no-png are available.

9. Check the output

The builder prints the lowest element on each panel and warns when anything drops below the 157.4 mm safe line. Treat that warning as a failure — fix it before showing the user. Then look at the rendered PNGs; the guard measures vertical position only, so it cannot see two elements colliding side by side.

Traps that have actually bitten

cardProductDlcs: [] does not mean no DLC. It's empty whenever the add-ons are folded into the base product. Sleeping Dogs returned [] and ships 24 extensions; Mad Max returned [] and ships ten. Check the store description, then ask the user.

A null esrbRating does not mean unrated. Septerra Core returns null for both boards but is ESRB Teen. Check esrb.org, and ask the user — they own the game. If the ESRB genuinely has no record (Look Outside), print the rating the user states but caption the block "Content rating" rather than claiming an ESRB rating.

Companies rename. GOG's publisher field is current; the copyright string is historical. Keep the copyright verbatim and use the present-day entity for the imprint, naming the original publisher in the copyright line. Anachronox, Vampyr and Septerra all needed this.

Key discs. Some releases hold a licence rather than an installer — inserting the disc calls the download from GOG's servers, like a Switch 2 Game-Key Card. Nothing in GOG's data reveals this, so ask when a title looks like a key release, and describe it in the DLC block.

Original vs re-release dates. globalReleaseDate is often the re-release. The certificate's "original release" should be the game's first release; check the copyright string, which frequently spans both years.

House style

Two typefaces and nothing else: Barlow Condensed for every title and label, Noto Sans for all running text. Black on white; the only colour comes from logos and the GOG seal.

Title bars carry the title and nothing else. A title with a colon splits — the main name at full size, the edition on a second line.

One consistent style across the whole collection — these are a modern reissue line, not period reproductions. Never propose 1990s pastiche, big-box or jewel-case treatments; that was considered and rejected.

Cards adapt to thin data: a minimum-only requirements table collapses to one column, a single language draws one column, missing HowLongToBeat figures drop the block, and the ruled Notes area shrinks to whatever space is left — disappearing entirely when bundled content needs the room. Bundled extras the user paid for outrank Notes.

© east35, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/Pamphlet of east35/GOG-Disc-Packager.

  • SKILL.md
  • per-title-json.md

Open the folder on GitHubat commit 09ca3db

Compare with similar skills

Gog Pamphlet next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Gog Pamphlet compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Gog Pamphlet this skilleast35/GOG-Disc-Packager121—~2.2kAutomated safety check: PassGPL-3.0
Tmuxtrpc-group/trpc-agent-go1.9k23 repos~868Automated safety check: PassApache-2.0
Ketch1broseidon/ketch7021 repos~3.9kAutomated safety check: PassMIT
Boss Zhipin Scrapereatmoreduck/boss-zhipin-scraper1.5k—~2.6kAutomated safety check: PassMIT
Crawl4AI Web Scrapingsmallnest/goclaw5991 repos~2.5kAutomated safety check: PassMIT
Axyusukebe/ax7191 repos~918Automated safety check: PassMIT

Similar skills

  • Tmux

    trpc-group/trpc-agent-go

    Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.

    1.9k GitHub starsUsed in 23 repos~868 tokens
    Data & AnalyticsAuto-check passed
  • Ketch

    1broseidon/ketch

    Research skill for ketch — a fast stateless CLI for web search, OSS code search, curated library docs, page scraping, and site crawling; an optional MCP server exists for operators who want it, but…

    702 GitHub starsUsed in 1 repo~3.9k tokens
    Data & AnalyticsAuto-check passed
  • Boss Zhipin Scraper

    eatmoreduck/boss-zhipin-scraper

    Scrape BOSS直聘 (job listing site) via Chrome CDP. An agent skill from eatmoreduck/boss-zhipin-scraper.

    1.5k GitHub stars~2.6k tokensUpdated today
    Data & AnalyticsAuto-check passed
  • Crawl4AI Web Scraping

    smallnest/goclaw

    Scrapes sites, handles JavaScript-heavy pages and extracts structured data with Crawl4AI, through its crwl CLI or Python SDK, including schema-based extraction without an LLM.

    599 GitHub starsUsed in 1 repo~2.5k tokens
    Data & AnalyticsAuto-check passed
  • Ax

    yusukebe/ax

    Use the ax CLI instead of curl + throwaway parsing scripts whenever you fetch a URL, explore an unknown web page, or extract structured data from HTML.

    719 GitHub starsUsed in 1 repo~918 tokens
    Data & AnalyticsAuto-check passed
  • Anakinscraper

    Anakin-Inc/anakin

    Scrape any website into clean markdown or structured JSON. An agent skill from Anakin-Inc/anakin.

    4.5k GitHub stars~859 tokensUpdated 1 mo ago
    Data & AnalyticsAuto-check passed

More from east35/GOG-Disc-Packager

  • Gog Case Insert

    east35/GOG-Disc-Packager

    Pulls case-insert metadata (GOG ID, QR code, recommended PC specs, copyright line, ESRB rating, publisher address, publisher/developer logos) for a GOG.com game page, for building personal…

    121 GitHub stars~2.2k tokensUpdated 15 days ago
    Auto-check passed

Questions about Gog Pamphlet

What does Gog Pamphlet do?

Builds the printable pamphlet panels that go inside a GOG backup disc case — scrapes the store page, generates the QR badge, writes the per-title JSON and runs buildset.py to emit 483x629 SVG and…. Gog Pamphlet is an agent skill from east35/GOG-Disc-Packager.py to emit 483x629 SVG and PNG panels.

When should I use Gog Pamphlet?

Gog Pamphlet fits situations like: gives a gog.com/en/game/.; batches of several GOG URLs at once.

How do I install Gog Pamphlet in Claude Code?

Run `npx skills add east35/GOG-Disc-Packager --skill gog-pamphlet -a claude-code`. Or copy the skill folder (skills/Pamphlet in east35/GOG-Disc-Packager) into .claude/skills/gog-pamphlet in your project. Claude Code loads it when a task matches its description.

How do I install Gog Pamphlet in Codex?

Run `npx skills add east35/GOG-Disc-Packager --skill gog-pamphlet -a codex`. Or copy the skill folder (skills/Pamphlet in east35/GOG-Disc-Packager) into .agents/skills/gog-pamphlet in your project. Codex loads it when a task matches its description.

Can I use Gog Pamphlet in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add east35/GOG-Disc-Packager --skill gog-pamphlet -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/gog-pamphlet, .gemini/skills/gog-pamphlet, .github/skills/gog-pamphlet and .opencode/skills/gog-pamphlet in your project.

What does Gog Pamphlet need to run?

Going by SKILL.md and its folder, Gog Pamphlet needs the command-line tools its instructions call (python3). Our summary lists: Python 3.

Does Gog Pamphlet access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Gog Pamphlet safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Gog Pamphlet use?

Gog Pamphlet is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Gog Pamphlet use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Gog Pamphlet?

Skills that share tags, products or a category with Gog Pamphlet: Tmux (trpc-group/trpc-agent-go, 1.9k stars), Ketch (1broseidon/ketch, 702 stars), Boss Zhipin Scraper (eatmoreduck/boss-zhipin-scraper, 1.5k stars) and Crawl4AI Web Scraping (smallnest/goclaw, 599 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Gog Pamphlet?

east35 (a GitHub user) maintains it in east35/GOG-Disc-Packager, which has 121 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on September 26, 2026.

Source: east35/GOG-Disc-Packager on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.