AI協働
5

「記事を更新したのに公開されない!」から学ぶ固定ワークフローの自動化

ベテランエンジニアでも起こす「コミット忘れ」。実際の失敗談から、なぜ固定ワークフローをコマンド化すべきなのか、その本質的な価値を解説します。

自動化ワークフロー効率化ヒューマンエラーカスタムコマンド


「記事を更新したのに公開されない!」から学ぶ固定ワークフローの自動化

今日起きた、恥ずかしい失敗


「よし、記事を大幅に改善したから公開しよう!」

インデックスを更新して、git pushして、キャッシュもクリア。完璧だ。

...10分後。

「あれ?サイトが更新されてない...なんで?」

調べてみると、なんと記事ファイル自体のコミットを忘れていた。インデックスだけコミットして、肝心の記事はコミットしていなかったのです。


誰もが経験する「当たり前」の抜け漏れ


この失敗、笑い話のようですが、実は多くの開発者が経験しています:

  • テストは通したけどビルドし忘れた
  • 環境変数を更新したけどデプロイし忘れた
  • ドキュメントは書いたけどコミットし忘れた
  • マイグレーションファイルを作ったけど実行し忘れた

どれも「やるべきことは分かっている」のに、つい忘れてしまう。


なぜ人間は「分かっているミス」をするのか

1. マルチタスクの罠

    記事を更新しながら、以下のことを同時に考えていました:
  • 内容は読者に伝わるか
  • 文章は自然か
  • JSONフォーマットは正しいか
  • インデックス更新も必要だな

頭がコンテンツに集中していると、「git add」という単純な作業を忘れてしまうのです。


2. 慣れによる油断


「いつもやっているから大丈夫」という過信が、最も基本的なステップを飛ばしてしまう原因になります。


3. 部分的な成功による錯覚


インデックスの更新とpushは成功していたため、「すべて完了した」と脳が勘違いしてしまいました。


解決策:固定ワークフローのコマンド化

Before:人間が覚えておく必要がある手順

bash
# 1. 記事を更新
# 2. git add tips/articles/記事.json  ← 忘れがち!
# 3. git commit -m "fix: 記事を更新"
# 4. ./update-index.sh
# 5. git add tips/index.json
# 6. git commit -m "fix: インデックスを更新" 
# 7. git push
# 8. ./clear-cache.sh
    8つのステップ。どれか1つでも忘れたら、意図した結果になりません。


After:コマンド1つで完了

bash
# 「公開して」と言うだけ
    AIが内部で実行:
  1. git statusで未コミットファイルを検出
  2. 必要なファイルをすべてコミット
  3. 適切なコミットメッセージを生成
  4. push実行
  5. キャッシュクリア
  6. 結果を報告


実例:今日作った /publish コマンド

markdown
# コマンド名
/publish

# 実行内容
1. git statusで状態確認
   → 未コミットがあれば警告
2. git push実行
3. キャッシュクリア実行
4. 完了報告(URLも含む)

このコマンドがあれば、今日の失敗は防げました。


コマンド化がもたらす3つの価値

1. ミスの防止(最重要)


人間は必ずミスをします。それを前提とした仕組みが必要です。


2. 認知負荷の軽減


「次は何だっけ?」と考える必要がなくなり、本来の作業に集中できます。


3. 品質の均一化


誰が実行しても、いつ実行しても、同じ品質の結果が得られます。


すぐに始められる自動化の例

日次作業

bash
# morning-routine.sh
#!/bin/bash
git pull
npm install
npm run test
echo "✅ 朝の準備完了!"


デプロイ前チェック

bash
# pre-deploy.sh
#!/bin/bash
npm run lint || exit 1
npm run test || exit 1
npm run build || exit 1
echo "✅ デプロイ準備OK!"


PR作成

bash
# create-pr.sh
#!/bin/bash
git push -u origin $(git branch --show-current)
gh pr create --fill


よくある反論と回答

「そんな簡単なこと、忘れるわけない」


→ 今日の私がまさにそれを証明しました。経験年数は関係ありません。


「自動化するほどでもない」


→ 1日1分の作業でも、年間365分。それがミスなく実行される価値は計り知れません。


「柔軟性が失われる」


→ コマンドは「デフォルトの手順」です。必要なら手動で実行すればいいのです。


ベテランほど自動化にこだわる理由


ベテランエンジニアが些細なことまで自動化するのは、「自分もミスをする」ことを知っているからです。

  • 新人:「覚えておけば大丈夫」
  • 中堅:「チェックリストを作ろう」
  • ベテラン:「人間を信用せず、仕組みで解決しよう」


まとめ:小さな自動化の大きな価値


今日の「コミット忘れ」は、固定ワークフローを自動化する価値を改めて教えてくれました。

    重要なのは:
  1. 人間は必ずミスをするという前提に立つ
  2. 繰り返す作業は必ず自動化する
  3. 小さな自動化の積み重ねが大きな価値を生む

あなたも、毎日繰り返している作業を1つ、自動化してみませんか?

それは「git add を忘れない」という単純なことかもしれません。でも、その小さな一歩が、大きな安心感と効率化をもたらすのです。