id = "atuin-server"
name = "Atuin Server"
homepage = "https://docs.atuin.sh/self-hosting/server-setup/"
description = "Atuin's self-hosted sync server."
executables = ["atuin-server"]
platforms = ["macos", "linux"]
[dotfiles]
paths = ["~/.config/atuin/server.toml"]
exclude = []
secret = []
[[dotfiles.secret_paths]]
file = "~/.config/atuin/server.toml"
match = { key_path = ["db_uri"] }
[commands]
format = 1
label = "atuin-server"
description = "Start the Atuin sync server. The admin subcommands are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand]]
path = ["start"]
label = "Start the server"
description = "Bind address and port override the host and port from the server settings."
[[commands.subcommand.source]]
id = "main"
kind = "help"
url = "https://github.com/atuinsh/atuin/blob/main/crates/atuin-server/src/bin/main.rs"
revision = "main 2026-10-27"
evidence = """
/// Start the server
Start {
/// The host address to bind
host: Option<String>,
/// The port to bind
port: Option<u16>,
(clap: --host <HOST>, -p, --port <PORT>)
"""
[[commands.subcommand.field]]
id = "host"
label = "Host address"
type = "string"
option = ["--host"]
suggestions = [{ value = "127.0.0.1", label = "Localhost only" }, { value = "0.0.0.0", label = "All interfaces" }]
sources = ["main"]
[[commands.subcommand.field]]
id = "port"
label = "Port"
type = "integer"
option = ["--port", "-p"]
sources = ["main"]
[[commands.subcommand.task]]
id = "start"
label = "Start the server"
fields = ["host", "port"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["host", "port"]