- AI 技能
- 人工智能
【免费下载链接】marketingskills
Marketing skills for Claude Code and AI agents. CRO, copywriting, SEO, analytics, and growth engineering.
本文以 tools/integrations/exa.md 为骨架,结合仓库内 exa.js CLI 源码与其工具注册表 REGISTRY.md、clis/README.md 中的规范,讲解如何在 marketing-skills 生态中为 LLM/Agent 接入 Exa 的神经语义搜索、相似页发现与按需内容提取能力。
导读
Exa 是一个专为 LLM 与 AI Agent 设计的 AI 搜索引擎 API:它在一次请求中同时完成「神经匹配 + 关键词匹配」的混合检索,并按需返回正文全文、高亮片段与摘要,省去了「先搜索、再逐个抓取页面」的多步流程。本文面向 Claude Code 与营销类 AI Agent 场景,完整覆盖 Exa 的三大端点(/search、/findSimilar、/contents)、核心参数体系,以及仓库内置零依赖 CLI 的安装与实战用法,帮助你直接用它完成内容研究、竞品发现、SEO 内容缺口分析与受众调研。
集成能力总览
Exa 在仓库中同时具备 API、MCP、CLI、SDK 四种接入形态,覆盖从「纯 API 调用」到「Agent 直接使用 MCP 工具」的全部路径:
| 集成方式 | 可用 | 说明 |
|---|---|---|
| API | ✓ | Search、Find Similar、Contents 三大能力 |
| MCP | ✓ | 官方 MCP Server 可直接接入 Agent 环境 |
| CLI | ✓ | 仓库内置零依赖 CLI:exa.js |
| SDK | ✓ | exa-py(Python)、exa-js(TypeScript) |
其中仓库自带的 CLI 位于 tools/clis/exa.js,是零依赖的单文件 Node.js 脚本,仅需 Node 18+ 原生fetch,无需npm install,符合 clis/README.md 中「所有 CLI 统一约定」的规范;在工具注册表 REGISTRY.md 中,Exa 被归类为AI Search工具,官方推荐用于「神经/语义网络搜索、内容研究、相似页发现」,并明确可与seo-audit、content-strategy、competitor-profiling技能配合使用。
认证方式
- 类型:API Key
- 请求头:
x-api-key: {key} - 获取 Key:在 Exa 官方 Dashboard 创建(认证请求头经 Base URL
https://api.exa.ai发送)
从 exa.js 源码可以看到 CLI 的认证实现:脚本从环境变量EXA_API_KEY读取密钥,若未设置则直接报错并退出,密钥绝不硬编码进仓库——这与 clis/README.md 的「所有 CLI 一律从环境变量读取凭据」安全约定一致:
const API_KEY = process.env.EXA_API_KEY const BASE_URL = 'https://api.exa.ai' if (!API_KEY) { console.error(JSON.stringify({ error: 'EXA_API_KEY environment variable required' })) process.exit(1) }除x-api-key外,CLI 每次请求还会附带x-exa-integration: marketingskills自定义头(见 exa.js),用于在 Exa 侧标识流量来源,属仓库集成层的自有约定。
端点说明
Base URL:https://api.exa.ai
| 端点 | 用途 |
|---|---|
POST /search | 以 neural、keyword-like 或 auto 路由模式搜索网络 |
POST /findSimilar | 查找与指定 URL 相似的页面 |
POST /contents | 针对一个或多个 URL 获取正文、高亮或摘要 |
三个端点形成了完整的 Agent 工作链路:先用/search或/findSimilar发现候选 URL,再用/contents一次性取回全部候选页面的正文/高亮/摘要,全程无需额外的网页抓取工具。
常见 Agent 操作
以下五组请求即 tools/integrations/exa.md 中的核心实战示例,可直接作为 Agent 的 prompt 模板或手工调试基准。
1. 带内容的网络搜索
一次请求同时完成搜索与内容提取,是 Exa 相对传统搜索 API 的关键差异:
POST https://api.exa.ai/search { "query": "best B2B SaaS onboarding flows", "type": "auto", "numResults": 10, "contents": { "text": { "maxCharacters": 1000 }, "highlights": true } }type: "auto"让 Exa 自动在神经匹配与关键词匹配之间路由;contents.text截取每篇结果前 1000 字符正文,highlights同时返回 LLM 挑选的相关片段——一次调用即可获得「结果列表 + 正文 + 高亮」三层信息。
2. 竞品内容发现
通过includeDomains把搜索范围锁定在指定站点,配合startPublishedDate只看近期内容:
POST https://api.exa.ai/search { "query": "landing page teardowns", "includeDomains": ["goodui.org", "growth.design", "marketingexamples.com"], "startPublishedDate": "2024-01-01T00:00:00Z", "contents": { "highlights": true } }适合监控特定竞品/灵感站点产出的新内容,或批量盘点某个垂直领域的头部内容。
3. 相似页发现
给定一个已知优秀页面(如 Stripe 定价页),反向找出网络上与之相似的页面:
POST https://api.exa.ai/findSimilar { "url": "https://stripe.com/pricing", "numResults": 20, "contents": { "summary": { "query": "What pricing model and price points does this page use?" } } }这里contents.summary.query是一个面向摘要的定向问题——Exa 会对每篇相似页按该问题生成摘要,例如统一回答「该页使用什么定价模型、定价多少」,让 20 个结果直接变成一张可对比的定价情报表。
4. 分类过滤搜索
category参数把搜索限定在特定内容类别中,news类别结合日期过滤即为标准的新闻监控写法:
POST https://api.exa.ai/search { "query": "DTC beauty brand raising Series A", "category": "news", "numResults": 25, "startPublishedDate": "2024-06-01T00:00:00Z" }5. 获取已知 URL 的内容
已有明确 URL 列表时,直接用/contents批量提取,summary.query可对每篇执行同一语义任务:
POST https://api.exa.ai/contents { "urls": ["https://example.com/post-1", "https://example.com/post-2"], "text": true, "summary": { "query": "Summarize this article's key argument in one paragraph." } }关键参数详解
搜索类型(type)
| 类型 | 说明 |
|---|---|
auto | 自动在神经与关键词匹配之间路由(默认) |
neural | 基于 embedding 的语义搜索,最适合概念/想法类查询 |
fast | 低延迟的神经搜索 |
instant | 近乎即时返回缓存结果 |
deep-lite/deep/deep-reasoning | Agentic 搜索变体:规划多次查询并综合结果后返回 |
其中deep系列属于「代理式搜索」——Exa 自己会拆解查询、执行多次检索并做综合,适合需要推理与跨来源整合的复杂调研任务,但延迟与成本相应更高。
分类(category)
支持:company、research paper、news、personal site、financial report、people。
过滤(Filtering)
| 参数 | 作用 |
|---|---|
includeDomains/excludeDomains | 限定/排除指定域名(最多 1200 个) |
includeText/excludeText | 要求/禁止结果页中出现指定短语 |
startPublishedDate/endPublishedDate | ISO 8601 格式的发布时间范围 |
startCrawlDate/endCrawlDate | ISO 8601 格式的抓取时间范围 |
userLocation | 两位字母国家代码(如US),影响本地化结果 |
Contents 三件套(可混合使用)
三个内容提取能力可在同一次请求中同时开启:
text: true或{ maxCharacters, includeHtmlTags, verbosity }—— 返回完整或截断的页面正文;highlights: true或{ query, maxCharacters }—— 返回 LLM 依据语义挑选的相关片段,query可指定高亮关注的维度;summary: { query, schema }—— 返回 LLM 生成的摘要,可附加query定向问题,或通过schema让摘要严格符合自定义 JSON Schema(适合 Agent 结构化解析结果)。
仓库 CLI 实战:零依赖调用 Exa
exa.js 将上述三个端点封装为三个子命令,遵循 clis/README.md 的统一模式{tool} <resource> <action> [options],全部参数均可用--key value形式传入,输出为 JSON。
安装与认证
无需任何依赖,三种方式任选(详见 clis/README.md):
# 方式一:直接运行 node tools/clis/exa.js search --query "B2B SaaS onboarding" --num 5 # 方式二:软链到全局 ln -sf "$(pwd)/tools/clis/exa.js" ~/.local/bin/exa # 方式三:把整个目录加入 PATH export PATH="$PATH:/path/to/marketingskills/tools/clis"认证只需设置环境变量:export EXA_API_KEY=your_key(clis/README.md 中的凭据对照表将exa映射到EXA_API_KEY)。
三个子命令与参数映射
search:对应POST /search
exa search --query "best B2B SaaS onboarding flows" \ --type auto --num 10 \ --include-domains "goodui.org,growth.design" \ --start-published 2024-01-01T00:00:00Z \ --text --highlights --max-chars 1000 \ --highlight-query "what tactics do they recommend" \ --summary --summary-query "summarize key steps"从源码(exa.js)可见search子命令完整支持--query、--type、--num、--category、--include-domains、--exclude-domains、--include-text、--exclude-text、--start-published、--end-published、--start-crawl、--end-crawl、--user-location,其中逗号分隔的域名/短语参数会在请求体内被拆分为数组(split(',').map(s => s.trim()))。
find-similar:对应POST /findSimilar
exa find-similar --url https://stripe.com/pricing --num 20 \ --start-published 2024-01-01T00:00:00Z \ --summary --summary-query "What pricing model and price points does this page use?"(源码见 exa.js,--url为必填,其余过滤与 Contents 参数同search。)
contents:对应POST /contents
exa contents --urls "https://example.com/post-1,https://example.com/post-2" \ --text --summary --summary-query "Summarize this article's key argument in one paragraph."(源码见 exa.js,--urls为逗号分隔必填;若未指定任何 Contents 选项,脚本默认回退为text: true。)
请求体构造细节
exa.js 中的buildContents()揭示了 CLI 如何把命令行参数翻译成 API 的contents对象:
--text→contents.text = true,若加--max-chars 1000则变为{ maxCharacters: 1000 };--highlights→contents.highlights = true,若加--highlight-query则变为{ query };--summary→contents.summary = {},若加--summary-query则填入{ query }。
只有当三者之一被显式指定时contents才会被放入请求体;对search之外的两个端点,contents参数同样生效,例如find-similar可携带summary.query做定向摘要。
安全演练:--dry-run
所有请求都可通过--dry-run预览而不真正发送:源码(exa.js)在 dry-run 模式下直接返回{ _dry_run: true, method, url, headers, body },其中x-api-key会被掩码为***,方便排查参数拼写错误且不会泄露密钥,符合 clis/README.md 的安全要求。
输出与管道
CLI 以 JSON 输出到 stdout,可直接配合jq解析或存入文件:
# 取前 5 条结果的标题 exa search --query "landing page teardowns" --num 10 --highlights | jq '.results[:5][] | {title, url, highlights}' # 保存结果供后续处理 exa search --query "DTC beauty brand Series A" --category news --num 25 > news.json何时使用 Exa
官方文档给出的典型营销 Agent 场景(tools/integrations/exa.md):
- 内容研究(Content research)——按语义而非仅关键词,找到小众主题下的高质量长文;
- 竞品发现(Competitor discovery)——通过
findSimilar找出与已知目标公司相似的页面/公司; - SEO 内容缺口分析(SEO content gap analysis)——检索竞品有排名而你缺失的话题,拉取高亮片段快速评审;
- 客户研究(Customer research)——检索论坛帖子、博客与评论中关于你产品或品类的真实讨论;
- 受众研究(Audience research)——发现你的 ICP 发表内容或留言的博客、Newsletter 与社区;
- 新闻监控(News monitoring)——以
category: news+ 日期过滤跟踪品牌、竞品或品类的提及; - 外链机会挖掘(Link prospecting)——找出覆盖你写作主题的高权威页面用于外联;
- 线索研究(Lead research)——用
company与people分类发现符合筛选条件的公司或联系人。
在仓库生态中,Exa 与多个营销技能高度互补——REGISTRY.md 的 Agent 推荐将其与seo-audit、content-strategy、competitor-profiling技能配对使用;文档底部列出的相关技能还包括 ai-seo、competitors、customer-research、cold-email、lead-magnets 与 marketing-ideas。例如:competitor-profiling需要盘点竞品内容资产时,可由 Agent 调用exa find-similar+contents自动拉取并摘要;cold-email需要为外联准备背景信息时,可先用search检索目标公司最近动态。
速率限制与计费提示
- 速率限制因套餐而异,具体见 Exa 官方定价页;
- 大多数生产套餐支持数百并发请求;
- 注意计费结构:内容提取(text / highlights / summary)与基础搜索分开计费——高吞吐的批量抓取任务应评估成本,必要时只对少量结果开启
contents,或先用纯搜索粗筛、再对精选 URL 用/contents。
相关仓库资源
- tools/integrations/exa.md —— 本文主题文档(认证、端点、参数、场景全表)
- tools/clis/exa.js —— Exa CLI 完整源码(三子命令实现、参数解析、dry-run)
- tools/clis/README.md —— 所有 CLI 的安装、认证与命令模式约定
- tools/REGISTRY.md —— 工具注册表:Exa 分类、能力矩阵与 Agent 推荐用法
- tools/PARTNERS.md —— 工具集成指南的编写规范(含
integrations/目录格式要求)
- AI 技能
- 人工智能
【免费下载链接】marketingskills
Marketing skills for Claude Code and AI agents. CRO, copywriting, SEO, analytics, and growth engineering.
相关推荐
Agent Reach 搜索工具实战指南:用 Exa AI 语义搜索为 Agent 一键接入高质量网页与代码检索
Agent Reach 搜索工具实战指南:用 Exa AI 语义搜索为 Agent 一键接入高质量网页与代码检索 本指南聚焦 Agent Reach 项目中的搜
人工智能AI AgentMCP 服务AI 技能CLIMailchimp 集成指南:为 Claude Code 与 AI Agent 构建邮件营销自动化能力
Mailchimp 集成指南:为 Claude Code 与 AI Agent 构建邮件营销自动化能力 导读 Mailchimp 是面向中小企业的邮件营销平台,
AI 技能人工智能5 分钟跑通 Handy:离线语音转文字实战指南
5 分钟跑通 Handy:离线语音转文字实战指南 你在没信号的地铁里口述想法,文字直接出现在正在编辑的文档里。Handy 是一款完全离线的语音转文字工具,录音与
桌面应用语音音频AI 应用本地部署
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考