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.
What the video shows
- 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.
- Rovo writes the script: cost-centres.ts, a line at a time.
- Edit it together, live: Emma types on one line while Ryan selects the field id on another.
- The sandbox lists every write: a sandbox run succeeds with 4 requests and 1 change, Edit work item FIN-1, marked simulated.
- Production runs only published scripts: the script is published.
- Run it on events, schedules, rules and requests: a work item created, weekdays at 09:00, an automation rule and an HTTP request.
- Groovy in, TypeScript out: a ScriptRunner Groovy script, and the TypeScript Rovo writes from it.
- Oktul, Atlassian Marketplace Partner.
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 scriptSandbox
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 sandboxTriggers 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 triggerBuilt-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 RovoAgents 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 worksEvery feature
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.
| Capability | Oktul Code StudioOktul | ScriptRunner for Jira (opens in a new tab)Adaptavist | Power Scripts (opens in a new tab)Appfire | Jira 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. | Yes | No | No | No |
| 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. | Yes | No | No | Shows a template's result, not its changes |
| Jira and Confluence in one appOne installation scripts both products, with the same scripts, triggers and settings. | Yes | Confluence is a separate app | No | No |
| 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. | Yes | No | No | No |
| 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. | Yes | No | No | No |
| Listeners and schedulesScripts run on product events and on schedules, without a person starting them. | Yes | Yes | Yes | Yes |
| Scripted fieldsA custom field whose value a script computes. | Yes | Yes | Yes | No |
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.
Automated tests
Including the sandbox, licence, logging and authorisation suites.
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.
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 documentationYour 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 documentationInstallation runs through the Atlassian Marketplace
There is absolutely no infrastructure on Oktul's side. The entire application runs within your Atlassian ecosystem.
- 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.
- 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.
- 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.
- 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
For your security review
Send to your security team (opens a new email)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
Work Item Selector
Allow users to pick work items based on Jira Query Language (JQL).
Free for up to 10 users. Larger sites try it free for 30 days.
SignPlus
Sign a Confluence page, and prove later which version was signed.
Free for up to 10 users. Larger sites try it free for 30 days.
Work Item Macro
Show Jira work items on Confluence pages, any field as a column.
Free for up to 10 users. Larger sites try it free for 30 days.
Regex Field
Pending Atlassian approval
Jira fields that fill themselves in from the form, and only accept your format.
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.
