deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
DSH Cordis 插件:按需搜索 Obsidian 知识库 + 幂等归档 DSH 会话(零 token 注入)
纯模型 Tool 按需调用,不注入系统提示词。默认 token 成本 ≈ 两个 Tool 的 schema。
date + shortId 幂等 upsert(标题变更不影响去重)vault/04-Archive/,YAML frontmatter + Obsidian 原生标签DSH-会话归档-索引.md 的按日期段(双井号边界 + 同 shortId 去重)命名约束:工具名只使用
^[a-zA-Z0-9_-]+$允许的字符(下划线,不含点号)。v3.4.2 及更早版本曾用obsidian.search这类点号命名,会被 provider 在请求校验阶段拒绝(HTTP 400,整个会话无法对话),请勿改回。
obsidian_search在 Obsidian 知识库中按关键词搜索相关笔记(中英文均可,自动 CJK bigram 分词)。
// 输入
{ "topic": "npm 发布 2FA", "limit": 5 }
// 输出
{
"ok": true,
"matches": [
{
"file": "04-Archive/2026-09-12-3073121a-…",
"score": 3.72,
"snippet": "npm 2FA 查证:TOTP 已废弃…",
"size": 4200,
"matchReason": "npm pub lis 2fa"
}
],
"count": 5,
"vaultPath": "E:/dsh-workspace/obsidian-vault"
}
obsidian_sync_session把当前 DSH 会话幂等归档到 Obsidian vault。摘要未变则跳过写盘。
可选参数 date(YYYY-MM-DD)用于指定归档日期,回填历史会话时使用;省略或格式非法时取当前 UTC 日期。该值同时决定文件名前缀、frontmatter date、正文日期与索引挂载的日期段。
// 输入
{
"session_id": "session-76bb60db-bdde-…",
"title": "dsh-obsidian-sync 优化与发布",
"summary": "用户需求:… 过程要点:… 交付物:…",
"tags": ["dsh", "obsidian", "cordis"],
"related": ["2026-09-11-a9095879-dsh-tool-agnes工具升级与发布.md"],
"raw_log": "C:\\Users\\dph\\.dsh\\sessions\\--E-dsh-workspace--\\session-76bb60db\\session.v3.jsonl.zstd",
"date": "2026-09-13"
}
// 输出(首次写入)
{ "ok": true, "skipped": false, "file": "04-Archive/2026-09-13-76bb60db-…", "index": "updated" }
// 输出(摘要未变)
{ "ok": true, "skipped": true, "file": "…", "reason": "summary unchanged", "index": "unchanged" }
// 输出(失败)
{ "ok": false, "error": "writeText failed: …", "code": "WRITE_FAILED" }
dsh plugin --profile web add @dingpenghui/dsh-obsidian-sync
cd dsh-obsidian-sync
pnpm install
pnpm build
dsh plugin --profile web add .
在 ~/.dsh/settings.yaml 中添加:
obsidian-sync:
vaultPath: "E:/dsh-workspace/obsidian-vault"
searchEnabled: true
indexRefreshMs: 60000
所有字段均有默认值,可不配置直接挂载。
pnpm install
pnpm build # tsdown 构建 → lib/
pnpm typecheck # tsc 类型检查
node scripts/test-tokenize.mjs # CJK bigram 分词
node scripts/test-idempotent.mjs # 幂等 upsert
node scripts/test-index-boundary.mjs # 索引边界插入
node scripts/test-sync-session-date-idempotent.mjs # sync_session 的 date 参数与摘要幂等比较
pnpm version patch
git push origin main --tags
npm publish
.npmrc 不入版本库(含 npm access token),发布前需本地配置。
MIT
作者: Dingpenghui-good
仓库: https://github.com/Dingpenghui-good/dsh-obsidian-sync
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。