Claude で作ったゲームの保存とみんなのスコアを、公開したリンクでも動かす

Convika Team読了目安: 11 分

  • browser-games
  • ai-coding
  • claude
目次

Claude のアーティファクトで作ったゲームが window.storage で残すセーブやスコアは、2026 年 10 月 21 日から、Convika で公開したページでもそのまま動きます。遊んだ人だけの値はその人のブラウザに残り、shared を付けたみんなの値は Convika がページごとに預かって、開いた全員に同じものを見せます。Free プランでは、みんなの値は 1 ページに 1 MB、1,000 個までです。遊ぶ人のアカウントはないので、別のスマホへのセーブの引き継ぎや、本人と結びついたランキングはありません。

ベストスコアや「続きから」を残すゲーム、1 つのスコアボードをみんなで埋めるゲーム、押した数を全員で数えるカウンター、ひと言ずつ書き足す寄せ書き。Claude の中では動いていたのに、リンクで送るとそこで止まっていた作りです。この記事では、何が残り、何が残らないか、上限を超えたら何が起きるか、公開の手順を順に書きます。

Claude の外では、保存が動かなかった

window.storage は、Claude のアーティファクトのために claude.ai が用意している保存の仕組みです。Anthropic のヘルプは、保存を 2 種類に分けています。自分だけのデータが残る個人用と、全員が同じデータを見る共有用です。共有用の例は「ゲームのリーダーボードでは、全員が同じスコアを見る」です。

ただ、この仕組みは claude.ai の中にしかありません。HTML を取り出してほかの場所に置くと、window.storage を呼んだところでエラーになり、スコアは残りません。共有したアーティファクトのリンクは、古いものを除いて、Claude のアカウントがない人には開けません(くわしくは Claude で作ったゲームを、Claude を使っていない友だちにも遊んでもらう)。

Convika で公開したページでは、HTML に window.storage か window.claude.use("db") が書いてあると、Convika が小さなスクリプトを最初に足します。メソッドの名前も、引数も、返ってくる値も Claude のものと同じなので、ゲームのコードは書きかえずに済みます。どちらも書いていないページには、何も足しません。

自分の値と、みんなの値

自分の値(shared なし)みんなの値(shared: true)
残る場所遊んだ人のブラウザConvika(ページごと)
見える人その人だけページを開いた全員
Free プランブラウザの容量まで1 ページ 1 MB、1,000 個まで
Proブラウザの容量まで1 ページ 10 MB、10,000 個まで
向いているものベストスコア、続きから、設定スコアボード、カウンター、寄せ書き

値は文字だけです。点数の一覧のようなデータは、JSON.stringify で文字にして保存し、読むときに JSON.parse で戻します。

自分の値が残る範囲

自分の値は、遊んだ人のブラウザの localStorage に入り、Convika には送られません。そのため、残る範囲はブラウザが決めます。

  • 同じ端末の、同じブラウザの中だけ。 iPhone の Safari で遊んだ続きは、同じ iPhone の Chrome では最初からです。パソコンでも同じです。
  • ページのドメインが変わらないあいだだけ。 MDN の説明では、localStorage はページのオリジン(https://yourpage.convika.page の部分)ごとの保存場所です。ページのドメインやサブドメインを変えると、遊んだ人のセーブは前のアドレスに残ったままになり、新しいアドレスでは最初からになります。みんなの値はページについていくので、新しいアドレスでもそのままです。
  • 新しいバージョンを入れても残る。 ページの画面の「新しいバージョンのアップロード」でゲームを直しても、アドレスが同じなら、セーブはそのまま読めます。
  • プライベートブラウズでは、閉じたら消える。 MDN によると、最後のプライベートタブを閉じたときに消えます。サイトのデータを止めているブラウザでは、ページを開いているあいだだけ覚えます。
  • iPhone の Safari では、7 日遊ばないと消えることがある。 MDN によると、Safari はクロスサイトトラッキング防止がオンのとき、Safari を使った直近 7 日のうちにタップやクリックがなかったサイトについて、スクリプトが保存したデータを消します。しばらく遊ばずにいると、ベストスコアや続きのセーブが消えて、最初からになることがあります。
  • ブラウザの容量がいっぱいなら、保存は失敗する。 失敗はエラーとしてゲームのコードに返ります。保存できたように見えて、読み込み直したら消えていた、ということは起きません。

みんなの値で作れるもの、作れないもの

みんなの値は、ページを開いた人がだれでも読み書きする 1 つの保存場所です。1 枚のスコアボードに全員の点数が並ぶ、ボタンを押した回数を全員で数える、来た人がひと言ずつ書き足す、といった作りが動きます。Claude の window.claude.use("db")(ドキュメントを保存する仕組み)も同じ場所で、1 ページの合計も同じ上限で動きます(1 つのドキュメントは Claude と同じ 256 KiB まで)。onSnapshot で見ている画面は、5 秒ごとに新しい値を確かめます。変化がないあいだは 15 秒、30 秒と間をあけ、タブを裏に回すと止まります。ほかの人の点数は、押した瞬間ではなく数秒から 30 秒ほどあとに出ます。window.storage のほうは、ゲームが値を読み直したときに新しい点数が出ます。

作れないものも、はっきりあります。

  • 遊ぶ人のアカウントはありません。 遊ぶ人はログインせずに開きます。claude.use("user") で返る人の id は空(null)で、1 人ずつの非公開の保存場所(data/users/ の下)は使えません。
  • 別のスマホへのセーブの引き継ぎはありません。 自分の値はその端末のブラウザにだけあり、Convika には届きません。
  • 本人と結びついたランキングはありません。 スコアボードに出る名前は、遊んだ人が入力した文字です。だれが入力したかを Convika は確かめず、ページを開いた人なら、みんなの値を書きかえることもできます。賞品を出すランキングには使えません。
  • 同じ値への同時の保存は、あとのほうが残ります。 2 人がほぼ同時に同じキーへ保存すると、先の保存は上書きされます。スコアボードは上位 20 件だけを 1 つのキーにまとめ、保存の直前に読み直してから足すように Claude に頼むと、消えることはまれで、読み出しも 1 回で済みます。
  • ほかのサイトの API には届きません。 公開したページの通信先はページ自身のアドレスだけなので、AI の API を呼ぶ作りや、外のランキングサービスにつなぐ作りは動きません。

上限を超えたら

上限を超えた保存は Convika が断り、ゲームのコードにはエラーが返ります。それまでに保存した値はそのまま残ります。回数の上限を超えたときは、1 分待てばまた保存できます。

上限数字
みんなの値 1 つ1 MB(どのプランでも)
1 ページの合計(Free)1 MB、1,000 個
1 ページの合計(Pro)10 MB、10,000 個
同じ接続元からの保存1 ページに 1 分 120 回
同じ接続元からの読み出し1 ページに 1 分 600 回

学校のように 1 つの回線を大勢で使う場所では、その回線からの回数をまとめて数えます。いっぱいになったページは、ページの画面の「サイト設定」にある「訪問者全員で共有するデータ」で、いらないキーを 1 つずつ、またはすべて消せます。消せるのは、そのページを編集できるメンバーです。

保存はいつでも失敗することがあります。Claude に「保存に失敗したら、画面にひと言出して遊び続けられるようにして」と頼んでおけば、断られてもゲームは止まりません。

保存と読み出しのやりとりは、ページビューに数えません。Free プランに含まれるのは、すべてのページの合計で月 10,000 ページビューです。ワークスペース全体で月 10,000 ビューに達すると編集やアクセス解析が止まり、その 7 日後からは、翌月 1 日の午前 9 時(日本時間)になるか料金を支払うまでページも止まります。2026 年 10 月 23 日より前に作ったワークスペースは、2026 年 11 月 1 日の午前 9 時(日本時間)からこのとおりになります。プランごとの扱いは 料金ページ にあります。

画像と音を入れるとき

Convika が預かるのは、HTML ファイル 1 つ(2 MB まで)です。画像と音はファイルの中に埋め込むか、ほかのサイトに置いた https:// の URL を <img>、<audio>、new Image()、new Audio() で読みます。p5.js の loadImage や Phaser の this.load のようにライブラリが読み込む作りは、ファイルに埋め込んだ画像や音なら読めます。埋め込める量は 1.5 MB ほどです(埋め込むとデータが 4/3 倍ほどになるため)。

保存したデータの扱い

自分の値は Convika には送られず、遊んだ人のブラウザに残ります。みんなの値は Convika がページごとに保存し、ページを開いた全員に見えます。遊ぶ人が入力した文字がそのまま入ることもあるので、寄せ書きやスコアボードには本名や連絡先を書かないよう、画面に一行添えておきます。Convika での扱いは プライバシーポリシー と Cookie ポリシー に書いています。

保存したまま公開する 5 つの手順

1. Claude に、ゲームを HTML ファイル 1 つにしてもらう

ゲームを作った会話で、Claude にこう頼みます。保存の部分は window.storage のまま残します。

このゲームを、ビルドなしで動く 1 つの HTML ファイルにして。CSS と JavaScript もすべて中に入れて。ベストスコアは window.storage に、みんなのスコアボードは window.storage の shared: true に保存したままにして。スコアボードは上位 20 件だけを 1 つのキーにまとめて、保存の直前に読み直してから足して。保存に失敗したら、画面にひと言出して遊び続けられるようにして。画像ファイルは使わず、絵は図形か絵文字で描いて。

React で作ったアーティファクトも、ここで HTML ファイル 1 つにしてもらいます。

2. HTML をダウンロードするか、コードをすべてコピーする

ファイルで受け取ったときは、そのファイルを使います。コードで受け取ったときは、最初から最後までコピーします。

3. Convika に登録して、ページを作る

app.convika.com で登録します。Free プランはカード登録なしで、1 ページを公開できます。「HTMLファイルからページを公開」の画面で、「ファイルから」でファイルを選ぶか、「コードから」にコードを貼り付けて、「プレビューをつくる」を押します。

convika.com のガイドにある、登録せずに使えるボックスでもプレビューのリンクは作れます。ただ、そのリンクは安全のためスクリプトを止めているので、ゲームも保存も動きません。ボックスで作ったときは「このページを受け取る(無料・カード不要)」を押して登録し、ページをアカウントに入れてから次に進みます。

4. プレビューで遊んで、保存を確かめる

「プレビューを開く」を押して遊び、点数を残してからページを読み込み直します。自分の値が残っていれば、保存は動いています。

プレビューで保存したみんなの値は、そのタブの中だけに残り、公開中のページの値は変わりません。確かめるために入れた点数が、本番のスコアボードに並ぶことはありません。そのかわり、別のスマホから同じ値が見えるかは、公開してから確かめます。

5. 公開して、リンクを送る

「公開する」を押し、確認の画面でもう一度「公開する」を押します。はじめて公開するときに公開プランを聞かれたら、料金をかけずに公開するなら「無料で公開する」を選びます。できた yourpage.convika.page のようなアドレスをスマホとパソコンなど 2 台で開き、1 台で点数を入れて、もう 1 台で読み込み直します。その点数がスコアボードに出たら、リンクを友だちに送ります。

ゲームそのものの作り方や、スマホで遊びやすくする頼み方は ChatGPT・Claude・Gemini で作ったゲームを、友だちがログインなしでスマホで遊べるように公開する と ChatGPT でブラウザゲームを作って、友だちにリンクで遊んでもらうまで に、フォームや自分のドメインを使うページは Claude で作ったページを、自分のドメインで公開する方法 にあります。

よくある質問

Claude のアーティファクトの保存機能(window.storage)は、ほかのサイトで公開しても使えますか?

claude.ai の外では、window.storage はふつう用意されていないので、HTML を取り出しただけでは保存は動きません。Convika で公開したページなら、Convika が同じ名前の仕組みを足すので、自分の値もみんなの値もコードを書きかえずに動きます。

Claude で作ったゲームのランキングを、みんなで共有できますか?

できます。window.storage の shared: true で保存した点数は、Convika がページごとに預かり、ページを開いた全員が同じスコアボードを見ます。ただし名前は遊んだ人が入力した文字で、本人かどうかは確かめないので、賞品を出すランキングには向きません。

セーブデータを別のスマホやパソコンに引き継げますか?

引き継げません。自分の値は遊んだ端末のブラウザにだけ残り、Convika には送られません。遊ぶ人のアカウントもないので、別の端末で開くと最初からになります。

遊ぶ人に Claude や Convika のアカウントはいりますか?

いりません。公開したリンクを開けば、だれでもログインなしで遊べます。アカウントがいるのは、ページを公開する作り手だけです。

保存したデータは Convika に送られますか?

自分の値(shared を付けない保存)は送られず、遊んだ人のブラウザに残ります。みんなの値(shared: true)は Convika がページごとに保存し、ページを開いた全員に見えます。扱いは プライバシーポリシー に書いています。

みんなの値は無料でどこまで保存できますか?

Free プランでは 1 ページに 1 MB、1,000 個まで、Pro(月 ¥1,800)では 10 MB、10,000 個までです。1 つの値はどのプランでも 1 MB までで、超えた保存は断られ、それまでの値は残ります。

出典

ゲームを保存ごと公開する