Skip to main content

Settings reference

Every setting the SweetPad extension reads, in one place. Put them in .vscode/settings.json to keep them per-project (recommended — most of these describe the project, not you), or in your user settings to apply them everywhere.

Each table lists the setting key, its default, and what it does. Settings that deserve a longer story link to the page that tells it.

Build

Covered in depth in Build & Run.

SettingDefaultWhat it does
sweetpad.build.xcodeWorkspacePathPath to the workspace or project to build, absolute or relative to the VSCode folder. Unset = auto-detect (asks if several are found).
sweetpad.build.configurationBuild configuration to use (e.g. Debug, Release). Unset = asks and remembers.
sweetpad.build.args[]Extra arguments appended to every xcodebuild invocation.
sweetpad.build.env{}Environment variables for the xcodebuild process itself. ${env:VAR} expands; null unsets an inherited value.
sweetpad.build.launchArgs[]Arguments passed to your app when it launches.
sweetpad.build.launchEnv{}Environment variables passed to your app when it launches.
sweetpad.build.derivedDataPathCustom DerivedData location, absolute or relative to the VSCode folder.
sweetpad.build.xcodebuildCommandAlternative xcodebuild binary — e.g. Xcode-beta's copy. ${env:VAR} expands.
sweetpad.build.swiftCommandAlternative swift binary, for Swift Package builds. ${env:VAR} expands.
sweetpad.build.archForce an architecture (arm64 or x86_64). Useful for Rosetta builds on Apple Silicon.
sweetpad.build.rosettaDestinationfalsePrefer the Rosetta variant of the target simulator.
sweetpad.build.allowProvisioningUpdatestrueLet Xcode refresh provisioning profiles during the build.
sweetpad.build.xcbeautifyEnabledtruePipe build logs through xcbeautify when it's installed.
sweetpad.build.bringSimulatorToForegroundtrueBring the Simulator window to the front when launching the app. Turn off to stay in VSCode.
sweetpad.build.schemes.include[]Only show schemes matching these patterns in the Build view (* wildcard). Empty = show all.
sweetpad.build.schemes.exclude[]Hide schemes matching these patterns, applied after include.
sweetpad.build.autoRefreshSchemestrueRe-read the scheme list when project files change (Package.swift, .xcodeproj, .xcworkspace).
sweetpad.build.autoRefreshSchemesDelay500Milliseconds to wait after a file change before refreshing schemes.

App logs

How log streaming works — and which settings apply to which destination — is covered in Simulators and Devices.

SettingDefaultWhat it does
sweetpad.build.logStreamEnabledtrueStream your app's logs into the build terminal on launch.
sweetpad.build.logStreamPredicateCustom predicate for Apple's log tool (simulators and macOS only). ${bundleId} and ${processName} are substituted.
sweetpad.build.pymobiledevice3Pathpymobiledevice3Binary used to stream logs from physical devices. Leave as-is to resolve via PATH.
sweetpad.build.pymobiledevice3ExtraArgs[]Extra arguments appended to the device log stream command.
sweetpad.build.pymobiledevice3SubsystemAllowList[]When non-empty, keep only device log entries whose subsystem matches (e.g. com.myapp.*).
sweetpad.build.pymobiledevice3SubsystemDenyList["com.apple.*"]Drop device log entries whose subsystem matches.
sweetpad.build.deviceTunnelAutoStartfalseAuto-start the iOS 17+ developer tunnel (needs sudo) before launching on a device.

Autocomplete and code intelligence

Covered in depth in Autocomplete.

SettingDefaultWhat it does
sweetpad.buildServer.providerxcode-build-serverWhich build server backs SourceKit-LSP: xcode-build-server (parses build logs) or sweetpad (built-in, experimental, no build needed).
sweetpad.buildServer.logLevelinfoVerbosity of the built-in server's live log stream (off, error, info, debug). The log file always captures everything.
sweetpad.buildServer.logPathCustom location for the built-in server's log file. Relative paths and ${workspaceFolder} resolve against the workspace.
sweetpad.build.autoGenerateBuildServerConfigtrueRegenerate buildServer.json on build and scheme change. Turn off if you maintain your own file.
sweetpad.build.autoRestartSwiftLSPtrueRestart the Swift language server after builds and project regeneration.
sweetpad.xcodebuildserver.autogeneratetrueRegenerate the build server config when the default scheme changes.
sweetpad.xcodebuildserver.pathCustom xcode-build-server binary, if it's not on PATH.
sweetpad.xcodebuildserver.serverEnv{}Environment variables for the long-running xcode-build-server process (e.g. XBS_LOGPATH).

Testing

Covered in depth in Tests.

SettingDefaultWhat it does
sweetpad.testing.configurationBuild configuration used when running tests (e.g. Testing). Unset = same flow as building.

Formatting

Covered in depth in Format code.

SettingDefaultWhat it does
sweetpad.format.pathXcode's bundled swift-formatFormatter executable — a command on PATH or an absolute path.
sweetpad.format.argsArguments for the formatter. ${file} is replaced with the file path (as its own array item).
sweetpad.format.selectionArgsArguments for format-selection. Placeholders: ${file}, ${startLine}, ${endLine}, ${startOffset}, ${endOffset}. Unset = whole file is formatted.

Hot reload

Covered in depth in Hot reload.

SettingDefaultWhat it does
sweetpad.hotReload.enabledfalseLaunch simulator/macOS builds with InjectionNext wired up so saves reload live.
sweetpad.hotReload.dylibPathOverride the injection dylib path when InjectionNext isn't in /Applications/.

Project generators

Covered in depth in Tuist and XcodeGen.

SettingDefaultWhat it does
sweetpad.tuist.autogeneratefalseRe-run Tuist generate when Swift files are added or removed. Restart VSCode to apply.
sweetpad.tuist.generate.env{}Environment variables for every Tuist generate run (dynamic configuration).
sweetpad.xcodegen.autogeneratefalseRe-run XcodeGen when Swift files are added or removed. Restart VSCode to apply.

Agent CLI

Covered in depth in Agent CLI & RPC server.

SettingDefaultWhat it does
sweetpad.cliServer.enabledfalseRun the JSON-RPC server so the sweetpad vscode CLI (and AI agents) can drive this window.

System

Most of these matter when something misbehaves — see Troubleshooting.

SettingDefaultWhat it does
sweetpad.system.logLevelinfoExtension log verbosity (debug, info, warn, error). Restart VSCode to apply.
sweetpad.system.taskExecutorv3How tasks run: v3 uses a real pseudoterminal (colors, TUI support); v2 uses plain pipes.
sweetpad.system.autoRevealTerminaltrueBring the terminal panel forward when a command or task starts.
sweetpad.system.showProgressStatusBartrueShow task progress in the status bar.
sweetpad.system.xcodebuildFallbackfalseIf the bundled build-settings resolver fails, retry via xcodebuild -showBuildSettings (slower, but survives exotic projects).
sweetpad.system.enableSentryfalseSend error reports to the maintainers. Off by default; reports may include project details.
sweetpad.shellEnv.shell$SHELLShell used to resolve your login environment (PATH etc.).
sweetpad.shellEnv.timeout5000Milliseconds to wait for the login shell to dump its environment.