# Where Is the bradautomates/claude-video Configuration File? A Complete Guide to Settings

> Discover the bradautomates/claude-video configuration file at ~/.config/watch/.env. Learn where to find and manage your API keys and settings for the watch skill.

- Repository: [bradautomates/claude-video](https://github.com/bradautomates/claude-video)
- Tags: how-to-guide
- Published: 2026-07-15

---

**The configuration for the `watch` skill in bradautomates/claude-video lives in `~/.config/watch/.env`, a dot-env file that stores API keys and detail preferences and is automatically created by the installer if missing.**

The `bradautomates/claude-video` repository provides a Claude-powered video analysis skill called `watch` that requires persistent configuration for API credentials and processing modes. Understanding where this configuration lives and how it is parsed is essential for customizing the tool's behavior.

## Configuration File Location and Structure

The `bradautomates/claude-video` configuration file uses the standard dot-env format and resides in a dedicated XDG-compatible directory.

### Default Path: `~/.config/watch/.env`

The configuration file is stored at `~/.config/watch/.env` on your local filesystem. This location is **not** inside the repository directory but in the user's home configuration folder, ensuring that sensitive API keys and personal preferences persist across repository updates and are excluded from version control.

This path is constructed at runtime in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) where the constant `CONFIG_FILE` is defined as follows:

```python

# From skills/watch/scripts/config.py (lines 9-11)

import os
CONFIG_DIR = os.path.expanduser("~/.config/watch")
CONFIG_FILE = os.path.join(CONFIG_DIR, ".env")

```

### Directory Creation and Permissions

The installer at [`skills/watch/scripts/setup.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/setup.py) automatically creates the `~/.config/watch/` directory if it does not exist during the first run. It also enforces strict file permissions, setting the `.env` file to `600` (read/write for owner only) to protect sensitive API keys from other system users.

## What the Configuration File Contains

The `bradautomates/claude-video` configuration file stores user-editable defaults and authentication credentials required by the `watch` skill.

### Core Settings

- **`WATCH_DETAIL`**: Controls the analysis verbosity level. Valid options include `balanced` (default), `efficient`, `token-burner`, and `transcript`.
- **`GROQ_API_KEY`**: Your API key for Groq's Whisper implementation.
- **`OPENAI_API_KEY`**: Your API key for OpenAI's Whisper implementation (only one provider is required).

### Configuration Hierarchy

When the `watch` skill runs, `get_config()` in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) merges three sources of configuration (lines 48-61):

1. **Environment variables** (highest priority)
2. **The `.env` file** at `~/.config/watch/.env`
3. **Built-in defaults** (lowest priority, `balanced` mode)

This hierarchy allows you to temporarily override settings via environment variables without editing the file.

## How the Configuration Is Read and Parsed

The `bradautomates/claude-video` repository includes robust parsing logic in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) that handles the dot-env file format, including comments and quoted values.

### The `get_config()` Function

The primary interface for reading configuration is the `get_config()` function:

```python

# Example: reading the current configuration

from skills.watch.scripts import config

cfg = config.get_config()
print(cfg)

# → {'detail': 'balanced', 'config_file': '/home/you/.config/watch/.env'}

```

### Parsing Implementation Details

According to the source code in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py), the parser processes the file line-by-line to strip comments (lines beginning with `#`) and handle quoted strings. This ensures that values like `"token-burner"` or `'balanced'` are correctly unwrapped before being stored in the configuration dictionary.

## Creating and Editing the Configuration File

You can manually create or edit the `bradautomates/claude-video` configuration file, or let the installer scaffold it automatically.

### Manual Configuration

Create the file manually to set your preferred defaults and API keys:

```bash

# Create the config directory and file

mkdir -p ~/.config/watch

# Write configuration

cat > ~/.config/watch/.env <<EOF

# Preferred frame detail mode (balanced, efficient, token-burner, transcript)

WATCH_DETAIL=efficient

# Whisper API keys (only one is required)

GROQ_API_KEY=your-groq-key-here
#OPENAI_API_KEY=your-openai-key-here
EOF

# Set secure permissions (enforced by the installer)

chmod 600 ~/.config/watch/.env

```

### Automatic Creation via [`setup.py`](https://github.com/bradautomates/claude-video/blob/main/setup.py)

The installer script at [`skills/watch/scripts/setup.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/setup.py) (lines 130-135) automatically creates the `.env` file with placeholder comments if it detects the file is missing. Run the setup check to scaffold the configuration:

```bash

# Let the installer scaffold the file (run once)

python3 skills/watch/scripts/setup.py --check

# → scaffolds ~/.config/watch/.env with placeholder comments and SETUP_COMPLETE=true if missing

```

## Security Best Practices

Since the `bradautomates/claude-video` configuration file contains sensitive API keys:

- **Never commit** the `.env` file to version control. The repository's `.gitignore` should exclude `~/.config/watch/` or any `.env` files.
- **Restrict permissions**: The installer automatically runs `chmod 600 ~/.config/watch/.env`, but verify this if you create the file manually.
- **Use environment variables** for temporary overrides when sharing systems or running in CI/CD pipelines to avoid writing credentials to disk.

## Summary

- The **bradautomates/claude-video** configuration file is located at `~/.config/watch/.env`, defined as `CONFIG_FILE` in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py).
- It stores **persistent settings** including `WATCH_DETAIL` mode and Whisper API keys (`GROQ_API_KEY`, `OPENAI_API_KEY`).
- The **`get_config()`** function in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) merges environment variables, the dot-env file, and built-in defaults.
- The **[`setup.py`](https://github.com/bradautomates/claude-video/blob/main/setup.py)** installer automatically creates the file with secure permissions (`600`) if it does not exist.
- All **temporary data** (downloads, frames, transcripts) lives in per-run temporary folders that are cleaned up automatically; the `.env` file is the only persistent state.

## Frequently Asked Questions

### Where exactly is the bradautomates/claude-video configuration file stored?

The configuration file is stored at `~/.config/watch/.env` in your home directory. This path is constructed in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) and is independent of where you cloned the repository.

### What happens if I delete the `~/.config/watch/.env` file?

If you delete the configuration file, the `watch` skill will still function using built-in defaults (`WATCH_DETAIL=balanced`). However, you must recreate it to use custom API keys or detail settings. Running `python3 skills/watch/scripts/setup.py --check` will safely recreate the file with placeholder content.

### Can I use environment variables instead of the .env file?

Yes. The `get_config()` function in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) checks environment variables first, so you can export `GROQ_API_KEY` or `WATCH_DETAIL` in your shell to override the file without editing `~/.config/watch/.env`.