Fire all local connections of a signal
fire-signalFires all local Lua connections attached to an RBXScriptSignal with supplied arguments, enabling client-side debugging of event handlers without triggering real game actions.
Instructions
MUTATES CLIENT STATE. Invokes firesignal(signal, ...) to synchronously fire EVERY local Lua connection currently attached to an RBXScriptSignal, passing the supplied arguments. This is client-side only: it runs the handlers in your own client and does NOT send anything to the server or other players. Useful for exercising a game's own event handlers (e.g. simulating a 'Touched' or a custom BindableEvent) while debugging UI/gameplay logic, without performing the real physical action. NOTE: firesignal invokes the connection functions directly and does NOT respect a connection's Disabled state — disabled connections still run. (A real event, or set-connection-state, does respect Enabled/Disabled.) Requires the executor's firesignal; degrades with a clear { error } if unavailable. Returns { Signal, Instance?, Fired, ArgCount } or { error }. Signature: { instancePath: string, signalName: any?, args: {{ kind: "string" | "number" | "boolean" | "nil" | "instance" | "raw", value: string | number | boolean? }}?, threadContext: number? }. Phase: act; cost=medium; idempotency=contextual-write. Requires: active-client, resolved-target, explicit-mutation-approval. Capabilities: getconnections, firesignal. Produces: operation-receipt. Verify with: assert-state. Safety: MUTATING; writes live game/client state. On failure: inspect tool-schema for exact fields, defaults, constraints, and an invocation example.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | Ordered list of arguments to pass to the connection handlers, mirroring the real arguments the event would normally fire with. Omit or pass [] to fire with no arguments. | |
| signalName | No | Name of the RBXScriptSignal member on the instance (e.g. 'Touched', 'Changed', 'OnClientEvent'). Leave empty/omit if instancePath already evaluates to the signal. | |
| instancePath | Yes | Lua expression resolving to the Instance that owns the signal (e.g. 'game.Workspace.Door'). Evaluated as `return <instancePath>`. Leave signalName empty if this expression already resolves to the signal itself. | |
| threadContext | No | Optional Roblox thread identity for this call; omit it to use the server default. |