Web Application Testing
anthropics/skills
Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.
End-to-end skill that turns a single reference image into a published Gooseworks style — analyzes the image, drafts the slim style spec, renders a hero example plus 2-3 additional formats via…
$ npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install gooseworks-ai/goose-skills goose-graphics-create-style --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/design/composites/goose-graphics-create-style .claude/skills/goose-graphics-create-style && rm -rf skills-srcUse ~/.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/
Install the "goose-graphics-create-style" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-style into .claude/skills/goose-graphics-create-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "goose-graphics-create-style", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-styleType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install gooseworks-ai/goose-skills goose-graphics-create-style --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/design/composites/goose-graphics-create-style .agents/skills/goose-graphics-create-style && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "goose-graphics-create-style" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-style into .agents/skills/goose-graphics-create-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "goose-graphics-create-style", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install gooseworks-ai/goose-skills goose-graphics-create-style --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/design/composites/goose-graphics-create-style .cursor/skills/goose-graphics-create-style && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "goose-graphics-create-style" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-style into .cursor/skills/goose-graphics-create-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "goose-graphics-create-style", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/gooseworks-ai/goose-skills.git --path skills/design/composites/goose-graphics-create-style--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install gooseworks-ai/goose-skills goose-graphics-create-style --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/design/composites/goose-graphics-create-style .gemini/skills/goose-graphics-create-style && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "goose-graphics-create-style" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-style into .gemini/skills/goose-graphics-create-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "goose-graphics-create-style", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install gooseworks-ai/goose-skills goose-graphics-create-styleInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/design/composites/goose-graphics-create-style .github/skills/goose-graphics-create-style && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "goose-graphics-create-style" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-style into .github/skills/goose-graphics-create-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "goose-graphics-create-style", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install gooseworks-ai/goose-skills goose-graphics-create-style --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/gooseworks-ai/goose-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/design/composites/goose-graphics-create-style .opencode/skills/goose-graphics-create-style && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "goose-graphics-create-style" agent skill from https://github.com/gooseworks-ai/goose-skills/tree/main/skills/design/composites/goose-graphics-create-style into .opencode/skills/goose-graphics-create-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "goose-graphics-create-style", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
goose-graphics-create-styleEnd-to-end skill that turns a single reference image into a published Gooseworks style — analyzes the image, drafts the slim style spec, renders a hero example plus 2-3 additional formats via…
Goose Graphics Create Style is an agent skill from gooseworks-ai/goose-skills. End-to-end skill that turns a single reference image into a published Gooseworks style — analyzes the image, drafts the slim style spec, renders a hero example plus 2-3 additional formats via Playwright, writes the gooseworks-style.json manifest, and publishes via npx gooseworks styles publish so other agents can discover it. Mirrors goose-graphics-create-format but for styles.
Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `skill.meta.json`).
It sits in Testing & QA, covering Browser testing. It works with Playwright. The repository describes itself as: Library of Growth & GTM skills + data APIs for Claude Code, Codex, Cursor to run ads, social, content, lead gen, seo and data scraping. The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c650c6d. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
npxnpmnodeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
gooseworks.aiskills.gooseworks.aiFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Goose Graphics Create Style loads about 4.3k tokens when it runs. Until then it costs about 103 tokens; SKILL.md has 2,024 words of instructions outside code blocks.
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.
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.
The full file from gooseworks-ai/goose-skills at commit c650c6d, republished under its MIT licence (© gooseworks-ai). 2,024 words, ~4,311 tokens.
.claude/skills/goose-graphics-create-style/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Authors a new graphics style and publishes it to the central Gooseworks
library via npx gooseworks styles publish. The output is a working
directory with a gooseworks-style.json manifest plus a hero rendered
example and 2-3 additional examples that demonstrate the aesthetic flexing
across formats.
Use when the user has a reference image and wants the aesthetic available
as a reusable, discoverable style — so any future
/goose-graphics --style <slug> --format <any> call can render against it.
Always check first: run npx gooseworks styles list (or
npx gooseworks styles search "warm editorial") to see whether a
community-published style already covers the look. If one fits, just use
it via the regular goose-graphics flow.
goose-graphics skill must be installed in the same workspace —
this skill uses its screenshot/screenshot.js to render examples.
Install it by pasting this into your agent:Install gooseworks: https://gooseworks.ai/install.md including the goose-graphics skillnpx gooseworks@latest install --all --mcp --with goose-graphics.goose-graphics/screenshot/node_modules/ must exist). If not:cd <path-to>/goose-graphics/screenshot && npm install && npx playwright install chromiumnpx gooseworks login) for
publish to authenticate./goose-graphics-create-style --ref <image-path> [--name <slug>] [--mood <mood-group>]--ref <image-path> (required) — path to the reference image
(PNG/JPG/WebP).--name <slug> (optional) — desired style slug in lowercase-kebab-case
(e.g., pillow-block, neon-dashboard). If omitted, propose 2-3
candidate names after analyzing the image and ask the user to pick.--mood <mood-group> (optional) — which moodGroup the style belongs
to. One of: Dark & Moody, Light & Editorial, Organic & Warm,
Bold & Energetic, Retro & Cinematic, Structural & Technical,
Friendly Corporate. If omitted, infer from the image and confirm.If the user says "I want a new style for goose-graphics" without args, ask for the reference image path first, then proceed.
<working-dir>/
gooseworks-style.json # manifest (see "Manifest format" below)
poster.png # hero example (REQUIRED — exactly one with isHero: true)
carousel.png # additional examples (recommend 2-3 across formats)
infographic.png
...The backend rejects publish with an empty examples array or with no
hero — exactly one example must be marked isHero: true.
All examples are generated using the same brief used by the rest of the catalog, so users can compare styles apples-to-apples:
Brief:
5 Tips for Building a Startup in 2026Tips (use these verbatim, adapt phrasing per style voice):
- Ship fast, learn faster
- Build AI into the core
- Hire for leverage, not headcount
- Obsess over 10 users before 10,000
- Revenue beats runway
Always use this brief. Do not invent your own — it makes the catalog inconsistent.
Read the image with the Read tool (it supports PNG/JPG/WebP natively).
Work through this analysis checklist explicitly. Write the analysis out in plain text before moving on — do not skip ahead.
Palette — identify 3-6 dominant colors. For each, propose a hex value in the right family (you cannot extract exact hex; pick well-balanced values). Classify each by role: background/canvas, primary surface, accent, secondary accent, text, muted text, borders/dividers, any neon/highlight color.
Typography — heading face (serif / sans / slab / mono), body face (same or different family), weight range, tracking (negative / normal / positive), line-height (tight / generous), overall feel (geometric / humanist / elegant / technical / rounded / condensed). Map to a Google Fonts equivalent (Inter, Fraunces, Playfair Display, Space Grotesk, IBM Plex Mono, etc.).
Layout & shape language — corner radius (sharp / 12px / 28px squircle / pill / circle), borders (yes / no), shadows (yes / no / subtle), tile density, alignment, whether elements overlap.
Signature visual moves — what makes this style THIS style? Examples: "pillowy 28px squircle tiles with hero numerals bottom-right", "blush canvas + oversized black serif money stats", "dark jewel surfaces + neon pink pill labels". Lead with these — they differentiate the style across formats.
Mood / category — dark/light, calm/loud, premium/playful. Use this
to pick the moodGroup if not provided.
Critical separation of concerns: A style is an aesthetic SYSTEM (palette + typography + signature visual moves) that flexes across all formats. It is NOT a fixed composition. If your analysis describes "5 cards in a bento grid" or "3 vertical insight cards," you are mixing format into style. Re-frame in terms of palette, typography, and signature visual moves that any format can adopt.
If --name was provided, use it. Otherwise propose 2-3 candidates derived
from the signature moves (e.g. pillow-block, pastel-ledger,
neon-dashboard) and ask the user to pick. Slug must be
lowercase-kebab-case ([a-z0-9-]+).
Collision check: run npx gooseworks styles get <slug> — if the
catalog returns a hit, the slug is taken. Suggest an alternative.
(The user may omit slug from the manifest; the backend auto-generates
one. On 409 the CLI prompts you to accept the server's suggested slug;
pass --yes at publish time to auto-accept.)
If --mood was provided, use it. Otherwise pick the best fit from the
seven moodGroup values (see §Invocation) and confirm.
This becomes the designMd field of the manifest in step 5. Hold it in
memory; do not write it to disk until step 5 packages it into the
manifest. Mirror the structure of canonical slim specs (e.g.
dot-grid-stat, pillow-block, blush-annual, neon-dashboard) — fetch
one as a reference if unsure of the shape:
npx gooseworks styles get dot-grid-statRequired sections, in this order:
## Palette — markdown table with Hex | Role columns. Include
semi-transparent variants (rgba(...)) where the style uses them.## Typography — Google Fonts <link> block, font CSS variable
lines, then a type table with columns Role | Font | Size | Weight | Line-height | Tracking. Include rows for hero, display, body, label,
caption, brand. End with a Principles sub-list (3-5 bullets).## Layout — bullet list. Must include a "Format padding" line
listing per-format padding
(carousel/infographic/slides/poster/story/chart/tweet). Then 4-6
aesthetic-principle bullets.## Do / Don't — two sub-lists, 5 bullets each.## CSS snippets — :root variables block, then 1-2
ready-to-paste HTML snippets demonstrating the signature move
(e.g. a hero tile, a card, a CTA pill).Keep it under ~200 lines / 8KB. Aesthetic-only — no fixed compositions. Minimum length is 50 chars (the manifest validator's floor); the sweet spot for the catalog is 2000-6000 chars.
Pick a hero format (the one example that best showcases the aesthetic), plus 2-3 additional formats so the catalog tile shows variety. Hero priority order:
poster > carousel > infographic > slides > chart > story > tweeti.e. start at poster and walk down until you hit a format that fits the
aesthetic well.
For each example, generate HTML at the format's exact dimensions using the slim spec's palette, fonts, and signature visual moves, and the standard brief above. Format dimensions:
| Format | Dimensions | Notes |
|---|---|---|
| poster | 1080×1350 portrait | Hero composition with all 5 tips |
| infographic | 1080×variable | Tall vertical, 5 tip sections stacked |
| carousel | 1080×1080 | Single representative cover slide |
| slides | 1920×1080 | Single representative widescreen slide |
| story | 1080×1920 vertical | Single representative story slide |
| chart | 1080×1080 | Bar / line / block chart of stats from the 5 tips |
| tweet | 1080×1080 | Testimonial card on decorative background, NOT a poster |
Critical: the tweet format is a simulated tweet/testimonial card centered on a decorative background styled with the new aesthetic — not a poster. Background uses the new style's palette/shapes; the centered card looks like a real social-media post (avatar, display name, handle, body, timestamp, engagement metrics).
HTML rules (apply to every example):
<style> block + Google Fonts
<link>.vw/vh/%/rem/em/clamp().html, body { width: Xpx; height: Ypx; overflow: hidden; }. Infographic
is the exception: width fixed, height grows.Render each via the screenshot tool, writing PNGs directly into the working directory (one PNG per format, named after the format slug):
node <path-to>/goose-graphics/screenshot/screenshot.js \
--format <format> \
--input <path-to-html> \
--output <working-dir>/<format>.png \
--font-delay 1500Single-file vs directory input: carousel, slides, and story are
"multi-file" formats by default — if --input is a directory, the tool
renders every .html file inside it to numbered slide-NN.png files in
the --output directory. For the single representative slide we want
here, pass a single .html file as --input and a single PNG path as
--output — the tool detects the file input and writes one PNG. The
other formats (poster, infographic, chart, tweet) are always single-file.
Common failure modes:
--font-delay to 2000.gooseworks-style.jsonMatch the shape documented in goose-graphics/SKILL.md §17.1. Required:
{
"name": "Desert Sunset",
"slug": "desert-sunset",
"description": "Warm dusk gradients with rust and amber on cream paper. Editorial serif headlines paired with a single sans-serif accent. Built for DTC beauty product launches, lifestyle long-form, and event posters where you want a confident, sun-soaked, high-end magazine feel.",
"designMd": "# Desert Sunset\n\n…full slim spec markdown from step 3 — palette table, typography table, layout rules, do/don'ts, CSS snippets…",
"moodGroup": "Organic & Warm",
"tags": ["warm", "desert", "editorial", "serif", "dtc"],
"palette": [
{ "hex": "#E06A2C", "role": "primary" },
{ "hex": "#3A1F1A", "role": "ink" },
{ "hex": "#F5EFE7", "role": "paper" }
],
"examples": [
{ "format": "poster", "isHero": true, "file": "./poster.png", "caption": "Hero render" },
{ "format": "carousel", "file": "./carousel.png" },
{ "format": "story", "file": "./story.png" }
]
}Constraints to respect:
name: 1-120 charsslug: optional kebab-case [a-z0-9-]+; backend auto-generates if
absent. A 409 collision returns a server-suggested slug — the CLI
handles the retry.description: 20-1000 chars (required). See guidelines below.designMd: minimum 50 chars (required) — the spec from step 3.moodGroup: optional; one of the seven values listed in §Invocation.tags: array of 3-10 lowercase strings. See guidelines below.palette: array of { hex: "#RRGGBB", role?: string }.examples: array, minimum 1 entry, exactly one with
isHero: true.examples[].format: slug of an existing graphics format
(any from npx gooseworks formats list).examples[].file: relative path to the PNG in the working directory.Read 2-3 of the rendered PNGs (the hero plus the most distinct two) and visually verify:
If anything looks off, fix the HTML and re-render. Don't ship broken examples.
cd <working-dir>
npx gooseworks styles publishThe CLI reads gooseworks-style.json, validates it client-side, uploads
the manifest plus the example PNGs, and registers the style in the
catalog.
Slug-collision UX: if the slug is taken, the CLI prompts
Slug 'X' is taken. Use 'Y' instead? with the server's suggestion. Pass
--yes to auto-accept (useful for scripted runs):
npx gooseworks styles publish --yesSuccess output:
Published style: <slug>
https://skills.gooseworks.ai/styles/<slug>Exit codes: 0 success, 1 transient/auth (network, 401, 5xx), 2
user error (400 validation, 403 not owner, 413 file too large, declined
409).
Amending a published style later:
npx gooseworks styles update <slug>Same manifest format; no slug-collision retry (the slug is locked).
Tell the user:
/goose-graphics --style <slug> --format <format> --brief "...".The description is what makes the style discoverable by AI agents searching the catalog. Treat it as a search index, not flavor text.
3-10 lowercase tags. Cover:
warm, dark, energetic, calmsparse, densecorporate, editorial, playfulmid-century, y2k, retrosaas, dtc, beauty, financeSkip tags that just restate the slug.
npx gooseworks styles get dot-grid-stat,
npx gooseworks styles get pillow-block,
npx gooseworks styles get blush-annual,
npx gooseworks styles get neon-dashboard.goose-graphics/screenshot/screenshot.js is the rendering pipeline; it
sets format-specific viewport and capture mode.npx gooseworks formats get <format> returns each format's spec and
content limits — fetch the relevant one if you're unsure how a format
should behave.isHero: true entry.npx gooseworks styles list first —
if the look already exists in the catalog, point the user at it instead
of publishing a duplicate.© gooseworks-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in skills/design/composites/goose-graphics-create-style of gooseworks-ai/goose-skills.
Open the folder on GitHubat commit c650c6d
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in gooseworks-ai/goose-skills, which our catalogue first saw on October 7, 2026.
Goose Graphics Create Style 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Goose Graphics Create Style this skillgooseworks-ai/goose-skills | 1.2k | 1 repos | ~4.3k | Automated safety check: Pass | MIT | |
| Web Application Testinganthropics/skills | 180k | 51 repos | ~966 | Automated safety check: Pass | Apache-2.0 | |
| Playwright CLIsanity-io/sanity | 6.4k | 18 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Write and Verify Playwright Testsappsmithorg/appsmith | 41k | — | ~2.9k | Automated safety check: Notes | Apache-2.0 | |
| playwright-cli Browser Automationgithub/gh-aw | 5.4k | 25 repos | ~2.8k | Automated safety check: Pass | MIT | |
| Cucumber and Playwright E2E Testslanggenius/dify | 158k | — | ~682 | Automated safety check: Pass | Custom licence |
anthropics/skills
Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.
sanity-io/sanity
Automates browser interactions for web testing, form filling, screenshots, and data extraction.
appsmithorg/appsmith
Writes a Playwright end-to-end test from a prompt, runs it against a live Appsmith deployment and retries with fixes up to three times until it passes.
github/gh-aw
Drives a real browser from the command line with playwright-cli to open pages, interact, mock requests, save state and work with Playwright tests.
langgenius/dify
Guides changes and reviews of the Cucumber and Playwright end-to-end suite under `e2e/`: feature files, step definitions, support code, tags, locators and assertions.
langflow-ai/langflow
Write and review Playwright E2E tests for Langflow. An agent skill from langflow-ai/langflow.
gooseworks-ai/goose-skills
Scrape and search Reddit posts using Apify. An agent skill from gooseworks-ai/goose-skills.
gooseworks-ai/goose-skills
Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent.
gooseworks-ai/goose-skills
Replace an existing video's opening with a supplied clip or free kinetic text hook while retaining and verifying every original body frame, audio, captions and ending.
gooseworks-ai/goose-skills
Scrape blog posts via RSS feeds (free, no API key) with Apify fallback for JS-heavy sites.
gooseworks-ai/goose-skills
Find leads by scraping engagers from a competitor's top LinkedIn posts.
gooseworks-ai/goose-skills
Assemble a ChatGPT chat-reveal video ad from a thread + timeline JSON — one continuous Playwright recording of a ChatGPT mobile chat (user types with the iOS keyboard up → taps send → keyboard…
Works with
Categories
End-to-end skill that turns a single reference image into a published Gooseworks style — analyzes the image, drafts the slim style spec, renders a hero example plus 2-3 additional formats via…. Goose Graphics Create Style is an agent skill from gooseworks-ai/goose-skills.json manifest, and publishes via npx gooseworks styles publish so other agents can discover it.
Goose Graphics Create Style fits situations like: tasks that involve Browser testing.
Run `npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a claude-code`. Or copy the skill folder (skills/design/composites/goose-graphics-create-style in gooseworks-ai/goose-skills) into .claude/skills/goose-graphics-create-style in your project. Claude Code loads it when a task matches its description.
Run `npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a codex`. Or copy the skill folder (skills/design/composites/goose-graphics-create-style in gooseworks-ai/goose-skills) into .agents/skills/goose-graphics-create-style in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gooseworks-ai/goose-skills --skill goose-graphics-create-style -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/goose-graphics-create-style, .gemini/skills/goose-graphics-create-style, .github/skills/goose-graphics-create-style and .opencode/skills/goose-graphics-create-style in your project.
Going by SKILL.md and its folder, Goose Graphics Create Style needs the command-line tools its instructions call (npx, npm and node). Our summary lists: Node.js.
SKILL.md names 2 domains. In commands or code: gooseworks.ai and skills.gooseworks.ai; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
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.
Goose Graphics Create Style is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Goose Graphics Create Style: Web Application Testing (anthropics/skills, 180k stars), Playwright CLI (sanity-io/sanity, 6.4k stars), Write and Verify Playwright Tests (appsmithorg/appsmith, 41k stars) and playwright-cli Browser Automation (github/gh-aw, 5.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
gooseworks-ai (a GitHub organization) maintains it in gooseworks-ai/goose-skills, which has 1,240 GitHub stars. The repository holds 273 skills in this directory. The repository was last updated on October 8, 2026.
Source: gooseworks-ai/goose-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.