1.2.0
Released: June 2025
New features
rb deploy — push to GitHub, get a loadstring URL
One command to push build/script.obf.lua to a GitHub release repo and print the loadstring() URL:
rb deploy
Reads credentials from .rb-deploy in your project root:
GITHUB_TOKEN=ghp_...
GITHUB_REPO=yourname/my-script-release
GITHUB_FILE=script.obf.lua
GITHUB_BRANCH=main
Auto-builds if script.obf.lua is missing. See GitHub Setup & Deployment for full setup.
compat_exclude in layout.rblua
Define which modules are dropped from the compat build directly in src/ui/layout.rblua — no need to touch rb source files:
layout {
title = SCRIPT_NAME,
toggle_key = "RightShift",
size = { 550, 420 },
compat_exclude = {
"player/UNC.rblua",
"visuals/Drawing.rblua",
}
}
Modules in this list compile normally into script.obf.lua but are dropped from script.compat.obf.lua. If the list is empty both builds are identical.
rb update --remote
Force a fresh download from the internet without needing a local source copy:
rb update --remote
Useful after installing rb from the install script rather than from source.
rb docs — generate LLM context file
Dumps the full Pulse framework reference to PULSE_DOCS.md in your project root. Paste it into any AI to give it accurate Pulse context:
rb docs
rb docs --output my_context.md
rb docs --output - # print to stdout
rb mcp — dev MCP server
Starts a Model Context Protocol server so Claude Code can connect to your running script for live log inspection and state queries:
rb mcp
rb mcp --setup # print setup instructions
rb ext install — VS Code extension
Installs the .rblua syntax highlighting extension to ~/.vscode/extensions/:
rb ext install
Example project scaffold
rb init now creates a working example project with three components you can build and inject immediately:
src/player/SpeedHack.rblua— speed + jump hacksrc/player/FOVChanger.rblua— camera FOV slidersrc/visuals/PlayerESP.rblua— player highlights with name/HP labels
globals.lua as config file
The scaffolded globals.lua now puts SCRIPT_NAME, SCRIPT_VERSION, SCRIPT_AUTHOR, and SCRIPT_DISCORD at the top as plain Lua variables. layout.rblua uses SCRIPT_NAME directly — change one line to rename your script everywhere.
Layout title accepts Lua expressions
title = SCRIPT_NAME in layout now emits the raw Lua variable rather than the string "SCRIPT_NAME". Any Lua expression works.
Changes
rb initno longer creates an emptysrc/combat/directory- Install script (
install.ps1) auto-installs Python via winget if missing PULSE_DOCS.mdis generated automatically duringrb init