Repository navigation
v0.24.3
Reliability fixes from a codebase review. No breaking changes, so yoagent = "0.24" users get them with cargo update.
Highlights
- Overloaded providers are retried. HTTP 529/503, and in-stream overloads such as Anthropic's
overloaded_erroror Gemini'sUNAVAILABLE, back off and retry. The server's explanation is logged. - Failed streams are errors, not truncated "finished" answers. This covers OpenAI-compatible mid-stream errors, Gemini streams with no finish reason, blocked prompts, and malformed function calls. Vertex now shares Gemini's parser.
- MCP over stdio is robust:
- responses are matched by id, and
initializedis a real notification; - stderr is drained, and its tail plus the exit status appear when a server dies;
- calls honour cancellation and a timeout;
- unknown content types no longer fail the call.
- responses are matched by id, and
searchkeeps its matches when some files can't be read, and returns the errors as warnings.SubAgentTool::with_execution_limits: the sub-agent token and duration caps are no longer hard-coded.ModelConfig::anthropic("claude-…")infers its thinking mode and native structured outputs from the id.- Onboarding: the
cliexample's API-key handling is fixed, the quick starts and Ollama URL are corrected, and there's a new Testing guide.
Behaviour to note
- A run cancelled while tools run now ends with an
[Agent stopped: cancelled]user message, and a cancelled sub-agent reports failure. max_total_tokenscounts every turn's whole prompt and applies per run. This is now documented; the behaviour is unchanged.
Full notes: CHANGELOG.