Screenshots
1 / 2About this app
两个栏目,一个站点,外加一个可安装的 dsh 插件:
插件库 — 从 DeepSeek Harness 生态里挑出值得尝试的项目,按用途分类陈列(左侧分类侧边栏),每件标注安装方式;英文简介配中文说明。
DSH手册 — 按上手路径编排的中文教程:先跑通任务,再把重复劳动沉淀成自己的 AI 工作流。章节可折叠、含可复制的对话示例。
dsh-plugin-hub 插件 —
plugin/目录是一个完整的 dsh 组合包(bundle):装进任意 dsh 后,agent 获得plugin_search/plugin_info/plugin_install三个工具(发现 → 核验 → 审批安装闭环),Web UI 会话视图新增「插件」tab 目录浏览页。详见plugin/README.md。
✨ 特性
纯静态、零后端 — Vite 构建的 SPA,
dist/丢到任意静态托管即可上线自动更新 — GitHub Actions 定时聚合 + push 触发 → 构建 → 自动部署到服务器,全程无人干预
插件优先布局 — 插件区在首屏后,左侧粘性分类侧边栏 + 右侧卡片流,双栏架构
安全加固 — 全局 ErrorBoundary、数据 schema 校验、密钥零硬编码、限流重试、部署用户降权
SEO 就绪 — canonical、JSON-LD 结构化数据、og:image 分享图、
robots.txt、sitemap.xml、noscript 降级无额外依赖 — 聚合脚本仅用 Node 18+ 内置
fetch;测试用 Node 内置 test runner中英双语 — UI 与教程内容均支持中英切换,语言偏好本地持久化
对齐官方设计 —
#0a0a0a黑底 + 白色透明度体系 + DM Sans,视觉与 deepseek.com/harness 一致
dsh-plugin-hub 插件
plugin/ 把本站的插件聚合能力做成了任何 dsh 用户都能安装的组合包(纯 JavaScript ESM、无构建步骤、无需 pnpm 构建授权):
plugin_search— 关键词 / 分类检索 dsh 社区插件(离线内嵌快照 328+ 插件 + 每日运行时自动刷新,可选 live GitHub 搜索),返回安装命令plugin_info— 单个插件仓库详情 + 安装核验(manifest 事实、构建脚本风险、monorepo 子目录提示)plugin_install— 代理安装:核验目标 → 经 Web UI 交互审批(无审批服务时需显式 confirm)→ 执行dsh plugin add,pnpm 授权失败给 allowBuilds 修复提示「插件」tab — 会话视图环(对话 / 轨迹 / 插件):目录浏览、搜索、分类、复制安装命令;离线可用、在线自动刷新、主题跟随
数据每日自动更新:CI 每天 08:00(北京时间)采集新插件并刷新 plugin/data/registry.json 与 plugin/client.js;已安装的插件每 24 小时后台拉取最新快照(失败静默保留现快照),无需重装。配置项(GitHub Token、镜像、条数、超时、刷新/安装开关等)与开发说明见 plugin/README.md。
快速开始
环境要求
Node.js 18 LTS 或更高
npm 9+
本地开发
可用命令
| 命令 | 说明 |
|---|---|
| npm run dev | 启动开发服务器(HMR 热更新) |
| npm run build | 生产构建到 dist/ |
| npm run preview | 本地预览构建产物 |
| npm test | 纯函数单测(Node 内置 test runner,零依赖) |
| npm run lint | oxlint 静态检查 |
| npm run aggregate | 手动运行数据聚合管道 |
DSH手册
中文入门手册,按认知递进分四段(可折叠,默认全部收拢):
| PART | 主题 | 适合谁 | 标识色 | |---|---|---|---| | 01 从 0 到 1 | 安装启动、认识界面、发第一个任务 | 完全新手 | 🔵 蓝 | | 02 真实案例 | 代码、文档、视觉、自动化、调试 | 跑通后想用得更多 | 🟢 绿 | | 03 进阶系统 | 写插件、CLI/SDK、多 Agent、自动化 | 开发者 | 🟣 紫 | | 04 落地生产 | 岗位路线、行业应用、社区参与 | 想落地到工作 | 🟡 金 |
阅读体验优化:
PART 级折叠 — 四个 PART 默认全部收拢为紧凑单行,点击展开
可复制对话示例 — 案例章附完整 prompt,照着粘贴即可上手
进阶内容折叠 —
——分隔符自动把进阶要点收进灰底小字区块顶部进度条 — 长文阅读时实时反馈"读到哪了"
手册数据位于 src/data/blueprint.js,中英双语结构化定义。
插件聚合
聚合脚本位于 scripts/aggregate/,零额外依赖(仅用 Node 18+ 内置 fetch)。
流程
手动运行
环境变量
| 变量 | 必需 | 默认 | 说明 |
|---|---|---|---|
| GH_TOKEN | 推荐 | 匿名 60 次/小时 | GitHub Token,提升配额到 5000 次/小时 |
| LLM_API_KEY | 可选 | 跳过翻译 | 任意 OpenAI 兼容 API 的 Key |
| LLM_API_BASE | 可选 | https://api.deepseek.com | OpenAI 兼容接口地址 |
| LLM_MODEL | 可选 | deepseek-chat | 翻译用模型名 |
数据可靠性保障
限流等待重试 — 搜索/补全遇到限流时等待 reset 后重试,不中断流程
topic 白名单 — 只收录命中
dsh-plugin/dsh/deepseek-harness三个 topic 的仓库相关性过滤 — 描述必须真正提到 dsh / DeepSeek Harness,剔除蹭流量项目
schema 校验 — 写入前断言
repos非空、必填字段齐全、URL 合法,不合法则中止(保护上次好数据)翻译降级 — 无 LLM key 时优雅保留原文,不阻塞流程
单元测试 — 分类/评分/提取/格式化等纯函数均有测试覆盖(36 个用例)
GitHub Actions
.github/workflows/daily-aggregate.yml 自动运行:
触发方式:
定时 — 每天北京时间 08:00
push — 推送 main(排除 repos.json 数据提交,避免递归)
手动 — 仓库 Actions 页 → Run workflow(可勾选"强制部署")
配置 Secrets
仓库 Settings → Secrets and variables → Actions:
| Secret | 说明 |
|---|---|
| GH_TOKEN | PAT(classic,勾选 public_repo 只读),提升配额 |
| LLM_API_KEY | 翻译用 API Key(兼容 OpenAI 协议) |
| LLM_API_BASE | 翻译接口地址(默认 DeepSeek) |
| LLM_MODEL | 翻译模型名(默认 deepseek-chat) |
| SSH_HOST / SSH_USER / SSH_PRIVATE_KEY / DEPLOY_PATH | 自动部署到服务器的 SSH 配置 |
部署
构建产物为纯静态文件(dist/),可部署到任意静态托管。
方式一:宝塔面板(阿里云等,当前生产环境)
当前线上:https://dsh.qomob.ai(宝塔 + Nginx + HTTPS)。
详见 DEPLOY-BAOTA.md — 包含完整的 Nginx 配置、HTTPS 申请、安全加固清单和自动化部署方案。
核心 Nginx 配置:
方式二:Vercel / Netlify / Cloudflare Pages
| 项 | 值 |
|---|---|
| 框架预设 | Vite |
| 构建命令 | npm run build |
| 输出目录 | dist |
| Node 版本 | 18 或更高 |
方式三:GitHub Pages
把 dist/ 推到 gh-pages 分支,或在仓库 Settings → Pages 选择 GitHub Actions 部署。
部署检查清单
[ ]
npm run build通过[ ]
npm test全绿(36 个测试)[ ]
src/data/repos.json非空且generatedAt是近期时间戳[ ] 部署后确认
https://你的域名/robots.txt和/sitemap.xml正常返回[ ] 静态托管层已配置 SPA fallback
[ ] HTTPS 已启用(社交分享预览的必要条件)
[ ] 部署后用 opengraph.xyz 验证 OG meta
目录结构
技术栈
| 层 | 技术 | 说明 |
|---|---|---|
| 框架 | React 19 + Vite 8 | SPA,构建时内联数据 |
| 样式 | Tailwind CSS v4 | 对齐 DeepSeek 官网设计 token |
| 数据 | GitHub Search API + awesome 列表 | 定时聚合 → repos.json |
| 翻译 | LLM API(OpenAI 兼容) | 可选,无 key 降级保留原文 |
| CI | GitHub Actions | 定时 + push 触发,rsync 自动部署 |
| 检查 | oxlint + node:test | 零额外依赖的 lint + 单测 |
贡献
欢迎提交 Issue 和 PR:
内容纠错 / 手册补充 → 编辑
src/data/blueprint.js聚合源增加 → 编辑
scripts/aggregate/config.mjs的SEARCH_QUERIES和AWESOME_SOURCES分类规则调整 → 编辑
src/lib/categories.js(有测试覆盖,改完跑npm test确认)Bug 修复 → 附复现步骤,优先修复有测试覆盖的纯函数问题
开发前先跑:
声明
本站为社区驱动的非官方项目,与 DeepSeek AI 官方无隶属关系。"DeepSeek"、"dsh"、"DeepSeek Harness" 等名称与商标版权归原作者所有。
MIT License · © 2026 Qomob.AI
Build in public · 一切皆为插件,即刻装备你的DSH
This page is curated from Watcha. Names, icons, screenshots and trademarks belong to their owners.
