Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Enable telemetry without env var#13254

Merged
williammartin merged 1 commit into
trunkfrom
wm/enable-telemetry
Apr 22, 2026
Merged

Enable telemetry without env var#13254
williammartin merged 1 commit into
trunkfrom
wm/enable-telemetry

Conversation

@williammartin
Copy link
Copy Markdown
Member

@williammartin williammartin commented Apr 21, 2026

Description

Removes the env var that gates telemetry, so it will be on by default.

See https://cli.github.com/telemetry for everything around this.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes the GH_PRIVATE_ENABLE_TELEMETRY environment variable gate so telemetry behavior is controlled by existing telemetry configuration (and still disabled for likely GHES users), and updates acceptance fixtures accordingly.

Changes:

  • Remove GH_PRIVATE_ENABLE_TELEMETRY gating from CLI startup telemetry initialization.
  • Update telemetry-related acceptance .txtar fixtures to stop setting GH_PRIVATE_ENABLE_TELEMETRY.
  • Keep GHES-user detection as a hard disable for telemetry.
Show a summary per file
File Description
internal/ghcmd/cmd.go Removes the GH_PRIVATE_ENABLE_TELEMETRY check so telemetry can be enabled via existing config/env (GH_TELEMETRY) without the private flag.
acceptance/testdata/telemetry/telemetry-for-official-extension-stub.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/telemetry-failure-does-not-break-command.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/no-telemetry-for-send-telemetry.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/no-telemetry-for-ghes-user.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/no-telemetry-for-extension.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/no-telemetry-for-completion.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/no-telemetry-for-alias.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/telemetry/command-invocation.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup.
acceptance/testdata/skills/skills-preview.txtar Drops now-unnecessary GH_PRIVATE_ENABLE_TELEMETRY env setup for skill telemetry fixture.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 10/10 changed files
  • Comments generated: 1

Comment thread acceptance/testdata/skills/skills-preview.txtar
@babakks babakks force-pushed the wm/enable-telemetry branch from 9778a80 to 90ef03e Compare April 21, 2026 17:41
mimiqdev

This comment was marked as spam.

mimiqdev

This comment was marked as spam.

@williammartin williammartin merged commit 6fffc2e into trunk Apr 22, 2026
11 checks passed
@williammartin williammartin deleted the wm/enable-telemetry branch April 22, 2026 10:16
@Crefix
Copy link
Copy Markdown

Crefix commented Apr 22, 2026

Mate, you're based on NL and with a leadership position... How dare to betray your EU peers? No way this is legal (nor required) 😪

Related

@NeckBeardPrince
Copy link
Copy Markdown

The enshittification continues.

@bhargavkulk
Copy link
Copy Markdown

Why are these things done without any community input? Such telemetry options should always be opt-in and not opt-out. Very scummy behavior.

@NeckBeardPrince
Copy link
Copy Markdown

Why are these things done without any community input? Such telemetry options should always be opt-in and not opt-out. Very scummy behavior.

Micro$oft

@mrt181
Copy link
Copy Markdown

mrt181 commented Apr 23, 2026

Why are these things done without any community input? Such telemetry options should always be opt-in and not opt-out. Very scummy behavior.

Micro$oft

You mean Microslop

Comment thread internal/ghcmd/cmd.go
telemetryService = &telemetry.NoOpService{}
default:
telemetryState := telemetry.ParseTelemetryState(cfg.Telemetry().Value)
telemetryDisabled := os.Getenv("GH_PRIVATE_ENABLE_TELEMETRY") == "" || mightBeGHESUser(cfg)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, I have a minor code review nit: What the hell is this?

There isn't even an opt-out. Please add a note to the changelog saying "we scrape your data unconditionally now" so users can make an informed decision.

Copy link
Copy Markdown

@RickyNotaro RickyNotaro Apr 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you could understand the code you are reading, you would realise that the telemetryState variable is fed from ParseTelemetryState()

func ParseTelemetryState(configValue string) TelemetryState {
and that is the user can opt out as stated in the documentation with the GH_TELEMETRY, the DO_NOT_TRACK environnement variable or event with the gh config set telemetry disabled CLI config.

These configs will make the functions return Disabled for the telemetryState variable and &telemetry.NoOpService{} (a dummy, empty, or placeholder service) will be used.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's not scraping.

tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request May 8, 2026
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [cli/cli](https://github.com/cli/cli) | minor | `v2.90.0` → `v2.92.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>cli/cli (cli/cli)</summary>

### [`v2.92.0`](https://github.com/cli/cli/releases/tag/v2.92.0): GitHub CLI 2.92.0

[Compare Source](cli/cli@v2.91.0...v2.92.0)

#### Support GitHub Enterprise Cloud (GHEC) in `skill` commandset

Now `gh skill` subcommands (`install`, `preview`, `publish`, `search`, `update`) are able to work with [GHEC](https://docs.github.com/en/enterprise-cloud@latest/admin/overview/about-github-enterprise-cloud) hosts with data residency.

#### Add `--allow-hidden-dirs` flag to `skill preview`

Following the addition of `--allow-hidden-dirs` to `skill install` in the previous release, now the flag is also supported in `skill preview`, allowing users to preview skills located in hidden (dot-prefixed) directories such as `.claude/skills/`, `.agents/skills/`, and `.github/skills/`.

#### What's Changed

##### ✨ Features

- feat(skills): add --allow-hidden-dirs flag to preview command by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13265](cli/cli#13265)
- feat(skills): support GHEC with data residency hosts by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13264](cli/cli#13264)

##### 🐛 Fixes

- Fix SetSampleRate not updating sample\_rate dimension by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13259](cli/cli#13259)
- Fix log terminal injection by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13272](cli/cli#13272)
- Add "Resource not accessible" to ProjectsV2IgnorableError by [@&#8203;maxbeizer](https://github.com/maxbeizer) in [#&#8203;13281](cli/cli#13281)

##### 📚 Docs & Chores

- fix: using variable interpolation \`${{ in deployment.yml... by [@&#8203;orbisai0security](https://github.com/orbisai0security) in [#&#8203;13258](cli/cli#13258)
- docs: correct typo in Linux Homebrew copy by [@&#8203;cassidyjames](https://github.com/cassidyjames) in [#&#8203;13273](cli/cli#13273)
- Install skills flat by Name, not namespaced InstallName by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13266](cli/cli#13266)
- chore: fix zsh completion on debian by [@&#8203;babakks](https://github.com/babakks) in [#&#8203;13274](cli/cli#13274)
- Add trust disclaimer to extension help text by [@&#8203;travellertales](https://github.com/travellertales) in [#&#8203;13296](cli/cli#13296)
- Bump Go to 1.26.2 by [@&#8203;github-actions](https://github.com/github-actions)\[bot] in [#&#8203;13301](cli/cli#13301)

##### :dependabot: Dependencies

- chore(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.21 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;13161](cli/cli#13161)
- chore(deps): bump github.com/google/go-containerregistry from 0.21.4 to 0.21.5 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;13162](cli/cli#13162)
- chore(deps): bump charm.land/lipgloss/v2 from 2.0.2 to 2.0.3 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;13163](cli/cli#13163)
- chore(deps): bump charm.land/bubbletea/v2 from 2.0.2 to 2.0.6 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;13206](cli/cli#13206)
- chore(deps): bump github.com/gdamore/tcell/v2 from 2.13.8 to 2.13.9 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;13241](cli/cli#13241)
- chore(deps): bump github.com/mattn/go-isatty from 0.0.21 to 0.0.22 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;13298](cli/cli#13298)

#### New Contributors

- [@&#8203;orbisai0security](https://github.com/orbisai0security) made their first contribution in [#&#8203;13258](cli/cli#13258)
- [@&#8203;cassidyjames](https://github.com/cassidyjames) made their first contribution in [#&#8203;13273](cli/cli#13273)
- [@&#8203;travellertales](https://github.com/travellertales) made their first contribution in [#&#8203;13296](cli/cli#13296)

**Full Changelog**: <cli/cli@v2.91.0...v2.92.0>

### [`v2.91.0`](https://github.com/cli/cli/releases/tag/v2.91.0): GitHub CLI 2.91.0

[Compare Source](cli/cli@v2.90.0...v2.91.0)

#### GitHub CLI now collects pseudonymous telemetry

To better understand how features are used in practice, especially as agentic adoption grows, GitHub CLI now sends pseudonymous telemetry.

See [Telemetry](https://cli.github.com/telemetry) for more details on what's collected, why, and how to opt out.

#### Support more agents in `gh skill`

Thanks to community feedback, `gh` now supports a large number of agent hosts. Run `gh skill install --help` for the list of available agents.

#### Improve skill discovery

`gh skill install` now adds the `--allow-hidden-dirs` flag to support discovering skills in hidden (dot-prefixed) directories such as `.claude/skills/`, `.agents/skills/`, and `.github/skills/`.

#### Detect skills re-published from other sources

GitHut CLI now detects if the skill to be installed is re-published from an upstream source and offers the option to install it from there. The `--upstream` flag is also added for non-interactive use cases.

#### What's Changed

##### ✨ Features

- Add support for installation in multiple agent hosts in `gh skills install` by [@&#8203;tommaso-moro](https://github.com/tommaso-moro) in [#&#8203;13209](cli/cli#13209)
- Add --allow-hidden-dirs flag to gh skill install by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13213](cli/cli#13213)
- Make skill discovery less strict: support nested `skills/` directories by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13235](cli/cli#13235)
- feat(skills): detect re-published skills and offer upstream install by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13236](cli/cli#13236)

##### 🐛 Fixes

- Fix `skills publish --fix` to not publish by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13237](cli/cli#13237)
- fix(skills): match skills by install name in preview command by [@&#8203;SamMorrowDrums](https://github.com/SamMorrowDrums) in [#&#8203;13249](cli/cli#13249)

##### 📚 Docs & Chores

- Remove misleading text by [@&#8203;tommaso-moro](https://github.com/tommaso-moro) in [#&#8203;13203](cli/cli#13203)
- Add sampled command telemetry by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13191](cli/cli#13191)
- Do not send telemetry for aliases by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13192](cli/cli#13192)
- Add skills specific telemetry by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13204](cli/cli#13204)
- Record CI context in telemetry by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13210](cli/cli#13210)
- Record official extension telemetry by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13205](cli/cli#13205)
- Add telemetry command by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13253](cli/cli#13253)
- Log when there is no telemetry by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13255](cli/cli#13255)
- docs(skills): add gh and gh-skill agent skills by [@&#8203;BagToad](https://github.com/BagToad) in [#&#8203;13244](cli/cli#13244)
- Enable telemetry without env var by [@&#8203;williammartin](https://github.com/williammartin) in [#&#8203;13254](cli/cli#13254)

**Full Changelog**: <cli/cli@v2.90.0...v2.91.0>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNjkuNCIsInVwZGF0ZWRJblZlciI6IjQzLjE2OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiLCJhdXRvbWF0aW9uOmJvdC1hdXRob3JlZCIsImRlcGVuZGVuY3ktdHlwZTo6bWlub3IiXX0=-->
fionn added a commit to fionn/.dotfiles that referenced this pull request May 16, 2026
This is mostly defaults, sadly necessary as gh has enabled opt-out
telemetry which is unethical.

See: https://docs.github.com/en/github-cli/github-cli/github-cli-telemetry
See: cli/cli#13254
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.