前言¶
DeepSeek Harness (DSH) 采用插件化架构,旨在通过标准化的接口扩展智能体的能力。在开发需要获取外部技术资讯或监控社区热点的智能体时,直接对接第三方 API 往往需要编写额外的网络请求逻辑。dsh-tool-hackernews 插件为此提供了一个现成的解决方案,将 Hacker News 的核心数据检索能力封装为 DSH 原生的工具。
插件概况¶
该插件由开发者 tanf1ng 维护,属于联网工具类插件。它提供了一套针对 Hacker News 的工具集,基于免费的 Algolia HN Search API 构建,无需申请 API Key。所有请求均为只读操作,且具备并发安全性,允许 DSH 在同一会话中并行调用多个工具。
核心功能¶
插件主要包含三个工具函数:
-
hn_top_stories(limit)
获取当前 Hacker News 的首页内容。- 参数:
limit为可选参数,数值范围 1-30。默认值通常为 10。 - 返回:包含标题、链接、分数、评论数、作者及相对时间等信息。
- 参数:
-
hn_search(query, tag, since_hours, limit)
在 Hacker News 内进行关键词搜索。- 参数:
query为必填关键词;tag用于限定类型(如 story, comment, ask_hn 等);since_hours用于限制时间范围(1-8760 小时);limit控制返回结果数量。 - 返回:匹配的搜索结果列表。
- 参数:
-
hn_item(id, max_comments)
获取单条特定内容的详情及其评论。- 参数:
id为必填,即文章在 HN 上的唯一 ID;max_comments用于限制抓取的评论数量(0-100)。 - 返回:文章详情及评论树,内容会去除 HTML 标签并进行缩进处理,以确保上下文安全。
- 参数:
安装与配置¶
安装该插件需要使用 dsh plugin 命令。插件会安装到指定的配置文件中。
dsh plugin --profile <name> add "github:tanf1ng/dsh-tool-hackernews"
安装完成后,需要在配置文件的 cordis.patch.yml 中启用插件定义:
- id: tool-hackernews
name: dsh-tool-hackernews
插件支持多种配置项,用于调整默认行为:
| 配置项 | 默认值 | 说明 |
|---|---|---|
registerTopStories |
true |
是否注册 hn_top_stories 工具。 |
registerSearch |
true |
是否注册 hn_search 工具。 |
registerItem |
true |
是否注册 hn_item 工具。 |
topStoriesLimit |
10 |
hn_top_stories 的默认返回数量。 |
searchLimit |
8 |
hn_search 的默认返回数量。 |
maxComments |
20 |
hn_item 的默认最大评论数。 |
fetchTimeoutMs |
15000 |
单次请求的超时时间(毫秒)。 |
典型用法¶
以下是在 DSH 智能体中调用该插件的示例:
# 获取 Hacker News 首页的前 5 条
hn_top_stories(5)
# 搜索过去 24 小时内关于 "AI" 的故事,限制结果为 10 条
hn_search("AI", "story", 24, 10)
# 获取 ID 为 12345 的文章,最多展示 50 条评论
hn_item(12345, 50)
适用场景与注意事项¶
该插件适合需要主动获取技术圈热点、进行关键词检索或分析特定话题的 DSH 智能体开发场景。
由于插件在 DSH 进程的权限范围内运行,使用前建议检查源码与许可证(MIT)。虽然基于公共 API,但需注意网络请求的稳定性以及 Algolia API 的服务状态。