技术论坛聚合搜索 (Tech Forum Search)
概述
本技能通过聚合搜索多个主流技术论坛和开发者社区,为计算机学生和开发者提供带有来源链接的结构化技术解答。当用户提出技术问题时,自动在 CSDN、Stack Overflow、GitHub、掘金、SegmentFault、博客园、知乎、开源中国等平台上搜索相关内容,抓取并整理最佳答案。
适用场景
- 计算机学生遇到不懂的技术概念或知识点
- 开发者遇到编程报错、技术难题需要排查
- 需要查找某个技术问题的多种解决方案
- 需要对比不同技术社区对同一问题的讨论
- 搜索特定技术在实践中的使用经验
核心工作流
第一步:问题分析
分析用户的技术问题,提取关键信息:
- 核心关键词:从问题中提取技术名词、错误信息、框架名称等关键搜索词
- 问题类型:判断是概念理解、报错排查、最佳实践、还是方案对比
- 语言偏好:根据问题语言(中文/英文)决定搜索策略——中文问题优先搜索中文平台,英文问题优先搜索国际平台
- 平台匹配:根据问题领域选择最相关的平台组合。参见
references/platforms.md了解每个平台的擅长领域
第二步:并行平台搜索
在多个平台同时发起搜索以提高效率。使用 WebSearch 工具配合 site: 运算符进行平台定向搜索。
搜索策略:
- 为每个目标平台构建一条
site:<domain> <关键词>搜索查询 - 在同一条消息中发起多个 WebSearch 调用实现并行搜索
- 中文技术问题推荐平台组合:CSDN、掘金、SegmentFault、博客园、知乎
- 英文技术问题推荐平台组合:Stack Overflow、GitHub、Reddit
- 通用搜索补充:直接使用关键词搜索(不带
site:限制)以捕获其他来源 - 控制并行搜索数量在 5-7 个以内,避免请求过多
搜索查询构建示例(用户问题:"Python 中如何读取 Excel 文件"):
# 在一条消息中并行发起以下搜索:
WebSearch("site:csdn.net Python 读取 Excel 文件")
WebSearch("site:juejin.cn Python 读取 Excel 文件")
WebSearch("site:segmentfault.com Python 读取 Excel 文件")
WebSearch("site:stackoverflow.com Python read Excel file openpyxl")
WebSearch("Python 读取 Excel 文件 最佳实践") # 无限制补充搜索
第三步:内容抓取与提取
从搜索结果中筛选最有价值的链接,使用 WebFetch 工具抓取具体内容。
筛选规则:
- 每个平台选取 1-2 个最相关的结果
- 优先选择:问答帖 > 技术博客 > 教程文章
- 优先选择:高赞回答、近期发布的内容、内容完整的帖子
- 跳过:需要登录才能查看的内容、付费墙内容、内容明显过时的页面
抓取策略:
- 并行发起多个 WebFetch 请求以提高效率
- 每个 WebFetch 的 prompt 指定提取:问题摘要、核心解答、代码示例、关键结论
- 如果 WebFetch 返回重定向,跟随重定向重新请求
- 如果某页面抓取失败,跳过并从搜索结果中选取下一个候选链接
第四步:答案整理与来源标注
将抓取到的内容综合整理为结构化回复。每个信息点都必须附带来源URL,这是本技能的核心要求,不可遗漏。
输出格式:
## 📌 问题概述
[一句话概括用户的问题]
## 💡 综合解答
[将多个来源的信息综合整理成连贯的解答,按逻辑组织]
### 方案一:[方案名称]
[详细说明]
> 📎 来源:[平台名] — [文章/帖子标题]
> 🔗 链接:[完整URL]
### 方案二:[方案名称]
[详细说明]
> 📎 来源:[平台名] — [文章/帖子标题]
> 🔗 链接:[完整URL]
## 📝 代码示例
[如果搜索到的内容包含代码,整理在此处,标注来源]
```语言名
[代码内容]
> 📎 来源:[平台名] — [完整URL]
⚠️ 注意事项
[汇总各平台提到的注意事项、坑点、最佳实践]
> 📎 来源:[平台名] — [完整URL]
📚 参考来源汇总
| 平台 | 标题 | 链接 |
|---|---|---|
| CSDN | [标题] | [URL] |
| Stack Overflow | [标题] | [URL] |
| ... | ... | ... |
| ``` |
格式弹性说明: 根据问题类型灵活调整。报错排查类问题可省略"方案"部分,直接给出原因和修复方法;概念理解类问题可省略"代码示例"部分。但无论何种情况,来源标注和参考来源汇总表不可省略。
平台覆盖
本技能覆盖以下技术平台(详细信息见 references/platforms.md):
| 平台 | 域名 | 擅长领域 | 语言 |
|---|---|---|---|
| CSDN | csdn.net | 全领域技术博客/教程 | 中文 |
| Stack Overflow | stackoverflow.com | 编程问答 | 英文 |
| GitHub | github.com | 开源项目/Issues/Discussions | 多语言 |
| 掘金 | juejin.cn | 前端/后端/移动开发 | 中文 |
| SegmentFault | segmentfault.com | 开发者问答 | 中文 |
| 博客园 | cnblogs.com | 技术博客/深度文章 | 中文 |
| 知乎 | zhihu.com | 技术讨论/概念解释 | 中文 |
| 开源中国 | oschina.net | 开源资讯/技术文章 | 中文 |
| V2EX | v2ex.com | 开发者社区/经验交流 | 中文 |
| reddit.com | 国际开发者社区讨论 | 英文 |
重要注意事项
- 来源必须完整:每个整理的信息点都必须标注来源平台和完整URL,这是本技能的核心价值
- 去重与综合:多个平台可能引用相同内容,需去重后综合呈现,不要重复堆砌
- 时效性判断:注意内容发布时间,技术方案可能已过时,优先推荐较新内容并标注日期
- 代码验证:整理代码示例时检查完整性,确保代码片段可理解、可运行
- 版权尊重:抓取内容用于整理参考,用自己的话归纳,不直接大段复制原文
- 平台特性:某些平台内容需要登录(如知乎部分回答),抓取失败时跳过并说明原因
- 搜索效率:控制并行搜索数量在 5-7 个以内,避免请求过载
资源文件
references/platforms.md:各平台详细信息,包括域名、搜索策略、内容提取注意事项、擅长领域分类