Skip to content

feat: Add support for getting Copilot cloud agent configuration - #4241

Merged
gmlewis merged 14 commits into
google:masterfrom
maishivamhoo123:feat/copilot-cloud-agent-configuration
May 27, 2026
Merged

feat: Add support for getting Copilot cloud agent configuration#4241
gmlewis merged 14 commits into
google:masterfrom
maishivamhoo123:feat/copilot-cloud-agent-configuration

Conversation

@maishivamhoo123

Copy link
Copy Markdown
Contributor

Description

Add support for getting Copilot cloud agent configuration via the GitHub REST API.

Changes

  • Added CopilotCloudAgentConfiguration struct to handle the API response
  • Added EnabledTools struct for tool configuration details
  • Implemented GetCopilotCloudAgentConfiguration method in CopilotService
  • Fixed McpConfiguration field to use *json.RawMessage for proper null handling

Related Issue

Closes#4239

Testing

All existing tests pass and new unit tests validate the functionality.

Signed-off-by: maishivamhoo123 <maishivamhoo@gmail.com>
Comment threadopenapi_operations.yaml
@codecov

codecovBot commented May 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.48%. Comparing base (c207b27) to head (5efd691).
⚠️ Report is 2 commits behind head on master.

Additional details and impacted files
@@ Coverage Diff @@## master #4241 +/- ##
=======================================
Coverage 97.48% 97.48% =======================================
Files 190 191 +1 Lines 19178 19188 +10 =======================================
+ Hits 18695 18705 +10 
Misses 268 268 Partials 215 215 

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@maishivamhoo123
maishivamhoo123force-pushed the feat/copilot-cloud-agent-configuration branch from 59ab5d7 to 4420993CompareMay 21, 2026 03:23
@gmlewisgmlewis changed the title feat: add support for getting Copilot cloud agent configurationfeat: Add support for getting Copilot cloud agent configurationMay 21, 2026
@gmlewisgmlewis added the NeedsReview PR is awaiting a review before merging. label May 21, 2026

@gmlewisgmlewis left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thank you, @maishivamhoo123!
A couple minor tweaks, please, then we should be ready for any other contributor to this repo to provide a second LGTM+Approval before merging.

cc: @stevehipwell - @alexandear - @zyfy29 - @Not-Dhananjay-Mishra - @munlicode

Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go
Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go
Comment threadgithub/copilot_cloud_agent.go Outdated
Signed-off-by: maishivamhoo123 <maishivamhoo@gmail.com>
Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go Outdated
Signed-off-by: maishivamhoo123 <maishivamhoo@gmail.com>
Comment threadgithub/copilot_cloud_agent.go
Comment threadgithub/copilot_cloud_agent.go
Signed-off-by: maishivamhoo123 <maishivamhoo@gmail.com>
Comment threadgithub/copilot_cloud_agent.go Outdated
Comment threadgithub/copilot_cloud_agent.go
Comment threadgithub/copilot_cloud_agent_test.go Outdated
Signed-off-by: maishivamhoo123 <maishivamhoo@gmail.com>
@maishivamhoo123

Copy link
Copy Markdown
ContributorAuthor

@gmlewis, @alexandear, @Not-Dhananjay-Mishra I’ve made all the recommended changes and addressed the review comments.
Could you please take another look at this PR ?

Thank you!

@Not-Dhananjay-MishraNot-Dhananjay-Mishra left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM 🚀

@gmlewisgmlewis removed the NeedsReview PR is awaiting a review before merging. label May 26, 2026
Comment threadgithub/copilot_cloud_agent.go Outdated
@maishivamhoo123

maishivamhoo123 commented May 26, 2026

Copy link
Copy Markdown
ContributorAuthor
imageimage
type CopilotCloudAgentConfiguration struct {
MCPConfiguration json.RawMessage `json:"mcp_configuration"`
EnabledTools *CopilotCloudAgentEnabledTools `json:"enabled_tools"`
RequireActionsWorkflowApproval bool `json:"require_actions_workflow_approval"`
IsFirewallEnabled bool `json:"is_firewall_enabled"`
IsFirewallRecommendedAllowlistEnabled bool `json:"is_firewall_recommended_allowlist_enabled"`
CustomAllowlist []string `json:"custom_allowlist"`
}

@gmlewis I made all the changes but it is still failing?

@gmlewis

Copy link
Copy Markdown
Collaborator

@gmlewis I made all the changes but it is still failing?

Ah, yes, you may need to delete the old linters in the bin subdirectory and then try again.

@maishivamhoo123

Copy link
Copy Markdown
ContributorAuthor

@gmlewis i made all the recommended changes . can you please review this PR.

Comment threadtools/structfield/structfield Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@maishivamhoo123 can you please remove this binary file which get pushed.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

Thank you @Not-Dhananjay-Mishra for pointing this out. Sorry i didn't see this? i will remove this .

@maishivamhoo123

Copy link
Copy Markdown
ContributorAuthor

@Not-Dhananjay-Mishra i removed binary file can you please verify it? Thank you!

@gmlewisgmlewis left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thank you, @maishivamhoo123 and reviewers!
LGTM.
Merging.

@gmlewis
gmlewis merged commit 4eb6c2c into google:masterMay 27, 2026
14 checks passed
@maishivamhoo123
maishivamhoo123 deleted the feat/copilot-cloud-agent-configuration branch May 27, 2026 09:31
jlaportebot added a commit to jlaportebot/go-github that referenced this pull request Jun 28, 2026
eleboucher pushed a commit to eleboucher/forgesync that referenced this pull request Jul 7, 2026
… v89.0.0) (#16)
This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [github.com/google/go-github/v88](https://github.com/google/go-github) | `v88.0.0` → `v89.0.0` | ![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgoogle%2fgo-github%2fv88/v89.0.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgoogle%2fgo-github%2fv88/v88.0.0/v89.0.0?slim=true) |
---
### Release Notes
<details>
<summary>google/go-github (github.com/google/go-github/v88)</summary>
### [`v89.0.0`](https://github.com/google/go-github/releases/tag/v89.0.0)
[Compare Source](google/go-github@v88.0.0...v89.0.0)
This release contains the following breaking API changes:
- refactor!: Pass `DeploymentRequest` and `DeploymentStatusRequest` by value ([#&#8203;4361](google/go-github#4361))
BREAKING CHANGE: `CreateDeployment` and `CreateDeploymentStatus` now take `DeploymentRequest` and `DeploymentStatusRequest` by value; `DeploymentRequest.Ref` and `DeploymentStatusRequest.State` are now `string`, and `DeploymentRequest.RequiredContexts` is now `[]string`.
- refactor!: Pass `HookConfig` by value and rename `EditHookConfiguration` to `UpdateHookConfiguration` ([#&#8203;4360](google/go-github#4360))
BREAKING CHANGE: `EditHookConfiguration` is renamed to `UpdateHookConfiguration` on `RepositoriesService` and `OrganizationsService`; these methods and `AppsService.UpdateHookConfig` now take `HookConfig` by value.
- refactor!: Pass `OIDCSubjectClaimCustomTemplate` by value in the OIDC subject-claim Set methods ([#&#8203;4340](google/go-github#4340))
BREAKING CHANGE: `SetOrgOIDCSubjectClaimCustomTemplate` and `SetRepoOIDCSubjectClaimCustomTemplate` now take their `body` params by value.
- feat!: Refactor actions variables to pass request by value ([#&#8203;4346](google/go-github#4346))
BREAKING CHANGE: `ActionsService` methods involving variables have new params and return values.
- feat!: Replace actions env secret endpoints ([#&#8203;4335](google/go-github#4335))
BREAKING CHANGE: `ActionsService` methods involving secrets have new params and return values.
- refactor!: Pass `CreateJITConfigRequest` by value and rename `Generate*JITConfig` to `Create*JITConfig` ([#&#8203;4337](google/go-github#4337))
BREAKING CHANGE: the JIT config methods are renamed from `Generate*JITConfig` to `Create*JITConfig`, and they now take `CreateJITConfigRequest` (renamed from `GenerateJITConfigRequest`) by value instead of by pointer.
- refactor!: Pass release-notes and asset params by value and rename `EditReleaseAsset` to `UpdateReleaseAsset` ([#&#8203;4336](google/go-github#4336))
BREAKING CHANGE: `GenerateReleaseNotes` now takes `GenerateNotesRequest` by value (renamed from `GenerateNotesOptions`); `EditReleaseAsset` is renamed to `UpdateReleaseAsset` and takes `UpdateReleaseAssetRequest` by value.
- refactor!: Pass release params by value and rename `EditRelease` to `UpdateRelease` ([#&#8203;4329](google/go-github#4329))
BREAKING CHANGE: `CreateRelease` & `UpdateRelease` now take `RepositoryRelease` by value; `EditRelease` is renamed to `UpdateRelease`.
- refactor!: Pass `GistsService` required params by value ([#&#8203;4320](google/go-github#4320))
BREAKING CHANGE: `GistsService` methods now pass required params by-value instead of by-ref.
- fix!: Send request body in SCIM update methods ([#&#8203;4315](google/go-github#4315))
BREAKING CHANGE: `UpdateProvisionedOrgMembership` and `UpdateAttributeForSCIMUser` params and return values changed.
- fix!: Fix `LicenseStatus` response and `Supportkey` type ([#&#8203;4297](google/go-github#4297))
BREAKING CHANGE: `LicenseStatus.SupportKey` type changed from `*string` to `*bool` and `License` return type is no longer a slice.
- fix!: Enterprise App installation repos options structs ([#&#8203;4298](google/go-github#4298))
BREAKING CHANGE: `SelectedRepositoryIDs []int64` is now `Repositories []string` in `*AppInstallationRepositoriesOptions`.
...and the following additional changes:
- chore: Bump version of go-github to v89.0.0 ([#&#8203;4369](google/go-github#4369))
- feat: Add user team membership fields ([#&#8203;4347](google/go-github#4347))
- chore: Add deprecated flag for unused metadata ([#&#8203;4367](google/go-github#4367))
- docs: Add AGENTS.md and review-feedback tip ([#&#8203;4368](google/go-github#4368))
- chore: Mark removed billing endpoints as deprecated ([#&#8203;4362](google/go-github#4362))
- chore: Validate metadata ([#&#8203;4358](google/go-github#4358))
- chore: Bump golang.org/x/tools to v0.47.0 ([#&#8203;4357](google/go-github#4357))
- build(deps): Bump actions/setup-go from 6.4.0 to 6.5.0 in the actions group ([#&#8203;4349](google/go-github#4349))
- build(deps): Bump the go\_modules group in /example ([#&#8203;4345](google/go-github#4345))
- feat: Add `AccessSource` to `Team` ([#&#8203;4344](google/go-github#4344))
- docs: Update `CONTRIBUTING.md` ([#&#8203;4341](google/go-github#4341))
- build(deps): Bump golangci/golangci-lint-action from 9.2.1 to 9.3.0 ([#&#8203;4342](google/go-github#4342))
- docs: Extend CONTRIBUTING.md with code guidelines ([#&#8203;4339](google/go-github#4339))
- fix: AuditEntry fields `org` and `org_id` can be an array ([#&#8203;4333](google/go-github#4333))
- build(deps): Bump actions/checkout from 6.0.3 to 7.0.0 in the actions group ([#&#8203;4332](google/go-github#4332))
- feat: Add code quality findings support ([#&#8203;4330](google/go-github#4330))
- chore: Update `openapi_operations.yaml` ([#&#8203;4331](google/go-github#4331))
- chore: Replace `time.Date` with `referenceTime` ([#&#8203;4325](google/go-github#4325))
- test: Refactor tests for `ProjectV2Item.UnmarshalJSON` ([#&#8203;4323](google/go-github#4323))
- chore: Remove obsolete test/fields utility ([#&#8203;4322](google/go-github#4322))
- feat: Add Issue Dependencies API support ([#&#8203;4130](google/go-github#4130))
- fix: Set `GetBody` on uploads for HTTP/2 retry ([#&#8203;4318](google/go-github#4318))
- chore: Remove deleted account from REVIEWERS ([#&#8203;4317](google/go-github#4317))
- build(deps): Bump golang.org/x/crypto from 0.52.0 to 0.53.0 in /example ([#&#8203;4305](google/go-github#4305))
- build(deps): Bump codecov/codecov-action from 6.0.1 to 7.0.0 ([#&#8203;4303](google/go-github#4303))
- build(deps): Bump golang.org/x/net from 0.55.0 to 0.56.0 in /scrape ([#&#8203;4302](google/go-github#4302))
- build(deps): Bump golang.org/x/term from 0.43.0 to 0.44.0 in /example ([#&#8203;4304](google/go-github#4304))
- build(deps): Bump golang.org/x/tools from 0.45.0 to 0.46.0 in /tools ([#&#8203;4314](google/go-github#4314))
- build(deps): Bump github.com/bradleyfalzon/ghinstallation/v2 from 2.18.0 to 2.19.0 in /example ([#&#8203;4306](google/go-github#4306))
- refactor: Fix parameters in method endpoints ([#&#8203;4300](google/go-github#4300))
- feat: Add enterprise billing usage endpoints and response types ([#&#8203;4288](google/go-github#4288))
- build(deps): Bump golang.org/x/sync from 0.20.0 to 0.21.0 in /tools ([#&#8203;4294](google/go-github#4294))
- build(deps): Bump github.com/getkin/kin-openapi from 0.139.0 to 0.140.0 in /tools ([#&#8203;4295](google/go-github#4295))
- build(deps): Bump actions/checkout from 6.0.2 to 6.0.3 in the actions group ([#&#8203;4293](google/go-github#4293))
- fix: Reject URL path segments containing percent-encoded dots ([#&#8203;4291](google/go-github#4291))
- fix: Comparison of durations in `AbuseRateLimitError.Is` ([#&#8203;4292](google/go-github#4292))
- test: Replace `&x` variables with inline `Ptr(value)` calls ([#&#8203;4289](google/go-github#4289))
- feat: Inject OpenAPI deprecations safely ([#&#8203;4286](google/go-github#4286))
- chore: Remove 'munlicode' from REVIEWERS ([#&#8203;4287](google/go-github#4287))
- feat: Add `GetOrgAICreditUsage` and `GetUserAICreditUsage` endpoints ([#&#8203;4282](google/go-github#4282))
- test: Fix test names and error messages ([#&#8203;4284](google/go-github#4284))
- test: Use `testJSONBody` helper for request body assertions ([#&#8203;4283](google/go-github#4283))
- feat: Add pull request fields to `Repository` ([#&#8203;4268](google/go-github#4268))
- build(deps): Bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 ([#&#8203;4272](google/go-github#4272))
- build(deps): Bump go.opentelemetry.io/otel to v1.44.0 ([#&#8203;4280](google/go-github#4280))
- build(deps): Bump golang.org/x/net from 0.54.0 to 0.55.0 in /scrape ([#&#8203;4271](google/go-github#4271))
- build(deps): Bump golang.org/x/crypto from 0.51.0 to 0.52.0 in /example ([#&#8203;4273](google/go-github#4273))
- fix: Handle missing reviewer type in `RequiredReviewer` unmarshal ([#&#8203;4270](google/go-github#4270))
- test: Remove redundant Marshal tests ([#&#8203;4266](google/go-github#4266))
- chore: Update `openapi_operations.yaml` ([#&#8203;4265](google/go-github#4265))
- feat: Add support for GitHub Code Quality API ([#&#8203;4260](google/go-github#4260))
- build(deps): Bump github.com/getkin/kin-openapi from 0.138.0 to 0.139.0 in /tools ([#&#8203;4261](google/go-github#4261))
- chore: Fix zizmor security issues in GHA workflows ([#&#8203;4259](google/go-github#4259))
- feat: Add support for getting Copilot cloud agent configuration ([#&#8203;4241](google/go-github#4241))
- feat: Add client API version support ([#&#8203;4246](google/go-github#4246))
- test: Add secret scanning marshal tests ([#&#8203;4252](google/go-github#4252))
- lint: Improve `extraneousnew` linter to catch unnecessary use of value var ([#&#8203;4249](google/go-github#4249))
- build(deps): Bump codecov/codecov-action from 6.0.0 to 6.0.1 ([#&#8203;4248](google/go-github#4248))
- chore: Bump go-github from v87 to v88 in /scrape ([#&#8203;4247](google/go-github#4247))
</details>
---
### Configuration
📅 **Schedule**: 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 PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJ0eXBlL21ham9yIl19-->
Reviewed-on: https://git.erwanleboucher.dev/eleboucher/forgesync/pulls/16
Sign up for freeto 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.

Add support for getting Copilot cloud agent configuration

4 participants

@maishivamhoo123@gmlewis@alexandear@Not-Dhananjay-Mishra