Skip to content
Back to skills

Sdk Automation

ASecurity

"Automate CVAT with the Python SDK, high-level repositories,

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
toolspythonshellbashapi

Works with

  • terminal
  • cli
  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill sdk-automation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sdk Automation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sdk Automation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-sdk-automation/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-sdk-automation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sdk-automation
description: "Automate CVAT with the Python SDK, high-level repositories,
  authentication helpers, and safe task/project data scripts."
metadata:
  disco-role: operating
disable-model-invocation: true
license: MIT
---

# CVAT SDK automation

Use this sub-skill when a task needs Python code against a CVAT server: login with a Personal Access Token or password, reuse CLI profiles, create/list/update/delete tasks or projects, upload local/remote/shared data, import/export annotations or datasets, download frames/previews/backups, use organization context, or fall back to generated low-level REST API wrappers.

## Route first

- Read `references/api-reference.md` for confirmed public classes, signatures, defaults, auth/profile helpers, and repository/entity relationships.
- Read `references/workflows.md` for copyable SDK patterns for task/project creation, frame download, import/export, backups, profile-compatible scripts, and low-level API fallback.
- Read `references/troubleshooting.md` when imports, authentication, server compatibility, background requests, SSL, organization context, or cache/filesystem behavior fail.
- Run or adapt `scripts/sdk_task_smoke_template.py` for a safe import/signature smoke by default, or for an explicit authenticated list/download workflow when the user supplies server credentials.

## Use SDK instead of CLI when

- The user needs branching logic, error handling, Python data structures, or integration into an ML pipeline.
- A workflow needs `Client`, `Task`, `Project`, `Job`, `Organization`, `Issue`, or generated API model objects.
- The task must compose CVAT calls with local data processing, model inference, or dataset conversion.
- Repeated background operations should use `wait_for_completion()` rather than shell polling.

Use `../cli-automation/SKILL.md` for terminal-only commands, `../dataset-ops/SKILL.md` for format and PyTorch dataset choices, `../auto-annotation/SKILL.md` for AA function protocols, and `../deployment-admin/SKILL.md` for starting or administering a CVAT service.

## Minimal install and import checks

```bash
pip install cvat-sdk
python - <<'PY'
from cvat_sdk import make_client, Client, Config
from cvat_sdk.core.proxies.tasks import ResourceType
print(Client, Config, [str(x) for x in ResourceType])
PY
```

Use extras only when needed:

```bash
pip install "cvat-sdk[masks]"     # mask encode/decode helpers needing NumPy
pip install "cvat-sdk[pytorch]"   # PyTorch dataset adapter and built-in torchvision AA functions
```

## Safe authentication defaults

- Prefer PAT authentication (`access_token=`) or CLI-compatible profiles rather than hard-coded passwords.
- If using password auth, pass it as a secret runtime value, not in code committed to a repository.
- Include the scheme in the server URL (`http://` or `https://`); SDK defaults and compatibility checks are stricter in recent releases.
- Set `organization_slug` or use `organization_context(slug)` when the workflow must operate inside an organization workspace.
- Treat `config.allow_unsupported_server=True` warnings seriously: SDK/server minor versions should normally match or be adjacent.

## Core pattern

```python
from cvat_sdk import make_client, models
from cvat_sdk.core.proxies.tasks import ResourceType

with make_client("https://cvat.example.com", access_token=token) as client:
    client.organization_slug = "team-slug"  # omit for personal workspace
    task = client.tasks.create_from_data(
        spec=models.TaskWriteRequest(
            name="demo",
            labels=[{"name": "car", "type": "rectangle"}],
        ),
        resource_type=ResourceType.LOCAL,
        resources=["image1.jpg", "image2.jpg"],
    )
    print(task.id, task.size)
```

Keep scripts explicit about side effects: creating tasks/projects, importing annotations, deleting resources, and downloading frames all mutate or read server state and need user-approved credentials/server targets.

Files in this skill

  • SKILL.md3.9 KB
  • references/api-reference.md8.2 KB
  • references/troubleshooting.md4 KB
  • references/workflows.md5.3 KB
  • scripts/sdk_task_smoke_template.py3.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.