GitHub opens technical preview for Copilot Workspace, its next phase in AI-powered development

GitHub opens technical preview for Copilot Workspace, its next phase in AI-powered development

Developers can now apply to join the technical preview of Copilot Workspace, a new GitHub service that extends AI assistance to planning, building, testing and running code.

First described at GitHub Universe in November 2023, Copilot Workspace starts with an issue described in natural language and proposes an plan for implementation. GitHub CEO Thomas Dohmke posted that the service is designed to “deliver – not replace – developer creativity,” in an effort to pre-empt the notion that human developers are becoming less necessary.

A Copilot Workspace starts with a GitHub issue, which could be the beginning of a new project, a feature request, or a bug report. The service will then generate a step-by-step plan, as well as generating code, with everything proposed editable by the developer. A workspace can also be shared with a team for collaboration. 

“Open in workspace” will be a new option in a GitHub issue. In an example given by the team, the AI then builds a specification based on the current state and the proposed state of the project. The next step is to click Generate plan, which will create a series of steps such as “Add a function to validate secure URLs” or creating documentations such as README.md and CONTRIBUTING.md.

Once planned, another button labelled “Implementing selected files” generates the proposed code. Within the workspace there is a terminal for running tests, prior to committing changes and creating a pull request in the repository. Full step by step debugging is also possible, by linking the workspace to a GitHub Codespace, a remote development environment. A pull request generated by Copilot Workspace also includes a link to the workspace.

Creating a pull request from a Copilot Workspace

Attempting to sign up for the technical preview currently offers only an option to join a waitlist.

Next-generation AI or a waste of time? Developers are sceptical. “The bits GPT4 always gets wrong … are exactly the bits I want it to do for me … what it’s good for is high level overview and structuring of simple apps, which saves me a lot of googling, reviewing prior work, and some initial typing,” said one. Copilot and other generative AI assistants are mature enough now that developers have some experience of their strengths and weaknesses, with some finding that many cycles of repeating and clarifying prompts in order to get satisfactory output can be equal or even more work than simply writing the code.

“Copilot is terrible at large changes to complex codebases; the larger and more complex, the worse. But it’s great at suggesting very short snippets that guess exactly what you were in the middle of writing and write it for you,” said another dev, which if true does not bode well for an ambitious service like Copilot Workspace; though a counter-argument is that capabilities of coding assistants are evolving rapidly.

A common comment is that tools like Workspace will increase demand for professional developers, with more people able to get started with projects thanks to AI, but needing expert assistance as those projects grow more complex.

Jonathan Carter, who leads the GitHub Next team, said that Workspace is not just for writing code. “Code generation is obviously just one means of helping you think through a problem, along with a fleshed out spec (what are you trying to accomplish?), and plan for how to approach the problem (how might you actually accomplish it?). And so while we want to help generate code for tasks (e.g. from issue->PR), we also find that it’s just super helpful to take an idea and make it more tangible/concrete.”

Why is Copilot Workspace tied to Codespaces, rather than being an extension to Visual Studio Code so developers could run the code immediately? “We definitely intend to explore a VS Code extension in the not too distant future,” said Carter in the same discussion. “We decided to build a web client + integrated cloud terminal, simply because that allowed us to create an experience that is one-click away from an issue, and could be accessed from anywhere and any device.”