Automic VaultAutomic Vault

brew

Install xk6 with Homebrew, Nix

Build k6 with extensions. Version 1.4.6 via Homebrew; verified 2026-06-10.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install xk6

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#xk6

nixpkgs package indexes · pkgs/by-name/xk/xk6/package.nix · source: api.github.com

overview

Package summary

Build k6 with extensions

Commands and aliases

  • xk6

history

Project history and usage

xk6 is Grafana k6's extension-development toolbox: a command-line tool for creating extension skeletons, building custom k6 binaries, running k6 with extensions, testing extensions, linting extension projects, and sharing reusable extension workflows. In package terms it is the bridge between the stock k6 executable and the larger Go-module ecosystem of k6 extensions.

Project history

The tool grew out of k6's decision to keep the core load-testing runtime small while letting users compile in Go-based extensions. The current Grafana repository presents xk6 as the official toolbox for extension authors and lists its main jobs as scaffolding, building, running, testing, linting, reusable workflows, Docker use, and development-container support.

xk6's command surface has expanded from the basic custom-builder role into a fuller extension workflow. Its README documents commands such as `xk6 new`, `xk6 build`, `xk6 run`, `xk6 lint`, `xk6 test`, and `xk6 sync`; the build command also handles extension module paths, replacements, target OS/architecture, k6 forks, and k6 major-version resolution.

Adoption history

xk6 became important because many useful k6 capabilities live outside the default binary. Grafana's extension documentation tells users that official and community extensions may be resolved automatically in newer k6 releases, but that other extensions, including private or newly-created ones, still require building a custom k6 binary with xk6.

The tool is therefore part of the normal path for k6 users who need SQL outputs, custom protocols, test helpers, private modules, or experimental APIs before they are available in the main k6 release. Grafana also publishes an xk6 Docker image so users can build custom binaries without first setting up a local Go toolchain.

How it is used

Typical use is `xk6 build --with module[@version]` to produce a custom `k6` executable containing one or more extensions. Extension developers also use `xk6 run` to rebuild and execute during development, `xk6 new` to create a template project, and `xk6 lint` or `xk6 test` to check extension compliance.

xk6 is most relevant when the desired extension is not handled by k6 automatic extension resolution, when an output extension is involved, when the extension is private, or when the user needs to pin or replace Go modules during a custom build.

Why package nerds care

xk6 is a package-nerd example of a small CLI that exists to manufacture another CLI. Its value is not in running load tests directly, but in making reproducible, module-aware k6 binaries from Go extension packages.

It also shows how modern developer tools push extension distribution into language package ecosystems: the package manager installs xk6, xk6 asks Go for modules, and the result is a custom executable tailored to a testing stack.

Timeline

  • 2020: Public support discussions show users installing and troubleshooting xk6 for custom k6 builds.
  • 2021-2022: Grafana community answers routinely recommend `xk6 build ... --with ...` for extension-based k6 binaries.
  • 2025: The Grafana xk6 repository records v0.x development and documents xk6 as a broader extension-development toolbox, not only a builder.
  • 2026: Grafana k6 documentation still directs users to xk6 for custom binaries when automatic extension resolution is not enough.

Related projects

  • k6 is the load-testing runtime that xk6 builds. The surrounding ecosystem includes Grafana's k6 extension registry, xk6 extension template repositories, and individual extensions such as xk6-sql, xk6-output-influxdb, xk6-faker, and xk6-disruptor.

security posture

No protected-tool coverage found yet

No matching local secret-handling manifest was found for xk6. Nucleus package metadata is still published here so future coverage has a stable package URL.

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 3 runtime dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
xk6cliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.4.6
manager updated2026-06-10
local dataok
upstreamcurrent
latest detectedv1.4.6

https://github.com/grafana/xk6

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:xk6
Version1.4.6
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/xk6
Homepagehttps://k6.io
Repositoryhttps://github.com/grafana/xk6
Upstream docshttps://github.com/grafana/xk6/blob/master/README.md
LicenseApache-2.0
Source archivehttps://github.com/grafana/xk6/archive/refs/tags/v1.4.6.tar.gz
Last updated2026-06-10T10:42:12Z
Pulseupdated
Dependenciesgo, gosec, govulncheck
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namexk6
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

xk6

nix profile install nixpkgs#xk6
  • normalized package name match
  • Matched by: Xk6
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/xk/xk6/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment