-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Add ff support and consolidated actions toolsets #1622
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
33662a0 to
daee6b8
Compare
67e94d1 to
a3e151b
Compare
a3e151b to
94c7455
Compare
There was a problem hiding this 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 adds feature flag support for consolidated GitHub Actions tools, allowing the MCP server to switch between individual granular tools and consolidated multi-method tools. When the remote_mcp_consolidated_actions feature flag is enabled, four new consolidated tools replace 14 individual tools.
Key Changes
- Introduces
FeatureFlagConsolidatedActionsconstant to control tool availability via feature flags - Adds four new consolidated tools:
actions_list,actions_get,actions_run_trigger, andget_job_logs(consolidated version) - Sets
FeatureFlagDisableon all existing individual Actions tools to disable them when consolidated mode is active - Updates test validation logic to allow duplicate tool names for feature-flagged tools (since they're mutually exclusive at runtime)
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/github/actions.go | Adds feature flag constant, method constants for consolidated tools, applies FeatureFlagDisable to 14 existing tools, implements 4 new consolidated tools with FeatureFlagEnable, and adds 13 helper functions to support consolidated tool operations |
| pkg/github/tools.go | Registers the 4 new consolidated tools in the AllTools function |
| pkg/github/tools_validation_test.go | Updates TestNoDuplicateToolNames to allow duplicate names for feature-flagged tools since they are mutually exclusive at runtime |
| cmd/github-mcp-server/main.go | Adds safety checks with viper.IsSet before unmarshaling tools and features configuration to prevent errors when keys are absent |
| README.md | Documents the 4 new consolidated tools with their parameters and descriptions |
This pull request completes the Actions consolidation rollout by porting these changes back to OSS and allowing feature flags to be used to control which version of the Actions toolset is enabled: legacy or consolidated.
Closes: https://github.com/github/copilot-agent-services/issues/1053