From agentic-ai-skills
Monitors LLM data markets by scraping Xiaohongshu, WeChat, Baidu for recruitment signals on data annotation/experts from vendors like Baidu/Ali/Talents AI; infers model directions; generates Excel/Word reports.
npx claudepluginhub agenticaiplan/agenticaiskills --plugin agentic-ai-skillsThis skill uses the workspace's default tool permissions.
本 Skill 自动执行完整的大模型数据市场调研流程,涵盖数据采集、Excel 整理、合作线索关联、市场洞察报告输出、定时任务设置、**Word 报告生成**共六个步骤。
Scans Twitter/X feeds from Anthropic/Claude Code team members for actionable insights on features/updates, tracks state, generates reports using browser automation.
Conducts deep research via parallel web searches, multi-source validation, and confidence tracking across 11 types like market, competitive, technical; outputs cited Markdown reports.
Dispatches AI agents to classify, rank, score, deduplicate, merge, forecast, and research Python dataframes at scale via SDK or MCP server.
Share bugs, ideas, or general feedback.
本 Skill 自动执行完整的大模型数据市场调研流程,涵盖数据采集、Excel 整理、合作线索关联、市场洞察报告输出、定时任务设置、Word 报告生成共六个步骤。
新增核心能力:监控头部厂商和外部数商的招募动态(数据标注任务招募、专家招募画像),通过招募信号反推:
在开始前确认以下环境就绪:
# 1. 确认 CDP Proxy 运行(web-access skill 依赖)
curl -s http://localhost:3456/targets | python3.11 -c "import json,sys; t=json.load(sys.stdin); print(f'CDP就绪,{len(t)}个Tab')"
# 2. 确认 Python 版本(openpyxl 安装在 python3.11)
python3.11 -c "import openpyxl; print('openpyxl', openpyxl.__version__)"
若 CDP Proxy 未启动,运行:node ~/.claude/skills/web-access/scripts/check-deps.mjs
关键约束:
python3.11(不是 python3 或 python)如果 Bash/Write 工具被拒绝,不要停止,切换到「知识合成 + 内联输出」模式继续执行所有6步:
> ⚠️ 工具受限:以下为内联输出,建议手动保存/tmp/llm_report_data.json JSON 内容(代码块包裹),提示用户可手动运行 node scripts/generate_report.js --data /tmp/llm_report_data.json用户真正需要的是分析质量,不只是文件存在。在工具受限时,高质量的内联分析报告比「无法执行」更有价值。
小红书有反爬机制,必须通过 CDP 操作:
# 打开搜索页
XHS_ID=$(curl -s "http://localhost:3456/new?url=https://www.xiaohongshu.com/search_result?keyword=大模型专家标注招募" | python3.11 -c "import json,sys; print(json.load(sys.stdin)['targetId'])")
sleep 4
# 关闭登录弹窗(弹窗选择器)
curl -s -X POST "http://localhost:3456/click?target=$XHS_ID" -d '.close-icon' > /dev/null
sleep 1
# 提取搜索结果卡片
curl -s -X POST "http://localhost:3456/eval?target=$XHS_ID" -d '
JSON.stringify(Array.from(document.querySelectorAll("section.note-item, [class*=\"note-item\"]")).map(el => {
const title = el.querySelector("a[class*=\"title\"] span, [class*=\"title\"] span")?.innerText?.trim() || "";
const author = el.querySelector("[class*=\"author\"] span")?.innerText?.trim() || "";
const time_text = el.innerText?.match(/\d{4}-\d{2}-\d{2}|\d+天前|\d+小时前|[0-9]{2}-[0-9]{2}/)?.[0] || "";
const href = el.querySelector("a[href*=\"explore\"]")?.href || "";
return {title, author, time_text, url: href};
}).filter(x=>x.title).slice(0,20))
'
搜索关键词(依次搜索,每次导航到新关键词):
招募监控类(优先采集):
大模型专家标注招募AI数据标注兼职招募Talents AI 招募一面千识 标注任务数据标注专家 画像市场动态类:
6. 大模型数据服务
7. 大模型训练数据
每组关键词提取 15-20 条卡片信息(标题、作者、时间、URL)。对于招募类帖子,重点提取:发布主体、任务类型描述、专家要求(学历/专业/经验)、薪酬信号。
微信公众号是头部厂商和数商发布招募任务的重要渠道,使用 Access_wechat_article 工具或通过搜狗微信搜索(CDP方式)采集:
# 方式一:通过搜狗微信搜索(推荐,无需额外工具)
WX_ID=$(curl -s "http://localhost:3456/new?url=https://weixin.sogou.com/weixin?type=2&query=大模型专家标注招募&ie=utf8&s_from=input" \
| python3.11 -c "import json,sys; print(json.load(sys.stdin)['targetId'])")
sleep 4
# 提取搜索结果
curl -s -X POST "http://localhost:3456/eval?target=$WX_ID" -d '
JSON.stringify(Array.from(document.querySelectorAll(".news-box .txt-box")).slice(0,15).map(el => {
const title = el.querySelector("h3 a")?.innerText?.trim() || "";
const href = el.querySelector("h3 a")?.href || "";
const account = el.querySelector(".account")?.innerText?.trim() || "";
const time_text = el.querySelector(".s2")?.innerText?.trim() || "";
const summary = el.querySelector("p")?.innerText?.trim() || "";
return {title, account, time_text, summary, url: href};
}).filter(x=>x.title))
'
微信公众号搜索关键词(依次执行,每次修改 URL 中的 query 参数):
大模型专家标注招募Talents AI 招募 数据标注一面千识 标注任务招募数据标注 专家 招募 大模型 2025AI数据 兼职 专家 画像 招募字节/百度/阿里 数据标注 招募(分别搜索三次)OpenAI data annotation contractor(可尝试)对于高价值文章(招募主体明确 + 任务描述详细),通过 CDP 打开详情页读取正文,提取:招募主体、任务类型、人员画像要求、发布时间。
详细实现参见 scripts/generate_excel.py。核心结构如下:
SHEETS = {
"招募动态": {
"header_color": "E67E22", # 橙色,突出显示招募核心数据
"columns": ["序号","招募主体","招募任务类型","招募人员画像","招募发布时间","薪酬/单价信号","来源渠道","来源URL","内容摘要","采集日期"],
"widths": [5, 20, 28, 30, 14, 16, 14, 48, 40, 13 ],
},
"小红书&微信公众号": {
"header_color": "C0392B", # 红色
"columns": ["序号","标题","作者/公众号","发布时间","命中关键词","内容摘要","分类标签","招募主体","招募任务类型","URL","采集日期"],
"widths": [5, 38, 18, 12, 20, 45, 16, 18, 22, 48, 13 ],
},
"网页搜索&行业媒体": {
"header_color": "1A5276", # 深蓝
"columns": ["序号","标题","来源平台","发布时间","涉及公司","关键数字","数据类型","内容摘要","URL","采集日期"],
"widths": [5, 40, 13, 12, 28, 20, 16, 52, 48, 13 ],
},
"厂商合作动态线索": {
"header_color": "117A65", # 深绿
"columns": ["序号","大模型厂商","合作方/数据服务商","合作内容","数据类型","金额/规模","时间","训练阶段","来源","可信度","分析备注"],
"widths": [5, 14, 18, 38, 18, 18, 11, 16, 18, 9, 35 ],
},
"汇总分析": {
"header_color": "4A235A", # 深紫
"sections": ["来源分布统计", "数据类型热度", "厂商战略对比矩阵"],
}
}
对采集内容自动打标签,规则:
| 关键词 | 分类标签 |
|---|---|
| 招聘/岗位/内推 | 招聘/人才 |
| 单价/薪资/工资/元/小时 | 薪酬/定价 |
| 融资/A轮/B轮/投资 | 融资/资本 |
| 中标/采购/招标 | 政府/企业采购 |
| 合成数据/DataFlow/自动 | 合成数据 |
| 视频/多模态/图文 | 视频/多模态 |
| RLHF/SFT/post-training | Post-Training数据 |
| 预训练/pre-training | 预训练数据 |
| 数据飞轮/飞轮 | 数据飞轮 |
| 架构/团队/组织 | 组织架构 |
| Scale AI/对比/估值 | 行业分析 |
| 其他 | 行业生态 |
| 评级 | 条件 |
|---|---|
| 高 | 来自官方公告/公开中标/权威媒体,有具体数字 |
| 中 | 来自行业媒体报道/多条来源交叉印证 |
| 低-中 | 仅有单一社区帖文/招聘信息推断 |
| 低 | 仅有传言/未经证实 |
~/Downloads/大模型数据市场调研_YYYY-MM-DD.xlsx
其中日期为当天采集日期。若当天文件已存在,追加新内容(不覆盖已有数据)。
在 Step 1 采集基础上,额外针对以下厂商进行专项搜索:
大模型厂商(甲方):
数据服务商(乙方):
海外大厂(境外甲方,需英文搜索):
将采集到的信息整合到 Sheet3,填写以下关键字段:
完成采集和 Excel 生成后,在对话中输出 Markdown 格式的市场洞察报告。这是技能的核心价值输出,无论工具是否受限都必须完整输出,不允许留空节或省略任何章节。
## 大模型数据服务市场洞察报告
**采集日期:YYYY-MM-DD | 数据量:XX条(小红书/微信XX + 网页XX + 招募动态XX + 线索XX)**
**信息来源说明:实时采集 / 训练知识合成(截止 XXXX)** ← 明确标注数据来源类型
---
### 一、市场规模与增速
| 指标 | 数据 | 来源 |
|------|------|------|
| (填入具体指标,如"中国AI数据服务市场规模")| (填入具体数字)| (媒体/报告名称 + 日期)|
### 二、招募信号分析 → 下一代模型发力方向推断
**(核心章节,必须有至少5行实质内容)**
| 招募主体 | 招募任务类型 | 专家画像要求 | 推断的模型发力方向 | 信号强度 |
|---------|------------|------------|-----------------|---------|
| 字节跳动 | (填入)| (填入)| (填入)| ★★★★ |
### 三、外部数商能力评估
**Talents AI**:
- 当前主要任务类型:(具体类型,如"深度推理标注、数学CoT验证")
- 专家储备:(规模估计,如"专家库8000+人,含博士/执业资格")
- 与大厂绑定程度:(如"已与XX签年度框架合同")
- 信号来源:(平台 + 时间)
**一面千识**:
(同上格式)
### 四、海外大厂数据战略动向
| 公司 | 最新招募/战略信号 | 战略含义推断 | 来源 |
|------|----------------|------------|------|
### 五、各厂商发力方向推断
每家厂商格式:**[厂商名]** — 方向:X | 数据类型:X | 关键信号:X | 推断逻辑:X
### 六、数据服务商格局
| 服务商 | 定位 | 核心客户 | 能力差异化 |
|--------|------|---------|----------|
### 七、核心洞察(≥5条)
1. **[洞察标题]**:(1-2句判断)。支撑数据:(具体数字)。来源:(平台 YYYY-MM-DD)。可信度:高/中/低
2. (同上格式,每条必须有来源和可信度标注)
### 八、趋势变化
(与上期对比的变化描述,若无历史数据则标注「首次调研,无对比基准」)
完成以上流程后,询问用户是否设置定时任务:
"是否设置每周五 14:00 自动执行调研流程?(定时任务为会话级,需保持 Claude 会话活跃,3天后自动到期)"
若用户确认,使用 CronCreate 工具设置:
cron: "0 14 * * 5"
recurring: true
定时触发的 prompt 内容参见 references/cron_prompt.md。
完成 Step 4 报告输出后,立即将报告内容序列化为 JSON,调用 Node.js 脚本生成专业 .docx,保存到 ~/Downloads/。
重要:Step 6 是 Step 4 的直接延伸,不要跳到 Step 5 后再回来。顺序是 4 → 6 → 5(定时任务最后询问)。
将 Step 4 的报告内容逐节填入以下结构,写入 /tmp/llm_report_data.json。不允许留空 rows/items,每节至少填2条真实数据:
{
"meta": {
"report_date": "YYYY-MM-DD",
"data_summary": "小红书/微信XX条 + 网页XX条 + 招募动态XX条 + 线索XX条"
},
"sections": {
"market_size": {
"title": "一、市场规模与增速",
"table": { "headers": ["指标","数据","来源"], "rows": [["<指标>","<数据>","<来源>"]] }
},
"recruitment_signals": {
"title": "二、招募信号分析 → 下一代模型发力方向推断",
"table": {
"headers": ["招募主体","招募任务类型","专家画像要求","推断的模型发力方向","信号强度"],
"rows": [["<主体>","<任务>","<画像>","<推断>","★★★★"]]
}
},
"vendor_assessment": {
"title": "三、外部数商能力评估",
"items": [{
"vendor": "<数商名称>",
"production_scale": "<月均任务量>",
"expert_pool": "<专家储备描述>",
"business_focus": "<业务侧重>",
"client_binding": "<与大厂绑定程度>",
"source": "<来源平台 YYYY-MM-DD>"
}]
},
"overseas_strategy": {
"title": "四、海外大厂数据战略动向",
"items": [{ "company": "<公司>", "signal": "<信号>", "implication": "<战略含义>", "source": "<来源>" }]
},
"vendor_directions": {
"title": "五、各厂商发力方向推断",
"items": [{
"vendor": "<厂商>", "direction": "<战略方向>",
"core_data_type": "<核心数据类型>", "key_signal": "<关键信号>", "reasoning": "<推断逻辑>"
}]
},
"service_provider_landscape": {
"title": "六、数据服务商格局",
"table": { "headers": ["服务商","定位","核心客户","能力差异"], "rows": [["<名称>","<定位>","<客户>","<差异>"]] }
},
"key_insights": {
"title": "七、核心洞察",
"items": [{ "insight": "<洞察判断>", "support": "<数据支撑>", "source": "<来源>", "confidence": "高|中|低" }]
},
"trend_changes": {
"title": "八、趋势变化",
"items": ["<趋势描述1>", "<趋势描述2>"]
}
}
}
NODE_PATH=$(npm root -g) \
node scripts/generate_report.js \
--data /tmp/llm_report_data.json \
--output ~/Downloads
脚本输出示例:
Word 报告已保存: /Users/<用户名>/Downloads/大模型数据市场洞察报告_2026-04-17.docx
NODE_PATH=$(npm root -g) \
node -e "require('docx'); console.log('docx 就绪')"
# 若报错: npm install -g docx
~/Downloads/大模型数据市场洞察报告_YYYY-MM-DD.docx
报告包含:封面页(标题/日期/机密提示)、页眉页脚(含页码)、8个章节(表格+要点列表)。
完成采集后,关闭所有由本 Skill 创建的 Tab:
# 记录所有创建的 Tab ID,最后统一关闭
for ID in $ALL_CREATED_TAB_IDS; do
curl -s "http://localhost:3456/close?target=$ID" > /dev/null
done
| 问题 | 解决方案 |
|---|---|
| 小红书详情页显示"暂时无法浏览" | 详情页需登录,改为从搜索列表提取卡片信息,提示用户登录后可补采正文 |
| 百度链接跳转失败(ERR_INVALID_REDIRECT) | 直接用 Bash 搜索相关关键词获取新链接,不依赖旧 URL |
| python3.11 找不到 openpyxl | 运行 pip3.11 install openpyxl 或确认路径 /Users/$USER/.pyenv/versions/3.11.*/bin/python3.11 |
| CDP Proxy 未启动 | 运行 node ~/.claude/skills/web-access/scripts/check-deps.mjs |
| 采集内容过少(<10条) | 扩展关键词,或提示用户登录小红书以获取完整内容 |
| docx 包缺失 | 运行 npm install -g docx,或检查 NODE_PATH=$(npm root -g) |
references/keywords.md — 完整关键词列表与搜索策略references/companies.md — 大模型厂商和数据服务商信息库references/cron_prompt.md — 定时任务触发 prompt 模板scripts/generate_excel.py — Excel 生成脚本(可独立运行)scripts/generate_report.js — Word 报告生成脚本(Node.js,可独立运行)