[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"product:dsh-gong-fang":3},{"id":4,"name":5,"slug":6,"slogan":7,"description":8,"organization":9,"images":10,"avatar_url":11,"image_url":12,"website_url":13,"access_links":14,"status":19,"build_by":20,"categories":29,"stats":36,"upload_relationship":40,"create_at":41,"update_at":42,"owner_id":37,"upload_user_id":43,"reviewer_id":44,"video_info":45,"prerelease_cover_url":50,"scheduled_publish_at":51,"user_scheduled":52,"emoji_reacts":53,"tag":58,"pass_review":51,"user_star":52},2947,"DSH 工坊","dsh-gong-fang","一切皆为插件，即刻装备你的 DSH","{\"type\": \"doc\", \"content\": [{\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"两个栏目，一个站点，外加一个可安装的 \", \"type\": \"text\"}, {\"text\": \"dsh 插件\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"：\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"插件库\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 从 DeepSeek Harness 生态里挑出值得尝试的项目，按用途分类陈列（左侧分类侧边栏），每件标注安装方式；英文简介配中文说明。\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"DSH手册\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 按上手路径编排的中文教程：先跑通任务，再把重复劳动沉淀成自己的 AI 工作流。章节可折叠、含可复制的对话示例。\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"dsh-plugin-hub 插件\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — \", \"type\": \"text\"}, {\"text\": \"plugin\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"plugin\u002F\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \" 目录是一个完整的 dsh 组合包（bundle）：装进任意 dsh 后，agent 获得 \", \"type\": \"text\"}, {\"text\": \"plugin_search\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"plugin_info\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"plugin_install\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 三个工具（发现 → 核验 → 审批安装闭环），Web UI 会话视图新增「插件」tab 目录浏览页。详见 \", \"type\": \"text\"}, {\"text\": \"plugin\u002FREADME.md\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"plugin\u002FREADME.md\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \"。\", \"type\": \"text\"}]}]}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"✨ 特性\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"纯静态、零后端\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — Vite 构建的 SPA，\", \"type\": \"text\"}, {\"text\": \"dist\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 丢到任意静态托管即可上线\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"自动更新\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — GitHub Actions 定时聚合 + push 触发 → 构建 → 自动部署到服务器，全程无人干预\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"插件优先布局\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 插件区在首屏后，左侧粘性分类侧边栏 + 右侧卡片流，双栏架构\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"安全加固\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 全局 ErrorBoundary、数据 schema 校验、密钥零硬编码、限流重试、部署用户降权\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"SEO 就绪\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — canonical、JSON-LD 结构化数据、og:image 分享图、\", \"type\": \"text\"}, {\"text\": \"robots.txt\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"、\", \"type\": \"text\"}, {\"text\": \"sitemap.xml\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"、noscript 降级\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"无额外依赖\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 聚合脚本仅用 Node 18+ 内置 \", \"type\": \"text\"}, {\"text\": \"fetch\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"；测试用 Node 内置 test runner\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"中英双语\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — UI 与教程内容均支持中英切换，语言偏好本地持久化\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"对齐官方设计\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — \", \"type\": \"text\"}, {\"text\": \"#0a0a0a\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 黑底 + 白色透明度体系 + DM Sans，视觉与 deepseek.com\u002Fharness 一致\", \"type\": \"text\"}]}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"dsh-plugin-hub 插件\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"plugin\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"plugin\u002F\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \" 把本站的插件聚合能力做成了任何 dsh 用户都能安装的组合包（纯 JavaScript ESM、无构建步骤、无需 pnpm 构建授权）：\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": \"bash\"}, \"content\": [{\"text\": \"dsh plugin --profile myhub add \\\"github:qomob\u002Fdsh#path:\u002Fplugin\\\"\\ndsh --profile myhub\\n# 然后对 agent 说：「用 plugin_search 找一个 dsh 桌面通知插件」\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"plugin_search\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}, {\"type\": \"code\"}]}, {\"text\": \" — 关键词 \u002F 分类检索 dsh 社区插件（离线内嵌快照 328+ 插件 + 每日运行时自动刷新，可选 live GitHub 搜索），返回安装命令\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"plugin_info\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}, {\"type\": \"code\"}]}, {\"text\": \" — 单个插件仓库详情 + 安装核验（manifest 事实、构建脚本风险、monorepo 子目录提示）\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"plugin_install\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}, {\"type\": \"code\"}]}, {\"text\": \" — 代理安装：核验目标 → 经 Web UI 交互审批（无审批服务时需显式 confirm）→ 执行 \", \"type\": \"text\"}, {\"text\": \"dsh plugin add\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"，pnpm 授权失败给 allowBuilds 修复提示\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"「插件」tab\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 会话视图环（对话 \u002F 轨迹 \u002F 插件）：目录浏览、搜索、分类、复制安装命令；离线可用、在线自动刷新、主题跟随\", \"type\": \"text\"}]}]}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"数据每日自动更新：CI 每天 08:00（北京时间）采集新插件并刷新 \", \"type\": \"text\"}, {\"text\": \"plugin\u002Fdata\u002Fregistry.json\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 与 \", \"type\": \"text\"}, {\"text\": \"plugin\u002Fclient.js\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"；已安装的插件每 24 小时后台拉取最新快照（失败静默保留现快照），无需重装。配置项（GitHub Token、镜像、条数、超时、刷新\u002F安装开关等）与开发说明见 \", \"type\": \"text\"}, {\"text\": \"plugin\u002FREADME.md\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"plugin\u002FREADME.md\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \"。\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"快速开始\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"环境要求\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Node.js 18 LTS 或更高\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"npm 9+\", \"type\": \"text\"}]}]}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"本地开发\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": \"bash\"}, \"content\": [{\"text\": \"git clone https:\u002F\u002Fgithub.com\u002Fqomob\u002Fdsh.git\\ncd dsh\\nnpm install\\nnpm run dev      # → http:\u002F\u002Flocalhost:5173\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"可用命令\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"| 命令 | 说明 |\\n|---|---|\\n| \", \"type\": \"text\"}, {\"text\": \"npm run dev\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 启动开发服务器（HMR 热更新） |\\n| \", \"type\": \"text\"}, {\"text\": \"npm run build\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 生产构建到 \", \"type\": \"text\"}, {\"text\": \"dist\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" |\\n| \", \"type\": \"text\"}, {\"text\": \"npm run preview\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 本地预览构建产物 |\\n| \", \"type\": \"text\"}, {\"text\": \"npm test\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 纯函数单测（Node 内置 test runner，零依赖） |\\n| \", \"type\": \"text\"}, {\"text\": \"npm run lint\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | oxlint 静态检查 |\\n| \", \"type\": \"text\"}, {\"text\": \"npm run aggregate\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 手动运行数据聚合管道 |\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"DSH手册\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"中文入门手册，按认知递进分四段（可折叠，默认全部收拢）：\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"| PART | 主题 | 适合谁 | 标识色 |\\n|---|---|---|---|\\n| \", \"type\": \"text\"}, {\"text\": \"01\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" 从 0 到 1 | 安装启动、认识界面、发第一个任务 | 完全新手 | 🔵 蓝 |\\n| \", \"type\": \"text\"}, {\"text\": \"02\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" 真实案例 | 代码、文档、视觉、自动化、调试 | 跑通后想用得更多 | 🟢 绿 |\\n| \", \"type\": \"text\"}, {\"text\": \"03\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" 进阶系统 | 写插件、CLI\u002FSDK、多 Agent、自动化 | 开发者 | 🟣 紫 |\\n| \", \"type\": \"text\"}, {\"text\": \"04\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" 落地生产 | 岗位路线、行业应用、社区参与 | 想落地到工作 | 🟡 金 |\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"阅读体验优化：\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"PART 级折叠\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 四个 PART 默认全部收拢为紧凑单行，点击展开\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"可复制对话示例\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 案例章附完整 prompt，照着粘贴即可上手\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"进阶内容折叠\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — \", \"type\": \"text\"}, {\"text\": \"——\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 分隔符自动把进阶要点收进灰底小字区块\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"顶部进度条\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 长文阅读时实时反馈\\\"读到哪了\\\"\", \"type\": \"text\"}]}]}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"手册数据位于 \", \"type\": \"text\"}, {\"text\": \"src\u002Fdata\u002Fblueprint.js\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"src\u002Fdata\u002Fblueprint.js\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \"，中英双语结构化定义。\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"插件聚合\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"聚合脚本位于 \", \"type\": \"text\"}, {\"text\": \"scripts\u002Faggregate\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"scripts\u002Faggregate\u002F\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \"，零额外依赖（仅用 Node 18+ 内置 \", \"type\": \"text\"}, {\"text\": \"fetch\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"）。\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"流程\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": null}, \"content\": [{\"text\": \"GitHub Search API（三个限定 topic）\\n    ↓\\n融合 awesome 精选列表（README 提取 + topic 白名单过滤）\\n    ↓\\n去重（fullName 去重）\\n    ↓\\n相关度评分（官方加成 + topics + 星标 + 活跃度）\\n    ↓\\n相关性过滤（描述必须提到 dsh \u002F DeepSeek Harness）\\n    ↓\\n自动分类（16 类正则推断）\\n    ↓\\nLLM 翻译（兼容 OpenAI 协议，可选）\\n    ↓\\nschema 校验 → 写入 src\u002Fdata\u002Frepos.json\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"手动运行\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": \"bash\"}, \"content\": [{\"text\": \"# 配置环境变量\\nexport GH_TOKEN=ghp_xxx                    # GitHub Token（推荐，提升配额到 5000\u002F小时）\\nexport LLM_API_KEY=sk-xxx                  # 可选，用于翻译（兼容 OpenAI 协议）\\nexport LLM_API_BASE=https:\u002F\u002Fapi.deepseek.com  # 可选，默认 DeepSeek\\nexport LLM_MODEL=deepseek-chat             # 可选，默认 deepseek-chat\\n\\nnpm run aggregate\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"环境变量\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"| 变量 | 必需 | 默认 | 说明 |\\n|---|---|---|---|\\n| \", \"type\": \"text\"}, {\"text\": \"GH_TOKEN\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 推荐 | 匿名 60 次\u002F小时 | GitHub Token，提升配额到 5000 次\u002F小时 |\\n| \", \"type\": \"text\"}, {\"text\": \"LLM_API_KEY\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 可选 | 跳过翻译 | 任意 OpenAI 兼容 API 的 Key |\\n| \", \"type\": \"text\"}, {\"text\": \"LLM_API_BASE\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 可选 | \", \"type\": \"text\"}, {\"text\": \"https:\u002F\u002Fapi.deepseek.com\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | OpenAI 兼容接口地址 |\\n| \", \"type\": \"text\"}, {\"text\": \"LLM_MODEL\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 可选 | \", \"type\": \"text\"}, {\"text\": \"deepseek-chat\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 翻译用模型名 |\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"数据可靠性保障\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"限流等待重试\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 搜索\u002F补全遇到限流时等待 reset 后重试，不中断流程\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"topic 白名单\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 只收录命中 \", \"type\": \"text\"}, {\"text\": \"dsh-plugin\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"dsh\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"deepseek-harness\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 三个 topic 的仓库\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"相关性过滤\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 描述必须真正提到 dsh \u002F DeepSeek Harness，剔除蹭流量项目\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"schema 校验\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 写入前断言 \", \"type\": \"text\"}, {\"text\": \"repos\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 非空、必填字段齐全、URL 合法，不合法则中止（保护上次好数据）\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"翻译降级\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 无 LLM key 时优雅保留原文，不阻塞流程\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"单元测试\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 分类\u002F评分\u002F提取\u002F格式化等纯函数均有测试覆盖（36 个用例）\", \"type\": \"text\"}]}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"GitHub Actions\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \".github\u002Fworkflows\u002Fdaily-aggregate.yml\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \".github\u002Fworkflows\u002Fdaily-aggregate.yml\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \" 自动运行：\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": null}, \"content\": [{\"text\": \"聚合数据 → 提交（有变化时）→ 构建 → rsync 部署到服务器 → 上传产物\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"触发方式：\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"定时\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 每天北京时间 08:00\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"push\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 推送 main（排除 repos.json 数据提交，避免递归）\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"手动\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" — 仓库 Actions 页 → Run workflow（可勾选\\\"强制部署\\\"）\", \"type\": \"text\"}]}]}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"配置 Secrets\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"仓库 \", \"type\": \"text\"}, {\"text\": \"Settings → Secrets and variables → Actions\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"：\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"| Secret | 说明 |\\n|---|---|\\n| \", \"type\": \"text\"}, {\"text\": \"GH_TOKEN\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | PAT（classic，勾选 \", \"type\": \"text\"}, {\"text\": \"public_repo\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 只读），提升配额 |\\n| \", \"type\": \"text\"}, {\"text\": \"LLM_API_KEY\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 翻译用 API Key（兼容 OpenAI 协议） |\\n| \", \"type\": \"text\"}, {\"text\": \"LLM_API_BASE\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 翻译接口地址（默认 DeepSeek） |\\n| \", \"type\": \"text\"}, {\"text\": \"LLM_MODEL\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 翻译模型名（默认 deepseek-chat） |\\n| \", \"type\": \"text\"}, {\"text\": \"SSH_HOST\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"SSH_USER\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"SSH_PRIVATE_KEY\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" \u002F \", \"type\": \"text\"}, {\"text\": \"DEPLOY_PATH\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" | 自动部署到服务器的 SSH 配置 |\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"部署\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"构建产物为纯静态文件（\", \"type\": \"text\"}, {\"text\": \"dist\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"），可部署到任意静态托管。\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"方式一：宝塔面板（阿里云等，当前生产环境）\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"当前线上：\", \"type\": \"text\"}, {\"text\": \"https:\u002F\u002Fdsh.qomob.ai\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"（宝塔 + Nginx + HTTPS）。\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"详见 \", \"type\": \"text\"}, {\"text\": \"DEPLOY-BAOTA.md\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"DEPLOY-BAOTA.md\", \"class\": null, \"target\": \"_blank\"}}, {\"type\": \"code\"}]}, {\"text\": \" — 包含完整的 Nginx 配置、HTTPS 申请、安全加固清单和自动化部署方案。\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"核心 Nginx 配置：\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": \"nginx\"}, \"content\": [{\"text\": \"root \u002Fwww\u002Fwwwroot\u002Fdsh.qomob.ai;\\nindex index.html;\\n\\nlocation \u002F {\\n    try_files $uri $uri\u002F \u002Findex.html;   # SPA 回退\\n}\\n\\nlocation ~* \\\\.(js|css|svg|png)$ {       # 静态资源长期缓存\\n    expires 30d;\\n    add_header Cache-Control \\\"public, immutable\\\";\\n}\\n\\nlocation = \u002Findex.html {                # 入口不缓存\\n    add_header Cache-Control \\\"no-cache\\\";\\n}\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"方式二：Vercel \u002F Netlify \u002F Cloudflare Pages\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"| 项 | 值 |\\n|---|---|\\n| 框架预设 | Vite |\\n| 构建命令 | \", \"type\": \"text\"}, {\"text\": \"npm run build\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" |\\n| 输出目录 | \", \"type\": \"text\"}, {\"text\": \"dist\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" |\\n| Node 版本 | 18 或更高 |\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"方式三：GitHub Pages\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"把 \", \"type\": \"text\"}, {\"text\": \"dist\u002F\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 推到 \", \"type\": \"text\"}, {\"text\": \"gh-pages\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 分支，或在仓库 Settings → Pages 选择 GitHub Actions 部署。\", \"type\": \"text\"}]}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"部署检查清单\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] \", \"type\": \"text\"}, {\"text\": \"npm run build\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 通过\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] \", \"type\": \"text\"}, {\"text\": \"npm test\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 全绿（36 个测试）\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] \", \"type\": \"text\"}, {\"text\": \"src\u002Fdata\u002Frepos.json\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 非空且 \", \"type\": \"text\"}, {\"text\": \"generatedAt\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 是近期时间戳\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] 部署后确认 \", \"type\": \"text\"}, {\"text\": \"https:\u002F\u002F你的域名\u002Frobots.txt\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 和 \", \"type\": \"text\"}, {\"text\": \"\u002Fsitemap.xml\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 正常返回\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] 静态托管层已配置 SPA fallback\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] HTTPS 已启用（社交分享预览的必要条件）\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"[ ] 部署后用 \", \"type\": \"text\"}, {\"text\": \"opengraph.xyz\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"rel\": \"noopener noreferrer nofollow\", \"href\": \"https:\u002F\u002Fwww.opengraph.xyz\u002F\", \"class\": null, \"target\": \"_blank\"}}]}, {\"text\": \" 验证 OG meta\", \"type\": \"text\"}]}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"目录结构\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": null}, \"content\": [{\"text\": \".\\n├── src\u002F\\n│   ├── components\u002F           # React 组件\\n│   │   ├── ErrorBoundary.jsx     # 全局错误边界（防白屏）\\n│   │   ├── Navbar.jsx           # 导航栏 + 语言切换\\n│   │   ├── Hero.jsx             # 首屏 + 代码示例 + CTA\\n│   │   ├── StatsBar.jsx         # 统计数据条\\n│   │   ├── HubSection.jsx       # 插件区（左侧分类侧边栏 + 右侧卡片流 + 热榜 Top10）\\n│   │   ├── BlueprintSection.jsx # DSH手册（可折叠 PART + 进度条）\\n│   │   ├── RepoCard.jsx         # 插件卡片\\n│   │   └── Footer.jsx\\n│   ├── data\u002F\\n│   │   ├── blueprint.js         # 手册教程数据（中英双语 30 章）\\n│   │   └── repos.json           # 聚合产物（每日自动更新）\\n│   ├── i18n\u002F\\n│   │   ├── LanguageContext.jsx  # 语言上下文 + 持久化\\n│   │   └── ui.js                # UI 文案中英对照\\n│   ├── lib\u002F\\n│   │   ├── categories.js        # 16 类分类定义 + 自动推断\\n│   │   └── format.js            # 数字\u002F日期\u002F语言色卡格式化\\n│   ├── App.jsx\\n│   ├── main.jsx\\n│   └── index.css               # Tailwind v4 主题（对齐官方设计 token）\\n├── scripts\u002Faggregate\u002F         # 每日聚合管道（零额外依赖）\\n│   ├── config.mjs             # 搜索关键词 + awesome 源 + 输出路径\\n│   ├── github.mjs             # GitHub API 封装（限流等待重试）\\n│   ├── awesome.mjs            # awesome 列表 README 提取\\n│   ├── translate.mjs          # LLM 翻译（OpenAI 兼容，可降级）\\n│   └── aggregate.mjs          # 主流程（含去重\u002F过滤\u002Fschema 校验）\\n├── plugin\u002F                    # dsh-plugin-hub：可安装的 dsh 组合包\\n│   ├── index.js               # 插件入口（Config + 两个 defineTool 工具）\\n│   ├── cordis.patch.yml       # bundle 层（package.json 的 dsh.bundle 指向它）\\n│   ├── src\u002F                   # categories \u002F registry \u002F live \u002F refresh \u002F format\\n│   ├── data\u002Fregistry.json     # 内嵌插件快照（CI 每日刷新 + 运行时每日自动拉取）\\n│   ├── tests\u002F                 # 44 个单元测试（node:test，无网络）\\n│   └── smoke\u002F                 # 端到端冒烟（真实 cordis + dsh-tools 管线）\\n├── tests\u002Funit.test.mjs        # 纯函数单测（36 个用例）\\n├── public\u002F                    # 静态资源\\n│   ├── favicon.svg\\n│   ├── icons.svg\\n│   ├── og-image.png           # 社交分享图 1200×630\\n│   ├── robots.txt             # SEO\\n│   └── sitemap.xml            # SEO\\n├── .github\u002Fworkflows\u002F         # CI 定时任务 + 自动部署\\n│   └── daily-aggregate.yml\\n├── DEPLOY-BAOTA.md            # 宝塔面板部署指南\\n└── LICENSE                    # MIT\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"技术栈\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"| 层 | 技术 | 说明 |\\n|---|---|---|\\n| 框架 | React 19 + Vite 8 | SPA，构建时内联数据 |\\n| 样式 | Tailwind CSS v4 | 对齐 DeepSeek 官网设计 token |\\n| 数据 | GitHub Search API + awesome 列表 | 定时聚合 → \", \"type\": \"text\"}, {\"text\": \"repos.json\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" |\\n| 翻译 | LLM API（OpenAI 兼容） | 可选，无 key 降级保留原文 |\\n| CI | GitHub Actions | 定时 + push 触发，rsync 自动部署 |\\n| 检查 | oxlint + node:test | 零额外依赖的 lint + 单测 |\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"贡献\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"欢迎提交 Issue 和 PR：\", \"type\": \"text\"}]}, {\"type\": \"bulletList\", \"content\": [{\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"内容纠错 \u002F 手册补充 → 编辑 \", \"type\": \"text\"}, {\"text\": \"src\u002Fdata\u002Fblueprint.js\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"聚合源增加 → 编辑 \", \"type\": \"text\"}, {\"text\": \"scripts\u002Faggregate\u002Fconfig.mjs\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 的 \", \"type\": \"text\"}, {\"text\": \"SEARCH_QUERIES\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 和 \", \"type\": \"text\"}, {\"text\": \"AWESOME_SOURCES\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"分类规则调整 → 编辑 \", \"type\": \"text\"}, {\"text\": \"src\u002Flib\u002Fcategories.js\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \"（有测试覆盖，改完跑 \", \"type\": \"text\"}, {\"text\": \"npm test\", \"type\": \"text\", \"marks\": [{\"type\": \"code\"}]}, {\"text\": \" 确认）\", \"type\": \"text\"}]}]}, {\"type\": \"listItem\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Bug 修复 → 附复现步骤，优先修复有测试覆盖的纯函数问题\", \"type\": \"text\"}]}]}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"开发前先跑：\", \"type\": \"text\"}]}, {\"type\": \"codeBlock\", \"attrs\": {\"language\": \"bash\"}, \"content\": [{\"text\": \"npm install\\nnpm test && npm run lint && npm run build   # 确保全绿再提交\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"声明\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"本站为社区驱动的非官方项目，与 DeepSeek AI 官方无隶属关系。\\\"DeepSeek\\\"、\\\"dsh\\\"、\\\"DeepSeek Harness\\\" 等名称与商标版权归原作者所有。\", \"type\": \"text\"}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"MIT License · © 2026 Qomob.AI\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}]}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Build in public · 一切皆为插件，即刻装备你的DSH\", \"type\": \"text\"}]}]}","Qomob","https:\u002F\u002Fwatcha.tos-cn-beijing.volces.com\u002Fprod\u002Fuser\u002Fuploads\u002F10007872_1786858073_9fe435dc-5884-4e1f-b853-16f3fd3bc8e4.png","https:\u002F\u002Fwatcha.tos-cn-beijing.volces.com\u002Fprod\u002Fuser\u002Fuploads\u002F10007872_1786857582_113866ec-5d6d-4da7-8432-ef79e779976c.png","https:\u002F\u002Fwatcha.tos-cn-beijing.volces.com\u002Fprod\u002Fuser\u002Fuploads\u002F10007872_1786859933_8eed49bb-227a-4b03-82c1-0af83f991daf.png","https:\u002F\u002Fdsh.qomob.ai",{"items":15},[16],{"platform":17,"url":13,"is_primary":18},"WEB",true,"PUBLISHED",[21],{"id":22,"product_id":4,"build_by_id":23,"story":24,"build_by":25},941,2922,"这个项目通过dsh接入了glm5.3 打造",{"id":23,"slug":26,"name":27,"avatar_url":28},"deepseek-harness","DeepSeek Harness","https:\u002F\u002Fwatcha.tos-cn-beijing.volces.com\u002Fprod\u002Fuser\u002Fuploads\u002F1_1786640177_02d50b20-6ada-43e5-8d10-07bf3313cb18.png",[30,33],{"id":31,"name":32},13,"Agent 构建",{"id":34,"name":35},14,"效率工具",{"upvotes":37,"stars":38,"review_count":37,"reply_count":37,"update_at":39},0,8,"2026-11-12T15:47:05.637Z","CREATOR","2026-08-16T06:01:08.738Z","2026-08-16T07:49:09.303Z",10007872,10004627,{"type":46,"src":47,"cover_url":48,"desc":49},"bilibili","BV1NgbQ6bEkY","http:\u002F\u002Fi1.hdslb.com\u002Fbfs\u002Farchive\u002F7e5faf22c44616eb7e555c47151bf79c8991595a.jpg","dsh-plugin-hub：安全扩展引擎","",null,false,{"reacts":54},[55],{"emoji_code":56,"count":57,"reacted":52},"😳",1,{"items":59},[60,63,65,68],{"id":61,"name":62,"sort_order":37},4,"Web",{"id":38,"name":64,"sort_order":37},"完全免费",{"id":66,"name":67,"sort_order":37},12,"中国大陆",{"id":31,"name":69,"sort_order":37},"海外"]