AI 진단 & Autopilot

에이전트가 멈춘 이유를 파악하고, 해당 시트를 백업 에이전트로 전환하며, 작업 도중 크래시나 연결 끊김이 발생한 에이전트를 Autopilot이 다시 이어서 실행하게 하세요.

에이전트가 작동을 멈추는 방식은 두 가지입니다. 하나는 프로세스는 살아 있지만 멈춰 버린 경우입니다. 할당량 제한, 로그인 프롬프트, 업셀 모달이 화면에 떠 있어 메시지가 전달되지 않습니다. 다른 하나는 프로세스가 죽는 경우입니다. 작업 도중 연결이 끊기거나 CLI가 종료됩니다. AI 진단은 첫 번째 경우를, Autopilot은 두 번째 경우를 처리합니다. 두 기능은 같은 곳에 있습니다.

상단 바에서 Orchestration Dashboard를 열거나 Command Palette에서 Open Orchestration Dashboard를 실행한 다음 Advanced → AI Diagnosis를 선택하세요. Tutorials → How-to → Autopilot을 선택하면 바로 해당 위치로 이동합니다.

Diagnose & restore stuck agents가 On으로 설정되고 With AI가 선택된 AI Diagnosis 설정 화면. claude-opus-5 기반 Claude와 gpt-5.6-sol 기반 Codex가 순서대로 나열된 체커 에이전트 목록이 있으며, 각각 자체 모델 선택기를 가지고 있음

멈춘 에이전트 진단 및 복구

에이전트 터미널로의 전달이 약 2분 동안 계속 실패하면, 설치된 AI CLI가 해당 터미널의 화면 텍스트를 읽고 무엇이 문제인지 알려 줍니다. 전달은 15초마다 재시도되며, 여덟 번째 실패에서 진단이 시작됩니다. 터미널이 백업 에이전트가 있는 차트 시트에 속해 있다면 시트가 자동으로 전환됩니다. 그 외의 터미널은 진단 결과가 알림으로 전달되므로 직접 대응할 수 있습니다. 정상 상태의 터미널은 검사하지 않습니다.

Diagnose & restore stuck agents는 기본적으로 켜져 있으며, 모든 팀, 차트, 연결된 터미널에 앱 전체로 적용됩니다. How to restore에서 다음 중 하나를 선택하세요.

  • With AI (recommended): 체커 AI가 먼저 멈춘 터미널의 화면을 읽고, 할당량 제한 또는 로그인 장벽이 확인된 경우에만 복구를 실행합니다. 단순히 바쁜 에이전트는 방해하지 않습니다.
  • Manual timer — no AI: 만료 시간만으로 복구합니다. 더 빠르고 완전히 로컬에서 동작하지만, 멈춘 에이전트와 긴 작업으로 바쁜 에이전트를 구분하지 못합니다.

체커 에이전트 순서

체커는 하나씩 차례로 시도됩니다. 체커가 설치되어 있지 않거나, 자체 한도에 도달했거나, 시간이 초과되면 다음 체커가 이어받습니다. 멈춘 터미널 자신의 제공자는 항상 건너뛰므로 에이전트가 스스로를 평가하는 일은 없습니다. Claude, Codex, Gemini, OpenCode, Qwen, Kimi, Grok, Hermes를 모두 체커로 사용할 수 있으며, 한 번에 최대 4개까지 지정할 수 있습니다. + Add checker, 순서 변경 화살표, Remove로 목록을 구성하세요. 아무것도 선택하지 않으면 해당 순서에서 처음으로 설치된 CLI가 사용됩니다.

각 체커는 자체 모델을 가집니다(v1.75.0부터). 에이전트 옆의 드롭다운을 열어 모델을 선택하거나, Default model로 두면 CLI의 기본 모델을 사용합니다.

체커는 제한된 권한으로 중립 디렉터리에서 헤드리스로 실행됩니다. 화면을 분류한 뒤 한 줄짜리 JSON으로 응답하며, 프로젝트에는 일절 접근하지 않습니다. 화면 텍스트는 최초 한 번 화면 읽기 동의를 하신 후에만 체커로 전송됩니다.

Autopilot (실패한 작업)

Autopilot은 작업 도중 죽거나 연결이 끊긴 에이전트를 다시 시작합니다. 에이전트의 세션을 이어서 실행하거나 해당 작업을 시트의 백업 에이전트로 전환합니다. 질문에 답하거나 선택기에 입력하는 일은 절대 하지 않습니다. 기본값은 꺼짐입니다. Autopilot (failed tasks) 카드를 On으로 전환하세요. 켜면 AI 진단에서 사용하는 화면 읽기 동의도 함께 부여됩니다.

Agent Orchestration → AI Diagnosis의 Autopilot (failed tasks) 카드. On 및 Watching 상태이며, Resume the session, Switch to backup, Wait for you 타일 아래에 재개된 에이전트의 Recent decisions 목록이 표시됨

켜면 카드에 *Watching. Acts only when a running task goes quiet, its process exits, or a message to it stalls. Idle tabs are never checked.*라고 표시됩니다. How it works를 누르면 애니메이션 안내를 볼 수 있습니다.

작동 시점

Autopilot은 사용자가 보낸 프롬프트를 처리 중인 터미널만 살펴봅니다. 다음 세 가지가 트리거입니다.

트리거해당 조건
The process exits프롬프트가 아직 끝나지 않은 상태에서 CLI가 오류와 함께 종료됩니다. /exit나 Ctrl-D로 의도적으로 종료하면 정상 종료로 처리되어 그대로 둡니다.
The task goes quiet실행 중인 작업이 출력을 멈추면, 체커가 화면을 읽고 실제로 멈췄는지 확인합니다.
A message stalls전달이 계속 실패하고 AI 진단이 연결 끊김을 보고합니다.

수행 동작

  • 제자리에서 계속하기. v1.76.1부터, Devin 에이전트의 연결이 끊겼지만 프로세스는 여전히 실행 중이고 자체 오류가 계속 진행하려면 메시지를 보내라고 요청하는 경우, Autopilot은 가장 먼저 그 자리에서 해당 메시지를 보냅니다. 아무것도 중지하거나 다시 생성하지 않습니다. 이런 프로세스를 재시작하면 정상 동작 중인 CLI를 멈추고 세션 잠금과 경합하게 될 뿐이었으며, 실제 환경에서는 Claude가 6회였던 것에 비해 Devin은 4일 동안 40회 재시작이 발생했습니다. 제자리에서 계속한 뒤에 작업이 다시 멈추면 평소처럼 재시작합니다.
  • 세션 재개. Autopilot은 해당 CLI 자체의 resume 명령으로 같은 터미널에서 에이전트를 다시 시작하므로, 같은 세션과 대화 기록이 그대로 돌아옵니다. Claude Code, Codex, Gemini, Cursor, OpenCode, Grok, Kimi, Qwen, Amp, Cline, Hermes, Antigravity, Qoder에서 동작합니다. 이후 Autopilot은 다음 단계로 넘어가기 전에 교체된 프로세스가 실제로 살아 있는지 확인합니다. 이전 프로세스의 종료 알림이 늦게 도착해 새 프로세스를 조용히 제거하고, 출력 없는 에이전트가 계속 실행되는 상황은 더 이상 발생하지 않습니다.
  • 계속하도록 요청. After a resume, ask the agent to continue가 켜져 있으면(기본값), 재개된 에이전트에게 한 가지 지시가 전달됩니다. 중단된 지점부터 계속하고, 완료된 단계를 다시 하지 말며, 중단된 단계는 반복하기 전에 그 결과를 먼저 확인하라는 내용입니다.
  • 백업으로 전환. 치명적인 오류나 재개할 세션이 없어서 탭을 재개할 수 없는 경우, 백업 에이전트가 있는 차트 시트는 브리프와 함께 작업을 인계합니다. 기존 탭은 열린 채로 유지됩니다.
  • 사용자 대기. 질문, 선택기, 입력하다 만 초안, 로그인 장벽이 화면에 있거나 그 밖에 상황이 불분명하면 아무것도 입력하지 않습니다. 질문, 선택기, 초안은 그대로 둡니다. 로그인 장벽과 불분명한 화면은 알림으로 알려 드립니다.

재시도 제한

Autopilot은 첫 번째 재시작 전에 5초를 기다립니다. 같은 프롬프트가 다시 실패하면 두 번째 재시작 전에 20초, 세 번째 재시작 전에 60초를 기다립니다. 그 이후에는 중단하고 *Stopped retrying "…" after 3 resumes; waiting on you.*라고 표시되는 Activity 카드로 알려 드립니다.

시도 횟수는 전달 단위가 아니라 인시던트 단위, 즉 실패한 작업 단위로 집계됩니다. Autopilot 자체의 "중단한 지점부터 계속하세요" 후속 메시지는 시도 횟수를 그대로 유지한 채 인시던트를 이어 가므로, Autopilot이 스스로 타이머를 다시 시작해서 멈춘 작업이 계속 중지와 재개를 반복하는 일은 더 이상 없습니다(v1.76.1 이전에는 탭 하나가 7분 동안 4번의 사이클을 거칠 수 있었습니다). 제자리에서 계속하는 것도 같은 인시던트의 한 번의 시도로 계산됩니다. 사용자가 보낸 새 프롬프트만이 새로운 인시던트를 시작하고 횟수를 초기화합니다.

이와 별도로, 하나의 터미널은 한 시간에 최대 6번까지만 계속하거나 재개됩니다. 그 이상은 Autopilot이 대기하며 *"Agent name" has been continued or resumed 6 times this hour; Autopilot is waiting on you.*라고 알려 드립니다.

최근 결정

Recent decisions에는 이 컴퓨터에서 수행된 최근 5개의 동작이 표시됩니다. 각 행에는 시간, 프롬프트, 프로젝트, 사유가 표시되며 Resumed, Switched to backup, Couldn't resume, Continued, Stopped retrying, Waiting on you 중 하나의 배지가 붙습니다. Activity 카드에는 Autopilot 칩이 표시됩니다. 전체 기록은 추가 전용으로 ~/.1devtool/orchestration/autopilot-ledger.jsonl에 저장됩니다.

일시 중지 또는 끄기

  • Pause를 누르면 일시 중지를 해제할 때까지 Autopilot이 아무것도 재개하거나 전환하지 않습니다. Diagnose & restore stuck agents의 백업 전환은 계속 동작합니다.
  • Off는 Autopilot을 중지하고 일시 중지 상태도 해제합니다.

설정을 바꾸지 않고 한 번의 실행에서만 Autopilot을 끄려면 ONEDEVTOOL_AUTOPILOT=off로 1DevTool을 시작하세요. 그러면 카드에 *Off for this launch.*라고 표시됩니다.