| name | grid25 |
| description | 25宫格选题助手(grid25)。帮用户为任意行业生成爆款内容选题关键词,渲染可交互的 25宫格抽签工具,并可直接搜索真实平台热门选题方向。
以下任意一条即触发:
- 用户说"帮我做选题"、"内容选题"、"内容方向"、"25宫格"、"选题助手"、"grid25"
- 用户问某个行业/产品/赛道该拍什么内容、做什么选题
- 用户想做小红书/抖音/视频号/B站的内容规划
- 用户提到"爆款选题"、"内容策划"、"选题库"、"内容关键词"
- 用户说"帮我分析一下XX行业的内容方向"
- 消息包含 "grid25搜索选题:"(用户点了宫格里的「帮我找选题」按钮)
- 用户点击了宫格里的「换个行业」按钮(触发 sendPrompt)
|
| metadata | {"version":"1.1.0","author":"十里&FRIDAY","created":"2026-03-13","updated":"2026-05-04","changelog":[{"version":"1.1.0","date":"2026-05-04","notes":"widget.min.js 直接 inline 到渲染产物,去掉 CDN 依赖;render.py 删除 CDN_URL 参数;离线自包含"},{"version":"1.0.0","date":"2026-03-13","notes":"初版:三层宫格抽签 + 搜索真实选题"}]} |
grid25 — 25宫格选题助手
三层宫格:核心行业(1格)× 行业要素(8格)× 场景/人群(16格),摇骰子抽组合,一键搜索验证热度。
所有 widget 渲染通过 scripts/render.py 完成——禁止手写 HTML,直接跑脚本拿输出。
工作流程
Step 1 — 问行业
用 ask_user_input_v0 工具直接问,不要渲染 widget。
列出常见行业选项 + 一个"其他(自己输入)"兜底,让用户单选:
question: "你是做哪个行业的?选一个或告诉我你的行业👇"
type: single_select
options:
- 餐饮 / 食品
- 美妆 / 护肤
- 健身 / 运动
- 母婴 / 亲子
- 家居 / 装修
- 宠物
- 教育 / 知识付费
- 农业 / 三农
- 其他(回复告诉我)
用户选择后直接进入 Step 2。若选"其他",追问一句"你是做什么的?"拿到具体行业名再进 Step 2。
若用户触发时已在消息里说了行业(如"帮我做咖啡行业的选题"),跳过 Step 1 直接进 Step 2。
Step 2 — 生成关键词(内部推理,不输出)
收到行业后,在脑子里生成两组词,不要输出分析过程。
Ring 2:8个「行业核心要素」(2~4字,口语化)
从以下 8 维度各出 1 个词:
| 维度 | 说明 |
|---|
| 核心痛点 | 用户最想解决的问题 |
| 选购决策 | 影响购买的关键比较维度 |
| 使用爽点 | 用了之后最爽的一刻 |
| 避坑踩雷 | 买错了最后悔的点 |
| 隐藏玩法 | 大多数人不知道的用法 |
| 情绪仪式感 | 情感共鸣、生活方式钩子 |
| 性价比对比 | 值不值、横向比较 |
| 行业黑话 | 圈内懂行人关注的专业维度 |
Ring 3:16个「场景/人群」(人群 8 + 渠道 8)
人群:有具体处境,不用泛称(不是"用户",是"第一次买XX的人")
渠道:小红书、抖音、B站、微信视频号、知乎、直播带货、线下门店、社区推广、二手平台、垂直社群、达人测评、用户自发UGC 中选最匹配的
Step 3 — 渲染宫格(跑脚本,禁止手写 HTML)
生成关键词后,立刻用 bash_tool 跑以下命令,把输出直接传给 visualize:show_widget:
python /path/to/skill/scripts/render.py grid \
"行业名称" \
'["词1","词2","词3","词4","词5","词6","词7","词8"]' \
'["词1","词2","词3","词4","词5","词6","词7","词8","词9","词10","词11","词12","词13","词14","词15","词16"]'
脚本读取 references/widget-template.html,把行业名、两组关键词、以及 assets/widget.min.js(直接 inline,不走任何 CDN/网络请求)拼成完整 widget_code,stdout 即输出,直接传入 visualize:show_widget。
skill 安装路径:通常在 /mnt/skills/user/grid25/,用 bash_tool 执行前先确认路径。
离线自包含:渲染产物不依赖外部资源,所有 JS/CSS 已打包,可直接复制到任何环境运行。
Step 4 — 收尾
一句话即可,例:
"点骰子抽组合,觉得方向对了点「帮我找选题」,直接给可用标题。"
Step 5 — 搜索真实选题(也用脚本渲染)
触发:消息格式为 grid25搜索选题:{行业} + {要素} + {人群/渠道}
执行流程:
-
解析三个关键词
-
用 web_search 搜索:
{行业} {要素} {人群} 抖音小红书 爆款标题
{行业} {要素} {人群} 内容选题
-
基于结果,在内部生成 6~8 个选题对象(不要输出 markdown 列表),格式:
[
{"title": "外卖骑手真实骑了3个月,电动车哪个价位最划算?", "platform": "抖音口播", "tip": "数字+职业身份开头,完播率高"},
{"title": "骑手选车避坑指南:2000和5000的差距在哪", "platform": "小红书图文", "tip": "避坑类收藏率高"}
]
- 立刻跑脚本渲染,禁止用 markdown 列表输出:
python /path/to/skill/scripts/render.py results \
"行业" "要素" "人群" \
'[{"title":"...","platform":"...","tip":"..."},...]'
脚本读取 references/results-template.html 输出完整 widget_code,传入 visualize:show_widget。
widget 包含:组合标签展示 + 每条标题卡片(含平台标签、使用建议、单条复制按钮)+ 底部「换一批」「复制全部」「换个行业」按钮。
换行业
用户点「换个行业」触发 sendPrompt 后,直接重新走 Step 1。