Work as a collaborator inside an existing place, not as if it were a blank text repository. Targets current Roblox Studio and rolling platform APIs.
When not to use: this skill owns project operation, not the domain implementation. Compose it
with roblox-ui, roblox-networking, roblox-characters, roblox-physics, roblox-luau, or
roblox-datastores as appropriate.
StarterPlayerScripts, per-character client logic in
StarterCharacterScripts, UI templates in StarterGui, shared assets/modules/remotes in
ReplicatedStorage, and secrets/server assets in server-only containers.| Location | Typical role | Key constraint |
|---|---|---|
ServerScriptService |
authoritative server Scripts/modules | not replicated to clients |
ServerStorage |
server-only assets/data | clients cannot access it |
ReplicatedStorage |
shared modules/assets/remotes | visible to clients; do not store secrets |
StarterPlayerScripts |
client systems across respawns | clone into PlayerScripts |
StarterCharacterScripts |
per-character client behavior | recreated each character |
StarterGui |
authored UI templates | clones into PlayerGui; lifecycle depends on GUI policy |
Workspace |
replicated world and live characters | streaming/ownership may affect client view |
Verify actual Script RunContext and project conventions; class/location shorthand does not excuse
inspection of an existing custom setup.
Before creating a RemoteEvent, search by purpose and inspect both endpoints. Before adding a “manager” or service module, identify the current feature owner. Before introducing folders/tags, inspect naming and retrieval patterns. Duplicate systems are especially dangerous when both run: they double-bind input, save twice, create two UI clones, or apply gameplay twice.
Use Attributes for small typed designer-editable metadata that belongs on an Instance. Use
CollectionService tags for discovering sets of Instances across hierarchy. Use folders for
ownership/navigation, not as a substitute for semantic tags. Preserve established schemas and
validate missing/malformed Attributes at system boundaries.
local CollectionService = game:GetService("CollectionService")
local function setupDoor(instance: Instance)
if not instance:IsA("Model") then return end
local accessLevel = instance:GetAttribute("AccessLevel")
if type(accessLevel) ~= "number" then
warn(`Door {instance:GetFullName()} needs numeric AccessLevel`)
return
end
attachDoorBehavior(instance, accessLevel)
end
for _, door in CollectionService:GetTagged("Door") do setupDoor(door) end
CollectionService:GetInstanceAddedSignal("Door"):Connect(setupDoor)
The owning system must also clean behavior when a tagged Instance is removed/destroyed.
Use the smallest rungs that cover the change, but never substitute a lower rung for a claimed higher-rung result.
| Symptom | Likely cause | Remedy |
|---|---|---|
| Studio edit disappears after sync | generated/mapped subtree edited | change source-of-truth files and resync |
| feature runs twice | duplicate Script/remote/controller | inspect first; consolidate under existing owner |
| client cannot access module/object | wrong execution/storage location | move shared content deliberately; keep secrets server-only |
| authored screen unreadable in Explorer | everything created by one LocalScript | create named Instance shell and small behavior modules |
| test passes only in Play | replication/lifecycle untested | use Server & Clients and relevant emulators |
| “clean” Output hides client errors | only server Output inspected | inspect each client and server context |
| shipped place has DebugFolder/prints | experiment cleanup skipped | maintain cleanup list and inspect hierarchy after session |
| Attribute/tag behavior silently fails | schema/class not validated | validate at setup boundary; warn with full Instance path |
references/studio-verification.md before reporting Studio validation or when choosing test
modes, constructing a temporary harness, or documenting an automation gap.roblox-luau — services, Instances, events, and basic execution model.roblox-ui, roblox-networking, roblox-characters, roblox-physics — focused production
workflows that use this inspection and verification discipline.https://create.roblox.com/docs/studio/testing-modes
https://create.roblox.com/docs/projects/data-model
https://create.roblox.com/docs/scripting/services