Skip to content

v0.185.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 01:33
· 160 commits to main since this release
d5659d3

Upgrading from v0.184.1

  • run_command now runs project code with a scrubbed environment (security, #3801). Commands the agent runs inside a managed project no longer inherit the agent's identity (A2A_AUTH_TOKEN, AGENT_NAME), its instance (PROTOAGENT_*), or credential-shaped variables (*_API_KEY, *_TOKEN, *_SECRET, *_PASSWORD, …). If a project's own tooling needs one of these, for example GH_TOKEN for gh, add its name under Settings ▸ Filesystem ▸ Env vars passed to commands (filesystem.run_command_env_passthrough).
  • Streaming model calls now honor model.request_timeout (#3699). The timeout applies to the first token and to every gap between chunks, including anthropic-oauth. A stream that used to hang now fails with a clear timeout, so raise the value if your gateway is legitimately slow to its first token.
  • The model in-flight limiter ships off. model.max_inflight defaults to 0, so nothing changes until you enable it.

Highlights

Model in-flight limiter (ADR 0115, #3760)

Each process can now cap concurrent model calls per gateway lane (endpoint + model). Calls over the cap wait in a queue instead of all timing out and retrying together, which was the #209 failure where review panels, finders and coders saturated one lane.

  • Waiting in the queue doesn't count toward request_timeout. The queue has its own bound, model.inflight_queue_timeout, and a queue timeout is never retried.
  • Priority classes: operator chat is interactive, workflow fan-outs and review finders are bulk, everything else is default. Waiters age upward over time, and model.inflight_interactive_reserve keeps a slot free for your chat.
  • Lane metrics: in-flight, queue depth, wait p50/p90 and queue timeouts, from GET /api/telemetry/llm-lanes and sdk.llm_lanes().
  • Guide: Operate the model in-flight limiter. Design: ADR 0115.

Langfuse tracing: complete traces for chat and coders (#3693, #3705, #3710, #3713, #3725, #3743)

  • Every chat, @delegate, slash command, HITL park, error and /v1 call now records its output on the trace, not just its input.
  • Board-dispatched coder runs get a session, the agent tag and input. Their tool spans show real arguments and durations, and a timeout or cancel says why it failed. A restart no longer leaves nameless orphan traces.
  • Claude Code coders trace every model call natively (claude_code.* spans nested under acp:, with usage and cost), through a local relay that strips identity attributes. Set PROTOAGENT_ACP_NATIVE_TRACING=0 to opt out.

Coder timeouts survive sleep (#3757)

An ACP coder's timeout now counts time the machine spends asleep. An 1800s bound no longer holds a board coder for hours on a Mac that dozes, and the run fails promptly after wake.

Console moves onto the design system (#3682–#3688, #3774)

This is the design-system adoption pass, about 60 changes:

  • @protolabsai/ui ^0.63 / @protolabsai/design ^0.10.1;
  • the DS type scale and spacing tokens across every stylesheet;
  • DS Dialog padding, Tabs attached, Count, Button, Drawer, the Menu scroll cap, and DS form controls;
  • no hex fallbacks or legacy --brand-* aliases left;
  • shadcn/Tailwind removed.

Guard tests now fail the build on off-scale font sizes and stale token fallbacks. The theme follows your chosen family everywhere, including chat accents, memory, workflows and the crash screen.

Also new

  • onboard_project(refresh=true) fetches and fast-forwards an already-cloned project (fast-forward only; refuses on local changes or commits) (#3733).
  • execute_code spills long output to a file instead of dropping it, and adds extra_tools (#3701). Calls from threads no longer cross responses (#3681).
  • Delegates: deleting or renaming a delegate that config still names is refused with every reference listed, or repointed in one save (#3692).
  • Background A2A delegations no longer lose a finished peer's reply (#3700).
  • browser_eval sends scripts over stdin (#3689).

Fixes

  • Artifact and Notes plugins: their stores now honor the box root, and legacy data migrates safely: it rolls back on a failed move and runs under a lock (#3644).
  • Chat shortcuts: chat-scoped keyboard shortcuts fire whenever the chat panel is active (#3677).
  • Code pane: it no longer drags you back to the bottom (#3679).
  • Desktop launcher: a solid surface, and 2px accent focus rings (#3687).

Companion plugin releases

  • projectBoard-plugin v0.61.7
  • github-plugin v0.9.0 (review-thread tools)
  • design-system-plugin v0.10.1
  • @protolabsai/ui 0.65.0

Update plugins from Settings ▸ Plugins.

Full list: CHANGELOG.md.