Skip to content
Back to skills

Repo Development

ASecurity

"Maintain the DVC repository itself: source layout, CLI command

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

Works with

  • vscode
  • cli
  • api

Security analysis

A100/100

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

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill repo-development --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Repo Development?

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

Security grade badge for Repo Development
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-repo-development-cf54083b/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-repo-development-cf54083b)

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: repo-development
description: "Maintain the DVC repository itself: source layout, CLI command
  internals, focused test selection, optional dependency boundaries, lint/type
  config, and contribution pitfalls."
disable-model-invocation: true
metadata:
  disco-role: operating
license: Apache 2.0
---

# DVC Repository Development

Use this sub-skill when an agent is editing the DVC codebase rather than using DVC in an end-user project. It covers package layout, command implementation patterns, focused tests, optional dependency boundaries, and local quality checks for safe maintainer workflows.

## Start Here

1. Identify the changed surface: CLI parser/command class, `Repo` method, Python API helper, filesystem/remote backend, config/schema, testing fixture, or docs-only change.
2. Read `references/development-guide.md` for the code layout, entry points, packaging facts, and command implementation flow before editing.
3. Use `scripts/select_tests.py` with changed file paths to propose focused pytest targets and marker exclusions without running tests.
4. Read `references/test-selection.md` before running tests; prefer narrow unit/functional targets and skip opt-in network, Studio, and VSCode contract markers unless explicitly needed.
5. Read `references/troubleshooting.md` when imports, optional backends, parser errors, config validation, or DVC test fixtures fail.

## Maintainer Defaults

- Console entry point is `dvc = dvc.cli:main`; in this checkout `dvc.cli` is a package and the main implementation is `dvc/cli/__init__.py`.
- CLI commands are registered from `dvc/cli/parser.py`, implemented under `dvc/commands/`, and usually delegate business logic to `dvc/repo/`.
- Tests are not part of setuptools packages (`tests`, `tests.*` excluded; namespaces disabled), so runtime code must not import `tests.*`.
- Optional remote extras such as `azure`, `gdrive`, `gs`, `hdfs`, `oss`, `s3`, `ssh`, `webdav`, and `webhdfs` are not installed by default.
- Do not run the full test suite by default; start with focused paths and marker exclusions.

## Bundled References

- `references/development-guide.md` explains source layout, package metadata, command wiring, editable install expectations, and local quality tooling.
- `references/test-selection.md` maps common changed files to focused test targets, marker policy, and safe no-network commands.
- `references/troubleshooting.md` covers dependency/import failures, parser errors, optional extras, flaky network/Studio tests, config warnings, and fixture mistakes.
- `scripts/select_tests.py` prints suggested pytest targets and marker exclusions from changed paths; it never imports DVC or runs pytest.

## Routing Notes

- Route end-user data tracking, stages, `dvc repro`, and pipeline operation to `../data-and-pipelines/SKILL.md`.
- Route end-user remotes, cache behavior, `push`/`pull`/`fetch`, and storage credentials to `../remotes-and-cache/SKILL.md`.
- Route metrics, params, and plots usage to `../metrics-params-plots/SKILL.md`.
- Route experiment workflows to `../experiments/SKILL.md`.
- Route public Python API usage (`dvc.api`, `DVCFileSystem`, `Repo` automation) to `../python-api/SKILL.md` unless the task is about changing those APIs inside the DVC repo.

Files in this skill

  • SKILL.md3.2 KB
  • references/development-guide.md8.3 KB
  • references/test-selection.md7.7 KB
  • references/troubleshooting.md6.4 KB
  • scripts/select_tests.py10.2 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.