# 루틴

> 반복되는 일을 일정에 올리기 — 루틴이 어떻게 돌고, 무엇을 만들고, 지켜보는 사람이 없는 실행이 왜 아무것도 보내지 않는가.

**루틴**은 Endue 를 열어두든 아니든 에이전트가 일정에 따라 수행하는 지시입니다.

## 언제 쓰는가

같은 요청이 또 돌아올 때입니다. 아침 받은편지함 브리핑, 월요일 보고, 바뀌지 않았어야 할 것을 밤사이 점검하는 일 같은 것들이죠. 같은 것을 에이전트에게 세 번 시켰다면 그건 루틴입니다.

## 만들기

가장 간단한 방법은 말하는 것입니다. 에이전트와의 대화에서 무엇을 언제 해야 하는지 말하면 — *"평일 아침 8시마다 이걸 해줘"* — 루틴을 만들고, 사용자는 그것을 검토하면 됩니다.

<Steps>

1. **작업부터 제대로 만드세요.** 먼저 손으로 한 번 돌려보세요. 루틴은 시킨 것을 그대로 되풀이합니다. 애매함까지 포함해서요.

2. **일정을 정합니다.** 루틴은 시간대가 붙은 반복 일정으로 돕니다 — Asia/Seoul 기준 평일 08:00, 매달 1일, 네 시간마다 같은 식입니다.

3. **산출물이 어디로 갈지 말합니다.** 대개 [아티팩트](/ko/docs/capabilities/artifacts/)이고, 그것을 가리키는 알림과 함께 기다리고 있습니다.

4. **처음 몇 번의 실행을 지켜보세요.** 의도한 것과 에이전트가 하는 것 사이의 틈은 곧바로 드러나고, 그때 고치는 것이 가장 쌉니다.

</Steps>

## 실행마다 일어나는 일

루틴이 발동하면 에이전트는 사용자가 보낸 것처럼 그 지시를 수행하고, 결과가 작업 공간에 쌓입니다. 끝나면 알림이 오고, 실패해도 알림이 옵니다. [알림과 인박스](/ko/docs/work/inbox/)를 보세요.

계속 실패하는 루틴은 중지되고 그 사실을 알려줍니다. 의도된 것입니다. 일주일 동안 매시간 재시도하는 망가진 루틴은 멈춰 서서 말해주는 루틴보다 나쁩니다.

## 승인할 사람이 아무도 없다

예약된 작업에 대해 가장 중요하게 이해해야 할 부분입니다.

지켜보는 사람이 없는 실행은 아무것도 물을 수 없습니다. 평소라면 [승인](/ko/docs/work/approvals/)을 위해 멈췄을 행동 — 메일 발송, 채널 게시, 삭제 — 은 대기열에 쌓이는 게 아니라 **거절**됩니다.

그것을 전제로 설계하세요.

| 이렇게 말고 | 이렇게 |
| --- | --- |
| "요약을 메일로 보내줘" | "요약을 아티팩트로 써줘" — 알림이 그리로 데려다줍니다 |
| "브리핑을 Slack 에 올려줘" | 읽어본 뒤 직접 올릴 아티팩트 |
| "급한 건 답장해줘" | "급한 건 답장 초안을 써줘" — 초안 작성은 관문에 걸리지 않습니다 |

[질문](/ko/docs/work/questions/)도 마찬가지입니다. 판단이 필요한 루틴에는 물을 사람이 없으니, 판단이 필요 없을 만큼 지시를 구체적으로 쓰세요.

<Aside type="tip" title="루틴에 모델을 고정하세요">
  루틴은 에이전트 기본값과 무관하게 자기 모델을 쓸 수 있습니다. 에이전트를 다시 손보는 동안에도
  예약 작업의 비용과 행동이 흔들리지 않습니다.
</Aside>

## 루틴 관리하기

루틴은 에이전트별로 나열되고, 각각 일정·기록·만들어낸 실행을 담은 자기 페이지를 갖습니다. 언제든 중지·수정·취소할 수 있고, 시키면 에이전트가 자기 루틴을 조회하고 관리할 수도 있습니다.

## 한계

- 지켜보는 사람이 없는 실행은 관문에 걸리는 행동을 거절합니다. "미리 승인" 은 없습니다.
- 루틴은 에이전트 하나에 속하고 지시 하나를 담습니다.
- 반복 실패하면 무한히 재시도하지 않고 루틴을 중지합니다.
- 루틴은 Endue 의 서버에서 돌기 때문에 사용자의 컴퓨터에 있는 것에는 닿지 못합니다.

## 관련 문서

<CardGrid>
  <LinkCard
    title="승인"
    href="/ko/docs/work/approvals/"
    description="예약된 실행이 발송을 거절하는 이유."
  />
  <LinkCard
    title="아티팩트"
    href="/ko/docs/capabilities/artifacts/"
    description="예약 작업의 산출물이 있어야 할 곳."
  />
  <LinkCard
    title="알림과 인박스"
    href="/ko/docs/work/inbox/"
    description="루틴이 끝났거나 실패한 것을 알게 되는 방식."
  />
</CardGrid>
