dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
wwumit · 治理驱动的 AI 技能生态 — 规则 → 检查 → 评分 → 报告
产品线:合规(compliancehub)· 股票 · 工具 · 数据层 catalog
Remote skill provider for DeepSeek Harness:
install skills from a JSON catalog through the standard ctx.skills registry —
no manual folder copying.
list() — fetch + validate a curated catalog, expose its skills to the registryget() — fetch the SKILL.md body on demand from the owning reponpm install @wwumit/dsh-compliancehub
# peer deps: @deepseek-ai/cordis, @deepseek-ai/dsh-skill
import { Context } from '@deepseek-ai/cordis'
import * as skillHub from '@wwumit/dsh-compliancehub'
export function apply(ctx: Context) {
ctx.plugin(skillHub, {
catalogUrl: 'https://wwumit.github.io/skills-catalog/catalog.json',
// providerName: 'hub' // unique name on ctx.skills
// rank: 250 // duplicate-name resolution (lower wins)
// requestTimeoutMs: 10000
// baseUrl: 'https://raw.githubusercontent.com'
// branch: 'main'
})
}
Once loaded, DSH's model session catalog includes the provider's skills and the
model can invoke them via the built-in skill tool.
{
"schemaVersion": 1,
"disclosureSchemaVersion": "0.2",
"updatedAt": "2026-08-16T00:00:00Z",
"skills": [
{
"name": "ccpa-check",
"fullName": "wwumit/skills-compliance-intl",
"skillFullName": "wwumit/skills-compliance-intl/skills/ccpa-check",
"description": "CCPA/CPRA compliance check …",
"repo": "wwumit/skills-compliance-intl",
"version": "2.2.4",
"disclosure": { "cloud": true, "network": ["https://compliancehub.cn"], "offlineMode": true },
"files": ["SKILL.md", "scripts/ccpa-check.py"]
}
],
"repos": [
{ "fullName": "wwumit/skills-compliance-intl", "skillCount": 9,
"cloudSkills": ["ccpa-check", "coppa-check", "gdpr-check", "hipaa-check"] }
]
}
Generate a catalog from a skill workspace with the included
catalog/build-catalog.mjs script (curated via catalog/curated.json).
verify-dsh.ts 在真实 DSH 运行时验证通过(SkillRegistry + provider 注册):
✅ ctx.skills.list() → 21 个技能(provider 层合并后)
✅ ctx.skills.get('ccpa-check') → 正文 {n} 字节
ctx.skills.registerProvider → 真实 list()/get() 调用线上 catalogcatalog 提供双颗粒度披露(市场/目录构建期单请求抓取消费):
{
"disclosureSchemaVersion": "0.2",
"skills": [
{ "name": "ccpa-check", "fullName": "wwumit/skills-compliance-intl",
"skillFullName": "wwumit/skills-compliance-intl/skills/ccpa-check",
"disclosure": { "cloud": true, "network": ["https://compliancehub.cn"],
"offlineMode": true, "apiKeys": [{"env": "COMPLIANCEHUB_API_KEY", "storage": "file-0600"}],
"jurisdiction": ["US-CA"], "retention": "session" } }
],
"repos": [
{ "fullName": "wwumit/skills-compliance-intl", "skillCount": 9,
"cloudSkills": ["ccpa-check", "coppa-check", "gdpr-check", "hipaa-check"] }
]
}
build-catalog.mjs 可复现skill-compliance v1.4.0 自动执行(D1/D3/D4 完整性 + 声明-代码一致性 + 宿主依赖)pnpm install
pnpm test # vitest (mocked fetch)
pnpm build # tsc → lib/
No system-prompt prose is added by this package. Skills served by the provider
appear in the standard model session catalog (<available_skills>) exactly like
locally installed skills, with name and description from the catalog.
Zero direct token contribution: the provider only feeds the shared skills catalog,
whose rendering cost is owned by the DSH skill consumer (@deepseek-ai/dsh-tool-skill).
Independent of model requests; no prompt-prefix contribution, so cache reuse is unaffected by provider activity.
get() currently fetches SKILL.md only; script/resource
files listed in the catalog manifest are not yet downloaded into a local cache
(resourceBase resolution is future work).list() refetches on every call; a TTL cache keyed by the
resolved catalog URL is planned.CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。