@savvy-web/mcp 2.7.4 → 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 +8 -3
- package/bin/savvy-mcp.js +4 -28
- package/errors.js +181 -0
- package/index.d.ts +695 -18
- package/index.js +5 -2
- package/internal/project-root.js +25 -0
- package/main.d.ts +25 -0
- package/main.js +42 -0
- package/markdown.js +32 -0
- package/package.json +12 -9
- package/runtime.js +3 -3
- package/server.js +119 -234
- package/toolkit.js +44 -0
- package/tools/biome-check.js +64 -11
- package/tools/changeset-deps-detect.js +27 -2
- package/tools/changeset-deps-regen.js +28 -2
- package/tools/changeset-inspect.js +34 -2
- package/tools/changeset-preview.js +21 -2
- package/tools/changeset-validate.js +28 -2
- package/tools/repos-inspect.js +38 -2
- package/tools/repos-manage.js +58 -2
- package/tools/turbo-inspect.js +27 -2
- package/tools/workspace-info.js +25 -2
- package/version.js +1 -1
- package/schema/effect-to-zod.js +0 -205
package/index.d.ts
CHANGED
|
@@ -1,10 +1,134 @@
|
|
|
1
|
+
import { Context, FileSystem, Layer, Path, Schema, Stdio } from "effect";
|
|
1
2
|
import { WorkspaceRoot } from "@effected/workspaces";
|
|
2
3
|
import { Changesets, Repos, SilkWorkspaceAnalyzer, Turbo } from "@savvy-web/silk-effects";
|
|
3
|
-
import { FileSystem, Layer, ManagedRuntime, Path } from "effect";
|
|
4
4
|
import { ChildProcessSpawner } from "effect/unstable/process";
|
|
5
|
-
import "
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
import { Tool, Toolkit } from "effect/unstable/ai";
|
|
6
|
+
//#region src/errors.d.ts
|
|
7
|
+
/** What a caller should do next about a failed tool call. @public */
|
|
8
|
+
export declare const Remediation: Schema.Struct<{
|
|
9
|
+
readonly hint: Schema.String;
|
|
10
|
+
readonly suggestedTool: Schema.optionalKey<Schema.String>;
|
|
11
|
+
}>;
|
|
12
|
+
/** @public */
|
|
13
|
+
export type Remediation = typeof Remediation.Type;
|
|
14
|
+
/**
|
|
15
|
+
* Compose a self-contained wire message from a raw cause message and its
|
|
16
|
+
* remediation: the human message, then the hint, then `Try <suggestedTool>.`
|
|
17
|
+
* when one is present. Every {@link McpToolError} member's `message` is built
|
|
18
|
+
* through this at construction, because `message` is the only field a
|
|
19
|
+
* declared failure delivers to the wire.
|
|
20
|
+
*
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
export declare const composeRemediatedMessage: (message: string, remediation: Remediation) => string;
|
|
24
|
+
/**
|
|
25
|
+
* Truncate a caller-supplied value before it is echoed back inside an error's
|
|
26
|
+
* `message`. Without this a pathological argument (a multi-megabyte `cwd`,
|
|
27
|
+
* say) is echoed once in the response's `content[0].text` and once more in the
|
|
28
|
+
* corresponding log line, burning an agent's context twice on what is usually
|
|
29
|
+
* a typo.
|
|
30
|
+
*
|
|
31
|
+
* @public
|
|
32
|
+
*/
|
|
33
|
+
export declare const truncateEchoed: (value: string, limit?: number) => string;
|
|
34
|
+
declare const WorkspaceNotFound_base: Schema.Class<WorkspaceNotFound, Schema.TaggedStruct<"WorkspaceNotFound", {
|
|
35
|
+
readonly cwd: Schema.String;
|
|
36
|
+
readonly message: Schema.String;
|
|
37
|
+
readonly remediation: Schema.Struct<{
|
|
38
|
+
readonly hint: Schema.String;
|
|
39
|
+
readonly suggestedTool: Schema.optionalKey<Schema.String>;
|
|
40
|
+
}>;
|
|
41
|
+
}>, import("effect/Cause").YieldableError>;
|
|
42
|
+
/**
|
|
43
|
+
* No workspace root was found walking up from the requested directory.
|
|
44
|
+
* `message` is composed through {@link composeRemediatedMessage} at
|
|
45
|
+
* construction, so it is what reaches the wire as `content[0].text`.
|
|
46
|
+
*
|
|
47
|
+
* @public
|
|
48
|
+
*/
|
|
49
|
+
export declare class WorkspaceNotFound extends WorkspaceNotFound_base {}
|
|
50
|
+
declare const InvalidArgument_base: Schema.Class<InvalidArgument, Schema.TaggedStruct<"InvalidArgument", {
|
|
51
|
+
readonly argument: Schema.String;
|
|
52
|
+
readonly message: Schema.String;
|
|
53
|
+
readonly remediation: Schema.Struct<{
|
|
54
|
+
readonly hint: Schema.String;
|
|
55
|
+
readonly suggestedTool: Schema.optionalKey<Schema.String>;
|
|
56
|
+
}>;
|
|
57
|
+
}>, import("effect/Cause").YieldableError>;
|
|
58
|
+
/**
|
|
59
|
+
* A tool argument was structurally acceptable but semantically invalid — a
|
|
60
|
+
* `repos_manage` action missing the field it needs, a `biome_check` path
|
|
61
|
+
* outside the workspace, a `changeset_validate` directory that does not
|
|
62
|
+
* exist. `message` is composed through {@link composeRemediatedMessage}.
|
|
63
|
+
*
|
|
64
|
+
* @public
|
|
65
|
+
*/
|
|
66
|
+
export declare class InvalidArgument extends InvalidArgument_base {}
|
|
67
|
+
declare const EngineError_base: Schema.Class<EngineError, Schema.TaggedStruct<"EngineError", {
|
|
68
|
+
readonly source: Schema.String;
|
|
69
|
+
readonly message: Schema.String;
|
|
70
|
+
readonly remediation: Schema.Struct<{
|
|
71
|
+
readonly hint: Schema.String;
|
|
72
|
+
readonly suggestedTool: Schema.optionalKey<Schema.String>;
|
|
73
|
+
}>;
|
|
74
|
+
}>, import("effect/Cause").YieldableError>;
|
|
75
|
+
/**
|
|
76
|
+
* A silk-effects engine program failed with one of its own typed errors
|
|
77
|
+
* (`TurboError`, `GitError`, `ReposConfigError`, …). `source` carries that
|
|
78
|
+
* error's `_tag`; `message` is its own rendering plus the remediation,
|
|
79
|
+
* composed through {@link composeRemediatedMessage}.
|
|
80
|
+
*
|
|
81
|
+
* @public
|
|
82
|
+
*/
|
|
83
|
+
export declare class EngineError extends EngineError_base {}
|
|
84
|
+
declare const BiomeUnavailable_base: Schema.Class<BiomeUnavailable, Schema.TaggedStruct<"BiomeUnavailable", {
|
|
85
|
+
readonly message: Schema.String;
|
|
86
|
+
readonly remediation: Schema.Struct<{
|
|
87
|
+
readonly hint: Schema.String;
|
|
88
|
+
readonly suggestedTool: Schema.optionalKey<Schema.String>;
|
|
89
|
+
}>;
|
|
90
|
+
}>, import("effect/Cause").YieldableError>;
|
|
91
|
+
/**
|
|
92
|
+
* No Biome binary could be located. `message` is composed through
|
|
93
|
+
* {@link composeRemediatedMessage}.
|
|
94
|
+
*
|
|
95
|
+
* @public
|
|
96
|
+
*/
|
|
97
|
+
export declare class BiomeUnavailable extends BiomeUnavailable_base {}
|
|
98
|
+
declare const BiomeFailed_base: Schema.Class<BiomeFailed, Schema.TaggedStruct<"BiomeFailed", {
|
|
99
|
+
readonly exitCode: Schema.optionalKey<Schema.Number>;
|
|
100
|
+
readonly message: Schema.String;
|
|
101
|
+
readonly remediation: Schema.Struct<{
|
|
102
|
+
readonly hint: Schema.String;
|
|
103
|
+
readonly suggestedTool: Schema.optionalKey<Schema.String>;
|
|
104
|
+
}>;
|
|
105
|
+
}>, import("effect/Cause").YieldableError>;
|
|
106
|
+
/**
|
|
107
|
+
* Biome itself failed (exit status above 1, a spawn error, or a timeout) —
|
|
108
|
+
* distinct from "lint issues found", which is a successful result. `message`
|
|
109
|
+
* is composed through {@link composeRemediatedMessage}.
|
|
110
|
+
*
|
|
111
|
+
* @public
|
|
112
|
+
*/
|
|
113
|
+
export declare class BiomeFailed extends BiomeFailed_base {}
|
|
114
|
+
/** The one failure schema every savvy-mcp tool declares. @public */
|
|
115
|
+
export declare const McpToolError: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
116
|
+
/** @public */
|
|
117
|
+
export type McpToolError = typeof McpToolError.Type;
|
|
118
|
+
//#endregion
|
|
119
|
+
//#region src/markdown.d.ts
|
|
120
|
+
declare const SilkMarkdown_base: Context.ServiceClass<SilkMarkdown, "@savvy-web/mcp/SilkMarkdown", (data: unknown) => string>;
|
|
121
|
+
/**
|
|
122
|
+
* Renders a tool's decoded success value as the markdown transcript an agent
|
|
123
|
+
* reads. Typed over `unknown` because the annotation is read generically at
|
|
124
|
+
* registration; each tool supplies `Schema.decodeUnknownSync(<X>AsMarkdown)`,
|
|
125
|
+
* whose own decoder is the type guard.
|
|
126
|
+
*
|
|
127
|
+
* @public
|
|
128
|
+
*/
|
|
129
|
+
export declare class SilkMarkdown extends SilkMarkdown_base {}
|
|
130
|
+
//#endregion
|
|
131
|
+
//#region src/runtime.d.ts
|
|
8
132
|
/**
|
|
9
133
|
* Every service the MCP runtime provides to the tool handlers.
|
|
10
134
|
*
|
|
@@ -12,26 +136,21 @@ import "zod";
|
|
|
12
136
|
* `FileSystem.FileSystem | Path.Path` are here so `repos_inspect`'s
|
|
13
137
|
* `gitmodules` mode can read `.gitmodules` through the ambient service
|
|
14
138
|
* (mirroring `Repos.ReposDrift.check`) rather than a bare `node:fs` import —
|
|
15
|
-
*
|
|
16
|
-
* `Effect.context` identity layer, so they survive `
|
|
139
|
+
* {@link makeSilkRuntimeLayer} passes both through onto its own output via an
|
|
140
|
+
* `Effect.context` identity layer, so they survive `main.ts`'s
|
|
17
141
|
* `Layer.provide(NodeServices.layer)` instead of being fully discharged by
|
|
18
142
|
* it.
|
|
143
|
+
*
|
|
144
|
+
* @public
|
|
19
145
|
*/
|
|
20
146
|
type McpServices = SilkWorkspaceAnalyzer | WorkspaceRoot | Turbo.TurboInspector | Changesets.BranchAnalyzer | Changesets.ConfigInspector | Changesets.ReleasePlanner | Changesets.DepsRegen | Repos.ReposManager | Repos.ReposConfigStore | Repos.ReposDrift | FileSystem.FileSystem | Path.Path;
|
|
21
|
-
/** The long-lived runtime and the project working directory. */
|
|
22
|
-
interface McpContext {
|
|
23
|
-
readonly runtime: ManagedRuntime.ManagedRuntime<McpServices, never>;
|
|
24
|
-
readonly cwd: string;
|
|
25
|
-
}
|
|
26
|
-
//#endregion
|
|
27
|
-
//#region src/runtime.d.ts
|
|
28
147
|
/**
|
|
29
148
|
* Build the MCP runtime layer for a workspace root. Provides
|
|
30
149
|
* `SilkWorkspaceAnalyzer`, `WorkspaceRoot`, `Turbo.TurboInspector`,
|
|
31
150
|
* `Changesets.BranchAnalyzer`, `Changesets.ConfigInspector`,
|
|
32
151
|
* `Changesets.ReleasePlanner`, `Changesets.DepsRegen`, `Repos.ReposManager`,
|
|
33
152
|
* `Repos.ReposConfigStore`, and `Repos.ReposDrift`; requires `ChildProcessSpawner` + `FileSystem`
|
|
34
|
-
* + `Path` from the host's platform layer (`NodeServices.layer` in
|
|
153
|
+
* + `Path` from the host's platform layer (`NodeServices.layer` in main.ts).
|
|
35
154
|
*
|
|
36
155
|
* @remarks
|
|
37
156
|
* The kit graph (`Workspaces.layerWithGitAndConfigDependenciesSubprocess`)
|
|
@@ -51,8 +170,566 @@ interface McpContext {
|
|
|
51
170
|
export declare const makeSilkRuntimeLayer: (cwd: string) => Layer.Layer<McpServices, never, FileSystem.FileSystem | Path.Path | ChildProcessSpawner.ChildProcessSpawner>;
|
|
52
171
|
//#endregion
|
|
53
172
|
//#region src/server.d.ts
|
|
54
|
-
/**
|
|
55
|
-
|
|
173
|
+
/**
|
|
174
|
+
* Everything {@link ServerLayer} still needs from the platform: the three
|
|
175
|
+
* services `makeSilkRuntimeLayer` requires, plus `Stdio`, which
|
|
176
|
+
* `McpServer.layerStdio` itself requires (`McpServer.ts:1217-1225`).
|
|
177
|
+
* `NodeServices.layer` supplies all four in `main.ts`; tests swap `Stdio`
|
|
178
|
+
* for `Stdio.layerTest`.
|
|
179
|
+
*
|
|
180
|
+
* @public
|
|
181
|
+
*/
|
|
182
|
+
type PlatformServices = FileSystem.FileSystem | Path.Path | ChildProcessSpawner.ChildProcessSpawner | Stdio.Stdio;
|
|
183
|
+
/**
|
|
184
|
+
* The whole server as one layer: the ten-tool toolkit, the silk-effects
|
|
185
|
+
* runtime discharging its dependencies, over `McpServer.layerStdio`.
|
|
186
|
+
*
|
|
187
|
+
* `protocols` lists the newest two adapters, newest first — see gotcha 2 in
|
|
188
|
+
* the module remarks. `Cause.IllegalArgumentError` in `layerStdio`'s error
|
|
189
|
+
* channel is `orDie`d: `protocols` is a static two-element literal, so it is
|
|
190
|
+
* an implementer-time defect, not a runtime condition.
|
|
191
|
+
*
|
|
192
|
+
* @public
|
|
193
|
+
*/
|
|
194
|
+
export declare const ServerLayer: (cwd: string) => Layer.Layer<never, never, PlatformServices>;
|
|
195
|
+
//#endregion
|
|
196
|
+
//#region src/tools/biome-check.d.ts
|
|
197
|
+
/**
|
|
198
|
+
* The `biome_check` tool value. Mutating when `write`/`unsafe` is set, so it is
|
|
199
|
+
* annotated non-read-only and non-idempotent; `dependencies` is empty because
|
|
200
|
+
* the handler shells out directly and yields no service.
|
|
201
|
+
*/
|
|
202
|
+
declare const biomeCheckTool: Tool.Tool<"biome_check", {
|
|
203
|
+
readonly parameters: Schema.Struct<{
|
|
204
|
+
readonly paths: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
205
|
+
readonly mode: Schema.optionalKey<Schema.Literals<readonly ["check", "lint"]>>;
|
|
206
|
+
readonly write: Schema.optionalKey<Schema.Boolean>;
|
|
207
|
+
readonly unsafe: Schema.optionalKey<Schema.Boolean>;
|
|
208
|
+
readonly strict: Schema.optionalKey<Schema.Boolean>;
|
|
209
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
210
|
+
}>;
|
|
211
|
+
readonly success: Schema.Struct<{
|
|
212
|
+
readonly summary: Schema.Struct<{
|
|
213
|
+
readonly errors: Schema.Number;
|
|
214
|
+
readonly warnings: Schema.Number;
|
|
215
|
+
/** Count of project-level warnings reported as errors because `strict` was set. */
|
|
216
|
+
readonly upgradedWarnings: Schema.optional<Schema.Number>;
|
|
217
|
+
}>;
|
|
218
|
+
readonly diagnostics: Schema.$Array<Schema.Struct<{
|
|
219
|
+
readonly file: Schema.String;
|
|
220
|
+
readonly line: Schema.Number;
|
|
221
|
+
readonly severity: Schema.Literals<readonly ["error", "warning", "info"]>;
|
|
222
|
+
readonly rule: Schema.String;
|
|
223
|
+
readonly message: Schema.String;
|
|
224
|
+
/** Present only when `strict` upgraded this diagnostic; holds the project-configured severity. */
|
|
225
|
+
readonly originalSeverity: Schema.optional<Schema.Literals<readonly ["error", "warning", "info"]>>;
|
|
226
|
+
}>>;
|
|
227
|
+
readonly wrote: Schema.Boolean;
|
|
228
|
+
readonly guidance: Schema.String;
|
|
229
|
+
}>;
|
|
230
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
231
|
+
readonly failureMode: "error";
|
|
232
|
+
}, never>;
|
|
233
|
+
//#endregion
|
|
234
|
+
//#region src/tools/changeset-deps-detect.d.ts
|
|
235
|
+
/** The `changeset_deps_detect` tool value. */
|
|
236
|
+
declare const changesetDepsDetectTool: Tool.Tool<"changeset_deps_detect", {
|
|
237
|
+
readonly parameters: Schema.Struct<{
|
|
238
|
+
readonly base: Schema.optionalKey<Schema.String>;
|
|
239
|
+
readonly package: Schema.optionalKey<Schema.String>;
|
|
240
|
+
readonly packages: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
241
|
+
readonly exclude: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
242
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
243
|
+
}>;
|
|
244
|
+
readonly success: Schema.Struct<{
|
|
245
|
+
readonly root: Schema.String;
|
|
246
|
+
readonly packages: Schema.$Array<Schema.Struct<{
|
|
247
|
+
readonly package: Schema.String;
|
|
248
|
+
readonly relativePath: Schema.String;
|
|
249
|
+
readonly rows: Schema.$Array<Schema.Struct<{
|
|
250
|
+
readonly dependency: Schema.String;
|
|
251
|
+
readonly type: Schema.Literals<readonly ["dependency", "devDependency", "peerDependency", "optionalDependency", "workspace", "config", "runtime", "packageManager"]>;
|
|
252
|
+
readonly action: Schema.Literals<readonly ["added", "updated", "removed"]>;
|
|
253
|
+
readonly from: Schema.String;
|
|
254
|
+
readonly to: Schema.String;
|
|
255
|
+
}>>;
|
|
256
|
+
}>>;
|
|
257
|
+
readonly coexisting: Schema.$Array<Schema.Struct<{
|
|
258
|
+
readonly file: Schema.String;
|
|
259
|
+
readonly packages: Schema.$Array<Schema.String>;
|
|
260
|
+
}>>;
|
|
261
|
+
}>;
|
|
262
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
263
|
+
readonly failureMode: "error";
|
|
264
|
+
}, Changesets.DepsRegen | WorkspaceRoot>;
|
|
265
|
+
//#endregion
|
|
266
|
+
//#region src/tools/changeset-deps-regen.d.ts
|
|
267
|
+
/** The `changeset_deps_regen` tool value. Mutating: not read-only, not idempotent. */
|
|
268
|
+
declare const changesetDepsRegenTool: Tool.Tool<"changeset_deps_regen", {
|
|
269
|
+
readonly parameters: Schema.Struct<{
|
|
270
|
+
readonly base: Schema.optionalKey<Schema.String>;
|
|
271
|
+
readonly package: Schema.optionalKey<Schema.String>;
|
|
272
|
+
readonly packages: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
273
|
+
readonly exclude: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
274
|
+
readonly dryRun: Schema.optionalKey<Schema.Boolean>;
|
|
275
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
276
|
+
}>;
|
|
277
|
+
readonly success: Schema.Struct<{
|
|
278
|
+
readonly root: Schema.String;
|
|
279
|
+
readonly deleted: Schema.$Array<Schema.String>;
|
|
280
|
+
readonly written: Schema.$Array<Schema.String>;
|
|
281
|
+
readonly skippedMixed: Schema.$Array<Schema.String>;
|
|
282
|
+
readonly coexisting: Schema.$Array<Schema.Struct<{
|
|
283
|
+
readonly file: Schema.String;
|
|
284
|
+
readonly packages: Schema.$Array<Schema.String>;
|
|
285
|
+
}>>;
|
|
286
|
+
readonly dryRun: Schema.Boolean;
|
|
287
|
+
}>;
|
|
288
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
289
|
+
readonly failureMode: "error";
|
|
290
|
+
}, Changesets.DepsRegen | WorkspaceRoot>;
|
|
291
|
+
//#endregion
|
|
292
|
+
//#region src/tools/changeset-inspect.d.ts
|
|
293
|
+
/** The `changeset_inspect` tool value. */
|
|
294
|
+
declare const changesetInspectTool: Tool.Tool<"changeset_inspect", {
|
|
295
|
+
readonly parameters: Schema.Struct<{
|
|
296
|
+
readonly mode: Schema.Literals<readonly ["branch", "config", "classify"]>;
|
|
297
|
+
readonly base: Schema.optionalKey<Schema.String>;
|
|
298
|
+
readonly paths: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
299
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
300
|
+
}>;
|
|
301
|
+
readonly success: Schema.Union<readonly [Schema.Struct<{
|
|
302
|
+
readonly mode: Schema.Literal<"branch">;
|
|
303
|
+
readonly result: Schema.Struct<{
|
|
304
|
+
readonly baseBranch: Schema.String;
|
|
305
|
+
readonly mergeBaseSha: Schema.String;
|
|
306
|
+
readonly files: Schema.$Array<Schema.Struct<{
|
|
307
|
+
readonly path: Schema.String;
|
|
308
|
+
readonly status: Schema.Literals<readonly ["added", "modified", "deleted", "renamed", "copied", "typechange", "unmerged", "unknown"]>;
|
|
309
|
+
readonly package: Schema.NullOr<Schema.String>;
|
|
310
|
+
readonly reason: Schema.Union<readonly [Schema.Literal<"workspace">, Schema.Struct<{
|
|
311
|
+
readonly kind: Schema.Literal<"additionalScope">;
|
|
312
|
+
readonly glob: Schema.String;
|
|
313
|
+
}>, Schema.Struct<{
|
|
314
|
+
readonly kind: Schema.Literal<"versionFile">;
|
|
315
|
+
readonly glob: Schema.String;
|
|
316
|
+
}>, Schema.Struct<{
|
|
317
|
+
readonly kind: Schema.Literal<"unmappedHint">;
|
|
318
|
+
readonly hint: Schema.String;
|
|
319
|
+
}>, Schema.Null]>;
|
|
320
|
+
}>>;
|
|
321
|
+
readonly packagesAffected: Schema.$Array<Schema.String>;
|
|
322
|
+
readonly unmappedFiles: Schema.$Array<Schema.String>;
|
|
323
|
+
}>;
|
|
324
|
+
}>, Schema.Struct<{
|
|
325
|
+
readonly mode: Schema.Literal<"config">;
|
|
326
|
+
readonly result: Schema.Struct<{
|
|
327
|
+
readonly configPath: Schema.String;
|
|
328
|
+
readonly projectDir: Schema.String;
|
|
329
|
+
readonly changelog: Schema.NullOr<Schema.String>;
|
|
330
|
+
readonly baseBranch: Schema.String;
|
|
331
|
+
readonly access: Schema.Literals<readonly ["public", "restricted"]>;
|
|
332
|
+
readonly ignore: Schema.$Array<Schema.String>;
|
|
333
|
+
readonly packages: Schema.$Array<Schema.Struct<{
|
|
334
|
+
readonly name: Schema.String;
|
|
335
|
+
readonly workspaceDir: Schema.String;
|
|
336
|
+
readonly version: Schema.optional<Schema.String>;
|
|
337
|
+
readonly additionalScopes: Schema.$Array<Schema.String>;
|
|
338
|
+
readonly additionalScopeFiles: Schema.$Array<Schema.String>;
|
|
339
|
+
readonly versionFiles: Schema.$Array<Schema.Struct<{
|
|
340
|
+
readonly glob: Schema.String;
|
|
341
|
+
readonly paths: Schema.$Array<Schema.String>;
|
|
342
|
+
readonly matchedFiles: Schema.$Array<Schema.String>;
|
|
343
|
+
}>>;
|
|
344
|
+
}>>;
|
|
345
|
+
readonly legacyVersionFilesUsed: Schema.Boolean;
|
|
346
|
+
}>;
|
|
347
|
+
}>, Schema.Struct<{
|
|
348
|
+
readonly mode: Schema.Literal<"classify">;
|
|
349
|
+
readonly result: Schema.$Array<Schema.Struct<{
|
|
350
|
+
readonly path: Schema.String;
|
|
351
|
+
readonly package: Schema.NullOr<Schema.String>;
|
|
352
|
+
readonly reason: Schema.Union<readonly [Schema.Literal<"workspace">, Schema.Struct<{
|
|
353
|
+
readonly kind: Schema.Literal<"additionalScope">;
|
|
354
|
+
readonly glob: Schema.String;
|
|
355
|
+
}>, Schema.Struct<{
|
|
356
|
+
readonly kind: Schema.Literal<"versionFile">;
|
|
357
|
+
readonly glob: Schema.String;
|
|
358
|
+
}>, Schema.Struct<{
|
|
359
|
+
readonly kind: Schema.Literal<"unmappedHint">;
|
|
360
|
+
readonly hint: Schema.String;
|
|
361
|
+
}>, Schema.Null]>;
|
|
362
|
+
}>>;
|
|
363
|
+
}>]>;
|
|
364
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
365
|
+
readonly failureMode: "error";
|
|
366
|
+
}, Changesets.BranchAnalyzer | Changesets.ConfigInspector | WorkspaceRoot>;
|
|
367
|
+
//#endregion
|
|
368
|
+
//#region src/tools/changeset-preview.d.ts
|
|
369
|
+
/** The `changeset_preview` tool value. */
|
|
370
|
+
declare const changesetPreviewTool: Tool.Tool<"changeset_preview", {
|
|
371
|
+
readonly parameters: Schema.Struct<{
|
|
372
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
373
|
+
}>;
|
|
374
|
+
readonly success: Schema.Struct<{
|
|
375
|
+
readonly preMode: Schema.NullOr<Schema.Literals<readonly ["exit", "pre"]>>;
|
|
376
|
+
readonly releases: Schema.$Array<Schema.Struct<{
|
|
377
|
+
readonly name: Schema.String;
|
|
378
|
+
readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
|
|
379
|
+
readonly oldVersion: Schema.String;
|
|
380
|
+
readonly newVersion: Schema.String;
|
|
381
|
+
readonly changesetIds: Schema.$Array<Schema.String>;
|
|
382
|
+
readonly changelogEntry: Schema.String;
|
|
383
|
+
}>>;
|
|
384
|
+
readonly changesets: Schema.$Array<Schema.Struct<{
|
|
385
|
+
readonly id: Schema.String;
|
|
386
|
+
readonly summary: Schema.String;
|
|
387
|
+
readonly releases: Schema.$Array<Schema.Struct<{
|
|
388
|
+
readonly name: Schema.String;
|
|
389
|
+
readonly type: Schema.Literals<readonly ["major", "minor", "patch"]>;
|
|
390
|
+
}>>;
|
|
391
|
+
}>>;
|
|
392
|
+
}>;
|
|
393
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
394
|
+
readonly failureMode: "error";
|
|
395
|
+
}, Changesets.ReleasePlanner | WorkspaceRoot>;
|
|
396
|
+
//#endregion
|
|
397
|
+
//#region src/tools/changeset-validate.d.ts
|
|
398
|
+
/** The `changeset_validate` tool value. */
|
|
399
|
+
declare const changesetValidateTool: Tool.Tool<"changeset_validate", {
|
|
400
|
+
readonly parameters: Schema.Struct<{
|
|
401
|
+
readonly dir: Schema.optionalKey<Schema.String>;
|
|
402
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
403
|
+
}>;
|
|
404
|
+
readonly success: Schema.Struct<{
|
|
405
|
+
readonly dir: Schema.String;
|
|
406
|
+
readonly ok: Schema.Boolean;
|
|
407
|
+
readonly errorCount: Schema.Number;
|
|
408
|
+
readonly messages: Schema.$Array<Schema.Struct<{
|
|
409
|
+
readonly file: Schema.String;
|
|
410
|
+
readonly rule: Schema.String;
|
|
411
|
+
readonly line: Schema.Number;
|
|
412
|
+
readonly column: Schema.Number;
|
|
413
|
+
readonly message: Schema.String;
|
|
414
|
+
}>>;
|
|
415
|
+
}>;
|
|
416
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
417
|
+
readonly failureMode: "error";
|
|
418
|
+
}, WorkspaceRoot>;
|
|
419
|
+
//#endregion
|
|
420
|
+
//#region src/tools/repos-inspect.d.ts
|
|
421
|
+
/** The `repos_inspect` tool value. */
|
|
422
|
+
declare const reposInspectTool: Tool.Tool<"repos_inspect", {
|
|
423
|
+
readonly parameters: Schema.Struct<{
|
|
424
|
+
readonly mode: Schema.Literals<readonly ["status", "config", "drift", "gitmodules"]>;
|
|
425
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
426
|
+
}>;
|
|
427
|
+
readonly success: Schema.Union<readonly [Schema.Struct<{
|
|
428
|
+
readonly mode: Schema.Literal<"status">;
|
|
429
|
+
readonly result: Schema.Struct<{
|
|
430
|
+
readonly repos: Schema.$Array<Schema.Struct<{
|
|
431
|
+
readonly name: Schema.String;
|
|
432
|
+
readonly ref: Schema.String;
|
|
433
|
+
readonly purpose: Schema.String;
|
|
434
|
+
readonly present: Schema.Boolean;
|
|
435
|
+
readonly stagedCommit: Schema.optionalKey<Schema.String>;
|
|
436
|
+
readonly committedCommit: Schema.optionalKey<Schema.String>;
|
|
437
|
+
readonly checkedOutCommit: Schema.optionalKey<Schema.String>;
|
|
438
|
+
readonly dirty: Schema.Boolean;
|
|
439
|
+
readonly staleNoteIds: Schema.$Array<Schema.String>;
|
|
440
|
+
}>>;
|
|
441
|
+
readonly clean: Schema.Boolean;
|
|
442
|
+
}>;
|
|
443
|
+
}>, Schema.Struct<{
|
|
444
|
+
readonly mode: Schema.Literal<"config">;
|
|
445
|
+
readonly result: Schema.Struct<{
|
|
446
|
+
readonly repos: Schema.$Record<Schema.String, Schema.Struct<{
|
|
447
|
+
readonly url: Schema.String;
|
|
448
|
+
readonly ref: Schema.String;
|
|
449
|
+
readonly purpose: Schema.String;
|
|
450
|
+
readonly sparse: Schema.optional<Schema.$Array<Schema.String>>;
|
|
451
|
+
readonly orientation: Schema.optional<Schema.Struct<{
|
|
452
|
+
readonly layout: Schema.optional<Schema.String>;
|
|
453
|
+
readonly keyPaths: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
|
|
454
|
+
readonly startHere: Schema.optional<Schema.String>;
|
|
455
|
+
}>>;
|
|
456
|
+
readonly notes: Schema.optional<Schema.$Array<Schema.Struct<{
|
|
457
|
+
readonly id: Schema.String;
|
|
458
|
+
readonly date: Schema.String;
|
|
459
|
+
readonly ref: Schema.String;
|
|
460
|
+
readonly note: Schema.String;
|
|
461
|
+
}>>>;
|
|
462
|
+
}>>;
|
|
463
|
+
}>;
|
|
464
|
+
}>, Schema.Struct<{
|
|
465
|
+
readonly mode: Schema.Literal<"drift">;
|
|
466
|
+
readonly report: typeof Repos.ReposDriftReport;
|
|
467
|
+
}>, Schema.Struct<{
|
|
468
|
+
readonly mode: Schema.Literal<"gitmodules">;
|
|
469
|
+
readonly entries: Schema.$Array<Schema.Struct<{
|
|
470
|
+
readonly name: Schema.String;
|
|
471
|
+
readonly path: Schema.String;
|
|
472
|
+
readonly url: Schema.String;
|
|
473
|
+
readonly branch: Schema.optionalKey<Schema.String>;
|
|
474
|
+
readonly shallow: Schema.optionalKey<Schema.Boolean>;
|
|
475
|
+
readonly update: Schema.optionalKey<Schema.String>;
|
|
476
|
+
readonly ignore: Schema.optionalKey<Schema.Literals<readonly ["all", "dirty", "untracked", "none"]>>;
|
|
477
|
+
readonly fetchRecurseSubmodules: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Literal<"on-demand">]>>;
|
|
478
|
+
}>>;
|
|
479
|
+
readonly parseError: Schema.optionalKey<Schema.String>;
|
|
480
|
+
}>]>;
|
|
481
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
482
|
+
readonly failureMode: "error";
|
|
483
|
+
}, FileSystem.FileSystem | Path.Path | Repos.ReposConfigStore | Repos.ReposDrift | Repos.ReposManager | WorkspaceRoot>;
|
|
484
|
+
//#endregion
|
|
485
|
+
//#region src/tools/repos-manage.d.ts
|
|
486
|
+
/** The `repos_manage` tool value. Mutating: not read-only, not idempotent. */
|
|
487
|
+
declare const reposManageTool: Tool.Tool<"repos_manage", {
|
|
488
|
+
readonly parameters: Schema.Struct<{
|
|
489
|
+
readonly action: Schema.Literals<readonly ["sync", "pin", "add", "note", "remove", "rename", "restore", "deregister"]>;
|
|
490
|
+
readonly name: Schema.optionalKey<Schema.String>;
|
|
491
|
+
readonly newName: Schema.optionalKey<Schema.String>;
|
|
492
|
+
readonly ref: Schema.optionalKey<Schema.String>;
|
|
493
|
+
readonly url: Schema.optionalKey<Schema.String>;
|
|
494
|
+
readonly purpose: Schema.optionalKey<Schema.String>;
|
|
495
|
+
readonly sparse: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
496
|
+
readonly orientation: Schema.optionalKey<Schema.Struct<{
|
|
497
|
+
readonly layout: Schema.optional<Schema.String>;
|
|
498
|
+
readonly keyPaths: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
|
|
499
|
+
readonly startHere: Schema.optional<Schema.String>;
|
|
500
|
+
}>>;
|
|
501
|
+
readonly op: Schema.optionalKey<Schema.Literals<readonly ["add", "remove", "promote"]>>;
|
|
502
|
+
readonly note: Schema.optionalKey<Schema.String>;
|
|
503
|
+
readonly id: Schema.optionalKey<Schema.String>;
|
|
504
|
+
readonly into: Schema.optionalKey<Schema.Literals<readonly ["layout", "startHere"]>>;
|
|
505
|
+
readonly names: Schema.optionalKey<Schema.$Array<Schema.String>>;
|
|
506
|
+
readonly section: Schema.optionalKey<Schema.String>;
|
|
507
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
508
|
+
}>;
|
|
509
|
+
readonly success: Schema.Union<readonly [Schema.Struct<{
|
|
510
|
+
readonly action: Schema.Literal<"sync">;
|
|
511
|
+
readonly result: Schema.Struct<{
|
|
512
|
+
readonly initialized: Schema.$Array<Schema.String>;
|
|
513
|
+
readonly sparseApplied: Schema.$Array<Schema.String>;
|
|
514
|
+
readonly upToDate: Schema.$Array<Schema.String>;
|
|
515
|
+
readonly clearedLocks: Schema.$Array<Schema.String>;
|
|
516
|
+
readonly urlSynced: Schema.$Array<Schema.String>;
|
|
517
|
+
readonly registered: Schema.$Array<Schema.String>;
|
|
518
|
+
readonly boundaryMarked: Schema.$Array<Schema.String>;
|
|
519
|
+
}>;
|
|
520
|
+
}>, Schema.Struct<{
|
|
521
|
+
readonly action: Schema.Literal<"pin">;
|
|
522
|
+
readonly result: Schema.Struct<{
|
|
523
|
+
readonly name: Schema.String;
|
|
524
|
+
readonly ref: Schema.String;
|
|
525
|
+
readonly oldCommit: Schema.NullOr<Schema.String>;
|
|
526
|
+
readonly newCommit: Schema.String;
|
|
527
|
+
readonly commitMessage: Schema.String;
|
|
528
|
+
readonly staleNoteIds: Schema.$Array<Schema.String>;
|
|
529
|
+
}>;
|
|
530
|
+
}>, Schema.Struct<{
|
|
531
|
+
readonly action: Schema.Literal<"add">;
|
|
532
|
+
readonly result: Schema.Struct<{
|
|
533
|
+
readonly name: Schema.String;
|
|
534
|
+
readonly ref: Schema.String;
|
|
535
|
+
readonly path: Schema.String;
|
|
536
|
+
}>;
|
|
537
|
+
}>, Schema.Struct<{
|
|
538
|
+
readonly action: Schema.Literal<"note">;
|
|
539
|
+
readonly result: Schema.Struct<{
|
|
540
|
+
readonly name: Schema.String;
|
|
541
|
+
readonly op: Schema.Literals<readonly ["add", "remove", "promote"]>;
|
|
542
|
+
readonly id: Schema.String;
|
|
543
|
+
readonly noteCount: Schema.Number;
|
|
544
|
+
}>;
|
|
545
|
+
}>, Schema.Struct<{
|
|
546
|
+
readonly action: Schema.Literal<"remove">;
|
|
547
|
+
readonly result: Schema.Struct<{
|
|
548
|
+
readonly name: Schema.String;
|
|
549
|
+
readonly path: Schema.String;
|
|
550
|
+
readonly commitMessage: Schema.String;
|
|
551
|
+
readonly removedNotes: Schema.$Array<Schema.Struct<{
|
|
552
|
+
readonly id: Schema.String;
|
|
553
|
+
readonly date: Schema.String;
|
|
554
|
+
readonly ref: Schema.String;
|
|
555
|
+
readonly note: Schema.String;
|
|
556
|
+
}>>;
|
|
557
|
+
readonly removedEntry: Schema.Struct<{
|
|
558
|
+
readonly url: Schema.String;
|
|
559
|
+
readonly ref: Schema.String;
|
|
560
|
+
readonly purpose: Schema.String;
|
|
561
|
+
readonly sparse: Schema.optional<Schema.$Array<Schema.String>>;
|
|
562
|
+
readonly orientation: Schema.optional<Schema.Struct<{
|
|
563
|
+
readonly layout: Schema.optional<Schema.String>;
|
|
564
|
+
readonly keyPaths: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
|
|
565
|
+
readonly startHere: Schema.optional<Schema.String>;
|
|
566
|
+
}>>;
|
|
567
|
+
readonly notes: Schema.optional<Schema.$Array<Schema.Struct<{
|
|
568
|
+
readonly id: Schema.String;
|
|
569
|
+
readonly date: Schema.String;
|
|
570
|
+
readonly ref: Schema.String;
|
|
571
|
+
readonly note: Schema.String;
|
|
572
|
+
}>>>;
|
|
573
|
+
}>;
|
|
574
|
+
}>;
|
|
575
|
+
}>, Schema.Struct<{
|
|
576
|
+
readonly action: Schema.Literal<"rename">;
|
|
577
|
+
readonly result: Schema.Struct<{
|
|
578
|
+
readonly oldName: Schema.String;
|
|
579
|
+
readonly newName: Schema.String;
|
|
580
|
+
readonly path: Schema.String;
|
|
581
|
+
readonly commitMessage: Schema.String;
|
|
582
|
+
}>;
|
|
583
|
+
}>, Schema.Struct<{
|
|
584
|
+
readonly action: Schema.Literal<"restore">;
|
|
585
|
+
readonly result: Schema.Struct<{
|
|
586
|
+
readonly restored: Schema.$Array<Schema.Struct<{
|
|
587
|
+
readonly name: Schema.String;
|
|
588
|
+
readonly commit: Schema.String;
|
|
589
|
+
}>>;
|
|
590
|
+
readonly skippedClean: Schema.$Array<Schema.String>;
|
|
591
|
+
readonly stillDirty: Schema.$Array<Schema.String>;
|
|
592
|
+
}>;
|
|
593
|
+
}>, Schema.Struct<{
|
|
594
|
+
readonly action: Schema.Literal<"deregister">;
|
|
595
|
+
readonly result: Schema.Struct<{
|
|
596
|
+
readonly section: Schema.String;
|
|
597
|
+
readonly removedKeys: Schema.$Array<Schema.String>;
|
|
598
|
+
}>;
|
|
599
|
+
}>]>;
|
|
600
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
601
|
+
readonly failureMode: "error";
|
|
602
|
+
}, Repos.ReposManager | WorkspaceRoot>;
|
|
603
|
+
//#endregion
|
|
604
|
+
//#region src/tools/turbo-inspect.d.ts
|
|
605
|
+
/** The `turbo_inspect` tool value. */
|
|
606
|
+
declare const turboInspectTool: Tool.Tool<"turbo_inspect", {
|
|
607
|
+
readonly parameters: Schema.Struct<{
|
|
608
|
+
readonly mode: Schema.Literals<readonly ["cache", "graph", "affected"]>;
|
|
609
|
+
readonly task: Schema.optionalKey<Schema.String>;
|
|
610
|
+
readonly base: Schema.optionalKey<Schema.String>;
|
|
611
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
612
|
+
}>;
|
|
613
|
+
readonly success: Schema.Union<readonly [Schema.Struct<{
|
|
614
|
+
readonly mode: Schema.Literal<"cache">;
|
|
615
|
+
readonly result: Schema.Struct<{
|
|
616
|
+
readonly task: Schema.String;
|
|
617
|
+
readonly totalTasks: Schema.Number;
|
|
618
|
+
readonly hits: Schema.Number;
|
|
619
|
+
readonly misses: Schema.Number;
|
|
620
|
+
readonly statuses: Schema.$Array<Schema.Struct<{
|
|
621
|
+
readonly package: Schema.String;
|
|
622
|
+
readonly taskId: Schema.String;
|
|
623
|
+
readonly hash: Schema.String;
|
|
624
|
+
readonly status: Schema.Literals<readonly ["HIT", "MISS"]>;
|
|
625
|
+
readonly timeSaved: Schema.Number;
|
|
626
|
+
}>>;
|
|
627
|
+
readonly explanations: Schema.$Array<Schema.Struct<{
|
|
628
|
+
readonly package: Schema.String;
|
|
629
|
+
readonly taskId: Schema.String;
|
|
630
|
+
readonly hash: Schema.String;
|
|
631
|
+
readonly inputFileCount: Schema.Number;
|
|
632
|
+
readonly hashedEnvVars: Schema.$Array<Schema.String>;
|
|
633
|
+
readonly externalDependenciesHash: Schema.String;
|
|
634
|
+
readonly dependsOn: Schema.$Array<Schema.String>;
|
|
635
|
+
}>>;
|
|
636
|
+
readonly global: Schema.Struct<{
|
|
637
|
+
readonly rootKey: Schema.String;
|
|
638
|
+
readonly globalFileCount: Schema.Number;
|
|
639
|
+
readonly externalDependenciesHash: Schema.String;
|
|
640
|
+
readonly internalDependenciesHash: Schema.String;
|
|
641
|
+
readonly globalEnvVars: Schema.$Array<Schema.String>;
|
|
642
|
+
}>;
|
|
643
|
+
}>;
|
|
644
|
+
}>, Schema.Struct<{
|
|
645
|
+
readonly mode: Schema.Literal<"graph">;
|
|
646
|
+
readonly result: Schema.Struct<{
|
|
647
|
+
readonly task: Schema.optional<Schema.String>;
|
|
648
|
+
readonly nodeCount: Schema.Number;
|
|
649
|
+
readonly nodes: Schema.$Array<Schema.Struct<{
|
|
650
|
+
readonly taskId: Schema.String;
|
|
651
|
+
readonly package: Schema.String;
|
|
652
|
+
readonly dependsOn: Schema.$Array<Schema.String>;
|
|
653
|
+
}>>;
|
|
654
|
+
readonly criticalPath: Schema.$Array<Schema.String>;
|
|
655
|
+
}>;
|
|
656
|
+
}>, Schema.Struct<{
|
|
657
|
+
readonly mode: Schema.Literal<"affected">;
|
|
658
|
+
readonly result: Schema.Struct<{
|
|
659
|
+
readonly base: Schema.String;
|
|
660
|
+
readonly packages: Schema.$Array<Schema.String>;
|
|
661
|
+
readonly dependents: Schema.$Array<Schema.String>;
|
|
662
|
+
}>;
|
|
663
|
+
}>]>;
|
|
664
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
665
|
+
readonly failureMode: "error";
|
|
666
|
+
}, Turbo.TurboInspector | WorkspaceRoot>;
|
|
667
|
+
//#endregion
|
|
668
|
+
//#region src/tools/workspace-info.d.ts
|
|
669
|
+
/**
|
|
670
|
+
* The `workspace_info` tool value. `dependencies` names the two services the
|
|
671
|
+
* handler yields so `Tool.HandlerServices` carries them (without it the
|
|
672
|
+
* handler record fails against `Toolkit.HandlersFrom`).
|
|
673
|
+
*/
|
|
674
|
+
declare const workspaceInfoTool: Tool.Tool<"workspace_info", {
|
|
675
|
+
readonly parameters: Schema.Struct<{
|
|
676
|
+
readonly cwd: Schema.optionalKey<Schema.String>;
|
|
677
|
+
}>;
|
|
678
|
+
readonly success: Schema.Struct<{
|
|
679
|
+
readonly root: Schema.String;
|
|
680
|
+
readonly runtime: Schema.Literals<readonly ["node", "bun"]>;
|
|
681
|
+
readonly packageManager: Schema.Struct<{
|
|
682
|
+
readonly type: Schema.Literals<readonly ["npm", "pnpm", "yarn", "bun"]>;
|
|
683
|
+
readonly version: Schema.optional<Schema.String>;
|
|
684
|
+
}>;
|
|
685
|
+
readonly workspaceCount: Schema.Number;
|
|
686
|
+
readonly workspaces: Schema.$Array<Schema.Struct<{
|
|
687
|
+
readonly name: Schema.String;
|
|
688
|
+
/** Absent when the manifest declares no `version` — legal for a private package or root. */
|
|
689
|
+
readonly version: Schema.optional<Schema.String>;
|
|
690
|
+
readonly path: Schema.String;
|
|
691
|
+
readonly root: Schema.Boolean;
|
|
692
|
+
readonly publishable: Schema.Boolean;
|
|
693
|
+
readonly targets: Schema.$Array<Schema.String>;
|
|
694
|
+
readonly versioned: Schema.Boolean;
|
|
695
|
+
readonly tagged: Schema.Boolean;
|
|
696
|
+
readonly released: Schema.Boolean;
|
|
697
|
+
readonly linked: Schema.$Array<Schema.String>;
|
|
698
|
+
readonly fixed: Schema.$Array<Schema.String>;
|
|
699
|
+
}>>;
|
|
700
|
+
}>;
|
|
701
|
+
readonly failure: Schema.Union<readonly [typeof WorkspaceNotFound, typeof InvalidArgument, typeof EngineError, typeof BiomeUnavailable, typeof BiomeFailed]>;
|
|
702
|
+
readonly failureMode: "error";
|
|
703
|
+
}, SilkWorkspaceAnalyzer | WorkspaceRoot>;
|
|
704
|
+
//#endregion
|
|
705
|
+
//#region src/toolkit.d.ts
|
|
706
|
+
/**
|
|
707
|
+
* The served tool record, keyed by wire name. Spelled out through the
|
|
708
|
+
* exported `Toolkit.ToolsByName` (rather than inferred through
|
|
709
|
+
* `Toolkit.make`) so the exported toolkit and handler layer have nameable
|
|
710
|
+
* declaration types — inference reaches into silk-effects' unexported
|
|
711
|
+
* `*Shape` interfaces and fails declaration emit (TS4023).
|
|
712
|
+
*
|
|
713
|
+
* @public
|
|
714
|
+
*/
|
|
715
|
+
type SilkTools = Toolkit.ToolsByName<readonly [typeof workspaceInfoTool, typeof turboInspectTool, typeof changesetInspectTool, typeof changesetValidateTool, typeof changesetDepsDetectTool, typeof changesetPreviewTool, typeof changesetDepsRegenTool, typeof reposInspectTool, typeof reposManageTool, typeof biomeCheckTool]>;
|
|
716
|
+
/**
|
|
717
|
+
* The ten savvy-mcp tools — seven read-only, three mutating (`biome_check`
|
|
718
|
+
* with `write`/`unsafe`, `changeset_deps_regen`, `repos_manage`) — in the
|
|
719
|
+
* order `tools/list` serves them.
|
|
720
|
+
*
|
|
721
|
+
* @public
|
|
722
|
+
*/
|
|
723
|
+
export declare const SilkToolkit: Toolkit.Toolkit<SilkTools>;
|
|
724
|
+
/**
|
|
725
|
+
* The handler layer. `cwd` — the project directory `main.ts` resolved once at
|
|
726
|
+
* startup — is closed over as every handler's fallback when a call omits its
|
|
727
|
+
* own `cwd`; the handlers' declared service dependencies are discharged by
|
|
728
|
+
* `makeSilkRuntimeLayer(cwd)` in `server.ts`.
|
|
729
|
+
*
|
|
730
|
+
* @public
|
|
731
|
+
*/
|
|
732
|
+
export declare const ToolsLayer: (cwd: string) => Layer.Layer<Tool.HandlersFor<SilkTools>>;
|
|
56
733
|
//#endregion
|
|
57
734
|
//#region src/version.d.ts
|
|
58
735
|
/**
|
|
@@ -62,7 +739,7 @@ export declare function startMcpServer(ctx: McpContext): Promise<void>;
|
|
|
62
739
|
*
|
|
63
740
|
* @packageDocumentation
|
|
64
741
|
*/
|
|
65
|
-
export declare const CURRENT_MCP_VERSION
|
|
742
|
+
export declare const CURRENT_MCP_VERSION: any;
|
|
66
743
|
//#endregion
|
|
67
|
-
export type {
|
|
744
|
+
export type { McpServices, PlatformServices, SilkTools };
|
|
68
745
|
//# sourceMappingURL=index.d.ts.map
|