Improvements
- A failed upstream no longer reaches your agent when another one can answer. A model a provider says it doesn't serve (Copilot's "not accessible via the /chat/completions endpoint", "model does not exist" and the like) now fails over to the next provider or key in the group. Before, that error went straight back to the agent.
- Errors at the start of a stream fail over too. An error that arrives before any content, such as Anthropic's overloaded error after
message_start, a Chat error chunk or Responses'response.failed, is held back and handled like an error status. An error after content has started still reaches the agent as it came. - The last provider left, or the only one, is tried again. After a failure that may pass on its own (408, 5xx, 529, or a 429 with Retry-After), it is retried twice: after 1 second, then after 2 seconds, or as long as Retry-After says.
- The Routing view explains each of these: failed over, tried again after a wait, or canceled.
Bug Fixes
- An agent that cancels a request (Esc mid-reply) is no longer counted as the provider failing. Nobody is sent to rest and nobody else is asked.
- A provider or key that answers a request now stops showing as resting.
Install
Download from usemagpie.ai, or curl -fsSL https://usemagpie.ai/install.sh | sh. An installed magpie updates itself.
- macOS (Apple Silicon):
magpie-darwin-arm64.dmg - macOS (Intel):
magpie-darwin-amd64.dmg - Windows:
magpie-windows-amd64.exe(ARM:magpie-windows-arm64.exe) - Linux:
magpie-linux-amd64/magpie-linux-arm64(needs GTK 3 and WebKitGTK 4.1) - Terminal only:
magpie-cli-<os>-<arch>