Skip to main content

Overview

The tuist edit command generates a temporary Xcode project that allows you to edit your Tuist manifest files (Project.swift, Workspace.swift, etc.) with full IDE support including syntax highlighting, autocomplete, and type checking.

Usage

tuist edit [options]

Options

--path
string
default:"."
The path to the directory whose project will be edited.
-p
string
Short form of --path.
--permanent
boolean
default:"false"
Creates the project in the current directory or the one indicated by -p and doesn’t block the process. By default, the project is temporary and the command blocks until you close Xcode.
-P
boolean
Short form of --permanent.
--only-current-directory
boolean
default:"false"
Only includes the manifest in the current directory. By default, manifests from parent directories and helpers are included.
-o
boolean
Short form of --only-current-directory.

Examples

Edit manifests with Xcode

tuist edit
Generates a temporary Xcode project, opens it, and waits. When you close Xcode, the temporary project is automatically cleaned up.

Edit in background

tuist edit --permanent
Generates an Xcode project in the current directory and returns immediately. The project file remains after closing Xcode.

Edit only current directory

tuist edit --only-current-directory
Creates a project that only includes the manifest files in the current directory, excluding parent manifests and helpers.

Edit from specific path

tuist edit --path ~/Projects/MyApp
Edits the manifests for a project at a specific location.

Permanent project in custom location

tuist edit --permanent --path Features/Login
Creates a permanent edit project for manifests in the Features/Login directory.

How it works

When you run tuist edit, Tuist:
  1. Scans for manifests: Finds all relevant manifest files (.swift files in the project)
  2. Includes helpers: Adds any ProjectDescriptionHelpers modules for autocomplete
  3. Generates Xcode project: Creates a simple Xcode project structure
  4. Opens in Xcode: Launches Xcode with the generated project
  5. Waits (default): Blocks until you close Xcode, then cleans up temporary files

What’s included

The edit project includes:
  • All manifest files (Project.swift, Workspace.swift, Tuist.swift, etc.)
  • ProjectDescriptionHelpers modules with custom extensions
  • Parent directory manifests (unless --only-current-directory is used)
  • The ProjectDescription framework for autocomplete and type checking

Use cases

IDE support for manifests

Get full Xcode IDE features when editing manifest files:
  • Syntax highlighting
  • Code completion
  • Type checking
  • Quick documentation
  • Jump to definition
  • Error highlighting

Working with helpers

Easily navigate and edit ProjectDescriptionHelpers:
tuist edit
You can jump between manifest files and helper modules with full IDE support.

Quick manifest fixes

When you need to make complex changes to manifests:
tuist edit
# Make changes in Xcode with full IDE support
# Close Xcode when done

Persistent edit project

Keep a permanent edit project alongside your code:
tuist edit --permanent
# The .xcodeproj remains for future editing
Add Manifests.xcodeproj to your .gitignore if using this approach.
The edit project is for editing manifests only. It’s not the same as your generated Xcode workspace from tuist generate. Use tuist generate to work on your actual application code.
If you frequently edit manifests, consider using --permanent and adding the generated project to your .gitignore. This gives you persistent IDE support without regenerating each time.