mcp-terminal-runner 0.4.0 → 0.4.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/dist/tools/execute.d.ts.map +1 -1
- package/dist/tools/execute.js +2 -2
- package/dist/tools/execute.js.map +1 -1
- package/dist/utils/command.d.ts +7 -4
- package/dist/utils/command.d.ts.map +1 -1
- package/dist/utils/command.js +21 -8
- package/dist/utils/command.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/tools/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/tools/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,SAuDpD,CAAC"}
|
package/dist/tools/execute.js
CHANGED
|
@@ -16,8 +16,8 @@ const registerExecuteTool = (server) => {
|
|
|
16
16
|
.describe('Optional input to write to stdin. Useful for commands that require user interaction.'),
|
|
17
17
|
}, async (args) => {
|
|
18
18
|
try {
|
|
19
|
-
const
|
|
20
|
-
const result = await (0, command_js_1.runCommand)(
|
|
19
|
+
const exec = await (0, command_js_1.prepareCommand)(args.command, args.cwd);
|
|
20
|
+
const result = await (0, command_js_1.runCommand)(exec.file, exec.args, exec.cwd, args.input);
|
|
21
21
|
return {
|
|
22
22
|
content: [
|
|
23
23
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/tools/execute.ts"],"names":[],"mappings":";;;AACA,qCAA+B;AAC/B,6BAAwB;AACxB,oDAAiE;AAE1D,MAAM,mBAAmB,GAAG,CAAC,MAAiB,EAAE,EAAE;IACvD,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,qIAAqI,EACrI;QACE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5D,GAAG,EAAE,OAAC;aACH,MAAM,EAAE;aACR,QAAQ,CAAC,qDAAqD,CAAC;QAClE,KAAK,EAAE,OAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sFAAsF,CACvF;KACJ,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/tools/execute.ts"],"names":[],"mappings":";;;AACA,qCAA+B;AAC/B,6BAAwB;AACxB,oDAAiE;AAE1D,MAAM,mBAAmB,GAAG,CAAC,MAAiB,EAAE,EAAE;IACvD,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,qIAAqI,EACrI;QACE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5D,GAAG,EAAE,OAAC;aACH,MAAM,EAAE;aACR,QAAQ,CAAC,qDAAqD,CAAC;QAClE,KAAK,EAAE,OAAC;aACL,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,sFAAsF,CACvF;KACJ,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAA,2BAAc,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAE1D,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAU,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAE5E,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAA,cAAI,EAAC;4BACT,SAAS,EAAE,MAAM,CAAC,QAAQ;4BAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;4BACrB,MAAM,EAAE,MAAM,CAAC,MAAM;yBACtB,CAAC;qBACH;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,YAAY,GACd,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEzD,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpC,YAAY;oBACV,2HAA2H,CAAC;YAChI,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,4BAA4B,YAAY,EAAE;qBACjD;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAvDW,QAAA,mBAAmB,uBAuD9B"}
|
package/dist/utils/command.d.ts
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import type { CommandResult } from '../types.js';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
interface PreparedExecution {
|
|
3
|
+
file: string;
|
|
4
|
+
args: string[];
|
|
5
5
|
cwd?: string;
|
|
6
|
-
}
|
|
6
|
+
}
|
|
7
|
+
export declare const runCommand: (file: string, args: string[], cwd?: string, input?: string) => Promise<CommandResult>;
|
|
8
|
+
export declare const prepareCommand: (command: string, cwd: string) => Promise<PreparedExecution>;
|
|
9
|
+
export {};
|
|
7
10
|
//# sourceMappingURL=command.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/utils/command.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,eAAO,MAAM,UAAU,GACrB,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/utils/command.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,UAAU,GACrB,MAAM,MAAM,EACZ,MAAM,MAAM,EAAE,EACd,MAAM,MAAM,EACZ,QAAQ,MAAM,KACb,OAAO,CAAC,aAAa,CAqCpB,CAAC;AAEL,eAAO,MAAM,cAAc,GACzB,SAAS,MAAM,EACf,KAAK,MAAM,KACV,OAAO,CAAC,iBAAiB,CAqC3B,CAAC"}
|
package/dist/utils/command.js
CHANGED
|
@@ -8,10 +8,9 @@ const args_tokenizer_1 = require("args-tokenizer");
|
|
|
8
8
|
const cross_spawn_1 = __importDefault(require("cross-spawn"));
|
|
9
9
|
const env_js_1 = require("./env.js");
|
|
10
10
|
const paths_js_1 = require("./paths.js");
|
|
11
|
-
const runCommand = async (
|
|
12
|
-
const child = (0, cross_spawn_1.default)(
|
|
11
|
+
const runCommand = async (file, args, cwd, input) => new Promise((resolvePromise, rejectPromise) => {
|
|
12
|
+
const child = (0, cross_spawn_1.default)(file, args, {
|
|
13
13
|
cwd,
|
|
14
|
-
shell: true,
|
|
15
14
|
windowsHide: true,
|
|
16
15
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
17
16
|
});
|
|
@@ -48,13 +47,27 @@ const prepareCommand = async (command, cwd) => {
|
|
|
48
47
|
throw new Error(`Command "${bin}" is not allowed, allowed commands: ${allowedCommands.length > 0 ? allowedCommands.join(', ') : '(none)'}`);
|
|
49
48
|
}
|
|
50
49
|
const cwdResolved = await (0, paths_js_1.resolveAndValidateCwd)(cwd);
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
// On Windows, treat a POSIX-style cwd as a request to execute inside WSL.
|
|
51
|
+
// We execute via: wsl --cd <cwd> -- bash -lc <command>
|
|
53
52
|
if (process.platform === 'win32' && cwdResolved.startsWith('/')) {
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
return {
|
|
54
|
+
file: 'wsl',
|
|
55
|
+
args: ['--cd', cwdResolved, '--', 'bash', '-lc', command],
|
|
56
|
+
};
|
|
56
57
|
}
|
|
57
|
-
|
|
58
|
+
if (process.platform === 'win32') {
|
|
59
|
+
return {
|
|
60
|
+
file: 'cmd.exe',
|
|
61
|
+
args: ['/d', '/s', '/c', command],
|
|
62
|
+
cwd: cwdResolved,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
// POSIX (Linux/macOS)
|
|
66
|
+
return {
|
|
67
|
+
file: 'bash',
|
|
68
|
+
args: ['-lc', command],
|
|
69
|
+
cwd: cwdResolved,
|
|
70
|
+
};
|
|
58
71
|
};
|
|
59
72
|
exports.prepareCommand = prepareCommand;
|
|
60
73
|
//# sourceMappingURL=command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/utils/command.ts"],"names":[],"mappings":";;;;;;AAAA,mDAA8C;AAC9C,8DAAgC;AAEhC,qCAAkD;AAClD,yCAAmD;
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/utils/command.ts"],"names":[],"mappings":"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"}
|