Agent Skill · dynatrace

dt-js-runtime

Dynatrace server-side JS runtime — function contract, runtime limits, Web APIs, Node.js modules, fetch with credential vault, and the @dynatrace-sdk/* catalog.

Provider: dynatrace Path in repo: skills/dt-js-runtime/SKILL.md

Skill body

Dynatrace JavaScript Runtime

The Dynatrace JS runtime is a server-side AppEngine sandbox that executes JavaScript/TypeScript.

Function contract

Every entry point must export a default async function:

export default async function () {
  // ...
  return result;
}

ES module syntax required. TypeScript accepted (type annotations, interfaces, generics). No other export shape is supported.

References

Start here, then load only the file you need.

File When to load
references/limits-and-restrictions.md Timeout / memory / I/O quotas; what’s forbidden (eval, WebSocket, sockets, filesystem)
references/apis-and-modules.md Which Web APIs and Node.js compat modules are available (fetch, crypto, streams, buffer, …)
references/fetch.md Calling internal /platform/... APIs or external URLs, credential vault, outbound allowlist
references/sdk.md Any @dynatrace-sdk/* package — the index routes you to the right per-SDK file

Running a function with dtctl

Use dtctl exec function to run JS runtime code without deploying an app.

# Run inline code
dtctl exec function --code 'export default async function() { return "hello" }'

# Run from file
dtctl exec function -f script.js

# Pass JSON input — accessed as event.payload inside the function
dtctl exec function -f script.js --payload '{"key":"value"}'

The function may accept an optional event parameter:

export default async function(event) {
  const { payload } = event;   // from --payload
  // event.environmentId also available
  return payload;
}

Load the dynatrace-control skill for authentication setup, context switching, and the full exec function reference.

Skill frontmatter

license: Apache-2.0