summaryrefslogtreecommitdiff
path: root/packages/server/src/tools/shell.ts
diff options
context:
space:
mode:
authorOlcan <[email protected]>2025-04-28 15:05:36 -0700
committerGitHub <[email protected]>2025-04-28 15:05:36 -0700
commit57ceadb7d87b77fda543ee35097e7b68c10f1e5b (patch)
treecc8558326ef49fca482537d733cc34968cd40738 /packages/server/src/tools/shell.ts
parent30b04295d2c5b57b55fd4092917978c8ba5ac3ba (diff)
switch to shell tool, deprecating terminal (#203)
* switch to shell tool, deprecating terminal * Merge remote-tracking branch 'origin/main' into deprecate_terminal
Diffstat (limited to 'packages/server/src/tools/shell.ts')
-rw-r--r--packages/server/src/tools/shell.ts28
1 files changed, 14 insertions, 14 deletions
diff --git a/packages/server/src/tools/shell.ts b/packages/server/src/tools/shell.ts
index f3887ab8..1a5516ec 100644
--- a/packages/server/src/tools/shell.ts
+++ b/packages/server/src/tools/shell.ts
@@ -24,7 +24,6 @@ export interface ShellToolParams {
import { spawn } from 'child_process';
export class ShellTool extends BaseTool<ShellToolParams, ToolResult> {
- // name should match TerminalTool.Name used in prompts.ts for now
static Name: string = 'execute_bash_command';
private readonly config: Config;
private whitelist: Set<string> = new Set();
@@ -193,18 +192,19 @@ export class ShellTool extends BaseTool<ShellToolParams, ToolResult> {
// wait for the shell to exit
await new Promise((resolve) => shell.on('close', resolve));
- return {
- llmContent: [
- `Command: ${params.command}`,
- `Directory: ${params.directory || '(root)'}`,
- `Stdout: ${stdout || '(empty)'}`,
- `Stderr: ${stderr || '(empty)'}`,
- `Error: ${error ?? '(none)'}`,
- `Exit Code: ${code ?? '(none)'}`,
- `Signal: ${signal ?? '(none)'}`,
- `Background PIDs: ${backgroundPIDs.length ? backgroundPIDs.join(', ') : '(none)'}`,
- ].join('\n'),
- returnDisplay: output,
- };
+ const llmContent = [
+ `Command: ${params.command}`,
+ `Directory: ${params.directory || '(root)'}`,
+ `Stdout: ${stdout || '(empty)'}`,
+ `Stderr: ${stderr || '(empty)'}`,
+ `Error: ${error ?? '(none)'}`,
+ `Exit Code: ${code ?? '(none)'}`,
+ `Signal: ${signal ?? '(none)'}`,
+ `Background PIDs: ${backgroundPIDs.length ? backgroundPIDs.join(', ') : '(none)'}`,
+ ].join('\n');
+
+ const returnDisplay = this.config.getDebugMode() ? llmContent : output;
+
+ return { llmContent, returnDisplay };
}
}