2026-02-16 12:31:26 +08:00
|
|
|
# Documentation Status
|
2026-06-01 15:32:03 +08:00
|
|
|
- Synced with artifacts/ baseline on 2026-06-01.
|
2026-02-16 12:31:26 +08:00
|
|
|
|
2026-02-13 12:01:10 +08:00
|
|
|
# VLM Workflow Guide
|
|
|
|
|
|
|
|
|
|
This guide details the standard end-to-end process for organizing a video library using VLM.
|
|
|
|
|
|
|
|
|
|
## 1. Setup and Discovery
|
|
|
|
|
|
|
|
|
|
### Initialize Configuration
|
|
|
|
|
```bash
|
|
|
|
|
vlm config init
|
|
|
|
|
```
|
2026-06-01 15:32:03 +08:00
|
|
|
Edit `~/.vlm/config.yaml` to set `library_root` and optionally `workspace_dir: artifacts`.
|
2026-02-13 12:01:10 +08:00
|
|
|
|
|
|
|
|
### Library Scan
|
|
|
|
|
```bash
|
|
|
|
|
vlm scan
|
|
|
|
|
```
|
2026-06-01 15:32:03 +08:00
|
|
|
- **Goal**: Create `artifacts/inventory.csv`.
|
2026-02-13 12:01:10 +08:00
|
|
|
- **Note**: Ensure `ffprobe` is installed for resolution and codec metadata.
|
|
|
|
|
|
|
|
|
|
## 2. Identification
|
|
|
|
|
|
|
|
|
|
### Filename Parsing
|
|
|
|
|
```bash
|
2026-06-01 15:32:03 +08:00
|
|
|
vlm parse --inventory artifacts/inventory.csv
|
2026-02-13 12:01:10 +08:00
|
|
|
```
|
2026-06-01 15:32:03 +08:00
|
|
|
- **Goal**: Create `artifacts/identities.json`.
|
|
|
|
|
- **Why --inventory?**: Embeds video metadata (v2 schema) required for quality-based duplicate resolution.
|
2026-02-13 12:01:10 +08:00
|
|
|
|
|
|
|
|
### Metadata Enrichment
|
|
|
|
|
```bash
|
|
|
|
|
vlm enrich
|
|
|
|
|
```
|
2026-06-01 15:32:03 +08:00
|
|
|
- **Goal**: Update `artifacts/identities.json` with TMDB data.
|
|
|
|
|
- **Troubleshooting**: Check `enrichment.api_keys` in config; never commit `~/.vlm/config.yaml`.
|
2026-02-13 12:01:10 +08:00
|
|
|
|
|
|
|
|
## 3. Analysis and Planning
|
|
|
|
|
|
|
|
|
|
### Detect Issues
|
|
|
|
|
```bash
|
|
|
|
|
vlm analyze
|
|
|
|
|
```
|
2026-06-01 15:32:03 +08:00
|
|
|
- **Goal**: Create `artifacts/analysis.json`.
|
|
|
|
|
- **Outputs**: Episode gaps and duplicate groups.
|
2026-02-13 12:01:10 +08:00
|
|
|
|
|
|
|
|
### Create Execution Plan
|
|
|
|
|
```bash
|
2026-06-01 15:32:03 +08:00
|
|
|
vlm plan --analysis artifacts/analysis.json
|
2026-02-13 12:01:10 +08:00
|
|
|
```
|
2026-06-01 15:32:03 +08:00
|
|
|
- **Goal**: Create `artifacts/plan.json`.
|
|
|
|
|
- **Strategy**: Uses `plan.duplicate_keep` (default: `by_reputation`) for duplicate decisions.
|
2026-02-13 12:01:10 +08:00
|
|
|
|
2026-06-01 15:32:03 +08:00
|
|
|
## 4. Review and Execution
|
2026-02-13 12:01:10 +08:00
|
|
|
|
2026-06-01 15:32:03 +08:00
|
|
|
### Human review
|
|
|
|
|
```bash
|
|
|
|
|
vlm review-plan
|
|
|
|
|
# Optional: vlm review-plan --tui (requires textual extra)
|
|
|
|
|
vlm apply-review # after editing artifacts/plan_manual_review.csv
|
|
|
|
|
```
|
2026-02-13 12:01:10 +08:00
|
|
|
|
|
|
|
|
### Execute Changes
|
|
|
|
|
```bash
|
|
|
|
|
vlm execute # Dry-run
|
2026-06-01 15:32:03 +08:00
|
|
|
vlm execute --confirm # Actual operations (explicit confirmation)
|
2026-02-13 12:01:10 +08:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### Reverting Changes
|
|
|
|
|
```bash
|
|
|
|
|
vlm rollback
|
|
|
|
|
```
|
|
|
|
|
Restores files using the latest log in `~/.vlm/rollback/`.
|