> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dureai.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# 세션, worktree, 복구

> Dure 관리형 에이전트의 소유권 모델과 각 복구 경로가 실제로 보장하는 범위입니다.

## 관리형 에이전트는 터미널 하나가 아니다

관리형 에이전트는 세 가지 identity를 묶는다.

* provider conversation
* Dure pane과 agent record
* Git worktree와 branch

Hmux가 provider process와 PTY를 소유하고, Dure는 versioned protocol을 통해
client로 접속한다. 이 process boundary 덕분에 앱 창을 닫아도 관리형 로컬
에이전트가 함께 종료되지 않는다.

## 다시 붙기

Dure가 다시 연결되면 host는 canonical screen snapshot과 그 뒤의 출력을 보낸다.
현재 화면 하나를 그리기 위해 전체 terminal log를 처음부터 재생할 필요가 없다.

Generation fence가 붙은 controller lease가 어느 client가 입력할 수 있는지 정한다.
추가 client는 기존 controller의 keyboard를 몰래 빼앗지 않고 관찰자로 붙을 수
있다.

<video controls muted playsInline title="같은 Hmux 소유 Codex 세션에 다시 연결하는 Dure" className="w-full aspect-video rounded-xl" poster="/images/hmux-app-reconnect.png" src="https://mintcdn.com/hebbian/gBhXllKfo-gr_XE_/videos/hmux-app-reconnect.webm?fit=max&auto=format&n=gBhXllKfo-gr_XE_&q=85&s=92c12c2f82d750e887a0a9fd47d7408c" data-path="videos/hmux-app-reconnect.webm">
  브라우저가 내장 영상을 지원하지 않는다.
  <a href="/videos/hmux-app-reconnect.webm">재접속 영상을 연다.</a>
</video>

## Worktree 소유권

Worktree 기반 에이전트는 각자의 작업 디렉터리와 branch를 받는다. Git index와
파일 수정은 격리되지만 port, process, credential, network 같은 운영체제 자원은
격리되지 않는다.

<Warning>
  Worktree는 보안 sandbox가 아니다. 에이전트가 할 수 있는 일은 provider의 승인
  설정과 현재 사용자 계정의 권한으로 결정된다.
</Warning>

## 서로 다른 세 가지 복구

| 사건                          | 결과                                                                                               |
| --------------------------- | ------------------------------------------------------------------------------------------------ |
| 앱 종료·앱 crash·webview reload | 관리형 host가 live process를 유지하고 Dure가 다시 붙는다.                                                       |
| Host process 종료             | live PTY와 process는 사라진다. 충분한 identity가 기록됐다면 Session Recovery가 provider-aware restart를 제안할 수 있다. |
| 컴퓨터 재부팅                     | 어떤 process도 살아남지 않는다. `hmux restore`는 저장한 shell recipe를 새 PTY에서 재생성한다.                           |

## 관리형 pane과 일반 pane

일반 terminal에서 agent CLI를 직접 실행해도 Dure는 실제 process tree와 terminal
증거를 보고 provider와 활동을 자동 인식한다. 사용자는 에이전트를 먼저 추가하거나
수동 등록하지 않고 평소처럼 터미널을 사용할 수 있다.

자동 인식은 관리형 전환과 같지 않다. 관리형 provider session은 Dure의 에이전트
추가 흐름으로 시작하거나, 검토된 경우 terminal pane에 표시되는 전환 동작을
사용한다. 전환은 정확한 provider conversation과 pane identity를 보존해야 하므로
안전한 경계에서만 실행된다.

SSH 프로젝트에도 같은 보장을 기대하기 전에는
[현재 한계](/ko/current-limits)를 확인한다.
