ANTIGRAVITY LABEN
記事一覧/Agents & Manager
Agents & Manager/2026-06-13上級

スケジュール実行エージェントの指示書ドリフト — 定義・文書・実態の乖離を検知する三層整合の設計

スケジュール実行のエージェントは、指示書と実態が乖離しても成功ログを出し続けます。定義・文書・実態の三層で整合を検査するスクリプトと週次レビューの組み立てを、運用で踏んだ無音失敗の実例とともにまとめました。

agents64scheduled-executionoperations2documentation4drift-detection

プレミアム記事

深夜のスケジュール実行のログを見返していたときのことです。個人開発で運用している複数のアプリ向けに、依存更新・クラッシュレポートのトリアージ・AdMob のレポート集計といった作業を Antigravity のエージェントに定期実行させているのですが、手順書に「週 2 回実行」と書いてあるタスクが、スケジューラ上では毎日動いていました。

頻度を変えたのは数週間前の私自身です。スケジューラの設定は更新しました。けれど手順書は直し忘れていました。タスクは毎晩「成功」のログを出し続けていたので、気づくきっかけがなかったのです。

この食い違い自体に実害はありません。ただ、調べていくうちに、もっと質の悪い乖離が二つ見つかりました。手順書が参照しているデータファイルが、フォルダ改名の影響で空読みになっていたこと。そして、指示書の実体が消えたままスケジュールだけが残った「ゾンビタスク」が一つ、動き続けていたことです。

スケジュール実行のエージェントは、指示書が現実とずれても止まりません。Antigravity 2.0 でスケジュール実行やバックグラウンドエージェントが身近になった今、この「指示書ドリフト」は書き方の工夫ではなく、検知の仕組みを持つ設計の問題として扱う必要があると考えています。

指示書は書いた瞬間から古び始めます

長く運用して見えてきたのは、ドリフトの発生経路はほぼ3つに収束するということです。

経路1: 定義変更の取り残し

スケジューラ側の頻度・時刻・有効/無効を変えたのに、手順書や AGENTS.md に旧仕様の記述が残るパターンです。変更作業の主目的は「動きを変えること」なので、文書の同期は後回しになりがちです。後回しにされた同期は、経験上ほぼ実行されません。

経路2: 参照先の移動・改名

手順書が cat するデータファイルや、サブ手順書へのパスが、リファクタリングで移動するパターンです。怖いのは、多くのシェル手順が空読みでも止まらないことです。cat は存在しないファイルでエラーを返しますが、リダイレクトやパイプの組み方によっては全体が「成功」として流れます。エージェントは欠けた参照を「欠けている」と報告するより、手元にある情報だけで作業を完遂する方向に倒れやすい性質があります。

経路3: 実体の消失

指示書を整理・統合した際に、古いスケジュール定義だけが残るパターンです。逆に、文書はあるのに定義から外れた「孤児文書」も生まれます。どちらも個別には小さな問題ですが、棚卸しされないまま数が増えると、運用全体の信頼性が読めなくなります。

3つに共通するのは、成功ログが整合の証明にならないことです。エージェントは与えられた状況の中で最善を尽くすので、参照が欠けていても、指示が古くても、それなりの成果物を出してしまいます。「動いているから大丈夫」が通用しないのが、この問題の厄介なところです。

定義・文書・実態 — 三層モデルで乖離を捉える

対策を考えるにあたって、私は運用を3つの層に分けて整理しました。

  • 層1: 定義 — スケジューラが実際に何を・いつ・有効/無効どちらで動かしているか
  • 層2: 文書 — AGENTS.md・手順書・runbook が何と言っているか
  • 層3: 実態 — 実行ログと成果物が何を示しているか

整合性の検査は、この三層の突き合わせ3組(定義×文書、文書×実態、定義×実態)に分解できます。冒頭の「週 2 回 vs 毎日」は定義×文書の乖離、空読みは文書×実態の乖離、ゾンビタスクは定義×文書の欠損です。

突き合わせの前に、ひとつ設計判断が要ります。どの層を正とするかを決めることです。私は「定義(層1)が正、文書は従」と決めています。スケジューラは現実に動いているものなので、嘘をつきません。正本を決めていないと、乖離を見つけても直す方向が定まらず、レビューのたびに議論が発生します。

その上で、定義を機械可読な一箇所に集約します。スケジューラの管理画面だけに頻度が存在する状態だと突き合わせの自動化ができないので、私はリポジトリに tasks.yaml を置き、これを唯一の正本にしています。

# tasks.yaml — スケジュール実行の正本(頻度はここ以外に書かない)
tasks:
  - name: nightly-dependency-update
    schedule: "0 3 * * *"        # 毎日 03:00
    doc: docs/agents/nightly-dependency-update.md
    refs:
      - data/allowlist.json
      - docs/shared/update-policy.md
 
  - name: crash-triage
    schedule: "0 6 * * 1,4"      # 月・木 06:00
    doc: docs/agents/crash-triage.md
    refs:
      - data/crash-thresholds.yaml

ポイントは docrefs を定義側に持たせることです。タスクが「どの文書に従い、何を参照するか」を定義に書いておくと、後述の検査スクリプトが三層をまとめて辿れるようになります。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
指示書ドリフトが生まれる3つの典型経路(定義変更の取り残し・参照先の移動・実体の消失)と、それぞれの検知ポイントを把握できる
定義・文書・実態の三層を突き合わせるドリフト検査スクリプト(bash と Python)を、自分の運用にそのまま流用できる形で持ち帰れる
週次ドリフトレビューを 10 分で回すための出力設計と、人間が見るべき差分の絞り込み方が分かる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

Agents & Manager2026-06-13
エージェントに品質チェックを飛ばさせない — Antigravity CLI Hooks と git pre-push の二段ゲート設計
依存更新を任せたエージェントが、落ちたテストを『無関係』と自己判断して push まで進めてしまった経験から、Antigravity CLI の Hooks と git pre-push を重ねた二段ゲートを組みました。品質チェックの省略を仕組みで防ぐ設定とスクリプトの実物をまとめています。
Agents & Manager2026-06-02
Antigravity のエージェントに『差分を小さく刻む』癖をつけてもらう — 1ヶ月の運用で変えたレビューの流儀
エージェントが一度に大きな差分を返すと、個人開発ではレビューが追いつかなくなります。Antigravity に『小さく刻んで』と最初に頼むようにして1ヶ月、レビューの体感がどう変わったかを、実際に渡している指示文とともに残しました。
Agents & Manager2026-05-30
Antigravity のエージェントが node や python を『command not found』にするときの原因と対処
自分のターミナルでは動くのに、Antigravity のエージェントがコマンドを実行すると command not found になる。PATH 継承の仕組みから、nvm・pyenv・Homebrew 環境ごとの具体的な解決手順を解説します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →