v0.170.0

daytonaio/daytonav0.170.0Apr 27, 2026by github-actions[bot]

AI Summary

The update introduces search functionality and an opt-in git CLI clone path for large repositories. It also improves error handling for quota and resource limits by changing the HTTP status code.

Key Highlights

  • Search functionality and interface added
  • Opt-in git CLI clone path for large repos
  • Per-sandbox resource limits now return HTTP 400
  • Normalization of Computer-Use keyboard input

Breaking Changes

  • Per-sandbox resource limits, quota exhaustion, and operational constraints now return HTTP 400 instead of 403/428. Update any error handling that checks for these status codes.

New Features

  • Opt-in git CLI clone path for large repos
  • Search functionality and interface
  • OSS Deployment Docs behind a Domain
  • Normalize Computer-Use Keyboard Input

Full Release Notes

## 0.170.0 (2026-04-27)

### 🚀 Features

- **daemon:** opt-in git CLI clone path for large repos ([#4561](https://github.com/daytonaio/daytona/pull/4561))
- **docs:** search functionality and interface ([#4418](https://github.com/daytonaio/daytona/pull/4418))
- **docs:** OSS Deployment Docs behind a Domain ([#4358](https://github.com/daytonaio/daytona/pull/4358))

### 🩹 Fixes

- ⚠️  **api:** use 400 for quota, resource limit, and precondition errors ([#4551](https://github.com/daytonaio/daytona/pull/4551))
- **api:** typeorm param passing in cron query ([#4578](https://github.com/daytonaio/daytona/pull/4578))
- **api:** snapshot reactivation grace period ([#4577](https://github.com/daytonaio/daytona/pull/4577))
- **computer-use:** Normalize Computer-Use Keyboard Input and Document a Curated Contract ([#4560](https://github.com/daytonaio/daytona/pull/4560), [#4417](https://github.com/daytonaio/daytona/issues/4417))
- **computer-use, daemon:** bind lowercase region screenshot query parameters ([#4567](https://github.com/daytonaio/daytona/pull/4567), [#3660](https://github.com/daytonaio/daytona/issues/3660))
- **daemon:** handle computer-use control characters and delay in keyboard.type() ([#4555](https://github.com/daytonaio/daytona/pull/4555))
- **dashboard:** ws sandbox details invalidation ([#4540](https://github.com/daytonaio/daytona/pull/4540))
- **docs:** handle proxy request fallback ([#4559](https://github.com/daytonaio/daytona/pull/4559))
- **docs:** api key authorization ([#4539](https://github.com/daytonaio/daytona/pull/4539))
- **docs:** modify sandbox snapshot description ([#4571](https://github.com/daytonaio/daytona/pull/4571))
- **docs:** modify markdown headings spacing ([#4572](https://github.com/daytonaio/daytona/pull/4572))

### Chores

- sync go.sum for v0.169.0 ([#4552](https://github.com/daytonaio/daytona/pull/4552))
- **ci:** prewarm OpenAPI Generator JAR to prevent CI race condition ([#4565](https://github.com/daytonaio/daytona/pull/4565))
- **dashboard,api-client:** define enumUnknownDefaultCase param for openapi-generator ([#4575](https://github.com/daytonaio/daytona/pull/4575))
- **docs,sdk,api-client:** upgrade @openapitools/openapi-generator-cli to ^2.31.1, openapi-generator to 7.21.0 ([#4512](https://github.com/daytonaio/daytona/pull/4512))
- **sdk:** add comprehensive unit and E2E tests ([#4541](https://github.com/daytonaio/daytona/pull/4541))
- **sdk-go:** bump to v0.170.0 ([#4579](https://github.com/daytonaio/daytona/pull/4579))
- **security:** replace deprecated dev-hanz-ops/install-gh-cli-action ([#4536](https://github.com/daytonaio/daytona/pull/4536))

### ⚠️  Breaking Changes

- **api:** Per-sandbox resource limits, quota exhaustion, and operational constraints (e.g. deleting runners or regions with active dependencies) now return HTTP 400 instead of 403/428. Update any error handling that checks for these status codes.

### ❤️ Thank You

- Ante Projić @aprojic
- Dalin Stone @dalinkstone
- Fabjan Vučina
- Ivan Dagelic @idagelic
- Juraj Štefanić @stefanicjuraj
- Lovre Pešut @rovle
- Mirko Džaja @MDzaja
- Robert Pavlinic @rpavlini
- Vishal shankar @voodoovampire