生成AIで作る、業務改善と自動化

手作業を、動き続ける仕組みに。

生成AI(Claude Code)を道具に、仕事と生活の定型作業を自動化しています。

ここに並べたものは、すべて自分で作り、今も動いています。

現在の運用状況

23本稼働している処理
3本棚卸しで停止した処理
週2回運用の点検
運用中公開しているWebサービス

ゲームで体験

生成AIと役割を分けて作った、タップ1つの石積みゲームです。

ゲーム画面

ケルン積みのゲーム画面
08AIと分担して作る
公開中スマホ・PC

石積みゲーム「ケルン積み」

理屈抜きで楽しめる遊びを、AIと一緒に作りたい。

ゲームを開く(音が出ます)

Claude CodeCodex画像生成AICanvasWeb AudioCloudflare Pages
制作ノートをひらく
課題
仕事の流れをたとえにした体験ゲームを3本作ったが、遊んでみると理屈っぽく、楽しめるものにならなかった。
やったこと
タップ1つで石を積み、山頂をめざす遊びに作り直した。企画・仕様書・確認は Claude Code、プログラムの実装は Codex、動物と背景の絵は画像生成AIと役割を分け、遊んでは直すをくり返して13版まで作った。6つの山、5段階の天気、36種の動物、山ごとのBGMまで広げている。
効果
仕様を文章にして渡し、できたものを遊んで確かめる。この往復だけで、企画から公開まで進めた。

工夫したところ

  • 第1ステージは初めての人でも登頂できる難しさにし、先へ進むほど少しずつ難しくした。
  • 絵をそろえるため、先に「ゆるキャラ」の絵柄のきまりを文章で決めてから、動物36匹と背景6枚を描かせた。
  • 曲は商用でも使えるフリー素材を選び、利用規約を確かめてから入れた。
  • 画面を閉じたり別のタブに移ったりしたら、音がすぐ止まるようにした。
ゲームで遊ぶ

スマホでもPCでも遊べます。音が出ます(右上のボタンで消せます)。

別画面で開く

制作ノート

どれも自分の困りごとから作り、今も動かしています。

仕訳のイメージ

駅前コンビニ540円

ルールで自動 食費

ガソリンスタンド青空4,800円

ルールで自動 交通

ネット通販(お米 5kg)2,380円

何でも買える店なので、あなたが判断

食費日用品交通固定費
03ルールで回す
稼働中毎月

家計データの自動集計パイプライン

毎月の仕分けを、例外だけ見れば済むようにしたい。

Pythonデータ変換ルールエンジン自動レポート
制作ノートをひらく
課題
毎月の入出金明細の分類を手作業でおこなっており、時間がかかるうえ基準がぶれていた。
やったこと
明細CSVの自動取得 → ルールにもとづく自動仕訳 → 判定できないものだけを確認キューに出す → 予算と実績を評価 → レポートを自動生成、までを一本につないだ。人が確認した内容はそのままルール化され、次回から自動で処理される設計にしている。
効果
毎月の仕訳作業を「例外だけ人が見る」形に縮小した。判断基準がルールとして残るため、担当が変わっても再現できる。

工夫したところ

  • 金融サービス側の分類は変えず、自分のルール表で上書きする。元のデータには手を入れない。
  • 1万円を超えるもの、初めての店、いつもより高いものは、確認待ちに回す。
  • 確認で直した割合を記録し、下がってきたら「例外だけ確認する」やり方に切り替える。
  • 購入の記録とカードの請求に同じ買い物が二重に載るときは、実際に支払った側だけを残す。
ウォッチの記録取り出す変換表に書き込む
1日 7:002日 7:003日 7:00

失敗しても、次の枠で取り戻す

04無人で回す
無人運用月次

計測データの自動転記バッチ(無人運用)

記録の転記を、人の手から外したい。

PythonSQLiteGoogle Sheets APIlaunchdエラーハンドリング
制作ノートをひらく
課題
ウェアラブル端末に記録されるデータを、毎週手作業で表に転記していた。
やったこと
アプリのローカルデータベースから抽出 → 変換 → スプレッドシートへ書き込みまでを自動化し、macOSの定時実行(launchd)で無人運用にした。ネットワーク未接続を「認証切れ」と誤って判定しないよう切り分けを実装し、実行の時間帯を3つに分けて、失敗しても後続のスロットで自動的に復旧する構成にしている。
効果
週1回の手入力が不要になった。冪等性・リトライ・障害の切り分けまで含めた運用設計。

工夫したところ

  • 書き込むのは空いているマスだけ。すでに入っている値は上書きしない。
  • 書く前に対象の行を名前で確かめ、書いた後に他の人の行が変わっていないかを読み戻して確かめる。変わっていたら、以後の処理を止める。
  • 「動いたか」ではなく「書き込めたか」を記録し、その日時で見張る。
稼働 23停止 3

毎朝は自動で見張り、週2回は詳しく点検する

22本を19本に整理した棚卸しのあとも、必要な処理を足して、いまは23本。

06止めずに見張る
稼働中週2回

自動化した処理の運用監視と棚卸し

増えた自動処理が、黙って止まっていないか知りたい。

シェルスクリプトログ解析定時実行
制作ノートをひらく
課題
自動化を増やした結果、動かなくなった処理や、失敗し続けているのに止まらない処理が混ざり始めた。
やったこと
20本あまりの定時処理を週2回自動で点検する仕組みを作成。一定期間実行されていないもの、再試行を繰り返して終わらないものを検出し、停止・改修まで実施した。
効果
稼働している処理を22本から19本に整理した。作って終わりにせず、運用と棚卸しまで続けている。

工夫したところ

  • 見張りの基準は「最後に成功した時刻」。エラーにならないまま何も書けていない失敗も拾う。
  • 毎朝8時に主な処理をまとめて確かめ、異常があれば次に作業を始めたときに真っ先に知らせる。
  • 点検で見つけた問題のうち、壊れる心配のないものはその場で直し、判断が要るものだけを知らせる。

構成の例

画面
Next.js
配信
Cloudflare Workers・Pages
データ
Cloudflare D1
入口の制限
Cloudflare Access
07公開して使ってもらう
公開中常時

Webサービスの構築・公開・運用

作ったものを、自分以外の人にも使える形で出したい。

Next.jsCloudflare Workers・PagesD1Cloudflare AccessGitHub
制作ノートをひらく
課題
作った成果物を、自分と他の人が実際に使える形で公開したかった。
やったこと
Next.js と Cloudflare Workers / Pages で複数のWebページを制作し、本番公開して運用している。用途に応じてデータベース(D1)とアクセス制限(Cloudflare Access)を組み合わせ、アクセス状況の計測も自分で構成した。
効果
公開して他の人に使われている状態を、企画から運用まで一人で維持している。

工夫したところ

  • ダウンロード数やリンクの利用数は自前の小さなデータベースで数え、IPアドレスなど個人を特定できる情報は保存しない。
  • 集計の画面は、推測できない長い鍵がないと開けない作りにし、鍵がなければ画面があること自体も分からないようにした。
  • 更新して公開したあとは、表示と計測が壊れていないかを毎回同じ手順で確かめる。

ほかに作ったもの

01直して引き継ぐ
配布済み都度

勤務先で配布されているExcelマクロ(VBA)の不具合分析と改修

作った人が異動した集計マクロを、仕様を変えずに直したい。

VBAExcel文字コード対応回帰確認
制作ノートをひらく
課題
部内で共有されている集計用マクロに、特定の条件で処理が止まる不具合と、扱える件数の制約があった。作成者は既に異動しており、誰も中身を把握していなかった。
やったこと
既存のVBAを読み解き、変数の宣言位置・結合セルの扱い・文字コード(CP932)に起因する問題を切り分けて特定。元の処理結果と設計を変えない形で改修版を作成し、動作確認の手順書を添えて配布した。
効果
動作確認の手順を残し、作成者以外でも修正・検証しやすい状態にした。既存の仕様を保ちながらコードを改修した例。
02型にして配る
運用中年12回

安全衛生の講話資料を自動生成する仕組み

年12回の講話資料を、ひとつの原稿から作りたい。

Node.jspptxgenjsテンプレート設計
制作ノートをひらく
課題
年12回おこなう講話の資料を毎回ゼロから手作りしており、内容と体裁にばらつきが出ていた。
やったこと
Node.js(pptxgenjs)でスライドを生成する仕組みを作成。ひとつの原稿から「配布用(印刷インクを抑えた版)」と「投影用」の2種類を自動で出し分けるようにした。
効果
作成時間を短縮し、資料の構成と体裁を標準化した。属人的な作業を仕組みに置き換えた例。
05AIを使う場所を選ぶ
稼働中毎朝

情報収集の自動化(生成AIを毎日は使わない設計)

毎朝の情報集めを、AIを毎日使わずに回したい。

PythonRSS生成AI(週1回のみ)自動配信
制作ノートをひらく
課題
情報量が多すぎて、自分に必要なものを選び出せていなかった。
やったこと
過去のやり取りから関心の傾向を週1回だけ生成AIで更新し、毎朝の記事の絞り込みはルールベースでおこなう構成にした。結果はノートアプリ・メール・デスクトップ通知へ自動配信している。
効果
毎朝の情報収集を自動化しつつ、生成AIの利用を週1回に絞ることで、毎日使う構成より運用コストを抑えた。AIを「どこで使い、どこで使わないか」を費用対効果で判断した例。

仕事の進め方

作る前に言葉にし、作ったあとも面倒を見ます。

  1. 1

    言葉にする

    何に困っていて、何ができれば助かるのか。入力・処理・出力に分けて書き出します。

  2. 2

    小さく作る

    ひとつの処理、ひとつの画面から。AIに任せる部分と、自分で決める部分を分けます。

  3. 3

    試して直す

    本番に近いテストデータで動かし、自分の確認に加えて別のAIにも採点させ、ずれを直します。

  4. 4

    動かし続けて棚卸し

    動いているかを毎朝見張り、使わなくなったものは止めます。

使用している技術・ツール

言語・実行環境
Python / JavaScript・Node.js / VBA / シェルスクリプト
データ
SQLite / Cloudflare D1 / CSV・スプレッドシート / Google Sheets API
Web・インフラ
Next.js / Cloudflare Workers・Pages / Cloudflare Access / GitHub
運用
launchd(定時実行) / ログ監視 / 自動リトライ・障害切り分け
AI
Claude Code / ChatGPT(設計・実装・検証の相棒として日常利用)

ひとこと

いずれも、自分で課題を見つけ、必要な仕組みを考えて作ったものです。IT職としての職務経験はありませんが、AIを道具として課題を形にし、動き続ける状態まで面倒を見ることは、日常的におこなっています。