AI LIFE OS POST-CAMP RUN|53分でHuman Gateへ Local QwenからDeepSeekへつなぎ、1時間RUNを達成した
IO|AI航海士です。
前回、MISSION-007の1時間Night Runへ向けて、実行系を夜へ渡した。
ClaudeとCodexで実行契約を固め、Humanが画面の前にいなくてもMissionを継続できるようにする。そのために約3時間半、設計を見直した。
今回、その実行系を実際に動かした。
結果から書く。
Run開始から約53分。
Local Qwenが約40分Missionを握り、途中でSupervisorが停止。そこでHuman Gateを一度通し、Qwenが残した成果物をDeepSeekへ渡した。DeepSeekは約5分半でTests + Integrationを完了。40本のTestがすべて通り、Builder Resultまで残った。
60分00秒を機械的に走り切ったわけではない。しかし今回のMISSION-007で確認したかった、
「Human不在の時間へMissionを渡し、必要な地点だけHumanへ判断を戻しながら、1時間級のRunを成立させる」
というところまでは来た。
今回は、この53分を1時間RUNの達成として記録する。

T0は03:30:15
今回のRunは、通常のTerminalからNight Run Supervisorを直接起動した。
NightSupervisorM007.run()
Mission clockのT0は、
2026-08-07 03:30:15
最初のBuilder ProviderはLocal Qwen。
Qwen3.5 35B-A3B
↓
LM Studio
↓
OpenCode
↓
MISSION-007 / WP-01
M1 Max 64GBの中でQwenを起動し、OpenCodeをCoding Agentのshellとして使う。
Summer Intensive Training Campの最終日に入れたLocal Qwenが、今回は本番のBuilderとしてMissionを受け取った。
Local Qwenが、約40分Missionを握った
最初は、どこまで動くか分からなかった。
10分。20分。30分。それでもQwenは止まらない。

LM Studioでは推論が続き、SupervisorのHeartbeatも継続していた。Builder Worktreeには、実際にファイルが増えていった。
generate_m007_run_report.py
m007_evidence_loader.py
m007_report_models.py
m007_report_sections.py
m007_report_styles.py
tests/
今回WP-01で作っていたのは、MISSION-007のRun Report Coreだ。
つまりQwenは、ただ40分間推論していたわけではない。
Repositoryを読み、コードを書き、成果物を残しながらMissionを進めていた。
Camp最終日にローカルへ入れたモデルが、数日後にはBuilder席で40分近く実装を続けている。今回のRunで、かなり印象的だった場面だ。
40分地点で、Supervisorが止めた
04:10:16。SupervisorがBuilder Timeoutを検知した。
BUILDER_TIMEOUT
active_s=2400.156
resume_allowed=True
ほぼ設定通りの2400秒。約40分だった。
Qwenがクラッシュしたわけではない。Work Packageに設定していた時間境界へ到達し、SupervisorがBuilderを止めた。
ただし、Qwenは最後のBuilder Resultを書き切る前だった。
HANDOFF_MISSING
builder-result.json
そのため、Supervisorは次のProviderへ自動Relayせず、Evidence Preparationへ入り、最終的にはSAFE_STOPした。
SAFE_STOP
SOURCE_ISOLATION_VIOLATION
ここだけ見れば、1時間Runは途中で止まったことになる。でも、AI LIFE OSではもともと、
すべてを無理に自動継続すること
を目的にはしていないし、40分設定を解除も簡単にできる。
Human Gateは、失敗ではない
前回の記事でも書いた。
Human Gateをなくすのではない。
必要な場所へ置き直す。
Scopeを越える変更。破壊的な操作。予算上限。自動修復できない障害。そうした地点では、AIが勝手に判断を広げず、人間へ戻す。
今回、実装上はSAFE_STOPとして停止した。ただ、運用上ここで行ったのは、まさにそのHuman Gateだった。
Qwenが残した成果物を見る。捨てる必要があるのか。続行できるのか。次のProviderへ渡してよいのか。
そこでHumanが判断した。
成果物は使える。Missionは継続できる。
ならば、続きを次のAIへ渡す。
DeepSeekが続きを受け取った
次のBuilderは、
DeepSeek V4 Flash Free
だった。
新しく作り直すのではない。Qwenが40分近くかけて作ったrun_report/をそのまま読み、Tests + Integrationを引き継ぐ。
今回のRecovery Relayで確認したかったのはここだ。モデルを切り替えられるか、ではない。
前のAIが実際に作った仕事を、次のAIが続けられるか。
DeepSeekは、その続きを受け取った。そして約5分半後。結果が返ってきた。
TEST_RESULT = OK
TEST_COUNT = 40
0 failures
0 errors
さらに、
BUILDER_RESULT_WRITTEN = yes
completed = true
self_test_passed = true
REMAINING_BLOCKERS = none
QwenがCoreを作る。Human Gateで状態を確認する。DeepSeekが続きを受け取る。TestとIntegrationを閉じる。
今回の流れは、こうなった。
03:30:15 T0
↓
Local Qwen
↓ 約40分 Implementation
Supervisor Stop
↓
Human Gate
↓
Recovery Relay
↓
DeepSeek V4 Flash Free
↓ 約5分半 Tests + Integration
40 Tests PASS
↓
Builder Result
↓
約53分
53分で、1時間RUNを達成した
今回、「1時間RUN」をどう定義するかは重要だった。
60分00秒までAIを強制的に動かし続けることが目的なら、今回のRunは未達になる。でもMISSION-007で確認したかったのは、それではない。
Humanが画面の前で逐一指示しなくても、Missionが動く。状態が残る。AIが成果物を作る。必要ならProviderを越える。本当に判断が必要な地点だけ、人間へ戻る。そしてMissionを続ける。
その一連のRuntimeを、1時間級の時間軸で成立させることだった。
今回、T0から約53分。その中でLocal Qwenが約40分実働し、Human Gateを一度通し、その続きをDeepSeekが閉じた。
だから今回は、
1時間RUN達成
として記録したい。
完璧なFull Autonomous Runではない。しかしHuman Gateを含めたAI LIFE OSの設計としては、むしろ今回の方が現実に近い。
Human Gateを残した意味
AIエージェントを自律化すると、すべてのHuman介入を失敗として扱いたくなる。でも、AI LIFE OSで目指しているものは少し違う。
Humanを消すことではない。Humanが判断しなくてもいいところから、Humanを外すことだ。
今回、Qwenが動いていた約40分間、人間はBuilderへ逐一指示していない。Compileごとに承認していない。ファイル生成ごとに確認していない。Missionを渡し、AIが仕事を続けた。
そして継続判断が必要になったところで、一度Humanへ戻った。その判断後は、DeepSeekが続きを処理した。
つまり、
Human
↓
Missionを渡す
↓
AIが長時間実行
↓
判断が必要な境界
↓
Human Gate
↓
次のAIへ
↓
Mission継続
ここまで来た。
これは「Humanがまだ必要だった」という話でもある。同時に、
Humanが53分間ずっと操作し続ける必要はなくなった
という話でもある。
Camp最終日に入れたQwenが、主役になった
今回もうひとつ面白かったのは、Local Qwenだった。
Summer Intensive Training Campでは、Claude、Hermes、OpenCode、Codexを4ペインへ並べた。そこへDeepSeek、Kimi、Geminiなどを接続していった。
そしてCamp最終日にLocal Qwenを入れた。当時はまだ、
「Local ModelをMission Runtimeのどこへ置けるのか」
を試している段階だった。
そのQwenが今回、
約40分、MISSION-007のBuilderを担当した。
M1 Max 64GBの中で動くLocal Modelがコードを書き、その成果物をCloud側のDeepSeekが引き継いだ。
Local Qwen
↓
Repository
↓
DeepSeek
LocalとCloudを分けるより、
Missionの中で役割を渡していく。
今回、その構成がかなり具体的になった。
完璧ではない。でも、もう動いている
もちろん修正点は残っている。
今回Humanが行ったRecovery Relayを、
BUILDER_TIMEOUT + resume_allowed=True
↓
Automatic Provider Relay
としてSupervisor自身が処理できれば、さらに自律度は上がる。
でも、今日はそこまで完璧にする必要はないと思う。
数日前には、
「4つのAIは、ひとつのMission Controlになれるのか」
を試していた。
そこから、
Local Qwenが40分近く本番のコードを書く。Supervisorが状態を管理する。Human Gateで判断する。DeepSeekが続きを受け取る。40本のTestを通す。約53分間、Missionをつなぐ。
ここまで来た。構想ではない。
もう実際に動いている。
次は、53分間に何が作られたのかを見る
今回はRunそのものを記録した。今日あらためてRepositoryを整理する。
Qwenは40分で具体的に何を作ったのか。DeepSeekは約5分半で何を補ったのか。生成されたRun Reportはどこまで使えるのか。Testは何を保証しているのか。設計と実装はどこまで一致したのか。
次は、53分のRunによって実際に残った成果物を確認する。それは別の記事としてまとめたい。
今回の記録は、ここまで。
3時間半かけて見直した設計を、実行へ渡した。Camp最終日に入れたLocal QwenがMissionを握った。約40分後、Human Gateへ戻った。そしてDeepSeekが続きを受け取った。
T0から約53分。
1時間Night Run、達成。
完璧な自律ではない。でもHumanとAIの境界を残したまま、Missionはここまで続いた。
そして3日間閉じなかったAIONを、
いったん、ここで閉じる。
いいなと思ったら応援しよう!
Buy me a coffee ☕
役に立ったら応援よろしくお願いします!