Windows x64 · .NET installs itself

openX

A focused desktop host for the Capi / Xeno.dll executor API. One window, document tabs that behave like a real editor, and a launcher that sets up the runtime for you.

no installer · no telemetry · no bundled core · 4.3 MB

0 calls
network at runtime
5 exports
core ABI bridged
1 click
.NET bootstrap
∞ tabs
documents, not modes
Overview

The wrapper, rebuilt around what actually works.

The published Capi package is a 360-line P/Invoke layer whose every download and update endpoint now returns 404. openX keeps the ABI, deletes the dead paths, and puts a real interface on top of it.

Scintilla editor

Lua lexer, line numbers, a dark palette that doesn't fight the rest of the window. Tabs sit on top: a dot marks unsaved work, F2 renames, Ctrl+W closes.

Multi-client targeting

GetClients feeds a live dropdown. Send to every attached client at once, or pick one by name.

Docked console

Timestamps, color-coded info / ok / warn / error, and a scrollback you can actually read in a dark room. Dock it under the editor or collapse it.

Auto-attach + autoexec

Polls for clients and attaches when the core is ready. Runs setup.lua, then every autoexec/ script, once per client.

Core integrity

Every load prints the SHA-256 of the DLL it mapped. If the hash changes, you'll see it in the console before a script runs.

Portable layout

One folder: exe, DLLs, scripts/, autoexec/, and a config.ini written on exit. No registry, no install directory.

Interface

One window. Documents on top.

Tabs are files, not fixed modes — open as many as you want. Rendered from the real WinForms layout: same sizes, same palette, same dock order.

openX.host.exe 1180 × 780
openX window with document tabs on top, a syntax-highlighted hello.lua, the scripts and autoexec list, the client dropdown and the docked console
Runtime

.NET installs itself on first launch.

openX.exe is a ~46 KB native Win32 launcher. It needs nothing installed, which is exactly why it can install what the app needs.

Check

Reads NDP\v4\Full\Release from the registry, 64-bit view.

Run

At 461808 or higher — .NET Framework 4.7.2 — it starts the host immediately, no prompt.

Fetch

If missing, it asks once, then pulls Microsoft's official offline installer over HTTPS.

Install

Runs it quietly, handles the reboot-required codes, re-checks, then launches.

✓Asked firstNothing downloads unless the framework is genuinely absent.
✓Official sourceThe installer comes from Microsoft's own go.microsoft.com link, not a mirror.
✓Skips itselfWindows 10 1809+ and Windows 11 already ship 4.8, so the launcher is invisible.
✓No leftoversThe downloaded installer is deleted after it runs.
Scope

What openX does, and what it doesn't.

Executors are a scene full of promises. Here's the actual list.

✓Runs scripts you writethrough whatever core you load.
✕Doesn't ship a coreXeno.dll is closed source and not distributable here.
✓Bridges the five exportsInitialize, Attach, GetClients, Execute, Compilable.
✕Doesn't phone homeno update check, no broadcast channel, no remote setup fetch.
✓Shows what it loadedpath, SHA-256, and every failure in plain text.
✕Doesn't promise safetyno "undetected" claim, and no bypass of anything.
Reality check. Executing scripts in Roblox violates the platform's terms and can get accounts banned. openX is a host for a third-party DLL — it can't change what that DLL does or whether Roblox's client currently tolerates it.

Get openX

Requires Windows 10/11 x64 and a Xeno.dll build you trust. The launcher handles .NET.

openX-1.0-win64.zip · 4.3 MB · no core included · SHA-256

FAQ

Questions worth asking.

Do I need to install .NET myself?
No. Run openX.exe. It checks for .NET Framework 4.7.2 and, if it's missing, asks once before downloading Microsoft's offline installer. Windows 10 1809+ and Windows 11 already include 4.8, so most machines never see the prompt.
Does it include the executor core?
No. Xeno.dll is closed source, and every URL the original package used for it returns 404. Drop a build you trust next to openX.host.exe, or click the core chip in the sidebar to locate it. It is saved as CorePath in config.ini.
Can I keep several scripts open?
Yes — every file opens in its own tab above the editor. Double-click a tab, or press F2, to rename it; the file on disk is renamed too. Ctrl+S saves, Ctrl+Shift+S saves a copy, Ctrl+W closes, and Ctrl+Tab cycles. A dot on the tab means unsaved changes; right-click a tab to jump to any document in the list.
What is autoexec/ for?
Drop .lua files in the autoexec folder next to the exe. After injection, openX runs setup.lua once, then every autoexec script in filename order, once per client. You can turn it off with the checkbox in the sidebar.
Does loadstring work?
That's decided by the core, not by openX. The host never adds or removes Lua functions — it hands your source to Execute(). Check with print(type(loadstring)). If it returns nil, the DLL didn't expose it and nothing outside the DLL can put it back.
Is it undetected?
There's no such guarantee to make. Detection depends on the core, the Roblox build, and whatever the anti-cheat is doing that week. openX makes no claim either way, and using it can get an account banned.
Does it run on macOS or ARM Windows?
Not natively. The core and the Roblox client it targets are Windows x64. Under Parallels or UTM with Windows 11 ARM, the host itself may start, but a native x64 injector is a different story — test before relying on it.
What's in the download?
The launcher, the host, MaterialSkin and ScintillaNET, the Scintilla lexer DLLs, the local scripts/setup.lua, and an empty autoexec/ folder with a README. No core, no installer, no registry writes.