marketingskills

其他

coreyhaines31/marketingskills

面向AI代理的营销技能集合,涵盖CRO、SEO和文案。

项目简介

一组markdown技能文件,使AI编程代理能够执行营销任务,如转化率优化、文案撰写、SEO、分析和增长工程。兼容Claude Code、OpenAI Codex等支持Agent Skills规范的代理。

README 预览

# Marketing Skills for AI Agents\n\nA collection of AI agent skills focused on marketing tasks. Built for technical marketers and founders who want AI coding agents to help with conversion optimization, copywriting, SEO, analytics, and growth engineering. Works with Claude Code, OpenAI Codex, Cursor, Windsurf, and any agent that supports the [Agent Skills spec](https://agentskills.io).\n\nBuilt by [Corey Haines](https://corey.co?ref=marketingskills). Need hands-on help? Check out [Conversion Factory](https://conversionfactory.co?ref=marketingskills) — Corey's agency for conversion optimization, landing pages, and growth strategy. Want to learn more about marketing? Subscribe to [Swipe Files](https://swipefiles.com?ref=marketingskills). Want to get dangerously good at using AI for marketing? Check out [AI Marketing Training](https://conversionfactory.co/offers/ai-marketing-training?ref=marketingskills). Want an autonomous AI agent that uses these skills to be your CMO? Try [Magister](https://magistermarketing.com?ref=marketingskills).\n\nNew to the terminal and coding agents? Check out the companion guide [Coding for Marketers](https://codingformarketers.com?ref=marketingskills).\n\n**Contributions welcome!** Found a way to improve a skill or have a new one to add? [Open a PR](#contributing).\n\nRun into a problem or have a question? [Open an issue](https://github.com/coreyhaines31/marketingskills/issues) — we're happy to help.\n\n## What are Skills?\n\nSkills are markdown files that give AI agents specialized knowledge and workflows for specific tasks. When you add these to your project, your agent can recognize when you're working on a marketing task and apply the right frameworks and best practices.\n\n## How Skills Work Together\n\nSkills reference each other and build on shared context. The `product-marketing` skill is the foundation — every other skill checks it first to understand your product, audience, and positioning before doing anything.\n\n```\n         

常见问题 (3)

故障排除
如何修复从 `hyperframes` npm 包导入时缺少 `render` 导出的问题?

hyperframes 包(v0.8.78)仅提供 CLI,不导出 render() 函数,也不接受 frames: [...] 数组。请改用 CLI:

npx hyperframes init my-video
cd my-video
npx hyperframes preview
npx hyperframes render -o output.mp4

要渲染已有的合成文件:

npx hyperframes render -c ./my-composition.html -o output.mp4

若要以编程方式渲染,请安装独立的 @hyperframes/producer 包:

npm install @hyperframes/producer

然后使用 createRenderJob() 和 executeRenderJob():

import { createRenderJob, executeRenderJob } from "@hyperframes/producer";

const job = createRenderJob({
  inputPath: "./my-composition.html",
  outputPath: "./output.mp4",
  width: 1080,
  height: 1920,
  fps: 30,
});

await executeRenderJob(job, (progress) => console.log(progress.percent));

其模型是每次渲染对应一个 HTML 合成文件,而不是帧对象数组。环境要求为 Node.js 22+ 和 FFmpeg。由于 0.x 版本的 CLI 变化频繁,请运行 npx hyperframes docs 查看当前的合成格式。

来源 Issue #600
故障排除
如何修复 creative-review-template.html 的 shape-error 崩溃、不完整的选项卡 ARIA 以及硬编码的 likes?

将 ad-creative 技能升级或重新固定到 2.11.17 版本,该版本包含关闭 issue #592 的 PR。如果手动修补 skills/ad-creative/assets/creative-review-template.html,请应用以下修复:

1. 在 JSON.parse 之后、renderAll() 运行之前,立即验证 JSON 结构:

function fail(msg) {
  document.querySelector(".wrap").innerHTML =
    '<div class="err"><b>Invalid review data.</b><br/>' + esc(msg) + '</div>';
  throw new Error(msg);
}

if (!Array.isArray(DATA.concepts) || !DATA.concepts.length) {
  fail("DATA.concepts must be a non-empty array");
}

DATA.concepts.forEach((c, i) => {
  if (!Array.isArray(c.frames) || !c.frames.length) {
    fail(`concepts[${i}].frames must be a non-empty array`);
  }
});

这可防止 renderConcepts() 在无效数据上读取 c.frames.length,避免出现仅显示头部的情况。

2. 修复概念切换器的 ARIA。要么实现完整的选项卡模式,包含 aria-controls、关联的 role="tabpanel" 元素以及方向键导航;要么移除 role="tablist"、role="tab" 和 aria-selected,改用普通的切换按钮:

<button type="button" aria-pressed="false">Concept</button>

在当前激活的概念上设置 aria-pressed="true"。

3. 移除虚构的 Instagram 互动数,改为数据驱动:

<div class="likes">${c.likes ? esc(c.likes) + " likes" : ""}</div>

当 c.likes 不存在时,点赞行将被完全省略,从而避免编造统计数据。

来源 Issue #592
installation
# Installing a Skill on claude.ai (No Command Line Needed) Skills can be uploaded directly through the claude.ai web interface. Here's how: ## 1. Create the skill folder on your computer Create a new folder (e.g., `my-skill`) and add a file named `SKILL.md` inside it with this structure: ```markdown --- name: my-skill-name description: A clear description of what this skill does and when Claude should use it --- # Instructions Write your skill instructions here. Add any steps, guidelines, or examples Claude should follow. ``` You can also include supporting files in the folder (scripts, templates, reference docs, etc.). ## 2. Zip the folder - **Mac:** Right-click the folder → "Compress" - **Windows:** Right-click the folder → "Send to" → "Compressed (zipped) folder" ## 3. Upload to claude.ai 1. Go to **claude.ai** and open **Settings** 2. Navigate to **Capabilities** 3. Scroll to the **Skills** section 4. Click **Add** / **Upload skill** and select your ZIP file ## 4. Use the skill Start a new conversation. Claude will automatically detect and invoke the skill when your request matches its description. If your skill includes scripts, make sure **Code execution** is also enabled in Settings → Capabilities. ## Notes - Skills require a paid plan (Pro, Max, Team, or Enterprise) - Anthropic also provides pre-built skills (PowerPoint, Excel, Word, PDF creation) you can toggle on directly in the Skills section without uploading anything - The `name` field must be lowercase letters, numbers, and hyphens only

从项目的 GitHub Releases 页面下载每个技能对应的 ZIP 资产文件——请勿使用源代码 ZIP。在 claude.ai 网页版或桌面版中,前往 Settings → Capabilities → Skills,上传已下载的 ZIP 文件,然后启用该技能。发布工作流会为每个技能附加一个 ZIP 文件,该文件基于一个冻结的 commit 构建,其中包含该技能的引用、脚本、资产和许可证。

来源 Issue #431