0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Codeで「自分だけのSaaS」を作っている話 - AIと一緒に2,400コミットの開発体験

0
Posted at

「AIでプログラミングできるらしいけど、本当に使えるの?」

そう思っている方、多いのではないでしょうか。

僕は今、Claude Code(Anthropicが提供するAIコーディングツール)を使って、美容室向けのシフト管理サービス「Shift Bud」を作っています。

約2,400回のコミット(コードの保存)を重ねて、現在はWaitlist(事前登録)を公開するところまで来ました。正式リリースに向けて開発継続中です。

この記事では、「AIコーディングって実際どうなの?」という疑問に、僕の体験をもとにお答えします。

デモを公開中です
興味がある方は Shift Bud で実際の画面を見られます。

作っているもの:Shift Bud

どんなサービス?

美容室・サロン向けの「シフト作成」を助けるWebサービスです。

できること:

  • スタッフがスマホで「休み希望」を出せる
  • AIが自動でシフトの「たたき台」を作る
  • 法律で決まっている休憩時間などをチェック

シフト作成って、意外と時間かかるんですよね。「誰がいつ休みたいか」を確認して、「偏りがないか」をチェックして...その「面倒な部分」をAIに任せられるサービスです。

使った技術(ざっくり)

何に使う 技術
サーバー側 TypeScript + Fastify
データベース PostgreSQL(Neon)
画面側 Next.js + React
AI連携 OpenAI / Claude / Gemini
インフラ Google Cloud + Vercel

Claude Codeとは?

AIと一緒にコードを書くツール

Claude Code は、Anthropic社が作った「AIコーディングアシスタント」です。

普通のチャットAIとの違いは:

  • ファイルを直接読み書きできる
  • コマンドを実行できる
  • プロジェクト全体を理解してくれる

つまり、「コードを教えてもらう」だけでなく、「一緒にコードを書いてくれる」感覚です。

使い方のイメージ

あなた: 「ユーザー登録の機能を作って」
Claude Code: 「了解です。まず必要なファイルを作成しますね...」
              (実際にファイルを作成・編集してくれる)

実際の開発フロー

Step 1: 「何を作りたいか」を伝える

最初にやったのは、CLAUDE.mdという「設計書」を作ること。

これはAIに「このプロジェクトはこういうルールで作ってね」と伝えるファイルです。

例えば:

  • 「日付はこの形式で保存してね」
  • 「必ずこのフォルダ構成に従ってね」
  • 「新しい機能はこのパターンで作ってね」

ポイント: AIは「何も言わないと自由に作っちゃう」ので、最初にルールを決めておくのが大事です。

Step 2: 機能ごとに依頼する

大きな機能をいきなり頼むと、AIも混乱します。

なので、小さく分けて依頼しました:

❌ 悪い例: 「シフト管理システムを作って」
✅ 良い例: 「スタッフの休み希望を保存するAPIを作って」

Step 3: レビューして修正

AIが作ったコードは、そのまま使えることもあれば、調整が必要なこともあります。

僕がよくやった修正:

  • 「ここの処理、もっとシンプルにできない?」
  • 「この変数名、分かりにくいから変えて」
  • 「エラーメッセージを日本語にして」

開発フローの図解

基本の流れ

Slash Commandで作業を自動化

慣れてきたら、よく使う作業を「Slash Command」として登録すると便利です。

僕が実際に使っているコマンド:

コマンド やること
/auto:kickoff 123 Issue #123の実装を開始。ブランチ作成からPR作成まで一気にやってくれる
/auto:review 456 PR #456をレビュー。問題あれば改善提案、なければ「LGTM」とコメント
/auto:fix 456 レビューで指摘された箇所を修正

これにより、こんな流れで開発できます:

1. アイデアをClaude Codeに相談
   → 「シフトの削除機能を追加したい」

2. 実装計画を一緒に考える
   → Claude Codeが必要な変更をリストアップ

3. 「GitHubにIssue登録して」
   → Issueが自動作成される

4. /auto:kickoff <issue番号>
   → 実装 → PR作成まで自動

5. /auto:review → /auto:fix を繰り返し
   → 品質を上げる

6. 自分の目で最終確認 → マージ

ポイント: 最後は必ず自分の目でチェックします。AIは強力なアシスタントですが、最終責任は人間が持ちます。

AIコーディングの良かったところ

1. 「ゼロから考える」時間が減る

プログラミングって、「何をどう書くか」を考える時間が長いですよね。

AIに頼むと、まず「たたき台」を出してくれます。それを見て「ここは違う」「ここはOK」と判断する方が、ゼロから書くより断然早いです。

2. 知らない技術も使える

僕はバックエンドが得意なのですが、今回はフロントエンド(Next.js)や、使ったことのないサービス(Stripe決済、NeonというサーバーレスDB)も必要でした。

でも、AIに「Next.jsでこういうことしたいんだけど」と聞くと、具体的なコードを教えてくれます。

もちろん、後で自分でも調べて理解しますが、「最初の一歩」のハードルが下がります。

3. ドキュメント作成も手伝ってくれる

コードだけでなく、ドキュメントも作ってくれました。

  • API仕様書
  • 設計ガイド
  • README

特に、「このコードの説明を書いて」と頼むと、分かりやすい説明を生成してくれます。

AIコーディングで困ったところ

1. 複雑な判断は苦手

「この設計でいいかな?」という判断は、まだ人間がやる必要があります。

AIは「指示されたことを実装する」のは得意ですが、「何を作るべきか」を決めるのは人間の仕事です。

2. 大規模な変更は慎重に

「ファイル構成を全部変えて」のような大きな変更は、予期しない問題が起きやすいです。

僕は、大きな変更は小さなステップに分けて、一つずつ確認しながら進めました。

3. 同じミスを繰り返すことも

AIは「前に言ったこと」を忘れることがあります。

なので、重要なルールはCLAUDE.mdに書いておいて、「毎回読んでくれる」状態にしておくのが大事です。

システム構成(ざっくり図解)

初心者が始めるなら

小さく始める

いきなり大きなサービスを作ろうとせず、まずは「ToDoアプリ」「メモアプリ」など小さなものから。

AIに「ToDoアプリを作りたい。最初に何をすればいい?」と聞くところから始めてみてください。

CLAUDE.mdを作る習慣

プロジェクトのルートに、「このプロジェクトのルール」をまとめたファイルを作りましょう。

最初は簡単でOK:

  • 使う言語
  • フォルダ構成
  • 命名規則

これだけで、AIの出力が安定します。

分からないことは聞く

「このエラー、何が原因?」
「この書き方、もっと良い方法ある?」

遠慮せず聞いてください。AIは何回聞いても怒りません(笑)

まとめ

Claude Codeを使ってSaaSを作っている感想:

できていること

  • 2,400コミットを超える開発
  • Waitlist公開までこぎつけた
  • 1人でも本格的なアプリ開発

注意点

  • 設計判断は人間がやる
  • ルール(CLAUDE.md)を最初に作る
  • 大きな変更は小さく分ける

AIコーディングは「魔法」ではないですが、「強力なアシスタント」として活用できます。

興味がある方は、まず小さなプロジェクトで試してみてはいかがでしょうか。

Shift Budのデモを公開中!
実際にどんなサービスを作っているか、デモ環境で体験できます。
美容室・サロンでシフト作成に困っている方は、ぜひWaitlistに登録してください。

関連リンク

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?