Node.js emulator
What is the Node.js emulator?
The Node.js emulator is a secure, embedded runtime powered by Javet, enabling JavaScript execution within Jira itself. No external Node.js installation.
Why use the built-in Node.js emulator?
✅ Fully integrated:
Scripts run directly inside Jira with user-specific permissions—no extra credentials or external Node.js servers needed.✅ Security by design:
Runs in a secure sandbox environment, blocking sensitive modules likefs
,process
,child_process
, andnet
.✅ Stability ensured:
Operates in a separate JVM, ensuring Jira remains stable even if scripts crash.✅ Developer-friendly:
Develop and debug directly in Jira using the integrated Monaco editor with modern JavaScript and LangChain support.
Typical usage flow
Bundle the required npm modules imported from your JS Scripts and upload them into JavaScript Runtime
Develop your JavaScript scripts directly in JavaScript Runner by using the built-in Monaco editor
Save the scripts and integrate them with workflows, issue events, custom fields, or scheduled tasks.
Scripts execute seamlessly with Jira permissions, with logs accessible directly in the Jira interface.
Sandbox & Security
Scripts run under strict sandbox conditions. The emulator restricts:
File access (
fs
)Process management (
process
,child_process
)Network-level operations (
net
,dns
)Operating system-level interactions (
os
)
This ensures a secure scripting environment, protecting Jira from malicious or unsafe operations.
Error Handling & Recovery
If a script crashes, it doesn't compromise Jira’s stability. Simply re-enable the app from the administration panel and adjust your script based on logged feedback.
If your JS Script tries to access to any of the restricted-objects above the JVM might crash, and next uses from the console will display this error:
Always test your scripts thoroughly in a development environment before deploying to production