Skip to content

v0.3.0

Choose a tag to compare

@enowdev enowdev released this 01 Aug 04:45
· 244 commits to main since this release
9bd81cb

What's new in v0.3.0

Features

  • Managed background processes. terminal(background=true) now returns a stable process_id immediately, plus a session-scoped process tool with list, poll, log, wait, and kill. Incremental output with absolute offsets and a bounded rolling buffer, explicit lifecycle states, and process-group termination on kill/timeout/Stop/session close. (#9)
  • Background server lifecycle. antares serve now detaches by default and returns once the daemon owns the listener and health is ready. New antares stop (graceful SIGTERM → process-group SIGKILL) and antares status (PID, dashboard URL, version, log path). antares serve --foreground and bare headless antares are preserved for systemd/containers. Stale/reused PID files are rejected via kernel start-time, UID, executable, cmdline, and socket ownership. (#10)
  • Reasoning-effort picker in the composer. Choose the reasoning effort per turn (Default / Off / Low / Medium / High) straight from the chat composer; the request value overrides the configured default.
  • Correct per-model context window. The context gauge and compaction now resolve each model's real budget (e.g. glm-5.2's 1M) instead of a flat 200k default, via a per-model catalogue with a model_meta override.

Fixes

  • Context accounting. Cached prompt tokens are no longer double-counted: providers now expose a normalized context size (OpenAI/Gemini use total prompt tokens; Anthropic adds its separately-reported cache read/write), and tool schemas are included in request-size estimates so compaction fires at the right time. The runaway "3.5M/200k (100%)" gauge is fixed — it now plots the current turn's context, not the run's cumulative input. (#7, #5)
  • Chat renderer hangs on long sessions. Idle /chat/attach polls no longer re-download and re-hydrate the entire transcript every 1.5s, reconnects resume from a real cursor instead of replaying the whole backlog, and text/reasoning deltas are coalesced on both the client and the server. (#8, #5)
  • Terminal hangs on non-POSIX shells. Persistent terminal sessions no longer inherit a $SHELL such as fish that rejects the POSIX completion sentinel. (#7)
  • Sub-agent workspaces. Background sub-agents inherit the parent project workspace (and honor isolated worktrees) instead of falling back to the global workspace. (#7)
  • Tools page crash on ungrouped/MCP tools (toolsets encoded as [] rather than null). (#11)
  • uTLS panic (extension already initialized) under parallel http_request, via httpcloak v1.6.8 (requires Go 1.26).
  • Edit / revert the last user message now works right after a turn without a manual reload.

Notes

  • Building from source now requires Go 1.26.

Thanks to @nvdorman for #7, #8, #9, #10, and #11.