id = "woodpecker-cli" name = "woodpecker-cli" homepage = "https://woodpecker-ci.org/docs/cli" description = "CLI client for the Woodpecker Continuous Integration server" executables = ["woodpecker-cli"] [dotfiles] # The official CLI docs document contexts.json and the legacy config.json in # the user's configuration directory, with these platform-specific defaults; # XDG_CONFIG_HOME overrides the Unix base. Tokens are stored in the OS keyring, # not in either JSON file. # https://woodpecker-ci.org/docs/cli paths = [ "~/.config/woodpecker/contexts.json", "~/.config/woodpecker/config.json", "~/Library/Application Support/woodpecker/contexts.json", "~/Library/Application Support/woodpecker/config.json", "%LOCALAPPDATA%/woodpecker/contexts.json", "%LOCALAPPDATA%/woodpecker/config.json", ] secret = [] [commands] format = 1 label = "Woodpecker CLI" description = "Run a pipeline locally with exec, with the common global server options. Auth tokens (kept in the OS keyring), metadata overrides and per-backend options are not covered." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "cli-docs" kind = "manual" url = "https://woodpecker-ci.org/docs/cli" revision = "2026-10-27" evidence = """ --log-level="": set logging level (default: info) --server, -s="": server address --skip-verify: skip ssl verification (default: false) """ [[commands.field]] id = "server" label = "Server address" type = "url" option = ["--server", "-s"] sources = ["cli-docs"] [[commands.field]] id = "skip_verify" label = "Skip TLS verification" type = "boolean" option = ["--skip-verify"] sources = ["cli-docs"] [[commands.field]] id = "log_level" label = "Log level" type = "string" option = ["--log-level"] suggestions = [ { value = "debug", label = "debug" }, { value = "info", label = "info" }, { value = "warn", label = "warn" }, { value = "error", label = "error" }, ] sources = ["cli-docs"] [[commands.group]] id = "basic" label = "Basic" fields = ["server", "log_level", "skip_verify"] [[commands.subcommand]] path = ["exec"] label = "Run a pipeline locally" description = "Execute a pipeline from a local repository." [[commands.subcommand.source]] id = "cli-docs" kind = "manual" url = "https://woodpecker-ci.org/docs/cli" revision = "2026-10-27" evidence = """ --backend-engine="": backend engine to run pipelines on (default: auto-detect) --local: run from local directory (default: true) --repo-path="": path to local repository --timeout="": pipeline timeout (default: 1h0m0s) --volumes="": pipeline volumes --network="": external networks """ [[commands.subcommand.field]] id = "repo_path" label = "Repository path" type = "path" path = { kind = "directory", role = "input" } option = ["--repo-path"] sources = ["cli-docs"] [[commands.subcommand.field]] id = "timeout" label = "Pipeline timeout" description = "Duration such as 30m or 1h." type = "string" option = ["--timeout"] sources = ["cli-docs"] [[commands.subcommand.field]] id = "backend_engine" label = "Backend engine" type = "string" option = ["--backend-engine"] suggestions = [ { value = "docker", label = "docker" }, { value = "local", label = "local" }, ] sources = ["cli-docs"] [[commands.subcommand.field]] id = "volumes" label = "Volumes" type = "string" option = ["--volumes"] sources = ["cli-docs"] [[commands.subcommand.field]] id = "network" label = "External networks" type = "string" option = ["--network"] sources = ["cli-docs"] [[commands.subcommand.task]] id = "exec" label = "Run pipeline" fields = ["repo_path", "timeout"] required = [] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["repo_path", "timeout"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["backend_engine", "volumes", "network"]