Michael Neale
656dd73d8d
Merge remote-tracking branch 'origin/main' into micn/testing-thinking-fixes
...
* origin/main:
add encrypted Nostr session sharing (#8922 )
feat(i18n): add Simplified Chinese (zh-CN) translation (#8765 )
fix(ui): preserve user-set session name for recipe-based chats (#9079 )
fix(oidc-proxy): enforce exp independently of MAX_TOKEN_AGE_SECONDS (#8832 ) (#8839 )
add nushell terminal and completion support (#8628 )
feat(CLI): Add optional --parameters to scheduled recipe (#8741 )
fix(a11y): improve inline code contrast in light theme (#9058 )
github_copilot /responses API (#9043 )
AAIF, not LF (#9176 )
fix: omit max_tokens for OpenAI-compatible requests when unset (#9123 )
fix(desktop/ui): Set correct mcp-app host capabilities (#9116 )
chore(deps): bump pnpm/action-setup from 4.0.0 to 6.0.5 (#9109 )
docs: fix internal documentation anchors (#9094 )
polish sidebar and context panel (#9059 )
polish inline code snippet styling (#9011 )
chore(deps): bump rustyline from 15.0.0 to 18.0.0 (#8961 )
chore(deps): bump docker/login-action from 3.6.0 to 4.1.0 (#9108 )
refresh onboarding when provider catalog loads (#9051 )
feat(acp): add GOOSE_DISABLE_TOOL_CALL_SUMMARY to opt out of per-tool-call summaries (#8947 )
2026-05-13 14:01:40 +10:00
callebtc
dbbee1cdbf
add encrypted Nostr session sharing ( #8922 )
...
Signed-off-by: callebtc <93376500+callebtc@users.noreply.github.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Signed-off-by: Michael Neale <michael.neale@gmail.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Michael Neale <michael.neale@gmail.com >
2026-05-13 03:06:44 +00:00
Can H. Tartanoglu
80cac3626f
add nushell terminal and completion support ( #8628 )
...
Signed-off-by: Can H. Tartanoglu <gpg@rotas.mozmail.com >
2026-05-12 23:39:28 +00:00
Spike Wang
ba60b597fa
feat(CLI): Add optional --parameters to scheduled recipe ( #8741 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 23:30:38 +00:00
Dan Good
06d414196c
github_copilot /responses API ( #9043 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 23:22:36 +00:00
Sarthak Bhardwaj
b23b95c0bd
fix: omit max_tokens for OpenAI-compatible requests when unset ( #9123 )
2026-05-12 22:30:27 +00:00
dependabot[bot]
651a2022fc
chore(deps): bump rustyline from 15.0.0 to 18.0.0 ( #8961 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 18:21:44 -04:00
Erik Nilsen
72efd50069
fix(goose): never append unsigned thinking deltas to a signed block
...
The previous coalesce guard merged a new delta whenever either side
had an empty signature. In signature-at-end streams (e.g. Anthropic's
content_block deltas, where the closing chunk carries `signature`),
the first text of the *next* thinking block arrives unsigned and was
appended to the previous block's already-signed content. Replay would
then send that body under the wrong signature and fail provider-side
validation of per-block signatures.
Tighten the predicate to require that either `last` is unsigned (still
mid-block) or the signatures match. An unsigned delta following a
signed block falls through to the default arm and lands as a new
`MessageContent::Thinking` item. The previous
`adopts_latest_signature` test is replaced with two narrower tests:
`adopts_signature_on_closing_delta` (unsigned → signed merges into
the closing delta) and `unsigned_thinking_after_signed_starts_new_block`
(the signature-at-end case Codex flagged).
Addresses Codex P1 on #9162 (conversation/mod.rs:63).
Signed-off-by: Erik Nilsen <enilsen16@live.com >
2026-05-12 13:47:16 -07:00
Erik Nilsen
09bda69645
fix(goose): keep distinct signed thinking blocks separate
...
The previous coalesce rule merged any two consecutive `Thinking`
deltas that shared a message id, overwriting the earlier signature
with the latest non-empty one. Anthropic streaming can emit multiple
signed thinking blocks per assistant turn (each with its own
signature), so the old rule produced a single thinking item whose
text mixes both blocks under only the last signature — providers
that validate per-block signatures on replay would reject the turn.
Tighten the merge guard so coalesce only runs when the signatures
are compatible (either side empty, or both equal). Distinct non-empty
signatures fall through to the default arm and land as separate
`MessageContent::Thinking` items. New test
`test_push_keeps_distinct_signed_thinking_blocks_separate` locks the
behavior; existing delta-coalesce and adopt-latest-signature tests
still pass.
Addresses Codex P1 on #9162 (conversation/mod.rs:64).
Signed-off-by: Erik Nilsen <enilsen16@live.com >
2026-05-12 13:43:20 -07:00
Erik Nilsen
c3e25bbca6
chore(conversation): drop WHAT-narrating test comment
...
Signed-off-by: Erik Nilsen <enilsen16@live.com >
2026-05-12 13:43:20 -07:00
Erik Nilsen
570441b09f
style(goose): cargo fmt
...
Apply rustfmt to lines added in this PR's tests.
Signed-off-by: Erik Nilsen <enilsen16@live.com >
2026-05-12 13:43:20 -07:00
Erik Nilsen
a0a3512ead
fix(goose): coalesce streaming Thinking deltas + list available tools on not-found
...
Conversation::push now coalesces consecutive same-id Thinking blocks
the way it already coalesces Text. The OpenAI/OpenRouter streaming
format yielded one Message per reasoning delta with a shared chunk.id;
without coalescing they piled into one DB row (observed: 2,295 blocks
× 11 chars each). Anthropic format is unaffected (it already emits
one Thinking message per content_block_stop).
Also enriches the -32002 "Tool not found" error in resolve_tool with
the current available-tools list (LangChain/LangGraph pattern). Helps
the LLM self-correct after hallucinating a tool name.
Includes a follow-up perf fix that skips the signature.clone() when
the new thinking-block signature matches the existing one — for the
2,295-delta case this drops from 2,294 redundant clones to 1.
Signed-off-by: Erik Nilsen <enilsen16@live.com >
2026-05-12 13:43:20 -07:00
Ondrej Cervinka
9ff0825b1d
feat(acp): add GOOSE_DISABLE_TOOL_CALL_SUMMARY to opt out of per-tool-call summaries ( #8947 )
...
Signed-off-by: ocervinka <cervinka@gmail.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 20:32:31 +00:00
natelastname
69f591322b
Added recipe discovery / execution to ACP server. ( #8925 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 20:32:05 +00:00
Daniel Nicoletti
a23bbf24b5
fix: normalize nullable schemas for Vertex Gemini compatibility ( #8930 )
...
Signed-off-by: Daniel Nicoletti <dantti12@gmail.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 20:25:08 +00:00
zuyua9
314f145779
fix: isolate GitHub recipe temp paths ( #8878 )
2026-05-12 19:11:55 +00:00
Chris Cooper
fd9585c089
fix(providers): set X-Initiator header on GitHub Copilot requests ( #8809 )
...
Signed-off-by: itscooper <chris.cooper@owasp.org >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 19:08:34 +00:00
Mihir Gupta
15bfe4f5d5
fix(providers): honor dynamic_models: false in declarative provider configs ( #8795 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 19:07:36 +00:00
g.sunilkumar
f2df168bec
Fix frontend extension session state and tool routes ( #8464 )
...
Signed-off-by: sunilkumarvalmiki <g.sunilkumarvalmiki@gmail.com >
Signed-off-by: jh-block <jhugo@block.xyz >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Signed-off-by: Michael Neale <michael.neale@gmail.com >
Signed-off-by: Angie Jones <jones.angie@gmail.com >
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com >
Signed-off-by: Adam Miller <admiller@redhat.com >
Signed-off-by: morgmart <98432065+morgmart@users.noreply.github.com >
Signed-off-by: Andrew Harvard <aharvard@squareup.com >
Signed-off-by: Matt Toohey <contact@matttoohey.com >
Signed-off-by: Wes <wesb@block.xyz >
Signed-off-by: Clay Delk <clay.delk@gmail.com >
Signed-off-by: Kalvin Chau <kalvin@block.xyz >
Signed-off-by: Taylor Ho <taylorkmho@gmail.com >
Signed-off-by: Alex Hancock <alexhancock@block.xyz >
Signed-off-by: Treebird <treebird@treebird.dev >
Signed-off-by: tulsi <tulsi@block.xyz >
Signed-off-by: vonbai <nswanqi@gmail.com >
Signed-off-by: olaservo <olahungerford@gmail.com >
Signed-off-by: Abhijay Jain <Abhijay007j@gmail.com >
Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com >
Signed-off-by: fresh3nough <anonwurcod@proton.me >
Signed-off-by: Jheison Martinez Bolivar <jheison.mb@gmail.com >
Co-authored-by: Matt Toohey <contact@matttoohey.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: Lifei Zhou <lifei@squareup.com >
Co-authored-by: jh-block <jhugo@block.xyz >
Co-authored-by: Alex Hancock <alexhancock@block.xyz >
Co-authored-by: Jack Amadeo <jackamadeo@block.xyz >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Michael Neale <michael.neale@gmail.com >
Co-authored-by: Angie Jones <jones.angie@gmail.com >
Co-authored-by: SomeSolutionsArchitect <139817767+SomeSolutionsArchitect@users.noreply.github.com >
Co-authored-by: Christian <chvargas@wfscorp.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com >
Co-authored-by: Adam Miller <admiller@redhat.com >
Co-authored-by: Jack Amadeo <jackamadeo@squareup.com >
Co-authored-by: morgmart <98432065+morgmart@users.noreply.github.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrew Harvard <aharvard@squareup.com >
Co-authored-by: Kalvin C <kalvinnchau@users.noreply.github.com >
Co-authored-by: Adewale Abati <acekyd01@gmail.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Kalvin Chau <kalvin@block.xyz >
Co-authored-by: Clay Delk <clay.delk@gmail.com >
Co-authored-by: dorien-koelemeijer <62866702+dorien-koelemeijer@users.noreply.github.com >
Co-authored-by: Wes <wesbillman@users.noreply.github.com >
Co-authored-by: Monroe Williams <monroe@pobox.com >
Co-authored-by: Spike Wang <spike@spikewang.me >
Co-authored-by: Taylor Ho <taylorkmho@gmail.com >
Co-authored-by: Treebird <treebird@treebird.dev >
Co-authored-by: Sarthak Bhardwaj <100398847+SarthakB11@users.noreply.github.com >
Co-authored-by: Douwe Osinga <douwe@block.xyz >
Co-authored-by: tulsi <tulsi@block.xyz >
Co-authored-by: Vonbai <107612985+vonbai@users.noreply.github.com >
Co-authored-by: Ola Hungerford <olahungerford@gmail.com >
Co-authored-by: Lucas Kim <45152028+Raptors65@users.noreply.github.com >
Co-authored-by: Abhijay Jain <abhijay007j@gmail.com >
Co-authored-by: Rodolfo Olivieri <rolivier@redhat.com >
Co-authored-by: fre$h <anonwurcod@proton.me >
Co-authored-by: Jheison Martinez Bolivar <78370841+JheisonMB@users.noreply.github.com >
2026-05-12 19:04:26 +00:00
carl-auctane
f8efbc4ac5
fix(bedrock): cache trailing message for stable prefix across agent turns ( #8916 )
...
Signed-off-by: Carl Youngblood <carl.youngblood@auctane.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 18:51:07 +00:00
Bright Zheng
208fea5301
fix(provider_registry): case-insensitive model name lookup for context_limit ( #8906 )
...
Signed-off-by: Bright Zheng <bzqzheng@gmail.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 18:50:45 +00:00
Naman Vats
8905482318
fix(cli): emit cumulative token usage in stream-json/json complete event ( #8870 )
...
all done
2026-05-12 14:49:44 -04:00
Rodolfo Olivieri
1dc2749430
fix: return 400 instead of panicking on invalid CSP header value ( #8810 )
...
Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com >
2026-05-12 18:16:48 +00:00
Shpat
60abcec993
fix(acp): coalesce streaming chunks under one message id ( #8788 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-12 18:15:22 +00:00
Jack Amadeo
5fdc877c62
Keep thread tables + column ( #9156 )
2026-05-12 16:00:02 +00:00
Alex Hancock
6e57d245d2
feat(providers): add vercel ai gateway ( #9144 )
2026-05-11 20:41:16 -04:00
fre$h
71b9d575a0
fix(bedrock): handle ReasoningContent blocks gracefully ( #8843 )
...
Signed-off-by: fresh3nough <anonwurcod@proton.me >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-11 23:11:08 +00:00
Rodolfo Olivieri
3cb27a6305
chore: introduce DEFAULT_PROVIDER_TIMEOUT_SECS constant for providers ( #8816 )
...
Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com >
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-11 23:02:21 +00:00
Rodolfo Olivieri
826a437d08
chore: replace lazy_static with std::sync::LazyLock ( #8815 )
...
Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com >
2026-05-11 22:47:31 +00:00
github-actions[bot]
831a7f27d3
chore(release): bump version to 1.34.0 (minor) ( #9006 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-11 19:13:45 +00:00
Douwe Osinga
4dd8ef3b88
fix: insert tool pair summaries at chronological position in conversation ( #9087 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-11 18:54:16 +00:00
Jack Amadeo
a38922d95e
Agents crud ( #9084 )
2026-05-11 17:33:32 +00:00
Alex Hancock
40d4b118bb
feat: Hooks ( #9093 )
2026-05-11 16:02:44 +00:00
Treebird
38e6a4a5c4
fix: enable SQLite foreign key enforcement in session pool ( #9121 )
...
Signed-off-by: Treebird <treebird@treebird.dev >
2026-05-11 10:59:00 +00:00
jh-block
df2fe086e4
refactor local inference around backends ( #9137 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-05-11 10:30:21 +00:00
Douwe Osinga
ea5802c380
refactor: remove threads layer, use sessions directly for ACP ( #9078 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-08 20:10:55 +00:00
Lifei Zhou
2db5e58ec7
fix: revert the change for unexpected change from ui/goose2 work ( #9098 )
2026-05-08 09:19:15 +00:00
Jack Amadeo
f5fe8a1e90
install plugins to ~/.agents/plugins ( #9088 )
2026-05-07 20:33:01 +00:00
Ola Hungerford
23b4754643
fix(extension-manager): require extension_name on read_resource ( #8989 )
...
Signed-off-by: olaservo <olahungerford@gmail.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-07 19:51:51 +00:00
Douwe Osinga
ff42171903
feat: projects as backend sources with system prompt injection ( #8739 )
...
Signed-off-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Douwe Osinga <douwe@squareup.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-07 14:30:15 +00:00
Jack Amadeo
64f795f82c
add (auto) updating for plugins ( #9061 )
2026-05-07 13:28:53 +00:00
jh-block
f325a9d8e3
Add Linux Vulkan support for local inference ( #9038 )
...
Signed-off-by: jh-block <jhugo@block.xyz >
2026-05-07 07:12:18 +00:00
Vonbai
f98eef61f7
fix(recipe): read prompted file parameters ( #8504 )
...
Signed-off-by: vonbai <nswanqi@gmail.com >
Co-authored-by: Lifei Zhou <lifei@squareup.com >
2026-05-07 03:44:53 +00:00
Alex Hancock
bd5f6ca3b8
refactor: switch to official new rust-sdk for ACP ( #9062 )
2026-05-06 19:48:52 +00:00
Kalvin C
4ef091a356
feat(acp): expose built-in skills through sources list acp calls ( #9045 )
...
Signed-off-by: Kalvin Chau <kalvin@block.xyz >
2026-05-06 14:49:03 +00:00
tulsi
6fc44bf0ed
add provider-first onboarding ( #9039 )
...
Signed-off-by: tulsi <tulsi@block.xyz >
2026-05-06 14:08:31 +00:00
Alex Hancock
f9d0c6416d
feat: ACP streamable http spec compliance ( #9034 )
2026-05-06 13:47:50 +00:00
Douwe Osinga
8f35a4db7c
Skip automatic fix which crashes ( #9036 )
...
Co-authored-by: Douwe Osinga <douwe@squareup.com >
2026-05-06 13:14:17 +00:00
Sarthak Bhardwaj
b1ab21664c
fix(openai): accept null tool_call arguments in streaming chunks ( #9035 )
2026-05-06 09:18:50 +00:00
Kalvin C
b17fd4f287
feat: move goose2 provider catalog behind ACP layer ( #9030 )
...
Signed-off-by: Kalvin Chau <kalvin@block.xyz >
Signed-off-by: Matt Toohey <contact@matttoohey.com >
Co-authored-by: Matt Toohey <contact@matttoohey.com >
2026-05-06 01:36:19 +00:00