obsidian-mcp-pro 2.0.0 → 3.0.0
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.md +15 -7
- package/build/http-server.d.ts.map +1 -1
- package/build/http-server.js +68 -32
- package/build/http-server.js.map +1 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +22 -14
- package/build/index.js.map +1 -1
- package/build/install.d.ts.map +1 -1
- package/build/install.js +1 -1
- package/build/install.js.map +1 -1
- package/build/lib/bases.d.ts.map +1 -1
- package/build/lib/bases.js +26 -11
- package/build/lib/bases.js.map +1 -1
- package/build/lib/chunker.js +81 -2
- package/build/lib/chunker.js.map +1 -1
- package/build/lib/dates.d.ts +2 -0
- package/build/lib/dates.d.ts.map +1 -1
- package/build/lib/dates.js +24 -0
- package/build/lib/dates.js.map +1 -1
- package/build/lib/embedding-providers.js +1 -1
- package/build/lib/embedding-providers.js.map +1 -1
- package/build/lib/embedding-store.d.ts +1 -0
- package/build/lib/embedding-store.d.ts.map +1 -1
- package/build/lib/embedding-store.js +110 -18
- package/build/lib/embedding-store.js.map +1 -1
- package/build/lib/errors.d.ts.map +1 -1
- package/build/lib/errors.js +13 -1
- package/build/lib/errors.js.map +1 -1
- package/build/lib/fs-ops.d.ts +2 -0
- package/build/lib/fs-ops.d.ts.map +1 -0
- package/build/lib/fs-ops.js +26 -0
- package/build/lib/fs-ops.js.map +1 -0
- package/build/lib/index-cache.d.ts +10 -0
- package/build/lib/index-cache.d.ts.map +1 -1
- package/build/lib/index-cache.js +36 -10
- package/build/lib/index-cache.js.map +1 -1
- package/build/lib/link-rewriter.d.ts.map +1 -1
- package/build/lib/link-rewriter.js +35 -3
- package/build/lib/link-rewriter.js.map +1 -1
- package/build/lib/logger.d.ts.map +1 -1
- package/build/lib/logger.js +88 -7
- package/build/lib/logger.js.map +1 -1
- package/build/lib/markdown.js.map +1 -1
- package/build/lib/progress.js +1 -1
- package/build/lib/progress.js.map +1 -1
- package/build/lib/sections.d.ts.map +1 -1
- package/build/lib/sections.js +2 -0
- package/build/lib/sections.js.map +1 -1
- package/build/lib/tag-rewriter.d.ts +1 -0
- package/build/lib/tag-rewriter.d.ts.map +1 -1
- package/build/lib/tag-rewriter.js +6 -1
- package/build/lib/tag-rewriter.js.map +1 -1
- package/build/lib/tool-output.d.ts +2 -0
- package/build/lib/tool-output.d.ts.map +1 -0
- package/build/lib/tool-output.js +5 -0
- package/build/lib/tool-output.js.map +1 -0
- package/build/lib/vault.d.ts +32 -2
- package/build/lib/vault.d.ts.map +1 -1
- package/build/lib/vault.js +201 -91
- package/build/lib/vault.js.map +1 -1
- package/build/tools/attachments.d.ts.map +1 -1
- package/build/tools/attachments.js +117 -46
- package/build/tools/attachments.js.map +1 -1
- package/build/tools/bases.d.ts.map +1 -1
- package/build/tools/bases.js +14 -12
- package/build/tools/bases.js.map +1 -1
- package/build/tools/canvas.d.ts.map +1 -1
- package/build/tools/canvas.js +118 -59
- package/build/tools/canvas.js.map +1 -1
- package/build/tools/links.d.ts.map +1 -1
- package/build/tools/links.js +183 -124
- package/build/tools/links.js.map +1 -1
- package/build/tools/prompts.d.ts.map +1 -1
- package/build/tools/prompts.js +14 -12
- package/build/tools/prompts.js.map +1 -1
- package/build/tools/read.d.ts.map +1 -1
- package/build/tools/read.js +105 -87
- package/build/tools/read.js.map +1 -1
- package/build/tools/sections.d.ts.map +1 -1
- package/build/tools/sections.js +84 -20
- package/build/tools/sections.js.map +1 -1
- package/build/tools/semantic.d.ts.map +1 -1
- package/build/tools/semantic.js +45 -49
- package/build/tools/semantic.js.map +1 -1
- package/build/tools/tags.d.ts.map +1 -1
- package/build/tools/tags.js +100 -56
- package/build/tools/tags.js.map +1 -1
- package/build/tools/write.d.ts.map +1 -1
- package/build/tools/write.js +27 -23
- package/build/tools/write.js.map +1 -1
- package/package.json +22 -13
package/build/lib/vault.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/lib/vault.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/lib/vault.ts"],"names":[],"mappings":"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"}
|
package/build/lib/vault.js
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
import fs from "fs/promises";
|
|
2
2
|
import path from "path";
|
|
3
3
|
import { randomBytes } from "crypto";
|
|
4
|
+
import { StringDecoder } from "string_decoder";
|
|
4
5
|
import { mapConcurrent } from "./concurrency.js";
|
|
5
6
|
import { assertAllowed } from "./permissions.js";
|
|
7
|
+
import { renameWithRetry } from "./fs-ops.js";
|
|
6
8
|
// Bounded fan-out for vault-wide scans. Higher values saturate the event loop
|
|
7
9
|
// on spinning disks; lower values leave SSD throughput on the table. 8 is the
|
|
8
10
|
// sweet spot on a typical developer workstation.
|
|
9
11
|
const SCAN_CONCURRENCY = 8;
|
|
12
|
+
const SEARCH_PATH_MATCH_BOOST = 4;
|
|
13
|
+
const SEARCH_HEADING_MATCH_BOOST = 4;
|
|
14
|
+
const SEARCH_MATCH_COUNT_WEIGHT = 0.25;
|
|
15
|
+
const SEARCH_REPEATED_SAME_LINE_PENALTY = 0.5;
|
|
16
|
+
const SEARCH_SNIPPET_MAX_CHARS = 240;
|
|
17
|
+
const SEARCH_SNIPPET_OMISSION = "...";
|
|
10
18
|
const EXCLUDED_DIRS = [".obsidian", ".trash", ".git"];
|
|
11
19
|
const EXCLUDED_SET = new Set(EXCLUDED_DIRS);
|
|
12
20
|
// Legacy DOS device names reserved by the Windows filesystem at any depth.
|
|
@@ -63,32 +71,6 @@ export function vaultRewriteLockKey(vaultPath) {
|
|
|
63
71
|
* against concurrent writers to the *same* target path still requires the
|
|
64
72
|
* per-path lock (otherwise two concurrent renames race on the final name).
|
|
65
73
|
*/
|
|
66
|
-
// Windows raises EPERM/EBUSY/EACCES from `fs.rename` when another handle has
|
|
67
|
-
// the target open for read (Win32's default share mode is stricter than
|
|
68
|
-
// POSIX). Readers typically release within a few ms — retry with linear
|
|
69
|
-
// backoff before surfacing the error. POSIX renames never hit this transient
|
|
70
|
-
// class: on POSIX, EACCES from rename(2) means the caller structurally lacks
|
|
71
|
-
// write permission on a containing directory, which will not clear by
|
|
72
|
-
// waiting — so we only retry these codes on Windows.
|
|
73
|
-
const RENAME_RETRY_CODES = process.platform === "win32"
|
|
74
|
-
? new Set(["EPERM", "EBUSY", "EACCES"])
|
|
75
|
-
: new Set();
|
|
76
|
-
const RENAME_RETRY_DELAYS_MS = [5, 10, 20, 40, 80, 160];
|
|
77
|
-
async function renameWithRetry(from, to) {
|
|
78
|
-
for (let attempt = 0;; attempt++) {
|
|
79
|
-
try {
|
|
80
|
-
await fs.rename(from, to);
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
catch (err) {
|
|
84
|
-
const code = err.code ?? "";
|
|
85
|
-
if (!RENAME_RETRY_CODES.has(code) || attempt >= RENAME_RETRY_DELAYS_MS.length) {
|
|
86
|
-
throw err;
|
|
87
|
-
}
|
|
88
|
-
await new Promise((r) => setTimeout(r, RENAME_RETRY_DELAYS_MS[attempt]));
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
74
|
export async function atomicWriteFile(fullPath, content) {
|
|
93
75
|
const dir = path.dirname(fullPath);
|
|
94
76
|
const base = path.basename(fullPath);
|
|
@@ -133,8 +115,7 @@ export async function withFileLock(fullPath, fn) {
|
|
|
133
115
|
async function walkVault(baseDir, extensions) {
|
|
134
116
|
const results = [];
|
|
135
117
|
const exts = extensions.map((e) => e.toLowerCase());
|
|
136
|
-
|
|
137
|
-
const realBase = await fs.realpath(baseDir);
|
|
118
|
+
await fs.realpath(baseDir);
|
|
138
119
|
async function walk(dir, relPrefix) {
|
|
139
120
|
let entries;
|
|
140
121
|
try {
|
|
@@ -153,31 +134,12 @@ async function walkVault(baseDir, extensions) {
|
|
|
153
134
|
// null and operate on a different file.
|
|
154
135
|
if (name.includes('\0'))
|
|
155
136
|
continue;
|
|
156
|
-
// SEC-1:
|
|
157
|
-
//
|
|
158
|
-
//
|
|
137
|
+
// SEC-1: never traverse symlinks discovered during a vault walk. Direct
|
|
138
|
+
// path reads still use resolveVaultPathSafe; broad listings stay on
|
|
139
|
+
// concrete directory entries and avoid a per-entry lstat syscall.
|
|
159
140
|
const fullEntry = path.join(dir, name);
|
|
160
|
-
|
|
161
|
-
try {
|
|
162
|
-
lstats = await fs.lstat(fullEntry);
|
|
163
|
-
}
|
|
164
|
-
catch {
|
|
165
|
-
// Entry disappeared between readdir and lstat - skip.
|
|
141
|
+
if (entry.isSymbolicLink())
|
|
166
142
|
continue;
|
|
167
|
-
}
|
|
168
|
-
if (lstats.isSymbolicLink()) {
|
|
169
|
-
try {
|
|
170
|
-
const realTarget = await fs.realpath(fullEntry);
|
|
171
|
-
if (realTarget !== realBase && !realTarget.startsWith(realBase + path.sep)) {
|
|
172
|
-
// Symlink escapes the vault boundary - skip.
|
|
173
|
-
continue;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
catch {
|
|
177
|
-
// Dangling symlink or permission error - skip.
|
|
178
|
-
continue;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
143
|
if (entry.isDirectory()) {
|
|
182
144
|
// Prune excluded directory names at ANY depth. Obsidian's own
|
|
183
145
|
// subfolders aside, nested `.git`/`.obsidian`/`.trash` directories
|
|
@@ -185,7 +147,7 @@ async function walkVault(baseDir, extensions) {
|
|
|
185
147
|
if (EXCLUDED_SET.has(name.toLowerCase()))
|
|
186
148
|
continue;
|
|
187
149
|
const nextPrefix = relPrefix === "" ? name : `${relPrefix}/${name}`;
|
|
188
|
-
await walk(
|
|
150
|
+
await walk(fullEntry, nextPrefix);
|
|
189
151
|
}
|
|
190
152
|
else if (entry.isFile()) {
|
|
191
153
|
const lower = name.toLowerCase();
|
|
@@ -209,7 +171,7 @@ async function walkVault(baseDir, extensions) {
|
|
|
209
171
|
async function walkVaultExcluding(baseDir, excludedExtensions) {
|
|
210
172
|
const results = [];
|
|
211
173
|
const excluded = new Set(excludedExtensions.map((e) => e.toLowerCase()));
|
|
212
|
-
|
|
174
|
+
await fs.realpath(baseDir);
|
|
213
175
|
async function walk(dir, relPrefix) {
|
|
214
176
|
let entries;
|
|
215
177
|
try {
|
|
@@ -225,31 +187,14 @@ async function walkVaultExcluding(baseDir, excludedExtensions) {
|
|
|
225
187
|
// SEC-11: skip null-byte filenames (see walkVault for rationale).
|
|
226
188
|
if (name.includes('\0'))
|
|
227
189
|
continue;
|
|
228
|
-
// SEC-1: detect symlinks pointing outside the vault via lstat + realpath.
|
|
229
190
|
const fullEntry = path.join(dir, name);
|
|
230
|
-
|
|
231
|
-
try {
|
|
232
|
-
lstats = await fs.lstat(fullEntry);
|
|
233
|
-
}
|
|
234
|
-
catch {
|
|
191
|
+
if (entry.isSymbolicLink())
|
|
235
192
|
continue;
|
|
236
|
-
}
|
|
237
|
-
if (lstats.isSymbolicLink()) {
|
|
238
|
-
try {
|
|
239
|
-
const realTarget = await fs.realpath(fullEntry);
|
|
240
|
-
if (realTarget !== realBase && !realTarget.startsWith(realBase + path.sep)) {
|
|
241
|
-
continue;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
catch {
|
|
245
|
-
continue;
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
193
|
if (entry.isDirectory()) {
|
|
249
194
|
if (EXCLUDED_SET.has(name.toLowerCase()))
|
|
250
195
|
continue;
|
|
251
196
|
const nextPrefix = relPrefix === "" ? name : `${relPrefix}/${name}`;
|
|
252
|
-
await walk(
|
|
197
|
+
await walk(fullEntry, nextPrefix);
|
|
253
198
|
}
|
|
254
199
|
else if (entry.isFile()) {
|
|
255
200
|
// Skip dotfiles entirely - `.DS_Store`, `.gitkeep`, editor swap
|
|
@@ -335,8 +280,11 @@ async function getRealVaultRoot(vaultPath) {
|
|
|
335
280
|
return key;
|
|
336
281
|
}
|
|
337
282
|
}
|
|
338
|
-
async function
|
|
339
|
-
|
|
283
|
+
export async function getVaultRootRealPath(vaultPath) {
|
|
284
|
+
return getRealVaultRoot(vaultPath);
|
|
285
|
+
}
|
|
286
|
+
async function assertRealPathWithinVault(resolved, vaultPath, realVaultRoot) {
|
|
287
|
+
const realVault = realVaultRoot ?? await getRealVaultRoot(vaultPath);
|
|
340
288
|
const missing = [];
|
|
341
289
|
let current = resolved;
|
|
342
290
|
while (true) {
|
|
@@ -365,13 +313,25 @@ async function assertRealPathWithinVault(resolved, vaultPath) {
|
|
|
365
313
|
if (parent === current) {
|
|
366
314
|
// Reached filesystem root without finding any accessible ancestor.
|
|
367
315
|
// Surface a generic message rather than leaking the original error.
|
|
368
|
-
throw new Error("Path traversal check failed");
|
|
316
|
+
throw new Error("Path traversal check failed", { cause: err });
|
|
369
317
|
}
|
|
370
318
|
missing.push(path.basename(current));
|
|
371
319
|
current = parent;
|
|
372
320
|
}
|
|
373
321
|
}
|
|
374
322
|
}
|
|
323
|
+
function isReadAllowed(relativePath) {
|
|
324
|
+
try {
|
|
325
|
+
assertAllowed(relativePath, "read");
|
|
326
|
+
return true;
|
|
327
|
+
}
|
|
328
|
+
catch {
|
|
329
|
+
return false;
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
function filterReadable(entries) {
|
|
333
|
+
return entries.filter(isReadAllowed);
|
|
334
|
+
}
|
|
375
335
|
// TOCTOU note: there is a small window between the realpath check in
|
|
376
336
|
// `assertRealPathWithinVault` and the caller's actual use of the returned
|
|
377
337
|
// path. If a symlink target is swapped by an external process (Obsidian,
|
|
@@ -382,8 +342,28 @@ async function assertRealPathWithinVault(resolved, vaultPath) {
|
|
|
382
342
|
// local-user-only. Fully closing the window would require holding an open
|
|
383
343
|
// fd (O_PATH on Linux, or openat) across all downstream I/O, which Node's
|
|
384
344
|
// fs API does not support portably.
|
|
385
|
-
export async function resolveVaultPathSafe(vaultPath, relativePath, access = "read") {
|
|
345
|
+
export async function resolveVaultPathSafe(vaultPath, relativePath, access = "read", options) {
|
|
386
346
|
const resolved = resolveVaultPath(vaultPath, relativePath, access);
|
|
347
|
+
await assertRealPathWithinVault(resolved, vaultPath, options?.realVaultRoot);
|
|
348
|
+
return resolved;
|
|
349
|
+
}
|
|
350
|
+
export async function resolveVaultInternalPathSafe(vaultPath, relativePath) {
|
|
351
|
+
if (!vaultPath) {
|
|
352
|
+
throw new Error("Vault path is not configured");
|
|
353
|
+
}
|
|
354
|
+
if (relativePath.includes("\0")) {
|
|
355
|
+
throw new Error("Invalid path: contains null byte");
|
|
356
|
+
}
|
|
357
|
+
if (/^[A-Za-z]:/.test(relativePath) ||
|
|
358
|
+
relativePath.startsWith("/") ||
|
|
359
|
+
relativePath.startsWith("\\")) {
|
|
360
|
+
throw new Error(`Invalid path: must be vault-relative, not absolute (${relativePath})`);
|
|
361
|
+
}
|
|
362
|
+
const resolved = path.resolve(vaultPath, relativePath);
|
|
363
|
+
const resolvedVault = path.resolve(vaultPath);
|
|
364
|
+
if (!resolved.startsWith(resolvedVault + path.sep) && resolved !== resolvedVault) {
|
|
365
|
+
throw new Error(`Path traversal detected: ${relativePath}`);
|
|
366
|
+
}
|
|
387
367
|
await assertRealPathWithinVault(resolved, vaultPath);
|
|
388
368
|
return resolved;
|
|
389
369
|
}
|
|
@@ -403,7 +383,7 @@ export async function listNotes(vaultPath, folder) {
|
|
|
403
383
|
// at every traversal level, and `resolveVaultPathSafe` rejects an
|
|
404
384
|
// excluded `folder` argument up front.
|
|
405
385
|
if (!normalizedFolder)
|
|
406
|
-
return entries.sort();
|
|
386
|
+
return filterReadable(entries).sort();
|
|
407
387
|
return entries.map((rel) => `${normalizedFolder}/${rel}`).sort();
|
|
408
388
|
}
|
|
409
389
|
export async function readNote(vaultPath, relativePath) {
|
|
@@ -413,10 +393,69 @@ export async function readNote(vaultPath, relativePath) {
|
|
|
413
393
|
}
|
|
414
394
|
catch (err) {
|
|
415
395
|
if (err.code === "ENOENT") {
|
|
416
|
-
throw new Error(`Note not found: ${relativePath}
|
|
396
|
+
throw new Error(`Note not found: ${relativePath}`, { cause: err });
|
|
397
|
+
}
|
|
398
|
+
throw err;
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
export async function readNoteLineRange(vaultPath, relativePath, startLine, endLine) {
|
|
402
|
+
const fullPath = await resolveVaultPathSafe(vaultPath, relativePath);
|
|
403
|
+
let handle;
|
|
404
|
+
try {
|
|
405
|
+
handle = await fs.open(fullPath, "r");
|
|
406
|
+
const decoder = new StringDecoder("utf8");
|
|
407
|
+
const buffer = Buffer.allocUnsafe(64 * 1024);
|
|
408
|
+
const collected = [];
|
|
409
|
+
let pending = "";
|
|
410
|
+
let currentLine = 1;
|
|
411
|
+
const processLine = (line) => {
|
|
412
|
+
if (currentLine >= startLine && currentLine <= endLine) {
|
|
413
|
+
collected.push(line);
|
|
414
|
+
}
|
|
415
|
+
const reachedRequestedEnd = currentLine >= endLine;
|
|
416
|
+
currentLine += 1;
|
|
417
|
+
return reachedRequestedEnd;
|
|
418
|
+
};
|
|
419
|
+
while (true) {
|
|
420
|
+
const { bytesRead } = await handle.read(buffer, 0, buffer.length, null);
|
|
421
|
+
if (bytesRead === 0)
|
|
422
|
+
break;
|
|
423
|
+
let chunk = decoder.write(buffer.subarray(0, bytesRead));
|
|
424
|
+
while (true) {
|
|
425
|
+
const newline = chunk.indexOf("\n");
|
|
426
|
+
if (newline === -1) {
|
|
427
|
+
pending += chunk;
|
|
428
|
+
break;
|
|
429
|
+
}
|
|
430
|
+
const line = pending + chunk.slice(0, newline);
|
|
431
|
+
pending = "";
|
|
432
|
+
if (processLine(line)) {
|
|
433
|
+
return { text: collected.join("\n") };
|
|
434
|
+
}
|
|
435
|
+
chunk = chunk.slice(newline + 1);
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
const tail = decoder.end();
|
|
439
|
+
if (tail.length > 0)
|
|
440
|
+
pending += tail;
|
|
441
|
+
if (processLine(pending)) {
|
|
442
|
+
return { text: collected.join("\n") };
|
|
443
|
+
}
|
|
444
|
+
const totalLines = currentLine - 1;
|
|
445
|
+
if (startLine > totalLines) {
|
|
446
|
+
return { text: "", pastEndLine: { requested: startLine, total: totalLines } };
|
|
447
|
+
}
|
|
448
|
+
return { text: collected.join("\n") };
|
|
449
|
+
}
|
|
450
|
+
catch (err) {
|
|
451
|
+
if (err.code === "ENOENT") {
|
|
452
|
+
throw new Error(`Note not found: ${relativePath}`, { cause: err });
|
|
417
453
|
}
|
|
418
454
|
throw err;
|
|
419
455
|
}
|
|
456
|
+
finally {
|
|
457
|
+
await handle?.close();
|
|
458
|
+
}
|
|
420
459
|
}
|
|
421
460
|
export async function writeNote(vaultPath, relativePath, content, options) {
|
|
422
461
|
const fullPath = await resolveVaultPathSafe(vaultPath, relativePath, "write");
|
|
@@ -555,6 +594,29 @@ export async function prependToNote(vaultPath, relativePath, content) {
|
|
|
555
594
|
await atomicWriteFile(fullPath, result);
|
|
556
595
|
});
|
|
557
596
|
}
|
|
597
|
+
async function pathExists(fullPath) {
|
|
598
|
+
try {
|
|
599
|
+
await fs.lstat(fullPath);
|
|
600
|
+
return true;
|
|
601
|
+
}
|
|
602
|
+
catch (err) {
|
|
603
|
+
if (err.code === "ENOENT")
|
|
604
|
+
return false;
|
|
605
|
+
throw err;
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
async function chooseTrashPath(trashFullPath) {
|
|
609
|
+
if (!(await pathExists(trashFullPath)))
|
|
610
|
+
return trashFullPath;
|
|
611
|
+
const parsed = path.parse(trashFullPath);
|
|
612
|
+
for (let attempt = 0; attempt < 20; attempt++) {
|
|
613
|
+
const suffix = `${Date.now()}-${randomBytes(4).toString("hex")}`;
|
|
614
|
+
const candidate = path.join(parsed.dir, `${parsed.name}.${suffix}${parsed.ext}`);
|
|
615
|
+
if (!(await pathExists(candidate)))
|
|
616
|
+
return candidate;
|
|
617
|
+
}
|
|
618
|
+
throw new Error(`Could not allocate unique trash path for ${path.basename(trashFullPath)}`);
|
|
619
|
+
}
|
|
558
620
|
export async function deleteNote(vaultPath, relativePath, options = {}) {
|
|
559
621
|
const permanent = options.permanent === true;
|
|
560
622
|
const removeReferences = permanent && options.removeReferences === true;
|
|
@@ -593,7 +655,8 @@ export async function deleteNote(vaultPath, relativePath, options = {}) {
|
|
|
593
655
|
// Realpath check on the canonical destination: rejects a symlinked
|
|
594
656
|
// `.trash` (or any intermediate dir) that resolves outside the vault.
|
|
595
657
|
await assertRealPathWithinVault(trashFullPath, vaultPath);
|
|
596
|
-
await
|
|
658
|
+
const finalTrashPath = await chooseTrashPath(trashFullPath);
|
|
659
|
+
await renameWithRetry(fullPath, finalTrashPath);
|
|
597
660
|
}
|
|
598
661
|
else {
|
|
599
662
|
await fs.unlink(fullPath);
|
|
@@ -655,7 +718,7 @@ export async function moveNote(vaultPath, oldPath, newPath, options = {}) {
|
|
|
655
718
|
throw err;
|
|
656
719
|
}
|
|
657
720
|
await fs.mkdir(path.dirname(fullNewPath), { recursive: true });
|
|
658
|
-
await
|
|
721
|
+
await renameWithRetry(fullOldPath, fullNewPath);
|
|
659
722
|
};
|
|
660
723
|
const performMove = async () => {
|
|
661
724
|
// Build the rewrite plan from the *pre-move* vault state — resolution
|
|
@@ -715,13 +778,15 @@ export function searchInContents(notes, contents, query, options) {
|
|
|
715
778
|
const caseSensitive = options?.caseSensitive ?? false;
|
|
716
779
|
const maxResults = options?.maxResults ?? 100;
|
|
717
780
|
const searchQuery = caseSensitive ? query : query.toLowerCase();
|
|
781
|
+
if (searchQuery.length === 0)
|
|
782
|
+
return [];
|
|
718
783
|
const results = [];
|
|
719
784
|
for (const notePath of notes) {
|
|
720
785
|
const content = contents.get(notePath);
|
|
721
786
|
if (content === undefined)
|
|
722
787
|
continue;
|
|
723
788
|
const lines = content.split("\n");
|
|
724
|
-
const
|
|
789
|
+
const rawMatches = [];
|
|
725
790
|
for (let i = 0; i < lines.length; i++) {
|
|
726
791
|
const line = lines[i];
|
|
727
792
|
const compareLine = caseSensitive ? line : line.toLowerCase();
|
|
@@ -730,25 +795,70 @@ export function searchInContents(notes, contents, query, options) {
|
|
|
730
795
|
const col = compareLine.indexOf(searchQuery, startIndex);
|
|
731
796
|
if (col === -1)
|
|
732
797
|
break;
|
|
733
|
-
|
|
798
|
+
rawMatches.push({
|
|
799
|
+
line: i + 1,
|
|
800
|
+
content: formatSearchSnippet(line, col, searchQuery.length),
|
|
801
|
+
column: col,
|
|
802
|
+
});
|
|
734
803
|
startIndex = col + searchQuery.length;
|
|
735
804
|
}
|
|
736
805
|
}
|
|
737
|
-
if (
|
|
806
|
+
if (rawMatches.length === 0)
|
|
738
807
|
continue;
|
|
739
808
|
results.push({
|
|
740
809
|
path: notePath,
|
|
741
810
|
relativePath: notePath,
|
|
742
|
-
matches,
|
|
743
|
-
score:
|
|
811
|
+
matches: collapseSearchLineMatches(rawMatches),
|
|
812
|
+
score: scoreLexicalMatches(notePath, lines, rawMatches, searchQuery, caseSensitive),
|
|
744
813
|
});
|
|
745
814
|
}
|
|
746
|
-
// Primary:
|
|
815
|
+
// Primary: lexical focus score (desc). Secondary: relative path (asc) — otherwise
|
|
747
816
|
// tie-breaking order depends on iteration timing, which makes results for
|
|
748
817
|
// equal-score queries non-deterministic between runs.
|
|
749
818
|
results.sort((a, b) => b.score - a.score || a.relativePath.localeCompare(b.relativePath));
|
|
750
819
|
return results.slice(0, maxResults);
|
|
751
820
|
}
|
|
821
|
+
function collapseSearchLineMatches(matches) {
|
|
822
|
+
const seenLines = new Set();
|
|
823
|
+
return matches.filter((match) => {
|
|
824
|
+
if (seenLines.has(match.line))
|
|
825
|
+
return false;
|
|
826
|
+
seenLines.add(match.line);
|
|
827
|
+
return true;
|
|
828
|
+
});
|
|
829
|
+
}
|
|
830
|
+
function formatSearchSnippet(line, column, queryLength) {
|
|
831
|
+
const trimmedStart = line.trimStart();
|
|
832
|
+
const leadingTrimmedChars = line.length - trimmedStart.length;
|
|
833
|
+
const trimmedLine = trimmedStart.trimEnd();
|
|
834
|
+
const maxSnippetChars = Math.max(SEARCH_SNIPPET_MAX_CHARS, queryLength + SEARCH_SNIPPET_OMISSION.length * 2);
|
|
835
|
+
if (trimmedLine.length <= maxSnippetChars)
|
|
836
|
+
return trimmedLine;
|
|
837
|
+
const snippetColumn = Math.max(0, column - leadingTrimmedChars);
|
|
838
|
+
const queryStart = Math.min(snippetColumn, trimmedLine.length);
|
|
839
|
+
const bodyMaxChars = maxSnippetChars - SEARCH_SNIPPET_OMISSION.length * 2;
|
|
840
|
+
let start = Math.max(0, queryStart - Math.floor((bodyMaxChars - queryLength) / 2));
|
|
841
|
+
const end = Math.min(trimmedLine.length, start + bodyMaxChars);
|
|
842
|
+
if (end === trimmedLine.length)
|
|
843
|
+
start = Math.max(0, end - bodyMaxChars);
|
|
844
|
+
const prefix = start > 0 ? SEARCH_SNIPPET_OMISSION : "";
|
|
845
|
+
const suffix = end < trimmedLine.length ? SEARCH_SNIPPET_OMISSION : "";
|
|
846
|
+
return `${prefix}${trimmedLine.slice(start, end)}${suffix}`;
|
|
847
|
+
}
|
|
848
|
+
function scoreLexicalMatches(notePath, lines, matches, searchQuery, caseSensitive) {
|
|
849
|
+
const matchingLines = new Set(matches.map((match) => match.line)).size;
|
|
850
|
+
const repeatedSameLineMatches = matches.length - matchingLines;
|
|
851
|
+
const pathText = caseSensitive ? notePath : notePath.toLowerCase();
|
|
852
|
+
const firstHeading = lines.find((line) => line.trimStart().startsWith("#")) ?? "";
|
|
853
|
+
const headingText = caseSensitive ? firstHeading : firstHeading.toLowerCase();
|
|
854
|
+
let score = matchingLines + Math.log1p(matches.length) * SEARCH_MATCH_COUNT_WEIGHT;
|
|
855
|
+
if (pathText.includes(searchQuery))
|
|
856
|
+
score += SEARCH_PATH_MATCH_BOOST;
|
|
857
|
+
if (headingText.includes(searchQuery))
|
|
858
|
+
score += SEARCH_HEADING_MATCH_BOOST;
|
|
859
|
+
score -= repeatedSameLineMatches * SEARCH_REPEATED_SAME_LINE_PENALTY;
|
|
860
|
+
return Math.max(0, score);
|
|
861
|
+
}
|
|
752
862
|
export async function searchNotes(vaultPath, query, options) {
|
|
753
863
|
const notes = await listNotes(vaultPath, options?.folder);
|
|
754
864
|
// Scan notes in parallel with bounded concurrency. Sequential iteration
|
|
@@ -770,8 +880,8 @@ export async function searchNotes(vaultPath, query, options) {
|
|
|
770
880
|
});
|
|
771
881
|
return searchInContents(notes, contents, query, options);
|
|
772
882
|
}
|
|
773
|
-
export async function getNoteStats(vaultPath, relativePath) {
|
|
774
|
-
const fullPath = await resolveVaultPathSafe(vaultPath, relativePath);
|
|
883
|
+
export async function getNoteStats(vaultPath, relativePath, options) {
|
|
884
|
+
const fullPath = await resolveVaultPathSafe(vaultPath, relativePath, "read", options);
|
|
775
885
|
const stats = await fs.stat(fullPath);
|
|
776
886
|
return {
|
|
777
887
|
size: stats.size,
|
|
@@ -783,13 +893,13 @@ export async function listCanvasFiles(vaultPath) {
|
|
|
783
893
|
// No `isExcluded` filter needed: `walkVault` already prunes excluded dirs
|
|
784
894
|
// at every traversal level.
|
|
785
895
|
const entries = await walkVault(await getRealVaultRoot(vaultPath), [".canvas"]);
|
|
786
|
-
return entries.sort();
|
|
896
|
+
return filterReadable(entries).sort();
|
|
787
897
|
}
|
|
788
898
|
export async function listBaseFiles(vaultPath) {
|
|
789
899
|
// No `isExcluded` filter needed: `walkVault` already prunes excluded dirs
|
|
790
900
|
// at every traversal level.
|
|
791
901
|
const entries = await walkVault(await getRealVaultRoot(vaultPath), [".base"]);
|
|
792
|
-
return entries.sort();
|
|
902
|
+
return filterReadable(entries).sort();
|
|
793
903
|
}
|
|
794
904
|
/**
|
|
795
905
|
* Enumerate every attachment in the vault — every file that isn't a
|
|
@@ -800,7 +910,7 @@ export async function listAttachments(vaultPath) {
|
|
|
800
910
|
// No `isExcluded` filter needed: `walkVaultExcluding` already prunes
|
|
801
911
|
// excluded dirs at every traversal level.
|
|
802
912
|
const entries = await walkVaultExcluding(await getRealVaultRoot(vaultPath), [".md", ".canvas", ".base"]);
|
|
803
|
-
return entries.sort();
|
|
913
|
+
return filterReadable(entries).sort();
|
|
804
914
|
}
|
|
805
915
|
export async function getAttachmentStats(vaultPath, relativePath) {
|
|
806
916
|
const fullPath = await resolveVaultPathSafe(vaultPath, relativePath);
|
package/build/lib/vault.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/lib/vault.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/lib/vault.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../src/tools/attachments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../src/tools/attachments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoOpE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAmTlF"}
|