Oktul home
Contact us

Oktul Code Studio

Oktul Code Studio runs JavaScript and TypeScript in Jira and Confluence Cloud: listeners, schedules, automation and a sandbox that lists every change first.

Ask for a demo (opens in a new tab) We reply within 24 hours, Monday to Friday.

Pending Atlassian approvalCSA STAR Level 1 (opens in a new tab)Version 2.9.0
What the video shows
  1. Describe a script in your own words: in Script with Rovo, one sentence says what the script should do, and Write it with Rovo is selected.
  2. Rovo writes the script: cost-centres.ts, a line at a time.
  3. Edit it together, live: Emma types on one line while Ryan selects the field id on another.
  4. The sandbox lists every write: a sandbox run succeeds with 4 requests and 1 change, Edit work item FIN-1, marked simulated.
  5. Production runs only published scripts: the script is published.
  6. Run it on events, schedules, rules and requests: a work item created, weekdays at 09:00, an automation rule and an HTTP request.
  7. Groovy in, TypeScript out: a ScriptRunner Groovy script, and the TypeScript Rovo writes from it.
  8. Oktul, Atlassian Marketplace Partner.

Open the video on its own page

Scripts usually run on a vendor's servers

Every script needs somewhere to run and to keep its credentials

A script that changes work items or pages on an event, a schedule or a rule needs a server and a safe place for its credentials. Someone also has to know what it will do before it runs.

Testing a script on production changes production

A script is tested by running it. A test site rarely holds the same data.

A sandbox run lists every write instead of making it

Oktul Code Studio runs every script on Atlassian Forge, inside your Atlassian ecosystem. In the sandbox a script reads your real data and lists each change it would make. Production runs only scripts a site administrator has published.

What it does in Jira and Confluence

One app for both products. Install it for your site's main product and connect the other.

In-product editor

The console opens from the product's Apps menu. It has a script tree in spaces and an editor with TypeScript completion for the Code Studio API. It also has revisions, drafts and publishing, and a run panel with the log, the result and the changes.

Write a script

Sandbox

In the sandbox a script reads real Jira and Confluence data. Each write is recorded and answered with a simulated response. A production run can still differ, because the site can change in between.

Test in the sandbox

Triggers and schedules

A script runs on a Jira or Confluence event, on a cron schedule, from a Jira automation rule with its smart values, or from an HTTP request that carries a secret. Any run can be stopped at any moment.

Set a trigger

Built-in AI scripting

Describe a script in your own words, or hand over exported automation rules. The Rovo author plans it, writes it and tests it in the sandbox. Rovo's AI credits come from your organisation's allowance.

Describe a script to Rovo

Agents that read your site as you

Code Studio's five Rovo agents read your scripts and your site as the person talking to them, with that person's permissions. They write drafts only. Once an organisation admin connects Code Studio, every script is in the Teamwork Graph, and Rovo Search and Rovo Chat show it only to the people Code Studio shows it to. Claude and other assistants can use the same tools on the person's own plan, once an administrator turns them on. The app runs no AI model and holds no AI provider key.

Read how it works

Compared with other scripting apps

A tick means the app does everything the row describes. Where it does part of it, the cell names what is missing.

CapabilityOktul Code StudioOktulScriptRunner for Jira (opens in a new tab)AdaptavistPower Scripts (opens in a new tab)AppfireJira Misc Workflow Extensions (JMWE) (opens in a new tab)Appfire
JavaScript and TypeScriptScripts are written in JavaScript or TypeScript, with completion for the app's own API in the editor.YesNoNoNo
A sandbox that lists the changesA test run reads the site's real data, records every write instead of sending it, and lists the changes it would have made.YesNoNoShows a template's result, not its changes
Jira and Confluence in one appOne installation scripts both products, with the same scripts, triggers and settings.YesConfluence is a separate appNoNo
Scripts stay inside AtlassianScripts, runs and logs are kept in the site's Forge storage and run on Atlassian Forge. No server of the app's vendor stores or runs a script.YesNoNoNo
Rovo agents for scriptsRovo agents write a script from a description, convert ScriptRunner Groovy to TypeScript, and debug, optimise and edit scripts. Every draft runs in the sandbox, and a person publishes it.YesNoNoNo
Listeners and schedulesScripts run on product events and on schedules, without a person starting them.YesYesYesYes
Scripted fieldsA custom field whose value a script computes.YesYesYesNo

Checked on against each product's published documentation and its Marketplace listing. A dash means the feature is in neither. If a row no longer matches what an app does, write to hello@oktul.com (opens a new email) and we will check it again.

The tests every release has to pass

A release ships only when it passes these tests. Before each release and once a month we also scan its code for vulnerable dependencies, leaked secrets and unsafe patterns, and attack its web triggers where it has any.

1,579

Automated tests

Including the sandbox, licence, logging and authorisation suites.

114

Test suites

The JavaScript engine, replay, the run consumer, triggers, the console and the manifest.

Install one listing, for your site's main product

Oktul Code Studio for Jira and Oktul Code Studio for Confluence are one app with the same features. Install the one for the product you work in most, and connect the other. Never install both: two installations share nothing, scripts included.

For Jira

Your site's main product is Jira

The console opens in Jira. If the site has Confluence too, an organisation administrator connects it to the same installation. Only this listing publishes scripts to Rovo Search.

Read the documentation
For Confluence

Your site's main product is Confluence

The console opens in Confluence. If the site has Jira too, connecting it adds Jira's events, the automation action, scripted fields and dynamic forms. Confluence administrators manage Code Studio.

Read the documentation

Installation runs through the Atlassian Marketplace

There is absolutely no infrastructure on Oktul's side. The entire application runs within your Atlassian ecosystem.

  1. Install it for your site's main productInstall one listing: the Jira one on a Jira site, the Confluence one on a Confluence site. A site administrator approves the permissions listed below.
  2. Decide who may use itSite administrators can use it at once, and the developer groups you add can write scripts and run them in the sandbox.
  3. Write a script and run it in the sandboxOpen Code Studio from the Apps menu, create a script and select Run. The run panel lists what it would change.
  4. Publish it and give it a triggerAn administrator publishes the script and adds a listener, a schedule or an API trigger, or allows it in automation rules.

Host platform and compatibility

Host products
Jira Cloud and Confluence Cloud
Script languages
JavaScript, TypeScript and AssemblyScript
Languages
English
Data residency
Your site’s, for the app's storage
Version
2.9.0, 04.11.2026

CSA STAR Level 1

This application is listed in the Cloud Security Alliance STAR Registry at Level 1. We completed the CAIQ Lite questionnaire with all 138 questions, and published it for you or for your security reviewer.

Read the assessment (opens in a new tab)

Questions administrators ask

Should I install Code Studio for Jira or for Confluence?

The one for your site's main product, and only that one. Both listings are the same app with the same features, so a site with only Jira or only Confluence can install it. Connect the other product to the same installation. Two installations would be two separate Code Studios with no shared scripts.

Can Rovo write a Jira script from a description?

Yes. Choose Script with Rovo, then Write a new script, and describe what it should do, or hand it exported Jira automation rules. The Rovo author plans the script, writes it as a draft and runs it in the sandbox. You see what it would change before anyone publishes it. It uses your organisation's Rovo AI credits.

Can Code Studio run my ScriptRunner for Jira Cloud Groovy scripts?

Not as Groovy. Code Studio runs JavaScript and TypeScript. Its Rovo translator converts a Groovy script to a TypeScript draft beside the original and maps ScriptRunner's HAPI calls to the REST calls they make. It checks the draft and runs it in the sandbox, and a person publishes it. A fragment that is not a whole script is reported as not convertible. ScriptRunner Connect scripts run unchanged.

How do I test a Jira script without changing anything?

Run it in Code Studio's sandbox. The script reads your site's real data, and every write it makes is recorded and answered with a simulated response instead of being sent. The run lists each change it would have made. Production runs only scripts a site administrator has published.

How long can a script run?

About an hour. A Forge invocation lasts at most 900 seconds. Code Studio stops a run 30 seconds before the end and continues it in a new invocation, at most three times. A run that would need a fourth is stopped as runaway. context.checkpoint(state) lets a long loop resume where it stopped.

Who can write and run scripts?

Site administrators of the app's required product, and members of the developer groups an administrator names. Developers write scripts and run them in the sandbox. Publishing, production runs and triggers stay with administrators, unless an administrator lets developers run published scripts in production as themselves.

Does Rovo Search find our scripts?

Yes, once an organisation admin connects Code Studio in Atlassian Administration. Every script becomes a document in the Teamwork Graph with Code Studio's own access: the developer groups, and a restricted space's people as well, never the whole site. Group membership is read again every hour. A sync that cannot finish takes out what it was changing, and disconnecting deletes everything Code Studio sent. The connector is in the Jira app only, because Atlassian accepts connectors only from apps installed in Jira.

Can we use Claude or Claude Code with Code Studio?

Yes, on each person's own Claude plan, with no API key. An administrator turns on Code Studio's tools in Atlassian Administration. Each person adds Code Studio's MCP address to Claude and signs in with their Atlassian account. Claude then reads only what that person may read, and only changes drafts and runs the sandbox. What it reads goes to Anthropic under your agreement with them. Atlassian offers outside assistants as early access.

Can an AI agent change production?

No. Every agent tool, Rovo's or an outside assistant's, acts as the person and writes drafts or runs the sandbox, where every write is recorded instead of sent. Publishing, production runs, listeners and schedules stay with a person in the console. An agent may start at most ten sandbox runs per person in ten minutes.

Can a script call any URL?

Only hosts the app declares, and hosts a site administrator has approved in Atlassian's own egress dialog. A connection adds its credential after the script has built the request, so the script never sees it.

What happens to our data if we uninstall?

Scripted field values stay on their work items. According to Atlassian's documentation, the app's Forge storage (scripts, runs, settings and credentials) comes back if the app is reinstalled within 21 days, and then Atlassian deletes it. Export the configuration first: scripts, triggers, connections and settings in one file, with secrets only inside an envelope sealed with a passphrase.

Where do I get help?

Raise a request in the Oktul Help Center, or email support@oktul.com.

Oktul's other applications

Pending Atlassian approval

This application is currently being reviewed by Atlassian. After the review it will become publicly available, which usually takes around 10 business days.