Welcome to the September edition of the CVAT Digest, your monthly roundup of all the latest features, improvements, and bug fixes in Computer Vision Annotation Tool (CVAT).
This month’s updates brought meaningful improvements for both hands-on labelers and DevOps teams. Whether you're reviewing a long list of jobs, automating exports, or managing users and storage, things should feel smoother all around.
New
Bulk Actions Across the Platform
Managing large datasets just got easier. You can now select multiple tasks, jobs, projects, requests, cloud storages, org members, or webhooks and apply actions like Export, Backup, Download, Delete, or Change Assignee/State/Stage/Role in one go.
Move Projects and Tasks Between Organizations
You can now reorganize your work across teams more easily by moving tasks and projects from one organization to another.
CVAT AI Agents Now Output Tags
CVAT auto-annotation agents now support tags as output. A useful addition for workflows that involve classification alongside bounding boxes or polygons.
Cloud Storage Improvements
You can now swap out the cloud storage associated with a task. And if your data is already in the cloud, you can create lightweight backups that skip copying media files.
SDK and CLI Export Enhancements
The SDK and CLI now support exporting files with server-generated filenames, and always save exports locally for more predictable automation.
User Profile Page
You can now update your personal info or change your password directly in CVAT. No need to ask an admin. Just open your profile and make changes yourself.
Updates
Helm & Docker Security Updates
CVAT’s containers are now better aligned with security best practices:
- The frontend container no longer runs as root.
cvat/server
uses a numeric UID rather than a username.- Vector, ClickHouse, Redis, and PostgreSQL containers all follow safer defaults (Bitnami Legacy base images, non-root contexts).
- Kvrocks in Helm now uses an explicit UID/GID, compatible with strict Kubernetes security policies.
More Predictable Behavior in CLI & SDK
- Yarn updated to v4.9.2 for faster builds and improved tooling.
- The SDK’s
ApiClient
now supports custom requests more easily, with better docs to help developers integrate it into their own tools.
Form Validation & Error Handling
- Registration forms now reject overly long inputs instead of silently truncating them.
- You’ll now get a clearer message when an image can’t be saved to a compressed chunk.
Cleanup and Deprecations
- The old seed parameter in job creation has been removed. Use
random_seed
going forward.
Fixes
- Auto-annotation for small objects: Auto-annotation with the
torchvision_instance_segmentation
model now produces valid polygons, even when the objects are very small. - Lower memory usage on task export: Task exports, especially for large video datasets, now use significantly less RAM, making exports more stable and efficient.
- Invitation and task creation UX: You can now properly delete unaccepted organization invitations. Plus, status messages shown during task creation are now easier to read.
- Locked inputs behave properly: Label and attribute inputs are now correctly disabled when an object is locked, preventing accidental edits.
- Skeleton editor crash fix: Creating a broken skeleton structure in the label configurator could crash the app, so CVAT now blocks invalid setups in const before they’re saved.
- Export crash fixes: Job export no longer crashes if the job includes tags or isn’t the first job in the task.
- Ground Truth frame issues: Frame numbers in backups of Ground Truth jobs are now correct, even when start/stop/step settings were customized.
- Helm chart cleanup: Removed an unused
/models
directory from the Helm chart’s data volume.
Have suggestions or requests for what you'd like to see next? Open an issue on GitHub.