Log inGet started

notices

Updated 5 September 2026

The notices namespace — 8 functions.

globals/notices/post

notices.post(template: string, params: { [string]: any }?, opts: NoticeOpts?)

Post a notice. template is a fixed sentence used to collapse repeats; put varying values in params. opts.severity defaults to "info"; opts.includeLocation attaches the emitting call site.

Parameters

  • template string — Fixed sentence identifying the notice.
  • params { [string]: any } (optional) — Optional table of named values rendered alongside the template.
  • opts NoticeOpts (optional) — Optional table: severity ("info" | "warn" | "error"), includeLocation (boolean).
notices.post("wave complete", { wave = 3 })
notices.post("save slot corrupted, using defaults", { slot = id }, { severity = "warn" })

modules/notices/README

require("@builtin/modules/api/engine/notices") -- notices (also available as global 'notices')

Post an event record that surfaces to the operating agent on its next tool call. Public Luau surface over the __notices_post Internal FFI global.

Usage: local notices = require("@builtin/modules/api/engine/notices") Also available as global: notices

modules/notices/post

post(template: string, params: { [string]: any }?, opts: NoticeOpts?)

Post a notice. template is a fixed sentence used to collapse repeats; put varying values in params. opts.severity defaults to "info"; opts.includeLocation attaches the emitting call site.

Parameters

  • template string — Fixed sentence identifying the notice.
  • params { [string]: any }? (optional) — Optional table of named values rendered alongside the template.
  • opts NoticeOpts? (optional) — Optional table: severity ("info" | "warn" | "error"), includeLocation (boolean).
notices.post("wave complete", { wave = 3 })
notices.post("save slot corrupted, using defaults", { slot = id }, { severity = "warn" })

tools/notices/drain

notices.drain() -> Drained?

Take every pending notice and return the formatted delivery block — the same text that would otherwise be attached to your next tool result. DRAINING: what this returns is no longer queued, so read it. Returns nil when nothing is pending. For a caller that pulls its own context; if you read notices off your tool results, you do not need this. Overflow content is written to /source/tmp/notices/ and named in the block.

Returns Drained?

tools/notices/list

notices.list() -> NoticesList

Show the currently pending notice keys and the suppressed set. Each pending row carries its key, template, severity, origin, count, and source; each suppressed row carries its key and the number of times it has fired while muted. Use a key from here with suppress.

Returns NoticesList

tools/notices/suppress

notices.suppress(key: string) -> { suppressed: string }

Mute a notice key you have acknowledged. It keeps counting (visible in list) but never renders on a tool call again this session. Available to the operating agent; a loaded world component cannot mute its own notices.

Parameters

  • key string

Returns { suppressed: string }

"user:atlas:texture rebuilt"

tools/notices/unsuppress

notices.unsuppress(key: string) -> { unsuppressed: string }

Un-mute a notice key you previously suppressed, so it renders on a tool call again. Available to the operating agent.

Parameters

  • key string

Returns { unsuppressed: string }

"user:atlas:texture rebuilt"

typed/builtin//modules/api/engine/notices/notices/post

notices.post(template: string, params: { [string]: any }?, opts: NoticeOpts?)

Post a notice. template is a fixed sentence used to collapse repeats; put varying values in params. opts.severity defaults to "info"; opts.includeLocation attaches the emitting call site.

Parameters

  • template string — Fixed sentence identifying the notice.
  • params { [string]: any } (optional) — Optional table of named values rendered alongside the template.
  • opts NoticeOpts (optional) — Optional table: severity ("info" | "warn" | "error"), includeLocation (boolean).
notices.post("wave complete", { wave = 3 })
notices.post("save slot corrupted, using defaults", { slot = id }, { severity = "warn" })
  • api
  • reference