# atmos vendor clean

Remove every vendored file recorded in `vendor.lock.yaml`. Only deletes files the lock actually
owns. It never deletes files another still-selected artifact owns, and never deletes files outside
the lock entirely.

## Usage

```shell
atmos vendor clean [--component <name>] [--force] [--dry-run]
```

By default, `vendor clean` preserves any lock-owned file whose content doesn't match its recorded
checksum. It refuses to run and names every such file. Pass `--force` to delete them anyway. After
a successful clean, `vendor clean` drops the removed artifacts from `vendor.lock.yaml`.

## Examples

```shell
# Preview what would be removed, without deleting anything.
atmos vendor clean --dry-run

# Remove every vendored artifact recorded in the lock.
atmos vendor clean

# Remove only one component's vendored files.
atmos vendor clean --component vpc

# Delete lock-owned files even if they were modified since vendoring.
atmos vendor clean --force
```

## Flags

- **`--component` / `-c` (string)**
  Clean only this component. Omit to clean every artifact recorded in the lock file.
- **`--force` (boolean)**
  Delete modified lock-owned files instead of refusing to run.
- **`--dry-run` (boolean)**
  Show which files would be removed without deleting anything.

:::note
A single modified file blocks the entire run unless you pass `--force`. Atmos deletes no files for
that invocation, even unmodified ones, until you resolve the conflict or pass `--force`. Scope with
`--component` to clean only the artifacts you're sure about.
:::
