GitHub Copilot Workspace: Turn Issues into Pull Requests with AI-Generated Plans and Edits

GitHub Copilot Workspace: From Issue to Pull Request with AI

GitHub Copilot Workspace is an AI-native development environment that transforms GitHub issues into fully implemented pull requests. It generates implementation plans, applies file-level edits, and lets you validate changes with an integrated terminal — all without leaving your browser. This guide walks you through the complete workflow.

Prerequisites

  • A GitHub account with Copilot Enterprise or Copilot Workspace access enabled- A repository you own or have write access to- At least one open GitHub issue describing a feature or bug fix

Step-by-Step: Issue to Pull Request

Step 1 — Open an Issue in Copilot Workspace

Navigate to any open issue in your repository. Click the “Open in Workspace” button that appears at the top of the issue page. This launches the Copilot Workspace session linked to that specific issue. # You can also open Workspace directly via URL: https://copilot-workspace.githubnext.com/{owner}/{repo}/issues/{issue_number}

Copilot Workspace reads the issue title, description, labels, and any linked discussions to build context for the task.

Step 2 — Review the AI-Generated Specification

Workspace produces a specification — a natural-language summary of what needs to change and why. This acts as a bridge between the issue description and the implementation plan.

  • Read through the specification carefully- Click “Edit” to refine any misinterpreted requirements- Add constraints such as “Do not modify the public API” or “Use the existing utility function in src/utils/helpers.ts

Step 3 — Examine the Implementation Plan

After confirming the specification, Workspace generates a plan that lists every file to be created, modified, or deleted, along with a description of the changes for each file.

ColumnDescription
File PathThe file to be changed (e.g., src/auth/login.ts)
ActionCreate, Modify, or Delete
Change SummaryPlain-English description of edits
You can add or remove files from the plan, reorder operations, or rewrite individual change summaries before proceeding.

Step 4 — Generate File-Level Edits

Click “Implement” to have Copilot Workspace generate the actual code changes. Each file shows a diff-style view with additions and deletions highlighted. // Example: Workspace-generated edit for src/auth/login.ts

export async function loginUser(credentials: UserCredentials): Promise { const validated = validateCredentials(credentials); if (!validated.success) { throw new AuthValidationError(validated.errors); }

const token = await authService.authenticate(validated.data);

  • await auditLog.record(‘login_success’, { userId: validated.data.userId }); return { token, expiresIn: TOKEN_TTL }; }

    Review each file’s diff. Click into any code block to make manual edits directly in the Workspace editor. Every change you make is preserved alongside the AI-generated code.

Step 5 — Validate with the Integrated Terminal

Copilot Workspace provides a cloud-based terminal connected to a Codespace running your repository. Use it to build, lint, and test your changes before opening a PR. # Install dependencies npm install

Run the test suite

npm test

Run a specific test file related to your change

npm test — —grep “loginUser”

Lint the modified files

npx eslint src/auth/login.ts

If tests fail, return to the code view, fix the issue manually or ask Workspace to revise, then re-run validation.

Step 6 — Create the Pull Request

Once validation passes, click “Create Pull Request”. Workspace automatically:

  • Creates a new branch (e.g., copilot-ws/{issue-number}-{short-slug})- Commits all file-level edits with a descriptive commit message- Opens a pull request linked to the original issue- Populates the PR description with the specification and plan summary# The resulting branch follows this naming convention: git checkout copilot-ws/42-add-audit-logging

Pro Tips for Power Users

  • Stack multiple issues: You can reference additional issues or PRs in the specification step to give Workspace broader context across related tasks.- Use follow-up prompts: After the initial implementation, type natural-language instructions like “Also add unit tests for the new audit logging function” to extend the plan without starting over.- Pin context files: If Workspace misses a critical file, manually add it to the plan and describe what role it plays. This anchors the AI to your architecture.- Iterate on branches: Re-open an existing Workspace session from the PR page to continue refining code. Each revision adds new commits to the same branch.- Brainstorm mode: Open Workspace without an issue by navigating to https://copilot-workspace.githubnext.com/{owner}/{repo} and typing a free-form task description.

Troubleshooting

ProblemCauseSolution
"Open in Workspace" button missingCopilot Workspace is not enabled for your organization or accountAsk your org admin to enable Copilot Workspace under **Settings → Copilot → Workspace**
Plan generates irrelevant filesIssue description is too vague or references ambiguous componentsEdit the specification to narrow scope; explicitly name target files and modules
Terminal fails to startCodespace quota exceeded or devcontainer config errorCheck your Codespace usage at github.com/settings/codespaces; verify .devcontainer/devcontainer.json is valid
Generated code has import errorsWorkspace may not have full visibility into monorepo package boundariesAdd missing dependency paths to the specification or manually fix imports in the editor
PR creation failsBranch protection rules block the pushEnsure the Copilot app has bypass permissions, or push to an unprotected branch first
## Workflow Summary - Open a GitHub issue in Copilot Workspace- Review and refine the AI-generated specification- Approve or edit the implementation plan- Generate and review file-level code edits- Validate changes using the integrated terminal- Create a linked pull request with one click

This end-to-end workflow reduces the time from issue triage to reviewable PR from hours to minutes, while keeping you in full control of every line of code. ## Frequently Asked Questions

Can Copilot Workspace handle issues across multiple repositories?

Currently, each Workspace session is scoped to a single repository. For cross-repo changes, open separate Workspace sessions for each repository and coordinate the pull requests manually. You can reference external repos in the specification text to give context, but edits are limited to the active repository.

Does Copilot Workspace replace Copilot code completion in my IDE?

No. Copilot Workspace is a browser-based environment for planning and implementing entire features from issues. Copilot code completion in VS Code, JetBrains, or Neovim continues to work independently for line-by-line suggestions. They are complementary tools — Workspace handles the big picture, while inline Copilot assists with moment-to-moment coding.

How do I control which files Copilot Workspace is allowed to modify?

During the plan step, you have full control over the file list. Remove any file you do not want modified, or add a constraint in the specification such as “Do not modify any files under the migrations/ directory.” Workspace respects these boundaries when generating edits. You can also review every diff before committing, giving you a final gate before any code reaches your repository.

Explore More Tools

Grok Best Practices for Academic Research and Literature Discovery: Leveraging X/Twitter for Scholarly Intelligence Best Practices Grok Best Practices for Content Strategy: Identify Trending Topics Before They Peak and Create Content That Captures Demand Best Practices Grok Case Study: How a DTC Beauty Brand Used Real-Time Social Listening to Save Their Product Launch Case Study Grok Case Study: How a Pharma Company Tracked Patient Sentiment During a Drug Launch and Caught a Safety Signal 48 Hours Before the FDA Case Study Grok Case Study: How a Disaster Relief Nonprofit Used Real-Time X/Twitter Monitoring to Coordinate Emergency Response 3x Faster Case Study Grok Case Study: How a Political Campaign Used X/Twitter Sentiment Analysis to Reshape Messaging and Win a Swing District Case Study How to Use Grok for Competitive Intelligence: Track Product Launches, Pricing Changes, and Market Positioning in Real Time How-To Grok vs Perplexity vs ChatGPT Search for Real-Time Information: Which AI Search Tool Is Most Accurate in 2026? Comparison How to Use Grok for Crisis Communication Monitoring: Detect, Assess, and Respond to PR Emergencies in Real Time How-To How to Use Grok for Product Improvement: Extract Customer Feedback Signals from X/Twitter That Your Support Team Misses How-To How to Use Grok for Conference Live Monitoring: Extract Event Insights and Identify Networking Opportunities in Real Time How-To How to Use Grok for Influencer Marketing: Discover, Vet, and Track Influencer Partnerships Using Real X/Twitter Data How-To How to Use Grok for Job Market Analysis: Track Industry Hiring Trends, Layoff Signals, and Salary Discussions on X/Twitter How-To How to Use Grok for Investor Relations: Track Earnings Sentiment, Analyst Reactions, and Shareholder Concerns in Real Time How-To How to Use Grok for Recruitment and Talent Intelligence: Identifying Hiring Signals from X/Twitter Data How-To How to Use Grok for Startup Fundraising Intelligence: Track Investor Sentiment, VC Activity, and Funding Trends on X/Twitter How-To How to Use Grok for Regulatory Compliance Monitoring: Real-Time Policy Tracking Across Industries How-To NotebookLM Best Practices for Financial Analysts: Due Diligence, Investment Research & Risk Factor Analysis Across SEC Filings Best Practices NotebookLM Best Practices for Teachers: Build Curriculum-Aligned Lesson Plans, Study Guides, and Assessment Materials from Your Own Resources Best Practices NotebookLM Case Study: How an Insurance Company Built a Claims Processing Training System That Cut Errors by 35% Case Study