Changelog Masthead Background
Back to changelog
v2.34

Agent Improvements, User Secrets, and More Resilient Infrastructure in 2.34

What's New in 2.34 🧑‍🚀

This release brings more control to developers and platform teams alike: smarter agent tooling, secrets management, and infrastructure that keeps working when things go wrong.

Coder Agents beta improvements

Coder Agents continues to improve and expand its capabilities, observability, and configuration. Introductory access includes full Premium features and no usage-based limits through September.

  • AI Gateway Integration: Coder Agents traffic now appears in AI Gateway audit and session views for customers with the AI Governance add-on.
  • Chat Sharing: Share read-only agent chats with teammates so they can review the work, see how a task was completed, and reference the full context.
  • Personal Skills: Save reusable instructions and invoke them with slash commands in chat, so your agent follows your conventions without repeating yourself.
  • Auto-Configure Models: Set up new AI models in seconds with recommended default settings designed to get the most out of each model, eliminating guesswork during configuration.
  • Gitlab Integration: Coder Agents now works with GitLab repositories, so agents can view merge request status, read diffs, and resolve branches to MRs.

Create personal skills as markdown and invoke them using slash commands

Store and inject secrets with User Secrets (beta)

  • Secure per-user credential storage: Developers store key-value secrets once via CLI, API, or UI, and they're automatically injected into every workspace, without manually copying .env files.
  • Zero-friction onboarding: Secrets follow developers across all their workspaces from day one, eliminating repetitive credential setup and reducing accidental leaks from terminals or shell history.
  • Enterprise-ready (Premium): Secret values can be encrypted at rest and all CRUD actions are audited, meeting compliance needs without requiring an external secrets tool.

Keep AI workflows running with automatic provider key failover

Available with the AI Governance add-on.

  • Up to 5 keys per provider: Admins can configure a comma-separated list of OpenAI or Anthropic keys, and AI Gateway automatically retries with the next key when one hits a rate limit or auth failure so builders aren’t interrupted.
  • Smart failover, not just retry: Keys are tracked as valid, temporarily unavailable (rate-limited with cooldown), or permanently unavailable (auth failure), so the system skips bad keys intelligently rather than blindly retrying.
  • Safe and observable: API keys stay out of logs and error messages entirely. Admins can monitor key pool health through server logs without exposing credentials.
Add Providers in AI Gateway
Add Providers in AI Gateway

Service accounts no longer consume a license seat

Service accounts are purpose-built headless accounts for shared workspace ownership, useful for on-call rotations, shared staging or QA, pair programming, and contractor onboarding. Premium customers can now use them without consuming a license seat, making it easier to adopt agentic workflows and workspace sharing at scale.

2.34 is the Extended Support Release

The June release will be our next ESR (Extended Support Release). If you rely on Coder Tasks, we strongly recommend migrating to Coder Agents for a better experience. However, should you choose to continue using Coder Tasks, please remain on version 2.34.

Migrating from 2.29 is a more complex process than usual–customers are encouraged to review the migration guide closely.

Breaking Changes

  • Default CODER_AI_GATEWAY_ENABLED to true (#25575): The AI Gateway is now enabled by default on all deployments. Set CODER_AI_GATEWAY_ENABLED=false to restore the old behavior.
  • Seed AI providers from env on server startup (#24895): AI provider configuration from environment variables is now automatically seeded into the database on startup, replacing runtime-only provider setup. Existing database-configured providers take precedence.
  • patchTemplateMeta uses optional fields (#24984): The UpdateTemplateMeta request now uses pointer fields so that unset fields are left unchanged. Clients sending zero values will no longer accidentally clear template metadata.
  • Persist structured chat errors (#24919): Chat error messages are now persisted as structured ChatMessagePart entries instead of plain text. Existing clients that parse error messages as strings may need to handle the new structured format.

View the full changelog on GitHub. If you have questions or feedback, join the conversation on Discord or email us directly!