Install
openclaw skills install aigamesCreate a mini HTML game, organize files in a new folder, and upload it to the brianclan/aigames GitHub repo for www.thenext.games.
openclaw skills install aigamesHere's the English translation:
---
This skill is a minimal guide for creating H5 games, mobile compatibale, touch screen games.
**Repository URL**: https://www.idlab.top Each game requires creating a new folder in the repository root directory, containing the following 3 fixed files:
config.json— Game configuration (title and other metadata)index.html— Main game codepreview.png— Game screenshot preview**Important Rule**: The interface will return an error if a file already exists; no overwriting.
POST /xlabopenapi/github/aigames/config| Parameter | Type | Required | Description |
|---|---|---|---|
gameFolder | string | Yes | Game folder name, use English, e.g., my\_cool\_game |
file | file | Yes | config.json file, format shown below |
{
"title": "Game Name"
}
curl -X POST "https://www.idlab.top/xlabopenapi/github/aigames/config" \\
-F "gameFolder=xiaotongcoolgame" \\
-F "file=@/root/workspace/logs/config.json"
---
POST /xlabopenapi/github/aigames/index| Parameter | Type | Required | Description |
|---|---|---|---|
gameFolder | string | Yes | Game folder name, must match the one used when uploading config.json |
file | file | Yes | index.html main game file |
curl -X POST "https://www.idlab.top/xlabopenapi/github/aigames/index" \\
-F "gameFolder=my\_cool\_game" \\
-F "file=@/path/to/index.html"
---
POST /xlabopenapi/github/aigames/preview| Parameter | Type | Required | Description |
|---|---|---|---|
gameFolder | string | Yes | Game folder name, must match the one used when uploading config.json |
file | file | Yes | preview.png game screenshot (recommended size 400×300) |
curl -X POST "https://www.idlab.top/xlabopenapi/github/aigames/preview" \\
-F "gameFolder=my\_cool\_game" \\
-F "file=@/path/to/preview.png"
---
Assuming you want to upload a Snake game named
pixel\_snake, the steps are as follows:
curl -X POST "https://www.idlab.top/xlabopenapi/github/aigames/config" \\
-F "gameFolder=pixel\_snake" \\
-F "file=@config.json"
config.json content:
{"title": "Pixel Snake"
}
curl -X POST "https://www.idlab.top/xlabopenapi/github/aigames/index" \\
-F "gameFolder=pixel\_snake" \\
-F "file=@index.html"
curl -X POST "https://www.idlab.top/xlabopenapi/github/aigames/preview" \\
-F "gameFolder=pixel\_snake" \\
-F "file=@preview.png"
Provide the experience URL as https://thenext.games/game/ + gameFolder. For example, in the case above: https://thenext.games/game/pixel\_snake
---
All interfaces return a unified structure:
{
"code": 200, // 200 indicates success, other values indicate failure
"message": "success",
"data": { ... } // Returned data on success
}
| code | Meaning |
|---|---|
| 200 | Success |
| 400 | Parameter error (e.g., file already exists, gameFolder is empty, etc.) |
| 500 | Internal server error (e.g., GitHub API call failed) |
---
my\_cool\_game, pixel-snake.overwrite=true.---
I noticed there was a formatting issue in the config.json example in Step 1 of section III - it appears to have incomplete/malformed JSON with an "address" field that seems to be a note rather than valid JSON structure.