pub enum Command {
KeyGen(KeyGenArgs),
Whoami(WhoamiArgs),
Config(ConfigArgs),
Probe(ProbeArgs),
Gateway(Box<GatewayArgs>),
Get(Box<GetArgs>),
Setup(SetupArgs),
Node(NodeArgs),
Origin(OriginArgs),
Pool(PoolArgs),
Publish(PublishArgs),
Appeal(AppealArgs),
}Expand description
Available subcommands. There is intentionally no run subcommand —
running the daemon is decdn-node run (issue #421). For a dry-run
resolution of the daemon’s startup config without binding ports,
see ConfigValidateArgs (decdn config validate), which
flattens the same RunArgs the daemon parses.
Variants§
KeyGen(KeyGenArgs)
Generate a new Ed25519 node key and Ethereum keystore.
Whoami(WhoamiArgs)
Print the local identity read-only: iroh node id, eth address, and the resolved key paths. Generates and rotates nothing.
Config(ConfigArgs)
Manage configuration files (init, validate).
Probe(ProbeArgs)
Probe a running node over the cdn/probe/v1 ALPN.
Gateway(Box<GatewayArgs>)
Serve decdn: URIs to a browser from a loopback HTTP gateway, paid
with the scoped capabilities pages and the token holder register.
Get(Box<GetArgs>)
Pull what a decdn: URI names: a blob (decdn:<hash>), a whole bundle
(decdn:<hash>/), or one bundle entry (decdn:<hash>/<path>), over the
paid cdn/client/v1 path, paying per-MB from a PaymentPool.
Setup(SetupArgs)
Guided node onboarding (ADR 019 Phases 1–2): pre-flight checks,
key generation, bond, and on-chain registration, with a final
readiness summary. Thin orchestration over key-gen / node bond /
node register — submits no transaction the primitives don’t.
Node(NodeArgs)
Operator-local admin commands that query a running node
over its loopback HTTP surface (appendix-local-admin-http.md).
Origin(OriginArgs)
Seed a cache origin store from local content (import) — offline,
config-free filesystem work that writes each blob’s sharded data object
and its {hex}.obao4 outboard in the layout the daemon reads (ADR 037).
Pool(PoolArgs)
Client-side payment-pool lifecycle (list/status, open, top-up,
close, reclaim, assign).
Publish(PublishArgs)
Publisher control plane: create namespaces, and seat or unseat authorized origins on-chain (issues #1029 / #1491). Content is bound to a namespace off-chain at fetch time, so there is no per-hash on-chain claim.
Appeal(AppealArgs)
File a slash appeal, posting the appeal bond (ADR 028).
Trait Implementations§
Source§impl FromArgMatches for Command
impl FromArgMatches for Command
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 Command
impl Subcommand for Command
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 subcommandAuto Trait Implementations§
impl Freeze for Command
impl RefUnwindSafe for Command
impl Send for Command
impl Sync for Command
impl Unpin for Command
impl UnsafeUnpin for Command
impl UnwindSafe for Command
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more