This page describes the variety of features the Cloud Shell Editor comes with.
Viewing and editing files
Cloud Shell comes with a built-in code editor that allows you to browse file directories as well as view and edit files, with continued access to the Cloud Shell. The Cloud Shell Editor is available by default with every Cloud Shell instance, and is based on Theia.
To work with the Cloud Shell Editor, follow these steps:
Launch the Cloud Shell Editor by clicking the pencil icon on the toolbar of the Cloud Shell window. This sets up the editor in a new tab with continued access to Cloud Shell.
Tip: You can also launch the Cloud Shell Editor by navigating to ide.cloud.google.com.
Use the left-hand pane to browse through the file directories. Use the right-hand pane to view and edit your files.
Access the functionality to toggle the editor and the Cloud Shell window, upload and download files, preview web applications on a Cloud Shell virtual machine instance, and view usage statistics, from the Cloud Shell toolbar in the upper right-hand corner.
Alternatively, you can open an existing file - for example,
README-cloudshell.txt from the environment above - in the Cloud Shell Editor, by
cloudshell command in your
Cloud Console as such:
cloudshell edit README-cloudshell.txt
Uploading and downloading files
You can further manage your files with the Cloud Shell Editor with
its Explorer. Right-click the directory or file you'd like to use within
the Cloud Shell Editor Explorer and choose to upload or download
files using the menu:
Copy Download Link,
Alternatively, you can navigate to File>Download/Upload Files....
Along the left side of the Editor is the Activity bar where you can access all of the different views available in the Cloud Shell Editor.
These Activity bar views are:
- Explorer: View the folders and files in your current workspace
- Search: Search your files for a specific string or regular expression
- Source Control: Manage application files with the Cloud Shell Editor's inbuilt Git support
- Debug: Debug your application by setting breakpoints and inspecting variables
- Cloud Code - Cloud APIs: Browse through and enable Cloud APIs and add Cloud Client Libraries to your project
- Cloud Code - Cloud Run: Monitor and manage your Cloud Run resources
- Cloud Code - Kubernetes: Monitor and manage your Kubernetes resources
The Cloud Shell Editor comes pre-loaded with rich support for Go, Python, Java, .NET Core, and Node.js, providing language features such as:
- Smart highlighting, code suggestions and context-based completions
- Linting and providing descriptive errors
- Code navigation (Go to definitions, declarations, references, and implementations)
- Intuitive debugging support
Cloud Code integration
The Cloud Shell Editor comes with Cloud Code support.
Cloud Code provides IDE support for the full development cycle of Kubernetes and Cloud Run applications, from creating and customizing a new application from sample templates to running your finished application. Cloud Code also supports you along the way with run-ready samples, out-of-the-box configuration snippets, and a tailored debugging experience.
Cloud Code supports the development of applications in Node.js, Python, Java, Go, and .NET Core.
In addition to the Cloud Code menu available in the status bar of Cloud Shell, you can also access Cloud Code commands through the Command Palette; press Cmd/Ctrl+Shift+p to bring up available commands.
For a comprehensive look at what you can do with Cloud Code using Cloud Shell, refer to the Getting started with Cloud Code overview.
Version Control Support
Cloud Shell Editor comes with pre-configured version control. With Cloud Shell, you can initialize repositories, diff between file states, stage, unstage, and commit changes.
For a comprehensive look, read Cloud Shell's Using version control guide.
With Cloud Shell, you can manage and configure your projects as workspaces. Workspaces usually represent your root project folder and with the Cloud Shell Editor, you can create, open, and save workspaces as well as customize them with project-specific settings.
For a detailed look at working with workspaces, refer to the Workspace management guide.
Cloud Shell allows you to easily debug your application, with full debugging support for Go, Node.js, Python, and Java applications. You can create launch configurations, set breakpoints, and inspect variables, all within Cloud Shell.
Additionally, you can debug Kubernetes applications on a local cluster (like minikube or Docker Desktop) or a remote cluster on Google Kubernetes Engine or any other Cloud provider.
Refer to the Debugging with Cloud Shell guide for more details.
Access your underlying Cloud Shell instance without having to leave the editor by navigating to Terminal > New Terminal. You can also choose to run multiple terminal windows by using the Split Terminal option.