{"id":13644491,"url":"https://github.com/buildkite/agent","last_synced_at":"2026-04-09T06:02:14.027Z","repository":{"id":13653657,"uuid":"16347164","full_name":"buildkite/agent","owner":"buildkite","description":"The Buildkite Agent is an open-source toolkit written in Go for securely running build jobs on any device or network","archived":false,"fork":false,"pushed_at":"2025-12-11T06:27:42.000Z","size":66587,"stargazers_count":900,"open_issues_count":197,"forks_count":327,"subscribers_count":41,"default_branch":"main","last_synced_at":"2025-12-11T13:33:37.765Z","etag":null,"topics":["buildkite","cicd","continuous-delivery","continuous-deployment","continuous-integration","docker","go","llamas"],"latest_commit_sha":null,"homepage":"https://buildkite.com/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/buildkite.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-01-29T14:31:28.000Z","updated_at":"2025-12-11T12:34:22.000Z","dependencies_parsed_at":"2024-05-13T01:24:17.657Z","dependency_job_id":"06552459-dcc1-493b-84a1-e8b912f4a231","html_url":"https://github.com/buildkite/agent","commit_stats":{"total_commits":5392,"total_committers":212,"mean_commits":"25.433962264150942","dds":0.7650222551928784,"last_synced_commit":"4295afa835b264aeff1ee816af2e782a1b0771ab"},"previous_names":["buildbox/agent","buildboxhq/agent-go","buildboxhq/buildbox-agent"],"tags_count":344,"template":false,"template_full_name":null,"purl":"pkg:github/buildkite/agent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildkite%2Fagent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildkite%2Fagent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildkite%2Fagent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildkite%2Fagent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/buildkite","download_url":"https://codeload.github.com/buildkite/agent/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buildkite%2Fagent/sbom","scorecard":{"id":257639,"data":{"date":"2025-08-11","repo":{"name":"github.com/buildkite/agent","commit":"3a32d30d117f89d2c5989867ebd47a597568df48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":6.2,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":10,"reason":"project is fuzzed","details":["Info: GoBuiltInFuzzer integration found: internal/replacer/replacer_test.go:369"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":5,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: required approving review count is 1 on branch 'main'","Warn: codeowners review is not required on branch 'main'","Warn: 'last push approval' is disabled on branch 'main'","Info: status check found to merge onto on branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v3.103.1 not signed: https://api.github.com/repos/buildkite/agent/releases/238168838","Warn: release artifact v3.103.0 not signed: https://api.github.com/repos/buildkite/agent/releases/234105272","Warn: release artifact v3.102.2 not signed: https://api.github.com/repos/buildkite/agent/releases/232378083","Warn: release artifact v3.102.1 not signed: https://api.github.com/repos/buildkite/agent/releases/232101118","Warn: release artifact v3.102.0 not signed: https://api.github.com/repos/buildkite/agent/releases/231027879","Warn: release artifact v3.103.1 does not have provenance: https://api.github.com/repos/buildkite/agent/releases/238168838","Warn: release artifact v3.103.0 does not have provenance: https://api.github.com/repos/buildkite/agent/releases/234105272","Warn: release artifact v3.102.2 does not have provenance: https://api.github.com/repos/buildkite/agent/releases/232378083","Warn: release artifact v3.102.1 does not have provenance: https://api.github.com/repos/buildkite/agent/releases/232101118","Warn: release artifact v3.102.0 does not have provenance: https://api.github.com/repos/buildkite/agent/releases/231027879"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":8,"reason":"dependency not pinned by hash detected -- score normalized to 8","details":["Warn: goCommand not pinned by hash: .buildkite/Dockerfile-compile:4","Warn: goCommand not pinned by hash: scripts/generate-acknowledgements.sh:23","Info:  10 out of  10 containerImage dependencies pinned","Info:   3 out of   5 goCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":8,"reason":"2 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GO-2022-0635","Warn: Project is vulnerable to: GO-2022-0646"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T10:03:21.125Z","repository_id":13653657,"created_at":"2025-08-17T10:03:21.125Z","updated_at":"2025-08-17T10:03:21.125Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27748687,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-15T02:00:09.782Z","response_time":96,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["buildkite","cicd","continuous-delivery","continuous-deployment","continuous-integration","docker","go","llamas"],"created_at":"2024-08-02T01:02:05.937Z","updated_at":"2026-04-01T16:41:26.837Z","avatar_url":"https://github.com/buildkite.png","language":"Go","readme":"# Buildkite Agent\n\n![Build status](https://badge.buildkite.com/08e4e12a0a1e478f0994eb1e8d51822c5c74d395.svg?branch=main)\n[![Go Reference](https://pkg.go.dev/badge/github.com/buildkite/agent/v3.svg)](https://pkg.go.dev/github.com/buildkite/agent/v3)\n\nThe buildkite-agent is a small, reliable, and cross-platform build runner that\nmakes it easy to run automated builds on your own infrastructure. It’s main\nresponsibilities are polling [buildkite.com](https://buildkite.com/) for work,\nrunning build jobs, reporting back the status code and output log of the job,\nand uploading the job's artifacts.\n\nFull documentation is available at\n[buildkite.com/docs/agent](https://buildkite.com/docs/agent).\n\n```text\n$ buildkite-agent --help\nUsage:\n\n  buildkite-agent \u003ccommand\u003e [options...]\n\nAvailable commands are:\n\n  acknowledgements  Prints the licenses and notices of open source software incorporated into this software.\n  start             Starts a Buildkite agent\n  annotate          Annotate the build page within the Buildkite UI with text from within a Buildkite job\n  annotation        Make changes to an annotation on the currently running build\n  artifact          Upload/download artifacts from Buildkite jobs\n  env               Process environment subcommands\n  lock              Process lock subcommands\n  meta-data         Get/set data from Buildkite jobs\n  oidc              Interact with Buildkite OpenID Connect (OIDC)\n  pipeline          Make changes to the pipeline of the currently running build\n  step              Get or update an attribute of a build step\n  bootstrap         Run a Buildkite job locally\n  help              Shows a list of commands or help for one command\n\nUse \"buildkite-agent \u003ccommand\u003e --help\" for more information about a command.\n```\n\n## Dependencies\n\nThe agent is fairly portable and should run out of the box on most supported\nplatforms without extras. On Linux hosts it requires `dbus`.\n\n## Installing\n\n[The agents page](https://buildkite.com/organizations/-/agents) on Buildkite has\npersonalised instructions, or you can refer to\n[the Buildkite docs](https://buildkite.com/docs/agent/v3/installation). Both\ncover installing the agent with Ubuntu (via apt), Debian (via apt), macOS (via\nhomebrew), Windows and Linux.\n\n### Docker\n\nWe also support and publish\n[Docker Images](https://hub.docker.com/r/buildkite/agent) for the following\noperating systems. Docker images are tagged using the agent SemVer components\nfollowed by the operating system.\n\nFor example, agent version 3.45.6 is published as:\n\n- 3-ubuntu-20.04, tracks minor and bugfix updates in version 3 installed in\n  Ubuntu 20.04\n- 3.45-ubuntu-20.04, tracks bugfix updates in version 3.45 installed in Ubuntu\n  20.04\n- 3.45.6-ubuntu-20.04, tracks the exact version installed in Ubuntu 20.04\n\n#### Supported operating systems\n\n- Alpine 3.18\n- Ubuntu 20.04 LTS (x86_64), supported to end of standard support for 20.04\n- Ubuntu 22.04 LTS (x86_64), supported to end of standard support for 22.04\n- Ubuntu 24.04 LTS (x86_64), supported to end of standard support for 24.04\n\n## Starting\n\nTo start an agent all you need is your agent token, which you can find on your\nAgents page within Buildkite, and a build path. For example:\n\n```bash\nbuildkite-agent start --token=\u003cyour token\u003e --build-path=/tmp/buildkite-builds\n```\n\n### Telemetry\n\nBy default, the agent sends some information back to the Buildkite mothership on\nwhat features are in use on that agent. Nothing sensitive or identifying is sent\nback to Buildkite, but if you want, you can disable this feature reporting by\nadding the `--no-feature-reporting` flag to your `buildkite-agent start` call.\nFeatures that we track can be found inside\n[AgentStartConfig.Features](https://github.com/search?q=repo%3Abuildkite%2Fagent+language%3Ago+symbol%3AAgentStartConfig.Features+\u0026type=code).\n\n## Development\n\nThese instructions assume you are running a recent macOS, but could easily be\nadapted to Linux and Windows.\n\n```bash\n# Make sure you have Go installed.\nbrew install go\n\n# Download the code somewhere - no GOPATH required.\ngit clone https://github.com/buildkite/agent.git\ncd agent\n\n# Create a temporary builds directory.\nmkdir /tmp/buildkite-builds\n\n# Build an agent binary and start the agent.\ngo build -o /usr/local/bin/buildkite-agent .\nbuildkite-agent start --debug --build-path=/tmp/buildkite-builds --token \"abc\"\n\n# Or, run the agent directly and skip the build step.\ngo run *.go start --debug --build-path=/tmp/buildkite-builds --token \"abc\"\n```\n\n### Go Version and Dependency Management\n\nThe latest agent version is typically compiled with the highest-numbered stable\nrelease of Go. Previous Go versions may work, but are not guaranteed to. We are\nusing newer language features such as generics, so compiling on Go \u003c 1.18 will\nfail.\n\nWe're using [Go Modules](https://github.com/golang/go/wiki/Modules) to manage\nour Go dependencies. Dependencies are not\n[vendored](https://go.dev/ref/mod#go-mod-vendor) into the repository unless\nnecessary.\n\nThe Go module published by this repo (i.e. the one you could use by adding `import \"github.com/buildkite/agent/v3\"` to your code)\nis **not considered to be versioned using semantic versioning**. Breaking changes may be introduced in minor releases. Use\nthe agent as a runtime depedency of your Go app at your own risk.\n\n## Platform Support\n\nWe provide support for security and bug fixes on the current major release\nonly.\n\nOur architecture and operating system support is primarily limited by\n[what Go itself supports](https://github.com/golang/go/wiki/MinimumRequirements).\n\n### Architecture Support\n\nWe offer support for the following machine architectures (inspired by the Rust\nlanguage platform support guidance).\n\n#### Tier 1, guaranteed to work\n\n- linux x86_64\n- linux arm64\n- windows x86_64\n\n#### Tier 2, guaranteed to build\n\n- linux x86\n- windows x86\n- darwin x86_64\n- darwin arm64\n\n#### Tier 3, community supported\n\nWe release binaries for various other platforms, and it should be possible to\nbuild the agent anywhere supported by Go, but official support is not provided\nfor these Tier 3 platforms.\n\n### Operating System Support\n\nWe currently provide support for running the Buildkite Agent on the following\noperating systems. Future _minor_ releases may drop support for end-of-life\noperating systems (typically as they become unsupported by the latest stable Go\nrelease).\n\nThe agent binary is fairly portable and should run out of the box on most UNIX\nlike systems, as well as Windows.\n\n- Ubuntu 20.04 and newer\n- Debian 8 and newer\n- Red Hat RHEL 7 and newer\n- CentOS\n  - CentOS 7\n  - CentOS 8\n- Amazon Linux 2\n- macOS [^1]\n  - 12 (Monterey)\n  - 13 (Ventura)\n  - 14 (Sonoma)\n  - 15 (Sequoia)\n  - 26 (Tahoe)\n- Windows [^2]\n  - 10\n  - 11\n  - Server 2016\n  - Server 2019\n  - Server 2022\n\n[^1]: See https://github.com/golang/go/issues/23011 for macOS / Go support and\n[Supported macOS Versions](./docs/macos.md) for the last supported version of the\nBuildkite Agent for versions of macOS prior to those listed above.\n\n[^2]: See [Go's Windows support page](https://go.dev/wiki/Windows) for Go / Windows version\ncompatibility and [Supported Windows Versions](./docs/windows.md) for the last supported version\nof the Buildkite Agent for versions of Windows prior to those listed above.\n\n## Contributing\n\nSee [./CONTRIBUTING.md](./CONTRIBUTING.md)\n\n## Contributors\n\nMany thanks to\n[our fine contributors](https://github.com/buildkite/agent/graphs/contributors)!\nYou're all amazing, and we greatly appreciate your input ❤️\n\n## Copyright\n\nCopyright (c) 2014-2023 Buildkite Pty Ltd.\nSee [LICENSE](./LICENSE.txt) for details.\n","funding_links":[],"categories":["Go","go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbuildkite%2Fagent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbuildkite%2Fagent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbuildkite%2Fagent/lists"}