el4cteo/roblox-skills

roblox-code-review

Review Roblox/Luau code for exploits, data loss, memory leaks, performance problems, lifecycle bugs, policy issues, and deprecated or superseded APIs, using a severity-ranked checklist and the full 2026 deprecation map.

소스 보기

사용 방법

  1. 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
  2. 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
  3. 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/el4cteo/roblox-skills --skill roblox-code-review

시작 전 확인

  • 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
  • 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Roblox code review

Review in severity order. Report each finding with file:line, severity, what breaks, and the fix. Verify claims against the code (and the engine reference when unsure) — don't pattern-match blindly.

Severity guide

SeverityExamples
CriticalClient-authoritative rewards/damage/currency; unvalidated remote args (NaN, instance spoofing); purchases granted outside ProcessReceipt or non-idempotent; data saved with SetAsync from multiple servers without session locking; secrets/API keys in replicated code; unfiltered player text shown to others.
HighData loss paths (no BindToClose, saving default data after a failed load, no retry); memory leaks (connections, player-keyed tables); InvokeClient; per-frame remotes; infinite yields (WaitForChild without timeout on optional instances, RemoteFunction handlers that can yield forever); streaming-unsafe client indexing.
MediumDeprecated/superseded APIs; wait/spawn/delay; polling loops; server-side tweens; missing pcall on network/yielding APIs; missing late-joiner handling; race conditions on CharacterAdded.
LowStyle, naming, missing types, magic numbers, dead code, minor inefficiencies.

Checklist

Security (roblox-security)

  • Every OnServerEvent/OnServerInvoke: types checked with typeof, numbers math.isfinite, strings

length/UTF-8 checked, instances IsA + IsDescendantOf(trusted), rate limited, context checked.

  • No server-only logic, admin lists, or secrets in ReplicatedStorage/StarterPlayer/Workspace.
  • ProximityPrompt/ClickDetector/Touched handlers re-validate distance/state on the server.
  • Gameplay-critical unanchored parts are server-owned.

Data (roblox-data-stores)

  • Session locking (ProfileStore or equivalent); UpdateAsync for read-modify-write; retries with backoff.
  • BindToClose flushes saves in parallel; no saves of Instance/Vector3/mixed tables.
  • Failed loads never overwritten with defaults; player-keyed tables cleared on leave.
  • Keys stable (User_{UserId}), Studio uses a separate store/universe.

Monetization (roblox-monetization)

  • Single ProcessReceipt; idempotent by PurchaseId; returns PurchaseGranted only after persisting.
  • Pass perks checked on join and after in-session purchase; prices not hardcoded; paid random items

disclose odds and respect PolicyService.

Correctness & lifecycle (roblox-architecture)

  • Handles players already in game (for _, p in Players:GetPlayers()) and characters already spawned.
  • Per-character state rebuilt on respawn; per-player state cleaned on PlayerRemoving.
  • No yields at module top level; no circular requires; one owner per piece of state.
  • Deferred-event safe (doesn't rely on handlers running synchronously).
  • Client code streaming-safe (WaitForChild/nil checks for Workspace content).

Performance (roblox-performance)

  • No per-frame FindFirstChild/GetDescendants/Instance.new; params objects reused.
  • Event-driven instead of polling; think loops throttled and staggered.
  • Tweens and cosmetic effects on clients; remotes batched/throttled; payloads minimal.
  • Connections disconnected / instances destroyed; no unbounded caches.

Text & safety (roblox-text-chat)

  • All player-authored text shown to others filtered server-side (FilterStringAsync), fail closed.
  • Chat uses TextChatService; public editable text rate-limited (≥ 1 minute).

Modern API usage

  • task.*, *Async variants, Raycast, mover constraints, PivotTo, Animator:LoadAnimation,

TextChatService, UIDragDetector, workspace collision-group APIs, CreatePath+ComputeAsync.

Code quality (roblox-luau)

  • --!strict with typed public APIs; services via GetService; no _G/shared.
  • Clear module boundaries; config separated from logic; tests for pure logic (roblox-testing).

Output format

text
## Summary
<2–3 sentences: overall risk, the most important fixes>

## Findings
1. [Critical] src/server/Shop.server.luau:42 — Price read from client argument.
   Impact: exploiters buy anything for 0 coins. Fix: look up ITEMS[itemId].price on the server.
2. [High] ...

## Modernization (optional)
- Replace `wait()` → `task.wait()` (12 occurrences) ...

Offer to apply fixes; when fixing, keep behavior identical except for the bug, and re-run the relevant checks (type check, tests, Studio playtest via roblox-studio-mcp).

관련 작업

같은 저장소의 Skills

더 많은 Skills

모든 Skills
el4cteo
커뮤니티

roblox-data-stores

Persistence and cross-server data - DataStoreService (UpdateAsync, retries, budgets, limits), session locking with ProfileStore, schema migrations, OrderedDataStore leaderboards, MemoryStore queues/sorted maps/hash maps, MessagingService, right-to-be-forgotten. Use when saving player data, building leaderboards or queues, or fixing data loss, duplication, or throttling.

1시간 설치 수
3
GitHub Stars
77
업데이트
11월 3일
el4cteo
커뮤니티

roblox-luau

Modern, type-safe Luau for Roblox, covering --!strict and the new type solver, generics, string interpolation, if-expressions, task library, require-by-string, module/OOP patterns, error handling with retries, buffer/vector, and legacy APIs to avoid. Use when writing, refactoring, or explaining any Roblox script, fixing type errors, or modernizing old Lua code.

1시간 설치 수
3
GitHub Stars
77
업데이트
11월 3일
el4cteo
커뮤니티

roblox-physics

Physics and spatial queries - Raycast/Blockcast/Spherecast, overlap queries, collision groups, Touched pitfalls, collision summaries (impact point/normal/speed), assemblies and welds, mover constraints replacing BodyMovers, mechanical constraints, network ownership, CFrame math, vehicles/projectiles, and server authority (BindToSimulation, prediction, rollback). Use when moving parts, detecting hits, building vehicles or projectiles, or fixing jitter, flinging, or ownership bugs.

1시간 설치 수
3
GitHub Stars
77
업데이트
11월 3일
el4cteo
커뮤니티

roblox-analytics-liveops

Analytics and live ops - AnalyticsService economy/funnel/onboarding/progression/custom events, player segments, experience configs via ConfigService, A/B experiments, badges, experience notifications, timed events, daily rewards, season passes. Use when instrumenting a game, tuning economy or onboarding, running A/B tests or feature flags, or planning live events and re-engagement.

1시간 설치 수
2
GitHub Stars
66
업데이트
10월 17일