Follow up on this topic:
I ultimately ended up using a variation of this AppleScript from @bentoms, removing the portions for setting up printers and checking for and mounting network volumes based on Active Directory group memberships:
http://macmule.com/2011/09/08/how-to-map-drives-printers-based-on-ad-group-membership-on-osx/
From there I saved it as an application, created a package to deploy it to /Applications/Utilities/, then setup a policy to do the actual installation on all my managed clients.
Instead of creating a LaunchAgent and deploying it directly to the managed client, I was able to employ a User Level Configuration Profile with a Login Item payload.
Since this is a Non-Apple application however, I could not select it directly when creating the Configuration Profile in the JSS. Instead I had to:
• Create the Configuration Profile and select Activity Monitor.app in the payload.
• Download the Configuration Profile to my Desktop.
• Open the Configuration Profile in Xcode (or any other text editor).
• Update the path to the application in the Path key (and clean up the XML a bit).
• Delete the Configuration Profile from the JSS.
• Upload the modified Configuration Profile to the JSS.
It's worth noting that when you view the Login Item payload for the uploaded Configuration Profile, it will appear in the JSS as though no items are actually set to be launched.
However, downloading the Configuration Profile and opening it in Xcode will confirm otherwise.
For example:
<?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">
<dict>
<key>PayloadUUID</key>
<string>84419CAD-C4F8-4AF2-A46B-F76834AAEA47</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadOrganization</key>
<string>YOUR_COMPANY_HERE</string>
<key>PayloadIdentifier</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
<key>PayloadDisplayName</key>
<string>PAYLOAD_NAME_HERE</string>
<key>PayloadDescription</key>
<string/>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadEnabled</key>
<true/>
<key>PayloadRemovalDisallowed</key>
<true/>
<key>PayloadScope</key>
<string>User</string>
<key>PayloadContent</key>
<array>
<dict>
<key>PayloadUUID</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
<key>PayloadType</key>
<string>com.apple.loginitems.managed</string>
<key>PayloadOrganization</key>
<string>YOUR_COMPANY_HERE</string>
<key>PayloadIdentifier</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
<key>PayloadDisplayName</key>
<string>Login Items: Managed Items</string>
<key>PayloadDescription</key>
<string/>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadEnabled</key>
<true/>
<key>AutoLaunchedApplicationDictionary-managed</key>
<array>
<dict>
<key>Hide</key>
<true/>
<key>Path</key>
<string>/PATH/TO/YOUR/APPLICATION.app</string>
</dict>
</array>
</dict>
<dict>
<key>PayloadUUID</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
<key>PayloadType</key>
<string>com.apple.loginwindow</string>
<key>PayloadOrganization</key>
<string>YOUR_COMPANY_HERE</string>
<key>PayloadIdentifier</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
<key>PayloadDisplayName</key>
<string>Login Window</string>
<key>PayloadDescription</key>
<string/>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadEnabled</key>
<true/>
<key>DisableLoginItemsSuppression</key>
<false/>
</dict>
</array>
</dict>
</plist>