roblox-luau-core
Use for Luau language semantics, tables, control flow, string patterns, scope, closures, and cross-language translation errors.
How do I install this agent skill?
npx skills add https://github.com/tabooharmony/roblox-brain --skill roblox-luau-coreIs this agent skill safe to install?
- Gen Agent Trust Hubfail
The skill provides comprehensive documentation for the Luau programming language. While automated scanners flagged external links to the official Roblox style guide and a reference file, analysis indicates these are false positives resulting from the mention of restricted legacy functions and the use of a public documentation hosting platform.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
Luau Core Language
When to Load
Load for pure Luau syntax and semantics: truthiness, tables, iteration, functions, scope, operators, string patterns, and JS/Python ports. Routing: types → roblox-luau-types; ownership/lifecycle → roblox-luau-patterns; Roblox APIs → domain skills.
Quick Reference
- Only
falseandnilare falsy.0,"", and{}are truthy. - Equality does not coerce types.
0 == "0"is false. Inequality is~=. - Array conventions are 1-based.
#arrayis meaningful only for a sequence without nil gaps. - Assigning
nilremoves a table key; assigning a table copies the reference;table.cloneis shallow. - Dictionary iteration order is unspecified. Do not make behavior depend on it.
- Dynamic keys require brackets:
record[field]. Dot syntax uses a literal identifier. - Missing arguments become
nil; extra results and arguments can be discarded. - Prefer an
ifexpression overcondition and a or bwhenamay be falsy. - Local names are scoped from their declaration onward. Forward-declare mutually recursive functions.
- Luau string patterns are not regular expressions. Their syntax and capabilities differ.
- Backtick interpolation and
..concatenation are both valid. Choose the clearer form; join many fragments once in a hot loop. - NaN does not equal itself and defeats
</>; test withx ~= x. - Binary data uses the
bufferlibrary: fixed size, 0-based offsets, explicit-width reads/writes. Avoidbuffer.readinteger/writeinteger(stubs, not released runtime). - For Base64, hashing, or compression use
EncodingService(buffers, not strings; JSON viaHttpService). Details: see full reference.
local label = if enabled then "On" else "Off"
local message = `{name}: {score}`
local byId: {[number]: string} = {}
byId[userId] = name
for index, value in values do
print(index, value)
end
Translation traps
- JavaScript
===,!==,null, optional chaining, spread, arrow functions, and array methods are not Luau syntax. - Python
None, zero-based list assumptions, list comprehensions, exceptions, and implicit tuple behavior do not translate directly. x or fallbacktests truthiness, not only absence. It replaces a validfalsevalue.typeof(value)recognizes Roblox datatypes;type(value)reports the underlying Luau type category.
Review
Valid Luau, no nil gaps, no assumed dictionary order, no accidental aliases, no cross-language syntax, no fallbacks hiding false or nil.
Detailed language traps and translation examples: references/full.md
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/tabooharmony/roblox-brain/roblox-luau-core">View roblox-luau-core on skillZs</a>