AI MEDIA

カテゴリー: AI

  • AIに記事を書かせたら、最後に残ったのは人間の違和感だった。

    AIに記事を書かせたら、最後に残ったのは人間の違和感だった。

    AIがコードを書き、テストを通し、ビルドまで終えた。

    それなら完成しているはずだった。ところが実機で開くと、サムネイルは一枚も見えない。情報を追加した画面は横へ広がり、本文は細く押しつぶされている。直すためにタブへ分けたら、今度はウィンドウの中身が真っ白になった。

    エラーは出ていない。テストも落ちていない。それでも、どう見てもおかしい。

    AI Media Studioを作る過程で、何度もこの状況に出会った。そして最後まで残った人間の仕事は、コードを書くことより「これは違う」と感じることだった。

    AIに記事を書かせる前に、AIが記事を書く環境を作った。RELATED ARTICLE  |  AIAIに記事を書かせる前に、AIが記事を書く環境を作った。AIに記事を書かせるだけなら、APIをつないでプロンプトを渡せば終わると思っていた。AI◷ 10 min

    仕様を満たしているのに、使えなかった

    AIへ依頼するとき、僕は要件を書く。Projects一覧へサムネイルを表示する。Project Detailにも同じ画像を出す。Review Queueでも共通利用する。画像は非同期で読み込み、存在しない場合はプレースホルダーを表示する。

    AIで編集部を作るには?制作・記録・公開のFAQRELATED ARTICLE  |  AIAIで編集部を作るには?制作・記録・公開のFAQAIに文章を書かせるだけでは、継続的なメディア運営にはなりません。AI◷ 6 min RELATED ARTICLE  |  AI / CODEX ChatGPTとCodexだけでMacアプリを作ってみた ChatGPTとCodexを使い、Macアプリを完成させるまでの実録です。 AI MEDIA◷ 5 min2026.07.19

    要件としてはかなり具体的だ。AIは関連コードを探し、APIを追加し、SwiftUIへ画像ビューを組み込み、テストを書く。実装結果だけを読めば、仕事は終わっている。

    しかし、実機のProjects画面には画像がなかった。左側には従来どおりプロジェクト名と状態が並び、右側にはMarkdown本文が表示されている。サムネイル用の領域そのものが見当たらない。

    サムネイルが表示されていなかったAI Media StudioのReview Queue
    機能は実装済みのはずだったが、実機では一枚も表示されていなかった。

    コード上の「ある」と、画面上の「見える」は別だった。APIが値を返すこと、Swiftのモデルが値を受け取ること、画像URLが認証を通ること、レイアウト内に表示領域が存在すること。その全部がつながって、ようやく一枚の画像になる。

    正しさは、画面の気持ち悪さを検出しない

    サムネイルが表示されるようになると、次は抽出したスクリーンショットを全部見たくなった。記事を書くための素材なのだから、代表画像一枚だけでは足りない。

    最初は本文の上へ画像一覧を追加した。要求には合っている。ただし画面全体の高さが膨らみ、Markdownを読む場所が不安定になった。次に、右ペインへ情報を足した。今度は横幅が足りなくなった。

    右側の本文領域が狭くなったAI Media StudioのProjects画面
    情報を右へ足し続けた結果、本文が押しつぶされた。

    機能は増えた。表示もされている。ボタンも押せる。それでも気持ち悪い。

    この「気持ち悪い」は、テストケースに書きにくい。画面幅が何ピクセルなら失敗なのか。タイトルが何文字なら窮屈なのか。本文を読む人がどこで疲れるのか。数値へ変換できる部分はあるが、最初に問題を見つけるのは、たいてい視覚的な違和感だった。

    タブに分けたら、何も表示されなくなった

    横へ増やすのをやめ、Article、Images、Sourceの三つのタブへ分けることにした。記事を読むときはArticleだけを表示する。画像はImagesで独立してスクロールする。元動画の情報はSourceへ置く。

    動画を放り込んだら、AI編集部はどこまで記事を作れるのか。RELATED ARTICLE  |  AI動画を放り込んだら、AI編集部はどこまで記事を作れるのか。動画を一本入れれば、AIが内容を読み、スクリーンショットを選び、記事を書いてくれる。AI◷ 6 min

    考え方は自然だった。実装も通った。ところが新しいアプリを起動すると、タイトルバーと青い選択線だけが残り、コンテンツは真っ白だった。

    タブ化後に内容が真っ白になったAI Media Studio
    クラッシュはしていない。ただ、使えるものも表示されていない。

    ここでも「ビルド成功」はほとんど慰めにならなかった。TabViewの初期選択、NavigationSplitViewとの組み合わせ、ObservableObjectの初期化、画像読み込み、MainActor。原因候補を一つずつ外し、まずArticleだけを戻し、その後Images、Sourceを順番に復帰させた。

    AIは候補を列挙し、コードを比較し、修正を作るのが速い。一方で、真っ白な画面を見て「前より悪い」と判断するのは人間だった。

    人間は、答えより先に違和感を持つ

    人間の判断は、いつも説明できる形で始まるわけではない。

    「サムネイルが欲しい」と言う前には、文字列だけの一覧が分かりにくいという感覚があった。「画像を全部見たい」と言う前には、代表画像一枚では記事を書けないという不足感があった。「右へ出すのは無理がある」と言ったときも、最初から理想のレイアウトを説明できたわけではない。

    まず違和感があり、その後で理由を言葉にする。AIへ修正を頼むのは、その次だ。

    AIは明文化された問題に強い。ファイルを探し、影響範囲を調べ、テストを追加し、同じ失敗を防ぐ。しかし、まだ言葉になっていない問題は入力できない。人間が画面を見て、触って、立ち止まる必要がある。

    サムネイルが並び、視覚的にプロジェクトを判別できるAI Media Studio
    違和感を言葉にした結果、文字だけだった一覧へ視覚的な手掛かりが加わった。

    AIと人間の役割は、作る側と使う側ではない

    この開発を「AIがアプリを作り、人間が確認した」と説明すると、少し違う。

    AIは実装者で、人間は発注者という単純な分担でもなかった。人間が違和感を見つけ、AIが原因を調べる。AIが修正し、人間が実機で確かめる。画面を見て別の問題に気づき、またAIへ戻す。

    RELATED ARTICLE  |  AI / WORKFLOW AIに記事を書かせる前に、AIが記事を書く環境を作った。 文章生成だけでは終わらない、AI編集環境の設計と制作基盤を振り返ります。 AI MEDIA◷ 8 min2026.07.18

    往復の途中で仕様そのものも変わった。最初は右ペインでよいと思っていた。実際に使うと無理があると分かった。タブへ変えた。さらに一覧画面から詳細を分離した。正解を先に持っていたわけではなく、動くものへ触れることで判断を更新した。

    AIが作り、人間が採点するのではない。AIの出力が、人間に次の判断材料を渡す。その判断が、次のAIの仕事を作る。製品はその往復の中で少しずつ形になった。

    Article Images Sourceを切り替えられるAI Media Studioの記事画面
    AIが素材を整え、人間がArticle、Images、Sourceを見比べて次の判断をする。

    最後に残ったのは、承認だった

    AI Media Studioも同じ考え方で作っている。AIが動画を受け取り、素材を整理し、スクリーンショットを抽出し、Markdownを書く。人間はArticle、Images、Sourceを見比べ、修正するか、再生成するか、却下するか、承認するかを決める。

    RELATED ARTICLE  |  AI / VIDEO 動画を放り込んだら、AI編集部はどこまで記事を作れるのか。 動画の投入から画像抽出、記事候補、レビューまでの実際の流れを追います。 AI MEDIA◷ 5 min2026.07.18

    最後まで自動化しなかったのは、承認だ。

    それはAIを信用していないからではない。記事に必要なのが、文法的な正しさだけではないからだ。画像に過去の会話が写っていないか。説明の順番が不自然ではないか。読者へ見せる価値があるか。このサイトで出すべき記事なのか。

    こうした判断には、事実確認と同時に感覚が混じる。感覚だから雑に扱ってよいのではなく、まだ仕様へ変換されていない重要な情報として扱う必要がある。

    AI Media Studioで記事をレビューしている画面
    生成の最後に置いたのは公開ボタンではなく、人間が確認するためのレビュー画面だった。

    人間の仕事は、「これは違う」と言うことかもしれない

    AIを使えば、人間の仕事がなくなるという話は分かりやすい。実際、コードを書く時間も、下書きを作る時間も減った。

    ただ、減った作業の跡には判断が残った。何を作るか。どこが読みづらいか。何が不足しているか。どこまで自動化し、どこで止めるか。公開してよいか。

    AI時代に人間へ残るのは、文章を手で書くことでも、コードを一行ずつ打つことでもないのかもしれない。

    動いているものを見て、「これは違う」と判断すること。その違和感を言葉へ変え、次の仕事としてAIへ渡すこと。そして最後に、自分の名前で承認すること。

    少なくともAI Media Studioは、その往復でできている。

    AIと人間の作業を記録したAI Media Studioの制作ログ
    AIの処理と人間の判断を、完成品だけでなく制作ログとして残す。
  • 動画を放り込んだら、AI編集部はどこまで記事を作れるのか。

    動画を放り込んだら、AI編集部はどこまで記事を作れるのか。

    動画を一本入れれば、AIが内容を読み、スクリーンショットを選び、記事を書いてくれる。

    言葉にすると、それほど難しい仕組みには聞こえない。動画をAPIへ渡し、文章を返してもらえば終わりそうだ。僕も最初はそう考えていた。

    実際にAI Media Studioへ動画を入れてみると、文章が出るまでより、その文章を信用できる状態にするまでの方が長かった。今回は、動画が記事候補になり、人間の承認を待つところまでを追ってみる。

    AIに記事を書かせる前に、AIが記事を書く環境を作った。RELATED ARTICLE  |  AIAIに記事を書かせる前に、AIが記事を書く環境を作った。AIに記事を書かせるだけなら、APIをつないでプロンプトを渡せば終わると思っていた。AI◷ 10 min RELATED ARTICLE  |  AI / WORKFLOW AIに記事を書かせる前に、AIが記事を書く環境を作った。 文章生成だけでは終わらない、AI編集環境の設計と制作基盤を振り返ります。 AI MEDIA◷ 8 min2026.07.18

    入口は、動画を置く場所だけにした

    制作の入口はInboxだ。画面収録や動画をドラッグ&ドロップすると、素材が保管場所へコピーされ、処理対象として認識される。

    AI Media StudioのInbox画面
    動画を受け取るInbox。制作フローの入口を一つにした。

    ここで重要なのは、アップロード画面を豪華にすることではない。人間が「この動画を記事にしたい」と判断した後、迷わず処理を始められることだった。

    以前はFinderで動画を探し、コピー先を確認し、コマンドを実行し、ログを見る必要があった。操作が少しずつ分散しているだけでも、毎回やると面倒になる。Inboxは、その面倒を一つの動作へ押し込めるための入口である。

    動画を記事素材へ分解する

    動画を受け取ると、AI Media Studioはプロジェクトを作る。元動画の情報を調べ、代表サムネイルを生成し、記事で使えそうな場面をスクリーンショットとして抽出する。

    AIに記事を書かせたら、最後に残ったのは人間の違和感だった。RELATED ARTICLE  |  AIAIに記事を書かせたら、最後に残ったのは人間の違和感だった。それなら完成しているはずだった。ところが実機で開くと、サムネイルは一枚も見えない。情報を追加した画面は横へ広がり、本文は細く押しつぶされている。直すためにタブへ分けたら、今度はウィンドウの中身が真っ白になった。AI◷ 7 min

    文章を直接生成する前に、まず素材を分解する。これは回り道に見えるが、後から記事を直すときに効いてくる。文章に違和感があれば元動画へ戻れる。説明に画像が必要なら抽出済みの画面を確認できる。AIが何を根拠にしたのか、人間が追える。

    AIで編集部を作るには?制作・記録・公開のFAQRELATED ARTICLE  |  AIAIで編集部を作るには?制作・記録・公開のFAQAIに文章を書かせるだけでは、継続的なメディア運営にはなりません。AI◷ 6 min
    サムネイルが表示されたProjects画面
    各プロジェクトに代表画像が並ぶ。名前だけの一覧より、元動画を判別しやすい。

    サムネイルも最初からあったわけではない。プロジェクト名と状態だけの一覧は、数件なら読める。しかし画面収録が十数件に増えると、文字列だけでは見分けられなくなった。そこでffmpegで代表フレームを作り、既存プロジェクトには後から一括生成した。

    ffmpegとは?Macでインストールして動画を扱う方法RELATED ARTICLE  |  開発環境ffmpegとは?Macでインストールして動画を扱う方法ffmpegは、動画や音声を変換・解析・切り出しできる定番のコマンドラインツールです。名前だけを見ると専門家向けに感じますが、MacではHomebrewを使えば数分で導入できます。この記事では、インストールから開発環境◷ 4 min RELATED ARTICLE  |  MAC / FFMPEG ffmpegとは?Macでインストールして動画を扱う方法 ffmpegの導入から、動画の静止画抽出と自動処理までを説明します。 AI MEDIA◷ 4 min2026.07.19

    文章一枚では、レビューできなかった

    Markdownが生成されると、最初は達成感がある。見出しがあり、段落があり、それらしい結論もある。ただし、それらしいことと正しいことは別だ。

    画面操作の記事なら、説明とスクリーンショットが対応しているか確認しなければならない。個人情報や過去の会話履歴が写っていないかも見る必要がある。元動画のファイル名、解像度、再生時間も確認したい。

    Article Images Sourceタブを備えたAI Media Studioの記事画面
    Article、Images、Sourceを切り替え、文章・画像・元動画を同じプロジェクトで確認する。

    そのため、レビュー画面をArticle、Images、Sourceの三つに分けた。ArticleではMarkdownを読み、必要なら編集する。Imagesでは抽出された全画像を確認する。Sourceでは元動画の情報を見る。

    AIが記事を書いた後、人間が見るべきものを一か所へ集めた形だ。生成ボタンより、こちらの方が実際の運用では重要だった。

    自動化は、きれいには進まない

    もちろん、動画を入れた瞬間からすべてが順調に動いたわけではない。

    macOSのGUIアプリはターミナルのPATHを引き継がず、実機にあるffmpegが見つからなかった。サムネイル生成を実装しても、APIとSwiftUIの境界が合わず、一枚も表示されないことがあった。既存データへの生成は実機でbackfillを実行した。

    サムネイルが表示されていなかったReview Queue画面
    実装済みのはずなのに、実機ではサムネイルが一枚も見えなかった。

    さらに、情報を右側へ足し続けると本文が細くなった。画像一覧を本文の上へ置くと画面全体が崩れ、タブ化した直後にはコンテンツが真っ白になった。

    タブ化後に真っ白になったAI Media Studio
    タブ化の途中で、ウィンドウだけが残り内容が描画されなくなった。

    テストが通ったことと、実機で使えることは同じではない。AIはコードを速く書けるが、古いアプリを起動していないか、Google Driveが同期しているか、画面が窮屈に感じないかまでは勝手に保証してくれない。

    RELATED ARTICLE  |  AI / DESIGN AIに記事を書かせたら、最後に残ったのは人間の違和感だった。 AIの実装力と、人間が画面を見て判断する役割について掘り下げます。 AI MEDIA◷ 7 min2026.07.18

    AIが作るのは、完成品ではなく判断材料

    現在の流れでは、AI Media Studioが動画を受け取り、素材を整理し、スクリーンショットを抽出し、Markdownの下書きを作る。そこから人間がArticle、Images、Sourceを見比べ、修正するか、再生成するか、却下するか、承認するかを決める。

    つまり、自動化されたのは「公開」ではない。公開するための判断材料を揃えるところまでだ。

    これは期待より控えめな結論に見えるかもしれない。しかし、文章だけを自動生成していたときより、はるかに実用的だった。人間が毎回ゼロから動画を見返す必要はない。一方で、AIの出力を無条件に信じる必要もない。

    動画一本から、記事一本まで

    動画を放り込めば、AI編集部は記事の完成直前まで進める。素材を分け、画像を並べ、下書きを作り、確認すべき場所を人間へ渡す。

    最後の承認だけは、まだ人間の仕事だ。そして今のところ、そこは無理に自動化しなくていいと思っている。

    記事制作で重かったのは、文章を書く行為だけではなかった。素材を探し、画面を切り出し、根拠を確認し、公開してよいか判断することだった。AI Media Studioが目指しているのは、人間を編集部から追い出すことではない。その手前に散らばっていた作業を、一つのデスクへ戻すことである。

    動画一本を入れて、記事一本を確認できるところまで来た。次に試すべきなのは、この流れを一本だけでなく、十本、五十本と続けても破綻しないかどうかだ。

  • AIに記事を書かせる前に、AIが記事を書く環境を作った。

    AIに記事を書かせる前に、AIが記事を書く環境を作った。

    AIに記事を書かせるだけなら、APIをつないでプロンプトを渡せば終わると思っていた。

    実際には、記事を書くコードより先に、記事を書く環境を作ることになった。

    最初に欲しかったものは単純だった。動画や画面収録を放り込む。AIが中身を見て、読みやすい記事を書き、Markdownで返す。それなら数本のAPIと、少し気の利いたプロンプトがあれば完成する。少なくとも、作り始める前の僕はそう考えていた。

    動画を放り込んだら、AI編集部はどこまで記事を作れるのか。RELATED ARTICLE  |  AI動画を放り込んだら、AI編集部はどこまで記事を作れるのか。動画を一本入れれば、AIが内容を読み、スクリーンショットを選び、記事を書いてくれる。AI◷ 6 min

    ところが文章が一度生成された瞬間、その考えは崩れた。文章は出る。でも、どの映像を根拠にしたのか分からない。画像をどこへ入れるのか決められない。修正前の文章が残らない。失敗しても、どこで失敗したのか追えない。

    文章を生成できることと、記事を制作できることは、かなり違っていた。

    Article Images Sourceタブを備えたAI Media Studioの記事画面
    Article、Images、Sourceを切り替える構成に落ち着いた記事画面。

    「文章が出た」の先に何もなかった

    最初は、動画一本を入力して記事一本を出力する、小さな変換器を想像していた。入力と出力があればよく、その間はAIに任せればいい、と。

    AIに記事を書かせたら、最後に残ったのは人間の違和感だった。RELATED ARTICLE  |  AIAIに記事を書かせたら、最後に残ったのは人間の違和感だった。それなら完成しているはずだった。ところが実機で開くと、サムネイルは一枚も見えない。情報を追加した画面は横へ広がり、本文は細く押しつぶされている。直すためにタブへ分けたら、今度はウィンドウの中身が真っ白になった。AI◷ 7 min RELATED ARTICLE  |  AI / VIDEO 動画を放り込んだら、AI編集部はどこまで記事を作れるのか。 動画の投入から画像抽出、記事候補、レビューまでの実際の流れを追います。 AI MEDIA◷ 5 min2026.07.18

    しかし記事を読む側には、AIが何を見て書いたかは関係ない。内容が正しいか、画像が適切か、説明の順番に無理がないか、それだけが残る。生成された文章に違和感があれば、元動画へ戻って確認する必要がある。画面操作を説明するなら、その瞬間のスクリーンショットも必要になる。

    AIで編集部を作るには?制作・記録・公開のFAQRELATED ARTICLE  |  AIAIで編集部を作るには?制作・記録・公開のFAQAIに文章を書かせるだけでは、継続的なメディア運営にはなりません。AI◷ 6 min

    すると必要なものが急に増えた。元動画、文字起こし、スクリーンショット、記事構成、Markdown、レビュー、修正履歴、承認状態、そしてログ。どれも文章生成そのものではないが、どれか一つ欠けても安心して記事を外へ出せない。

    AIへ「いい記事を書いて」と命令するだけでは足りなかった。AIが参照できる素材があり、判断の途中が残り、失敗した場所を人間が確認できる作業環境が必要だった。

    便利なプロンプトを作るつもりが、編集部のデスク、資料棚、進行表、校正フローまで作る話になった。少し大げさに聞こえるが、実装量はむしろ正直だった。

    Google Driveを記事素材の保管庫にした

    素材と成果物の置き場所にはGoogle Driveを選んだ。Drive上に InboxProjectsReviewArchiveLogsConfig を置き、動画、記事、画像、状態をファイルとして残す設計にした。

    Inbox に入った素材は処理対象になり、作業中のものは Projects にまとまる。確認が必要な記事は Review、完了後は Archive。動作の記録は Logs、設定は Config にある。実装上の細部は今後も変わるだろうが、少なくとも「何がどこにあるか」を人間がFinderから追える。

    すべてを専用クラウドサービスへ預ける方法もあった。その方が設計はきれいだったかもしれない。ただ、サービスが止まった瞬間に自分の記事まで見えなくなる構成にはしたくなかった。

    僕が重視したのは、履歴と成果物が自分の手元に残ることだった。記事は article.md として読める。画像は普通の画像ファイルとして開ける。プロジェクトの状態もJSONで確認できる。アプリが壊れても、制作物まで一緒に消えない。Google Driveの同期や版履歴も、復旧手段として使える。

    もちろんDriveにも問題はあった。同期が止まり、処理が進まないことがあった。クラウドに置いたから安全、という単純な話ではない。それでも、独自データベースの奥に閉じ込めるより、僕には状況を理解しやすかった。

    Webではなく、macOSのデスクにした

    最初はWebアプリも検討した。ブラウザで開けて、どこからでも使える。説明もしやすい。

    それでも最終的にはSwiftUIのmacOSネイティブアプリにした。Google Driveのローカルフォルダを直接扱え、Finderで素材の場所を開ける。OpenAI API KeyはKeychainに保存できる。ローカルで動き、Dockから普通の制作アプリとして起動できる。

    RELATED ARTICLE  |  AI / CODEX ChatGPTとCodexだけでMacアプリを作ってみた ChatGPTとCodexを使い、Macアプリを完成させるまでの実録です。 AI MEDIA◷ 5 min2026.07.19

    僕が欲しかったのは、どこからでも触れるサービスより、普段の制作環境へ自然に収まる道具だった。動画をFinderから確認し、記事を編集し、必要ならログを見る。その流れにブラウザとアップロード画面を何枚も挟みたくなかった。

    ネイティブアプリにすれば楽になるわけではない。むしろmacOS GUIアプリはターミナルの PATH をそのまま引き継がず、実機にあるはずのffmpegとffprobeがDoctorでは not found になった。ターミナルでは動く。アプリでは見つからない。コンピューターは、こちらが暗黙に期待したことを丁寧に裏切る。

    そこで実行ファイルをPATHだけに頼らず、Homebrewの固定パスも含めて検出する必要が出た。APIキーも環境変数任せではなくKeychainを優先する設計に変わった。ローカルアプリらしく使うために、ローカルアプリ特有の面倒を見ることになった。

    必要性の順番で増えた機能

    最初に作ったのはDashboardとDoctorだった。記事を書く前に、Google Drive上の記事素材の保管庫へアクセスできるか、APIは使えるか、ffmpegとffprobeは動くかを確認できなければならない。Doctorは地味だが、失敗を「なぜか動かない」から「ここが動いていない」へ変える。

    次にInboxが必要になった。動画を受け取り、処理の入口を一つにするためだ。Projectsでは素材ごとに作業を分け、生成されたMarkdownと状態を追えるようにした。文章ができた後にはReview Queueが必要になった。生成物を人間が読み、approve、reject、regenerateを選べる場所である。

    AI Media StudioのInbox画面
    動画を受け取る入口として作ったInbox画面。素材の処理状況をここから確認する。

    記事は眺めるだけでは済まないので、Markdown編集と保存も加わった。修正前へ戻れるように履歴を残し、何が起きたか確認するためLogsも必要になった。OpenAI API Keyの設定画面は、秘密をConfigurationへ露出させず、設定済みかどうかだけを表示する形にした。

    動画処理にはffmpegとffprobeを使った。ここで映像から代表フレームを作るサムネイルが欲しくなった。プロジェクト名だけが並ぶ一覧は、件数が増えると見分けにくい。画像一枚があるだけで、どの画面収録だったか思い出せる。

    サムネイルが表示されていなかったReview Queue画面
    サムネイル機能を実装したはずなのに、実機では一枚も表示されなかった。
    サムネイルが表示されたProjects画面
    修正後は一覧にサムネイルが並び、画面収録を視覚的に見分けられるようになった。

    ところが代表画像一枚では、記事を書く素材として足りなかった。動画から抽出した全スクリーンショットを見たい。しかも本文の近くで見たい。そこでArticle、Images、Sourceのタブを作り、記事、抽出画像、元動画情報を同じプロジェクトの中で切り替えられるようにした。

    機能一覧だけを見れば、最初から設計できそうに見える。実際は逆だった。使って、足りないと気づき、追加して、別の場所が崩れる。その繰り返しで形が決まった。

    「ビルド成功」は完成の意味ではなかった

    開発中、Codexのワークスペースを見失ったことがある。ビルドは成功したのに、見ていた実ファイルの場所が違っていたこともある。新しいアプリを作ったつもりで古いアプリを起動し、「直っていない」と悩んだ。

    ChatGPTとCodexだけでMacアプリを作ってみたRELATED ARTICLE  |  制作・開発日誌ChatGPTとCodexだけでMacアプリを作ってみたChatGPTに相談し、Codexにコードを書かせれば、Macアプリはすぐ完成する。始める前は、どこかでそう思っていました。制作・開発日誌◷ 6 min

    Google Driveが同期されず処理が止まり、CodexのサンドボックスからGoogle Drive上の保管庫へ書き込めない場面もあった。権限と実行環境が違えば、正しいコードでも動かない。既存プロジェクトへサムネイルを作るbackfillは、実機側で実行した。

    サムネイルを一覧へ追加するとレイアウトが崩れた。右へ右へ情報を足した結果、本文が細く押しつぶされた。ならばタブに分けようと変更したら、今度は画面が真っ白になった。ウィンドウと青い選択バーだけが残り、内容は何も描画されない。

    右ペインが狭く崩れたProjects画面
    一覧と本文を横に並べ続けた結果、右ペインが押しつぶされて読みにくくなった。
    タブ化後にコンテンツが真っ白になったAI Media Studio
    タブ化の途中で、タイトルバーと選択バー以外が真っ白になった画面。

    テストが通ること、ビルドが成功すること、実機で気持ちよく使えること。この三つは別々だった。自動化できるのは重要だが、自動化の結果を見る人間までは自動化できない。

    AIで開発すれば全部自動で終わる、という期待は早い段階で捨てた。AIはかなり速くコードを書く。しかし、間違った場所に速く到達することもある。画面が崩れているのに仕様上は満たしている、という状況は普通に起きた。

    AIが書き、人間が気持ち悪さを拾う

    今回、AIはコードを書き、関連箇所を調査し、テストを実行し、修正案を出した。大量のファイルを横断して原因候補を探す作業は得意だった。同じ形式のテストを追加するのも速い。

    一方で、人間の仕事は別の場所に残った。

    一覧を見て「何か分かりにくい」と感じる。プロジェクト名だけでは判別できないからサムネイルが必要だと気づく。代表画像だけでは記事を書けないので、抽出画像を全部見たいと要求する。右側へ機能を足し続けて画面が窮屈になったら、タブへ分けると決める。そして最後に、その記事を外へ出してよいか承認する。

    RELATED ARTICLE  |  AI / DESIGN AIに記事を書かせたら、最後に残ったのは人間の違和感だった。 AIの実装力と、人間が画面を見て判断する役割について掘り下げます。 AI MEDIA◷ 7 min2026.07.18

    これらは高度なアルゴリズムではない。むしろ「気持ち悪い」「使いにくい」「ここに欲しい」という感覚に近い。ただ、その感覚が製品の形を決めた。

    AI Media StudioはAIが作った、と言うと話が簡単になる。しかし実際は、AIが案を出し、人間が実機で違和感を見つけ、AIが直し、また人間が確認する往復で作られた。どちらか一方だけでは、たぶん文章を吐くデモか、永遠に完成しない設計書になっていた。

    AI編集者のためのデスク

    AIに記事を書かせる前に必要だったのは、優秀なプロンプトではなかった。

    必要だったのは、素材が集まる場所、判断の履歴、画像、記事、レビュー、修正、承認がつながる環境だった。AIが何を見て、どこで失敗し、人間が何を直したかを追えることだった。

    もちろん、現時点ですべてが完成したわけではない。各機能の長期運用や、大量プロジェクトでの安定性は今後の検証になる。動画を使わない記事生成で、どの素材構成が最適かも未確認だ。

    それでも、最初の思い違いだけははっきりした。記事制作は文章の生成では終わらない。文章の前後にある、素材整理、確認、修正、承認まで含めて初めて仕事になる。

    AI Media Studioは、記事を書くアプリというより、AIが編集者として働くためのデスクを作る試みである。

    デスクができたので、ようやく最初の記事を書ける。