@paretools/build 0.8.4 → 0.9.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/dist/lib/build-runner.d.ts +2 -2
- package/dist/lib/build-runner.d.ts.map +1 -1
- package/dist/lib/build-runner.js +6 -6
- package/dist/lib/build-runner.js.map +1 -1
- package/dist/lib/formatters.d.ts +1 -0
- package/dist/lib/formatters.d.ts.map +1 -1
- package/dist/lib/formatters.js +25 -5
- package/dist/lib/formatters.js.map +1 -1
- package/dist/lib/parsers.d.ts +12 -3
- package/dist/lib/parsers.d.ts.map +1 -1
- package/dist/lib/parsers.js +223 -19
- package/dist/lib/parsers.js.map +1 -1
- package/dist/schemas/index.d.ts +85 -4
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +31 -2
- package/dist/schemas/index.js.map +1 -1
- package/dist/tools/build.d.ts.map +1 -1
- package/dist/tools/build.js +32 -4
- package/dist/tools/build.js.map +1 -1
- package/dist/tools/esbuild.d.ts.map +1 -1
- package/dist/tools/esbuild.js +115 -6
- package/dist/tools/esbuild.js.map +1 -1
- package/dist/tools/nx.d.ts.map +1 -1
- package/dist/tools/nx.js +83 -1
- package/dist/tools/nx.js.map +1 -1
- package/dist/tools/tsc.d.ts.map +1 -1
- package/dist/tools/tsc.js +42 -2
- package/dist/tools/tsc.js.map +1 -1
- package/dist/tools/turbo.d.ts.map +1 -1
- package/dist/tools/turbo.js +60 -2
- package/dist/tools/turbo.js.map +1 -1
- package/dist/tools/vite-build.d.ts.map +1 -1
- package/dist/tools/vite-build.js +80 -1
- package/dist/tools/vite-build.js.map +1 -1
- package/dist/tools/webpack.d.ts.map +1 -1
- package/dist/tools/webpack.js +76 -2
- package/dist/tools/webpack.js.map +1 -1
- package/package.json +2 -2
package/dist/tools/esbuild.js
CHANGED
|
@@ -4,6 +4,10 @@ import { esbuildCmd } from "../lib/build-runner.js";
|
|
|
4
4
|
import { parseEsbuildOutput } from "../lib/parsers.js";
|
|
5
5
|
import { formatEsbuild, compactEsbuildMap, formatEsbuildCompact } from "../lib/formatters.js";
|
|
6
6
|
import { EsbuildResultSchema } from "../schemas/index.js";
|
|
7
|
+
import { readFile, unlink } from "node:fs/promises";
|
|
8
|
+
import { join } from "node:path";
|
|
9
|
+
import { randomBytes } from "node:crypto";
|
|
10
|
+
import { tmpdir } from "node:os";
|
|
7
11
|
/** Registers the `esbuild` tool on the given MCP server. */
|
|
8
12
|
export function registerEsbuildTool(server) {
|
|
9
13
|
server.registerTool("esbuild", {
|
|
@@ -40,10 +44,51 @@ export function registerEsbuildTool(server) {
|
|
|
40
44
|
.optional()
|
|
41
45
|
.describe("Target platform (browser, node, neutral)"),
|
|
42
46
|
sourcemap: z
|
|
47
|
+
.enum(["true", "linked", "inline", "external", "both"])
|
|
48
|
+
.optional()
|
|
49
|
+
.describe("Source map mode: 'true' for default, 'linked', 'inline', 'external', or 'both'"),
|
|
50
|
+
target: z
|
|
51
|
+
.string()
|
|
52
|
+
.max(INPUT_LIMITS.STRING_MAX)
|
|
53
|
+
.optional()
|
|
54
|
+
.describe("Target environment (e.g., 'es2020', 'node16', 'chrome90'). Maps to --target."),
|
|
55
|
+
external: z
|
|
56
|
+
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
57
|
+
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
58
|
+
.optional()
|
|
59
|
+
.describe("Packages to exclude from the bundle (e.g., ['react', 'react-dom']). Maps to --external."),
|
|
60
|
+
tsconfig: z
|
|
61
|
+
.string()
|
|
62
|
+
.max(INPUT_LIMITS.PATH_MAX)
|
|
63
|
+
.optional()
|
|
64
|
+
.describe("Path to tsconfig.json for TypeScript configuration (maps to --tsconfig)"),
|
|
65
|
+
drop: z
|
|
66
|
+
.array(z.enum(["console", "debugger"]))
|
|
67
|
+
.max(2)
|
|
68
|
+
.optional()
|
|
69
|
+
.describe("Statements to drop from output (maps to --drop:console, --drop:debugger)"),
|
|
70
|
+
splitting: z
|
|
43
71
|
.boolean()
|
|
44
72
|
.optional()
|
|
45
|
-
.
|
|
46
|
-
|
|
73
|
+
.describe("Enable code splitting (requires format=esm and outdir)"),
|
|
74
|
+
legalComments: z
|
|
75
|
+
.enum(["none", "inline", "eof", "linked", "external"])
|
|
76
|
+
.optional()
|
|
77
|
+
.describe("How to handle legal comments (license headers)"),
|
|
78
|
+
logLevel: z
|
|
79
|
+
.enum(["verbose", "debug", "info", "warning", "error", "silent"])
|
|
80
|
+
.optional()
|
|
81
|
+
.describe("Log level to control output verbosity"),
|
|
82
|
+
define: z
|
|
83
|
+
.record(z.string(), z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
84
|
+
.optional()
|
|
85
|
+
.describe("Compile-time constant replacements (e.g., { 'process.env.NODE_ENV': '\"production\"' }). " +
|
|
86
|
+
"Maps to --define:KEY=VALUE for each entry."),
|
|
87
|
+
metafile: z
|
|
88
|
+
.boolean()
|
|
89
|
+
.optional()
|
|
90
|
+
.describe("Generate a metafile with bundle analysis data (inputs/outputs with byte sizes). " +
|
|
91
|
+
"When enabled, the metafile is included in the structured output."),
|
|
47
92
|
args: z
|
|
48
93
|
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
49
94
|
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
@@ -57,7 +102,7 @@ export function registerEsbuildTool(server) {
|
|
|
57
102
|
.describe("Auto-compact when structured output exceeds raw CLI tokens. Set false to always get full schema."),
|
|
58
103
|
},
|
|
59
104
|
outputSchema: EsbuildResultSchema,
|
|
60
|
-
}, async ({ path, entryPoints, outdir, outfile, bundle, minify, format, platform, sourcemap, args, compact, }) => {
|
|
105
|
+
}, async ({ path, entryPoints, outdir, outfile, bundle, minify, format, platform, sourcemap, target, external, tsconfig, drop, splitting, legalComments, logLevel, define, metafile, args, compact, }) => {
|
|
61
106
|
const cwd = path || process.cwd();
|
|
62
107
|
// Validate entry points to prevent flag injection
|
|
63
108
|
for (const ep of entryPoints) {
|
|
@@ -76,8 +121,55 @@ export function registerEsbuildTool(server) {
|
|
|
76
121
|
cliArgs.push(`--format=${format}`);
|
|
77
122
|
if (platform)
|
|
78
123
|
cliArgs.push(`--platform=${platform}`);
|
|
79
|
-
if (sourcemap)
|
|
80
|
-
|
|
124
|
+
if (sourcemap) {
|
|
125
|
+
if (sourcemap === "true") {
|
|
126
|
+
cliArgs.push("--sourcemap");
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
cliArgs.push(`--sourcemap=${sourcemap}`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
if (target) {
|
|
133
|
+
assertNoFlagInjection(target, "target");
|
|
134
|
+
cliArgs.push(`--target=${target}`);
|
|
135
|
+
}
|
|
136
|
+
if (external) {
|
|
137
|
+
for (const ext of external) {
|
|
138
|
+
assertNoFlagInjection(ext, "external");
|
|
139
|
+
cliArgs.push(`--external:${ext}`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
if (tsconfig) {
|
|
143
|
+
assertNoFlagInjection(tsconfig, "tsconfig");
|
|
144
|
+
cliArgs.push(`--tsconfig=${tsconfig}`);
|
|
145
|
+
}
|
|
146
|
+
if (drop) {
|
|
147
|
+
for (const d of drop) {
|
|
148
|
+
cliArgs.push(`--drop:${d}`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
if (splitting)
|
|
152
|
+
cliArgs.push("--splitting");
|
|
153
|
+
if (legalComments)
|
|
154
|
+
cliArgs.push(`--legal-comments=${legalComments}`);
|
|
155
|
+
if (logLevel)
|
|
156
|
+
cliArgs.push(`--log-level=${logLevel}`);
|
|
157
|
+
// Gap #79: define parameter — compile-time constant replacements
|
|
158
|
+
const defineRecord = define;
|
|
159
|
+
if (defineRecord) {
|
|
160
|
+
for (const [key, value] of Object.entries(defineRecord)) {
|
|
161
|
+
assertNoFlagInjection(String(key), "define key");
|
|
162
|
+
assertNoFlagInjection(String(value), "define value");
|
|
163
|
+
cliArgs.push(`--define:${key}=${value}`);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
// Gap #80: metafile parameter — bundle analysis data
|
|
167
|
+
let metafilePath;
|
|
168
|
+
if (metafile) {
|
|
169
|
+
const suffix = randomBytes(6).toString("hex");
|
|
170
|
+
metafilePath = join(tmpdir(), `pare-esbuild-meta-${suffix}.json`);
|
|
171
|
+
cliArgs.push(`--metafile=${metafilePath}`);
|
|
172
|
+
}
|
|
81
173
|
for (const a of args ?? []) {
|
|
82
174
|
assertNoFlagInjection(a, "args");
|
|
83
175
|
}
|
|
@@ -88,7 +180,24 @@ export function registerEsbuildTool(server) {
|
|
|
88
180
|
const result = await esbuildCmd(cliArgs, cwd);
|
|
89
181
|
const duration = Math.round((Date.now() - start) / 100) / 10;
|
|
90
182
|
const rawOutput = result.stdout + "\n" + result.stderr;
|
|
91
|
-
|
|
183
|
+
// Read metafile if it was generated
|
|
184
|
+
let metafileContent;
|
|
185
|
+
if (metafilePath) {
|
|
186
|
+
try {
|
|
187
|
+
metafileContent = await readFile(metafilePath, "utf-8");
|
|
188
|
+
}
|
|
189
|
+
catch {
|
|
190
|
+
// Metafile may not exist if build failed
|
|
191
|
+
}
|
|
192
|
+
// Clean up the temp metafile
|
|
193
|
+
try {
|
|
194
|
+
await unlink(metafilePath);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
// Ignore cleanup errors
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
const data = parseEsbuildOutput(result.stdout, result.stderr, result.exitCode, duration, metafilePath, metafileContent);
|
|
92
201
|
return compactDualOutput(data, rawOutput, formatEsbuild, compactEsbuildMap, formatEsbuildCompact, compact === false);
|
|
93
202
|
});
|
|
94
203
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"esbuild.js","sourceRoot":"","sources":["../../src/tools/esbuild.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"esbuild.js","sourceRoot":"","sources":["../../src/tools/esbuild.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/nx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nx.d.ts","sourceRoot":"","sources":["../../src/tools/nx.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,uDAAuD;AACvD,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"nx.d.ts","sourceRoot":"","sources":["../../src/tools/nx.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,uDAAuD;AACvD,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,QAwL/C"}
|
package/dist/tools/nx.js
CHANGED
|
@@ -29,11 +29,59 @@ export function registerNxTool(server) {
|
|
|
29
29
|
.max(INPUT_LIMITS.STRING_MAX)
|
|
30
30
|
.optional()
|
|
31
31
|
.describe("Base ref for affected comparison (e.g., 'main')"),
|
|
32
|
+
head: z
|
|
33
|
+
.string()
|
|
34
|
+
.max(INPUT_LIMITS.STRING_MAX)
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("Head ref for affected comparison (maps to --head)"),
|
|
37
|
+
configuration: z
|
|
38
|
+
.string()
|
|
39
|
+
.max(INPUT_LIMITS.STRING_MAX)
|
|
40
|
+
.optional()
|
|
41
|
+
.describe("Build configuration to use (e.g., 'production', 'development'). Maps to --configuration."),
|
|
42
|
+
projects: z
|
|
43
|
+
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
44
|
+
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
45
|
+
.optional()
|
|
46
|
+
.describe("Specific projects to include in run-many (maps to --projects)"),
|
|
47
|
+
exclude: z
|
|
48
|
+
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
49
|
+
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
50
|
+
.optional()
|
|
51
|
+
.describe("Projects to exclude from run-many (maps to --exclude)"),
|
|
32
52
|
path: z
|
|
33
53
|
.string()
|
|
34
54
|
.max(INPUT_LIMITS.PATH_MAX)
|
|
35
55
|
.optional()
|
|
36
56
|
.describe("Project root path (default: cwd)"),
|
|
57
|
+
parallel: z
|
|
58
|
+
.number()
|
|
59
|
+
.optional()
|
|
60
|
+
.describe("Max number of parallel tasks (maps to --parallel)"),
|
|
61
|
+
skipNxCache: z
|
|
62
|
+
.boolean()
|
|
63
|
+
.optional()
|
|
64
|
+
.describe("Skip the Nx cache and re-run all tasks (maps to --skip-nx-cache)"),
|
|
65
|
+
nxBail: z
|
|
66
|
+
.boolean()
|
|
67
|
+
.optional()
|
|
68
|
+
.describe("Stop task execution after the first failure (maps to --nx-bail)"),
|
|
69
|
+
verbose: z
|
|
70
|
+
.boolean()
|
|
71
|
+
.optional()
|
|
72
|
+
.describe("Enable verbose output for debugging (maps to --verbose)"),
|
|
73
|
+
dryRun: z
|
|
74
|
+
.boolean()
|
|
75
|
+
.optional()
|
|
76
|
+
.describe("Preview the task graph without executing (maps to --dry-run)"),
|
|
77
|
+
outputStyle: z
|
|
78
|
+
.enum(["dynamic", "static", "stream", "stream-without-prefixes", "compact"])
|
|
79
|
+
.optional()
|
|
80
|
+
.describe("Output style for task logs"),
|
|
81
|
+
graph: z
|
|
82
|
+
.boolean()
|
|
83
|
+
.optional()
|
|
84
|
+
.describe("Generate the task graph visualization (maps to --graph)"),
|
|
37
85
|
args: z
|
|
38
86
|
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
39
87
|
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
@@ -47,13 +95,17 @@ export function registerNxTool(server) {
|
|
|
47
95
|
.describe("Auto-compact when structured output exceeds raw CLI tokens. Set false to always get full schema."),
|
|
48
96
|
},
|
|
49
97
|
outputSchema: NxResultSchema,
|
|
50
|
-
}, async ({ target, project, affected, base, path, args, compact }) => {
|
|
98
|
+
}, async ({ target, project, affected, base, head, configuration, projects, exclude, path, parallel, skipNxCache, nxBail, verbose, dryRun, outputStyle, graph, args, compact, }) => {
|
|
51
99
|
const cwd = path || process.cwd();
|
|
52
100
|
assertNoFlagInjection(target, "target");
|
|
53
101
|
if (project)
|
|
54
102
|
assertNoFlagInjection(project, "project");
|
|
55
103
|
if (base)
|
|
56
104
|
assertNoFlagInjection(base, "base");
|
|
105
|
+
if (head)
|
|
106
|
+
assertNoFlagInjection(head, "head");
|
|
107
|
+
if (configuration)
|
|
108
|
+
assertNoFlagInjection(configuration, "configuration");
|
|
57
109
|
for (const a of args ?? []) {
|
|
58
110
|
assertNoFlagInjection(a, "args");
|
|
59
111
|
}
|
|
@@ -62,6 +114,8 @@ export function registerNxTool(server) {
|
|
|
62
114
|
cliArgs.push("affected", `--target=${target}`);
|
|
63
115
|
if (base)
|
|
64
116
|
cliArgs.push(`--base=${base}`);
|
|
117
|
+
if (head)
|
|
118
|
+
cliArgs.push(`--head=${head}`);
|
|
65
119
|
}
|
|
66
120
|
else if (project) {
|
|
67
121
|
cliArgs.push("run", `${project}:${target}`);
|
|
@@ -69,6 +123,34 @@ export function registerNxTool(server) {
|
|
|
69
123
|
else {
|
|
70
124
|
cliArgs.push("run-many", `--target=${target}`);
|
|
71
125
|
}
|
|
126
|
+
if (configuration)
|
|
127
|
+
cliArgs.push(`--configuration=${configuration}`);
|
|
128
|
+
if (projects && projects.length > 0) {
|
|
129
|
+
for (const p of projects) {
|
|
130
|
+
assertNoFlagInjection(p, "projects");
|
|
131
|
+
}
|
|
132
|
+
cliArgs.push(`--projects=${projects.join(",")}`);
|
|
133
|
+
}
|
|
134
|
+
if (exclude && exclude.length > 0) {
|
|
135
|
+
for (const e of exclude) {
|
|
136
|
+
assertNoFlagInjection(e, "exclude");
|
|
137
|
+
}
|
|
138
|
+
cliArgs.push(`--exclude=${exclude.join(",")}`);
|
|
139
|
+
}
|
|
140
|
+
if (parallel !== undefined)
|
|
141
|
+
cliArgs.push(`--parallel=${parallel}`);
|
|
142
|
+
if (skipNxCache)
|
|
143
|
+
cliArgs.push("--skip-nx-cache");
|
|
144
|
+
if (nxBail)
|
|
145
|
+
cliArgs.push("--nx-bail");
|
|
146
|
+
if (verbose)
|
|
147
|
+
cliArgs.push("--verbose");
|
|
148
|
+
if (dryRun)
|
|
149
|
+
cliArgs.push("--dry-run");
|
|
150
|
+
if (outputStyle)
|
|
151
|
+
cliArgs.push(`--output-style=${outputStyle}`);
|
|
152
|
+
if (graph)
|
|
153
|
+
cliArgs.push("--graph");
|
|
72
154
|
if (args) {
|
|
73
155
|
cliArgs.push(...args);
|
|
74
156
|
}
|
package/dist/tools/nx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nx.js","sourceRoot":"","sources":["../../src/tools/nx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,uDAAuD;AACvD,MAAM,UAAU,cAAc,CAAC,MAAiB;IAC9C,MAAM,CAAC,YAAY,CACjB,IAAI,EACJ;QACE,KAAK,EAAE,IAAI;QACX,WAAW,EACT,4IAA4I;QAC9I,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC;iBAC5B,QAAQ,CAAC,kDAAkD,CAAC;YAC/D,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC;iBAC5B,QAAQ,EAAE;iBACV,QAAQ,CAAC,wCAAwC,CAAC;YACrD,QAAQ,EAAE,CAAC;iBACR,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,wDAAwD,CAAC;YACrE,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC;iBAC5B,QAAQ,EAAE;iBACV,QAAQ,CAAC,iDAAiD,CAAC;YAC9D,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC;iBAC1B,QAAQ,EAAE;iBACV,QAAQ,CAAC,kCAAkC,CAAC;YAC/C,IAAI,EAAE,CAAC;iBACJ,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;iBAC9C,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC;iBAC3B,QAAQ,EAAE;iBACV,OAAO,CAAC,EAAE,CAAC;iBACX,QAAQ,CAAC,oCAAoC,CAAC;YACjD,OAAO,EAAE,CAAC;iBACP,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,IAAI,CAAC;iBACb,QAAQ,CACP,kGAAkG,CACnG;SACJ;QACD,YAAY,EAAE,cAAc;KAC7B,EACD,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"nx.js","sourceRoot":"","sources":["../../src/tools/nx.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/tsc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tsc.d.ts","sourceRoot":"","sources":["../../src/tools/tsc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,wDAAwD;AACxD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"tsc.d.ts","sourceRoot":"","sources":["../../src/tools/tsc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,wDAAwD;AACxD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,QAwGhD"}
|
package/dist/tools/tsc.js
CHANGED
|
@@ -8,7 +8,8 @@ import { TscResultSchema } from "../schemas/index.js";
|
|
|
8
8
|
export function registerTscTool(server) {
|
|
9
9
|
server.registerTool("tsc", {
|
|
10
10
|
title: "TypeScript Check",
|
|
11
|
-
description: "Runs the TypeScript compiler and returns structured diagnostics (file, line, column, code, message). Use instead of running `tsc` in the terminal."
|
|
11
|
+
description: "Runs the TypeScript compiler and returns structured diagnostics (file, line, column, code, message). Use instead of running `tsc` in the terminal. " +
|
|
12
|
+
"Note: In compact mode, diagnostics are trimmed to file, line, and code — column and message fields are omitted to save tokens.",
|
|
12
13
|
inputSchema: {
|
|
13
14
|
path: z
|
|
14
15
|
.string()
|
|
@@ -21,6 +22,31 @@ export function registerTscTool(server) {
|
|
|
21
22
|
.default(true)
|
|
22
23
|
.describe("Skip emitting output files (default: true)"),
|
|
23
24
|
project: z.string().max(INPUT_LIMITS.PATH_MAX).optional().describe("Path to tsconfig.json"),
|
|
25
|
+
incremental: z
|
|
26
|
+
.boolean()
|
|
27
|
+
.optional()
|
|
28
|
+
.describe("Enable incremental compilation for faster repeated checks (maps to --incremental)"),
|
|
29
|
+
skipLibCheck: z
|
|
30
|
+
.boolean()
|
|
31
|
+
.optional()
|
|
32
|
+
.describe("Skip type checking of declaration files for faster feedback (maps to --skipLibCheck)"),
|
|
33
|
+
emitDeclarationOnly: z
|
|
34
|
+
.boolean()
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("Only emit .d.ts declaration files without JS output (maps to --emitDeclarationOnly)"),
|
|
37
|
+
declaration: z
|
|
38
|
+
.boolean()
|
|
39
|
+
.optional()
|
|
40
|
+
.describe("Generate .d.ts declaration files (maps to --declaration)"),
|
|
41
|
+
declarationDir: z
|
|
42
|
+
.string()
|
|
43
|
+
.max(INPUT_LIMITS.PATH_MAX)
|
|
44
|
+
.optional()
|
|
45
|
+
.describe("Output directory for .d.ts declaration files (maps to --declarationDir). Use with --declaration."),
|
|
46
|
+
pretty: z
|
|
47
|
+
.boolean()
|
|
48
|
+
.optional()
|
|
49
|
+
.describe("Enable or disable pretty-printed output (maps to --pretty). Set false for normalized parser-friendly output."),
|
|
24
50
|
compact: z
|
|
25
51
|
.boolean()
|
|
26
52
|
.optional()
|
|
@@ -28,15 +54,29 @@ export function registerTscTool(server) {
|
|
|
28
54
|
.describe("Auto-compact when structured output exceeds raw CLI tokens. Set false to always get full schema."),
|
|
29
55
|
},
|
|
30
56
|
outputSchema: TscResultSchema,
|
|
31
|
-
}, async ({ path, noEmit, project, compact }) => {
|
|
57
|
+
}, async ({ path, noEmit, project, incremental, skipLibCheck, emitDeclarationOnly, declaration, declarationDir, pretty, compact, }) => {
|
|
32
58
|
const cwd = path || process.cwd();
|
|
33
59
|
if (project)
|
|
34
60
|
assertNoFlagInjection(project, "project");
|
|
61
|
+
if (declarationDir)
|
|
62
|
+
assertNoFlagInjection(declarationDir, "declarationDir");
|
|
35
63
|
const args = [];
|
|
36
64
|
if (noEmit !== false)
|
|
37
65
|
args.push("--noEmit");
|
|
38
66
|
if (project)
|
|
39
67
|
args.push("--project", project);
|
|
68
|
+
if (incremental)
|
|
69
|
+
args.push("--incremental");
|
|
70
|
+
if (skipLibCheck)
|
|
71
|
+
args.push("--skipLibCheck");
|
|
72
|
+
if (emitDeclarationOnly)
|
|
73
|
+
args.push("--emitDeclarationOnly");
|
|
74
|
+
if (declaration)
|
|
75
|
+
args.push("--declaration");
|
|
76
|
+
if (declarationDir)
|
|
77
|
+
args.push("--declarationDir", declarationDir);
|
|
78
|
+
if (pretty === false)
|
|
79
|
+
args.push("--pretty", "false");
|
|
40
80
|
const result = await tsc(args, cwd);
|
|
41
81
|
const rawOutput = result.stdout + "\n" + result.stderr;
|
|
42
82
|
const data = parseTscOutput(result.stdout, result.stderr, result.exitCode);
|
package/dist/tools/tsc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tsc.js","sourceRoot":"","sources":["../../src/tools/tsc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,wDAAwD;AACxD,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,MAAM,CAAC,YAAY,CACjB,KAAK,EACL;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"tsc.js","sourceRoot":"","sources":["../../src/tools/tsc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turbo.d.ts","sourceRoot":"","sources":["../../src/tools/turbo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"turbo.d.ts","sourceRoot":"","sources":["../../src/tools/turbo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,QAsIlD"}
|
package/dist/tools/turbo.js
CHANGED
|
@@ -20,6 +20,43 @@ export function registerTurboTool(server) {
|
|
|
20
20
|
.optional()
|
|
21
21
|
.describe("Package filter (e.g., '@scope/pkg' or 'pkg...')"),
|
|
22
22
|
concurrency: z.number().optional().describe("Maximum number of concurrent tasks"),
|
|
23
|
+
force: z
|
|
24
|
+
.boolean()
|
|
25
|
+
.optional()
|
|
26
|
+
.describe("Bypass the turbo cache and re-run all tasks (maps to --force)"),
|
|
27
|
+
continue_on_error: z
|
|
28
|
+
.boolean()
|
|
29
|
+
.optional()
|
|
30
|
+
.describe("Continue running tasks even after failures to surface all errors (maps to --continue)"),
|
|
31
|
+
dryRun: z
|
|
32
|
+
.boolean()
|
|
33
|
+
.optional()
|
|
34
|
+
.describe("Preview the task graph without executing (maps to --dry-run)"),
|
|
35
|
+
affected: z
|
|
36
|
+
.boolean()
|
|
37
|
+
.optional()
|
|
38
|
+
.describe("Run only tasks affected by changes since the base branch (maps to --affected)"),
|
|
39
|
+
graph: z
|
|
40
|
+
.boolean()
|
|
41
|
+
.optional()
|
|
42
|
+
.describe("Generate the task graph visualization (maps to --graph)"),
|
|
43
|
+
logOrder: z
|
|
44
|
+
.enum(["stream", "grouped", "auto"])
|
|
45
|
+
.optional()
|
|
46
|
+
.describe("Order of task log output"),
|
|
47
|
+
profile: z
|
|
48
|
+
.boolean()
|
|
49
|
+
.optional()
|
|
50
|
+
.describe("Generate a performance profile (maps to --profile)"),
|
|
51
|
+
outputLogs: z
|
|
52
|
+
.enum(["full", "hash-only", "new-only", "errors-only", "none"])
|
|
53
|
+
.optional()
|
|
54
|
+
.describe("Control which task logs are shown (default: 'new-only'). Maps to --output-logs."),
|
|
55
|
+
args: z
|
|
56
|
+
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
57
|
+
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
58
|
+
.optional()
|
|
59
|
+
.describe("Additional turbo flags (e.g., ['--env-mode=strict']). Each arg is validated with assertNoFlagInjection."),
|
|
23
60
|
path: z
|
|
24
61
|
.string()
|
|
25
62
|
.max(INPUT_LIMITS.PATH_MAX)
|
|
@@ -32,16 +69,37 @@ export function registerTurboTool(server) {
|
|
|
32
69
|
.describe("Auto-compact when structured output exceeds raw CLI tokens. Set false to always get full schema."),
|
|
33
70
|
},
|
|
34
71
|
outputSchema: TurboResultSchema,
|
|
35
|
-
}, async ({ task, filter, concurrency, path, compact }) => {
|
|
72
|
+
}, async ({ task, filter, concurrency, force, continue_on_error, dryRun, affected, graph, logOrder, profile, outputLogs, args, path, compact, }) => {
|
|
36
73
|
const cwd = path || process.cwd();
|
|
37
74
|
assertNoFlagInjection(task, "task");
|
|
38
75
|
if (filter)
|
|
39
76
|
assertNoFlagInjection(filter, "filter");
|
|
40
|
-
const
|
|
77
|
+
const outputLogsValue = outputLogs ?? "new-only";
|
|
78
|
+
const cliArgs = ["run", task, `--output-logs=${outputLogsValue}`];
|
|
41
79
|
if (filter)
|
|
42
80
|
cliArgs.push("--filter", filter);
|
|
43
81
|
if (concurrency !== undefined)
|
|
44
82
|
cliArgs.push("--concurrency", String(concurrency));
|
|
83
|
+
if (force)
|
|
84
|
+
cliArgs.push("--force");
|
|
85
|
+
if (continue_on_error)
|
|
86
|
+
cliArgs.push("--continue");
|
|
87
|
+
if (dryRun)
|
|
88
|
+
cliArgs.push("--dry-run");
|
|
89
|
+
if (affected)
|
|
90
|
+
cliArgs.push("--affected");
|
|
91
|
+
if (graph)
|
|
92
|
+
cliArgs.push("--graph");
|
|
93
|
+
if (logOrder)
|
|
94
|
+
cliArgs.push(`--log-order=${logOrder}`);
|
|
95
|
+
if (profile)
|
|
96
|
+
cliArgs.push("--profile");
|
|
97
|
+
if (args) {
|
|
98
|
+
for (const a of args) {
|
|
99
|
+
assertNoFlagInjection(a, "args");
|
|
100
|
+
}
|
|
101
|
+
cliArgs.push(...args);
|
|
102
|
+
}
|
|
45
103
|
const start = Date.now();
|
|
46
104
|
const result = await turboCmd(cliArgs, cwd);
|
|
47
105
|
const duration = Math.round((Date.now() - start) / 100) / 10;
|
package/dist/tools/turbo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turbo.js","sourceRoot":"","sources":["../../src/tools/turbo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,0DAA0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,MAAiB;IACjD,MAAM,CAAC,YAAY,CACjB,OAAO,EACP;QACE,KAAK,EAAE,OAAO;QACd,WAAW,EACT,2IAA2I;QAC7I,WAAW,EAAE;YACX,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,gBAAgB,CAAC;iBAClC,QAAQ,CAAC,mDAAmD,CAAC;YAChE,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC;iBAC5B,QAAQ,EAAE;iBACV,QAAQ,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACjF,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC;iBAC1B,QAAQ,EAAE;iBACV,QAAQ,CAAC,kCAAkC,CAAC;YAC/C,OAAO,EAAE,CAAC;iBACP,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,IAAI,CAAC;iBACb,QAAQ,CACP,kGAAkG,CACnG;SACJ;QACD,YAAY,EAAE,iBAAiB;KAChC,EACD,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"turbo.js","sourceRoot":"","sources":["../../src/tools/turbo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-build.d.ts","sourceRoot":"","sources":["../../src/tools/vite-build.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,+DAA+D;AAC/D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"vite-build.d.ts","sourceRoot":"","sources":["../../src/tools/vite-build.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,+DAA+D;AAC/D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,QAyJtD"}
|
package/dist/tools/vite-build.js
CHANGED
|
@@ -21,6 +21,50 @@ export function registerViteBuildTool(server) {
|
|
|
21
21
|
.optional()
|
|
22
22
|
.default("production")
|
|
23
23
|
.describe("Build mode (default: production)"),
|
|
24
|
+
outDir: z
|
|
25
|
+
.string()
|
|
26
|
+
.max(INPUT_LIMITS.PATH_MAX)
|
|
27
|
+
.optional()
|
|
28
|
+
.describe("Custom output directory (maps to --outDir)"),
|
|
29
|
+
config: z
|
|
30
|
+
.string()
|
|
31
|
+
.max(INPUT_LIMITS.PATH_MAX)
|
|
32
|
+
.optional()
|
|
33
|
+
.describe("Path to Vite config file (maps to --config)"),
|
|
34
|
+
sourcemap: z
|
|
35
|
+
.union([z.boolean(), z.enum(["inline", "hidden"])])
|
|
36
|
+
.optional()
|
|
37
|
+
.describe("Generate source maps. true for default, 'inline' for inline, 'hidden' for hidden source maps."),
|
|
38
|
+
base: z
|
|
39
|
+
.string()
|
|
40
|
+
.max(INPUT_LIMITS.STRING_MAX)
|
|
41
|
+
.optional()
|
|
42
|
+
.describe("Public base path for non-root deployments (maps to --base)"),
|
|
43
|
+
ssr: z
|
|
44
|
+
.string()
|
|
45
|
+
.max(INPUT_LIMITS.PATH_MAX)
|
|
46
|
+
.optional()
|
|
47
|
+
.describe("SSR build entry point (maps to --ssr)"),
|
|
48
|
+
manifest: z
|
|
49
|
+
.boolean()
|
|
50
|
+
.optional()
|
|
51
|
+
.describe("Generate a manifest.json for backend-integrated builds (maps to --manifest)"),
|
|
52
|
+
minify: z
|
|
53
|
+
.enum(["esbuild", "terser", "false"])
|
|
54
|
+
.optional()
|
|
55
|
+
.describe("Minification strategy (esbuild, terser, or false to disable)"),
|
|
56
|
+
logLevel: z
|
|
57
|
+
.enum(["info", "warn", "error", "silent"])
|
|
58
|
+
.optional()
|
|
59
|
+
.describe("Log level to control output verbosity"),
|
|
60
|
+
emptyOutDir: z
|
|
61
|
+
.boolean()
|
|
62
|
+
.optional()
|
|
63
|
+
.describe("Empty the output directory before building (maps to --emptyOutDir)"),
|
|
64
|
+
reportCompressedSize: z
|
|
65
|
+
.boolean()
|
|
66
|
+
.optional()
|
|
67
|
+
.describe("Report compressed (gzip) size of output files — disable to speed up large builds"),
|
|
24
68
|
args: z
|
|
25
69
|
.array(z.string().max(INPUT_LIMITS.STRING_MAX))
|
|
26
70
|
.max(INPUT_LIMITS.ARRAY_MAX)
|
|
@@ -34,10 +78,18 @@ export function registerViteBuildTool(server) {
|
|
|
34
78
|
.describe("Auto-compact when structured output exceeds raw CLI tokens. Set false to always get full schema."),
|
|
35
79
|
},
|
|
36
80
|
outputSchema: ViteBuildResultSchema,
|
|
37
|
-
}, async ({ path, mode, args, compact }) => {
|
|
81
|
+
}, async ({ path, mode, outDir, config, sourcemap, base, ssr, manifest, minify, logLevel, emptyOutDir, reportCompressedSize, args, compact, }) => {
|
|
38
82
|
const cwd = path || process.cwd();
|
|
39
83
|
if (mode)
|
|
40
84
|
assertNoFlagInjection(mode, "mode");
|
|
85
|
+
if (outDir)
|
|
86
|
+
assertNoFlagInjection(outDir, "outDir");
|
|
87
|
+
if (config)
|
|
88
|
+
assertNoFlagInjection(config, "config");
|
|
89
|
+
if (base)
|
|
90
|
+
assertNoFlagInjection(base, "base");
|
|
91
|
+
if (ssr)
|
|
92
|
+
assertNoFlagInjection(ssr, "ssr");
|
|
41
93
|
for (const a of args ?? []) {
|
|
42
94
|
assertNoFlagInjection(a, "args");
|
|
43
95
|
}
|
|
@@ -45,6 +97,33 @@ export function registerViteBuildTool(server) {
|
|
|
45
97
|
if (mode && mode !== "production") {
|
|
46
98
|
cliArgs.push("--mode", mode);
|
|
47
99
|
}
|
|
100
|
+
if (outDir)
|
|
101
|
+
cliArgs.push(`--outDir=${outDir}`);
|
|
102
|
+
if (config)
|
|
103
|
+
cliArgs.push(`--config=${config}`);
|
|
104
|
+
if (sourcemap !== undefined) {
|
|
105
|
+
if (typeof sourcemap === "boolean") {
|
|
106
|
+
cliArgs.push(sourcemap ? "--sourcemap" : "--no-sourcemap");
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
cliArgs.push(`--sourcemap=${sourcemap}`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
if (base)
|
|
113
|
+
cliArgs.push(`--base=${base}`);
|
|
114
|
+
if (ssr)
|
|
115
|
+
cliArgs.push(`--ssr=${ssr}`);
|
|
116
|
+
if (manifest)
|
|
117
|
+
cliArgs.push("--manifest");
|
|
118
|
+
if (minify)
|
|
119
|
+
cliArgs.push(`--minify=${minify}`);
|
|
120
|
+
if (logLevel)
|
|
121
|
+
cliArgs.push(`--logLevel=${logLevel}`);
|
|
122
|
+
if (emptyOutDir !== undefined) {
|
|
123
|
+
cliArgs.push(emptyOutDir ? "--emptyOutDir" : "--no-emptyOutDir");
|
|
124
|
+
}
|
|
125
|
+
if (reportCompressedSize === false)
|
|
126
|
+
cliArgs.push("--no-reportCompressedSize");
|
|
48
127
|
if (args) {
|
|
49
128
|
cliArgs.push(...args);
|
|
50
129
|
}
|