-
Notifications
You must be signed in to change notification settings - Fork 32
feat: Add support for new GitHub Copilot assignment API options #5561
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
Conversation
- Add target_repository, base_branch, custom_instructions, and custom_agent parameters to assign_to_agent safe output type - Support GitHub's December 2025 API update for enhanced Copilot assignment - Add getRepositoryId() helper to resolve repository owner/name to ID - Update GraphQL mutation to include copilotAssignmentOptions input - Add required GraphQL-Features header for Copilot assignment API - Maintain full backward compatibility (all new fields are optional) - Update tests to verify new GraphQL call signature All new parameters are optional and default to previous behavior when omitted.
|
Awesome!!! |
|
@copilot please address the failing tests seen in Actions CI and commit the fixes directly to this branch |
…rict mode (#5565) * Initial plan * fix: Correct actions/setup-node@v6 SHA and update test for 23 pins Co-authored-by: mrjf <[email protected]> * feat: Make action SHA validation fail in strict mode with --validate flag Co-authored-by: mrjf <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: mrjf <[email protected]>
|
🎉 Yo ho ho! Changeset Generator found the treasure and completed successfully! ⚓💰 |
|
🔮 The ancient spirits stir... Smoke Codex awakens to divine this pull request... |
|
📰 BREAKING: Smoke Copilot Playwright is now investigating this pull request. Sources say the story is developing... |
|
💥 WHOOSH! Smoke Claude springs into action on this pull request! [Panel 1 begins...] |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
🤖 SYSTEM_INIT: Smoke Copilot No Firewall ACTIVATED. PROCESSING pull request. ALL SUBSYSTEMS ONLINE. |
Smoke Test SummaryTimestamp: 2025-12-04T20:48:05Z
|
Smoke Test ResultsLast 2 Merged PRs:
✅ GitHub MCP - Retrieved PR data Status: PASS
|
Smoke Test: Copilot Engine Validation ✅Last 2 Merged PRs:
Test Results:
Overall Status: PASS
|
Smoke Test Results✅ Playwright MCP Test: Successfully navigated to https://github.com and verified page title contains "GitHub" Overall Status: PASS
|
|
PRs:
|
|
@copilot investigate failed run https://github.com/githubnext/gh-aw/actions/runs/19943699087 this existing action used to work, fails with new options for assign-to-agent we should be 100% backwards compatible fix this and commit to this branch |
…opilot options provided (#5576) * Initial plan * fix: Use simple GraphQL mutation for backward compatibility when no Copilot options provided Co-authored-by: mrjf <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: mrjf <[email protected]>
|
@copilot update dev.md to assign an issue that looks like a good documentation candidate to the agent.
|
…h expression rendering (#5611)
|
@copilot compare your code with this sample in the comment at community/community#173575 (comment) |
|
Looks like there are rest APIs now for these things |
|
@copilot read https://github.blog/changelog/2025-12-03-assign-issues-to-copilot-using-the-api/ and add an option to support all the REST API methods for doing this, as well as graphql |
Updates assign-to-agent safe output to use REST API (December 2025): - Add assignAgentViaRest() function for REST API assignment - Add isAgentAlreadyAssigned() helper using REST API - Try REST API first for basic assignment, fallback to GraphQL for advanced options - Update error messages with clearer PAT requirements - Update test workflow with December 2025 API documentation - Add tests for new REST API functions The implementation now: 1. Checks if agent is already assigned via REST API 2. For basic assignment (no advanced options), tries REST API first 3. Falls back to GraphQL with copilotAssignmentOptions for advanced options 4. Provides clearer error messages about COPILOT_GITHUB_TOKEN requirement Reference: https://github.blog/changelog/2025-12-03-assign-issues-to-copilot-using-the-api/
…e-assign-to-agent-api # Conflicts: # .github/aw/actions-lock.json # .github/workflows/dev.lock.yml # .github/workflows/dev.md # .github/workflows/release.lock.yml # pkg/workflow/action_pins_test.go # pkg/workflow/data/action_pins.json
edit: This is all untested (by me) Copilot work so far.
Summary
Updates the
assign_to_agentsafe output type to support all new functionality announced in GitHub's December 3, 2025 API update for assigning issues to Copilot coding agents.Changes
New Optional Parameters
Added four new optional properties to the
assign_to_agentinput schema:target_repository(string): Target repository in 'owner/repo' format where the agent should create the PR. Useful when the issue and codebase are in separate repositories.base_branch(string): Base branch the agent should target for the PR (e.g., 'main', 'develop'). Defaults to repository's default branch if omitted.custom_instructions(string): Additional instructions to guide the agent's work. Supports Markdown formatting for specifying requirements, coding conventions, directory structure, etc.custom_agent(string): Name or path of a custom Copilot agent from the repository's.github/agentsdirectory.Implementation
getRepositoryId()function to resolve repository owner/name to GitHub's internal repository IDcopilotAssignmentOptionsinputGraphQL-Features: issues_copilot_assignment_api_supportheaderTesting
✅ All tests pass (26/26)
✅ Code formatted and linted
✅ Workflows recompiled with updated schema
Example Usage
Basic (unchanged)
With new options
Backward Compatibility
✅ All new fields are optional - existing workflows continue to work without changes
Changeset
target_repository,base_branch,custom_instructions,custom_agent) for theassign_to_agentsafe output type. All fields are optional and backward compatible.Smoke Test: 2025-12-04T20:48:11Z
Status: PASS - All Copilot engine tests validated successfully