> ## Documentation Index
> Fetch the complete documentation index at: https://manual.seahorse.dnotitia.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> Scheduler — 에이전트 작업을 정해진 시각·주기로 자동 실행 (단발/Cron 반복). Flow Studio·도구 호출 결과를 정기 보고로 발행

# Scheduler

# Scheduler

**경로**: 좌측 사이드바 상단 **⋯ 메뉴** → **Scheduler**

에이전트 작업·Flow·도구 호출을 정해진 시각이나 주기로 자동 실행합니다. 일일 KPI 보고, 주간 PR 요약, 정기 인덱싱 등 **반복 자동화의 핵심 메뉴**.

<Frame>
  <img src="https://mintcdn.com/dnotitia-328335e7/3mgjFAVO5t1rKplH/images/image-41.png?fit=max&auto=format&n=3mgjFAVO5t1rKplH&q=85&s=05eae77d21885fc5dafa343f50c2f68a" alt="Image" width="1546" height="609" data-path="images/image-41.png" />
</Frame>

## 핵심 개념

| 개념           | 설명                                                                       |
| ------------ | ------------------------------------------------------------------------ |
| **Schedule** | 실행 단위 — 이름 + 트리거 + 실행 대상 + 옵션                                            |
| **트리거 종류**   | 단발 (One-time) / 반복 (Cron) / 조건부 (이벤트)                                    |
| **실행 대상**    | Flow ([Flow Studio](/agent-chat/toolbar/flow-studio)) / 프롬프트 / 도구 호출 시퀀스 |
| **실행 컨텍스트**  | 현재 에이전트 + 도구 + Storage + System Prompt 그대로 사용                            |
| **타임존**      | 사용자 지정 (기본: 사용자 프로필의 timezone, 보통 `Asia/Seoul`)                          |

## UI 구성

화면 상단에는 **Tasks / History 2 개 탭** 이 있으며, 우측 상단 **Create Task** 버튼으로 신규 예약을 등록합니다.

| 탭           | 내용                    |
| ----------- | --------------------- |
| **Tasks**   | 등록된 예약 목록 — 활성/비활성 포함 |
| **History** | 실행 이력 — 성공/실패/타임아웃    |

### Tasks 탭 컬럼

| 컬럼           | 설명                            | 예시                                         |
| ------------ | ----------------------------- | ------------------------------------------ |
| **Name**     | 예약 이름                         | `daily-pr-report`                          |
| **Schedule** | 트리거 (One-time ISO / Cron 표현식) | `0 9 * * MON-FRI`                          |
| **Flow**     | 연결된 실행 대상                     | `daily-pr-summary`                         |
| **Status**   | 활성 상태                         | `Active` / `Paused` / `Failed` / `Running` |
| **Next Run** | 다음 실행 예정 시각                   | `2026-04-23 09:00`                         |
| **Last Run** | 마지막 실행 시각 + 결과                | `Yesterday 09:00 · Success`                |
| **Actions**  | ▶ · ⏸ · ✏ · 🗑                | —                                          |

### 빈 상태

등록된 예약이 없으면 `No scheduled tasks. Click "Create Task" to add one.` 안내가 표시됩니다.

### History 탭 컬럼

| 컬럼            | 설명          | 예시                                             |
| ------------- | ----------- | ---------------------------------------------- |
| **Task**      | 실행된 예약 이름   | `daily-pr-report`                              |
| **Started**   | 실행 시작 시각    | `2026-04-23 09:00:02`                          |
| **Completed** | 실행 종료 시각    | `2026-04-23 09:00:18`                          |
| **Duration**  | 소요 시간       | `16s`                                          |
| **Status**    | 결과          | `Success` / `Failed` / `Timeout` / `Cancelled` |
| **Error**     | 실패 시 에러 메시지 | (실패 시만)                                        |

개별 행 클릭 시 각 노드의 입출력·로그 상세 확인.

### 상태 (Status)

| 값                | 의미                      |
| ---------------- | ----------------------- |
| **Active** (녹색)  | 정상 활성. 트리거 시각에 자동 실행    |
| **Paused** (회색)  | 일시 중지 — 트리거 무시          |
| **Failed** (빨강)  | 마지막 실행 실패 — 로그 확인 후 재실행 |
| **Running** (파랑) | 현재 실행 중                 |

### Actions

* ▶ **수동 실행** — 트리거 무시하고 즉시 실행 (테스트용)
* ⏸ **일시 중지 / 재개**
* ✏ **편집** — 트리거·대상 변경
* 🗑 **삭제** — 예약 제거 (실행 이력은 유지)

## Create Task (신규 예약)

| 필드              | 설명                 | 예시                           |
| --------------- | ------------------ | ---------------------------- |
| **이름**`*`       | 예약 식별              | `daily-pr-report`            |
| **설명**          | 용도 메모              | `매일 18시 PR 요약을 #dev-daily 로` |
| **트리거 종류**`*`   | One-time / Cron    | `Cron`                       |
| **One-time 시각** | 단발 예약 시 ISO 시각     | `2026-04-25 09:00`           |
| **Cron 표현식**    | 반복 예약 시 5 필드 cron  | `0 9 * * MON-FRI`            |
| **타임존**         | 실행 기준 시간대          | `Asia/Seoul`                 |
| **실행 대상**`*`    | Flow 선택 또는 프롬프트 입력 | `daily-pr-summary` Flow      |
| **타임아웃**        | 실행 최대 시간 (초)       | `300` (기본 60\~300초)          |
| **재시도**         | 실패 시 자동 재시도 횟수     | `2`                          |
| **알림**          | 실패 시 Slack/이메일 알림  | (선택)                         |

## Cron 표현식 빠른 참고

5 필드 형식: `분 시 일 월 요일`

| Cron              | 의미                    |
| ----------------- | --------------------- |
| `*/10 * * * *`    | 10 분마다                |
| `0 * * * *`       | 매시 정각                 |
| `0 9 * * *`       | 매일 09:00              |
| `0 9 * * MON-FRI` | 평일 09:00              |
| `0 9 * * MON`     | 매주 월요일 09:00          |
| `0 18 * * FRI`    | 매주 금요일 18:00          |
| `0 0 1 * *`       | 매월 1일 00:00           |
| `0 9 1,15 * *`    | 매월 1일·15일 09:00       |
| `0 9 L * *`       | 매월 마지막 날 09:00 (지원 시) |

<Info>
  **Cron 문법 도우미** — UI 의 입력란 옆 `?` 아이콘에 흔한 패턴 5\~6 가지가 드롭다운으로 제공됩니다. 자신 없으면 거기서 선택 후 미세 조정.
</Info>

## 일반 활용 예

| 시나리오          | Cron           | 실행 대상                                                                |
| ------------- | -------------- | -------------------------------------------------------------------- |
| 일일 KPI 리포트    | `0 9 * * *`    | [PostgreSQL 일일 지표 Flow](/agent-chat/recipes/postgres-sql-automation) |
| 주간 PR 요약      | `0 18 * * FRI` | [GitHub PR 일일 보고 Flow](/agent-chat/recipes/github-pr-review)         |
| 신규 문서 일괄 요약   | `0 2 * * *`    | [대량 문서 요약](/agent-chat/recipes/bulk-document-summarize) — 새 업로드만     |
| Slack 채널 모니터링 | `*/10 * * * *` | 키워드 알림 → Slack DM                                                    |
| 월간 임원 보고      | `0 9 1 * *`    | [보고서 자동 발행](/agent-chat/recipes/scheduled-report)                    |
| 인덱스 정합성 점검    | `0 3 * * SUN`  | 주말 새벽 데이터 품질 체크                                                      |

## 실행 이력

각 Schedule 의 행 클릭 → 상세 페이지에서:

| 컬럼        | 설명                                             |
| --------- | ---------------------------------------------- |
| **시작 시각** | 실행 트리거된 시각                                     |
| **소요 시간** | 실행 완료까지 (초)                                    |
| **상태**    | `Success` / `Failed` / `Timeout` / `Cancelled` |
| **출력 요약** | 마지막 메시지·반환값 일부                                 |
| **로그**    | Tool Call·LLM 호출·에러 스택                         |

실행 이력은 일정 기간(기본 30 일) 보관되며, 보존 기간은 운영자 정책에 따라 다를 수 있습니다.

## 운영 주의

<Warning>
  * **타임존 확인 필수** — Cron 은 지정한 타임존 기준. UTC 와 KST 혼동 시 9 시간 어긋남.
  * **무한 루프·과한 빈도** — `* * * * *` (매분) 같은 빈도는 LLM 비용을 폭증시킵니다. 최소 5\~10 분 간격 권장. 한도·요금: [Billing](/billing)
  * **동시 실행** — 이전 실행이 끝나기 전에 다음 트리거가 오면 큐잉 또는 스킵될 수 있습니다 (정책에 따라).
  * **실패 알림 필수 설정** — 조용히 실패하면 다음 트리거까지 발견 못 함. Slack/이메일 알림 권장.
  * **타임아웃** — Flow 가 LLM 답변을 5 분 이상 기다리면 잘릴 수 있음. 큰 작업은 타임아웃 늘리거나 분할.
  * **퇴사·이직 시** — 본인이 만든 Schedule 은 명시적으로 인수인계하지 않으면 계속 실행됩니다. 정기 정리.
</Warning>

<Info>
  **디버깅 팁**

  * 신규 예약 등록 후 **▶ 수동 실행** 으로 1 회 테스트 → 의도대로 동작하는지 확인 후 활성화
  * 실패가 잦은 예약은 [Tool 호출 로그](/console/agent-ops/agent-tool/tool-detail) 와 함께 보면 원인 추적이 쉬움
  * 같은 Flow 를 여러 채널·시간대로 발행하려면 **Schedule 을 복수 등록** (Flow 는 1 개 재사용)
</Info>

## 관련 문서

* [Flow Studio](/agent-chat/toolbar/flow-studio) — 실행 대상 Flow 작성
* [PostgreSQL 자동화](/agent-chat/recipes/postgres-sql-automation) — 정기 SQL 리포트
* [보고서 자동 발행](/agent-chat/recipes/scheduled-report) — 정기 리포트 워크플로
* [GitHub PR 리뷰 요약](/agent-chat/recipes/github-pr-review) — 일일 PR 보고
* [Slack 알림 자동화](/agent-chat/recipes/slack-notification) — 실패 알림 설정
