From 22fce70f08748bc8b61e5060db494167bb01cb9b Mon Sep 17 00:00:00 2001 From: Yuanhao Li Date: Wed, 21 Oct 2026 09:09:19 +0200 Subject: [PATCH] release: yoagent 0.25.12, yoagent-rutis 0.8.1 Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01T7iq5hpndSiHQcnAsywKuG --- CHANGELOG.md | 6 ++++-- Cargo.toml | 2 +- integrations/yoagent-rutis/Cargo.toml | 2 +- skills/yoagent/SKILL.md | 10 +++++++++- 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f29ba27..91bf8d8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,11 +4,13 @@ All notable changes to `yoagent` are documented here. The format loosely follows [Keep a Changelog](https://keepachangelog.com/), and the project adheres to [Semantic Versioning](https://semver.org/). -## Unreleased +## 0.25.12 (2026-10-21) + +Additive: one new function. - **`provider::api_key_variables()`**: every environment variable yoagent reads a credential from — each provider's key variables as `resolve_api_key` reads them (Bedrock's `AWS_*` included), the `YOAGENT_API_KEY` / `API_KEY` fallback, and the decision presets' keys (`TYPESAFE_API_KEY`, `CLOUDFLARE_API_TOKEN`, `CLOUDFLARE_AUTH_TOKEN`) — for hosts that blank credentials in processes they start (plugin runtimes, MCP servers). `resolve_api_key` now reads the same per-provider table, so a provider's variables cannot drift from the list (Bedrock's and the decision presets' names are pinned by tests). Additive. Asked for by yobuild. -## yoagent-rutis Unreleased +## yoagent-rutis 0.8.1 (2026-10-21) yoagent-rutis only; requires yoagent 0.25, rutis 0.12 and Rust 1.88, as 0.8.0. Additive. diff --git a/Cargo.toml b/Cargo.toml index ea81ca1..7e3ec50 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "yoagent" -version = "0.25.11" +version = "0.25.12" edition = "2021" # MSRV-aware dependency resolution (cargo 1.84+): prefer dependency versions # whose own rust-version fits ours. Without it CI re-resolves to whatever is diff --git a/integrations/yoagent-rutis/Cargo.toml b/integrations/yoagent-rutis/Cargo.toml index 2efb67c..5a45078 100644 --- a/integrations/yoagent-rutis/Cargo.toml +++ b/integrations/yoagent-rutis/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "yoagent-rutis" -version = "0.8.0" +version = "0.8.1" edition = "2021" resolver = "3" description = "Extend yoagent agents at runtime with rutis plugins, as one yoagent Extension: tools, tool policy, output filters, turn notes, input checks, verifiers and events" diff --git a/skills/yoagent/SKILL.md b/skills/yoagent/SKILL.md index a25e01e..04d0174 100644 --- a/skills/yoagent/SKILL.md +++ b/skills/yoagent/SKILL.md @@ -5,7 +5,7 @@ description: Use when building, extending or upgrading an agent on the yoagent R # yoagent: which feature for which job -Written for **yoagent 0.25.11** (and yoagent-rutis 0.8.0); the recipes +Written for **yoagent 0.25.12** (and yoagent-rutis 0.8.1); the recipes below are compiled by `tests/skill_test.rs`, line for line. Check what you build against: `cargo tree -p yoagent` or `Cargo.lock`. If you are on an older version, read [What changed](#what-changed) first. @@ -198,6 +198,11 @@ and its examples. Newest first; the full list is `CHANGELOG.md`. +- **0.25.12** — `provider::api_key_variables()`: every environment + variable yoagent reads a credential from (providers', Bedrock's `AWS_*`, + the `YOAGENT_API_KEY` / `API_KEY` fallback, the decision presets'). To + keep keys from processes you start (plugin runtimes, MCP servers), set + each to `""` in their environment. - **0.25.11** — `tool_output_max_lines` is one budget per tool result, shared by its text blocks (a many-block MCP result reached the model as blocks × the budget): short blocks stay whole, long ones split the rest, @@ -269,6 +274,9 @@ Newest first; the full list is `CHANGELOG.md`. - **0.24.2** — built-in tool sandbox fixes (path escapes, `search` flag injection, Gemini key out of the URL, tool panics contained). - **0.24.1** — `retry_safe_events`. +- **yoagent-rutis 0.8.1** — `probe::pi_with` / `probe::dsh_with` with + `ProbeOptions::default().env(name, value)`: variables for the probe's + runtime (an empty value blanks one; the DSH probe's own homes win). - **yoagent-rutis 0.8.0** — pi adapter grants a host can ask about: `exec` / `execFor[file] = "gate"` sends each `pi.exec` to the host's `host_approval` (`judge(argv, cwd?)`, then `ask(question, details,