AIネイティブなShopify開発 - IMMACULATE Loop
IMMACULATE Loopは、私たちの開発の進め方です。最初の打ち合わせからローンチまでAIエージェントが作業を進め、どの段階でもシニア開発者が承認してから次に進みます。AIネイティブなチームのスピードと、Shopifyで何年もリリースを重ねてきた人の判断力。その両方を活かして進めます。
Loopの流れ - 5つの段階があり、区切りごとに人が承認します
作業は一方通行で流れるのではなく、ループを描いて進みます。段階から段階への受け渡しはエージェントが担い、人が承認するまで、どの作業も次の段階には進みません。
スコープ
- エージェント
- 最初の打ち合わせの内容を要件として文書にまとめ、今のストアを支えているテーマ、アプリ、連携を把握します。
- 人
- 何を作る価値があるかを判断し、価値がないものはそうお伝えします。提案書はお客様と一緒にまとめます。
- 承認
- スコープをお客様に承認していただきます。
計画
- エージェント
- スコープをチケットに分けて作業の順序を決め、依存関係は作業が止まる原因になる前に洗い出します。
- 人
- アーキテクチャと、ビジネス上のコストが伴うトレードオフはすべて、シニア開発者が責任を持ちます。
- 承認
- アーキテクチャをシニア開発者が承認します。
構築
- エージェント
- テーマのセクション、アプリのコード、移行スクリプトと、それぞれのテストの初稿を書きます。
- 人
- 難しい部分は私たちが担当し、エージェントが下書きした変更はすべてレビューします。
- 承認
- すべての変更が、開発者のレビューを通ります。
確認
- エージェント
- プロジェクトのあいだずっと、プレビューテーマとステージングで、すべての変更にテストとチェックを実行します。
- 人
- 顧客と同じように実際に触って確かめたうえで、お客様にもプレビューをお渡しし、同じように確かめていただきます。
- 承認
- リリースの準備ができたものを、お客様に承認していただきます。
リリース
- エージェント
- リリースノートと、変更を元に戻すための手順を用意します。
- 人
- 本番に出すものは人が決めます。エージェントが本番環境に変更を反映することはありません。
- 承認
- リリースするのは人で、どの変更も元に戻せます。
そして、ループは続きます。ローンチ後にわかったことを次のスコープに活かすので、回を重ねるごとに、前回よりも多くを理解した状態で始められます。
AIネイティブで進める理由 - 速く、そしてより丁寧に
AIネイティブとは、お客様のストアをAIモデルに任せきりにすることではありません。量の多い作業をエージェントが担い、シニアのメンバーが本当に大事なところに時間を使えるということです。
- スピード. 以前はスプリントひとつを費やしていた土台の作業が、ずっと短い時間で進みます。そのぶん予算の多くを、判断が必要な部分に充てられます。
- 正確さ. 要件は最初の打ち合わせから文書に残し、すべての変更をその要件と照らし合わせて確認します。作られるのは、合意したとおりのものです。
- 方向転換のしやすさ. プロジェクトの途中で優先順位が変わっても、やり直しのコストは小さく済みます。お客様と一緒に計画を立て直し、ローンチ日は守れる日付のままにします。
- 網羅性. エージェントは、手間のかかるチェックも省きません。顧客に届く前に、ストアのより多くの部分がテストされます。
人が担うこと - エージェントで速くはなっても、判断は任せません。
次のことは、どのプロジェクトでも必ずシニア開発者が担います。
- アーキテクチャ. ストアをどう組み立てるか、そして1年後に何に対応できる必要があるか。
- トレードオフ. 何をカスタムで作り、何を標準機能のまま残すかなど、ビジネス上のコストが伴うものすべて。
- チェックアウト、決済、顧客データ. お金や個人情報に関わるコードは、シニア開発者が責任を持ち、レビューします。
- すべてのレビュー. エージェントが下書きした変更はどれも、ストアに近づく前に開発者が目を通します。
- 本番環境. エージェントが作業するのはブランチとプレビューテーマの中だけで、本番環境では作業しません。すべてお客様のGitHubに残るので、どの変更も元に戻せます。
- リリースの判断. 本番に出すものは、お客様の承認を得たうえで人が決めます。
お客様の関わり方 - 私たちに見えているものは、お客様にも見えています
要件、チケット、プレビュー、毎週の進捗報告は、すべてお客様が読める場所に置いています。判断が必要なことは早い段階でご相談し、ご了承をいただくまでリリースはしません。
エージェントの使い方についてのご質問は、よくある質問にまとめています。

