<!-- @generated by usage-cli from usage spec -->
# `mise trust`

- **Usage**: `mise trust [FLAGS] [CONFIG_FILE]`
- **Effect**: modifies state
- **Source code**: [`src/cli/trust.rs`](https://github.com/jdx/mise/blob/main/src/cli/trust.rs)

Marks a config file as trusted

This means mise is allowed to parse the file when it needs to read config
that may execute code or affect the environment. mise checks trust before
parsing `mise.toml`. Without trust, mise may prompt, skip the config in some
discovery paths, fail with an untrusted-config error when it cannot prompt,
or assume trust in detected CI unless paranoid mode is enabled.

Safe config files do not require trust: files that only contain
`min_version`, `[tools]` entries with plain version strings (or arrays
of them), and `[tasks]` (no templates and no tool options) are loaded
without prompting, since nothing in them executes code at load time —
tools install and tasks run only on explicit commands like `mise install`
or `mise run`.

Trust is shared across git worktrees: a config file inside a linked
worktree is trusted when the equivalent path in the repository's main
checkout has been trusted. Paranoid mode disables this sharing since
worktrees can check out branches with different config contents.

## Arguments

### `[CONFIG_FILE]`

The config file to trust

## Flags

### `-a --all`

Trust all config files in the current directory, its parents, and its subdirectories

Subdirectories are walked respecting .gitignore, skipping hidden directories
and common build/dependency directories (node_modules, vendor, target, dist, build).

### `--ignore`

Do not trust this config and ignore it in the future

### `--show`

Show the trusted status of config files from the current directory and its parents.
Does not trust or untrust any files.

### `--untrust`

No longer trust this config, will prompt in the future

Examples:

```
# trusts ~/some_dir/mise.toml
$ mise trust ~/some_dir/mise.toml

# trusts mise.toml in the current or parent directory
$ mise trust
```
