Implement background command support for bash tool
- Added `background` option to `bash` tool to allow long-lived commands to run without blocking the turn. - Introduced `bash_status` tool to check the status and output of background commands. - Added `bash_stop` tool to explicitly stop running background commands. - Updated command parsing to handle `/bash` commands for listing, stopping individual, and stopping all background commands. - Enhanced session management to reap stale background commands on agent shutdown. - Updated UI to reflect background command status and allow user interruption via ctrl-c. - Added tests for background command functionality and command parsing. - Documented new features and usage in background-bash.md.
This commit is contained in:
1 parent
deeb138cd9
commit
76043aeb38
12 files changed
+724
-18
No files matched your search
+6
-1
@@ -55,7 +55,12 @@ export function testHooks(over: Partial<AppHooks> = {}): AppHooks {
|
||||
remove: async (name) => `removed ${name}`,
|
||||
},
|
||||
initPrompt: 'write AGENTS.md',
|
||||
scaffoldWorkflow: () => [],
|
||||
scaffoldWorkflow: () => [],
|
||||
backgroundCommands: {
|
||||
list: () => 'no background commands',
|
||||
stop: async (handle) => `stopped ${handle}`,
|
||||
stopAll: async () => 'stopped all',
|
||||
},
|
||||
history: [],
|
||||
recordPrompt: () => {},
|
||||
...over,
|
||||
|
||||
Reference in new issue
Block a user