v1.10.12
Release Version: v1.10.12
New Features
- Added Atlas Cloud provider configuration documentation
- The README now includes setup instructions for using Atlas Cloud (OpenAI-compatible endpoint) with an example
config.yamlprofile andATLASCLOUD_API_KEYenvironment variable usage. - Code reference:
README.md
- The README now includes setup instructions for using Atlas Cloud (OpenAI-compatible endpoint) with an example
Improvements
-
MCP: support for stateless servers (optional session ID)
- The MCP client no longer fails when an
initializeresponse omits themcp-session-idheader. In this case, the client proceeds without session state and simply omitsMcp-Session-Idon subsequent calls. - This aligns behavior with the streamable-HTTP spec where the session ID is optional.
- Code reference:
api/client/mcp.go,api/client/mcp_test.go,README.md
- The MCP client no longer fails when an
-
Security hardening for agent shell steps
- Added a defense-in-depth policy check that denies shell step arguments containing common shell expansion patterns:
- Unix-like expansions:
$VAR,${VAR},$(cmd) - Backtick command substitution:
`cmd` - Windows-style expansions:
%VAR%
- Unix-like expansions:
- This helps reduce risk when file access is restricted to the configured work directory.
- Code reference:
agent/core/policy.go,agent/core/policy_test.go
- Added a defense-in-depth policy check that denies shell step arguments containing common shell expansion patterns:
-
CI and linting modernization
- Updated GitHub Actions to install Go explicitly and moved the linter action to
golangci-lint-action@v9(golangci-lint v2) to support the repository’s Go 1.25 target. - Added a repository-wide golangci-lint v2 configuration that restores prior lint behavior (keeps exclusion presets and limits
staticcheckchecks to avoid newly-enforced style/quickfix rules). - Code reference:
.github/workflows/test.yml,.golangci.yml
- Updated GitHub Actions to install Go explicitly and moved the linter action to
-
Toolchain and dependency updates
- Upgraded the module to Go 1.25.0 and bumped key dependencies (notably
gomegaandzap) along with related indirect dependency updates. - Code reference:
go.mod,go.sum
- Upgraded the module to Go 1.25.0 and bumped key dependencies (notably
Bug Fixes
- Fixed MCP failures against stateless endpoints
- Previously, the MCP client errored if
initializesucceeded but returned nomcp-session-id. This has been corrected to treat such servers as stateless rather than failing. - Code reference:
api/client/mcp.go,api/client/mcp_test.go
- Previously, the MCP client errored if
Other Changes
-
Release runbook added
- Added a detailed release process document covering prerequisites, tagging, building binaries, publishing GitHub releases, and updating the Homebrew tap.
- Code reference:
CLAUDE.md
-
Test script quality-of-life improvement
- The “TODO scan” in the test runner now ignores Markdown files to prevent documentation text from failing CI/release checks.
- Code reference:
scripts/all-tests.sh
Upgrade Notes (How to Update)
- Homebrew (recommended):
brew update brew upgrade chatgpt-cli
- Direct download (prebuilt binaries):
- Download the appropriate
chatgpt-<os>-<arch>binary from the GitHub Release assets for v1.10.12 (e.g.,chatgpt-darwin-arm64,chatgpt-linux-amd64,chatgpt-windows-386, etc.). - Replace your existing installed binary with the downloaded one (ensure it is executable on Unix-like systems).
- Download the appropriate