expose shell process group id to model, along with instructions for how to terminate or signal the group (#645)
This commit is contained in:
parent
190e6be800
commit
0dbd12e295
|
@ -1,6 +1,7 @@
|
||||||
This tool executes a given shell command as `bash -c <command>`.
|
This tool executes a given shell command as `bash -c <command>`.
|
||||||
Command can start background processes using `&`.
|
Command can start background processes using `&`.
|
||||||
Command itself is executed as a subprocess.
|
Command is executed as a subprocess that leads its own process group.
|
||||||
|
Command process group can be terminated as `kill -- -PGID` or signaled as `kill -s SIGNAL -- -PGID`.
|
||||||
|
|
||||||
The following information is returned:
|
The following information is returned:
|
||||||
|
|
||||||
|
@ -12,3 +13,4 @@ Error: Error or `(none)` if no error was reported for the subprocess.
|
||||||
Exit Code: Exit code or `(none)` if terminated by signal.
|
Exit Code: Exit code or `(none)` if terminated by signal.
|
||||||
Signal: Signal number or `(none)` if no signal was received.
|
Signal: Signal number or `(none)` if no signal was received.
|
||||||
Background PIDs: List of background processes started or `(none)`.
|
Background PIDs: List of background processes started or `(none)`.
|
||||||
|
Process Group PGID: Process group started or `(none)`
|
||||||
|
|
|
@ -282,6 +282,7 @@ export class ShellTool extends BaseTool<ShellToolParams, ToolResult> {
|
||||||
`Exit Code: ${code ?? '(none)'}`,
|
`Exit Code: ${code ?? '(none)'}`,
|
||||||
`Signal: ${processSignal ?? '(none)'}`,
|
`Signal: ${processSignal ?? '(none)'}`,
|
||||||
`Background PIDs: ${backgroundPIDs.length ? backgroundPIDs.join(', ') : '(none)'}`,
|
`Background PIDs: ${backgroundPIDs.length ? backgroundPIDs.join(', ') : '(none)'}`,
|
||||||
|
`Process Group PGID: ${shell.pid ?? '(none)'}`,
|
||||||
].join('\n');
|
].join('\n');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue