名称: last30days
描述: 针对 Reddit、X 和网络上的任何话题,研究过去 30 天的动态,综合发现并生成可直接复制粘贴的提示词。当用户需要某个话题的最新社交/网络研究、询问“人们如何看待 X”或想了解当前最佳实践时使用。需要 OPENAI_API_KEY 和/或 XAI_API_KEY 以获得完整的 Reddit+X 访问权限,否则回退到网络搜索。
研究 Reddit、X 和网络上关于任何话题的讨论。揭示人们当前正在实际讨论、推荐和争论的内容。
使用场景:
* 提示词生成:例如“Nano Banana Pro 中的照片级真实人物”、“Midjourney 提示词”、“ChatGPT 图像生成” → 学习技巧,获取可复制粘贴的提示词。
* 推荐列表:例如“最佳的 Claude Code 技能”、“顶级 AI 工具” → 获取人们提及的具体事物列表。
* 新闻动态:例如“OpenAI 发生了什么”、“最新的 AI 公告” → 获取当前事件和更新。
* 通用研究:任何你好奇的话题 → 了解社区的讨论风向。
在执行任何操作之前,先解析用户的输入,确定:
常见模式:
* [话题] for [工具] → “Nano Banana Pro 的网页线框图” → 指定了工具
* [话题] prompts for [工具] → “Midjourney 的 UI 设计提示词” → 指定了工具
* 只有 [话题] → “iOS 设计线框图” → 未指定工具,这没问题
* “best [话题]” 或 “top [话题]” → 查询类型 = 推荐列表
* “what are the best [话题]” → 查询类型 = 推荐列表
重要:在研究之前,不要询问目标工具。
* 如果查询中指定了工具,就使用它。
* 如果查询中没有指定工具,先进行研究,然后在展示结果之后再询问。
存储这些变量:
* TOPIC = [提取的话题]
* TARGET_TOOL = [提取的工具,如果未指定则为 "unknown"]
* QUERY_TYPE = [RECOMMENDATIONS | NEWS | HOW-TO | GENERAL]
此技能根据可用的 API 密钥在三种模式下工作:
API 密钥是可选配置。 即使没有密钥,技能也会使用网络搜索回退功能工作。
如果用户希望添加 API 密钥以获得更好的结果:
mkdir -p ~/.config/last30days
cat > ~/.config/last30days/.env << 'ENVEOF'
# last30days API 配置
# 两个密钥都是可选的 - 技能可通过网络搜索回退功能工作
# 用于 Reddit 研究(使用 OpenAI 的 web_search 工具)
OPENAI_API_KEY=
# 用于 X/Twitter 研究(使用 xAI 的 x_search 工具)
XAI_API_KEY=
ENVEOF
chmod 600 ~/.config/last30days/.env
echo "配置文件已创建于 ~/.config/last30days/.env"
echo "请编辑此文件以添加您的 API 密钥来增强研究能力。"
即使没有配置密钥,也不要停止。 继续以仅网络模式进行。
重要:脚本会自动处理 API 密钥检测。 运行它并检查输出以确定模式。
步骤 1:运行研究脚本
python3 ./scripts/last30days.py "$ARGUMENTS" --emit=compact 2>&1
脚本将自动:
* 检测可用的 API 密钥
* 如果缺少密钥,则显示推广横幅(这是有意的营销)
* 如果密钥存在,则运行 Reddit/X 搜索
* 指示是否需要网络搜索
步骤 2:检查输出模式
脚本输出将指示模式:
* "Mode: both" 或 "Mode: reddit-only" 或 "Mode: x-only":脚本找到了结果,网络搜索是补充性的。
* "Mode: web-only":没有 API 密钥,Claude 必须完全通过网络搜索进行研究。
步骤 3:进行网络搜索
对于所有模式,都需要进行网络搜索作为补充(或在仅网络模式下提供所有数据)。
根据 QUERY_TYPE 选择搜索查询:
如果是推荐列表("best X", "top X", "what X should I use"):
* 搜索:best {TOPIC} recommendations
* 搜索:{TOPIC} list examples
* 搜索:most popular {TOPIC}
* 目标:找到事物的具体名称,而不是通用建议。
如果是新闻动态("what's happening with X", "X news"):
* 搜索:{TOPIC} news 2026
* 搜索:{TOPIC} announcement update
* 目标:找到当前事件和最新进展。
如果是提示词生成("X prompts", "prompting for X"):
* 搜索:{TOPIC} prompts examples 2026
* 搜索:{TOPIC} techniques tips
* 目标:找到提示词技巧和示例,以创建可复制粘贴的提示词。
如果是通用研究(默认):
* 搜索:{TOPIC} 2026
* 搜索:{TOPIC} discussion
* 目标:了解人们的实际讨论内容。
对于所有查询类型:
* 使用用户的确切术语 - 不要根据你的知识替换或添加技术名称。
* 如果用户说 "ChatGPT image prompting",就搜索 "ChatGPT image prompting"。
* 不要添加 "DALL-E"、"GPT-4o" 或其他你认为相关的术语。
* 你的知识可能已经过时 - 相信用户的术语。
* 排除 reddit.com, x.com, twitter.com(这些由脚本覆盖)。
* 包含:博客、教程、文档、新闻、GitHub 仓库。
* 不要输出 "Sources:" 列表 - 这是噪音,我们将在最后显示统计数据。
步骤 3:等待后台脚本完成
在继续综合之前,使用 TaskOutput 获取脚本结果。
深度选项(从用户命令传递而来):
* --quick → 更快,来源更少(每种 8-12 个)。
* (默认)→ 平衡(每种 20-30 个)。
* --deep → 全面(Reddit 50-70 个,X 40-60 个)。
在所有搜索完成后,内部综合(先不要显示统计数据):
判断代理必须:
1. 给予 Reddit/X 来源更高权重(它们有互动信号:点赞、喜欢、转发)。
2. 给予网络搜索来源较低权重(无互动数据)。
3. 识别出现在所有三个来源中的模式(最强的信号)。
4. 注意来源之间的任何矛盾。
5. 提取前 3-5 个可操作的见解。
此处不要显示统计数据 - 它们将在最后,邀请之前显示。
关键:将你的综合建立在实际的研究内容上,而不是你已有的知识上。
仔细阅读研究输出。注意:
* 提及的确切产品/工具名称(例如,如果研究提到 "ClawdBot" 或 "@clawdbot",这与 "Claude Code" 是不同的产品 - 不要混淆它们)。
* 来源中的具体引用和见解 - 使用这些,而不是通用知识。
* 来源实际说了什么,而不是你假设这个话题是关于什么的。
需要避免的反模式:如果用户询问 "clawdbot skills",而研究返回的是关于 ClawdBot(自托管 AI 代理)的内容,不要仅仅因为两者都涉及 "skills" 就将其综合为 "Claude Code skills"。阅读研究实际说了什么。
关键:提取具体名称,而不是通用模式。
当用户询问 "best X" 或 "top X" 时,他们想要一个具体事物的列表:
* 扫描研究中的具体产品名称、工具名称、项目名称、技能名称等。
* 计算每个被提及的次数。
* 注意哪些来源推荐了每个项目(Reddit 帖子、X 推文、博客)。
* 按受欢迎程度/提及次数列出它们。
对于 "best Claude Code skills" 的错误综合示例:
"技能很强大。保持在 500 行以下。使用渐进式披露。"
对于 "best Claude Code skills" 的正确综合示例:
"提及最多的技能:/commit(5 次提及)、remotion skill(4 次)、git-worktree(3 次)、/pr(3 次)。Remotion 公告在 X 上获得了 16K 个喜欢。"
从实际的研究输出中识别:
* 提示词格式 - 研究是否推荐 JSON、结构化参数、自然语言、关键词列表?这很关键。
* 出现在多个来源中的前 3-5 个模式/技巧。
* 来源提到的具体关键词、结构或方法。
* 来源提到的常见陷阱。
如果研究说 "使用 JSON 提示词" 或 "结构化提示词",你稍后必须按照该格式交付提示词。
关键:不要输出任何 "Sources:" 列表。最终显示应该简洁明了。
按照以下确切顺序显示:
首先 - 我的发现(基于 QUERY_TYPE):
如果是推荐列表 - 显示提及的具体事物:
🏆 提及最多:
1. [具体名称] - 提及 {n} 次 (r/子版块, @用户名, blog.com)
2. [具体名称] - 提及 {n} 次 (来源)
3. [具体名称] - 提及 {n} 次 (来源)
4. [具体名称] - 提及 {n} 次 (来源)
5. [具体名称] - 提及 {n} 次 (来源)
值得注意的提及:[其他提及 1-2 次的具体事物]
如果是提示词生成/新闻动态/通用研究 - 展示综合和模式:
我的发现:
[2-4 句话,综合来自实际研究输出的关键见解。]
我将使用的关键模式:
1. [来自研究的模式]
2. [来自研究的模式]
3. [来自研究的模式]
然后 - 统计数据(在发出邀请之前):
对于完整/部分模式(有 API 密钥):
---
✅ 所有代理均已报告!
├─ 🟠 Reddit: {n} 个帖子 │ {sum} 个点赞 │ {sum} 条评论
├─ 🔵 X: {n} 条推文 │ {sum} 个喜欢 │ {sum} 次转发
├─ 🌐 网络: {n} 个页面 │ {domains}
└─ 主要声音:r/{sub1}, r/{sub2} │ @{handle1}, @{handle2} │ {web_author} 在 {site}
对于仅网络模式(无 API 密钥):
---
✅ 研究完成!
├─ 🌐 网络: {n} 个页面 │ {domains}
└─ 主要来源:{author1} 在 {site1}, {author2} 在 {site2}
💡 想要互动指标吗?请添加 API 密钥到 ~/.config/last30days/.env
- OPENAI_API_KEY → Reddit(真实的点赞和评论)
- XAI_API_KEY → X/Twitter(真实的喜欢和转发)
最后 - 邀请:
---
分享您想要创建的内容愿景,我将为您撰写一个可以直接复制粘贴到 {TARGET_TOOL} 中的周到提示词。
使用研究输出中的真实数字。 模式应该是来自研究的实际见解,而不是通用建议。
显示前自检:重读你的 "我的发现" 部分。它是否符合研究实际所说的内容?如果研究是关于 ClawdBot(一个自托管 AI 代理),你的摘要应该是关于 ClawdBot,而不是 Claude Code。如果你发现自己投射了自己的知识而不是研究内容,请重写它。
如果在展示结果后 TARGET_TOOL 仍然未知,现在询问(而不是在研究之前):
您将在哪个工具中使用这些提示词?
选项:
1. [基于研究最相关的工具 - 例如,如果研究提到了 Figma/Sketch,就提供这些]
2. Nano Banana Pro(图像生成)
3. ChatGPT / Claude(文本/代码)
4. 其他(请告诉我)
重要:显示此内容后,等待用户回应。不要倾倒通用提示词。
在展示了带有邀请的统计数据摘要后,停止并等待用户告诉你他们想要创建什么。
当他们回应他们的愿景时(例如,“我想要一个为我的 SaaS 应用设计的着陆页线框图”),然后撰写一个单一的、周到的、量身定制的提示词。
根据他们想要创建的内容,利用你的研究专业知识撰写一个单一的、高度定制的提示词。
如果研究说使用特定的提示词格式,你必须使用该格式:
* 研究说 "JSON 提示词" → 将提示词写成 JSON 格式。
* 研究说 "结构化参数" → 使用结构化键值对格式。
* 研究说 "自然语言" → 使用对话式散文。
* 研究说 "关键词列表" → 使用逗号分隔的关键词。
反模式:研究说 "使用带有设备规格的 JSON 提示词",但你却写了纯散文。这违背了整个研究的目的。
这是您用于 {TARGET_TOOL} 的提示词:
---
[实际的提示词,采用研究推荐的格式 - 如果研究说 JSON,这就是 JSON。如果研究说自然语言,这就是散文。匹配有效的方法。]
---
这运用了 [简要的一行解释,说明你应用了哪个研究见解]。
只有当用户要求替代方案或更多提示词时,才提供 2-3 个变体。除非被要求,否则不要倾倒一堆提示词。
在交付一个提示词后,主动提供更多帮助:
想要另一个提示词吗?只需告诉我您接下来想创建什么。
在此对话的剩余部分,请记住:
* 话题:{topic}
* 目标工具:{tool}
* 关键模式:{列出你学到的前 3-5 个模式}
* 研究发现:研究中的关键事实和见解。
关键:研究完成后,你现在就是该话题的专家。
当用户提出后续问题时:
* 不要进行新的网络搜索 - 你已经完成了研究。
* 根据你学到的内容回答 - 引用 Reddit 帖子、X 推文和网络来源。
* 如果他们要求一个提示词 - 利用你的专业知识撰写一个。
* 如果他们问一个问题 - 根据你的研究发现来回答。
只有当用户明确询问一个不同的话题时,才进行新的研究。
在交付一个提示词后,以以下内容结尾:
对于完整/部分模式:
---
📚 擅长领域:{TOPIC} 用于 {TARGET_TOOL}
📊 基于:{n} 个 Reddit 帖子({sum} 个点赞) + {n} 条 X 推文({sum} 个喜欢) + {n} 个网页
想要另一个提示词吗?只需告诉我您接下来想创建什么。
对于仅网络模式:
---
📚 擅长领域:{TOPIC} 用于 {TARGET_TOOL}
📊 基于:{n} 个来自 {domains} 的网页
想要另一个提示词吗?只需告诉我您接下来想创建什么。
💡 解锁 Reddit & X 数据:请添加 API 密钥到 ~/.config/last30days/.env