# 승인

> 에이전트가 되돌릴 수 없는 일을 하기 전의 관문 — 무엇이 걸리고, 무엇을 보게 되고, 승인할 사람이 없으면 어떻게 되는가.

**승인**은 에이전트가 되돌릴 수 없는 일을 하기 전에 Endue 가 멈춰 서서 묻는 것입니다. 일어나기 전에 정확히 어떤 행동을 어떤 인자로 하려는지 보게 됩니다.

## 무엇이 걸리는가

[커넥터](/ko/docs/connect/overview/)가 제공하는 모든 작업은 세상에 무엇을 하는지에 따라 분류돼 있습니다. 그중 두 부류는 항상 사용자 앞에서 멈춥니다.

| 분류 | 예시 | 관문 |
| --- | --- | --- |
| **읽기** | 메일 검색, 파일 목록, 페이지 읽기, 대시보드 조회 | 없음 |
| **쓰기** | 문서 생성, 행 추가, 메일 초안 작성, 작업 갱신 | 없음 |
| **발송** | 메일 발송, 채널 게시, 글 공개, 댓글 답글, 빌드 트리거 | **있음** |
| **파괴** | 파일 삭제, 레코드 삭제, 알림 무음 처리 | **있음** |

기준은 "무언가를 바꾸는가" 가 아니라 "되돌릴 수 있는가, 그리고 다른 사람에게 닿는가" 입니다. 초안을 만드는 것은 쓰기이고, 그것을 보내는 것은 발송입니다.

<Aside type="caution" title="이 관문은 설정으로 바꿀 수 없습니다">
  발송과 파괴 작업은 항상 묻습니다. 에이전트별로도 계정별로도 이것을 끄는 설정은 없습니다.
  자기 관문을 스스로 끌 수 있는 에이전트라면 그건 관문이 아닐 것입니다.
</Aside>

## 디바이스에서

에이전트의 [디바이스](/ko/docs/build/devices/)는 따로 정한 규칙을 따릅니다.

| 디바이스 | 먼저 묻는 것 | 묻지 않는 것 |
| --- | --- | --- |
| **endue Computer** | 없음 | [워크스페이스](/ko/docs/build/workspace/)의 파일 읽기·쓰기, 프로그램 실행 |
| **endue for Chrome** | 클릭, 입력, 키 누르기, 양식 채우기, 파일 업로드, 탭 닫기 | 페이지 열기·읽기, 스크롤, 스크린샷 |

워크스페이스는 에이전트를 위해 마련된 기기 위의 자기 폴더라서, 그 안의 일은 호출마다 멈추지 않습니다. 웹 페이지는 다릅니다. 클릭 한 번이 다른 사람에게 닿는 무언가를 제출할 수 있습니다.

## 직접 연결

내가 운영하는 MCP 서버나 HTTP API 인 [직접 연결](/ko/docs/connect/direct-connections/) 호출은 분류돼 있지 않아서, 기본적으로 **매번 묻습니다.** 연결 설정에서 도구별(MCP)이나 GET 같은 메서드별(HTTP)로 **항상 허용**을 켤 수 있습니다. 루틴과 채널은 항상 허용한 것만 쓸 수 있습니다.

## 무엇을 보고 무엇이 일어나는가

실행이 멈추고 어떤 작업을 어떤 인자로 하려는지 보여줍니다. 수신자, 제목, 본문, 파일, 레코드까지요.

**승인**하면 방금 본 그대로 행동이 실행됩니다. 승인은 포괄적인 권한 부여가 아닙니다. 그 인자를 가진 그 행동 하나를 허가하는 것입니다.

**거절**하면 그 행동은 일어나지 않습니다. 에이전트는 그 사실을 전달받고 계속 일합니다. 대개는 멈추지 않고 다른 초안을 제안하는 식으로 맞춰갑니다.

승인 전에 인자를 고치는 기능은 없습니다. 인자가 잘못됐으면 거절하고 무엇이 달라져야 하는지 말하세요. 에이전트가 고친 행동을 다시 들고 옵니다.

## 지켜보는 사람이 없는 실행

[루틴](/ko/docs/automate/routines/)처럼 아무도 보고 있지 않은 실행은 물을 수가 없습니다. 그런 실행에서 승인이 필요한 행동은 기다리는 대신 **거절**됩니다.

의도된 것입니다. 누군가 알아챌 때까지 몇 시간을 조용히 매달려 있는 행동이, 분명하게 실패하는 행동보다 나쁩니다. 예약된 작업이 무언가를 보내야 한다면, 스스로 보내는 대신 초안을 만들어 알려주도록 설계하세요.

## 비슷한 관문들

실행을 멈추고 사용자의 결정을 기다리는 것이 둘 더 있고, 방식은 같습니다.

- **에이전트가 갖지 않은 [스킬](/ko/docs/capabilities/skills/).** 실패하는 대신 요청합니다. 대화 안에서 주거나 거절하면 됩니다.
- **사용자만 아는 정보가 필요할 때의 [질문](/ko/docs/work/questions/).**

## 한계

- 승인은 대화에서 답합니다. 기다리는 것이 있다는 사실은 [활동](/ko/docs/work/activity/) 보드에 보입니다.
- 관문에서 인자를 고칠 수는 없습니다. 거절하고 방향을 다시 잡아주세요.
- 승인은 행동 하나에 대한 것입니다. 같은 실행에서 다음 발송이 있으면 다시 묻습니다.
- 거절된 행동을 나중에 재생할 수는 없습니다. 에이전트가 다시 제안해야 합니다.

## 관련 문서

<CardGrid>
  <LinkCard
    title="연결 가능한 서비스"
    href="/ko/docs/connect/available-connectors/"
    description="모든 커넥터, 그리고 그중 몇 개의 작업이 관문에 걸리는지."
  />
  <LinkCard
    title="루틴"
    href="/ko/docs/automate/routines/"
    description="일정을 잡는 법, 그리고 지켜보는 사람이 없는 실행이 하지 않는 일."
  />
  <LinkCard
    title="보안과 권한"
    href="/ko/docs/account/security/"
    description="에이전트가 닿을 수 있는 것과 닿을 수 없는 것."
  />
</CardGrid>
