# Send Roblox to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "roblox",
    "name": "Roblox",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/ivangdavila/roblox",
    "canonicalUrl": "https://clawhub.ai/ivangdavila/roblox",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/roblox",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=roblox",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "roblox",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-08T06:19:47.810Z",
      "expiresAt": "2026-05-15T06:19:47.810Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=roblox",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=roblox",
        "contentDisposition": "attachment; filename=\"roblox-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "roblox"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/roblox"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/roblox",
    "downloadUrl": "https://openagent3.xyz/downloads/roblox",
    "agentUrl": "https://openagent3.xyz/skills/roblox/agent",
    "manifestUrl": "https://openagent3.xyz/skills/roblox/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/roblox/agent.md"
  }
}
```
## Documentation

### Server vs Client

Server scripts in ServerScriptService — never trust client data
LocalScripts in StarterPlayerScripts or StarterGui — client-only
RemoteEvent for fire-and-forget — RemoteFunction when server needs to return value
ALWAYS validate on server — client can send anything, exploiters will

### Security

Never trust client input — validate everything server-side
Server-side sanity checks — is player allowed? Is value reasonable?
FilteringEnabled is always on — but doesn't protect your RemoteEvents
Don't expose admin commands via RemoteEvents — check permissions server-side

### DataStore

:GetAsync() and :SetAsync() can fail — wrap in pcall, retry with backoff
Rate limits: 60 + numPlayers × 10 requests/minute — queue writes, batch when possible
:UpdateAsync() for read-modify-write — prevents race conditions
Session locking — prevent data loss on rejoin, use :UpdateAsync() with check
Test with Studio API access enabled — Settings → Security → API Services

### Memory Leaks

Connections not disconnected — store and :Disconnect() when done
:Destroy() instances when removed — sets Parent to nil and disconnects events
Player leaving without cleanup — Players.PlayerRemoving to clean up
Tables holding references — nil out references you don't need

### Character Handling

Character may not exist at PlayerAdded — use player.CharacterAdded:Wait() or event
Character respawns = new character — reconnect events on CharacterAdded
Humanoid.Died fires on death — for death handling logic
LoadCharacter() to force respawn — but prefer natural respawn usually

### Replication

ServerStorage: server-only — clients can't see
ReplicatedStorage: both see — shared modules and assets
ReplicatedFirst: loads first on client — loading screens
Workspace replicates to clients — but server is authority

### Services Pattern

game:GetService("ServiceName") — don't index directly, fails in different contexts
Cache service references — local Players = game:GetService("Players")
Common: Players, ReplicatedStorage, ServerStorage, RunService, DataStoreService

### RunService

Heartbeat after physics — most gameplay logic
RenderStepped client only, before render — camera, visual updates
Stepped before physics — physics manipulation
Avoid heavy computation every frame — spread over multiple frames

### Common Mistakes

wait() deprecated — use task.wait() for reliable timing
spawn() deprecated — use task.spawn() or task.defer()
Module require returns cached — same table across requires, changes shared
:Clone() doesn't fire events — manually fire if needed
Part collisions with CanCollide false — still fire Touched, use CanTouch
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: ivangdavila
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-08T06:19:47.810Z
- Expires at: 2026-05-15T06:19:47.810Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/roblox)
- [Send to Agent page](https://openagent3.xyz/skills/roblox/agent)
- [JSON manifest](https://openagent3.xyz/skills/roblox/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/roblox/agent.md)
- [Download page](https://openagent3.xyz/downloads/roblox)