@qiqiangvae/dsh-obsidian 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.en.md +127 -0
  2. package/README.md +74 -53
  3. package/package.json +2 -1
package/README.en.md ADDED
@@ -0,0 +1,127 @@
1
+ # dsh-obsidian
2
+
3
+ [![npm version](https://img.shields.io/npm/v/@qiqiangvae/dsh-obsidian)](https://www.npmjs.com/package/@qiqiangvae/dsh-obsidian)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
5
+
6
+ Self-organizing AI second brain for Obsidian, as a single [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) plugin.
7
+
8
+ Published on npm as [`@qiqiangvae/dsh-obsidian`](https://www.npmjs.com/package/@qiqiangvae/dsh-obsidian).
9
+
10
+ [中文](./README.md) | English
11
+
12
+ Targets parity with [AgriciDaniel/claude-obsidian](https://github.com/AgriciDaniel/claude-obsidian) (MIT).
13
+ Built on the LLM Wiki pattern (Andrej Karpathy).
14
+ Merged fork of `dsh-plugin-wiki-skills` + `dsh-plugin-wiki-tools` — see [`ATTRIBUTION.md`](./ATTRIBUTION.md).
15
+
16
+ ## Why this exists
17
+
18
+ The two upstream DSH plugins were great but:
19
+
20
+ 1. **DSH is in active development and breaks the public cordis API often.**
21
+ When that happens, the two plugins stop loading. The original maintainer
22
+ updates at a slower cadence than the framework.
23
+ 2. **Splitting skills and tools is good architecture but bad UX for one person.**
24
+ You almost always want both.
25
+
26
+ So: one plugin, versioned together, with a clear upgrade path to v2.x features
27
+ (see [`PORTING_PLAN.md`](./PORTING_PLAN.md)).
28
+
29
+ ## Install
30
+
31
+ Prerequisites:
32
+
33
+ - DSH 0.x or newer (with `dsh plugin` CLI), Node ≥ 22.19
34
+ - An Obsidian vault somewhere on disk
35
+
36
+ ### From npm (recommended)
37
+
38
+ ```bash
39
+ # 1. Add the plugin
40
+ dsh plugin --profile web add @qiqiangvae/dsh-obsidian
41
+
42
+ # 2. Set your vault path in your profile's cordis.patch.yml
43
+ # (~/.dsh/profiles/web/cordis.patch.yml)
44
+ #
45
+ # - id: dsh-obsidian
46
+ # config:
47
+ # vaultPath: /absolute/path/to/your/obsidian/vault
48
+ # # optional:
49
+ # # typeFolders: { domain: "wiki/areas" }
50
+ # # maxQueryResults: 10
51
+ #
52
+ # 3. Restart DSH
53
+ dsh web
54
+
55
+ # 4. (optional) Scaffold a fresh vault
56
+ # In DSH: run the wiki_scaffold tool with { template: "default", apply: true }
57
+ ```
58
+
59
+ To pin a specific version:
60
+
61
+ ```bash
62
+ dsh plugin --profile web add @qiqiangvae/dsh-obsidian@0.1.0
63
+ ```
64
+
65
+ ### From GitHub
66
+
67
+ ```bash
68
+ dsh plugin --profile web add github:qiqiangvae/dsh-obsidian
69
+ ```
70
+
71
+ > **Why the scoped name?** The unscoped `dsh-obsidian` is already taken on npm
72
+ > by an unrelated vault-filesystem plugin ([mingzeng21/dsh-obsidian](https://github.com/mingzeng21/dsh-obsidian)).
73
+ > This package is published as `@qiqiangvae/dsh-obsidian` to avoid the collision.
74
+
75
+ ### From a local checkout (while developing)
76
+
77
+ ```bash
78
+ git clone git@github.com:qiqiangvae/dsh-obsidian.git
79
+ cd dsh-obsidian
80
+ pnpm install # for dev dependencies (typescript, @types)
81
+ pnpm run build # compiles src/ → lib/
82
+ dsh plugin --profile web add link:$(pwd)
83
+ ```
84
+
85
+ ## What you get
86
+
87
+ ### Tools (registered on `ctx.tools`)
88
+
89
+ | Tool | What it does |
90
+ | ---- | ------------ |
91
+ | `wiki_query` | BM25 search with snippet + link graph; quick mode returns hot + index verbatim |
92
+ | `wiki_write` | One-page write with type-routing, frontmatter completion, index/log bookkeeping, source-hash delta skip |
93
+ | `wiki_lint` | Health check: duplicates, dead links, orphans, frontmatter gaps, empty sections, stale index/hot |
94
+ | `wiki_scaffold` | Initialize the LLM Wiki layout (dry-run by default) |
95
+ | `wiki_rename` | Rename a page with machinery protection |
96
+ | `wiki_list` | List all page titles |
97
+
98
+ ### Skills (registered on `ctx.skills`)
99
+
100
+ From the Lion-1209 v1 suite:
101
+
102
+ - `wiki` — vault scaffolding and routing
103
+ - `wiki-ingest` — capture sources into the vault
104
+ - `wiki-query` — answer from the vault with citations
105
+ - `wiki-lint` — health-check workflow
106
+ - `save` — file conversation insights
107
+ - `think` — 10-principle reasoning loop
108
+
109
+ Plus reference skills from kepano (Obsidian Flavored Markdown, Bases) and
110
+ DSH-flavoured extensions:
111
+
112
+ - `obsidian-markdown`, `obsidian-bases`, `json-canvas`, `defuddle`, `obsidian-cli`
113
+
114
+ ## Develop
115
+
116
+ ```bash
117
+ pnpm install
118
+ pnpm run build # tsc → lib/
119
+ pnpm test # node --test test/
120
+ ```
121
+
122
+ Edit code under `src/`, build to `lib/`, restart DSH. To hot-reload during
123
+ development, also run `pnpm run dev:web` from the DSH checkout.
124
+
125
+ ## License
126
+
127
+ MIT. See [`LICENSE`](./LICENSE) and [`ATTRIBUTION.md`](./ATTRIBUTION.md).
package/README.md CHANGED
@@ -1,92 +1,113 @@
1
1
  # dsh-obsidian
2
2
 
3
- Self-organizing AI second brain for Obsidian, as a single [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) plugin.
3
+ [![npm version](https://img.shields.io/npm/v/@qiqiangvae/dsh-obsidian)](https://www.npmjs.com/package/@qiqiangvae/dsh-obsidian)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
4
5
 
5
- Targets parity with [AgriciDaniel/claude-obsidian](https://github.com/AgriciDaniel/claude-obsidian) (MIT).
6
- Built on the LLM Wiki pattern (Andrej Karpathy).
7
- Merged fork of `dsh-plugin-wiki-skills` + `dsh-plugin-wiki-tools` — see [`ATTRIBUTION.md`](./ATTRIBUTION.md).
6
+ Obsidian 变成「自组织 AI 第二大脑」的 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 单插件。
8
7
 
9
- ## Why this exists
8
+ npm 上发布为 [`@qiqiangvae/dsh-obsidian`](https://www.npmjs.com/package/@qiqiangvae/dsh-obsidian)。
10
9
 
11
- The two upstream DSH plugins were great but:
10
+ 中文 | [English](./README.en.md)
12
11
 
13
- 1. **DSH is in active development and breaks the public cordis API often.**
14
- When that happens, the two plugins stop loading. The original maintainer
15
- updates at a slower cadence than the framework.
16
- 2. **Splitting skills and tools is good architecture but bad UX for one person.**
17
- You almost always want both.
12
+ 对标 [AgriciDaniel/claude-obsidian](https://github.com/AgriciDaniel/claude-obsidian)(MIT),
13
+ 基于 LLM Wiki 模式(Andrej Karpathy)。
14
+ 合并了 `dsh-plugin-wiki-skills` + `dsh-plugin-wiki-tools` 两个上游插件——详见 [`ATTRIBUTION.md`](./ATTRIBUTION.md)。
18
15
 
19
- So: one plugin, versioned together, with a clear upgrade path to v2.x features
20
- (see [`PORTING_PLAN.md`](./PORTING_PLAN.md)).
16
+ ## 为什么做这个
21
17
 
22
- ## Install
18
+ 两个上游 DSH 插件都很棒,但有几个问题:
23
19
 
24
- Prerequisites:
20
+ 1. **DSH 正在快速迭代,经常破坏公开的 cordis API。** 一旦破坏,两个插件就停止加载,而原维护者的更新节奏跟不上框架。
21
+ 2. **把 skills 和 tools 拆成两个插件,架构上没错,但对个人使用不友好。** 你几乎总是两个都要。
25
22
 
26
- - DSH 0.x or newer (with `dsh plugin` CLI), Node ≥ 22.19
27
- - An Obsidian vault somewhere on disk
23
+ 所以:合成一个插件、统一版本,并提供清晰的 v2.x 升级路线
24
+ (见 [`PORTING_PLAN.md`](./PORTING_PLAN.md))。
25
+
26
+ ## 安装
27
+
28
+ 前置条件:
29
+
30
+ - DSH 0.x 或更新(带 `dsh plugin` CLI),Node ≥ 22.19
31
+ - 磁盘上有一个 Obsidian vault
32
+
33
+ ### 从 npm 安装(推荐)
28
34
 
29
35
  ```bash
30
- # 1. Add the plugin
31
- dsh plugin --profile web add github:qiqiangvae/dsh-obsidian
36
+ # 1. 添加插件
37
+ dsh plugin --profile web add @qiqiangvae/dsh-obsidian
32
38
 
33
- # 2. Set your vault path in your profile's cordis.patch.yml
39
+ # 2. 在你 profile cordis.patch.yml 里配置 vault 路径
34
40
  # (~/.dsh/profiles/web/cordis.patch.yml)
35
41
  #
36
42
  # - id: dsh-obsidian
37
43
  # config:
38
44
  # vaultPath: /absolute/path/to/your/obsidian/vault
39
- # # optional:
45
+ # # 可选:
40
46
  # # typeFolders: { domain: "wiki/areas" }
41
47
  # # maxQueryResults: 10
42
48
  #
43
- # 3. Restart DSH
49
+ # 3. 重启 DSH
44
50
  dsh web
45
51
 
46
- # 4. (optional) Scaffold a fresh vault
47
- # In DSH: run the wiki_scaffold tool with { template: "default", apply: true }
52
+ # 4. (可选)初始化一个全新 vault
53
+ # DSH 里运行 wiki_scaffold 工具,参数 { template: "default", apply: true }
48
54
  ```
49
55
 
50
- To install from a local checkout (e.g. while developing this plugin):
56
+ 锁定某个具体版本:
57
+
58
+ ```bash
59
+ dsh plugin --profile web add @qiqiangvae/dsh-obsidian@0.1.0
60
+ ```
61
+
62
+ ### 从 GitHub 安装
63
+
64
+ ```bash
65
+ dsh plugin --profile web add github:qiqiangvae/dsh-obsidian
66
+ ```
67
+
68
+ > **为什么是 scoped 包名?** 非 scoped 的 `dsh-obsidian` 已被另一个无关的
69
+ > vault 文件系统插件([mingzeng21/dsh-obsidian](https://github.com/mingzeng21/dsh-obsidian))
70
+ > 占用。本包以 `@qiqiangvae/dsh-obsidian` 发布以避免撞名。
71
+
72
+ ### 从本地代码安装(开发时)
51
73
 
52
74
  ```bash
53
75
  git clone git@github.com:qiqiangvae/dsh-obsidian.git
54
76
  cd dsh-obsidian
55
- pnpm install # for dev dependencies (typescript, @types)
56
- pnpm run build # compiles src/ → lib/
77
+ pnpm install # 开发依赖(typescript、@types
78
+ pnpm run build # 编译 src/ → lib/
57
79
  dsh plugin --profile web add link:$(pwd)
58
80
  ```
59
81
 
60
- ## What you get
82
+ ## 你能得到什么
61
83
 
62
- ### Tools (registered on `ctx.tools`)
84
+ ### 工具(注册在 `ctx.tools`)
63
85
 
64
- | Tool | What it does |
65
- | ---- | ------------ |
66
- | `wiki_query` | BM25 search with snippet + link graph; quick mode returns hot + index verbatim |
67
- | `wiki_write` | One-page write with type-routing, frontmatter completion, index/log bookkeeping, source-hash delta skip |
68
- | `wiki_lint` | Health check: duplicates, dead links, orphans, frontmatter gaps, empty sections, stale index/hot |
69
- | `wiki_scaffold` | Initialize the LLM Wiki layout (dry-run by default) |
70
- | `wiki_rename` | Rename a page with machinery protection |
71
- | `wiki_list` | List all page titles |
86
+ | 工具 | 作用 |
87
+ | ---- | ---- |
88
+ | `wiki_query` | BM25 检索,返回片段 + 链接图;quick 模式直接返回 hot + index |
89
+ | `wiki_write` | 单页写入,含 type 路由、frontmatter 补全、index/log 记账、source-hash 去重跳过 |
90
+ | `wiki_lint` | 健康检查:重复、死链、孤儿页、frontmatter 缺失、空章节、失效 index/hot |
91
+ | `wiki_scaffold` | 初始化 LLM Wiki 目录结构(默认 dry-run |
92
+ | `wiki_rename` | 重命名页面(含机器页保护) |
93
+ | `wiki_list` | 列出所有页面标题 |
72
94
 
73
- ### Skills (registered on `ctx.skills`)
95
+ ### 技能(注册在 `ctx.skills`)
74
96
 
75
- From the Lion-1209 v1 suite:
97
+ 来自 Lion-1209 v1 套件:
76
98
 
77
- - `wiki` — vault scaffolding and routing
78
- - `wiki-ingest` — capture sources into the vault
79
- - `wiki-query` — answer from the vault with citations
80
- - `wiki-lint` — health-check workflow
81
- - `save` — file conversation insights
82
- - `think` — 10-principle reasoning loop
99
+ - `wiki` — vault 脚手架与路由
100
+ - `wiki-ingest` — 把来源捕获进 vault
101
+ - `wiki-query` — 带引用地从 vault 回答问题
102
+ - `wiki-lint` — 健康检查工作流
103
+ - `save` — 归档对话洞察
104
+ - `think` — 10 原则推理循环
83
105
 
84
- Plus reference skills from kepano (Obsidian Flavored Markdown, Bases) and
85
- DSH-flavoured extensions:
106
+ 外加 kepano 的参考技能(Obsidian Flavored MarkdownBases)与 DSH 风格扩展:
86
107
 
87
- - `obsidian-markdown`, `obsidian-bases`, `json-canvas`, `defuddle`, `obsidian-cli`
108
+ - `obsidian-markdown`、`obsidian-bases`、`json-canvas`、`defuddle`、`obsidian-cli`
88
109
 
89
- ## Develop
110
+ ## 开发
90
111
 
91
112
  ```bash
92
113
  pnpm install
@@ -94,9 +115,9 @@ pnpm run build # tsc → lib/
94
115
  pnpm test # node --test test/
95
116
  ```
96
117
 
97
- Edit code under `src/`, build to `lib/`, restart DSH. To hot-reload during
98
- development, also run `pnpm run dev:web` from the DSH checkout.
118
+ `src/` 下改代码,构建到 `lib/`,重启 DSH。开发期间想热更新,再在 DSH
119
+ checkout 里跑 `pnpm run dev:web`。
99
120
 
100
- ## License
121
+ ## 许可证
101
122
 
102
- MIT. See [`LICENSE`](./LICENSE) and [`ATTRIBUTION.md`](./ATTRIBUTION.md).
123
+ MIT。见 [`LICENSE`](./LICENSE) [`ATTRIBUTION.md`](./ATTRIBUTION.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qiqiangvae/dsh-obsidian",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Self-organizing AI second brain for Obsidian, as a single DeepSeek Harness plugin. Merged fork of dsh-plugin-wiki-skills + dsh-plugin-wiki-tools, targeting parity with claude-obsidian.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -22,6 +22,7 @@
22
22
  "cordis.patch.yml",
23
23
  "skills/",
24
24
  "README.md",
25
+ "README.en.md",
25
26
  "LICENSE",
26
27
  "ATTRIBUTION.md"
27
28
  ],