GitもGitHubも分からないまま、AIと個人サイトを公開した

「GitHubって、Astroを構築するためのもの?」

今回、僕は最初にそう聞いた。GitHubのアカウントも持っていなかったし、GitとGitHubの違いも分かっていなかった。SSH鍵もVercelもDNSも、名前を聞いたことがある程度だった。

それでも、15manlife.work では最終的に「この2記事公開して」と言ったあと、記事が公開されるところまで進んだ。僕が毎回やることは、管理画面を開いて細かな設定を覚えることではなく、できたものを見て、外へ出してよいかを決めることになった。

これはAstroの使い方を教える記事ではない。技術を全部覚えなくても、個人サイトを運用できる形をどう作ったかの記録である。

WordPressを使わないと決めた理由は、性能ではなかった

僕は別のサイトでWordPressを使っている。ConoHaの管理画面からWordPressを入れて始める流れも知っている。投稿、画像、プラグインを管理画面で扱えることは、WordPressの分かりやすい強みだと思う。

最近はWordPressの作業もAIに手伝ってもらっているので、作業時間そのものが大きく変わったかは、まだ分からない。ただ、今回Astroを触ってみると、すごくシンプルで分かりやすいと感じた。

WordPressは、管理画面の中にサイトがある感じがする。今回のAstroは、フォルダとファイルそのものがサイトに近い感じだった。どちらが上というより、今回やりたかった「AIと一緒にサイトの見た目と記事を直接扱う」ことには、後者の方が合っていた。

WordPressの時は自分が管理画面を触り、今回のサイトではAIとの会話を経て自分が確認して公開する流れ
WordPressでもAIに手伝ってもらうことはできます。ここでは、今回のサイトで自分がどこを触ったかだけを並べています。

Astroは、管理画面を増やす道具ではなかった

Astroは、Markdownで書いた記事をWebサイトの形に変換してくれる道具として使った。

今回の15manlife.workでは、記事本文をMarkdownで置き、見た目をコードで整えた。AstroはWordPressの代わりになる新しい管理画面ではなく、管理画面をなくして、記事とサイトを普通のファイルとしてAIに直接扱わせる仕組みに近かった。

もちろん、Astroがいつでも同じ構成になるわけではない。今回の構成では、記事の正本をMarkdownにして、AIがそこを直し、僕が画面で確認する形にしたというだけである。

ClaudeとCodexには別々に記事ページの案を作ってもらい、僕は見てClaude版を選んだ。選んだ後は、その見た目をAstroへ移した。自分でテーマを探し、管理画面のブロックを並べる代わりに、AIが作ったものを見て判断する流れだった。

GitもGitHubも分からないまま進めた

最初は、GitもGitHubも同じようなものだと思っていた。僕の中では、GitはMacの中で変更履歴を残す仕組み、GitHubはその履歴をオンラインにも置き、Vercelへ渡す中継地点として使うものになった。

GitHubはAstroを作るために必須だったわけではない。今回は、変更を残すこと、差分を確認すること、Vercelへ自動で渡すことのために使った。

途中でGitHubの画面から直接ファイルを上げようとしたが、今回のやり方ではAstroのフォルダ構造をそのまま扱いにくいと分かり、途中で取り消したこともある。怖かったのはGitHubそのものより、どこまで公開されるのかが分からなかったことだった。

そこで、リポジトリはPrivateにした。GitHubへつなぐための鍵も専用に1組作り、秘密鍵はMacに残し、GitHubへ登録したのは公開鍵だけにした。サイトと関係のない研究所OSや素材庫がpushの対象に入っていないかも確認した。

一方で、Vercelの2段階認証は、この時点ではまだ後回しにしている。

全部を自分で設定できるようになりたいわけではない。ただ、外に出る範囲や権限のような、危ない線がどこにあるかは自分でも理解したいと思った。

記事の置き場所だけは1つに決めた

今回、記事本文の正本が一時的に2か所にできかけた。そうなると、次に直す時にどちらを直すのかを考えることになる。

そこで、自分の記録や判断を置く場所、公開する記事とサイト本体を置く場所、途中の作業や監査記録を置く場所の3つに分けた。記事本文の正本は、Astro内のMarkdownだけにした。

同じものを2か所で管理しない。これは小さなことに見えるが、迷う場所を一つ減らしてくれる。

以前、写真を探すためにかなり細かな索引を作ったことがある。精密でも、自分で索引を開く必要があると、だんだん使わなくなった。覚えないと使えないものは、使わなくなる。今回も、新しい管理画面を増やすのではなく、AIが正本を扱い、僕は必要な時に見る形へ寄せた。

「この2記事公開して」で公開できた

GitHubのmainへ変更が入ると、VercelがAstroをビルドしてWebへ出す形にした。僕が毎回Vercelの管理画面で操作する必要はなかった。

ドメインはConoHaで取った。最安の場所を探したからではなく、すでに使っている場所へ寄せて、管理する場所を増やしたくなかったからだ。サイト本体はVercelに置き、DNSでは15manlife.workへ来た人をVercelへ案内する設定をした。ConoHaのDNSには最初、ゾーン自体がなかったので、Vercelが表示した値を確認してから設定した。

ただし、ここでAIが勝手に公開したわけではない。GitHubへの公開鍵登録、Private repositoryの作成、Deploy、DNS変更、記事公開のように外へ影響するところでは、その都度僕が承認した。

最後も「この2記事公開して」が承認だった。その後に、draftを外し、buildし、変更を残し、GitHubへ送り、Vercelで公開され、実際の画面を確認した。僕の役割は、最後に見ること、最後に決めることへ寄った。

自分の公開承認からAIの処理、Vercelの自動公開、自分の画面確認までの流れ
鍵の登録やドメインの設定など、外へ影響する場面では、その都度確認しました。

まとめ|全部覚えなくていい。でも危ない線は理解したい

Astro、GitHub、SSH、Vercel、DNSを全部自分で使いこなせるようになったわけではない。今も分からないことは多い。

それでも、記事の正本を一つに決め、AIが変更と公開準備を進め、外へ出る前に僕が見る形は作れた。管理画面を覚えることが運用の中心ではなくなった。

任せるところは任せたい。でも、何が公開されるのか、どこに権限を渡すのかといった危ない線は、自分でも理解したい。分からないところを急いで分かったことにせず、必要な線だけ少しずつ覚えていく。

今回できたのは、技術を覚え切ることではない。自分が最後に見る、最後に決めることで回る小さな仕組みを一つ作ることだった。記事の作り方そのものも変わったが、それはまた別の話である。

コメント

タイトルとURLをコピーしました