Crow publishes pre-built agent binaries for macOS, Linux and Windows.
They exist for one purpose only: running an agent with the local backend, which executes pipeline commands directly on the host instead of in a container.
The snippets below resolve the newest release through the forge API.
Set TAG to something like v6.4.0 instead to pin a specific release, and ARCH to your architecture.
crow-agent_windows_amd64.zip is published for the same reasons, plus the autoscaler, which downloads it onto Windows VMs.
Windows agents normally run the docker backend rather than the local one: see Windows Agents.
Only plain tarballs are published, and that is deliberate.
Packaging the agent for a distribution, or shipping a ready-made systemd unit, presents host installation as an equally supported alternative to the container agent.
It is not: everything in the box at the top of this page still applies, and the resulting agent is markedly less capable and less contained than a container one.
Users who install from a distribution package reasonably expect the two to be interchangeable, and then hit the missing plugin and isolation guarantees later, in production.
If you need the agent supervised on Linux, wire the binary into whatever service manager you already run.
Give it its own unprivileged user, keep that user away from anything the pipelines should not reach, and do not run it as root.
# Create working directoriessudo mkdir -p /usr/local/var/crow-agent /usr/local/var/log# Set proper permissions on the plist filesudo chown root:wheel /Library/LaunchDaemons/crowci.agent.plistsudo chmod 644 /Library/LaunchDaemons/crowci.agent.plist# Load and start the service (bootstrap will start it automatically)sudo launchctl bootstrap system /Library/LaunchDaemons/crowci.agent.plist# Verify the service is runningsudo launchctl list | grep crowci# View logstail -f /usr/local/var/log/crow-agent.logtail -f /usr/local/var/log/crow-agent-error.log
Maximum security with minimal permissions.
Denies network access and restricts file operations to workflow directories only.
Use for highly sensitive workloads requiring maximum isolation.