Skip to content

Application Arguments

Control the command line passed to the target executable. Arguments can be authored globally, per-app policy, or per-launch profile.

What You'll Learn

  • Where to configure arguments across global, app, and launch profile scopes
  • How prepend, append, and replace resolve within and across scopes
  • Examples for appending, prepending, or replacing arguments safely

Where to configure

  • Global (all launches): configuration.launch.arguments
  • Per-app (when that app launches): apps[].modifications.arguments
  • Per-launch profile (only when that launch profile is selected): apps[].profiles[].arguments

Fields

  • prepend: Arguments inserted before the base shortcut arguments
  • append: Arguments inserted after the base shortcut arguments
  • replace: Replaces the entire argument string (highest precedence within the same scope)

Precedence

  • Within a scope: replace overrides both prepend and append.
  • Across scopes: Launch Profile > Policy (App) > Global. See details: Merging & Precedence.

Examples

Append a flag

json
{
  "modifications": {
    "arguments": {
      "append": "--incognito"
    }
  }
}

Prepend and append

json
{
  "modifications": {
    "arguments": {
      "prepend": "--safe-mode",
      "append": "--no-plugins"
    }
  }
}

Replace all arguments

json
{
  "modifications": {
    "arguments": {
      "replace": "--kiosk-mode"
    }
  }
}

Variable Substitution When defining arguments for file associations (in capabilities or fileAssociations), the following variables are available:

VariableDescription
%1Full path to the file
%~dp1Drive and Path only
%~n1File name without extension
%~dpn1Derived Destination Path (Path + Name)

Tips

  • If your change isn’t taking effect, verify that a more specific scope does not set arguments.replace.
  • Quote file placeholders as needed (for example "\"%1\"" ) to preserve spaces.
  • Keep argument ordering deterministic: prepend applies before base shortcut args; append applies after.