> ## Documentation Index
> Fetch the complete documentation index at: https://jncpkg.org/llms.txt
> Use this file to discover all available pages before exploring further.

# CLI Reference

> Complete reference for all jnc commands.

# CLI Reference

jnc provides a comprehensive set of commands for managing workspaces, dependencies, environments, and tasks.

## Global Options

These options are available on every command:

| Option                          | Description                                                                         |
| ------------------------------- | ----------------------------------------------------------------------------------- |
| `-h`, `--help`                  | Display help information                                                            |
| `-v`, `--verbose`               | Increase logging verbosity (`-v` warnings, `-vv` info, `-vvv` debug, `-vvvv` trace) |
| `-q`, `--quiet`                 | Decrease logging verbosity (quiet mode)                                             |
| `--color <auto\|always\|never>` | Control colored output (default: `auto`)                                            |
| `--no-progress`                 | Hide all progress bars                                                              |

## Commands

### Workspace Management

| Command                           | Alias | Description                                                       |
| --------------------------------- | ----- | ----------------------------------------------------------------- |
| [`jnc init`](/cli/init)           |       | Create a new workspace                                            |
| [`jnc install`](/cli/install)     | `i`   | Install an environment, updating the lockfile if needed           |
| [`jnc reinstall`](/cli/reinstall) |       | Re-install an environment with optional package filtering         |
| [`jnc lock`](/cli/lock)           |       | Solve the environment and update the lock file without installing |
| [`jnc import`](/cli/import)       |       | Import an environment from a conda `environment.yml` file         |
| [`jnc info`](/cli/info)           |       | Show workspace and system information                             |
| [`jnc clean`](/cli/clean)         |       | Remove workspace environments and caches                          |

### Dependencies

| Command                       | Alias | Description                                            |
| ----------------------------- | ----- | ------------------------------------------------------ |
| [`jnc add`](/cli/add)         | `a`   | Add dependencies to the workspace                      |
| [`jnc remove`](/cli/remove)   | `rm`  | Remove dependencies from the workspace                 |
| [`jnc update`](/cli/update)   |       | Update dependencies in the lock file                   |
| [`jnc upgrade`](/cli/upgrade) |       | Upgrade dependencies with loosened version constraints |
| [`jnc list`](/cli/list)       | `ls`  | List packages installed in the environment             |
| [`jnc tree`](/cli/tree)       | `t`   | Show a dependency tree                                 |
| [`jnc search`](/cli/search)   |       | Search for packages in configured channels             |

### Tasks and Execution

| Command                 | Alias | Description                                       |
| ----------------------- | ----- | ------------------------------------------------- |
| [`jnc run`](/cli/run)   | `r`   | Run a task or command in the environment          |
| [`jnc exec`](/cli/exec) | `x`   | Run a command in a temporary environment          |
| [`jnc task`](/cli/task) |       | Manage workspace tasks (add, remove, list, alias) |

### Shell

| Command                             | Alias | Description                                   |
| ----------------------------------- | ----- | --------------------------------------------- |
| [`jnc shell`](/cli/shell)           | `s`   | Start an interactive shell in the environment |
| [`jnc shell-hook`](/cli/shell-hook) |       | Print the environment activation script       |

### Global Tools

| Command                     | Alias | Description                                              |
| --------------------------- | ----- | -------------------------------------------------------- |
| [`jnc global`](/cli/global) | `g`   | Manage globally installed tools in isolated environments |

### Workspace Configuration

| Command                           | Description                                                             |
| --------------------------------- | ----------------------------------------------------------------------- |
| [`jnc workspace`](/cli/workspace) | Manage workspace settings (platforms, channels, environments, features) |
| [`jnc config`](/cli/config)       | View or edit jnc configuration                                          |
| [`jnc auth`](/cli/auth)           | Manage conda channel authentication                                     |

### Build and Publish

| Command                     | Description                              |
| --------------------------- | ---------------------------------------- |
| [`jnc build`](/cli/build)   | Build a conda package from the workspace |
| [`jnc upload`](/cli/upload) | Upload a package to a channel            |

### Utilities

| Command                             | Description                                        |
| ----------------------------------- | -------------------------------------------------- |
| [`jnc completion`](/cli/completion) | Generate shell completion scripts                  |
| [`jnc probe`](/cli/probe)           | Detect hardware capabilities (e.g., NVIDIA Jetson) |

## Update Options

Several commands support options that control how the lock file and environment are updated:

| Option         | Description                                                                       |
| -------------- | --------------------------------------------------------------------------------- |
| `--frozen`     | Use the lockfile as-is, do not update it even if the manifest has changed         |
| `--locked`     | Require the lockfile to be up-to-date with the manifest, abort if not             |
| `--no-install` | Only modify the lock file, do not install the environment                         |
| `--as-is`      | Shorthand for `--frozen --no-install` (available on `run`, `shell`, `shell-hook`) |
