--- title: "ktx scan" description: "Run standalone database scans." --- Discover a configured database connection's schema, including tables, columns, types, constraints, and optional relationship signals. ## Command signature ```bash ktx scan [options] ``` ## Options | Flag | Description | Default | |------|-------------|---------| | `--mode ` | Scan mode: `structural`, `enriched`, or `relationships` | `structural` | | `--dry-run` | Run without writing scan results | `false` | | `--database-introspection-url ` | Daemon URL for live-database introspection | — | | `--yes` | Install the managed Python runtime without prompting when required | `false` | | `--no-input` | Disable interactive managed runtime installation | — | ## Examples ```bash ktx scan my-warehouse ktx scan my-warehouse --mode enriched ktx scan my-warehouse --mode relationships ktx scan my-warehouse --dry-run ktx scan my-warehouse --database-introspection-url http://127.0.0.1:8765 ``` ## Output `ktx scan` prints a human summary and writes scan artifacts under the KTX project directory unless `--dry-run` is set. Use `ktx status` after a scan to inspect project readiness and next setup work. ## Common errors | Error | Cause | Recovery | |-------|-------|----------| | Scan cannot connect | Connection credentials or network access are invalid | Run `ktx connection test ` and update the connection before scanning | | Enriched scan cannot describe columns | LLM credentials are missing or invalid | Complete LLM setup with `ktx setup` before enriched scans | | Relationship scan has limited evidence | The connector cannot provide optional validation or statistics | Re-run with a connector that supports the missing capability, or treat relationship output as lower-confidence context |