Agent skill

Museum Art

by huytieu in huytieu/COG-second-brain

Source authentic, high-res PUBLIC-DOMAIN artwork from museum open-access APIs (Met, Cleveland, SMK, Rijksmuseum, NGA, Art Institute of Chicago, Getty, Smithsonian) instead of AI-generated or…

MITAuto-check passedMedia & Creative

Install Museum Art

skills CLI
$ npx skills add huytieu/COG-second-brain --skill museum-art -a claude-code

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

GitHub CLI
$ gh skill install huytieu/COG-second-brain museum-art --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/huytieu/COG-second-brain.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/museum-art .claude/skills/museum-art && 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
museum-art
GitHub stars
1.3k
Token cost
~2.6k tokens
SKILL.md length
1,106 words
Files
10 (incl. references)
Skills in repo
37
Repo updated
First seen
Licence
MIT

At a glance

Source authentic, high-res PUBLIC-DOMAIN artwork from museum open-access APIs (Met, Cleveland, SMK, Rijksmuseum, NGA, Art Institute of Chicago, Getty, Smithsonian) instead of AI-generated or…

  • Works in 7 steps: The Met - best all-around default → Cleveland Museum of Art - only one with… → SMK (Denmark) - one-hop, broad… → …
  • Tasks that involve Social media graphics
  • SKILL.md covers When to reach for this, Decision: which source, How to fetch in THIS environment and Freshness over caching…, plus 5 more sections
  • Reaches collectionapi.metmuseum.org and openaccess-api.clevelandart.org; needs DEMO_KEY

What it does

Museum Art is an agent skill from huytieu/COG-second-brain. Source authentic, high-res PUBLIC-DOMAIN artwork from museum open-access APIs (Met, Cleveland, SMK, Rijksmuseum, NGA, Art Institute of Chicago, Getty, Smithsonian) instead of AI-generated or generic-stock imagery. The default move whenever a visual needs an aesthetic, credible image (blog heroes, decks, social cards, essay/spec figures). Verified keyless recipes + licensing rules inside.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files, including reference files (for example `references/_synthesis.md`, `references/artic.md` and `references/cleveland.md`).

It sits in Media & Creative, covering Social media graphics. The repository describes itself as: Self-evolving second brain with 35 AI skills, 10 agents, and people CRM. Closed-loop harness: a V-model verification lifecycle where the worker never grades its own homework… The licence is MIT.

When your agent uses it

  • Tasks that involve Social media graphics

Example prompts

  • “/museum-art”

Requirements

  • A credential in DEMO_KEY

Workflow steps

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

  1. The Met - best all-around default
  2. Cleveland Museum of Art - only one with archival TIFF
  3. SMK (Denmark) - one-hop, broad European/Nordic
  4. Rijksmuseum - Dutch/Flemish masters (keyless, 3 hops)
  5. NGA (Washington) - bulk/offline, no live search
  6. Art Institute of Chicago - Impressionism/European (image host caveat)
  7. Getty - European painting/photography/antiquities (SPARQL)

What it can do on your machine

Read from SKILL.md and the folder at commit 36ac9d7. 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

    No scripts in the folder and no shell commands in SKILL.md.

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • collectionapi.metmuseum.org
    • openaccess-api.clevelandart.org
    • api.smk.dk
    • data.rijksmuseum.nl
    • raw.githubusercontent.com
    • api.nga.gov
    • api.artic.edu
    • artic.edu
    • data.getty.edu
    • api.si.edu
    • commons.wikimedia.org
    • api.wellcomecollection.org
    • archive.org
    • api.europeana.eu
    • api.harvardartmuseums.org

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

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • DEMO_KEY

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

Context cost

Museum Art loads about 2.6k tokens when it runs, and up to ~20k if it reads all its reference files. Until then it costs about 100 tokens; SKILL.md has 1,106 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~100
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~20k

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 huytieu/COG-second-brain at commit 36ac9d7, republished under its MIT licence (© huytieu). 1,106 words, ~2,619 tokens.

Download SKILL.mdSave it as .claude/skills/museum-art/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
museum-art
description
Source authentic, high-res PUBLIC-DOMAIN artwork from museum open-access APIs (Met, Cleveland, SMK, Rijksmuseum, NGA, Art Institute of Chicago, Getty, Smithsonian) instead of AI-generated or generic-stock imagery. The default move whenever a visual needs an aesthetic, credible image (blog heroes, decks, social cards, essay/spec figures). Verified keyless recipes + licensing rules inside.

museum-art: Public-Domain Artwork for Visuals

Standing rule (adopted 2026-07-24, from Eric Li's post on museum open-access): whenever a visual needs a real image with aesthetic weight, source public-domain museum artwork first - over AI-generated imagery and over generic stock. Curated, historically significant art reads as credible and sophisticated; AI-gen reads as slop. This stacks with, and reinforces, the no-ai-slop skill and your house image style. It does NOT replace the generative editorial-illustrations skill (that owns claim-driven diagrams/figures) or your house chart style - use museum art for photographic/hero/decorative/mood imagery, generative figures for data and concept diagrams.

When to reach for this

  • Blog post hero images, section breaks, mood imagery (the blog-publish image step).
  • Deck/slide backgrounds and section dividers, social cards, essay figures, spec cover art.
  • Any time the instinct is "generate an image" for something decorative or evocative. Stop and pull a real painting instead.
  • NOT for: product screenshots, UI mockups, data charts, logos, or claim-driven explanatory diagrams (those are editorial-illustrations / real captures).

Decision: which source

  1. Met -> Cleveland -> SMK first. All keyless, one JSON hop, CC0/PD, broad collections. Fastest path to a hi-res image.
  2. Need Dutch/Flemish masters or decorative arts? Rijksmuseum (keyless, 3 hops).
  3. Need European antiquities/photography and keyword isn't essential? Getty (keyless, SPARQL).
  4. Nothing fits, or you want a cross-museum search? Wikimedia Commons API (keyless aggregator, normalized license metadata) is the best general fallback.
  5. "Historical illustration/engraving/old photo" rather than fine-art painting? Go straight to Internet Archive or Wikimedia Commons.
  6. Science/health/medical essay figure? Wellcome Collection (keyless, CC0/PD).

How to fetch in THIS environment

  • Use WebFetch to hit the JSON search endpoint, then WebFetch/download the returned image URL. These APIs are server-side reachable; no browser needed.
  • Exception - Art Institute of Chicago images: the JSON API (api.artic.edu) is fine, but the image host www.artic.edu/iiif/... 403s scripted/curl fetches via a Cloudflare bot challenge. Use the JSON metadata from AIC, but download the actual image through a real/headless browser (browser-harness) or prefer a different museum for the image bytes.
  • Always filter for public domain in the query AND spot-check the per-image license flag before shipping (see Licensing).

Freshness over caching (mandatory)

Fetch fresh per need. Do NOT build a reusable local pool of downloaded images to draw from. A small cached set gets reused everywhere and becomes the new "same stock photo on every post" - sameness is a form of slop, and the variety of a huge open collection is the entire point. Fetching is keyless and sub-second, so there is no cost reason to cache pixels.

  • Cache recipes/metadata, not images - that is what this skill's references/ already are.
  • Commit an image only into the specific artifact that uses it (a post's assets/, a deck's media) once chosen - for provenance and offline builds. That is an artifact asset, never a shared library other artifacts pull from.
  • Each new visual = a fresh query. Vary the search terms and the source museum so consecutive posts do not converge on the same few crowd-pleasers.

Verified keyless recipes (2026-07-24, all live-tested)

1. The Met - best all-around default
  • Base: https://collectionapi.metmuseum.org/public/collection/v1/ - no key, 80 req/s, CC0 where isPublicDomain:true.
  • Search: GET /search?q=<term>&hasImages=true&isPublicDomain=true -> {total, objectIDs[]}
  • Object: GET /objects/{id} -> read primaryImage (full-res JPEG, static, no IIIF hop) or primaryImageSmall (web-large).
  • Example: https://collectionapi.metmuseum.org/public/collection/v1/search?q=sunflowers&hasImages=true&isPublicDomain=true
2. Cleveland Museum of Art - only one with archival TIFF
  • Base: https://openaccess-api.clevelandart.org/api/artworks/ - no key, CC0.
  • Search: GET /api/artworks/?cc0=1&has_image=1&limit=10 (add &q=monet, &skip=10).
  • Image fields on each result: images.web.url (900px), images.print.url (3400px JPEG), images.full.url (archival TIFF). Directly downloadable from openaccess-cdn.clevelandart.org.
  • Confirm share_license_status == "CC0" per result.
3. SMK (Denmark) - one-hop, broad European/Nordic
  • Base: https://api.smk.dk/api/v1 - no key. License: Public Domain Mark 1.0 (functionally CC0).
  • Search: GET /art/search?keys=*&filters=[public_domain:true]&filters=[has_image:true]
  • Read image_native directly from each result (no chain).
  • Gotcha (verified): pass filters as a repeated query param, one [field:value] bracket each. Concatenating filters=[public_domain:true][has_image:true] returns 200 but silently ignores the second condition.
4. Rijksmuseum - Dutch/Flemish masters (keyless, 3 hops)
  • Base: https://data.rijksmuseum.nl/search/collection (Linked Art, no key).
  • GET /search/collection?type=painting&imageAvailable=true -> walk object -> VisualItem -> DigitalObject -> access_point[0].id is a ready IIIF URL.
  • Mixed license: mostly CC0/PD but some CC BY 4.0 - check the per-object rights block (a CC BY item requires attribution).
Show full SKILL.md (434 more words)Show less
  • CSV: https://raw.githubusercontent.com/NationalGalleryOfArt/opendata/main/data/published_images.csv - filter openaccess=1.
  • Image (IIIF): https://api.nga.gov/iiif/{uuid}/full/full/0/default.jpg
  • Per-image openaccess=0 rows are NOT open (resolution-capped, rights-restricted). Only openaccess=1 is free.
6. Art Institute of Chicago - Impressionism/European (image host caveat)
  • JSON: GET https://api.artic.edu/api/v1/artworks/search?query[term][is_public_domain]=true&fields=id,title,image_id - no key, CC0.
  • Image: build https://www.artic.edu/iiif/2/{image_id}/full/843,/0/default.jpg - but Cloudflare 403s scripted fetches; download via browser or use another museum for bytes.
7. Getty - European painting/photography/antiquities (SPARQL)
  • Base: https://data.getty.edu/museum/collection/ - no key. No keyword search; use SPARQL with ?obj crm:P138i_has_representation ?img which returns a ready IIIF image URL in the same query.
  • Dataset is CC0; per-image rights inconsistently populated - cross-check the object's public getty.edu page (a "Download" button flags true Open Content) before commercial use.

Key-gated + aggregator sources (know these too)

  • Smithsonian (needs free api.data.gov key; DEMO_KEY works at 30 req/hr): GET https://api.si.edu/openaccess/api/v1.0/search?q=<term> AND online_media_type:Images&api_key=KEY; CC0; check media[].usage.access=="CC0" per image. Extremely broad (SAAM, NPG portraits, Freer/Sackler Asian, Cooper Hewitt design).
  • Wikimedia Commons (keyless, best aggregator fallback): https://commons.wikimedia.org/w/api.php?action=query&generator=search&gsrsearch=<term>&gsrnamespace=6&prop=imageinfo&iiprop=url|extmetadata; license per file in extmetadata.LicenseShortName; raw bytes via Special:FilePath/{filename}.
  • Wellcome Collection (keyless): https://api.wellcomecollection.org/catalogue/v2/works?query=<term>; CC0/PD medical/scientific/historical imagery.
  • Internet Archive (keyless): https://archive.org/advancedsearch.php?q=<term>&fl[]=identifier&output=json; PD book illustrations, engravings, historical photos, ephemera.
  • Europeana (free key): https://api.europeana.eu/record/v2/search.json?wskey=<KEY>&query=<term>; 50M+ items across European institutions.
  • Harvard Art Museums (free key): https://api.harvardartmuseums.org/object?apikey=<KEY>&q=<term>.
  • Yale LUX (keyless, Linked Art like Getty): https://lux.collections.yale.edu/api/search/...; strong British art + rare books.
  • Paris Musees (keyless, explicit CC0): parismuseescollections.paris.fr / opendata.paris.fr; French painting/decorative arts.
  • NYPL Digital Collections (free key): https://api.repository.library.nyc/...; PD prints, maps, photos, illustrations.
  • DPLA (free key): https://api.dp.la/v2/items?q=<term>&api_key=<KEY>; federated US collections.

Licensing rules (apply before shipping any image)

  • True CC0 (no attribution required): Met, Cleveland, Art Institute of Chicago, Smithsonian, NGA (dataset-level; image gated by per-image openaccess=1).
  • Public Domain Mark / open-but-not-CC0 (free to use, credit requested not required): SMK, and the PD subset of Rijksmuseum.
  • Verify per-image, do NOT blanket-trust collection-level "open access": Getty, Rijksmuseum (CC BY items require attribution), NGA and Smithsonian per-image flags.
  • Rule: when the API exposes a rights/license field, filter on it in the query AND spot-check it on the chosen image. Never assume "the collection is open access" implies "this specific image is."
  • Good practice everywhere: a one-line credit ("Digital image courtesy of [Museum]") costs nothing and covers mixed-license collections. When masking/compositing per house style, keep the credit.

Relationship to other skills

  • Stacks with no-ai-slop and the house image style: real museum art is the anti-slop default for evocative imagery.
  • Complements editorial-illustrations (generative claim-driven diagrams) and dataviz (charts) - those own explanatory graphics; this owns photographic/artwork/mood imagery.
  • Feeds blog-publish, social-media-kit, weekly-ai-slide, deck and essay work at their image-sourcing step.

References (full per-museum recipes, verified)

references/_synthesis.md (cheat-sheet) + one file per museum (met.md, cleveland.md, smk.md, rijksmuseum.md, nga.md, artic.md, getty.md, smithsonian.md) with live-tested example URLs, field maps, and gotchas.

© huytieu, MIT. 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 9 other files (references) in skills/museum-art of huytieu/COG-second-brain.

  • SKILL.md
  • references/_synthesis.md
  • references/artic.md
  • references/cleveland.md
  • references/getty.md
  • references/met.md
  • references/nga.md
  • references/rijksmuseum.md
  • references/smithsonian.md
  • references/smk.md

Open the folder on GitHubat commit 36ac9d7

Compare with similar skills

Museum Art 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.

Museum Art compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Museum Art this skillhuytieu/COG-second-brain1.3k—~2.6kAutomated safety check: PassMIT
Brand and Design Toolkitnextlevelbuilder/ui-ux-pro-max-skill135k1 repos~3.5kAutomated safety check: PassMIT
Slack GIF Creatoranthropics/skills180k29 repos~2kAutomated safety check: PassApache-2.0
Guizang Social Cardsop7418/guizang-social-card-skill7.4k1 repos~7.8kAutomated safety check: PassAGPL-3.0
Video Cover Imageitwanger/toBeBetterJavaer18k—~3.3kAutomated safety check: PassNone
Ccfddl X Postsccfddl/ccf-deadlines9.4k—~5.6kAutomated safety check: PassMIT

Similar skills

  • Brand and Design Toolkit

    nextlevelbuilder/ui-ux-pro-max-skill

    Bundles design tasks behind one skill: brand identity, tokens, UI styling, logos, corporate identity mockups, slides, banners, icons and social images.

    135k GitHub starsUsed in 1 repo~3.5k tokens
    Media & CreativeAuto-check passed
  • Slack GIF Creator

    anthropics/skills

    Official

    Provides Slack size and frame limits, Python animation helpers and validators for building animated GIFs sized for emoji and messages.

    180k GitHub starsUsed in 29 repos~2k tokens
    Media & CreativeAuto-check passed
  • Guizang Social Cards

    op7418/guizang-social-card-skill

    Produces social card sets for Xiaohongshu and WeChat: carousels, Live Photo motion cards and puzzle layouts, and WeChat cover pairs, rendered from single-file HTML.

    7.4k GitHub starsUsed in 1 repo~7.8k tokens
    Media & CreativeAuto-check passed
  • Video Cover Image

    itwanger/toBeBetterJavaer

    Generate matched 3:4, 16:9, and 4:3 short-video cover images from toBeBetterJavaer video scripts or AI/Java technical topics.

    18k GitHub stars~3.3k tokensUpdated yesterday
    Media & CreativeAuto-check passed
  • Ccfddl X Posts

    ccfddl/ccf-deadlines

    Prepare and, with a verified authenticated publishing route and authorization, publish daily conference-deadline countdown posts for @ccfddl on X/Twitter.

    9.4k GitHub stars~5.6k tokensUpdated today
    Media & CreativeAuto-check passed
  • Web Asset Generator

    alonw0/web-asset-generator

    Generate web assets including favicons, app icons (PWA), and social media meta images (Open Graph) for Facebook, Twitter, WhatsApp, and LinkedIn.

    514 GitHub starsUsed in 1 repo~6.6k tokens
    Media & CreativeAuto-check passed

More from huytieu/COG-second-brain

All 37 skills in this repo
  • Voice Baseline

    huytieu/COG-second-brain

    Measure your own writing corpus for the words and sentence shapes you over-use, so an agent writing in your voice stops amplifying your tics into a style.

    1.3k GitHub stars~957 tokensUpdated 8 days ago
    Auto-check passed
  • Daily Journal

    huytieu/COG-second-brain

    A passive daily work journal that Claude keeps FOR you so you never have to write it yourself.

    1.3k GitHub stars~1.3k tokensUpdated 8 days ago
    Auto-check passed
  • Editorial Illustrations

    huytieu/COG-second-brain

    Generate meaning-carrying editorial data-illustrations in the monotykamary / Linear aesthetic (near-black grayscale, Inter display + mono labels, hairline framed figures) with a single coral accent.

    1.3k GitHub stars~2.4k tokensUpdated 8 days ago
    Auto-check passed
  • Loop Engineering

    huytieu/COG-second-brain

    Shared loop-engineering reference for COG skills - the agent loop, deterministic verifiers, termination conditions, in-loop context management, and named patterns.

    1.3k GitHub stars~1.5k tokensUpdated 8 days ago
    Auto-check passed
  • Release Video

    huytieu/COG-second-brain

    Turn a product release (the list of shipped items plus real screen recordings) into a motion recap video and one explained demo per feature, with sound effects tied to on-screen motion and a…

    1.3k GitHub stars~1.7k tokensUpdated 8 days ago
    Auto-check passed
  • Onboarding

    huytieu/COG-second-brain

    Personalize COG for your workflow - creates profile, interests, and watchlist files with guided setup (run this first!)

    1.3k GitHub starsUsed in 1 repo~3.1k tokens
    Auto-check passed

Questions about Museum Art

What does Museum Art do?

Source authentic, high-res PUBLIC-DOMAIN artwork from museum open-access APIs (Met, Cleveland, SMK, Rijksmuseum, NGA, Art Institute of Chicago, Getty, Smithsonian) instead of AI-generated or…. Museum Art is an agent skill from huytieu/COG-second-brain. Source authentic, high-res PUBLIC-DOMAIN artwork from museum open-access APIs (Met, Cleveland, SMK, Rijksmuseum, NGA, Art Institute of Chicago, Getty, Smithsonian) instead of AI-generated or generic-stock imagery.

When should I use Museum Art?

Museum Art fits situations like: tasks that involve Social media graphics.

How do I install Museum Art in Claude Code?

Run `npx skills add huytieu/COG-second-brain --skill museum-art -a claude-code`. Or copy the skill folder (skills/museum-art in huytieu/COG-second-brain) into .claude/skills/museum-art in your project. Claude Code loads it when a task matches its description.

How do I install Museum Art in Codex?

Run `npx skills add huytieu/COG-second-brain --skill museum-art -a codex`. Or copy the skill folder (skills/museum-art in huytieu/COG-second-brain) into .agents/skills/museum-art in your project. Codex loads it when a task matches its description.

Can I use Museum Art 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 huytieu/COG-second-brain --skill museum-art -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/museum-art, .gemini/skills/museum-art, .github/skills/museum-art and .opencode/skills/museum-art in your project.

What does Museum Art need to run?

Going by SKILL.md and its folder, Museum Art needs credentials named DEMO_KEY. Our summary lists: A credential in DEMO_KEY.

Does Museum Art access the network?

SKILL.md names 15 domains. In commands or code: collectionapi.metmuseum.org, openaccess-api.clevelandart.org, api.smk.dk, data.rijksmuseum.nl, raw.githubusercontent.com, api.nga.gov, api.artic.edu, artic.edu, data.getty.edu, api.si.edu, commons.wikimedia.org, api.wellcomecollection.org, archive.org, api.europeana.eu and api.harvardartmuseums.org; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Museum Art 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 Museum Art use?

Museum Art is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Museum Art use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 17k tokens, read only when the agent opens those files.

What are the alternatives to Museum Art?

Skills that share tags, products or a category with Museum Art: Brand and Design Toolkit (nextlevelbuilder/ui-ux-pro-max-skill, 135k stars), Slack GIF Creator (anthropics/skills, 180k stars), Guizang Social Cards (op7418/guizang-social-card-skill, 7.4k stars) and Video Cover Image (itwanger/toBeBetterJavaer, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Museum Art?

huytieu (a GitHub user) maintains it in huytieu/COG-second-brain, which has 1,268 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on October 2, 2026.

Source: huytieu/COG-second-brain on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.