-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Closed
Description
Running 'goose acp' (v1.11, v.1.11.1 and v.1.12.0) working w/ litellm backend (v1.78.7) produces a panic and a backtrace. Using the openrouter backend seems to work fine.
I've included the traffic log from a session between the acp client (i.e., agent-shell) and goose, followed by the resulting backtrace (see below).
Note: Please check the common issues on https://block.github.io/goose/docs/troubleshooting before filing a report
A clear and concise description of what the bug is.
To Reproduce
- configure goose to use a local litellm server
- call it (goose acp) from an acp client
- start a session w/ pretty much any query
- panic
Expected behavior
I expected no panic
Screenshots
If applicable, add screenshots to help explain your problem.
Please provide following information:
- OS & Arch: Fedora 42 Workstation ed.
- Interface: CLI
- Version: v.1.11.{0,1}, v1.12.0
- Extensions enabled: -
- Provider & Model: through litellm: openrouter/nvidia/nemotron-nano-9b-v2:free
Additional context
OUTGOING OBJECT >
((jsonrpc . 2.0) (method . initialize) (id . 1) (params (protocolVersion . 1) (clientCapabilities (fs (readTextFile . t) (writeTextFile . t)))))
OUTGOING TEXT >
{"jsonrpc":"2.0","method":"initialize","id":1,"params":{"protocolVersion":1,"clientCapabilities":{"fs":{"readTextFile":true,"writeTextFile":true}}}}
STDERR >
Goose ACP agent started. Listening on stdio...
INCOMING TEXT >
{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":1,"agentCapabilities":{"loadSession":false,"promptCapabilities":{"image":true,"audio":false,"embeddedContext":true},"mcpCapabilities":{"http":false,"sse":false}},"authMethods":[]}}
INCOMING LINE >
{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":1,"agentCapabilities":{"loadSession":false,"promptCapabilities":{"image":true,"audio":false,"embeddedContext":true},"mcpCapabilities":{"http":false,"sse":false}},"authMethods":[]}}
↳ Routing as response (result)
OUTGOING OBJECT >
((jsonrpc . 2.0) (method . session/new) (id . 2) (params (cwd . /home/dwa/) (mcpServers . [])))
OUTGOING TEXT >
{"jsonrpc":"2.0","method":"session/new","id":2,"params":{"cwd":"/home/dwa/","mcpServers":[]}}
INCOMING TEXT >
{"jsonrpc":"2.0","id":2,"result":{"sessionId":"c18399ab-d386-4fb6-9156-a8fefe97ebe9"}}
INCOMING LINE >
{"jsonrpc":"2.0","id":2,"result":{"sessionId":"c18399ab-d386-4fb6-9156-a8fefe97ebe9"}}
↳ Routing as response (result)
OUTGOING OBJECT >
((jsonrpc . 2.0) (method . session/prompt) (id . 3) (params (sessionId . c18399ab-d386-4fb6-9156-a8fefe97ebe9) (prompt . [((type . text) (text . hello))])))
OUTGOING TEXT >
{"jsonrpc":"2.0","method":"session/prompt","id":3,"params":{"sessionId":"c18399ab-d386-4fb6-9156-a8fefe97ebe9","prompt":[{"type":"text","text":"hello"}]}}
STDERR >
thread 'main' panicked at crates/goose/src/providers/litellm.rs:201:29:
can call blocking only when running on the multi-threaded runtime
stack backtrace:
STDERR >
0: 0x55a61c35444b - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h68841b5a1fd89ea2
1: 0x55a61c3c353f - core::fmt::write::h894f480f5a0c6265
2: 0x55a61c391f8f - std::io::Write::write_fmt::hca774916e69622a4
STDERR >
3: 0x55a61c354283 - std::sys::backtrace::BacktraceLock::print::h28dbd75cb318cc92
4: 0x55a61c35a3b8 - std::panicking::default_hook::{{closure}}::he9945b2d442a43ca
5: 0x55a61c35a298 - std::panicking::default_hook::hf70f9c5b0029bb32
6: 0x55a61c35a961 - std::panicking::rust_panic_with_hook::h7c1fae20a3e7b1eb
7: 0x55a61c35484a - std::panicking::begin_panic_handler::{{closure}}::h2a2d6aa6a3cc9cd3
8: 0x55a61c354669 - std::sys::backtrace::__rust_end_short_backtrace::h6fad435f27143cce
9: 0x55a61c35a465 - __rustc[7d5e88824d81f3b9]::rust_begin_unwind
10: 0x55a618b42740 - core::panicking::panic_fmt::h11da3c120fadd518
11: 0x55a618ad4521 - tokio::runtime::scheduler::multi_thread::worker::block_in_place::panic_cold_display::h8e6357ef2fd199b8
12: 0x55a61a9c8597 - tokio::runtime::scheduler::multi_thread::worker::block_in_place::ha2f5e632cb563f9e
13: 0x55a61acb4682 - <goose::providers::litellm::LiteLLMProvider as goose::providers::base::Provider>::supports_cache_control::ha40105b5ddf5ce97
14: 0x55a61aed1e6a - <tracing::instrument::Instrumented<T> as core::future::future::Future>::poll::h75ffda077936b37f
15: 0x55a61acb6a01 - <goose::providers::litellm::LiteLLMProvider as goose::providers::base::Provider>::complete_with_model::{{closure}}::h7e489eb0d7f87bf1
16: 0x55a6191241f6 - goose::providers::base::Provider::complete::{{closure}}::hc4d39c8831e9024e
17: 0x55a6198429af - goose::agents::agent::Agent::reply_internal::{{closure}}::{{closure}}::h5adb860e70f36931
18: 0x55a61980f3df - <async_stream::async_stream::AsyncStream<T,U> as futures_core::stream::Stream>::poll_next::hd66d3a66188b2fad
19: 0x55a6197ddd9e - <goose_cli::commands::acp::GooseAcpAgent as agent_client_protocol::agent::Agent>::prompt::{{closure}}::h57d66e689d05b136
20: 0x55a6192e7e46 - agent_client_protocol::rpc::RpcConnection<Local,Remote>::handle_incoming::{{closure}}::{{closure}}::h4e12562f7392c602
21: 0x55a618e237e5 - tokio::runtime::task::core::Core<T,S>::poll::h57c5e415ff30b0fe
22: 0x55a618ba47df - tokio::runtime::task::harness::Harness<T,S>::poll::h8411dcab8b75b139
23: 0x55a61c1b36c3 - tokio::task::local::LocalSet::tick::hc2813776ef4307b5
24: 0x55a6192ed46e - std::thread::local::LocalKey<T>::with::h7741d6e76be68127
25:
STDERR >
0x55a618ca3744 - goose_cli::cli::cli::{{closure}}::h2ccc1b29f9b74106
26: 0x55a618cf5dd6 - goose::main::{{closure}}::h355b8fc74269bf84
27: 0x55a618d61987 - tokio::runtime::park::CachedParkThread::block_on::hfda776ea881fa146
28: 0x55a61919455e - tokio::runtime::context::runtime::enter_runtime::ha178829136aee92a
29: 0x55a61933a052 - tokio::runtime::runtime::Runtime::block_on::h44ba6073a1139c44
30: 0x55a61908f29a - goose::main::hccaa86a2097da9e6
31: 0x55a61914faf3 - std::sys::backtrace::__rust_begin_short_backtrace::h99d0ee845ec8ea8a
32: 0x55a6191fef0d - std::rt::lang_start::{{closure}}::ha7caee005f05a2a1
33: 0x55a61c38eab5 - std::rt::lang_start_internal::h6d8043665de548bf
34: 0x55a61908f375 - main
35: 0x7f3828cf1575 - __libc_start_call_main
36: 0x7f3828cf1628 - __libc_start_main_alias_2
37: 0x55a618b456f5 - _start
38: 0x0 - <unknown>
Metadata
Metadata
Assignees
Labels
No labels