1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIに「献立アプリ作って」と言ったら仕事してる間に完成してた話

1
Posted at

はじめに:きっかけは「秘書ツール」だった

ある日、cc-company というClaude Code用プラグインに出会った。

これはClaude Codeのプロジェクトに仮想的な「会社」を作れるツールで、秘書・PM・エンジニア・顧問などの部署をフォルダで管理しながらAIと仕事を進められる。

インストールして /company を打ち込んだら秘書が現れた。「何か作りたいものありますか?」と言われた気がした(実際にはそうじゃないけど)。

「知り合いに何か欲しいものを聞いたら、献立を自動で考えてくれるアプリが欲しいと言われた。じゃあ作ろう。」

そこから、ほぼ1日の記録。


Phase 1:ゼロから「動くもの」まで

私がやったこと

  • 「作りたいものを言語化した」
  • 「Gemini APIキーを取ってきた」

AIがやったこと

  • 要件定義(cc-companyのPM部署が自動生成)
  • アーキテクチャ設計(Next.js + FastAPI + Gemini API)
  • Docker Compose環境の構築
  • AIによる献立生成API実装
  • 曜日×食事タイプ(朝・昼・夜)の選択UI
  • 買い物リスト自動生成
  • Tailwind CSSによるUIデザイン(テラコッタ×セージグリーンカラーパレット)

しばらくしたら http://localhost:3000 でアプリが動いていた。

私の感想:「は、もうできたの」


Phase 2:本番環境 & 機能拡張

私がやったこと

  • Vercelのアカウントにログインした
  • Renderのアカウントにログインした
  • 環境変数を設定した
  • 「人数変えれないの?」と言った

AIがやったこと

  • Vercel(フロントエンド)へのデプロイ
  • Render(バックエンド)へのデプロイ
  • フロント→バックエンド間のAPIプロキシ設計(セキュリティ対応)
  • 人数設定機能の追加
  • 禁止食材・好み設定の追加
  • レシピリンク(クックパッド・クラシル)の追加
  • みんなの献立(パブリック共有)機能
  • AIタグ正規化(「鶏肉」「チキン」→「鶏肉」に統一)

「サービス開始していいのでは」という状態になったが、まだあった。


Phase 3:コスト削減と本番安定化

Gemini APIの費用が怖い。無限にリクエストされたら破産する。

私がやったこと

  • 「お金かかりすぎないようにして」と言った

AIがやったこと

  • IP別レート制限(10リクエスト/日・IPあたり)
  • キャッシュシステム(同じ条件の献立は24時間再利用)
  • 月次バジェット管理(上限に達したらAPI呼び出し停止)
  • エラーメッセージのサニタイズ(内部情報を外部に漏らさない)

本番環境を確認した。安定していた。


Phase 4:収益化 & サービス開始

「ランニングコストを稼ぎたい。ただし食事系の広告だけ」

Amazon アソシエイト登録

唯一の難所:税務情報の入力画面で「消費税の課税事業者ですか?」という質問が来た。

「暇つぶしで作ってるだけの人ね」

答えは「いいえ」だった。無事通過。トラッキングタグ kondatecho-22 で確定。

アフィリエイト実装

AIが考えた「ページ別のユーザー心理」:

ページ 心理 広告方針
ホーム 食を考えているモード 食品広告が自然
献立カレンダー 献立が決まった 食品広告は邪魔。調理器具なら許容
買い物リスト 買いに行く直前 購入リンクは最も転換率が高い

私の要望:「広告が強いよりさりげないのがベスト。ランニングコスト稼げたらラッキーぐらいで」

最終的に広告が残ったのは買い物リストの調味料・その他食材にAmazon PRリンクを表示するだけだった。献立が決まった人に余計なものを見せない、という設計。

景品表示法・ステマ規制対応のPR表記も自動で追加してくれた。法律のことは私には考える余裕がなかった。

予算機能

「予算内で作れる献立を出してほしい。各料理にいくらかかるか書いてあると嬉しい。」

追加APIコスト:ゼロ

Geminiへのプロンプトに estimated_cost フィールドを追加しただけ。日本のスーパーの一般的な価格帯をAIが推定する。精度は±20〜30%程度だが「目安」と明記することで許容範囲。


振り返り

Phase 1:「動くもの」ができた
Phase 2:「公開できるもの」ができた
Phase 3:「持続できるもの」ができた
Phase 4:「誠実なもの」ができた

私がやったこと(全部):

  • APIキーを取ってきた(Gemini、Amazon Associates)
  • Vercel/Renderにログインした
  • 環境変数を設定した
  • 「こうして」「ああして」と言った

AIがやったこと(全部):

  • 要件定義
  • 設計
  • 実装
  • デプロイ設定
  • テスト
  • 法令対応
  • この記事の下書き

気づいたらサービスが完成していた。


作ったもの

🍱 こんだて帖 — AI献立アシスタント

OSSなので自分でサーバーを立てて使うこともできる。Gemini APIキーを用意して docker compose up -d するだけ。


おわりに

振り返ると、私は本当に指示しかしていない

コードを書いたのはAI。設計したのもAI。法令対応を考えたのもAI。予算機能の実現方法を思いついたのもAI。

最後に一点、注記しておく。

この記事を書いている私もAIである。

オーナーは「Qiita記事にして」と言った。私(秘書AI)がPhase 1〜4のログを参照して文章を生成した。上記の「私がやったこと」の行も、AIが書いた。この記事自体も、気づいたら完成していた。

つまり、人間がやったのは「APIキーを取得する」「環境変数を設定する」「Amazonアソシエイトの税務フォームで悩む」、以上である。

人間の仕事が「悩む」だけになる日も、近い。

本当におわりに(ここだけ人間)

今回の実験テーマは「AIを使うと開発ってどれくらい速くなるのか?」でした。
なので、作るものはあえて難しくせず、最小限の機能でサクッと作るというコンセプトにしています。

セキュリティやバグについてはAIに最低限の対策を指示しましたが、正直まだ改善できるところはたくさんあります。

実際にやってみて思ったのは、AIはコードは書けても“ユーザーの気持ち”までは読めないということ。
「自分ならどう思うか」「ユーザーはどこでつまずくか」──こういう感覚をAIに伝えるのが、人間である自分の仕事なんだと改めて感じました。


cc-company — Claude Code用の仮想組織管理プラグイン


1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?