ナレッジ

社内の定期業務をAIで自動化した事例|Claude Codeで作った業務アプリと運用の学び|ViVO

作成者: 角田 慎太郎|Oct 13, 2026, 6:15:16 AM

DOGFOODING / FIELD NOTES

定期作業を、片っ端からAIでアプリにしている

ViVO社内で毎週・毎月動いている5つの自動化と、お客様の業務にも役立つ自社の効率化

補助金の巡回、営業会議の数字集め、工数入力の催促、請求漏れの確認、全社会議の受注・売上。ViVOでは、こうした社内の定期作業を、経営メンバー自身がAIでアプリにして回しています。自社の効率化のために作った仕組みが、お客様の業務にもそのまま役立った事例と、次にSlackへ寄せようとしている2つの業務について書きました。

ViVO株式会社自社活用の記録2026.10 更新
THE CENTRAL
QUESTION

誰かの手を増やさずに定期作業を減らすには、何から手を付け、どこに人を残せばよいのか。

CONTENTS

  1. 01補助金情報の自動収集|自社の効率化が、お客様の業務にもそのまま役立つ
  2. 02営業ダッシュボードの自動更新|営業会議の数字集めをやめた
  3. 03工数入力の催促を自動化|「入力して」と言う係をなくした
  4. 04請求書の発行漏れ検知|3つのシステムの差で見つける
  5. 05無人の自動化は、黙って止まる|止まったことに気づく仕組み
  6. 06全社会議の受注・売上|数字の更新は無人に、意味づけは人に残した
  7. 07次にSlackへ寄せる2つの業務|請求の確認と、工数の入力
  8. 085つの自動化から見えてきた、6つのこと
  9. Q&Aよく聞かれること

社名はイニシャルで記載しています。お客様の言葉は、メッセージ・議事録・報告資料の原文です。

毎週・毎月、同じ手順で繰り返している確認や集計、催促。これを決まった時刻に自動で動かして、結果だけSlackに届ける。この記事でいう定期作業のアプリ化は、そういうことです。ViVOで優先しているのは、人がシステムの間で情報を手で移している作業をなくすこと。新しい画面を作ること自体が目的ではありません。

2026年7月30日、ViVOの社内Slackに、自動化したアプリからの通知が立て続けに届きました。「接続テスト:工数入力チェックの自動通知です」「毎週月曜9:00の補助金アラートがこのチャンネルに届くようになります」「毎月第2月曜 6:10 の自動更新レポートがこのチャンネルに届きます」。社内の定期作業を自動化する仕組みが、この日にまとめて動き始めました。

これを作ったのは、エンジニアではない経営メンバーの一人です。業務の合間に、Claude Codeで作りました。

それから1ヶ月後の8月25日、製造業M社との定例で、残っていたテーマの一つは9月中の対応が難しいと分かりました。そこで代わりに進めることになったのが、社内で使っていた補助金アラートです。翌日には、M社のご担当の方から返事をいただきました。

「補助金クローラーを進めるであれば問題ありません。」

製造業M社 ご担当の方(社内で相談のうえでのお返事)

9月25日には、M社の環境で設定が完了しました。かかった時間は40分程度です。自社の効率化のために作り、毎週使っていた仕組みが、お客様の補助金情報を確認する業務にも、そのまま役立っています。

今回は、ViVO社内で動いている5つの自動化について、何を作って、どう動かして、何が変わったのかを書いていきます。これで全部というわけではなく、今も増やしているところです。これまで総務・人事で行ってきた確認作業を90%減らすことを目指して、チャレンジを続けています。

5つの自動化で見えてきたこと(要約)

  1. 確認・集計・催促の定期作業は、人が操作しなくても回る:補助金の巡回、営業会議の数字、工数入力の催促、請求漏れの確認、全社の受注・売上。5つとも決まった時刻に動き、結果だけがSlackに届く
  2. 自社の効率化が、お客様の業務にもそのまま役立つ:補助金アラートは、設定ファイルを書き換えるだけで他社でも動く形にして、M社に入れた
  3. 人が判断する1点だけを残し、あとは自動にした:全社への催促はボタンを押すまで出さない。商談の登録はSlackで承認してから
  4. AIを使う所と使わない所を分けた:判定と集計は決まったルールのスクリプト。AIが書くのは、作る工程と、文章の部分だけ
  5. 無人の自動化は、黙って止まる:3つの仕組みが別々の理由で止まった。止まったことに気づく仕組みまで作って、はじめて運用に乗った
  6. データは動かさず、見る場所だけをSlackと1枚のダッシュボードに寄せた:全社の受注はSalesforce、売上は事業計画、それぞれ元の場所のまま。請求の確認も、Slackのスタンプ1つで済む形へ
この記事の視点

自社の定期作業を片っ端からアプリにしていると、お客様の業務でも「どこを自動化し、どこに人を残すか」を、実際に動いているものを見せながら話せます。

01

補助金情報の自動収集|自社の効率化が、お客様の業務にもそのまま役立つ

何を自動化したか:デジタル庁の補助金電子申請システム jGrants の公開APIを、毎週月曜9時に巡回しています。「AI」「DX」「生産性向上」「IT導入」など9語で検索し、対象地域に「全国」か「東京都」が含まれるものを拾います。大企業だけが対象のものや、電動化・太陽光など自社と関係のない26語を含む案件は除きます。Slackに流すのは「新着」と「締切14・7・3日前」だけ。変化がない週は何も投稿しません。毎週ダイジェストが届く形だと、そのうち誰も読まなくなるからです。

動いている実態:8月3日から10月5日までに10回実行し、そのうち7回、Slackに投稿しました。管理部門の担当者と経営メンバーに届いたのは、新着25件と締切リマインド13件です。残りの3回は変化がなかったので、通知していません。

なぜ作ったか:補助金は公募期間が短く、気づいたときには締切が過ぎていた、という取りこぼしが一番もったいない。それまでは、管理部門の担当者が毎週デジタル庁のサイトを確認していました。動かし始めたとき、経営メンバーから担当者に送ったのが、このメッセージです。

「毎週デジタル庁のサイトをチェックしてアップデートがあったらこのチャンネルに通知来るようにAIにツール開発してもらっているから、今後は全部チェックしていきましょう。」

ViVO 経営メンバーから管理部門の担当者へ(社内Slack)

お客様の業務にも役立った経緯:製造業M社とは、2026年6月から「小さく早く成果を出す」プロジェクトを進めていました(記事#1)。8月5日に、私から担当エンジニアへ「弊社内での補助金の事例は紹介してあげて!」と伝えました。担当エンジニアが紹介したのは、毎週月曜に情報を取得し、まだ通知していないものだけSlackに流す、社内で使っていた仕組みです。その後、8月25日の定例で、残っていたテーマは9月中の対応が難しいと分かり、補助金アラートに入れ替えることになりました。

担当エンジニアが、社内で動いているものを、お客様の環境(Google Apps Script)で動く形に作り直しました。キーワード・地域・除外語の設定ファイルを書き換えれば、どの会社でも使える作りです。キーワードはM社のご担当の方がご自身で選び、ViVOの9語に対して46語になりました。研究開発、設備投資、ロボット、工場など、製造業ならではの言葉が並びます。設定にかかったのは、Slackの準備が10分、スクリプトの設置が15分、動作確認が10分で、合計40分程度。9月25日に設定が終わり、10月1日時点では他部署でも検証が進んでいます。

作って分かったこと:手順書を書いているときに、週に1回の巡回では、締切7日前の通知が出ない案件が約4割あると分かりました。実行日と締切の日付の組み合わせによって、通知のタイミングを逃してしまうんです。そのため、お客様には毎日の巡回をおすすめしています。これは、自社で使い続けていたからこそ気づけたことです。

02

営業ダッシュボードの自動更新|営業会議の数字集めをやめた

何を自動化したか:ViVOでは毎週水曜の朝に、案件創出(pipegen)の会議をしています。そこで使う目標と実績のダッシュボードを、毎週水曜6時にクラウド上で自動更新するようにしました。Salesforceから実績を集計し、HTMLを生成して公開し、Slackに通知する。ここまで、人のPCを経由せずに動いています。

なぜ分けたか:目標は設定ファイルで管理し、実績はSalesforceから自動で集計する。このように分けたのには理由があります。以前は計画シートの実績欄を手で更新していたのですが、2026年4月で更新が止まり、Salesforceの実績と約7倍もずれていました。手入力の数字を分子にしていると、週次の会議が「数字を直す会議」になってしまいます。そこで、Salesforceに入っているものだけを実績として扱うことにしました。

AIを使う所:数値の集計はスクリプトで行い、AIは使っていません。AIに任せているのは、数字を見て「今週の施策」を短く添えるコメンタリだけです。この文章を作るところで失敗しても、数値は必ず配信するようにしています。

人が承認する1点:お客様との打ち合わせの議事録から商談を登録する際は、AIが下書きを作り、Slackのボタンで人が承認してから登録します。商談は、このダッシュボードの分子になる情報です。誤って登録すると数字もおかしくなるので、ここは全自動にしていません。

お客様の案件に:この考え方は、お客様向けにも使っています。M社では、基幹システムの売上・Salesforce・事業計画を1つにまとめた営業ダッシュボードを作っています(記事#1)。

03

工数入力の催促を自動化|「入力して」と言う係をなくした

何を自動化したか:毎週水曜と金曜の8時33分に、全正社員の工数入力の充足率を判定して、Slackに通知しています。必要工数は、当月の営業日×8時間から、有給・特別休暇・振替休日・欠勤の日数を引いて出します。営業日の判定に使うのは、内閣府の祝日データです。充足率が95%以上ならOK、80%以上ならやや不足、それ未満なら不足、というルールにしています。

AIを使わない所:この判定も、AIではなく決まったルールのスクリプトで行っています。正社員の名簿を手で管理する必要もありません。給与計算の対象になっているかどうかで自動判定し、初回の通知では正社員だけを拾いました。あわせて、人事労務には在籍しているのに工数管理には登録されていない人、つまり招待漏れも警告できるようになりました。

人が判断する1点:入力が不足している人がいる週だけ、通知にボタンが付きます。経営メンバーがそのボタンを押すと、全社チャンネルに@channel付きで催促が投稿されます。押すまでは投稿しません。催促の文面は20パターン用意して、一巡するまで同じものを使わないようにしました。毎回同じ文章だと、機械的なアラートとして読み流されてしまうからです。個人名や実人数は出さず、「若干名」「数名」「かなりの人数」とだけ書いています。

文面のベースにしたのは、自動化する前日に、経営メンバーが手で書いていたこの1行です。

「昨日までの工数入力、若干名足りてない人いますよ!!お願いします!」

ViVO 経営メンバー(自動化前日、全社チャンネルへ)

自動化してから、ボタンで投稿された文面はこちらです。

「先週金曜(8/21)までの工数入力、若干名足りてない人いますよ!お願いします!」

ViVO 自動通知(ボタン押下で投稿)

この仕組みの説明を聞いて、私は「いいね!めちゃ良き!」と返しました。催促する側の気まずさが減りますし、言われる側にも毎回違う明るい文面で届きます。経営メンバーの確認作業は、月4時間ほど減りました(自動化前の作業時間の見積)。

04

請求書の発行漏れ検知|3つのシステムの差で見つける

何を自動化したか:月末に請求すべき案件を、電子契約の締結記録・会計の売上計上・CRMの売上レコードの3つで突き合わせています。どこかに情報が欠けているものを「請求漏れの疑い」として出す仕組みです。毎月17営業日目の9時30分に自動で動きます。「17営業日目」は定期実行の書式では表現できないため、平日は毎日起動して、該当する日だけ本処理を進めています。

設計の方針:誤検出は許容しても、検知漏れは許容しない。ViVOの経営メンバーが担当する案件については、漏れをゼロにすることが要件でした。CRMへの登録漏れがある以上、CRMの一覧だけを見ていても、登録されていない案件には気づけません。そのため、3つのシステムを突き合わせて差を見ています。

動いている実態:7月の試作では、最初に要対応の候補が93件出ました。そこに「このライセンスは契約時に一括請求」「この案件は月末請求の対象外」といった業務ルールを一つずつ追加し、1件まで絞りました。現在では、要対応の候補はゼロになっています。

止まったことが分かる形で出す:3つのソースのうち、どれか一つでも取得できなかった場合は、通知に「取得失敗」と明記します。8月と9月には電子契約の記録が取れず、そのことが分かる形で通知が届きました。情報を取れていないのに、何も言わず「漏れなし」と出してしまうのが一番危ないと考えています。

05

無人の自動化は、黙って止まる|止まったことに気づく仕組み

ここまで書くと順調に動いているように見えるかもしれませんが、最初からそうだったわけではありません。ViVOの社内でも、3つが別々の理由で止まりました。

補助金アラートは、投稿先を作り忘れていた:7月22日に動かし始めたものの、Slackに投稿するための認証を作っていませんでした。最初の通知が届いたのは8月3日です。巡回自体は動いていたので、ログを見ないと気づけません。

工数チェックは、ネットワークがつながる前に走っていた:8月12日・21日・28日の3回、通知が届きませんでした。Macがスリープしている間に8時33分を過ぎると、復帰した直後に処理が始まります。その時点ではまだWi-Fiがつながっておらず、サーバーの名前解決に失敗していました。そこで、ネットワークがつながるまで最大15分待つ、接続を5回まで再試行する、失敗したら日時を記録する、という3つの処理を追加しました。9月18日と10月2日は、実際に接続を待ってから成功しています。

pipegenダッシュボードは、3週間気づけなかった:8月12日・19日・26日の3週連続で、定時の更新が止まりました。原因は工数チェックと同じです。さらに、失敗を知らせるSlack通知も同じネットワークを使っていたため、失敗したことを知らせる通知まで届きませんでした。ノートPCで動かす以上、蓋を閉じて持ち出した週には動かないという問題もあります。そこで9月1日に、実行環境ごとクラウド(GitHub Actions)へ移しました。その後の定期実行は、9月1日・8日・15日・22日・29日と、すべて成功しています。

請求漏れ検知は、「成功」と言って失敗していた:AIの実行環境では、Slackへの投稿が権限で拒否されていても、「成功」の終了コードが返っていました。これでは「成功したのに通知が届かない」という状態になります。通知する部分をAIから切り離し、スクリプトから直接投稿する形に変更しました。

こうした失敗で分かったのは、エラーが出ていないからといって、やりたいことができているとは限らないということです。人が見ていないところで動かすなら、処理が「動いた」ことに加えて、結果が「届いた」ことまで確かめる必要があります。そこまで作って、ようやく運用できるようになりました。

06

全社会議の受注・売上|数字の更新は無人に、意味づけは人に残した

何を自動化したか:毎月第2月曜の全社会議で使う、受注(Salesforce)と売上(事業計画の表計算)の進捗ダッシュボードです。会議当日の早朝6時10分に、受注の明細と月次集計、事業計画の目標と確定売上を取得します。数値を更新し、生成器で描画まで検算して、公開を申請。本番に反映した結果を、Slackに1通で通知します。取得から通知までの7つの工程が、人の操作なしで動きます。成功しても失敗しても、必ず1通届くようにしています。

10月は第2月曜が祝日でしたが、12日の朝6時22分に「本番反映OK」の通知が届きました。翌13日の全社会議では、そのダッシュボードを使って進めています。

データは動かさなかった:この仕組みを作るために、データを別の場所へ移したわけではありません。受注はSalesforce、売上は事業計画の表計算に置いたままです。会議で見るのは、その2つをつないだ1枚のダッシュボードとSlackの通知だけ。全社会議のために誰かがSalesforceのレポートを開いて、表計算を集計し直して、スライドに貼り直す作業はなくなりました。見る画面を1枚にまとめて、裏で何が動いているかは気にしなくてよくする。お客様の業務アプリでも進めているヘッドレス(画面を増やさず、人が操作しなくて済む形にする考え方)は、こういうことです(Dreamforce記事)。

自動化しないと決めたもの:戦略コメントと、年間の売上目標。この2つは人の手元に残しました。数値の取得ミスは検算で気づけますが、言葉や目標の誤りは、全社員が見た後でしか気づけません。そこで、数値の更新は自動化し、コメントと目標は人が判断する形にしています。コメントは前月分を維持して、当月に受注した取引先名を通知に載せます。差し替えるかどうかを考えるための材料を渡す形です。年間目標も、参照元の表計算の値では上書きしません。経営判断で引き上げた目標が、参照元の更新漏れで黙って下がってしまうのを防ぐためです。両者がずれていたら「要確認」と通知し、人が判断します。10月12日の通知にも、年間売上目標のずれが1件、要確認として載っていました。

動かしてみて分かったこと:最初はクラウドで動かすつもりでした。ただ、実行環境の制約で社内のコード置き場に書き込めず、手元の端末で動かす形に切り替えました。データを取得できる場所と、書き込みの権限がある場所は、必ずしも一致しないんです。9月には作業中のファイルが混ざって更新に失敗しましたが、会議の2時間半前に「本番は更新されていません」という通知が届きました。失敗したなら、そのまま失敗したと分かる。人の操作なしで回すには、これが必要です。

以前は、会議当日の朝にコマンドを手で実行し、対話しながら集計を確かめ、コメントを聞き取り、編集して公開していました。今は、届いた通知を確認するだけになりました。

07

次にSlackへ寄せる2つの業務|請求の確認と、工数の入力

10月13日の全社会議では、管理部門と営業の仕組みを担うメンバーから、次に進める2つの仕組みが共有されました。どちらも、この記事の時点ではまだ稼働前です。

請求対象の確認:これまでは毎月、担当者がSalesforceのレポートを請求レポートの表計算に転記し、確認が済んだ行を色で塗っていました。10月末からは、この表計算をやめます。毎月20日に、BotがSalesforceから当月の売上を1件ずつSlackに投稿。案件の責任者は、自分の案件にチェックのスタンプを付けるだけです。締切前の催促もBotが行います。請求書を送る担当者は、送付したらメールのスタンプを付けます。これで送付日がSalesforceに残るので、Salesforceのアカウントがなくても、Slackだけで完結します。

会議では、メンバーから、1件ずつ通知が付くと嬉しいという声がありました。それを受けて、案件の責任者を最初から通知先に入れることが、その場で決まりました。

作ったメンバーからは、会社のアカウントで動かせるように、クラウドの実行環境、コードの置き場、Slackアプリを用意してほしいと、経営メンバーに依頼がありました。

「私が抜けても止まらない形にするため、会社のアカウントで3つ用意していただきたいです。」

ViVO 仕組みを作ったメンバー(社内Slack)

構成は別のエンジニアがレビューしています。処理に失敗したときの通知と、利用料の上限アラートを追加したうえで、10月14日に載せ、16日にテストする予定です。04で紹介した請求漏れ検知が「漏れを拾う網」だとすると、こちらは「漏れが起きない入口」。この両方が揃うことで、請求業務から表計算がなくなります。

工数の入力:今は、各自が工数管理のクラウドサービスに手で入力しています。03で催促を自動化したのも、この入力です。会議で共有されたのは、工数そのものをSlackで入力できるようにする構想でした。案件ごとの金額、自分の工数、単価を1つのダッシュボードで見て、「今月この案件は赤になりそう」と早めに気づけるようにしたい、というのが動機です。カレンダーの予定から工数を起こす案と、Slackに文章で送ると登録される案を検討しながら、作っているところです。

この議論で、06の仕組みを作った経営メンバーが話していたのも、同じ考え方でした。データを1つのシステムに全部集めなくても、ダッシュボード上でつなげばよい。使う画面が全部Slackになるなら、裏で何が動いていても構わない。作っているメンバーも、使い勝手が悪くなっては意味がないと、入力する側の手間を基準に3つの案を比べています。

08

5つの自動化から見えてきた、6つのこと

実際に作って動かしてみて分かったことを、冒頭の6つに沿って振り返ります。

1. 確認・集計・催促の定期作業は、人が操作しなくても回る。 補助金は毎週月曜9時、pipegenは毎週水曜6時、工数は毎週水・金8時33分、請求は毎月17営業日目、全社の数字は毎月第2月曜6時10分。決まった時刻に動いて、結果だけがSlackに届きます。

2. 自社の効率化が、お客様の業務にもそのまま役立つ。 補助金アラートは、8月5日に社内事例として紹介し、8月25日にM社での活用を進めることになり、9月25日にはM社の環境で動き始めました。自社で補助金情報を確認する手間を減らした仕組みが、お客様の同じ業務にも役立っています。設定ファイルを書き換えることで、他社でも使えるようにしています。

3. 人が判断する1点だけを残し、あとは自動にした。 全社への催促はボタンを押してから、商談の登録は承認してから。人が判断する1点は、どちらも「間違えると人や数字に影響が出る」ところです。

4. AIを使う所と使わない所を分けた。 充足率の判定、請求の突合、実績の集計は、決まったルールのスクリプトで処理します。毎回同じ結果が出るようにするためです。AIを使っているのは、これらを作る工程(Claude Code)と、コメンタリや下書きの文章です。

5. 無人の自動化は、黙って止まる。 認証の作り忘れ、ネットワークがつながる前の実行、そのネットワークが使えず届かない失敗通知、失敗しているのに返ってくる成功の結果。実際にこうした問題を経験しました。止まったことに気づける仕組みまで作って、ようやく運用できています。

6. データは動かさず、見る場所だけをSlackと1枚のダッシュボードに寄せた。 全社の受注はSalesforce、売上は事業計画の表計算に置いたままです。会議で見るのは、1枚のダッシュボードとSlackの通知だけ。請求の確認も、表計算への転記をやめて、Slackのスタンプ1つで済む形に変えていきます。先にシステムを統合しなくても、データを元の場所に置いたままつなげば、自動化を始められます。始めるまでが速く、止めるのも簡単です。

お客様の現場でも、やっていることは同じです。記事#1で書いた4社の事例も、人がシステムの間で情報を手で移している作業を見つけて、人が判断するところを残し、あとは自動化しました。自社でも片っ端から作って使っているので、お客様の業務を見たときに、どこを自動化して、どこに人を残すかを、実際に動いているものを見せながら話せます。

自社の定期作業を片っ端からAIでアプリにして、実際に使う。そこで分かったことをもとに、お客様の現場でも「どこを自動化し、どこに人を残すか」を実物で示す。ViVOのFDEは、こうした積み重ねが土台になっています。

Q&A

社内の定期業務の自動化について、よく聞かれること

Q. 社内の定期業務の自動化は、何から始めるのがよいですか?
毎週・毎月、決まった手順で繰り返している「確認」「集計」「催促」から始めるとよいと思います。ViVOでも、補助金の巡回、会議の数字集め、入力の催促、請求の確認から始めました。最初の4つは、2026年7月30日に1日で動き始めています。
Q. AIはどこに使っていますか?
判定・集計・突合は、決まったルールのスクリプトで処理しています。毎回同じ結果が出ることが大事なので、ここにAIは使っていません。AIを使っているのは、それらを作る工程(Claude Code)と、数字に添えるコメンタリや商談の下書きなど、文章を書く部分です。
Q. データを1つのシステムにまとめてからでないと、こういう自動化はできませんか?
まとめなくてもできます。ViVOの全社会議のダッシュボードも、受注はSalesforce、売上は事業計画の表計算に置いたまま、2つをつないで1枚にしています。請求の確認も、Salesforceのアカウントを持たない担当者が、Slackのスタンプで完結できる形です。先にシステムを統合しようとすると、それだけで時間がかかります。データは元の場所に置いたままつないで、使う側の画面を1つにまとめるほうが、早く始められます。
Q. 自社で動いているものを、そのまま頼めますか?
はい。M社の補助金アラートも、社内で使っているものを、お客様の環境で動く形に作り直して入れました。キーワード・地域・除外語の設定を書き換えれば動く作りなので、設定は40分程度です。実際の業務に合わせて、どこに人の判断を残すかから一緒に考えます。

参考資料・記録の範囲

本記事の内容は、ViVO社内で2026年7月22日から10月13日にかけて動かしてきた自動化の記録(実行ログ・Slackの通知・設定手順書・システム構成書)、2026年10月13日の全社会議の記録、製造業M社の記録(Slackのやり取り・定例の議事録)に基づいています。社名・個人名・製品名は伏せ、社名はイニシャルで記載しています。お客様とViVOメンバーの言葉は、Slackメッセージの原文から引用しました。会議での発言は、自動の文字起こしのため間接話法で書いています。件数・時刻は実行ログと通知の原文で確認したものに限っています。削減時間は見積です。07の2つの仕組みは、記事の時点では稼働前です。参照日:2026年10月13日。

この記事は、ViVOが自社で運用している仕組みの記録と、そこから私が考えたことをまとめたものです。各社の成果や効果を第三者が検証したものではありません。

RELATED ARTICLES

関連記事