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
Language / 语言: English · 中文
dsh-geo is a DeepSeek Harness bundle that gives the agent explainable SEO, GEO and AEO tools for Markdown knowledge bases.
Technical package ID:
dsh-geo· DeepSeek Harness plugin for SEO, GEO and AEO
defaultRoot.The plugin is local-first. Core analysis runs through the Harness filesystem service. Public URLs use the official anonymous ctx.web fetch seam; cookies and credentials are never used. Private or JavaScript-rendered pages should be exported as Markdown/HTML and analyzed as a local snapshot.
Teams publishing content for both search engines and AI answer engines commonly face these problems:
This plugin turns those needs into explainable, local-first checks with evidence, scores, priorities and guarded content updates.
| Tool | Purpose |
|---|---|
geo_setup_check |
Verify root access and scan readiness |
geo_audit_note |
Audit one Markdown note |
geo_audit_vault |
Scan a knowledge base |
geo_project_report |
Create a structured project report |
geo_workflow |
Run URL/snapshot diagnosis, keyword planning and content production planning |
geo_content_brief |
Generate a structured content brief |
geo_source_check |
Check citations and provenance |
geo_preview_content |
Preview a complete Markdown replacement |
geo_apply_content |
Apply an approved, version-guarded replacement |
dsh plugin --profile default add dsh-geo
dsh plugin --profile default add github:winyh/dsh-geo
The package builds itself after a GitHub source install. For reproducible deployments, pin the command to a reviewed commit, for example github:winyh/dsh-geo#<commit>.
Publish this directory as a public repository and add the repository topic dsh-plugin. The package metadata already includes dsh-plugin; the GitHub topic is what makes the repository appear in the Harness plugin topic listing.
Set the knowledge-base root in the Bundle configuration, then start DeepSeek Harness:
dsh web
For local development, build first and install the local directory from its parent folder:
pnpm install
pnpm run build
dsh plugin --profile default add ./dsh-geo
The recommended entry point for a real SEO project is geo_workflow. It keeps diagnosis, keyword adjustment and content production in one result instead of making you guess which tool to call next.
Analyze a public website or public account page:
Run geo_workflow for https://example.com. Goal: increase qualified product education traffic. Audience: first-time evaluators. Return the SEO/GEO/AEO diagnosis, qualitative keyword plan and a complete Markdown production plan. Do not write files.
Analyze a public or private account page after export:
Run geo_workflow for snapshots/account-home.html. Treat it as a private-page snapshot. Goal: make the profile easier to discover and quote. Return the diagnosis, keyword mapping, content brief and verification checklist. Do not write files.
The source boundary is deliberate:
http(s) URLs are fetched anonymously through Harness ctx.web.seed-only unless you explicitly provide external keyword data yourself.Start with a readiness check when installing into a new environment:
Check whether the configured knowledge-base root is ready for a local scan.
Audit this Markdown note for SEO, GEO and AEO. Show scores, evidence and the top five actions.
Scan my knowledge base and list notes with missing sources, orphan links and the lowest overall scores.
Create a project report with average SEO, GEO and AEO scores, governance gaps and priority files.
Create a content brief from this note, including audience, intent, outline, questions and source gaps.
Run the complete workflow for https://example.com, use "product education" as the seed keyword, and generate a draft plan without writing anything.
Use focus=seo, focus=geo or focus=aeo when you only want one assessment pillar.
Content changes are preview-only by default. A reliable first-use loop is:
path + previewToken; repeating the full Markdown content is optional because the token already binds the exact preview.The write operation uses a version guard and refuses to overwrite a file changed after the preview. If that happens, audit the current file and create a new preview instead of forcing the old change through. To save a draft as a new note, use createIfMissing=true on geo_preview_content; the destination must still be inside defaultRoot.
For a practical first request, use:
Check the configured root, audit notes/launch.md, fix only the three highest-impact issues, show a diff, and wait for my approval before writing anything.
The bundle ships with these defaults:
defaultRoot: "<your-knowledge-base-root>"
maxFiles: 500
maxFileBytes: 1048576
maxTextChars: 180000
maxResultChars: 50000
Tool paths may be absolute or workspace-relative. Relative paths resolve under defaultRoot, and every read or write is checked against that boundary.
请审计一篇 GEO.md,分别给出 SEO、GEO、AEO 的问题和优先级。
扫描我的知识库,找出来源缺失、孤立笔记和综合评分最低的 10 个文件。
先预览对 GEO.md 的优化结果;只有我明确确认后,才应用修改。
pnpm install
pnpm run typecheck
pnpm test
pnpm run build
The plugin follows the DeepSeek Harness Cordis model: it exports apply(ctx), injects tools, fs and web, and registers model-facing tools through the normal tool pipeline. Core scoring and file analysis are self-contained; public URL retrieval uses the official Harness web capability and does not require GEO-PRO.
DeepSeek Harness is currently a developer preview, so the plugin pins the current release-candidate peer range and should be tested against the Harness version used for deployment.
The following images are included from the project-level img folder and are intentionally displayed in this README:


Contact: 2712192471@qq.com
MIT. See LICENSE.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。