NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules · #2319 by repository stars
Last release today
07 Oct 2026
Ships on a steady schedule
a new release about every 1 weeks
Nearly every release is documented
notes for 34 of 34 stable releases
Nothing withdrawn
no release was ever pulled
6 months old
116 releases · first in 2026
One column per month.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Breaking changes: Cloud stack creation
gcx cloud stacks create now requires --org <org-slug>, includingname, orgSlug,slug, status, and url in every output format. Usegcx cloud stacks get <slug> -o json for full details. Dry runs still--org and --name; stack slugs retainUpdate scripts before upgrading:
# Add the explicit destination organisation to existing create commands.
gcx cloud stacks create --org example-org --name demo --slug demo --region us --dry-run
# After creation, retrieve fields omitted from the concise result.
gcx cloud stacks get demo -o jsongcx cloud orgs list to show organisation slugs and membership rolesprofile. Rerun gcx cloud login ifgcx cloud stacks get <slug> with the same config/context before retrying:cloud stacks list; that command--org before this release.spec.folderUid in check manifests,--since or --from/--to can speed up trace-ID lookup.Nothing published for this version
Nothing published for this version
Nothing published for this version
Add gcx metrics search metric-names/label-names/label-values and gcx datasources prometheus search-metric-names/search-label-names/search-label-values
Metrics and traces
gcx metrics search metric-names/label-names/label-values andgcx datasources prometheus search-metric-names/search-label-names/search-label-values,gcx traces get andgcx datasources tempo get: --filter keeps the spans that match a TraceQL--keep-hierarchy, --match-depth and--ancestor-depth; --prune (with --prune-group-by, --prune-min-spans,--prune-max-parent-depth) collapses repeated sibling spans. Both are off--llm analysis (#1250)Authentication and configuration
gcx login (#1389)Agent Observability
gcx agento11y model-rates to set your own negotiated model prices (#1377)Synthetic Monitoring and IRM
gcx synthetic-monitoring queries list/get for named queries (#1373)Application Observability
gcx appo11y operations list/get (#1334)Security and debugging
--insecure-log-http-payload dumps now run at the innermost transport layerhttp request dump and http response dump, includeContent-Length and Accept-Encoding in request dumps, report why a dump-vvv) (#1190)Docs and internals
Nothing published for this version
Nothing published for this version
Nothing published for this version
Use gcx resources push and pull for new SLO workflows. Generic push matches natural keys. Deprecated SLO wrappers match UUIDs only
Synthetic Monitoring
Datasources and queries
Dashboards, Assistant, and Agent Observability
Application Observability
SLO, Fleet, and skills
gcx resources push and pull for new SLO workflows. Generic pushSecurity and telemetry
Other
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Using --token still works but it is deprecated and hidden from help
Breaking changes
Keychain unavailable error in this scenario. A locked, as opposed to absent, keychain already failed closed and is unchanged. Set GCX_KEYCHAIN=off to opt in to a plaintext write. (#1271)gcx fleet. gcx will need write permissions when using the OAuth flow for all gcx fleet commands. Users will need grafana-collector-app:read for named routes, and wildcard routes need the Admin role or grafana-collector-app:admin, including some read-only commands such as tenant get-limits. (#1261)gcx synthetic-monitoring probes deploy emits different manifests, and the probe token is now provided through a Kubernetes Secret, defined by the SM_AGENT_API_TOKEN environment variable. To use this, regenerate the manifests and update anything that read the token out of the Deployment arguments before applying. Using --token still works but it is deprecated and hidden from help (#1262)gcx synthetic-monitoring probes reset-token now returns the new token value instead of just confirming the reset. The value is in gcx.synth.probe_token_reset. Anything parsing the previous result shape needs updating (#1262)gcx irm oncall schedules list-final-shifts takes a --timezone flag and sends the timezone of the schedule, rather than the host. Without the --timezone flag it now uses the schedule's timezone, falling back to UTC with a warning if the schedule does not have a timezone set. (#1187)Datasources and queries
gcx profiles series for series discovery (#1086)-o dot call-graph output to gcx profiles query (#1122)gcx traces baseline command (#1168)Alerting and IRM
gcx alert state-history and notification history (#1296, #1258)gcx irm incidents update, and honour incident severity (#1191)alert-groups list --limit 0 now returns every alert group (#1213)Configuration and credentials
credentials.keychain policy (#1266)GCX_KEYCHAIN to disable the OS credential store (#1242)Agent Observability and Instrumentation
gcx agento11y experiments pull for experiment bundles (#1267)gcx agento11y rules list-scores for online scores (#1226)--fix-plan to gcx instrumentation check (#1115)Telemetry
api command usage by route, method, and type (#1094)canceled (#1109)Fixes
create -f and update -f accept the K8s envelope that gcx itself prints, instead of discarding every field of the file (#1187)--jq now works together with -o agents (#1287)extraLogLabels under the label field (#1238)Other
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
A locked OS keychain is now its own fatal failure class ( Keychain locked ). gcx stops credential-consuming commands instead of falling back to a plai
Breaking changes
Keychain locked). gcx stops credential-consuming commands instead of falling back to a plaintext write, and the error explains how to unlock the keychain for the session (#1142)gcx assistant dashboard subcommand (#1230)New features
gcx dbo11y instances list and gcx dbo11y instances get <name> (#1199)Fixes
--agent-id default from assistant help text (#1232)Other
Nothing published for this version
Add support for the MySQL and Postgres datasources ( #970 , #969 )
Datasources
gcx traces diff command (#1165)Providers
gcx irm incidents get-pir for post-incident reviews (#1163)otlpIngestEndpointURL from frontend applications (#1223)Login and configuration
--oauth-manual for hosts without a reachable callback (#1136)gcx config check to one explicit context (#1155)Fixes
otlp_url and otlp_username in the cluster configuration (#1198)Performance
Other
Datasources
gcx traces diff command (#1165)Providers
gcx irm incidents get-pir for post-incident reviews (#1163)otlpIngestEndpointURL from frontend applications (#1223)Login and configuration
--oauth-manual for hosts without a reachable callback (#1136)gcx config check to one explicit context (#1155)Fixes
otlp_url and otlp_username in the cluster configuration (#1198)Performance
Other
Detect the pi coding agent harness for agent mode (#1208)
Report the batch resource volume as size buckets (#1108)
Add a Grafana version support policy to the documentation (#1197)
Regenerate the command line interface reference (#1224)
irm: gcx irm oncall alert-groups list --limit 0 returns every matching alert group instead of stopping at 1000, and --limit N above 1000 is honored (#1157).
instrumentation: app and service writes (clusters apps configure/remove, services include/exclude/clear) no longer fail with otlp_url is required.
Nothing published for this version
Nothing published for this version
Nothing published for this version
gcx agento11y collections add-conversations and gcx agento11y collections remove-conversation emit type: gcx.agento11y.collection_membership instead o
Breaking changes
gcx agento11y collections add-conversations and gcx agento11y collections remove-conversation emit type: gcx.agento11y.collection_membership instead of gcx.aio11y.collection_membership. schema_version stays 1. No fields changed. Scripts that read type must accept the new value.New features
gcx profiles data-range for Pyroscope ingestion health.data-range command under gcx datasources pyroscope.gcx instrumentation explain and list-explanations for the finding explanations that ship with otel-checker (now v0.3.1).EXPLAIN_ID column to gcx instrumentation check table output, and an explain_id field to its JSON output. Pass the value to gcx instrumentation explain.gcx assistant investigations list-evidence.investigations get.gcx metrics list-names.Improvements
gcx config check.target_kind in usage telemetry events.Fixes
gcx dev serve exit on Ctrl-C.AllowsEdits so gcx-managed dashboards stay editable in the UI.configType in Fleet so OTel pipelines round-trip.redact with {id, regex}.rule_id from the rules update PATCH body.Internal
aio11y Go package to agento11y.integrate-with-gcx and review-pr contributor skills.GCX_AGENT_MODE=false for the test tasks.internal/datasources.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
alert: add ruler subtree for datasource-managed rule writes
entities correlate to resolve entities from alert labelskg quality), folded into kg diagnoseNothing published for this version
Naming convergence: verb-first subcommand renames across all providers (e.g. versions → list-versions , create → upsert , summary → stats )
versions→list-versions, create→upsert, summary→stats)profile-types renamed to list-profile-types at both mountscreate/update/apply aliases from templates upsert--dry-run for model-rules and prom-rules upsertlabels and list-profile-types--config across the direct command tree--config in direct agento11y CRUD commandsNothing published for this version
Register the Assistant as a first-class provider, moving mcp-servers into the resources pipeline
mcp-servers into the resources pipelineaio11y command tree and skills to agento11yagento11y-eval-starter skill to agento11y-test-starteragento11y-instrument skill (setup → instrument → verify loop)agento11y-prod-setup skill for production evals and guardsagento11y-test-starter starter skillexplore-datasources skill--top totals to exclude the pre-window boundary pointprom-rules schema command and --dry-run to suppressions create--json discovery and selection--jq runtime errorslogin cloud followup flowdev import code from actual usage--llm flag experimental and document its Accept headerNothing published for this version
Nothing published for this version
Add full CRUD lifecycle for datasources (create, update, delete, health, schemas)
--name filter to datasources listgcx cloud login (grafana.com), marked experimentaldryRunassistant mcp-servers command groupx-client-id header to Synthetic Monitoring requests/bootdata namespace validation when stack-id is set (faster config load)vendor/ requirementNothing published for this version
Query: fall back to /api/ds/query on any non-200 from the k8s query API
/api/ds/query on any non-200 from the k8s query APIagent.availability annotationexplorer.exe so the login URL survivesAdd Athena datasource provider (query, list catalogs/databases/tables, describe-table)
Breaking: --log-http-payload has been renamed to --insecure-log-http-payload . The old flag name now exits with an error naming the replacement. Paylo
--log-http-payload has been renamed to --insecure-log-http-payload. The old flag name now exits with an error naming the replacement. Payload-dump behavior is unchanged — credentials, cookies, OAuth refresh tokens, and request bodies still appear in the dump when the flag is set. A startup warning is now printed to stderr when the flag is active.gcx dev serve --address now defaults to 127.0.0.1 (loopback) instead of 0.0.0.0. Users who need LAN or remote access should pass --address 0.0.0.0 explicitly. The WebSocket livereload endpoint now rejects cross-origin requests from hosts other than localhost, 127.0.0.1, [::1], or the configured listen address.gcx dev lint --rules can no longer call http.send, any net.* builtin, or opa.runtime. No flag is provided to re-enable them. Bundled rules are unaffected.--jq for inline JSON transformation and improved agent-mode hints.gcx cloud stacks command group.gcx instrumentation check diagnostics.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Added gcx assistant conversation list and gcx assistant conversation get to inspect Assistant conversations and transcripts.
gcx assistant conversation list and gcx assistant conversation get to inspect Assistant conversations and transcripts.gcx kg rules to gcx kg prom-rules to align with model-rules and relabel-rules.gcx kg relabel-rules get for prologue, epilogue, and generated rule groups.kg diagnose verdicts so failing checks no longer report a healthy service, and reclassify scoped no-data checks as label-scope warnings when unscoped data exists.@claude triggers to trusted repository associations.gcx traces get --llm -o json for full-trace analysis.Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →