GitHubから公開する
GitHub のリポジトリにあるゲームを、そのまま取り込んで公開できます。
画面から取り込む
- 「公開する」を開いて、「GitHubから」タブを選びます。
- リポジトリの URL(https://github.com/you/my-game)を入れます。
- ゲームがフォルダの中にあるときや、ブランチを決めたいときは「ブランチやフォルダを指定する」から入れます(例:dist、gh-pages)。
- 「次へ」を押すと取り込まれ、タイトルなどを入れる画面に進みます。
- フォルダの中の index.html が起動ファイルになります。ビルドが必要なゲームは、ビルド結果のフォルダ(dist など)か gh-pages ブランチを指定してください。
- リポジトリの ZIP は 50MB まで、ゲームのファイルは 2000 個までです。
- あとから「設定 → バージョン」で取り込み直すと、前回からのコミットのメッセージが更新履歴に入ります。
非公開リポジトリ
非公開リポジトリは、Asobiai の GitHub App をインストールすると取り込めます。インストールするときに、取り込みを許可するリポジトリを選べます(読み取りだけで、書き込みはしません)。
GitHub App をインストール非公開リポジトリでも、取り込んだフォルダの中身はゲームのファイルとして配信されます。秘密の情報が入っていないか確認してください。
push したら自動で更新
GitHub App 経由で取り込んだゲームは、「push したら自動で更新する」にチェックしておくと、push するたびに新しいバージョンとして公開されます。コミットのメッセージがそのまま更新履歴に入ります。
- ブランチを指定していないときはデフォルトブランチ、指定したときはそのブランチへの push で更新します。タグやコミットを指定したゲームは自動では更新しません。
- GitHub App を使わずに、GitHub Actions から更新することもできます(下の「AI・APIから」を参照)。
AI・APIから
MCP の publish_game / update_game と REST API で、次のフィールドが使えます。
| github_repo | owner/repo か https://github.com/owner/repo(/tree/<ブランチ>/<フォルダ> 付きの URL も可) |
| github_ref | ブランチ・タグ・コミット(省略するとデフォルトブランチ) |
| github_path | index.html が入っているフォルダ(省略するとリポジトリ全体) |
| github_auto | push したら自動で更新する(GitHub App 経由のときだけ) |
| sync_github | update_game で、前回と同じ場所から最新のコミットを取り込む |
REST API の例:
sh
curl -X POST https://asobiai.games/api/v1/games \
-H "Authorization: Bearer asb_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{ "title": "Neon Snake", "github_repo": "you/neon-snake", "github_path": "dist" }'GitHub Actions から更新する例(リポジトリの Secrets に ASOBIAI_TOKEN、Variables に ASOBIAI_GAME_ID を登録)。新しいコミットがないときは「変更なし」として成功します:
yaml
# .github/workflows/asobiai.yml
on:
push:
branches: [main]
jobs:
publish:
runs-on: ubuntu-latest
steps:
- run: |
curl -fsS -X POST https://asobiai.games/api/v1/games/${{ vars.ASOBIAI_GAME_ID }} \
-H "Authorization: Bearer ${{ secrets.ASOBIAI_TOKEN }}" \
-H "Content-Type: application/json" \
-d '{ "sync_github": true }'



