Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>RAGE Script ManagerNew to Visual Studio Code? Get it now.
RAGE Script Manager

RAGE Script Manager

DominikHeise

|
1 install
| (0) | Free
VS Code client for the Luma scripting host. Connect over TCP, push Lua files, run a buffer, stream the log and manage resources without restarting the host application.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

RAGE Script Manager

Write, push and run Lua inside a running RAGE game on a jailbroken PS4 — without restarting the game.

The editor talks to a GoldHEN plugin over its control channel. Save a file, press Ctrl+Alt+R, and the script is on the console and running before you have let go of the key. Errors come back as squiggles on the line that raised them.

This extension is only the editor half. It needs the Luma plugin running on the console. Luma is a single plugin that serves both games, listening on a different port for each:

Game Port
Grand Theft Auto V (CUSA00411 v1.57) 9615
Red Dead Redemption 2 (CUSA03041 v1.32) 9616

The plugin is a separate project from this extension and is not published yet, so there is nothing to link to. Without it running on the console there is nothing for this extension to talk to.

One extension serves both games for the same reason one plugin does: it speaks the protocol and sends relative paths, and the plugin resolves them under whichever game's data root it detected at boot. Nothing here is game-specific except the port you point it at.

Getting started

  1. Deploy the plugin and start the game (see that project's README).
  2. Set rageScriptManager.host to your console's IP, and rageScriptManager.port to the port from the table above. Both are workspace settings, so a GTA V workspace and an RDR2 workspace can sit open side by side.
  3. Run RAGE: Connect.

Commands

All under the RAGE: category in the Command Palette.

Command Keybinding What it does
Connect / Disconnect Opens the control channel
Push & Restart Ctrl+Alt+R Saves the active file, sends it, restarts what it belongs to
Run Current File Ctrl+Alt+Enter Runs the buffer as a one-off, without saving or writing it to disk
Open Console A terminal that evaluates Lua on the console; =expr prints a value
Show Log The plugin's log, streamed live
New Resource Scaffolds a working resource — manifest, client script, .luarc.json
Start / Stop / Restart Resource From the palette or the Resources view
Refresh Resources Re-reads the resource list
Deploy Plugin (.prx) Runs the project's deploy script in a terminal

Push & Restart decides where a file belongs by its path: something under resources/<name>/ is written there and that resource is restarted, anything else goes to scripts/ and reloads the script directory.

Settings

Setting Default
rageScriptManager.host (empty) Console IP or hostname — you must set this
rageScriptManager.port 9615 9615 for GTA V, 9616 for RDR2
rageScriptManager.token (empty) Shared secret, if the console has a token file

Two things worth knowing

The channel serves one client at a time. Run Disconnect before pointing another tool at the same port, or the second connection is accepted and then never answered — which looks exactly like a hang.

There is no authentication unless you add it. Anyone who can reach the port can run arbitrary Lua in the game. That is the same trust level GoldHEN's FTP already grants on the same network: fine on a home LAN, not fine anywhere else. Write a secret to the plugin's token file and set rageScriptManager.token to match, and the channel refuses everything else.

Type definitions and autocomplete

Autocomplete for the game's natives comes from the plugin project, not from this extension: each project generates a lua-defs/ folder and wires it up through .luarc.json. It needs the sumneko.lua extension. The definition files are large (tens of thousands of lines), which is why they live with the game they describe rather than being bundled here.

The extension knows about them only well enough to refuse to push one to the console — a type stub in scripts/ would be run on every boot from then on.

Licence

MIT.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft