copywriting is a skill in coreyhaines31/marketingskills, last changed 27 Oct 2026. It can name web addresses.
When the user wants to write, rewrite, or improve marketing copy for any page, including homepage, landing pages, pricing pages, feature pages, about pages, or product pages. Also use when the user says "write copy for," "improve this copy," "rewrite this page," "marketing copy," "headline help," "CTA copy," "value proposition," "tagline," "hero section copy," "this copy is weak," "this sounds like AI," "AI slop," "make it sound human," or "help me describe my product." Drafts never use AI tells like "it's not X, it's Y" reveals, "no X, no Y, no Z" lists, or sentences that trail into extra comma clauses. For email copy, see emails. For popup copy, see popups. For editing existing copy, see copy-editing. For the offer underneath the copy (bonuses, guarantees, value framing), see offers. Claims must be supportable, and a declined claim names the evidence that would unlock it. Diagnoses the input first (blank brief, real voice, or point edit) and changes only what it calls for.
At a glance
Pattern check
Nothing flagged
That isn't proof the skill is harmless.
Commit 88c79f6 · 3 Nov 2026
How the check worksPattern check: nothing flagged
That isn't proof the skill is harmless.
Install
Each tab says whether it installs commit 88c79f6, the one we checked, or the latest version.
OpenCode also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Goose also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Windsurf (Devin Desktop) also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Zed also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Roo Code also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Factory Droid also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Junie also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
Amp also looks in .agents/skills/ and ~/.agents/skills/, so use the Any agent steps.
No install command here reaches Kiro. Copy the skill's folder into .kiro/skills/ in your project, or ~/.kiro/skills/ for all your projects. coreyhaines31/marketingskills/skills/copywriting (opens in a new tab)
Antigravity also looks in .agents/skills/, so the Any agent steps reach it with This project. For All projects, see where Antigravity looks.
Cline also looks in .claude/skills/, so the Claude Code steps reach it with This project. For All projects, see where Cline looks.
Claude Code
Pinned to commit 88c79f6, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&mkdir -p .claude/skills &&mkdir .claude/skills/copywriting &&cp -R "$tmp"/skills/copywriting/. .claude/skills/copywriting/ &&rm -rf "$tmp"If Claude Code was already running and this created the skills folder, run /reload-skills.
Or install the marketing-skills plugin it ships in. Installs the latest version, not the one we checked. Installs everything in the plugin, including any hooks, MCP servers and scripts our check doesn't cover.
claude plugin marketplace add coreyhaines31/marketingskills --scope project &&claude plugin install marketing-skills@marketingskills --scope projectClaude apps
Pinned to commit 88c79f6, the one we checked.
Skills in the Claude apps belong to your account rather than to a project.
Make copywriting.zip, with the skill folder at the top level:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&out="$(mktemp -d)" &&cp -R "$tmp"/skills/copywriting "$out"/copywriting &&(cd "$out" && zip -qr - copywriting) > copywriting.zip &&rm -rf "$tmp" "$out"In Claude, open Customize > Skills, select +, then + Create skill > Upload a skill, and choose copywriting.zip.
On Free, Pro and Max plans, turn on Code execution and file creation (Create and edit files in newer settings) under Settings > Capabilities.
Codex
Pinned to commit 88c79f6, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&mkdir -p .agents/skills &&mkdir .agents/skills/copywriting &&cp -R "$tmp"/skills/copywriting/. .agents/skills/copywriting/ &&rm -rf "$tmp"Codex picks up new skills on its own; restart it if this one does not appear.
Cursor
Pinned to commit 88c79f6, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&mkdir -p .cursor/skills &&mkdir .cursor/skills/copywriting &&cp -R "$tmp"/skills/copywriting/. .cursor/skills/copywriting/ &&rm -rf "$tmp"Copilot & VS Code
Pinned to commit 88c79f6, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&mkdir -p .github/skills &&mkdir .github/skills/copywriting &&cp -R "$tmp"/skills/copywriting/. .github/skills/copywriting/ &&rm -rf "$tmp"In a running Copilot CLI session, run /skills reload.
Or install it with gh skill, which also installs the commit we checked. Needs GitHub CLI 2.90 or later.
gh skill install coreyhaines31/marketingskills skills/copywriting/SKILL.md@88c79f6528a9347420e57ceb1fff9a60de651768 --agent github-copilot --scope projectGemini CLI
Pinned to commit 88c79f6, the one we checked.
From your project's root folder:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&mkdir -p .gemini/skills &&mkdir .gemini/skills/copywriting &&cp -R "$tmp"/skills/copywriting/. .gemini/skills/copywriting/ &&rm -rf "$tmp"In a running session, run /skills reload.
Or use Gemini CLI’s own installer. Installs the latest version, not the one we checked.
gemini skills install https://github.com/coreyhaines31/marketingskills.git --path skills/copywriting --scope workspaceAny agent
Pinned to commit 88c79f6, the one we checked.
OpenCode, Goose, Windsurf (Devin Desktop), Zed, Roo Code, Factory Droid, Junie, Amp and Antigravity read .agents/skills in a project.
From your project's root folder:
tmp="$(mktemp -d)" &&git clone -q --depth 1 --filter=blob:none --no-checkout https://github.com/coreyhaines31/marketingskills.git "$tmp" &&git -C "$tmp" fetch -q --depth 1 origin 88c79f6528a9347420e57ceb1fff9a60de651768 &&git -C "$tmp" sparse-checkout set -- skills/copywriting &&git -C "$tmp" checkout -q 88c79f6528a9347420e57ceb1fff9a60de651768 &&mkdir -p .agents/skills &&mkdir .agents/skills/copywriting &&cp -R "$tmp"/skills/copywriting/. .agents/skills/copywriting/ &&rm -rf "$tmp"Or use the skills CLI from skills.sh. Installs the latest version, not the one we checked. The skills CLI reports installs to skills.sh unless you set DISABLE_TELEMETRY=1.
npx skills@1.7.4 add coreyhaines31/marketingskills --skill copywritingWhat it can touch
From the files and frontmatter at commit 88c79f6. This is how much a skill can do, not whether it is risky.
Pattern check
Pattern check: nothing flagged · commit 88c79f6 · 3 Nov 2026
We checked every text file in this skill, at commit 88c79f6 on 3 Nov 2026, against 45 published patterns such as download-and-run commands, hidden text and credential access. We don't run the skill, we don't read the web pages it points to, and we can't judge everything its instructions might lead an agent to do. In published tests, pattern checks like this one missed most malicious skills. Read the skill before you install it — especially anything it asks you to download or run.
How the check worksReport an incorrect finding
Outside links we did not follow
- https://github.com/retieedra-profound/skills-marketing-library
- https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing
- https://arxiv.org/abs/2406.07016
- https://aclanthology.org/2025.coling-main.426/
- https://arxiv.org/abs/2510.15061
- https://eqbench.com/slop-score.html
- https://tropes.fyi/tropes-md
- https://www.ignorance.ai/p/the-field-guide-to-ai-slop
- https://www.blakestockton.com/p/dont-write-like-ai-1-101-negation
- https://robotsatemyhomework.substack.com/p/ai-writing-patterns
Format check
Each agent reads SKILL.md a little differently. We check the file against each one's published rules; we don't run the skill in any agent.
Agent Skills specPasses
The open format from agentskills.io, held to the strictest version of each rule among the agents we check.
Claude CodePasses
Claude Code reads its own extra fields, ignores unknown ones, and still loads a skill whose frontmatter is broken, without its fields.
- Note
Anthropic's packaging script leaves these out: evals/. F8
Fix: Delete them, or list them in .gitignore.
- Note
Claude apps & API uploadPasses
Uploading to claude.ai or the Claude API, or packaging with Anthropic's script, accepts only the six spec fields and stops on anything else.
- Note
Anthropic's packaging script leaves these out: evals/. F8
Fix: Delete them, or list them in .gitignore.
- Note
The description is 989 characters. The claude.ai Help Center says 200 at most, though Anthropic's API docs and validator allow 1,024. D4
Fix: If the claude.ai upload refuses it, trim the description to 200 characters.
- Note
OpenAI (Codex & API)Passes
Codex finds SKILL.md by its exact name and needs a description; OpenAI's Skills API checks the frontmatter against the spec and caps uploads.
- Note
Anthropic's packaging script leaves these out: evals/. F8
Fix: Delete them, or list them in .gitignore.
- Note
VS Code & CopilotPasses
VS Code reads skills one folder below .github/skills, .claude/skills or .agents/skills and falls back to the folder name when the name is missing or differs; GitHub's Copilot docs require the exact name SKILL.md.
- Note
Anthropic's packaging script leaves these out: evals/. F8
Fix: Delete them, or list them in .gitignore.
- Note
SKILL.md
Files
More from coreyhaines31/marketingskills
| Skill | What it can touch | Pattern check | Licence | Updated |
|---|---|---|---|---|
| Pattern check: Nothing flagged | MIT | 29 Oct 2026 | |
| Pattern check: Nothing flagged | MIT | 26 Oct 2026 | |
| Pattern check: Nothing flagged | MIT | 26 Oct 2026 | |
| Pattern check: Nothing flagged | MIT | 29 Oct 2026 | |
| Pattern check: Nothing flagged | MIT | 27 Oct 2026 | |
asoWhen the user wants to audit or optimize an App Store or Google Play listing. Also use when the user mentions 'ASO audit,' 'app store optimization,' 'optimize my app listing,' 'improve app visibility,' 'app store ranking,' 'audit my listing,' 'why aren't people downloading my app,' 'improve my app conversion,' 'keyword optimization for app,' or 'compare my app to competitors.' Use when the user shares an App Store or Google Play URL and wants to improve it.
Pattern check: Nothing flaggedMITUpdated 27 Oct 2026 |
| Pattern check: Nothing flagged | MIT | 27 Oct 2026 |
Other Marketing & growth skills
Same category, most repo stars first.