R.SUPPORT / BUILD LOG

作った仕組みの中身を、構成と規模のまま公開しています。

ここに載せているものは、すべて実際に構築し、動いているものです。 仕様の整理から実装・検証・納品まで、一貫して担当します。

下のリンクは、いま公開していて、その場で開ける画面です。見本としてご用意しているものも含みます。

2,015管理下ファイル
487コミット
3.5 か月継続開発
1,364自動生成した個別ページ
50自動検査スクリプト
406Claude Code セッション
527 時間AI稼働時間

いま動いている画面

すべて公開中の画面です。ログイン不要でそのまま開けます。

構築した仕組み

それぞれ「何を解決したか」「どう構築したか」「何で作ったか」「どれくらいの規模か」を載せています。 行数・件数はすべて実ファイルの実測値です。

LINE公式アカウント連携と、注文の自動記録

実店舗で稼働中
SOLVED
LINEに届いた注文を人が転記していたため、転記漏れと二度手間が発生していた。 届いた内容がそのまま記録され、担当者に届く形にした。
HOW
  1. LINE Messaging API の Webhook を Google Apps Script の Web アプリで受ける
  2. 受信内容を種別ごとに振り分け、スプレッドシートへ1件1行で記録
  3. 注文・問い合わせを判定し、担当者のLINEへ通知
  4. リッチメニュー・あいさつ・定型返信を設計し、外へ出る文章は店が承認したものだけに限定
  5. 注文の状態(受付・調理中・完了)を管理し、履歴として残す
CLIENT
ハワイアンフード店 FL で稼働中。現在も LINE から注文が入っています。 注文画面のデモを開く
STACK
Google Apps Script / LINE Messaging API(Webhook・リッチメニュー・Flex Message)/ スプレッドシート / Web アプリ公開
SCALE
LINE Bot 1,968行 業務ツール 1,133行 SNS自動投稿 798行

24'Seven 受付予約システム

公開中
SOLVED
電話でしか注文と予約を受けられず、営業中は手が離せない。 受付そのものをWebへ移し、内容の記録と通知までを一本にした。
HOW
  1. 受付画面を React + TypeScript で構築し、静的配信で高速に開く形にする
  2. 営業時間・定休日・受付枠・メニューを設定として外に出し、コードを触らず変更できるようにする
  3. 送信内容を Google Apps Script へ中継し、記録と通知を行う
  4. Square と連携し、都度決済・継続課金・支払いリンクの発行に対応
  5. 店ごとに見た目と文言を差し替えた専用の面を発行できる仕組みを用意
  6. 管理画面から受付内容を一覧・集計
STACK
TypeScript / React / Vite / Netlify / Google Apps Script 連携 / Square API
SCALE
画面 24本 受付画面 2,466行 診断ツール 904行 管理画面 446行

Auto Chain Sales Hunter(AcsH)|データ収集から個別ページ発行までの自動化

稼働中
SOLVED
対象の一覧を作り、状態を調べ、1件ずつ資料を用意する作業が、件数に比例して人手を食っていた。 1件あたりの制作コストが件数に比例しない形にした。
HOW
  1. 収集:公開情報から対象を集める。収集元を5系統に分け、1つ増やしても他へ影響しない構成にする
  2. 課金の制御:有料APIは必要な項目だけを要求し、予算の上限で物理的に止まるガードを入れる
  3. 診断:対象ごとに状態を判定して台帳へ記録。同じ対象は二度処理しない(冪等性)
  4. 発行:対象ごとの専用ページを自動生成。共通部分は1本の外部ファイルへ集約し、件数が増えても配信サイズが膨らまない構成にする
  5. 台帳:発行した対象・時刻・状態を JSONL で追記保存。既存の行は書き換えない形にして履歴を残す
  6. 送信前検査:出す直前に11項目の自動検査を通し、1つでも外れたら止める
STACK
Node.js(ESM)/ Google Places API / 静的サイト生成 / JSONL 追記型台帳 / 自動検査
SCALE
処理系 約4,400行 発行済み 1,364枚 収集元 5系統

予約の確認連絡を自動化する仕組み

PRODUCT / 構築済み
SOLVED
前日の確認連絡が手作業で、営業中は手が回らない。 確認連絡を仕組みに移し、24時間動き続ける形にした。
HOW
  1. 予約データから対象を抽出し、送出のタイミングを決める
  2. 文面はテンプレートとして持ち、相手に届くのは店が承認した文章だけにする
  3. 送出の結果を一覧で確認できる形で残す
  4. 独立したリポジトリとして構築し、他システムと切り離して運用できるようにする
STACK
独立リポジトリ / LINE 連携 / 承認フロー付きテンプレート
SCALE
管理下 386ファイル コミット 186

Claude Code 内部エージェントの構築

稼働中
SOLVED
AIに実装させると速い一方、「できました」を機械で確かめる手段が要る。 役割の分離と自動検査を組み込み、検査を通らないものは完了にできない形にした。
HOW
  1. 役割ごとに38体の担当を定義(分析・技術構成・施工・検査・記録)。権限を1箇所の正本で管理
  2. 書き込み権限の無い担当からは編集ツールそのものを外す。文章の禁止ではなく、物理的に持たせない
  3. 担当が仕事を終えるたびに、出力の形式と権限をフックで自動照合
  4. 金額・表記・導線・権限など10本の自動検査を用意し、1本でも外れたら完了にしない
  5. 照合できなかった記録は「未確認」として残す。無かったことにしない
STACK
Node.js / 実行前フック・終了時フック / JSONL 追記型記録 / 定義と権限の正本を1箇所に集約
SCALE
担当 38体 自動検査 10本 検査スクリプト 50本 強制フック 2種 セッション 406本 AI稼働 527時間 検査の実行記録 899件
R.Support Agent OS の構成図。案件の入力を統括役のClaude Codeが受け、専門エージェントへ振り分け、検査を通して返すまでの流れを示している。

Google Apps Script で組んだ運用基盤

稼働中
SOLVED
サーバーを借りて維持する構成は、月々の固定費と保守がそのまま店の負担になる。 Googleアカウントの中だけで完結し、追加のサーバー費用が発生しない形で運用基盤を組んだ。
HOW
  1. Webアプリとして公開し、URLを開くだけで使える管理画面にする(インストール不要)
  2. 4桁の暗証番号で入口を絞り、スマートフォンからでも開ける形にする
  3. 受信・記録・通知をスプレッドシートの台帳に集約し、店側がその場で中身を確認・修正できるようにする
  4. 時間主導のトリガーで定期処理を回し、人が起動しなくても動き続ける形にする
  5. 顧客対応用と社内ツール用を別プロジェクトに分離し、社内側の変更が顧客の画面に及ばないようにする
RESULT
実店舗(ハワイアンフード店 FL)での実測値です。 電話が中心で1日2〜3件だった予約・注文が、現在は1日5件以上入っています。 受付がWeb側に移ったことで、営業中に手を止める回数も減りました。
STACK
Google Apps Script / Webアプリ公開 / スプレッドシート台帳 / 時間主導トリガー / LINE通知連携
SCALE
追加サーバー費用 0円 稼働 24時間

進め方

進み具合は、動いている画面でその都度ご確認いただけます。

  1. いまの手順を伺うどこで手が止まっているかを確認し、必要な仕様に落とします。
  2. 構築する途中経過は、動作中の画面でその都度ご報告します。進み具合はいつでも確認いただけます。
  3. 実際に通して確かめるこちらから実際にデータを流し、記録と通知が届くところまで一緒に確認します。
  4. お渡しして運用へ操作の説明を行い、設定はご自身で変更できる形でお渡しします。公開後もご質問にお答えします。

お渡しした後のことまで検査しています。

納品物は手を離れて動き続けます。そのため「今動くか」ではなく「渡した後に生き残るか」を基準に検査しています。 1か月後・半年後に何が起きるか、担当の方が変わっても回るか、設定をご自身で変更できるか、 データを取り出せるか、こちらのアカウントに依存していないか。 保存や送信が失敗した時に黙って成功したように見えないことも、必ず確認します。