Skip to content
Back to skills

Data Storage

ASecurity

"Use ClearML Dataset, StorageManager, clearml-data CLI, storage

  • 247 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
toolspythonshellbashazureapibackend

Works with

  • cli
  • api

Security analysis

A100/100

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

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill data-storage --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Data Storage?

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

Security grade badge for Data Storage
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-data-storage/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-data-storage)

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: data-storage
description: "Use ClearML Dataset, StorageManager, clearml-data CLI, storage
  backends, cache behavior, and HyperDataset/DataView routing for dataset
  versioning and retrieval."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# ClearML Data and Storage

Use this sub-skill when the user needs to create, version, upload, finalize, retrieve, verify, or troubleshoot ClearML datasets, build `clearml-data` commands, manage remote storage URIs, or reason about `StorageManager` caching and HyperDataset/DataView routing.

## Route First

- Use this sub-skill for `Dataset`, `StorageManager`, `clearml-data`, dataset parents/versions, local copies, external links, storage credentials/extras, cache limits, and HyperDataset/DataView selection.
- Route experiment task setup, scalar/image reporting, and non-dataset `Task.upload_artifact()` usage to `../experiment-tracking/SKILL.md`.
- Route queued task execution, agents, `clearml-task`, `Task.execute_remotely()`, or remote job launch to `../remote-execution-cli/SKILL.md`.
- Route pipelines that consume datasets as pipeline inputs or steps to `../automation-pipelines/SKILL.md`.

## Core Dataset Pattern

Use a two-stage mental model: a dataset version is mutable until finalized, and after finalization it should be retrieved or used as a parent for a new version.

```python
from clearml import Dataset

base = Dataset.create(
    dataset_project="datasets/examples",
    dataset_name="images",
    dataset_version="1.0.0",
    output_uri="s3://bucket/clearml/images",
)
base.add_files(path="data/train", dataset_path="train")
base.upload(output_url="s3://bucket/clearml/images", verbose=True)
base.finalize()

child = Dataset.create(
    dataset_project="datasets/examples",
    dataset_name="images",
    dataset_version="1.1.0",
    parent_datasets=[base.id],
)
child.sync_folder(local_path="data/train", dataset_path="train", verbose=True)
child.upload(verbose=True)
child.finalize()
```

Prefer explicit IDs after creation. `Dataset.get()` can search by project/name/version, but `dataset_id` avoids ambiguity when multiple semantic versions or recent updates match.

## CLI Planning

Use `clearml-data` when the user wants shell commands or quick dataset lifecycle operations. The CLI stores the most recent dataset ID in `~/.clearml_data.json`; commands without `--id` may silently target the last accessed dataset, so production instructions should include `--id` after `create` unless the user intentionally wants one-shell stateful use.

```bash
clearml-data create --project datasets/examples --name images --version 1.0.0 --storage s3://bucket/clearml/images
clearml-data add --id DATASET_ID --dataset-folder train --files data/train
clearml-data upload --id DATASET_ID --storage s3://bucket/clearml/images --verbose
clearml-data close --id DATASET_ID --verbose
```

Use `scripts/dataset_cli_plan.py` to generate safe command sequences without running ClearML calls. Use `scripts/validate_dataset_plan.py` to check JSON plan invariants before translating a plan to Python or CLI.

## Storage Guidance

- `Dataset.create(..., output_uri=...)`, `Dataset.upload(output_url=...)`, and CLI `--storage` accept `s3://...`, `gs://...`, `azure://...`, a shared filesystem path, or the default ClearML files server.
- Cloud storage support requires the matching package extras: install ClearML with `s3`, `gs`, or `azure` extras when those schemes are used.
- Credentials are read from ClearML configuration and provider defaults; do not put secrets in generated commands, scripts, dataset names, or skill content.
- Use `StorageManager.get_local_copy()` for remote file caching/downloading and `StorageManager.upload_file()` or `upload_folder()` for direct storage operations that are not dataset-versioning workflows.

## References

- `references/api-reference.md` documents Dataset, StorageManager, and HyperDataset/DataView signatures and behavior notes.
- `references/cli-reference.md` documents `clearml-data` subcommands, required flags, state behavior, and safe command construction.
- `references/workflows.md` gives Python and CLI workflows for create/add/sync/upload/finalize/get/parents/external links.
- `references/troubleshooting.md` covers credentials, storage extras, stale CLI state, missing IDs, pending uploads, parent mistakes, and cache/local-copy pitfalls.
- `scripts/dataset_cli_plan.py` builds offline `clearml-data` command plans.
- `scripts/validate_dataset_plan.py` validates JSON dataset plan invariants with the Python standard library only.

Files in this skill

  • SKILL.md4.5 KB
  • references/api-reference.md9.4 KB
  • references/cli-reference.md7.2 KB
  • references/troubleshooting.md6.8 KB
  • references/workflows.md7.1 KB
  • scripts/dataset_cli_plan.py10.5 KB
  • scripts/validate_dataset_plan.py9 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.