On-demand agent secret access — Agents can fetch secrets they have been granted through a run-bound API, instead of relying only on ambient environment injection. A new access.* delivery mode exposes API-only secrets, GET /api/agents/me/secrets lists just the aliases an agent is granted, and POST /api/agents/me/secrets/:key/value returns a value with Cache-Control: no-store. Every value read is written to the security audit trail and the operator activity log.
Local agents on Windows — The embedded agent runtime no longer wraps local agent commands in a generated Bash script, so Claude, Codex, Gemini, and custom adapters now spawn natively on Windows as well as Linux.
Improvements
User-named NEURO_* bindings reach agents — Only NEURO_API_KEY is categorically rejected as an override; harness-assigned runtime vars always win, and every other NEURO_* binding flows through to the run environment.
Slash-named secrets browse as folders — Secrets whose names contain slashes now navigate as nested folders in the UI.
Searchable agent picker for secret access — Granting per-agent secret access now uses a searchable agent picker instead of a long flat list.
Fixes
Archived inbox items stay archived — Items you have archived no longer resurface in the inbox.
Execution-policy final approval finishes cleanly — Approving the final stage of an execution policy now terminates the policy instead of rewinding it back to stage 1.
Redact HTTP cookies from server logs — Cookie headers are now redacted from server logs so session material does not leak into log output.
Upgrade Guide
If you previously set a static NEURO_API_KEY in adapter env to override the run token, that override no longer applies — the harness-minted run token is now the only source of the run API key.
All other NEURO_*-named bindings now flow through to the run environment as expected.