@oomkapwn/enquire-mcp 3.5.13 → 3.6.0-rc.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.
- package/CHANGELOG.md +106 -0
- package/dist/eval.js +1 -1
- package/dist/eval.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +6 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/media.d.ts +182 -0
- package/dist/tools/media.d.ts.map +1 -0
- package/dist/tools/media.js +304 -0
- package/dist/tools/media.js.map +1 -0
- package/dist/tools/meta.d.ts +201 -0
- package/dist/tools/meta.d.ts.map +1 -0
- package/dist/tools/meta.js +752 -0
- package/dist/tools/meta.js.map +1 -0
- package/dist/tools/read.d.ts +251 -0
- package/dist/tools/read.d.ts.map +1 -0
- package/dist/tools/read.js +643 -0
- package/dist/tools/read.js.map +1 -0
- package/dist/tools/search.d.ts +279 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +891 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/write.d.ts +145 -0
- package/dist/tools/write.d.ts.map +1 -0
- package/dist/tools/write.js +560 -0
- package/dist/tools/write.js.map +1 -0
- package/package.json +1 -1
- package/dist/tools.d.ts +0 -980
- package/dist/tools.d.ts.map +0 -1
- package/dist/tools.js +0 -3132
- package/dist/tools.js.map +0 -1
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import type { FtsIndex } from "../fts5.js";
|
|
2
|
+
import type { FileEntry, Vault } from "../vault.js";
|
|
3
|
+
export interface ValidateProposalArgs {
|
|
4
|
+
/** Vault-relative path the LLM intends to write to (e.g. "Inbox/idea.md"). */
|
|
5
|
+
path: string;
|
|
6
|
+
/** Full proposed markdown content including any frontmatter block. */
|
|
7
|
+
content: string;
|
|
8
|
+
/** "create" (default) → fail if path exists. "overwrite" / "append" → ok if exists. */
|
|
9
|
+
mode?: "create" | "overwrite" | "append";
|
|
10
|
+
}
|
|
11
|
+
export interface ValidateProposalResult {
|
|
12
|
+
ok: boolean;
|
|
13
|
+
proposed_path: string;
|
|
14
|
+
mode: "create" | "overwrite" | "append";
|
|
15
|
+
errors: Array<{
|
|
16
|
+
kind: string;
|
|
17
|
+
message: string;
|
|
18
|
+
}>;
|
|
19
|
+
warnings: Array<{
|
|
20
|
+
kind: string;
|
|
21
|
+
message: string;
|
|
22
|
+
suggestion?: string;
|
|
23
|
+
}>;
|
|
24
|
+
yaml: {
|
|
25
|
+
parsed: boolean;
|
|
26
|
+
error: string | null;
|
|
27
|
+
keys: string[];
|
|
28
|
+
};
|
|
29
|
+
wikilinks: Array<{
|
|
30
|
+
raw: string;
|
|
31
|
+
target: string;
|
|
32
|
+
status: "resolved" | "broken" | "ambiguous";
|
|
33
|
+
resolved_path: string | null;
|
|
34
|
+
suggestions: string[];
|
|
35
|
+
}>;
|
|
36
|
+
tags: Array<{
|
|
37
|
+
name: string;
|
|
38
|
+
status: "existing" | "new";
|
|
39
|
+
}>;
|
|
40
|
+
collision: {
|
|
41
|
+
kind: "none" | "path-exists" | "title-exists-elsewhere";
|
|
42
|
+
existing_path?: string;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export declare function validateNoteProposal(vault: Vault, args: ValidateProposalArgs): Promise<ValidateProposalResult>;
|
|
46
|
+
export interface LintWikiArgs {
|
|
47
|
+
/** Folder to restrict the lint to (default: whole vault). */
|
|
48
|
+
folder?: string;
|
|
49
|
+
/** Word count below which a note is considered a "stub". Default 100. */
|
|
50
|
+
stub_word_threshold?: number;
|
|
51
|
+
/** A note is "stale" if its frontmatter `last_reviewed` (or mtime if missing)
|
|
52
|
+
* is older than this many days. Default 365. */
|
|
53
|
+
stale_days?: number;
|
|
54
|
+
/** A capitalised n-gram mentioned by ≥ N distinct notes but not having its
|
|
55
|
+
* own page is flagged as a concept candidate. Default 3. */
|
|
56
|
+
concept_min_mentions?: number;
|
|
57
|
+
/** Cap on each finding-bucket so the response stays bounded. Default 50. */
|
|
58
|
+
max_per_bucket?: number;
|
|
59
|
+
}
|
|
60
|
+
export interface LintWikiFinding {
|
|
61
|
+
kind: "orphan" | "broken-link" | "stub" | "stale" | "concept-without-page";
|
|
62
|
+
path?: string;
|
|
63
|
+
message: string;
|
|
64
|
+
suggestion?: string;
|
|
65
|
+
details?: Record<string, unknown>;
|
|
66
|
+
}
|
|
67
|
+
export interface LintWikiResult {
|
|
68
|
+
scope: string;
|
|
69
|
+
scanned: number;
|
|
70
|
+
generated_at: string;
|
|
71
|
+
summary: {
|
|
72
|
+
orphans: number;
|
|
73
|
+
broken_links: number;
|
|
74
|
+
stubs: number;
|
|
75
|
+
stale: number;
|
|
76
|
+
concept_candidates: number;
|
|
77
|
+
};
|
|
78
|
+
findings: {
|
|
79
|
+
orphans: LintWikiFinding[];
|
|
80
|
+
broken_links: LintWikiFinding[];
|
|
81
|
+
stubs: LintWikiFinding[];
|
|
82
|
+
stale: LintWikiFinding[];
|
|
83
|
+
concept_candidates: LintWikiFinding[];
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
export declare function lintWiki(vault: Vault, args: LintWikiArgs): Promise<LintWikiResult>;
|
|
87
|
+
export interface OpenQuestion {
|
|
88
|
+
question: string;
|
|
89
|
+
source_path: string;
|
|
90
|
+
source_title: string;
|
|
91
|
+
context_heading: string | null;
|
|
92
|
+
line: number;
|
|
93
|
+
age_days: number;
|
|
94
|
+
mtime: string;
|
|
95
|
+
}
|
|
96
|
+
export declare function getOpenQuestions(vault: Vault, args: {
|
|
97
|
+
folder?: string;
|
|
98
|
+
limit?: number;
|
|
99
|
+
pattern?: string;
|
|
100
|
+
}): Promise<OpenQuestion[]>;
|
|
101
|
+
export interface PaperAuditFinding {
|
|
102
|
+
path: string;
|
|
103
|
+
title: string;
|
|
104
|
+
has_frontmatter_citation: boolean;
|
|
105
|
+
found_in_body: {
|
|
106
|
+
arxiv: string[];
|
|
107
|
+
doi: string[];
|
|
108
|
+
url: string[];
|
|
109
|
+
};
|
|
110
|
+
proposed_frontmatter_patch: Record<string, string> | null;
|
|
111
|
+
message: string;
|
|
112
|
+
}
|
|
113
|
+
export declare function paperAudit(vault: Vault, args: {
|
|
114
|
+
tag?: string;
|
|
115
|
+
folder?: string;
|
|
116
|
+
limit?: number;
|
|
117
|
+
}): Promise<{
|
|
118
|
+
scanned: number;
|
|
119
|
+
flagged: PaperAuditFinding[];
|
|
120
|
+
}>;
|
|
121
|
+
export interface PathStep {
|
|
122
|
+
path: string;
|
|
123
|
+
title: string;
|
|
124
|
+
/** Wikilink raw text (`[[…]]` content) used to traverse FROM the previous
|
|
125
|
+
* step to this one. Empty on the source step. */
|
|
126
|
+
via: string;
|
|
127
|
+
}
|
|
128
|
+
export interface FindPathResult {
|
|
129
|
+
from: string;
|
|
130
|
+
to: string;
|
|
131
|
+
found: boolean;
|
|
132
|
+
path: PathStep[];
|
|
133
|
+
hops: number;
|
|
134
|
+
/** Up to 10 same-length alternatives, only when include_alternatives=true. */
|
|
135
|
+
alternatives?: PathStep[][];
|
|
136
|
+
}
|
|
137
|
+
export declare function findPath(vault: Vault, args: {
|
|
138
|
+
from?: string;
|
|
139
|
+
from_title?: string;
|
|
140
|
+
to?: string;
|
|
141
|
+
to_title?: string;
|
|
142
|
+
max_depth?: number;
|
|
143
|
+
include_alternatives?: boolean;
|
|
144
|
+
follow_embeds?: boolean;
|
|
145
|
+
}): Promise<FindPathResult>;
|
|
146
|
+
export interface OpenInUiResult {
|
|
147
|
+
uri: string;
|
|
148
|
+
vault_name: string;
|
|
149
|
+
path: string;
|
|
150
|
+
title: string;
|
|
151
|
+
}
|
|
152
|
+
export declare function openInUi(vault: Vault, args: {
|
|
153
|
+
path?: string;
|
|
154
|
+
title?: string;
|
|
155
|
+
new_pane?: boolean;
|
|
156
|
+
}): Promise<OpenInUiResult>;
|
|
157
|
+
export interface ContextPackArgs {
|
|
158
|
+
/** Topic / question to gather context for. */
|
|
159
|
+
query: string;
|
|
160
|
+
/** Approximate token budget for the bundle. ~4 chars/token assumption. Default 4000. */
|
|
161
|
+
budget_tokens?: number;
|
|
162
|
+
/** Restrict retrieval to this folder. */
|
|
163
|
+
folder?: string;
|
|
164
|
+
/** Include backlinks of top-K notes (1-line each)? Default true. */
|
|
165
|
+
include_backlinks?: boolean;
|
|
166
|
+
/** Include the last N daily notes? Default 0 (off). Set to 3 for "what was I doing recently". */
|
|
167
|
+
recent_dailies?: number;
|
|
168
|
+
}
|
|
169
|
+
export interface ContextPackResult {
|
|
170
|
+
query: string;
|
|
171
|
+
/** The packed markdown bundle ready to paste into an AI chat. */
|
|
172
|
+
bundle: string;
|
|
173
|
+
/** Approximate token count (chars / 4). */
|
|
174
|
+
estimated_tokens: number;
|
|
175
|
+
budget_tokens: number;
|
|
176
|
+
/** Per-section byte counts for observability. */
|
|
177
|
+
sections: {
|
|
178
|
+
notes: number;
|
|
179
|
+
backlinks: number;
|
|
180
|
+
dailies: number;
|
|
181
|
+
};
|
|
182
|
+
/** Top-K hit paths included in the bundle. */
|
|
183
|
+
included_notes: string[];
|
|
184
|
+
}
|
|
185
|
+
export declare function contextPack(vault: Vault, args: ContextPackArgs, ctx: {
|
|
186
|
+
ftsIndex: FtsIndex | null;
|
|
187
|
+
embedFile: string;
|
|
188
|
+
}): Promise<ContextPackResult>;
|
|
189
|
+
export declare function jaccard<T>(a: Set<T>, b: Set<T>): number;
|
|
190
|
+
export declare function intersectionSize<T>(a: Set<T>, b: Set<T>): number;
|
|
191
|
+
export declare function ngrams(s: string, n: number): Set<string>;
|
|
192
|
+
interface EntryIndex {
|
|
193
|
+
byBasename: Map<string, FileEntry[]>;
|
|
194
|
+
byRelPath: Map<string, FileEntry>;
|
|
195
|
+
}
|
|
196
|
+
export declare function indexFor(entries: FileEntry[]): EntryIndex;
|
|
197
|
+
export declare function findBestMatch(entries: FileEntry[], target: string, fromNote?: string): FileEntry | null;
|
|
198
|
+
export declare function stripMd(name: string): string;
|
|
199
|
+
export declare function normalizeTag(t: string): string;
|
|
200
|
+
export {};
|
|
201
|
+
//# sourceMappingURL=meta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/tools/meta.ts"],"names":[],"mappings":"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"}
|