Early beta (0.1.0), not yet for critical processes. See the roadmap
PNeX logo

Functions

Versioned JavaScript and Starlark functions with live validation

When a flow node is not enough, PNeX exposes a functions registry: per-organization user functions in JavaScript (QuickJS sandbox) or Starlark, with append-only versioning and live validation.

Lifecycle

  1. Create a function and pick its language.
  2. Edit with live validation — the platform spawns the real runtime binary to check syntax and run a test payload before you save.
  3. Version: every save appends a version; deployed flows pin an exact version, inlined at deploy time.
  4. Test against the live runtime before referencing it in a flow.

New function dialog with Starlark/JavaScript and templates

Starlark editor with the @input/@output ports panel

Sandboxing

JavaScript runs in a QuickJS sandbox with an interrupt handler as the single reliable bound on runaway code. Starlark offers a deterministic, Python-flavoured alternative. The function replaces the incoming message payload with its return value — it does not merge into it.

Live test run with per-port outputs

AI-assisted authoring

The integrated AI assistant can draft and fix functions on request (see AI Assistant), and the editor offers quick-fixes for common validation errors.

On this page