pub enum IdSubcommand {
Create {
metadata_file: PathBuf,
local_key_alias: String,
preset: LayoutPreset,
},
Show,
List,
Rotate {Show 16 fields
alias: Option<String>,
current_key_alias: Option<String>,
next_key_alias: Option<String>,
add_witness: Vec<String>,
remove_witness: Vec<String>,
witness_threshold: Option<u64>,
dry_run: bool,
add_device: Vec<String>,
remove_device: Vec<u32>,
signing_threshold: Option<String>,
rotation_threshold: Option<String>,
from_device: bool,
no_qr: bool,
print_uri: bool,
no_mdns: bool,
timeout: u64,
},
ExportBundle {
alias: String,
output_file: PathBuf,
max_age_secs: u64,
},
AllowedSigners {
alias: String,
principal: Option<String>,
output_file: Option<PathBuf>,
},
Register {
registry: Option<String>,
},
Claim(ClaimCommand),
Migrate(MigrateCommand),
BindIdp(BindIdpStubCommand),
UpdateScope {
platform: String,
},
Agent(AgentCommand),
}Variants§
Create
Create a new signing identity.
Fields
preset: LayoutPresetStorage layout preset for ecosystem compatibility. Use ‘radicle’ for Radicle repositories, ‘gitoxide’ for gitoxide, or ‘default’ for standard Auths layout.
Show
Show primary identity details (identity ID, metadata) from the Git repository.
List
List identities (currently same as show, forward-compatible for future multi-identity support).
Rotate
Rotate identity keys. Stores the new key under a new alias.
Fields
add_device: Vec<String>Add a device slot on this rotation (repeatable). Value is the
curve for the new slot (P256 or Ed25519).
remove_device: Vec<u32>Remove a device slot by index on this rotation (repeatable). Currently rejected — requires CESR indexed-signature support.
signing_threshold: Option<String>New signing threshold (scalar like "2" or fractions like
"1/2,1/2,1/2"). Omit to keep the prior kt.
rotation_threshold: Option<String>New rotation (next) threshold, same format as
--signing-threshold. Omit to keep the prior nt.
from_device: boolReceive the rotation from a paired device over LAN instead of authoring it locally. The device builds and co-signs the shared-KEL rotation; this host only validates it against the registry’s prior key state and appends it. No local key material is touched.
ExportBundle
Export an identity bundle for stateless CI/CD verification.
Creates a portable JSON bundle containing the identity ID, public key, and authorization chain. This bundle can be used in CI pipelines to verify commit signatures without requiring access to the identity repository.
Fields
AllowedSigners
Export a KEL-derived allowed_signers file so plain git / ssh can
verify this identity’s signatures on machines without auths installed.
Point git at it with:
git config gpg.ssh.allowedSignersFile
Fields
Register
Publish this identity to a public registry for discovery.
Claim(ClaimCommand)
Add a platform claim to an already-registered identity.
Migrate(MigrateCommand)
Import existing GPG or SSH keys into Auths.
BindIdp(BindIdpStubCommand)
Bind this identity to an enterprise IdP (Okta, Entra ID, Google Workspace, SAML).
Requires the auths-cloud binary on $PATH. If not installed,
prints information about Auths Cloud.
UpdateScope
Re-authorize with a platform and optionally upload SSH signing key.
Use this when you need to update OAuth scopes or re-authenticate
with a platform (e.g., GitHub). Automatically uploads the SSH signing key
if the write:ssh_signing_key scope is included.
Agent(AgentCommand)
Manage AI agents delegated by this identity (KERI delegated identifiers).
Trait Implementations§
Source§impl Clone for IdSubcommand
impl Clone for IdSubcommand
Source§fn clone(&self) -> IdSubcommand
fn clone(&self) -> IdSubcommand
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for IdSubcommand
impl Debug for IdSubcommand
Source§impl FromArgMatches for IdSubcommand
impl FromArgMatches for IdSubcommand
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Subcommand for IdSubcommand
impl Subcommand for IdSubcommand
Source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
Source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self can parse a specific subcommand