@deepseek-ai/dsh-tool-fs-search 0.1.7-alpha.2 → 0.1.7-rc.2

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.
package/README.i18n.yaml CHANGED
@@ -1,6 +1,115 @@
1
- # Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each
2
- # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
- # after editing either side, bring the other along and re-record with:
1
+ # Bilingual-pair consistency record for README.md (docs/i18n/README.md): per heading
2
+ # section, a hash of its English and Chinese blocks outside code blocks and generated regions.
3
+ # After editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write packages/fs/tool-fs-search/README.md
5
- README.md: 83b1d89b3276f3f6fabbe501017af2df8ec1868a
6
- README.zh.md: fc0eeed77521c33262d057afd90937ce03280e2d
5
+ /:
6
+ en: 117a1d8e2f2d3651
7
+ zh: 8a27e703652d670c
8
+ /deepseek-ai-dsh-tool-fs-search:
9
+ en: 6fd594ab2eacb521
10
+ zh: bcbce1550c71bbae
11
+ /deepseek-ai-dsh-tool-fs-search/summary:
12
+ en: a2d8407299a71efe
13
+ zh: d43338a4c7954a39
14
+ /deepseek-ai-dsh-tool-fs-search/table-of-contents:
15
+ en: d152484eb41ac6b4
16
+ zh: 09388d293f9be9cb
17
+ /deepseek-ai-dsh-tool-fs-search/use-this-package:
18
+ en: aebe9494cf6e8f3a
19
+ zh: 8ae2ebd6be7c3484
20
+ /deepseek-ai-dsh-tool-fs-search/use-this-package/minimal-composition:
21
+ en: a5a01d14e0bec814
22
+ zh: 409298cfafd91b05
23
+ /deepseek-ai-dsh-tool-fs-search/use-this-package/the-tools:
24
+ en: 9edb7655f8ed8bc6
25
+ zh: 21eadd65c1f2f07c
26
+ /deepseek-ai-dsh-tool-fs-search/use-this-package/configuration:
27
+ en: 3e84e19a22aeb6c8
28
+ zh: 8ac44b21eb697f2f
29
+ /deepseek-ai-dsh-tool-fs-search/use-this-package/deployment-requirement:
30
+ en: 4aa9b74deef586bc
31
+ zh: f855f815829d4e1e
32
+ /deepseek-ai-dsh-tool-fs-search/use-this-package/failures-and-recovery:
33
+ en: d7a59e296308b2bd
34
+ zh: 66243fcd932fe49a
35
+ /deepseek-ai-dsh-tool-fs-search/understand-the-implementation:
36
+ en: 7546db09c46181e0
37
+ zh: 3aae6dc6a773511c
38
+ /deepseek-ai-dsh-tool-fs-search/understand-the-implementation/design-concept:
39
+ en: 03bde21e022e845a
40
+ zh: 9c9e8b9a9713dda5
41
+ /deepseek-ai-dsh-tool-fs-search/understand-the-implementation/source-map:
42
+ en: 5a30f023dd86c345
43
+ zh: 558b6e80c62648ba
44
+ /deepseek-ai-dsh-tool-fs-search/understand-the-implementation/how-a-search-runs:
45
+ en: 8443370c1f347d0c
46
+ zh: 5f5c6fa8cdb97cba
47
+ /deepseek-ai-dsh-tool-fs-search/understand-the-implementation/two-budgets-two-artifacts:
48
+ en: b7e8c2191f8227dc
49
+ zh: a064e2e03761bfd5
50
+ /deepseek-ai-dsh-tool-fs-search/further-exploration:
51
+ en: 602fbbee4ebd695c
52
+ zh: 448634faeef2f321
53
+ /deepseek-ai-dsh-tool-fs-search/model-experience:
54
+ en: 215e7ba838619b7b
55
+ zh: a311da3843709f90
56
+ /deepseek-ai-dsh-tool-fs-search/model-experience/system-prompt:
57
+ en: cf78b9dd5596495f
58
+ zh: bd44560f8c2435e8
59
+ /deepseek-ai-dsh-tool-fs-search/model-experience/system-prompt/what-the-model-sees:
60
+ en: 0700638250399773
61
+ zh: a42336403025e9bd
62
+ /deepseek-ai-dsh-tool-fs-search/model-experience/system-prompt/what-the-model-sees/glob-guidance:
63
+ en: c8f798f1bf500fe7
64
+ zh: 9f56b60ec8ae1779
65
+ /deepseek-ai-dsh-tool-fs-search/model-experience/system-prompt/what-the-model-sees/grep-guidance:
66
+ en: 7ed8e5efe4deb2de
67
+ zh: eb8419d4579aeab2
68
+ /deepseek-ai-dsh-tool-fs-search/model-experience/system-prompt/token-effect:
69
+ en: c10c8a3e9e470e62
70
+ zh: c2a2404bfa4fd60a
71
+ /deepseek-ai-dsh-tool-fs-search/model-experience/system-prompt/kv-cache-effect:
72
+ en: db2f355d8209a537
73
+ zh: bd91d8e33a7042f6
74
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-schemas:
75
+ en: 3039bc5e7a796b21
76
+ zh: 6b7a9eaf69c9ea53
77
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-schemas/what-the-model-sees:
78
+ en: ab07aaec26eaa89a
79
+ zh: 693c46c42ebc3030
80
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-schemas/token-effect:
81
+ en: 023a80f81229887f
82
+ zh: 5410d27cde4fb656
83
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-schemas/kv-cache-effect:
84
+ en: 4555717d7b481f52
85
+ zh: 88d5f239ac01f197
86
+ /deepseek-ai-dsh-tool-fs-search/model-experience/results-and-spill-notices:
87
+ en: e9d1330ebd642a0d
88
+ zh: f9bc6dffb0afd878
89
+ /deepseek-ai-dsh-tool-fs-search/model-experience/results-and-spill-notices/what-the-model-sees:
90
+ en: 3a357b506d327e18
91
+ zh: b2d97abd9af096d4
92
+ /deepseek-ai-dsh-tool-fs-search/model-experience/results-and-spill-notices/token-effect:
93
+ en: 033a5b99fec018a1
94
+ zh: 79fc41e856cd9925
95
+ /deepseek-ai-dsh-tool-fs-search/model-experience/results-and-spill-notices/kv-cache-effect:
96
+ en: f5d5f97a153f7c70
97
+ zh: 14660e568cd51bdc
98
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-errors:
99
+ en: 2d4f2c8605eccab3
100
+ zh: 67f1f0218f73c6bf
101
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-errors/what-the-model-sees:
102
+ en: 375c4554a70d93a4
103
+ zh: 372a088c6ecf68ab
104
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-errors/token-effect:
105
+ en: 681cadd5be7b8ac1
106
+ zh: 1f0102977ea02785
107
+ /deepseek-ai-dsh-tool-fs-search/model-experience/tool-errors/kv-cache-effect:
108
+ en: f5d5f97a153f7c70
109
+ zh: 14660e568cd51bdc
110
+ /deepseek-ai-dsh-tool-fs-search/known-limitations-and-deferred-work:
111
+ en: 4fca846226cb8ef2
112
+ zh: fb797ec586cec7f4
113
+ /deepseek-ai-dsh-tool-fs-search/known-limitations-and-deferred-work/dev-note:
114
+ en: 0c4d0c465413d319
115
+ zh: 2e062f9e20a99241
package/README.md CHANGED
@@ -134,18 +134,12 @@ Read these pages when the package-level contract is not enough. They move from t
134
134
 
135
135
  #### What the model sees
136
136
 
137
- At assembly time, each section checks `ctx.tools.get(name, scope)` and renders only while its tool is visible. The grep paragraph includes its read follow-up sentence only while read is visible. The original text and section order stay unchanged for the same supported tool set, including PTC capabilities behind `run_code`. This scope-dependent text selection applies to system-prompt sections. Tool schema descriptions remain registration-time text; in particular, the grep schema still recommends read even in a scope that hides read. Scope-dependent schema wording is not implemented.
137
+ At assembly time, each section checks `ctx.tools.get(name, scope)` and renders only while its tool is visible. The grep paragraph includes its read follow-up sentence only while read is visible. The original text and section order stay unchanged for the same supported tool set, including PTC capabilities behind `run_code`. This scope-dependent text selection applies to system-prompt sections. Tool schema descriptions remain registration-time text and do not name other tools.
138
138
 
139
- ##### Glob guidance with `sampleOverCapGlobResults: true`
139
+ ##### Glob guidance
140
140
 
141
141
  ```markdown
142
- Use the glob tool — not shell find — to discover files by path pattern. A pattern with no "/" matches basenames at any depth, so "*" matches every file in the tree rather than its top level. Results are files only, never directories, and include hidden and ignored files: a result that fits comes back in modification-time order, while a larger one is sampled across top-level entries, so it spans the tree instead of one subtree.
143
- ```
144
-
145
- ##### Glob guidance with `sampleOverCapGlobResults: false`
146
-
147
- ```markdown
148
- Use the glob tool — not shell find — to discover files by path pattern. A pattern with no "/" matches basenames at any depth, so "*" matches every file in the tree rather than its top level. Results are files only, never directories, and include hidden and ignored files: a result that fits comes back in modification-time order, while a larger one keeps the modification-time-ordered head.
142
+ Use the glob tool — not shell find — to discover files by path pattern.
149
143
  ```
150
144
 
151
145
  ##### Grep guidance
package/README.zh.md CHANGED
@@ -134,18 +134,12 @@ Node 部署在受支持的 macOS、Linux 与 Windows 目标上获得 `@vscode/ri
134
134
 
135
135
  #### 模型看到的内容
136
136
 
137
- 组装时,每个段落通过 `ctx.tools.get(name, scope)` 检查对应工具,仅在其可见时输出。grep 段落仅在 read 可见时包含后续使用 read 的句子。同一受支持工具集合下,原文和段落顺序保持不变,包括通过 `run_code` 暴露的 PTC 能力。 这种按 scope 选择文本的机制适用于系统提示词段落。工具 schema 描述仍是注册时的文本;具体而言,即使 scope 隐藏了 read,grep 的 schema 仍会推荐 read。尚未实现按 scope 改变 schema 措辞。
137
+ 组装时,每个段落通过 `ctx.tools.get(name, scope)` 检查对应工具,仅在其可见时输出。grep 段落仅在 read 可见时包含后续使用 read 的句子。同一受支持工具集合下,原文和段落顺序保持不变,包括通过 `run_code` 暴露的 PTC 能力。 这种按 scope 选择文本的机制适用于系统提示词段落。工具 schema 描述仍是注册时的文本,不提及其他工具。
138
138
 
139
- ##### 启用 `sampleOverCapGlobResults: true` 时的 Glob 指导
139
+ ##### Glob 指导
140
140
 
141
141
  ```markdown
142
- Use the glob tool — not shell find — to discover files by path pattern. A pattern with no "/" matches basenames at any depth, so "*" matches every file in the tree rather than its top level. Results are files only, never directories, and include hidden and ignored files: a result that fits comes back in modification-time order, while a larger one is sampled across top-level entries, so it spans the tree instead of one subtree.
143
- ```
144
-
145
- ##### 启用 `sampleOverCapGlobResults: false` 时的 Glob 指导
146
-
147
- ```markdown
148
- Use the glob tool — not shell find — to discover files by path pattern. A pattern with no "/" matches basenames at any depth, so "*" matches every file in the tree rather than its top level. Results are files only, never directories, and include hidden and ignored files: a result that fits comes back in modification-time order, while a larger one keeps the modification-time-ordered head.
142
+ Use the glob tool — not shell find — to discover files by path pattern.
149
143
  ```
150
144
 
151
145
  ##### Grep 指导
package/lib/index.js CHANGED
@@ -772,16 +772,15 @@ function presentGlobResult(_args, result) {
772
772
  * @param caps - the deployment's resolved glob caps (plugin config after defaulting).
773
773
  */
774
774
  function applyGlobTool(ctx, caps) {
775
- const overCapGuidance = caps.sampleOverCapGlobResults ? "while a larger one is sampled across top-level entries, so it spans the tree instead of one subtree." : "while a larger one keeps the modification-time-ordered head.";
776
775
  ctx.systemPrompt.section({
777
776
  name: "tool:glob",
778
777
  order: ctx.systemPrompt.getSectionOrder("TOOL_GLOB"),
779
- text: ({ scope }) => ctx.tools.get("glob", scope) === void 0 ? "" : `Use the glob tool — not shell find — to discover files by path pattern. A pattern with no "/" matches basenames at any depth, so "*" matches every file in the tree rather than its top level. Results are files only, never directories, and include hidden and ignored files: a result that fits comes back in modification-time order, ${overCapGuidance}`
778
+ text: ({ scope }) => ctx.tools.get("glob", scope) === void 0 ? "" : "Use the glob tool — not shell find — to discover files by path pattern."
780
779
  });
781
- const overCapDescription = caps.sampleOverCapGlobResults ? `a larger result instead returns ${caps.maxResults} paths sampled across top-level entries` : `a larger result returns the first ${caps.maxResults} paths in modification-time order`;
780
+ const overCapDescription = caps.sampleOverCapGlobResults ? "is sampled across top-level entries" : "keeps the first paths";
782
781
  const tool = defineTool({
783
782
  name: "glob",
784
- description: `Find files whose paths match a glob pattern. Returns matching file paths — never directories — including hidden and ignored files (VCS metadata directories are excluded). Up to ${caps.maxResults} paths come back in modification-time order; ${overCapDescription}, says so, and reports where the complete sorted list was saved. This tool does not enumerate directory entries.`,
783
+ description: `Find files, not directories, whose paths match a glob pattern, including hidden and ignored files. Returns up to ${caps.maxResults} paths in modification-time order; a larger result ${overCapDescription} and reports where the complete list was saved.`,
785
784
  parameters: {
786
785
  pattern: {
787
786
  type: "string",
@@ -1089,7 +1088,7 @@ function applyGrepTool(ctx, caps) {
1089
1088
  });
1090
1089
  const tool = defineTool({
1091
1090
  name: "grep",
1092
- description: `Search file contents with a ripgrep regular expression. Returns matching lines with line numbers, grouped by file. Returns the first ${caps.maxMatches} matches inline; a capped result reports where the complete match list was saved. Use read on a matched file for surrounding context.`,
1091
+ description: `Search file contents with a ripgrep regular expression. Returns matching lines with line numbers, grouped by file. Returns up to ${caps.maxMatches} matches; a larger result reports where the complete match list was saved.`,
1093
1092
  parameters: {
1094
1093
  pattern: {
1095
1094
  type: "string",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-tool-fs-search",
3
3
  "description": "Model-facing filesystem discovery tools (glob, grep) backed by the packaged ripgrep binary (@vscode/ripgrep)",
4
- "version": "0.1.7-alpha.2",
4
+ "version": "0.1.7-rc.2",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -31,28 +31,28 @@
31
31
  "@deepseek-ai/schemastery": "~3.18.4"
32
32
  },
33
33
  "peerDependencies": {
34
- "@deepseek-ai/dsh-output-retention": "0.1.7-alpha.2",
35
- "@deepseek-ai/dsh-session": "0.1.7-alpha.2",
36
- "@deepseek-ai/dsh-spill": "0.1.7-alpha.2",
37
- "@deepseek-ai/dsh-subprocess": "0.1.7-alpha.2",
38
- "@deepseek-ai/dsh-system-prompt": "0.1.7-alpha.2",
39
- "@deepseek-ai/dsh-llm": "0.1.7-alpha.2",
40
- "@deepseek-ai/dsh-timeout": "0.1.7-alpha.2",
41
- "@deepseek-ai/dsh-tools": "0.1.7-alpha.2",
34
+ "@deepseek-ai/dsh-llm": "0.1.7-rc.2",
35
+ "@deepseek-ai/dsh-output-retention": "0.1.7-rc.2",
36
+ "@deepseek-ai/dsh-session": "0.1.7-rc.2",
37
+ "@deepseek-ai/dsh-spill": "0.1.7-rc.2",
38
+ "@deepseek-ai/dsh-subprocess": "0.1.7-rc.2",
39
+ "@deepseek-ai/dsh-system-prompt": "0.1.7-rc.2",
40
+ "@deepseek-ai/dsh-timeout": "0.1.7-rc.2",
41
+ "@deepseek-ai/dsh-tools": "0.1.7-rc.2",
42
42
  "@deepseek-ai/cordis": "~4.0.4"
43
43
  },
44
44
  "devDependencies": {
45
- "@deepseek-ai/dsh-agent": "0.1.7-alpha.2",
46
- "@deepseek-ai/dsh-subprocess": "0.1.7-alpha.2",
47
- "@deepseek-ai/dsh-subprocess-local": "0.1.7-alpha.2",
48
- "@deepseek-ai/dsh-llm": "0.1.7-alpha.2",
49
- "@deepseek-ai/dsh-output-retention": "0.1.7-alpha.2",
50
- "@deepseek-ai/dsh-session": "0.1.7-alpha.2",
51
- "@deepseek-ai/dsh-spill": "0.1.7-alpha.2",
52
- "@deepseek-ai/dsh-system-prompt": "0.1.7-alpha.2",
45
+ "@deepseek-ai/dsh-subprocess": "0.1.7-rc.2",
46
+ "@deepseek-ai/dsh-subprocess-local": "0.1.7-rc.2",
47
+ "@deepseek-ai/dsh-llm": "0.1.7-rc.2",
48
+ "@deepseek-ai/dsh-output-retention": "0.1.7-rc.2",
49
+ "@deepseek-ai/dsh-agent": "0.1.7-rc.2",
50
+ "@deepseek-ai/dsh-spill": "0.1.7-rc.2",
51
+ "@deepseek-ai/dsh-system-prompt": "0.1.7-rc.2",
52
+ "@deepseek-ai/dsh-session": "0.1.7-rc.2",
53
+ "@deepseek-ai/dsh-tools": "0.1.7-rc.2",
53
54
  "@deepseek-ai/cordis": "~4.0.4",
54
- "@deepseek-ai/dsh-timeout": "0.1.7-alpha.2",
55
- "@deepseek-ai/dsh-tools": "0.1.7-alpha.2",
56
- "@deepseek-ai/dsh-scope": "0.1.7-alpha.2"
55
+ "@deepseek-ai/dsh-timeout": "0.1.7-rc.2",
56
+ "@deepseek-ai/dsh-scope": "0.1.7-rc.2"
57
57
  }
58
58
  }