Skip to content

Releases: docker/cagent

v1.27.1

26 Feb 16:20
449e081

Choose a tag to compare

This release improves the user interface experience with better message editing capabilities and fixes several issues with token usage tracking and session loading.

What's New

  • Adds on_user_input hook that triggers when the agent is waiting for user input or tool confirmation

Improvements

  • Improves multi-line editing of past user messages
  • Adds clipboard paste support during inline message editing
  • Makes loading past sessions faster
  • Updates TUI display when the current agent changes

Bug Fixes

  • Fixes token usage being recorded multiple times per stream, preventing inflated telemetry counts
  • Fixes empty inline edit textarea expanding to full height
  • Fixes docker ai shellout to cagent for standalone invocations

Technical Changes

  • Updates schema tests to only run for latest version
  • Fixes documentation issues

What's Changed

New Contributors

Full Changelog: v1.27.0...v1.27.1

v1.27.0

25 Feb 13:45
ae7e845

Choose a tag to compare

This release introduces dynamic agent color styling for multi-agent teams, adds new filesystem tools, and includes several bug fixes and security improvements.

What's New

  • Adds dynamic agent color styling system that assigns unique, deterministic colors to each agent in multi-agent teams for visual distinction across the TUI
  • Adds hue-based agent color generation with theme integration that adapts saturation and lightness based on theme background
  • Adds mkdir and rmdir filesystem tools so agents can create and remove directories without using shell commands
  • Allows .github and .gitlab directories in WalkFiles traversal for better CI workflow support

Bug Fixes

  • Fixes race condition in agent color style lookups
  • Fixes path traversal vulnerability in ACP filesystem operations
  • Fixes YAML marshalling issues that could produce corrupted configuration files
  • Handles case-insensitive filesystems properly
  • Logs errors when persisting session title in TUI

Technical Changes

  • Consolidates color utilities into styles/colorutil.go
  • Unexports internal color helpers and deduplicates fallbacks
  • Fixes cassettes functionality

What's Changed

Full Changelog: v1.26.0...v1.27.0

v1.26.0

24 Feb 16:20
92c4163

Choose a tag to compare

This is a maintenance release with dependency updates and internal improvements.

Technical Changes

  • Maintenance release with dependency updates

Full Changelog: v1.25.0...v1.26.0

v1.24.0

24 Feb 11:20
79140af

Choose a tag to compare

This release introduces remote skills discovery capabilities and improves file reading tools with pagination support.

What's New

  • Adds remote skills discovery with disk cache and dedicated tools, supporting the well-known skills discovery specification
  • Adds offset and line_count pagination parameters to read_file and read_multiple_files tools for incremental reading of large files

Improvements

  • Limits output size for read_file and read_multiple_files tools to prevent excessive token usage
  • Removes pagination instructions from tool descriptions for cleaner interface

Bug Fixes

  • Fixes LineCount metadata on truncated read_multiple_files results

Technical Changes

  • Freezes configuration version v5 and bumps to v6
  • Updates test cassettes to match schema changes for file reading tools

What's Changed

  • docs: update CHANGELOG.md for v1.23.6 by @docker-read-write[bot] in #1829
  • builtin: add offset and line_count pagination to read_file and read_multiple_files by @trungutt in #1828
  • Implement remote skills discovery with disk cache and dedicated tools by @rumpl in #1822
  • Freeze v5 (and a few refactoring) by @dgageot in #1810

Full Changelog: v1.23.6...v1.24.0

v1.23.6

23 Feb 20:18
59413d3

Choose a tag to compare

This release improves cost tracking accuracy, enhances session management, and fixes several UI and functionality issues.

What's New

  • Adds tab completion for /commands dialog
  • Adds mouse support for selecting and opening sessions in the sessions dialog

Improvements

  • Computes session cost from messages instead of accumulating on session for better accuracy
  • Includes compaction cost in /cost dialog
  • Displays original YAML model names in sidebar instead of resolved aliases
  • Improves emoji copying support by reversing clipboard copy order (OSC52 first, then pbcopy fallback)

Bug Fixes

  • Fixes token usage percentage display during and after agent transfers
  • Fixes session forking and costs calculation
  • Fixes actual provider display for alloy models in sidebar (was showing wrong provider)
  • Restores ctrl-1, ctrl-2... shortcuts for quick agent selection
  • Fixes NewHandler panic on parameterless tool calls

Technical Changes

  • Consolidates TokenUsage event constructors
  • Removes dead UpdateLastAssistantMessageUsage method
  • Emits TokenUsageEvent on session restore for context percentage display
  • Emits TokenUsageEvent after compaction so sidebar cost updates
  • Adds e2e tests on binaries for CLI plugin execution
  • Creates ~/.docker/cli-plugins directory if it doesn't exist

What's Changed

New Contributors

Full Changelog: v1.23.5...v1.23.6

v1.23.5

20 Feb 08:45
a6c3acc

Choose a tag to compare

This release improves the session browser interface and fixes several issues with the docker-agent standalone binary.

Improvements

  • Shows message count in session browser dialog for better session overview

Bug Fixes

  • Fixes recognition of cobra internal completion commands as subcommands
  • Fixes help text display for docker-agent standalone binary exec
  • Fixes version output for docker-agent CLI plugin and standalone exec

Technical Changes

  • Renames internal schema structure

What's Changed

  • docs: update CHANGELOG.md for v1.23.4 by @docker-read-write[bot] in #1792
  • Rename schema by @dgageot in #1793
  • Show message count in session browser dialog by @dgageot in #1791
  • Fix bash/zsh/... completion by @dgageot in #1794
  • Fix help for docker-agent standalone binary exec by @gtardif in #1796
  • Fix docker-agent version for cli plugin & standalone exec by @gtardif in #1802

Full Changelog: v1.23.4...v1.23.5

v1.23.4

19 Feb 11:36
04cbf3a

Choose a tag to compare

This release introduces parallel session support with tab management, major command restructuring, and enhanced UI interactions.

What's New

  • Adds parallel session support with a new tab view to switch between sessions
  • Adds drag and drop functionality for reordering tabs
  • Adds mouse click support to elicitation, prompt input, and tool confirmation dialogs
  • Adds X-Cagent-Model-Name header to models gateway requests
  • Adds Ask list to permissions config to force confirmation for read-only tools
  • Defaults to running the default agent when no subcommand is given

Improvements

  • Restores ctrl-r binding for searching prompt history
  • Updates Claude Sonnet model version to 4.6
  • Prevents closing the last remaining tab with Ctrl+W
  • Makes fetch tool not read-only
  • Handles Claude overloaded_error with retry logic

Bug Fixes

  • Fixes ctrl-c in docker agent and docker agent defaulting to docker agent run
  • Fixes completion command
  • Fixes cagent-action to expect a prompt
  • Fixes gemini use of vertexai environment variables
  • Fixes CPU profile file handling and error handling in isFirstRun

Technical Changes

  • Removes cagent config commands (breaking change)
  • Removes cagent feedback command (breaking change)
  • Removes cagent build command (breaking change)
  • Removes cagent catalog command (breaking change)
  • Moves a2a, acp, mcp and api commands under cagent serve (breaking change)
  • Replaces cagent exec with cagent run --exec (breaking change)
  • Moves pull and push under cagent share (breaking change)
  • Hides cagent debug
  • Adds skills to the default agent
  • Defaults restore_tabs to false

What's Changed

New Contributors

Full Changelog: v1.23.3...v1.23.4

v1.23.3

16 Feb 16:06
e2f8679

Choose a tag to compare

This release adds Docker CLI plugin support and improves TUI performance by making model reasoning checks asynchronous.

What's New

  • Adds support for using cagent as a Docker CLI plugin with docker agent command (no functional changes to existing cagent command)
  • Handles Windows .exe binary suffix for CLI plugin compatibility

Improvements

  • Makes model reasoning support checks asynchronous to prevent TUI freezing (previously could block for up to 30 seconds)
  • Threads context.Context through modelsdev store API to allow proper cancellation and deadline propagation

Technical Changes

  • Renames cagent OCI annotation to io.docker.agent.version while maintaining backward compatibility with the old annotation
  • Updates config media type to use docker.agent
  • Adds TUI general guidelines to AGENTS.md documentation

What's Changed

  • Thread context.Context through modelsdev store API by @rumpl in #1747
  • Rename cagent OCI annotation, keep old one by @gtardif in #1745
  • docs: update CHANGELOG.md for v1.23.2 by @docker-read-write[bot] in #1746
  • Move ModelSupportsReasoning calls to async bubbletea commands by @rumpl in #1749
  • Allow to use cagent binary as a docker cli plugin docker-agent. No functional change for cagent command. by @gtardif in #1748

New Contributors

Full Changelog: v1.23.2...v1.23.3

v1.23.2

16 Feb 09:35
8f179d0

Choose a tag to compare

This release adds header forwarding capabilities for toolsets and includes several bug fixes and code improvements.

What's New

  • Adds support for ${headers.NAME} syntax to forward upstream API headers to toolsets, allowing toolset configurations to reference incoming HTTP request headers

Bug Fixes

  • Fixes race condition in isFirstRun using atomic file creation
  • Fixes nil pointer dereference when RateLimit is present without Usage
  • Fixes double-counting of session costs with cumulative usage providers
  • Fixes Ctrl+K key binding conflict in session browser by reassigning CopyID to Ctrl+Y
  • Fixes model selection functionality

Improvements

  • Adds input validation and audit logging to shell tool
  • Adds input validation and error handling to RunBangCommand

Technical Changes

  • Extracts shared helpers for command-based providers to reduce code duplication
  • Removes duplication from config.Resolv
  • Moves GetUserSettings() from pkg/config to pkg/userconfig as Get()
  • Removes redundant Reader interface from pkg/config
  • Fixes leaked os.Root handle in fileSource.Read
  • Makes small improvements to cmd/root

What's Changed

New Contributors

Full Changelog: v1.23.1...v1.23.2

v1.23.1

13 Feb 21:12
af20cc4

Choose a tag to compare

This release introduces a new OpenAPI toolset for automatic API integration, task management capabilities, and several improvements to message handling and testing infrastructure.

What's New

  • Adds Tasks toolset with support for priorities and dependencies
  • Adds OpenAPI built-in toolset type that automatically converts OpenAPI specifications into usable tools
  • Adds support for custom telemetry tags via TELEMETRY_TAGS environment variable

Improvements

  • Preserves line breaks and indentation in welcome messages for better formatting
  • Updates documentation links to point to GitHub Pages instead of code repository

Bug Fixes

  • Fixes recursive enforcement of required properties in OpenAI tool schemas (resolves Chrome MCP compatibility with OpenAI 5.2)
  • Returns error when no messages are available after conversion instead of sending invalid requests

Technical Changes

  • Replaces time.Sleep in tests with deterministic synchronization for faster, more reliable testing
  • Refactors models store implementation
  • Adds .idea/ directory to gitignore
  • Removes fake models.dev and unused code

What's Changed

  • docs: update CHANGELOG.md for v1.23.0 by @docker-read-write[bot] in #1714
  • Tasks toolset by @rumpl in #1704
  • preserve line breaks and indentation in welcome messages by @maxcleme in #1718
  • Add openapi built-in toolset type by @dgageot in #1719
  • return error if no messages are available after conversion by @krissetto in #1720
  • fix: recursively enforce required properties in OpenAI tool schemas by @dgageot in #1710
  • Replace time.Sleep in tests with deterministic synchronization by @dgageot in #1722
  • Allow passing in custom tags to telemetry by @derekmisler in #1723
  • Update documentation links to GitHub Pages by @lorenrh in #1726
  • Speed up fallback tests by @dgageot in #1724
  • Refactor models store by @dgageot in #1721

New Contributors

Full Changelog: v1.23.0...v1.23.1