※この記事は、2026年9月時点の個人的なAI運用メモです。一度の誤作動をもとに、特定のAIや定期実行全体の安定性を結論づけるものではありません。ここで書く改善案も、再発防止できたと確認できたわけではありません。
AIに定期的な作業を任せると、予定どおり動いたかどうかは通知や返答で確認したくなります。
自分も、日課として動かしている処理が予定時刻の少し後に反応を返した時、一度は「起動した」と見ました。
ところが、あとで確認すると、本来の日課は始まっていませんでした。
AIは直前の会話内容に返事をして、そのまま終わっていた。日付ごとの作業状態も作られていない。日課として予定していた最初の工程にも入っていない。
返答はあったのに、頼んだ仕事は始まっていなかった。
この時に、AIエージェントの実行確認では「返事が来たか」だけを見ても足りないのだと思いました。
起動したことと、予定した仕事を始めたことは別だった
定期実行が動いた時、最初に見えるのは通知やメッセージです。予定時刻の後に反応がある。AIから文章が返ってくる。画面上では、何かが実行されたように見えます。
ただ、今回のように会話の流れを持ったまま動く処理では、AIが直前に話していた内容を続けてしまうことがあります。
自分のケースでは、日課の開始ではなく、直前の会話への返答で終わっていました。
AIが黙っていたわけではありません。むしろ、自然な返答をしていたので、一見すると異常に気づきにくい状態でした。
ここで混ざりやすいのは、少なくとも次の四つです。
- 予定したトリガーが届いた
- AIが何らかの返答を返した
- 本来のタスクを開始した
- 予定した工程を完了した
この四つは同じではありません。今までは、最初の二つを見て「日課は動いた」と判断しそうになっていました。しかし、本当に確認したかったのは三つ目以降でした。
「止まった」のとは少し違う失敗だった
以前、AIエージェントが途中で止まる時は、モデルの性能だけでなく、権限確認、安全確認、指示の重なりも疑いたいと書きました。
今回は、少し違います。
AIが途中で固まったわけでも、権限確認で止まったわけでもありません。返答はありました。ただ、その返答が予定していた仕事の開始を意味していなかった。
人間同士でも、依頼を受けた人が「分かりました」と返事をしただけでは、作業が始まったかは分かりません。
作業一覧を開いたのか。最初のファイルを作ったのか。確認すべき項目へ手を付けたのか。何らかの最初の証拠があって、初めて「始めた」と言えます。AIエージェントでも同じでした。
通知や自然な文章を成功の印にするのではなく、本来のタスクへ入った証拠を別に残す必要がありそうです。
最初の工程が始まった証拠を残したい
今回の反省から、定期的なAI作業では最初に小さなチェックポイントを置く方がよさそうだと思いました。
たとえば日課なら、いきなり長い処理を始める前に、次のような状態を残します。
- その日の日付で処理を開始した記録
- 今回実行する目的
- 最初に入る工程
- まだ実行していない工程
ここで大事なのは、立派な進捗表を作ることではありません。人間があとから見て、「今回は本来の日課が始まった」と判断できる最低限の証拠を残すことです。
日付の状態が作られていない。最初の工程の記録がない。返答だけが残っている。こういう時は、成功として扱わず、どこで別の文脈へ逸れたのかを確認できます。
会話の文脈より、今回の目的を先に置く
会話の中で動く定期処理には、直前までの話題が残っています。普段の相談では、その文脈が役に立つこともあります。何度も説明しなくても、前に話したことを踏まえてもらえるからです。
ただ、日課のように決まった手順を動かしたい時は、同じ文脈が邪魔になることもあります。
今回のように、直前の会話へ自然に返答してしまうと、定期処理として何をするために起動したのかが曖昧になります。
そこで今後は、会話の流れを読む前に、その日の作業状態と目的を先に置く形を試したいです。
今日は何の日課なのか。どの工程から始めるのか。何を作ったら、少なくとも開始したと見なすのか。
こうした情報を先に固定しておけば、AIが会話の続きを優先してしまう余地を少し減らせるかもしれません。
ただし、これはまだ改善案です。同じ条件で再実行し、実際に日課を正しく始められるかは、これから確認する必要があります。
再実行できる形も必要だった
定期実行では、もう一つ気をつけたいことがあります。途中まで動いたのか、まったく始まっていないのかが分からないまま、もう一度動かすとどうなるかです。
同じ日の処理を二回始めれば、記録が重複するかもしれません。一方で、最初の工程すら始まっていないなら、再実行した方がよいかもしれません。
だから、最初の状態には「この日付の処理を始めたか」だけでなく、どこまで進んだかも残したいです。
まだ開始前なのか。最初の工程だけ終わったのか。人間の確認待ちなのか。これが分かれば、次に動かす時も、最初からやり直すのか、途中から再開するのかを決めやすくなります。
AIに長い仕事を任せる時は、途中で何をしないかを決める必要があると感じています。今回のような短い日課でも、始まったかどうかと、やり直してよいかを分けておく必要がありました。
AIの返答を、完了報告として読みすぎない
AIは、何かしら返答を返してくれます。それが自然な文章だと、人間は「理解して動いてくれた」と感じやすいです。
でも、その文章がどの依頼に対するものなのか。予定していたタスクが本当に始まったのか。成果物や状態更新が残っているのか。このあたりは、文章だけでは分からないことがあります。
だから定期実行では、返答そのものと、実行の証拠を分けて見たいです。
返答は、AIが何かを受け取ったサインにはなります。ただ、予定した仕事が始まった証拠にはならない。今回の誤作動で、その区別が少し具体的になりました。
まとめ
AIエージェントが予定時刻に返事をしても、頼んだ日課を始めたとは限りませんでした。
自分のケースでは、AIは直前の会話へ応答して終わり、本来の日課の最初の工程へ入っていませんでした。
そのため今後は、定期実行の成功を、通知や返答だけで判断しないようにしたいです。
- 予定したタスクを開始した記録があるか
- 最初の工程の証拠が残っているか
- 未実行の工程は何か
- 同じ日にもう一度動かしてよい状態か
このあたりを確認して、初めて「日課が動いた」と言えるようにしたいと思います。
AIに任せる範囲が増えるほど、AIが返した文章ではなく、実際にどの状態まで進んだかを見る必要があるのかもしれません。
コメント