github / github/codespaces-react
## Pull request overview
- Dominant language
- JavaScript
- Stars
- 547
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
## Pull request overview
This pull request adds a clear signal for extension authors to detect when their program is being invoked by `gh` (vs executed directly), by setting `GH_EXTENSION=1` for all extension dispatch paths. It also documents the new environment variable and adds both unit and acceptance coverage to prevent regressions across OS-specific dispatch logic.
**Changes:**
- Set `GH_EXTENSION=1` in the environment for extension processes launched via `Manager.Dispatch`.
- Document `GH_EXTENSION` in `gh help environment`.
- Add unit tests for environment propagation/override and a new end-to-end acceptance script covering the required scenarios.
Show a summary per file
| File | Description |
| ---- | ----------- |
| pkg/cmd/root/help_topic.go | Documents the new `GH_EXTENSION` environment variable in `gh help environment`. |
| pkg/cmd/extension/manager.go | Appends `GH_EXTENSION=1` to the dispatched extension command’s environment. |
| pkg/cmd/extension/manager_test.go | Adds regression tests verifying `GH_EXTENSION` is set, overrides inherited values, and preserves other env entries. |
| acceptance/testdata/extension/extension-env.txtar | Adds an end-to-end acceptance script verifying `GH_EXTENSION` behavior for `gh `, `gh extension exec`, standalone execution, and documentation. |
## Review details
> [!TIP]
> Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- **Files reviewed:** 4/4 changed files
- **Comments generated:** 0
- **Review effort level:** Lite
_Originally posted by @copilot-pull-request-reviewer in https://github.com/cli/cli/pull/14072#pullrequestreview-4862899623_
Contributor guide
Research direction
Start with pkg/cmd/extension/manager.go and its tests in pkg/cmd/extension/manager_test.go, then review the environment documentation in pkg/cmd/root/help_topic.go. Run the acceptance coverage in acceptance/testdata/extension/extension-env.txtar and confirm the documented dispatch behavior and environment handling across the listed invocation paths.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github
- Domain
- cli, documentation, testing
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 15/100