Skip to content
Crow CI

Agent Settings

Core agent configuration variables.

  • Name: CROW_AGENT_CONFIG_FILE
  • Description: Agent config file path. If set empty the agent will be stateless and unregister on termination.
  • Default: /etc/crow/agent.conf

  • Name: CROW_AGENT_SECRET
  • Description: A shared secret used by server and agents to authenticate communication. A secret can be generated via openssl rand -hex 32.
  • Default: none

  • Name: CROW_AGENT_SECRET_FILE
  • Description: Filepath containing the agent secret, e.g. /etc/woodpecker/agent-secret.conf
  • Default: none

  • Name: CROW_SERVER
  • Description: gRPC address of the server.
  • Default: localhost:9000

  • Name: CROW_USERNAME
  • Description: gRPC username.
  • Default: x-oauth-basic

  • Name: CROW_HOSTNAME
  • Description: Agent hostname. Used for workflow filtering via labels: hostname: and as the default agent name if not explicitly configured.
  • Default: none

  • Name: CROW_AGENT_LABELS
  • Description: Configures custom labels for the agent, to enable workflow filtering. Accepts a list of key-value pairs like key=value,second-key=*. Agents provide three additional labels platform=os/arch, hostname=my-agent and repo=* which can be overwritten if needed.
  • Default: none

  • Name: CROW_AGENT_PRIORITY
  • Description: Agent priority for task assignment (higher values get tasks first).
  • Default: 0

  • Name: CROW_BACKEND
  • Description: Crow backend to use. Possible values are auto-detect, docker, local or kubernetes.
  • Default: auto-detect

  • Name: CROW_MAX_WORKFLOWS
  • Description: Number of parallel workflows.
  • Default: 1

  • Name: CROW_GRPC_SECURE
  • Description: Whether the connection to CROW_SERVER should be made via SSL.
  • Default: false

  • Name: CROW_GRPC_VERIFY
  • Description: Whether the grpc server certificate should be verified. Only valid when CROW_GRPC_SECURE=true.
  • Default: true

  • Name: CROW_CONNECT_RETRY_COUNT
  • Description: Number of times agent retries to connect to the server.
  • Default: 5

  • Name: CROW_CONNECT_RETRY_DELAY
  • Description: Delay between agent connection retries to the server.
  • Default: 2s

  • Name: CROW_KEEPALIVE_TIME
  • Description: With no activity after this duration, the agent pings the server to check if the transport is still alive.
  • Default: none

  • Name: CROW_KEEPALIVE_TIMEOUT
  • Description: After pinging for a keepalive check, the agent waits for this duration before closing unresponsive connections.
  • Default: 20s

  • Name: CROW_GRPC_MAX_ERROR_DURATION
  • Description: How long the agent keeps retrying gRPC calls to the server before giving up and exiting for a supervisor restart. Sized to outlast a normal server bounce (kernel auto-reboot, deploy, cert renewal) so transient outages do not cost the whole agent process. Each successful call resets the timer; only an uninterrupted error window beyond this duration triggers the exit.
  • Default: 5m

  • Name: CROW_HEALTHCHECK
  • Description: Enable healthcheck endpoint.
  • Default: true

  • Name: CROW_HEALTHCHECK_ADDR
  • Description: Healthcheck endpoint address.
  • Default: :3000

  • Name: CROW_LOG_LEVEL
  • Description: Logging level. Possible values are trace, debug, info, warn, error, fatal, panic, and disabled.
  • Default: none

  • Name: CROW_LOG_FILE
  • Description: Output destination for logs. stdout and stderr can be used as special keywords.
  • Default: stderr

  • Name: CROW_DEBUG_NOCOLOR
  • Description: Disable colored debug output.
  • Default: true

  • Name: CROW_DEBUG_PRETTY
  • Description: Enable pretty-printed debug output.
  • Default: false
  • Name: CROW_PROCLOG_SHIP_ENABLED
  • Description: Tee the agent’s zerolog output to the server for visibility in the Crow UI under Admin → Agents → Logs.
  • Default: true

  • Name: CROW_PROCLOG_LOCAL_BUFFER
  • Description: Local ring buffer size (lines) for outgoing process logs. Lines accumulated during a temporary gRPC outage are back-filled on reconnect.
  • Default: 500

  • Name: CROW_PROCLOG_BATCH_INTERVAL
  • Description: Maximum interval between batch sends to the server, regardless of buffer fill level.
  • Default: 1s

  • Name: CROW_PROCLOG_BATCH_SIZE
  • Description: Buffered-line count that triggers an immediate batch send to the server.
  • Default: 100

  • Name: CROW_PROCLOG_RATE_LIMIT
  • Description: Token-bucket refill rate (lines/sec); bucket capacity is 2× this value. Lines exceeding the limit are collapsed into a single "N dropped (rate limit)" line per second.
  • Default: 100