Silent Mode Behavior

The --silentMode flag suppresses all console output (both stdout and stderr). This is designed for scheduled tasks and automated deployments where no interactive console is available. All other behavior — file logging, run reports, exit codes, and operations — remains identical.


What Changes in Silent Mode

Behavior Normal Mode Silent Mode
Progress output Written to stdout in pipe-delimited format Suppressed
Error messages Written to stderr Suppressed
Help text Displayed on validation errors and --help Suppressed
Application log Written to app.csv Written to app.csv (unchanged)
Audit log Written to audit CSV Written to audit CSV (unchanged)
Run report Saved as JSON in report folder Saved as JSON in report folder (unchanged)
Exit code Set on process exit Set on process exit (unchanged)
Event pipeline Events dispatched to configured sinks Events dispatched to configured sinks (unchanged)


When to Use Silent Mode

Silent mode is recommended for:

  • Windows Scheduled Tasks — Tasks running under SYSTEM or a service account where no console window exists.
  • SCCM/Intune task sequences — Deployment scripts where console output is not captured or would interfere with the deployment log.
  • GPO logon/logoff scripts — Scripts that run in the background during user logon or logoff.
  • CI/CD pipelines — Automated workflows where only the exit code and log files are monitored.


Troubleshooting in Silent Mode

Since console output is not available, use the following to diagnose issues:

  1. Exit code — Check %ERRORLEVEL% or $LASTEXITCODE immediately after execution. See Exit Codes for meanings.
  2. Application log — Open app.csv in the log folder. All operations, warnings, and errors are recorded here regardless of silent mode.
  3. Run report — Check the most recent report_*.json file in the report folder for step-by-step results and error details.
  4. Audit log — Verify the operation was recorded in the audit log with the expected outcome.

A common pattern for scheduled tasks is to combine silent mode with exit code checking and log file monitoring:

AppProfileSafe.CLI.exe --export --manifestFile "\\server\share\Manifest.xml" --apps "Firefox,Chrome" --unc-credential-store --silentMode
IF %ERRORLEVEL% NEQ 0 (
    :: Log failure, send alert, etc.
    eventcreate /T ERROR /ID 1001 /L Application /SO "AppProfileSafe" /D "Export failed with code %ERRORLEVEL%"
)