id = "radicle"
name = "Radicle"
homepage = "https://radicle.xyz"
description = "Peer-to-peer code collaboration stack."
executables = ["rad"]
[dotfiles]
paths = ["~/.radicle/config.json"]
secret = ["~/.radicle/keys/"]
side_effect = false
[commands]
format = 1
label = "Use Radicle repositories"
description = "Clone a repository by ID, list replicated repositories, or start the local node. Auth, issues, patches and identity commands are not covered."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.subcommand]]
path = ["clone"]
label = "Clone a repository"
description = "Clone a Radicle repository by its rad: ID."
[[commands.subcommand.source]]
id = "man"
kind = "manual"
url = "https://github.com/radicle-dev/heartwood/blob/master/rad.1.adoc"
revision = "master 2026-10-27"
evidence = '''
$ rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5
behavior can be changed by passing *--scope followed* when cloning.
'''
[[commands.subcommand.field]]
id = "rid"
label = "Repository ID"
description = "A rad:z… identifier."
type = "string"
position = 0
min = 1
sources = ["man"]
[[commands.subcommand.field]]
id = "scope"
label = "Seeding scope"
description = "followed limits updates to peers you follow; the default subscribes to all peers."
type = "string"
option = ["--scope"]
suggestions = [{ value = "followed", label = "followed" }]
sources = ["man"]
[[commands.subcommand.task]]
id = "clone"
label = "Clone a repository"
fields = ["rid", "scope"]
required = ["rid"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["rid", "scope"]
[[commands.subcommand]]
path = ["ls"]
label = "List repositories"
description = "List repositories replicated on this node."
[[commands.subcommand.source]]
id = "man"
kind = "manual"
url = "https://github.com/radicle-dev/heartwood/blob/master/rad.1.adoc"
revision = "master 2026-10-27"
evidence = '''
You can see all replicated and locally-available repositories using:
$ rad ls --all
'''
[[commands.subcommand.field]]
id = "all"
label = "Include all locally available repositories"
type = "boolean"
option = ["--all"]
sources = ["man"]
[[commands.subcommand.task]]
id = "ls"
label = "List everything"
fields = ["all"]
required = []
set = { all = [true] }
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["all"]
[[commands.subcommand]]
path = ["node", "start"]
label = "Start the node"
description = "Start the local Radicle node; it runs in the foreground unless daemonized."
[[commands.subcommand.source]]
id = "man"
kind = "manual"
url = "https://github.com/radicle-dev/heartwood/blob/master/rad.1.adoc"
revision = "master 2026-10-27"
evidence = '''
$ rad node start
This will start the node in the foreground. Simply add *--daemon* to run the node in the background.
'''
[[commands.subcommand.field]]
id = "daemon"
label = "Run in the background"
type = "boolean"
option = ["--daemon"]
sources = ["man"]
[[commands.subcommand.task]]
id = "start"
label = "Start in the background"
fields = ["daemon"]
required = []
set = { daemon = [true] }
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["daemon"]