Skip to main content
Solved

Disabling AI features in iTerm2?

  • Sep 23, 2025 7:59 PM UTC
  • 2 replies
  • 398 views

sdagley
Forum|alt.badge.img+25

Has anyone gone through the process of creating a Configuration Profile Applications & Custom Setting  payload to restrict the AI options in iTerm2 (the prefs domain is “com.googlecode.iterm2”)? And if so, can you post the profile in this thread?

Since I hate to re-invent the wheel I figured I’d ask before starting to build a payload for this from scratch…

Best answer by cwaldrip

I don’t have iTerm2 to test with, but try this…

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadType</key><string>Configuration</string>
<key>PayloadVersion</key><integer>1</integer>
<key>PayloadDisplayName</key><string>iTerm2 — Disable AI features</string>
<key>PayloadIdentifier</key><string>com.mdm.iterm2.disable-ai</string>
<key>PayloadUUID</key><string>REPLACE-WITH-UUID</string>
<key>PayloadScope</key><string>System</string>
<key>PayloadRemovalDisallowed</key><true/>
<key>PayloadContent</key>
<array>
<dict>
<key>PayloadType</key><string>com.apple.ManagedClient.preferences</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadIdentifier</key>
<string>com.mdm.iterm2.disable-ai.managed</string>
<key>PayloadUUID</key>
<string>REPLACE-WITH-UUID</string>
<key>PayloadDisplayName</key>
<string>Managed Preferences for iTerm2</string>
<key>PayloadContent</key>
<dict>
<key>com.googlecode.iterm2</key>
<dict>
<key>Forced</key>
<array>
<dict>
<key>mcx_preference_settings</key>
<dict>
<key>GenerativeAIAllowed</key>
<false/>
</dict>
</dict>
</array>
</dict>
</dict>
</dict>
</array>
</dict>
</plist>

 

View original

2 replies

Forum|alt.badge.img+17
  • Valued Contributor
  • Answer
  • Sep 25, 2025 7:35 PM UTC

I don’t have iTerm2 to test with, but try this…

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadType</key><string>Configuration</string>
<key>PayloadVersion</key><integer>1</integer>
<key>PayloadDisplayName</key><string>iTerm2 — Disable AI features</string>
<key>PayloadIdentifier</key><string>com.mdm.iterm2.disable-ai</string>
<key>PayloadUUID</key><string>REPLACE-WITH-UUID</string>
<key>PayloadScope</key><string>System</string>
<key>PayloadRemovalDisallowed</key><true/>
<key>PayloadContent</key>
<array>
<dict>
<key>PayloadType</key><string>com.apple.ManagedClient.preferences</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadIdentifier</key>
<string>com.mdm.iterm2.disable-ai.managed</string>
<key>PayloadUUID</key>
<string>REPLACE-WITH-UUID</string>
<key>PayloadDisplayName</key>
<string>Managed Preferences for iTerm2</string>
<key>PayloadContent</key>
<dict>
<key>com.googlecode.iterm2</key>
<dict>
<key>Forced</key>
<array>
<dict>
<key>mcx_preference_settings</key>
<dict>
<key>GenerativeAIAllowed</key>
<false/>
</dict>
</dict>
</array>
</dict>
</dict>
</dict>
</array>
</dict>
</plist>

 


sdagley
Forum|alt.badge.img+25
  • Author
  • Jamf Heroes
  • Sep 26, 2025 2:39 PM UTC

Thanks ​@cwaldrip!

This will work to prevent users from enabling the iTerm2 Generative AI features but unfortunately it appears to just disable the UI associated with changing the AI options and doesn’t turn off the AI features if they were already enabled (same behavior as Apple’s MDM controls for iCloud options)