サイトを作る
AIはしごで、サイトを作る ― 出来合いの道具を使わずに作った10日間 ―
2026年8月12日から21日までの実際の記録と、公開後の追記
いま読んでいるこのサイトは、10日で建ちました。
WordPressのような、あらかじめ用意された型に流し込む道具は使っていません。オープンワールドのゲームのように、部屋のどこに何を置くかを一つずつ決めながら組み立てています。
作ったのは3種類のAIエージェント。指示を出したのは私ひとりで、私はコードを読み書きしません。うまくいった話だけでなく、3つが互いの仕事を消してしまった事故も残します。
記事の終わりには、完成した図書館をもう一度ほどいて組み直した、8月23日から25日の「解体的創造」を追記しました。
目次
- はじめに ― 誰が何をしたか
- 10日間のかたち
- 8月12日 ― 1時間19分でできたものと、55分かかった勘違い
- 8月13日 ― 「こんな殺風景でシンプルだとは」
- 8月14日 ― 20分に1本、手渡して見てもらう
- 8月15日 ― 1日で100本
- 8月16〜17日 ― 渡すために、まず「渡さないこと」を決めた
- 8月18日 ― 仕事はあったのに、記録に残らなかった日
- 8月19日 ― 3つが同じ場所を直しはじめた
- 8月20日 ― 便利さを足すのを、やめた
- 8月21日 ― 199MB、そして公開してからの5時間
- その一言が、直し方を決めた
- この10日で分かったこと
- この記録の作り方と、限界
- 追記・8月23〜25日 ― 解体的創造
はじめに ― 誰が何をしたか
「AIが作った」ではなく、「役目を分けた」という話です。
本棚も、窓も、時計も、猫も、置き場所から決めました。用意された枠に合わせるのではなく、部屋のどこに何を置くかを一つずつ選んでいった結果が、いま見えている画面です。
手を動かしたのは Claude Code・Codex・MANUS という3種類のAIエージェントと、できたものを見てもらった ChatGPT・Gemini の意見。私がやったことは、画面を見て、気になった所を日本語で言うこと。それだけです。
この10日で、リポジトリ(作りかけのものを保管する場所)には 296本の仕事が残りました。そのうち私が書いたコードは0行です。
| 担当 | したこと |
|---|---|
| ばっふぁ(管理人) | 中身と世界観を決める。実物を見て判断する。公開作業をする。コードは読まない |
| Claude Code | 土台と大半の実装。問題文の転記、解説、部屋の作り込み、引き継ぎ文書。後半は原因さがしと検証 |
| Codex | 範囲を絞った監査と実装。一問一答をまるごと作った |
| MANUS | 空間の演出。馬車、窓辺の旅、三連キャビネット、噴水、地球儀 |
10日間のかたち
日ごとの仕事の数を並べると、山と谷がはっきり出ます。
| 日 | 数 | この日の中身 |
|---|---|---|
| 8月12日(水) | 6 | 初版づくり。そのあと「ファイルが見えない」騒動に55分 |
| 8月13日(木) | 36 | 朝2時の一言で、サイト全体を図書館に作り直した |
| 8月14日(金) | 53 | 共通科目84問・模擬テスト・タイマー・AIの棚 |
| 8月15日(土) | 100 | 付箋112枚・検索対策・第37回の問題文を投入 |
| 8月16日(日) | 33 | 第37回の解説。Codexが一問一答を作る |
| 8月17日(月) | 24 | 一問一答の仕上げ。管理人紹介の置き方を6回直す |
| 8月18日(火) | 0 | 仕事はあったのに、記録に残らなかった日 |
| 8月19日(水) | 12 | 3つの成果が合流し、上書き事故が起きる |
| 8月20日(木) | 9 | 便利な機能を足すのをやめ、静かな入口へ戻す |
| 8月21日(金) | 23 | 表示が重い本当の原因を見つけ、公開。そのあと総点検 |
8月15日の100本と、8月18日の0本。この差が、この記録でいちばん言いたいことにつながります。
8月12日 ― 1時間19分でできたものと、55分かかった勘違い
最初のプロンプトが具体的だと、あとがぶれません。
12時14分、長い仕様書を一度に渡しました。「第38回の高齢者福祉、1科目だけ作って型が使えるか確かめます。全科目には広げないでください」「HTMLを直接いじる形にしない」「問題文は試験センターのPDFから取り、文言を一切変更しない」「まず構成案を出してください。実装はそのあとで」。
13時33分、初版ができました。企画から1時間19分、25ファイル。問題文の転記は目で見ずに、PDFの原本と1字ずつ突き合わせる検証を7本まとめて走らせて確かめています。「たぶん合っている」を残さないためです。
ところが、この日いちばん時間を使ったのは不具合ではありませんでした。19時32分、私はこう言っています ――「GitHubには設定ファイルしか上がっていません」。同じ指摘を9分後にもう一度出しました。
調べても、25ファイルは全部そこにありました。原因は2つで、どちらもファイルとは無関係でした。ひとつは、非公開の保管場所をログインしていないブラウザで開いていたこと(そうすると「無い」と返ってきます)。もうひとつは、同じアプリの窓が2枚開いていて、片方が古い表示のまま止まっていたことです。
8月13日 ― 「こんな殺風景でシンプルだとは」
この一言が、いまのサイトの骨格になりました。
サイトのイメージが違い過ぎて・・・こんな殺風景でシンプルだとは。
画面写真を2枚つけて送りました。そして続けて自分から代案を出しています ――「図書館をイメージしたサイトにしたい。本棚が資格、本が科目、本の目次が年度」。
いま見えている本棚は、この一行そのものです。注文の中身より、「イメージが違う」と言えたこと自体が効きました。
同じ日の夜、レールを動かす猫を3時間で4回描き直しています。メインクーン、可愛い系、部屋の色調、そして黒の影絵。決め手になったのは、この一言でした。
猫ダメだね。世界観が崩れる。
8月14日 ― 20分に1本、手渡して見てもらう
画面を見ているのは私だけなので、AIは私の一言からしか状況を知りません。
この日のやり方は単純です。直す → ファイルを渡す → 自分の画面で見る → 一言返す。これを1日で33回やりました。まとめて渡さないので、変なところが1つ出た時点で「どの変更が原因か」がすぐ絞れます。
- 「ファイル名変わってないよ???これさっきと同じやつ」(12時32分)
- 中身は違っていました。違っていたのに、見分けがつかなかったのです。コードを読まない人にとって、手元の2つを見分ける手がかりはファイル名しかありません。→ 以後、名前に用件を入れる決まりになりました。
- 「ズーム75が一番見やすい。老眼の人はきついかも」(12時39分)
- 自分に見やすいかではなく、来る人の見え方で決めています。結果は「部屋は70%、文字は85%」というちぐはぐな比率。小さくしたいのは部屋であって、字ではなかったからです。
- 「なんかすごく変」(14時19分)
- この日いちばん短くて、いちばん効いた6文字。実は2つの症状を同時に指していました。縦書きの中で数字を立てる直しが背表紙の並びを壊していたことと、題名が本の高さに1文字ぶん収まらず「題」だけが2列目に落ちていたことです。
- 「タイマー動かしているときは、誕生石の表示は無しにしたほうが良いね」(15時00分)
- タイマーを頼んだ3分後の追加です。仕組みとしては何も壊れていません。模擬試験を解いている自分を思い浮かべないと出てこない指摘でした。
夜には、時間になると鳴るオルゴールも入れました。これは音のファイルを1つも使っていません。「著作権フリー」とうたわれた音源でも権利関係を確かめきれないので、著作権が切れている曲を、ブラウザに音を合成させて鳴らしています。持ち込むファイルが無ければ、権利の問題は起きようがありません。
8月15日 ― 1日で100本
眠っている間も動いていました。
3時30分「じゃあ、寝る。寝てる間に、攻めのリファクトやっておいて」。10分後、2,416行あった生成プログラムが5つの部品に分かれていました。起きたときには終わっています。
その後、外部のAIに見てもらったサイト評価(78点)を持ち込みました。中心の指摘は「教材は充実しているが、初めて来た人には入口が分かりにくい」。
夕方には、掲示板の付箋が1枚から112枚になりました。語呂合わせは自分で出しています ――「ニコニコ(25)生きる」「軍平は救世軍」「風邪にはパブロン」。標語も混ぜました。
完璧な一日より、続いた一週間
夜には第37回の問題文129問と正答を入れ終え、2年分がそろう見通しが立ちました。20時07分「コンテキスト70%近くになったから、引継プロンプトよろしく」。長いやり取りを無理に続けず、現在地を次へ渡す。10日間、この判断を繰り返しています。
8月16〜17日 ― 渡すために、まず「渡さないこと」を決めた
Codex向けの引き継ぎ文の中身は、ほとんどが「制限」でした。
16日の0時43分、別のAIに過去問の監査を頼むための引き継ぎ文を作りました。これは大量の修正を一括で頼むための文書ではありません。むしろ逆で、誤って広い範囲を書き換えないためのものです。
- 監査対象は、私が指定した1年度・1科目・1ファイルだけに絞る
- 問題文・選択肢・正答は1文字も変えない
- 不確かな点は推測で補わず、原典確認が必要な事項として明示する
- まず指摘一覧を出し、私が修正を頼んだ場合だけ直す
- 生成された画面を直接いじらず、元データから作り直す
報告の形も指定しました。指摘ごとに「対象ファイル・問題番号・該当箇所・問題点・修正案・重大度・原典確認の要否」。コードの差分を見ても判断できない私が、何が危険かを読めるようにするためです。
16日の夕方、第37回の全129問がサイトに入り、2年分258問がそろいました。そして同じ日の夜、大きな判断がありました。
この判断そのものも、AIと一緒に仕事をして、学んだことに「50点のたたき台が、100点への近道になる」として書き足しました。
8月18日 ― 仕事はあったのに、記録に残らなかった日
公開できたことと、保存できたことは、別のことでした。
この日、リポジトリには一件も残っていません。けれど何もしていなかったわけではありませんでした。
MANUSは動いていました。馬車 ―― 御者が鞭を振り、馬が足踏みし、車輪だけが回る。窓辺の旅 ―― 窓を押すと欧州の名所22件が説明と出典つきで切り替わる。王様の万歳、女王のお辞儀、近衛兵の敬礼。
それは1つの圧縮ファイルにまとまり、公開先へ直接アップロードされました。画面には出ています。しかし開発の本体には、この日、一行も入っていません。
なお、この日にMANUSへ何と頼んだのかは、どこにも残っていません。分からないので、それらしい文を作って埋めることはしていません。
8月19日 ― 3つが同じ場所を直しはじめた
誰も悪いコードを書いていません。見ている「最新」が違っただけです。
朝、Claude Code が画像を圧縮し(44MBが1.1MBに)、人形の仕草や馬車のコマ送りを実際に動くまで読み込まないようにしました。開くのを軽くするための仕組みです。
10時ごろ、私はこう言いました ――「圧縮した結果、西欧アンティーク風の雰囲気が失われた?」。Claude Code は最初「本の背表紙は画像を使っていないので圧縮とは無関係」と答えました。この判断は誤りでした。
実際は逆で、前日ぶんの取り込みによって背表紙に木目とツヤが足されていました。私が見ていた公開サイトが、まだ更新前のままだったのです。
直せって言ってないから、直そうとしているならやめて
原因を調べる話だったのに、Claude Code が断りなく画像を元に戻す作業を始めていました。止めたところ、すぐ中止して元に戻しています。
そこでこの日、運用を一本化しました。「開発のメインはClaudecodeでやりたいから」という私の言葉から、次の決まりができています。
- GitHubの main を唯一の正とする
- 生成された画面を直接いじらず、元データを直して作り直す
- 配布するファイルは、必ず main から作り直したものを渡す
- 別のAIの成果を取り込む前に、ファイル一覧と差分を確認する
正本を一つ決めた瞬間に、AI同士の競合が仕事の分担に変わりました。
8月20日 ― 便利さを足すのを、やめた
情報を増やせば親切になる、とは限りませんでした。
検索、更新情報、案内カード。便利そうな案をいくつか試したあと、私はこう判定しました。
全然便利になってない。寧ろ五月蠅くなっている気がする、情報過多でごちゃごちゃしていて
そして、目指す空気を言葉にしました ――「元の静かな入口へ完全に戻します。そう、それなの。静かな書斎のイメージだから」。ある映画に出てくる、作家の部屋のイメージです。
同じ日、スマホで本の中がスクロールできない問題も直しています。背景の部屋だけが動いて、開いた本の下が読めない状態でした。
8月21日 ― 199MB、そして公開してからの5時間
「軽量化した」は、測るまで信じてはいけませんでした。
低スペックのパソコンで重い、という宿題が残っていました。前夜の引き継ぎ文には、この一行を入れていました ――「見た目を直したら、必ず実物の画面を見てから『できました』と言うこと。見た目の違いを聞かれたら、実測で確認すること」。
3時15分、私が送ったのは18文字です ――「最新のサイトの状況をプルして確かめて」。ここから4時間の調査が始まりました。
| 項目 | 前 | 後 |
|---|---|---|
| ブラウザが展開して抱える画像メモリ | 199.40 MB | 50.05 MB |
| 通信でダウンロードする量 | 5.93 MB | 2.02 MB |
| 公開フォルダの画像 | 211枚 | 173枚 |
| 絵の形が公開前と一致する割合 | ― | 100.00% |
直したのはMANUSです。ただし、直したという報告も同じだけ測りました。転送量とメモリは1バイトの狂いもなく一致していましたが、画素を数えると緑のふちが残っていました ―― 近衛兵に274点、城に257点、王様に162点。すべて輪郭の上で、絵の内側には1点もありません。背景の消し残しの特徴です。
原因は順番でした。縮めてから緑を抜いていたのです。縮小のときに緑と絵が混ざり、混ざった色は判定をすり抜けます。さらに、王様と近衛兵は別の絵に差し替わっていました。透明処理済みのファイルがあるのに、緑背景の元画像から作り直していたためです。同じ王様の別版で、持っている笏の位置が横に100画素ちがいました。
10時52分に公開。前夜の依頼から14時間48分でした。ただし、この日はここで終わりませんでした。
- 11時15分 ―「うまくいっていたことが最終調整でダメになった」
- 本にカーソルを合わせたときの拡大が消えていました。原因は2日前の1本に紛れていた削除です。しかもこれが説明札まで3分の2の大きさにしていました。同じ1本で止められていた3つが、ここでそろって戻りました。
- 13時06分 ―「一番最初に発動するとき一瞬、人形や馬車が消える」
- これはこの日の朝、直した本人が作った問題でした。読み込みを遅らせる仕組みを戻したとき、押した瞬間に読み込みを始める作りにしていたためです。先に静かに読み込んでおく方式に変え、厳しい条件での消えた回数は46/100回から0/100回になりました。
- 13時27分 ― 全80ページの総点検
- エラー0件、内部リンク2,170本すべて有効。そのうえで5件見つかりました。いちばん重かったのは法律名の誤りで、「障がい者総合支援法」が12か所。正しくは「障害者総合支援法」で、国家試験もこの表記です。
- 14時36分 ― 統計の数字を、二重に確かめてから直した
- 資料に載せた数字を、2つのAIに別々に原典を当たらせて確認しました。結果は見立てより深刻で、種類も年も違うものが「今年/前年」として並んでいました。確認できなかった2つの数字は、埋めずに削除しています。
その一言が、直し方を決めた
10日を通して、方向を変えたのはいつも短い一文でした。
| いつ | 言ったこと | そのあと |
|---|---|---|
| 8/13 02:02 | こんな殺風景でシンプルだとは。 | 続けて自分から代案。サイト全部が作り直され、いまの骨格になった |
| 8/13 20:23 | 猫ダメだね。世界観が崩れる。 | 「可愛くない」では方向が定まらない。アニメ調をやめる、と決まった |
| 8/14 12:32 | ファイル名変わってないよ??? | 渡すファイルの名前に用件を入れる決まりができた |
| 8/14 12:39 | 老眼の人はきついかも。 | 部屋は70%、文字は85%。小さくしたいのは部屋であって字ではない |
| 8/14 14:19 | なんかすごく変 | 6文字で、別々の2つの症状を同時に指していた |
| 8/14 17:39 | 上下を逆に。問1が医学概論なので。 | 好みの話が、「試験の番号順が正しい」という動かせない基準に変わった |
| 8/14 17:55 | からくり時計何も動いてないね。 | 動きを控える人への配慮が、その機能自体を見えなくしていた |
| 8/15 00:25 | うまくまとめて、けど省略はしないで。大事なエピソードだから。 | 普通なら矛盾するが、理由が付いているので判断できた |
| 8/15 00:42 | 判断つかないし、任せる。 | 「どちらでもいいです」と返さず、原典の順を採って理由を添えた |
| 8/15 00:49 | 写真載せない。今後広告とかつけることがあったら面倒だから。 | 権利上は使えると確かめたあとの判断。将来の自由度を優先した |
| 8/19 | 直せって言ってないから、直そうとしているならやめて。 | 調べる話だったのに直しはじめていた。止めて即座に元へ戻した |
| 8/20 | 寧ろ五月蠅くなっている気がする。 | 入口に必要なのは案内の多さではなく、棚を見わたす余白だった |
この10日で分かったこと
次に何かを作るときに、そのまま使える形にしてあります。
- 最初のプロンプトが具体的だと、あとがぶれない
- 初日の仕様書に「1科目だけ」「HTMLを直接いじらない」「問題文は変えない」と書いてありました。おかげで実装中に方針を聞き直す必要がほとんどなく、10日たってもこの3つは一度も揺れていません。
- 変えてはいけないものは、機械で確かめる
- 問題文の転記は目で見ずに、原本と突き合わせる検証を並列でかけました。同じ考え方が、後の緑のにじみの検査(画素を数える)にもつながっています。
- 公開できたことと、保存できたことは違う
- 8月18日の仕事は公開画面には出ていましたが、開発の本体には一行も入っていませんでした。画面で正しく見えることは、正しく保存されていることの証拠になりません。
- AIを増やすほど、「何が最新か」を決める仕事が増える
- 3つが同じ場所を別々に直し、互いの仕事を消す事故が何度か起きました。誰も悪いコードを書いていません。正本を一つ決めた瞬間に、競合が分担に変わりました。
- 取り込んだあとに、何が消えたかを確かめる
- 1本の変更で3つの演出が同時に止まり、しかも説明文にはどれも書かれていませんでした。足されたものは見つけやすいのですが、消されたものは気づかれません。
- 「軽量化した」も「直しました」も、測るまで信じない
- 形式を変えてファイルは3分の1になりましたが、ブラウザが抱えるメモリは1バイトも減っていませんでした。見る指標を間違えると、作業した分だけ「直った気」になります。
- 直した本人が、次の不具合を作る
- 改善が別の劣化を生むことがあります。直したあとにも、実際に触って確かめる工程が要ります。
- 確認できなかった数字は、載せない
- 読み手は確認済みだと受け取ります。原典に当たれない状況で「たぶんこう」と埋めるのは、誤りより悪いことです。
- できたものを見てから、公開の名前を変えていい
- 「模試」として出すのをやめた判断は、失敗ではなく品質を守る作業でした。50点のたたき台を早く出して相談することが、100点への近道になります。
- 公開前に、必ず一度こちらへ通す
- 最終日、実測 → 指示文 → 実装 → 実測で検証 → 公開、という順番に変えたことで、緑のにじみを公開前に止められました。この順番が、いちばんの収穫かもしれません。
AIとの進め方そのものについては、AIと一緒に仕事をして、学んだこと、AIコスパ術、AIとの会話を魔導書ににも書いてあります。ここまでの道のりはコードが1行も読めない私が、AIで業務アプリをつくるようになるまでにまとめました。
この記録の作り方と、限界
分からないことは、分からないまま書いてあります。
材料は、開発中に3種類のAIエージェントがそれぞれ残した記録11本と、リポジトリの記録296本です。時刻はすべて日本時間にそろえ直しました。
分かっていないこと。発言そのものを打った時刻は、会話の記録が残っている範囲でしか分かりません。多くの時刻は「できあがって保存された時刻」で、発言はその数分から数十分前にあたります。8月18日にMANUSへ何と頼んだかは、どこにも残っていません。MANUS側とChatGPT側で何を考えていたかも、こちらには記録がありません。
分からない時刻や依頼文を、それらしい文で埋めることはしていません。もっともらしい履歴を作るより、「残っていない」と書くほうが、後から資料として使うときに信頼できるからです。
追記・8月23〜25日 ― 解体的創造
完成した入口をいったんほどき、大図書館として組み直した3日間です。
8月21日で、この記録が扱う最初の10日間とサイトは、いったん一区切りになりました。ところが2日後、できあがった入口をもう一度壊しはじめました。すでにあった本棚、時計、猫、馬車、窓辺の旅を捨てたのではありません。何を残し、何を背景へ溶かし、何を動く仕掛けとして前へ出すかを、一つずつ決め直したのです。
玄関ホールの先を、司書の執務室、社会福祉士の書架、福祉×AIの研究工房、今日の一枚、映写室、窓辺の旅という6つの部屋に分けました。猫のつまみで館内を見渡すレールは外し、利用者が自分で部屋を選んで巡る形に変えました。レールを外した時点で、部屋移動のプログラムは741行から224行へ、517行減りました。新しい部屋移動と配置調整を足した最終版でも385行。前の形より356行、48%少ないままです。8月24日には、ばらばらに重ねていた動かない家具や木枠の多くを背景へ統合しました。
せっかくの景色なのに、窓の骨組みが邪魔だなぁ
窓の骨組みを消せば、エッフェル塔はよく見えます。しかし全部消すと、図書館の窓から眺めている感じも消えます。景色を完全に前へ出す案と、七割ほどにする案を比べ、最後は景色を九割の濃さで重ね、骨組みを一割ほど残すところで止めました。景色と部屋の現実感を、どちらもゼロにしないためです。
ダメですね、位置がずれているし、下と重なって腕の本数が増えているし。
騎士の剣礼は、最初の修正でも「まだ暗くなるね」となりました。黒い半透明の網のようなものが甲冑にかかり、次の案では静止した騎士と動く騎士の位置がずれて、腕が増えて見えました。暗さだけを直すのでは足りませんでした。背景にいる騎士と、剣を掲げる騎士を同じ位置・同じ大きさに合わせ、二つの姿をきれいに切り替えるところまでやり直し、最後の判定は「100点」でした。
見た目の外でも、同じことをしています。今日の一枚の付箋そのものはダブルクリックでしか開けず、キーボードでは押せない状態でした。書架へ移る一瞬だけ、本が後から入ったように見える問題もありました。8月25日は、付箋をクリック・Enter・Spaceで開き、Escapeで閉じ、元の場所へ戻れるところまでつなぎ直しました。書架への移動も、最初から本が入った完成位置を見せる形へ変えました。きれいにすることと、使えることを、最後にもう一度つなぎ直す仕事でした。
| 項目 | 前 | 後 |
|---|---|---|
| 公開画像 | 174枚 | 173枚 |
| サイト内リンク | 2,313本 | 2,313本 |
| 監査のエラー | 0件 | 0件 |
| 監査の警告 | 39件 | 38件 |
| 別部品の映写機SVG・回転リール | 1個・2個 | 0個・0個 |
よし、良いサイトが作れたんじゃないかな
このサイトは、いまも増え続けています。過去問は2年分、一問一答は19科目。棚に空きがあるのは、これから入るものの場所です。
10日で分かったのは、AIが賢いかどうかより、こちらが何を見て、何を測って、何を決めるかのほうが結果を左右するということでした。コードは読めなくても、画面は見られます。おかしいと思ったら、理由を1つ添えて言う。それだけで、直し方は決まります。