最近話題のLLMとやらは、なんか簡単なアプリとかを作ることができるらしい。先日Fable5が出たとき、自分の修論を批判させてみたくてClaudeを1ヶ月だけ契約した。メインの修論批判はかなり賢いものが返ってきた。これは面白いと感じると同時にもしかしてコードとか何もわからない弊でも自分用のツールを作成することができるのではないかと思い、やってみたくなった。実際フォロワーがLLMを使ってアプリ作ったりしてたし。
 そこで、前々から日々の生活において欲しいなと思ってた、スクリーンショットアプリと、SNSアーカイブアプリを作ることにした。

アニメキャプチャ

 普段弊はアニメを見る時に「萌え~~~~」と思った瞬間をスクリーンショットしてSNSに上げるという行為をしている。その際に、「Rapture」通称「おにぎりキャプチャ」と、Logiのキーボードの機能である「スマートアクション」を併用していたが、どこか痒い所に手が届かないという感覚があった。
 例えば、普段は①アニメを視聴する→②キャプを撮るために左手をF5に置く→③F5を押下してスマートアクションでおにぎりを開く→④トラックボールでウィンドウクリックする→⑤Escで退出する or スマートアクションの設定で自動で閉じる→⑥クリップボードからSNSに貼り付けるという流れでキャプを取っていた。このうち④から⑤の段階は無駄ともいえる。
 加えて、これまではキャプの整理も手作業で行っていたが、さぼりがちだった。弊は20枚~50枚ほどのキャプを1日にとるが、アニメを見終わった後に普段管理用で使用している「Eagle」に手作業でアップロードしてタグとフォルダを付けて……という作業はかなり面倒だった。結果2026春のキャプ整理はサボってしまい、タグの無い1300枚がEagleにぶち込まれているだけという状態になっている。ここもできればツールでなんとかしたかった。

Claudeとの会話内容冒頭。下ののURLから当該内容を開けます。
 会話全データはこちら

 そこで上記のような指示を出して、キャプチャツールを作成した。
 いままでは無料(学生だけProが可能)なGeminiしか使ってなかったため、ブラウザ上で指示を出したらなんか作ってくれるというのに感動していたが、何せ初めてなので「コードに悪意があったらどうしよう……」的なことを思いGeminiにコードを貼り付けて検証させるみたいなことをしていた(その結果keyboardライブラリを使うなという指示を追加で出していった)。その他にも実際に動かしてみて変なところや追加したいものなどを指示し、こうしてできたのが次のものである。

 機能としては、どこにフォーカスが置かれていたとしてもアニメ再生中のタブがスクショまたはレコードされること(普段別ブラウザ上でmisskeyをしてるので、フォーカスがあたっているのが再生中のウィンドウとは限らないのだ)、自動でファイル名をアニメにしてくれること、Eagleに自動でフォルダとタグを付けること、クリップボードにコピーされることを求めた。
 結果として配信勢の自分にとって最適なものが出来たと感じている。もしこれが全画面表示じゃなかったらタブとかのツールバーまでスクショされてしまうため、そういった場合の使い勝手としては若干良くないかもしれないが、自分はいつも全画面表示でみているのでこれでいいかな。アニメタイトルを自動で読み取ってタグ付けしてくれるのが1番デカい成果かもしれない。


 ……これは単純なので簡単にできたが、SNSアーカイブのほうは割と大変寄りだった……

SNSアーカイブ

 近年、エックス(旧twitter)がますます酷い場所として機能するようになってきた。外部サービスというのはいつでも凍結リスクがあるから自分の手元に自分のデータは残しておきたい。エックスには親切にもデータのエクスポートが可能だ。しかし分散の時代、エックス、Fediverse、Bluesky等の自分のデータが同じフロントエンドで一括でみれると便利なのではないだろうか。
 そんなところから、Twitterのユーザデータダウンロードしてhtmlからみれるという機能に似た、SNSアーカイブとそのビューアが欲しいと考えて、次のように頼んだ。
Twitterのアーカイブデータ(htmlで見られるやつ)と、fediverseのmisskeyのデータエクスポート機能(自分の投稿をすべてDLできるやつ)、そしてblueskyの自身の投稿データを統合して閲覧できるアプリケーションを作成してください。Windows11です。ちなみにmisskeyについては管理者権限を持っており、もしかしたら手動のデータエクスポートよりもapiを叩いて全部自動で引っ張ってくるみたいなほうが楽かもしれません。そこは検討して自身の判断で実装してください。条件としては、現在私はSNSとしてtwitter(現X)、FediverseのMisskey系のサーバを2つ、blueskyのbsky.sosialを1つのアカウントを所持しており、それらの過去の投稿を統合して時系列順にみれることが理想です。つまりtwitterデータのhtmlみたいなのが理想です。そのため、twitterデータhtmlにある全文検索機能(コマンド使用可)は必須となります。それらにより高機能を付け加えても構いません。すなわち、自身のSNSの投稿した文章や写真をすべて時系列で見ることができる(できればいいね欄も含めて)、過去の投稿を検索できる(高機能)、できればRTもみれるが理想です。写真データについてもし取得が難しい場合、misskeyについてはURLだけ取得でもいいですが、できれば写真等のメディアデータもできるだけローカルにあってほしいです。どうぞよろしくお願いいたします。
 そうこう指示をしていると、とりあえず出来たので、マストドンへの対応や、投稿といいねを別タブにしたり、フロントエンドのUIをフラットデザイン2.0的なものにしたり、検索の高速化、データ吸い出しの強固化、タッチ操作に最適化したりと色々調整を指示したりしていた。
 その一方でなぜか自分のmisskeyサーバからapiで情報を取得しようとした時に、25000件あたりで止まるという謎の現象を確認したため、それをどうこうして直すことをしたつもりではあるが、検証していないため実際に治ったかどうかはわかっていない(ここらへんの原因特定作業や自分の誤った指示によって変な方向に持っていってしまったので会話履歴を遡ってそこからやり直しをしたりみたいなところに極めて時間とお金がかかってしまった)。あとapiからだと数万件とかあるとmisskeyサーバの力の関係かやたらと時間がかかる。これではapiで7万件とかある投稿を吸い出すのは非効率的ということで、1番最初の同期はjsonから吸い出すという方式に切り替えたり、あとはスマホ対応にしたりとそうした細々なことをして完成させた。

SNSアーカイブのスクリーンショット
完成形はこんな感じ

 このアプリで自分なりに気に入っている機能があり、それは投稿やいいねのブックマーク機能(エックスから着想)と、「文脈振り返り」機能だ。
文脈表示機能の詳細。真ん中に「この投稿」があり、その上下に当時の投稿がある
 この機能はmisskeyのフロントエンドから着想を得ている。

misskeyの投稿詳細画面
「返信を見る」の下のボタンでその投稿より前のを、上の方のボタンでその投稿より後を見ることができる

 この機能を使うことで、例えば、「萌えすぎます!!!」と検索をかけて投稿が表示された際、当時どういった文脈上でそのツイートをしていたのかがわかるという訳である。
 くわえてこれは私の曖昧な指示(文脈遡りみたいなのがほしい的な)からClaude側が実装したそれが、文脈表示において同一アカウントのみかついいねも含むというものになっていたという偶然から、さらに「いいね」の除外や「全アカウント」表示もできるようにした。
文脈表示機能のスクリーンショット
 結果として(最初は投稿のみ前後と思ってたがいいねも前後に含むというエアリプに配慮したものをClaudeが勝手に実装してくれたおかげという)思いもよらぬ偶然から別の発想が生まれていいものができたなぁという喜びみたいなものがある。
 それはそうとSNSアーカイブは問題の解決や修正に極めて時間がかかり、結果として次のようなことになってしまった。

Claudeに$99.07使用したとの表示

 いや5時間制限や1週間制限に耐えられなくて使ったとか言うアホだから弊の責任なのだが……(あと多分うまくやればFable使わずにできるだろとか……最初からMaxプランにしとけとか……)
 まぁ色々あったが、このようにして2つのツールをLLMで作ることができた。

感想

 こうして2つのアプリをLLMが作成した。これらのツールによって弊のアニメ視聴はとても快適なものになったし、SNSアーカイブのビューアも常時起動してランダム表示して遊んだり過去ツイ検索をしたりしている。やはり自分の手元に自分のデータがあるというのはかなり精神的に良い作用がある。
 しかし、こうしたアプリがどのような仕組みで動いているのかというのはよくわかっていない。だからなにかバグがあってもLLMに頼んで原因特定から修正までやってもらうしかないし、自分では何もできない。いや多分勉強すればできるかもしれないが、それは時間のかかることで、普通はあんまりしないだろうし、弊も時間がないのですることはないだろう。
 となると今後動かなくなった時が怖い。そういった意味ではまだ自分の手でどうこうできないし真に自分の手元にあるわけではないのかもしれない。
 でも、(お金がかかるとはいえ)少なくともLLMと自然言語で会話すれば自分で何かができるというのは1つの希望かもしれない。これはブラックボックスかもしれないし、「ギュられる」かもしれない。OSS文化の良さの破壊や衰退を招く危険だってある。
 それでも、こうして「えっっっっっっ」と思った瞬間を簡単にキャプチャできたり、「ハァハァハァハァハァハァハァハァハァハァハァハァハァ」を全SNS横断して検索できたりすること、いままであった「あったらいいな」「だけど人に頼んだりする程ではないんだよな」が簡単になり、ぐっと身近にできるようになったことは、日々の日常がちょっとだけ鮮やかになった気がするのだ。