Evaluate a raw OPA query against policies locally

## Usage

`circleci policy eval <policy-path> [flags]`

## Arguments

`<policy-path>` is the path to a .rego policy file or a directory
of policy files to evaluate.

## Flags

| Flag                           | Description                                                                                  |
| ------------------------------ | -------------------------------------------------------------------------------------------- |
| `--context string`             | Policy context (config compilation only runs when this is "config") (default "config")       |
| `--input string`               | Path to input file (e.g. .circleci/config.yml) (required)                                    |
| `--jq string`                  | Process values from the response using jq syntax (see `circleci help formatting`)            |
| `--json`                       | Output as JSON                                                                               |
| `--meta string`                | Decision metadata as a JSON string                                                           |
| `--metafile string`            | Path to decision metadata file (YAML or JSON)                                                |
| `--no-compile`                 | Evaluate the raw config without compiling it first                                           |
| `--org string`                 | Organization slug (e.g. gh/myorg) or UUID for private orb resolution; defaults to git remote |
| `--pipeline-parameters string` | Pipeline parameters as a YAML map or path to a YAML file                                     |
| `--query string`               | The OPA query to evaluate (default "data")                                                   |

Global flags: `-c, --config`, `--debug`, `--no-color`, `-q, --quiet` — see `circleci --help`.

## Examples

- Evaluate a policy directory against a compiled config: 
  `circleci policy eval ./policies --input .circleci/config.yml`
- Evaluate a specific query: 
  `circleci policy eval ./policies --input .circleci/config.yml --query 'data.org.enable_rule'`
- Evaluate the raw (uncompiled) config: 
  `circleci policy eval ./policies --input .circleci/config.yml --no-compile`
- Pass decision metadata: 
  `circleci policy eval ./policies --input .circleci/config.yml --meta '{"project_id":"abc"}'`

## Details

Run a raw OPA query against a policy bundle entirely locally and print the
result as JSON. Unlike 'policy decide', which returns a CircleCI policy
decision from the remote service, this evaluates on your machine — the
escape hatch for inspecting arbitrary Rego values while authoring policies.

The config is compiled before evaluation, with the source config exposed to
policies and its compiled form nested under "_compiled_".

Output is whatever the query evaluates to, so it has no fixed schema.

