Skip to content

v0.1.0

Choose a tag to compare

@cb12438 cb12438 released this 30 Aug 05:00

First public release.

Operator is a command console and permission system for Roblox, in pure Luau — for developers who would rather define commands than build an admin panel.

Documentation →

Install

Download Operator.rbxm below. In Studio, right-click ServerStorageInsertImport Roblox Model and pick it.

Then one Script in ServerScriptService:

local Operator = require(game:GetService("ServerStorage").Operator)

Operator.Start({ DefaultCommands = { "debug", "moderation" } })

Press F2 in game. With no Roles configured the console reaches the place owner and nobody else, and says so in the output.

What's in it

  • Nothing reaches an unauthorised client. No modules, no remote, no interface — a player who is allowed nothing cannot tell the package is installed.
  • Roles are built in. Declare them by group rank or user ID, inherit between them, and permissions resolve themselves.
  • Typed argument tables. Arguments arrive as a checked table, not positional strings.
  • Nine built-in argument types, extensible and composable.
  • Audit log with an in-memory ring buffer on by default and pluggable sinks.
  • Three default command packsdebug, moderation, fun — opted into by name.

Compatibility

Pre-1.0. The public surface is what require(Operator) returns; it may still change in a minor release. Anything reached through an internal path (Operator.Server.*, Operator.Shared.*) is not public.

MIT licensed. Console UI ported from Centurion; setup ergonomics from Cmdr; built with Vide.