spencrmartin
487f5cd243
feat(developer): Add background process support for shell tool
...
GOOSE-2, GOOSE-3, GOOSE-4: Backend infrastructure for background processes
## What's New
### Shell Tool Enhancement (GOOSE-3)
- Added `background: Option<bool>` parameter to ShellParams
- When `background: true`, command spawns and returns immediately with process ID
- Agent loop can continue processing new messages while process runs
### Background Process Tracking (GOOSE-2)
- New `BackgroundProcess` struct with id, command, pid, status, output buffer
- `BackgroundProcessStatus` enum: Running, Completed, Failed, Cancelled
- Ring buffer (1000 lines) captures stdout/stderr for later retrieval
- Real-time output streaming via notify_logging_message
### Process Management Tools (GOOSE-4)
- `list_background_processes`: Shows all tracked processes with status/runtime
- `get_background_process_output`: Retrieves last N lines from output buffer
- `stop_background_process`: Sends SIGTERM to terminate running process
## Why This Matters
This solves the core UX issue where long-running commands (npm run dev, etc.)
block the chat. Now Goose can:
1. Start a dev server with `background: true`
2. Return immediately with process ID
3. Continue processing new user messages
4. User can check/stop the process later
## Files Changed
- crates/goose-mcp/Cargo.toml (added uuid dependency)
- crates/goose-mcp/src/developer/rmcp_developer.rs (main implementation)
## Testing
All 182 existing tests pass. Background process functionality ready for
integration testing with the desktop app.
2026-02-02 11:40:19 -05:00
spencrmartin
125d37c588
feat: Enable concurrent chat during Streaming/Thinking states
...
- Add isActiveToolState check for Streaming and Thinking states
- Allow direct message submission when Goose is actively working
- Backend handles message queuing - user can chat while Goose works
- Add debug logging to track chat state during submission
- Interruption keywords still trigger stop and queue the message
This enables users to send messages even when:
- Goose is streaming a response
- Goose is thinking/processing
- A tool call is running (including backgrounded commands with &)
The key insight: we don't need to detect specific 'run' commands.
Any message sent during active states goes directly to the backend,
which already has message queuing capabilities.
2026-02-02 11:08:08 -05:00
Rabi Mishra
e989031b18
fix(google): handle thoughtSignature differently for Gemini 2.5 vs 3 ( #6890 )
...
Signed-off-by: rabi <ramishra@redhat.com >
2026-02-02 09:57:53 -05:00
jh-block
ce95e04693
feat: WebSocket transport for goose-acp ( #6895 )
2026-02-02 14:10:26 +00:00
Douwe Osinga
2661454426
Rejig dictation ( #6844 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-02-02 13:25:23 +00:00
Lifei Zhou
dd15fd0dd8
refactor: clean up client side code for creating schedule ( #6805 )
2026-02-02 08:52:09 +00:00
Lifei Zhou
8c7bb43f90
fix: fixed the broken release ( #6887 )
2026-02-02 15:08:43 +11:00
Alex Hancock
69af713ee6
feat: Streamable HTTP transport for ACP + goose-acp usage ( #6741 )
2026-02-02 07:13:40 +08:00
Sam Komesarook
665ecbcdcb
Add Laminar for Observability ( #6514 )
...
Signed-off-by: sam <sam@aecomposite.co >
2026-02-01 11:02:16 -05:00
Trae Robrock
f76a3594dd
Missed a couple of places that hard code J for the newline key ( #6853 )
...
Signed-off-by: Trae Robrock <trobrock@gmail.com >
2026-01-30 15:46:06 -08:00
Robert Mcgregor
9f586cb161
fix(ui): preserve working directory when creating new chat ( #6789 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-30 15:00:42 -08:00
Rizel Scarlett
6f9eaddb66
blog: add 5 tips for building MCP Apps that work ( #6855 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-30 17:50:56 -05:00
dianed-square
3d4a20f5c1
docs: session isolation ( #6846 )
2026-01-30 11:44:18 -08:00
Zane
21b0178884
upgrade react and electron to latest ( #6845 )
2026-01-30 11:03:05 -08:00
dorien-koelemeijer
a3be331fe6
Fix: Small update UI settings prompt injection ( #6830 )
2026-01-30 12:57:55 +07:00
Douwe Osinga
2c16e34158
Remove autogenerated .gooseignore files that don't belong in repo ( #6824 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-01-29 20:10:57 -05:00
Douwe Osinga
4d100d59a3
Fix case-insensitive matching for builtin extension names ( #6825 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-01-29 19:54:58 -05:00
dianed-square
22e10b14bf
docs: cli newline keybinding ( #6823 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-01-29 16:40:51 -08:00
Alex Hancock
0e7f4c7211
Update version to 1.22.0 ( #6821 )
2026-01-29 19:04:39 -05:00
Zane
a06436461b
Refactor: move persisting extension to session outside of route ( #6685 )
2026-01-29 16:03:03 -08:00
Adrian Cole
b0c6373cf8
acp: load configured extensions and refactor tests ( #6803 )
...
Signed-off-by: Adrian Cole <adrian@tetrate.io >
2026-01-30 10:39:03 +11:00
dianed-square
70f7bd7cc1
docs: usage data collection ( #6822 )
2026-01-29 15:00:33 -08:00
Alex Hancock
edd0109997
feat: platform extension migrator + code mode rename ( #6611 )
2026-01-29 17:12:51 -05:00
Angie Jones
fb4ac05016
feat: CLI flag to skip loading profile extensions ( #6780 )
2026-01-29 14:48:59 -05:00
David Katz
e2a18c932a
Swap canonical model from openrouter to models.dev ( #6625 )
2026-01-29 13:40:52 -05:00
Douwe Osinga
35de0a21db
Hook thinking status ( #6815 )
...
Signed-off-by: Trae Robrock <trobrock@gmail.com >
Co-authored-by: Trae Robrock <trobrock@gmail.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-01-29 12:57:21 -05:00
Ebony Louis
a8f1980747
Fetch new skills hourly ( #6814 )
2026-01-29 12:21:47 -05:00
dianed-square
98e5ffaab7
copilot instructions: Update "No prerelease docs" instruction ( #6795 )
2026-01-29 08:36:41 -08:00
Rabi Mishra
0a5581723c
refactor: centralize audience filtering before providers receive messages ( #6728 )
...
Signed-off-by: rabi <ramishra@redhat.com >
2026-01-29 11:34:27 -05:00
Lifei Zhou
e89b7d8159
update doc to remind contributors to activate hermit and document minimal npm and node version ( #6727 )
2026-01-29 11:32:19 -05:00
Michael Neale
542c6cb0fd
nit: don't spit out compaction when in term mode as it fills up the screen ( #6799 )
2026-01-29 11:14:53 -05:00
Yelsin Sepulveda
58a1353bb0
fix: correct tool support detection in Tetrate provider model fetching ( #6808 )
...
Signed-off-by: Yelsin Sepulveda <yelsinsepulveda@gmail.com >
2026-01-29 11:11:46 -05:00
Douwe Osinga
ec789475d9
Session manager fixes ( #6809 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-01-29 11:09:10 -05:00
Abhijay Jain
5bffc1c8ef
fix(desktop): handle quoted paths with spaces in extension commands ( #6430 )
...
Signed-off-by: Abhijay007 <Abhijay007j@gmail.com >
2026-01-29 11:06:08 -05:00
Michael Neale
4156907209
fix: we can default gooseignore without writing it out ( #6802 )
2026-01-29 10:47:09 -05:00
Ebony Louis
dcec929116
fix broken link ( #6810 )
2026-01-29 09:34:42 -05:00
Rizel Scarlett
5323c54ff0
docs: add Beads MCP extension tutorial ( #6792 )
2026-01-29 08:38:30 -05:00
Andre Silva
5290f61a24
feat(goose): add support for AWS_BEARER_TOKEN_BEDROCK environment variable ( #6739 )
...
Signed-off-by: Andre Silva <andreswebs@pm.me >
2026-01-29 18:12:09 +11:00
Ebony Louis
4d49fd5423
[docs] Add OSS Skills Marketplace ( #6752 )
2026-01-28 22:46:18 -05:00
Michael Neale
7ea38402a3
feat: make skills available in codemode ( #6763 )
2026-01-29 14:26:54 +11:00
Zane
c8b02e0cc6
Fix: Recipe Extensions Not Loading in Desktop ( #6777 )
2026-01-28 18:39:13 -08:00
dorien-koelemeijer
66e4a1a43c
Different approach to determining final confidence level of prompt injection evaluation outcomes ( #6729 )
2026-01-29 07:41:54 +07:00
Lifei Zhou
d5bac142f7
fix: read_resource_tool deadlock causing test_compaction to hang ( #6737 )
2026-01-29 11:09:55 +11:00
Douwe Osinga
87737f81a4
Upgrade error handling ( #6747 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-01-28 15:50:29 -05:00
Douwe Osinga
2bc368948b
Fix/filter audience 6703 local ( #6773 )
...
Signed-off-by: rabi <ramishra@redhat.com >
Co-authored-by: rabi <ramishra@redhat.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-01-28 15:49:52 -05:00
Alex Hancock
14b3cd00e7
chore: re-sync package-lock.json ( #6783 )
2026-01-28 15:00:03 -05:00
Zane
92eac15030
upgrade electron to 39.3.0 ( #6779 )
2026-01-28 10:41:16 -08:00
Jack Amadeo
a398a77682
allow skipping providers in test_providers.sh ( #6778 )
2026-01-28 13:30:26 -05:00
Rabi Mishra
57b6133a30
fix: enable custom model entry for OpenRouter provider ( #6761 )
...
Signed-off-by: rabi <ramishra@redhat.com >
2026-01-28 13:19:03 -05:00
Douwe Osinga
87417bccac
Remove codex skills flag support ( #6775 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-01-28 13:10:55 -05:00