---
name: "cargo-owner"
section: "1"
platform: "linux"
package: "rust"
version: "1:1.99.1-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/cargo-owner"
---

# cargo-owner(1)

Manage the owners of a crate on the registry

## NAME

cargo-owner — Manage the owners of a crate on the registry

## SYNOPSIS

**cargo owner** \[*options*\] **--add** *login* \[*crate*\]\
 **cargo owner** \[*options*\] **--remove** *login* \[*crate*\]\
 **cargo owner** \[*options*\] **--list** \[*crate*\]

## DESCRIPTION

This command will modify the owners for a crate on the registry. Owners of a crate can upload new versions and yank old versions. Non-team owners can also modify the set of owners, so take care!

This command requires you to be authenticated with either the **--token** option or using [**cargo-login**(1)](/cargo-login/1.md).

If the crate name is not specified, it will use the package name from the current directory.

See *the reference* \<https://doc.rust-lang.org/cargo/reference/publishing.html#cargo-owner\> for more information about owners and publishing.

## OPTIONS

### Owner Options

- **-a**, **--add** *login*…

  Invite the given user or team as an owner.

- **-r**, **--remove** *login*…

  Remove the given user or team as an owner.

- **-l**, **--list**

  List owners of a crate.

- **--token** *token*

  API token to use when authenticating. This overrides the token stored in the credentials file (which is created by [**cargo-login**(1)](/cargo-login/1.md)).

  *Cargo config* \<https://doc.rust-lang.org/cargo/reference/config.html\> environment variables can be used to override the tokens stored in the credentials file. The token for crates.io may be specified with the **CARGO\_REGISTRY\_TOKEN** environment variable. Tokens for other registries may be specified with environment variables of the form **CARGO\_REGISTRIES\_NAME\_TOKEN** where **NAME** is the name of the registry in all capital letters.

- **--index** *index*

  The URL of the registry index to use.

- **--registry** *registry*

  Name of the registry to use. Registry names are defined in *Cargo config* *files* \<https://doc.rust-lang.org/cargo/reference/config.html\>. If not specified, the default registry is used, which is defined by the **registry.default** config key which defaults to **crates-io**.

### Display Options

- **-v**, **--verbose**

  Use verbose output. May be specified twice for “very verbose” output which includes extra output such as dependency warnings and build script output. May also be specified with the **term.verbose** *config value* \<https://doc.rust-lang.org/cargo/reference/config.html\>.

- **-q**, **--quiet**

  Do not print cargo log messages. May also be specified with the **term.quiet** *config value* \<https://doc.rust-lang.org/cargo/reference/config.html\>.

- **--color** *when*

  Control when colored output is used. Valid values:

  • **auto** (default): Automatically detect if color support is available on the terminal.

  • **always**: Always display colors.

  • **never**: Never display colors.

  May also be specified with the **term.color** *config value* \<https://doc.rust-lang.org/cargo/reference/config.html\>.

### Common Options

**+***toolchain*

If Cargo has been installed with rustup, and the first argument to **cargo** begins with **+**, it will be interpreted as a rustup toolchain name (such as **+stable** or **+nightly**). See the *rustup documentation* \<https://rust-lang.github.io/rustup/overrides.html\> for more information about how toolchain overrides work.

**--config** *KEY=VALUE* or *PATH*

Overrides a Cargo configuration value. The argument should be in TOML syntax of **KEY=VALUE**, or provided as a path to an extra configuration file. This flag may be specified multiple times. See the *command-line overrides section* \<https://doc.rust-lang.org/cargo/reference/config.html#command-line-overrides\> for more information.

- **-C** *PATH*

  Changes the current working directory before executing any specified operations. This affects things like where cargo looks by default for the project manifest (**Cargo.toml**), as well as the directories searched for discovering **.cargo/config.toml**, for example. This option must appear before the command name, for example **cargo -C path/to/my-project build**.

  This option is only available on the *nightly* *channel* \<https://doc.rust-lang.org/book/appendix-07-nightly-rust.html\> and requires the **-Z unstable-options** flag to enable (see *#10098* \<https://github.com/rust-lang/cargo/issues/10098\>).

- **-h**, **--help**

  Prints help information.

- **-Z** *flag*

  Unstable (nightly-only) flags to Cargo. Run **cargo -Z help** for details.

## ENVIRONMENT

See *the reference* \<https://doc.rust-lang.org/cargo/reference/environment-variables.html\> for details on environment variables that Cargo reads.

## EXIT STATUS

• **0**: Cargo succeeded.

• **101**: Cargo failed to complete.

## EXAMPLES

 1\. List owners of a package:

```
cargo owner --list foo
```

 2\. Invite an owner to a package:

```
cargo owner --add username foo
```

 3\. Remove an owner from a package:

```
cargo owner --remove username foo
```

## SEE ALSO

[**cargo**(1)](/cargo/1.md), [**cargo-login**(1)](/cargo-login/1.md), [**cargo-publish**(1)](/cargo-publish/1.md)
