Local tasks
Codex can perform two types of tasks for you: local tasks and cloud tasks.
Local tasks are tasks that are completed by Codex directly on your machine. This can be your personal laptop, desktop, or even a server you have access to.
For local tasks, Codex will directly interact with your local file system to modify files and run commands. This means you can see live on your system which files are being modified, have Codex directly engage with your own toolchain and have Codex jump into parts of your codebase that you are currently working on.
To limit the risk of Codex modifying files outside of your workspace, or perform other undesired actions, local tasks are run in a sandbox environment by default.
Sandbox
For Mac and Linux, Codex will run any local task by default in a sandbox environment meaning the model is limited in which files it can access, which commands it can run without or even with approval and even control internet access. For Windows, we recommend you to run Codex locally in Windows Subsystem for Linux (WSL) or a Docker container to provide secure isolation.
To learn more about the sandbox and what optioons you have to control the sandbox, check out the security guide.
Cloud tasks
The alternative to local tasks is cloud tasks. Cloud tasks are incredibly helpful when you want to have Codex work on multiple tasks in parallel, or if your inspiration strikes you on the go.
Any cloud task is run in an isolated environment that allow the Codex agent to work on the task in a secure and isolated way. To set up the environment, Codex will clone your repository and check out the relevant branch it is working on. So in order to use Codex for cloud tasks your code has to have been pushed to GitHub already. If you are working on code that has not been pushed to your GitHub repository yet, you can also use the Codex CLI or IDE extension to delegate tasks from your local machine which will include the current code you are working on.
By default environments come with common programming languages and dependency management tools allowed. But to get the most out of Codex cloud tasks, you can also install additional packages and enable internet access by customizing the environment for your project.
Codex interfaces
Codex can be used through a range of different interfaces depending on your use case. The goal is for Codex to be available wherever you are, whenever you need it.
The most common interfaces are:
Codex IDE extension
The Codex IDE extension is an extension that you can install in Visual Studio Code (VSCode), Cursor, Windsurf or VSCode-compatible IDEs. It allows you to use Codex in your editor to chat, edit, and preview changes seamlessly.
Codex CLI
The Codex CLI is a command-line interface that you can use to interact with Codex from your terminal. With the Codex CLI you can use Codex locally without having to open any code editor.
Codex Web
Codex Web is our web interface available at chatgpt.com/codex. You can use Codex Web to configure your cloud task environments, delegate tasks to Codex, and track code reviews.
Codex Mobile
If you want to use Codex to work on tasks on the go, or review past tasks, you can use Codex Mobile within the ChatGPT app on iOS. From here you can start new cloud tasks, review past ones and even open pull requests if you are happy with the result of your Codex task.
Codex SDK
The Codex SDK is our collection of programmable ways to control and interact with Codex. You can use the Codex SDK to build Codex directly into your own toolchains or CI/CD pipelines. It consists of a library of APIs, a scriptable way to control the Codex CLI and a GitHub Action to use Codex within your GitHub CI/CD pipeline.
Code Review
Codex can automatically review your code directly within GitHub, just like your colleagues would do. For this you can tag @codex review
inside your pull request or enable automatic code review on your repository. To learn more check out the dedicated code review guide.