Skip to the main content.

ScriptRunner Blog

ScriptRunner Ultimate Edition 6 – AI‑powered scripting

Table of contents

 

 

Post Featured Image

Ultimate Edition 6 is the latest and most elaborate version on the existing platform technology. It includes all previous features and some new ones, as well as a largely consistent look and feel in the role-based portal. 

Important note: 
As the Portal combines all functionalities, using multiple apps is no longer required. In line with previous announcements, the legacy, discontinued web apps and the desktop apps are NOT included in the product package anymore, being incompatible with the new and further developed server APIs.

 

 

Quick overview

The core element of Ultimate Edition 6 is Artificial Intelligence (AI). With the help of AI-powered script development, our customers can create new PowerShell scripts as well as extend existing scripts. AI is also becoming a game changer for automation, and we will be expanding the feature set considerably in future releases: Scripting, creating queries and use cases in ScriptRunner will be significantly easier.

Other minor improvements in the UI will find their way into future fix releases for Ultimate Edition 6. All new features and enhancements will only be done on the new Vnext platform in the future, with a first product release planned for Q4-2023.

Besides some new features, many details have been optimized in Ultimate Edition 6, so the list of changes and news is long:

  • New, simplified setup
  • Improved UX for scripts
  • AI-supported scripting
  • Improvements in PowerShell reporting
  • Improved UX for permission group configuration
  • New selection dialogs
  • New overviews for connectors and licenses
  • Support for Microsoft Graph V2
  • Automatic parameter recovery for new script version 
  • PowerShell objects in scripted queries
  • Live Monitor now also for team administrators 
  • Improvements in user experience and design
  • Offline help
  • Streamlined controls and optimized listings

 

New, simplified setup

Portal Edition R5 completed the cycle of developing a role-based ScriptRunner portal. At the same time, the application logic was changed so that IIS is no longer necessary on the ScriptRunner server. Meanwhile, many new features in the server and portal are no longer compatible with the old applications.  

With the initiation of developing and releasing the new Portal, the discontinuation of the old Web Apps as well as the Desktop Apps was repeatedly announced. Accordingly, with Ultimate Edition 6, the Admin App, Delegate App and End User App will now be discontinued.

All components will now be bundled into a single setup. What are the implications for our customers?

1.) New installations of ScriptRunner Ultimate Edition 6  

For a new installation, e.g. for testing, for an additional instance or for migration to a new VM, ScriptRunner is installed without IIS. The portal is accessed via a default URL. Both the portal and the ScriptRunner Service Endpoint (API) are now uniformly addressed via port 80/443. This simplifies communication through firewalls, proxies and content filters.

2.) Upgrading an instance of Portal Edition (running with IIS) to Ultimate Edition 6

After upgrading an implementation with IIS, only the portal is accessible under its default URL on port 80/443. The ScriptRunner Service Endpoint (API) will be accessed via port 8091 or 8092. The configured authentification mechanisms do not change. The older apps will be uninstalled after the upgrade.   

3.) Upgrade to an upcoming ScriptRunner version 7

Only a ScriptRunner instance without IIS can be upgraded to the upcoming version 7. This means that instances with portal operation with IIS have to be switched to integrated operation before. You can find instructions here.  

 

Improved UX for scripts 

The overview page for scripts has been completely redesigned to match the new design. At the top, you can now see which script editing mode is set on the server. (Read more about the topic here: "Depending on the global script edit mode")

In addition, the columns have been expanded and rearranged to show both the editing status of a script and the path to the script on the server or in the Git repository. For long paths, a tooltip supports the users.  

01_dropzone

New script overview with a dropzone for easy, intuitive script uploading 

 

The function for uploading scripts has been completely revised. There is now a drop zone at the bottom of the overview for a quick click & drop upload. You can click on it or simply drag one or more ps1 files onto it and drop them. If only one script was selected, this script opens in edit mode. The location on the server, an owner and tags for the script can be configured on the right side in this mode. If the user is a member of an admin team, an owner can only be selected from their own memberships.

If multiple scripts have been selected for upload, they can be placed directly in the desired location on the server with the same metadata. In this case, no edit mode is available.

03_upload multiple scripts

Script editing mode with settings before uploading to the server (multiple scripts)

 

02_code view vor upload auf server

Script editing mode with settings before uploading to the server

 

The wizard for creating a new script has been fundamentally revised and is now based on a new, user-centric operating concept. Users make a pre-selection from various templates that cover different needs. The three categories to choose from are: 

The wizard for creating a new script has been fundamentally revised and is now based on a new, user-centric operating concept. Users make a pre-selection from various templates that cover different needs. The three categories to choose from are: 

  • built-in templates for completely empty scripts, ScriptRunner main scripts, query scripts and library scripts  
  • direct selection and download of individual scripts from ScriptRunner Action Packs
  • AI powered scripting (see next chapter)

Clicking the 'Create' button opens the selection. In the example below, a new script is created using the Action Packs: 

03_Auswahl zum Erstellen eines Scripts

Create a script using Action Packs 

 

Within the Action Packs, you can navigate to individual scripts via a breadcrumb. Selecting a script then opens the code view with the settings as for the upload. The name of the script is then already filled in. The script code itself cannot be edited in this case (read-only).

04_Navigieren in den ActionPacks

Navigating in the ScriptRunner Action Packs and downloading a script  

 

After downloading the script and uploading it to the server, you can now select the script in the list.  

05_Suchen und Auswählen

Searching and selecting the previously created script   

 

The properties and editing of scripts have also been redesigned. In the 'Header Information' tab, there is now an area that contains the header of the script and also an overview of the parameter settings in the script, from which the respective data type and other parameter attributes, such as 'Mandatory', and more can be recognized immediately.

06_Headerinformationen

Extensive header information with parameter name, data type, and parameter attributes  

 

After checking out the script, it can be edited in the code editor. The user dialogs for the functions 'Commit', 'Revoke' and 'Discard changes' have now been harmonized. Changes to scripts by different administrators can be tracked as usual under the properties in the 'Change history' tab.   

07_nachvollziehbare Änderungen

Changes can be tracked via the change history at any time  

 

By clicking the 'Compare' button, script versions can be compared with their respective predecessor. It is also possible to revert to a previous version at any time after checking out the current script. 

08_Vergleich von Skriptversionen

Comparing script versions in the new compare dialog  

 

AI-powered scripting

To use AI-powered script development, you need an API Key for ChatGPT (OpenAI article: "Where do I find my secret API Key?")

This must be entered in the ScriptRunner Portal settings under User Settings > General > API settings

To be able to develop a script with AI support, the corresponding template is selected in the script wizard.

  

09_KI Unterstützte Skriptgenerierung

Create a script using AI support 

 

A text input opens, which is used as a preconfigured prompt dialog. This means that basic requirements like creating a PowerShell script with header, parameter block and try-catch-throw code structure are automatically entered by ScriptRunner. This allows script developers to fully concentrate on formulating the actual use case (or 'script case') in the prompt dialog.

10_Eingabefeld für KI-Prompt

Text input field for the AI prompt with request ('Script Case') 

 

By clicking the 'Generate script' button, the request is sent to the AI. The AI generates a corresponding proposal for the script code. The process can also be repeated.

More on this topic in the Coding Guide, chapter "Using AI-support".  

11_using-ai-support

The input of the 'Script Case' can be adjusted and the generation process can be repeated. Alternatively, the script can be stored for testing, modification and use.

 

AI support can also be used in already generated or existing scripts, regardless of whether the script was created with AI or not. To do this, the script first has to be checked out. Then move the cursor to the corresponding position in the code editor and press the 'AI' button or CTRL-F1. The AI popup window will open. Enter the description of the desired code snippet in the text field and click 'Generate'. The code snippet generated by the AI will be inserted at the cursor position.

Description in our Coding Guide, "Inserting AI-generated code".

11_insert AI-generated code snippet

Inserting AI-generated code snippets into an existing script

The AI support features in ScriptRunner will be successively extended in subsequent versions.

 

PowerShell reporting improved

Conceptually, the view for the PowerShell 'Report' has been completely revised and redeveloped. In the top line, you can immediately see whether an action or a script query generated the report. The next line gives information about the time of execution, the execution duration and an indicator if it was a scheduled execution. In an action line, all possible interactions for the report can be selected. 

The expandable information about the execution of the action also contains the values used for the parameters. 

Depending on the selection, the individual results are displayed in the Report Viewer. On the right, you can enter the length of the report and where it is displayed; with a slider, you can quickly move through the report to the desired position.  

12_neuer PowerShell Report

New PowerShell report with more information and new 'Report Viewer' 

 

In addition to the new design for the display in logarithmic scaling and the use of the standard colors, reports can now be compared with each other. This is useful to compare results of different executions of the same action, or to compare results of actions with the same underlying script. 

13 modernisierte Übersicht für PowerShell und verbesserte Compare-Funktion

Modernized overview for PowerShell reports with improved 'Compare' function     

 

The new 'Compare' dialog has the look & feel of a single report. One new feature is the now expandable comparison of the execution information with the values used for the PowerShell parameters. The latter can contain valuable information for the causes of errors. The 'Report Viewer' uses only the raw data of the PowerShell report in 'Compare' mode. On the right, the length of the report and the location of the display are recorded. A slider allows users to quickly move through the comparison to the desired locations. 

14_Compare-Dialog

Execution information can now be compared in the new 'Compare' dialog 

 

Improved UX for access group configuration 

All available functions and features in ScriptRunner require permissions, which are bundled into corresponding roles. Access rights for users are assigned via Access Groups. Access Groups can contain both user and group identities from an Identity Provider e.g. Active Directory, Azure Active Directory (now Microsoft Entra), Okta or others. Details are described in our Concepts & Planning Guide

 15_Übersicht Access groups nach Rollenprofil

Overview of all configured Access Groups grouped by their role profile  

 

In Ultimate Edition 6, in addition to the renewed list overview for all Access Groups, there is also a changed user interface for creating and editing individual Access Groups as well as Memberships. As a result, the old wizard has now been completely replaced. 

16_Anlegen Access Group

Creating an Access Group (in helpdesk role) and configuring the memberships  

 

Depending on the server configuration, different authentication methods are available. Individual memberships can be switched off and on for test purposes or for administrative reasons. 

Each Access Group can be given different actions for delegation. 

17_Auswahl und Anzeige delegierte Aktionen

Selection and display for delegated actions for this Access Group 

 

New selection dialogs 

To improve and harmonize the configuration of elements, new selection dialogs have been developed for actions, queries, targets and credentials. The change from simple drop-down to list selection now allows searching and finding as well as filtering of elements in a large number of entries. A distinction is made between multi-select and single-select dialogs, discernible by the selection boxes. 

18_

New dialog for multi-select e.g. for actions and targets

 

Important additional information has been included in the table of the respective selection box. This facilitates the selection of the correct element.  

19_

Neuer Dialog für Single-Select-Auswahl bspw. für Queries und Credentials 

 

New overview for connectors and licenses  

The overview and settings for connectors have also been transferred to the new design language. In the overview, automation connectors and integration connectors have been grouped.  

20_Connectors Overview

New connector overview, grouped by connector type 

 

Automation connectors serve the purpose of end-2-end automation. Third-party systems such as ITSM, workflows, IDM, monitoring and others can launch actions in ScriptRunner and get results for further processing. Users typically work in the third-party system's UI. Automation connectors are created using a 'Create' menu, just like ScriptRunner configuration items. Settings are then made on appropriate tabs.   

21_web service example-authorized access group

Web service connector configuration item with access group and assigned actions

 

Integration Connectors connect ScriptRunner to a customer's infrastructure, be it IDM for authentication, enterprise password management for managing secrets, or writing information to other systems for monitoring and control of IT infrastructure. Integration connectors are configured on the ScriptRunner server, and their configuration can be retrieved at any time via the portal.    

22_Connectors_Integration_Connector

Information element for e-mail notification connector    

 

The license overview has undergone a major redesign in order to capture essential information more quickly. The function for requesting licenses has been made more user-friendly.  

23_Licenses_Overview

New overview page for licenses 

 

Other new features 

Support for Microsoft Graph version 2 

Microsoft has again made changes and additions to the connection management with the PowerShell module in version 2. The ScriptRunner target for Microsoft Graph now automatically takes these new settings into account. ScriptRunner server can handle both versions. If an installed version 2 of the PowerShell module is detected, the new connection management is automatically used when establishing a connection. Additional settings are not necessary. 

24_Einstellungen Verbindungsaufbau Microsoft Graph

Settings for automatic connection to Microsoft Graph  

The new PowerShell module version 2 can be found here

Further information about the module update and new cmdlets in version 2 are published here.  

 

Automatic parameter recovery for new script version 

The feature to restore set parameter values when switching to and from a script in an action is new. This allows administrators to select a newer version of a script to run in the action. The default settings for parameters e.g. default values or assigned queries are now saved. This reduces effort when updating scripts in actions. 

 

PowerShell objects in scripted queries

After whole JSON objects can be passed to the main script in AD queries and in Azure queries, the possibility to use multi-attributes has been extended to scripted queries. In the query script, a PS custom object or hashtable is used for this purpose. The assignment of the object in the query script is done on $SRXEnv.ResultList. 

An example can be found here (Coding Guide: "Input with script queries"). 

The object or hashtable is encoded in the query and decoded in the action. In the main script, the object and its contents can be accessed directly or via the splatting feature on individual attributes. More about this in the Coding Guide under "Input with multi-attribute queries".

The connection between the PS custom object or hashtable in the query script with the PS custom object or hashtable in the main script is made in the 'Action configuration' under 'Script'.

 

Live Monitor now also for team administrators 

The live monitor in ScriptRunner enjoys increasing popularity among administrators. The processing of scripts can be directly monitored in real-time and switched to individual processing streams. Starting from this version, all functions of the live monitor are now also available to all administrators in the teams (ScriptRunner role 'Administrator') and not only to those in the role 'Main Administrator'.

 

Improvements in user experience and design   

Various controls have been redesigned and standardized in terms of their design and usability, such as buttons, menu titles, item selection, and list views. This includes settings for actions, queries, targets, credentials, and scripts as well as elements in the 'Settings' area and the editing of tags.

 

Offline help  

When using the portal without an internet connection, offline help can be used. This is displayed via a message (Toasty) in the portal. A current version of the offline help (Portal Guide) can be obtained in the future in the form of HTML files with integrated navigation in the Release Guide on our support website.

 

 

Good2know

Watch our release video – Everything in just 4 minutes

Find a concise, quick overview what ScriptRunner Ultimate Edition 6 has to offer in our release video! 

 

  • 00:00 - 00:20 – Intro
  • 00:21 - 00:40 – Notes on web apps and integrated web service
  • 00:41 - 01:32 – Innovations in the script area including the drop zone
  • 01:33 - 01:58 – Create and Action Pack entry page
  • 01:59 - 02:10 – Header area within the script
  • 02:11 - 02:45 – Update of the report including improved compare function
  • 02:46 - 03:27 – Various UI improvements, authorize and delegate, connectors and licenses
  • 03:28 - 03:48 – ChatGPT integration - AI-powered scripting
  • 03:49 - 04:16 – Summary

 

Watch the video!

 

 

 

Related links

Related posts

19 min read

ScriptRunner Ultimate Edition 6 – AI‑powered scripting

13 min read

ScriptRunner Portal Edition R5 – Mission accomplished

17 min read

ScriptRunner Portal Edition R4

About the author: