Repository navigation
Releases
Releases · RadiantAILabs/polaris_code
Polaris 0.4.5
Requires polaris-tui 0.3.0 and polaris-ai 0.9.3.
Added
- A
view_imagetool lets the agent look at a PNG, JPEG, GIF or WEBP file in the working directory, in every front end including-p. The model receives the picture; the live conversation, activity block and Session RDF/ABox tool-call record show a short line such as[image shots/a.png, PNG, 34.0 KB]. Saved session history and ATIF exports (--trajectory-path, underextra.image) retain the whole encoded image. The type is read from the file's first bytes, not its name. A file over 3,750,000 bytes, or one that is not one of those four types, is refused with a message that says what to do next. It followsread_file's path rules, changes nothing and asks no one. Pictures are not scanned for secrets, unlike text results. A permission rule names one tool, so a rule that protects an image path needs aview_imagerule as well as aread_filerule. --image-input/POLARIS_CODE_IMAGE_INPUT/image_input(auto,onoroff) says whether the model takes images.auto, the default, is on for Claude models reached through Anthropic or Bedrock and off for every other route, including--provider openaiand--provider openai-chat. When it is off,view_imageis not offered. The choice is made once from the model the session starts on;/modeldoes not change it. For a vision model behind--provider openai-chat, seton: this release usespolaris-ai0.9.3, which sends the image to Chat Completions. Do not setonfor--provider openai, whose Responses API provider still refuses image tool results.- For embedders,
ViewImageToolsPluginregisters the tool, andCodeToolsConfig::with_image_inputsets the wording ofread_file's refusal of an image file.
Changed
read_fileandread_spanon an image file now return an error that names the type and size instead of "stream did not contain valid UTF-8". With image input on it ends with theview_imagecall to make; with it off it says the model takes text only.- Bedrock Claude model ids (
anthropic.claude-…) andclaude-fable-…ids are now recognised as models that take images, for composer attachments as well. - Uses
polaris-ai0.9.3. Its Chat Completions provider no longer fails on an image tool result: thetoolmessage carries a note, and the image follows in a user message after the tool messages, labeled with the call's id.Cargo.locklocks every Polaris crate underpolaris-aiat 0.9.3.polaris-tui,polaris_cosmosandpolaris_ontraceare unchanged at 0.3.0.
Full Changelog: v0.4.4...v0.4.5
Polaris 0.4.4
Requires polaris-tui 0.3.0 and polaris-ai 0.9.1.
Changed
- A
-prun no longer asks the model to go on after a reply that calls no tool. On Terminal-Bench 2.1 and DeepSWE runs, every such message came after the work was already finished and only added a model call.POLARIS_CODE_UNATTENDED_NUDGESstill turns it on. For embedders,DEFAULT_UNATTENDED_NUDGESis now 0, so code that passes it towith_unattended_nudgessends no nudges. - A
-prun retries a failed model call (a network error, timeout, rate limit or overload) for about five minutes instead of about fifteen seconds: ten attempts, with waits starting at 2 s and doubling up to 60 s. A failed call ends the run, so a short outage used to throw away all the work done so far. Interactive sessions keep five attempts.RetryPolicy::unattendedgives an embedder the same numbers. A call that times out on every attempt can still take up to 59 minutes. - The stock system prompt asks the agent to list the task's explicit requirements (exact messages and formats, encodings, inputs to accept and reject, named edge cases), make sure a test exercises each, and confirm each against a passing test before its final answer. A custom
system_promptreplaces it as before.
Fixed
- A model reply that cannot be read, such as a tool call whose arguments are not valid JSON, no longer ends the turn. The call is sent again, up to two more times, even if the reply had already shown text, in every front end. Each attempt is billed, so a reply that fails the same way each time can cost up to three times the output. The failed attempt's partial text stays on screen, marked as failed. Before, one malformed tool call ended a
-prun and lost all its work.
What's Changed
- Unattended runs: no nudge by default, longer retries by @localminimum in #24
- Release polaris_code 0.4.4 by @localminimum in #26
Full Changelog: v0.4.3...v0.4.4
Polaris 0.4.3
Requires polaris-tui 0.3.0 and polaris-ai 0.9.1.
Added
- A model reply cut off at the output limit is continued instead of being treated as the final answer, up to three times per turn. The final answer of a
-prun joins the continued parts. - A
-prun asks the model to go on once when a reply calls no tool.POLARIS_CODE_UNATTENDED_NUDGESsets the number;0turns it off. Interactive sessions and embedding hosts are unchanged unless they opt in throughContinuationPolicy. - The model sees the first and last 5,000 characters of each long shell output stream, with the end read from the overflow file when the capture was cut. Secrets are redacted before the output is shortened.
ObservationPolicyonPolicySnapshotsets the size.
Changed
- Foreground
run_commandcalls in a-prun time out after 600 seconds by default instead of 120. Interactive sessions keep 120, andrun_in_backgroundkeeps its 3,600-second default. - A
-prun that grants edits or commands no longer routes question-shaped prompts (find …,where is …) to the read-only question topology.
Fixed
--context-windownow sizes context projection and compaction in CLI sessions. The CLI replaced the session policy with unsized defaults after the agent had sized it, so compaction always started at the 60,000-token default.
What's Changed
- feat: continue cut-off and unattended no-tool replies by @localminimum in #22
- Release polaris_code 0.4.3 by @localminimum in #23
Full Changelog: v0.4.2...v0.4.3
Polaris 0.4.2
Requires polaris-tui 0.3.0 and polaris-ai 0.9.1. This release includes the 0.4.1 changes, which had no GitHub Release.
Fixed
--provider openaiand Bedrockopenai.*models no longer fail with HTTP 400 when an earlier model reply in the history had two or more text blocks. The fix is inpolaris-ai0.9.1 (RadiantAILabs/polaris#49).Cargo.locknow locks every Polaris crate underpolaris-aiat 0.9.1. The 0.4.1 lockfile keptpolaris_model_providersand the other Polaris crates at 0.9.0, socargo install polaris_code --lockedbuilt 0.4.1 without the fix above.
Changed
--trajectory-pathandRunTrajectoryno longer write the file for each tool result or message. They are queued in memory and written by the next model call or byfinish, so they never block an async worker. A hard kill can lose the tool results and messages recorded since the last model call.polaris-tui,polaris_cosmosandpolaris_ontraceare unchanged at 0.3.0.
What's Changed
- Keep trajectory tool-result and message writes off the async worker by @localminimum in #19
- Release polaris_code 0.4.1 by @localminimum in #20
- Release polaris_code 0.4.2 with Polaris crates locked at 0.9.1 by @localminimum in #21
Full Changelog: v0.4.0...v0.4.2
Polaris 0.4.0
What's Changed
- chore: update polaris-ai to 0.8.1 by @localminimum in #10
- Add a flow module to polaris_cosmos for durable, budgeted multi-step agent workflows by @localminimum in #12
- Run each agent call in its own session with its own prompt, tool folder, command list and spend cap by @localminimum in #13
- docs: add a contributing guide and an agent safety guide by @localminimum in #14
- Run each agent call in its own session with its own prompt, tool folder, command list and spend cap by @localminimum in #15
- Unattended Chat Completions runs with native ATIF export by @localminimum in #16
- Harbor adapter for Terminal-Bench and static Linux release archive by @localminimum in #17
- chore: release 0.4.0 by @localminimum in #18
Full Changelog: v0.3.0...v0.4.0
Polaris 0.3.0
What's Changed
- Describe the Homebrew tap's prebuilt binary formula by @localminimum in #6
- Fix brew style offenses in the generated Homebrew formula by @localminimum in #7
- TUI: readable approvals, collapsed tool results, calmer status row by @hsehskad in #8
- Approval picker, optional human approval in the tool graph, and release 0.3.0 by @localminimum in #9
New Contributors
Full Changelog: v0.2.0...v0.3.0
Polaris 0.2.0
What's Changed
- Refresh README branding and add guarded release CI by @localminimum in #1
- Sync stored-key login, project trust and the review fixes by @localminimum in #2
- Release polaris_code 0.2.0 and polaris-tui 0.1.1 by @localminimum in #4
- Sync the README rewrite by @localminimum in #5
New Contributors
- @localminimum made their first contribution in #1
Full Changelog: v0.1.1...v0.2.0