Articlelangchain.com·2026년 10월 28일·0

How to Build Proactive, Always-On Agents with the Schedules SDK in Managed Deep Agents

Quick Summary

Managed Deep Agents는 cron 서버와 Schedules SDK를 통해 기억 갱신, 선제적 알림, 정보 선별, 후속 확인과 에이전트 조율을 수행하는 상시 작동 에이전트의 정적·동적 예약 실행을 지원한다.

How to Build Proactive, Always-On Agents with the Schedules SDK in Managed Deep Agents 관련 대표 이미지

🖼️ 인포그래픽

How to Build Proactive, Always-On Agents with the Schedules SDK in Managed Deep Agents 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

How to Build Proactive, Always-On Agents with the Schedules SDK in Managed Deep Agents의 핵심 내용을 4단계로 요약한 인포그래픽
How to Build Proactive, Always-On Agents with the Schedules SDK in Managed Deep Agents 핵심 내용을 4단계로 압축한 4컷 인포그래픽

💡 한 줄 요약

Managed Deep Agents는 cron 서버와 Schedules SDK를 통해 기억 갱신, 선제적 알림, 정보 선별, 후속 확인과 에이전트 조율을 수행하는 상시 작동 에이전트의 정적·동적 예약 실행을 지원한다.

📌 핵심 요약

  • Nathan Drezner는 2026년 10월 28일 글에서 선제적 에이전트의 핵심 메커니즘으로 cron 기반 실행을 제시하며, LangSmith의 Managed Deepagent 실행 중 70% 이상이 사람의 메시지가 아닌 예약 실행에서 발생한다고 밝혔다.
  • cron은 대화 내용을 장기 기억으로 압축하는 ‘dreaming’, 목표를 향한 선제적 행동, Slack·Email 정보 선별, 사용자 알림, 비동기 하위 작업의 진행 상황 확인에 활용될 수 있다.
  • 구현에는 일정·프롬프트·필요한 스킬과 권한을 지원하고 실행 집중 시 jitter로 부하를 분산하는 견고한 cron 서버와, 에이전트가 통제된 방식으로 예약을 설정·수정할 수 있는 인터페이스가 필요하다.
  • LangSmith Deployments에서 호스팅되는 Managed Deep Agents는 내장 cron 서버를 제공하며, 예약 생성 주체를 기준으로 스레드와 메모리를 사용하는 예약 실행을 지원한다. 정적 예약 예제는 schedules/ 파일에서 America/Los_Angeles 시간대의 평일 오전 8시에 영업 보고서를 확인하고 KPI 요약을 보내도록 정의한다.
  • Schedules SDK를 도구로 감싸면 실행 중 사용자별 예약 생성·조회·삭제를 제공할 수 있다. 반복 실행에는 cron을, check_in_later 같은 일회성 실행에는 현재 UTC 시각에 지정한 분을 더한 at을 사용하는 예제가 제시된다.

🧩 주요 포인트

  1. 예약 실행 비중 70% 이상이라는 관찰 → 이 글이 제시하는 선제적 에이전트의 중심은 사용자 입력을 기다리는 응답에서 주기적으로 시작되는 실행으로 이동한다.
  2. cron 서버와 통제된 예약 인터페이스의 결합 → 실행 시점뿐 아니라 스킬·권한·부하 분산과 에이전트의 예약 조작 방식까지 함께 설계해야 한다.
  3. 정적 예약과 Schedules SDK 기반 동적 예약의 병행 → 개발자가 정한 기본 업무와 사용자가 나중에 요청하는 반복·일회성 작업을 같은 예약 기능으로 지원할 수 있다.

🧠 상세 정리

1. 선제적 에이전트를 움직이는 단순한 메커니즘

Nathan Drezner는 2026년 10월 28일 글에서, 어떤 개념을 배운 뒤 곳곳에서 발견하게 되는 바더 마인호프 현상을 소프트웨어 설계 패턴에 빗대며 이야기를 시작한다. 저자는 새롭게 등장하는 선제적 에이전트 시스템 대부분이 50년 넘게 사용된 운영체제 원리인 cron으로 에이전트 실행을 예약하는 단순한 구조에 기반한다고 관찰한다. Muse, Instinct, Dots, Claude Duet, Hone 등의 출시를 선제적이고 상시 작동하는 에이전트 흐름의 사례로 들며, 사용자가 매번 지시하지 않아도 업무를 수행하는 특성을 설명한다. 이러한 방향을 뒷받침하는 수치로 LangSmith의 Managed Deepagent 실행 중 70% 이상이 사람의 메시지가 아닌 예약 실행에서 발생한다고 제시하지만, 개별 사례의 구체적인 구현은 설명하지 않는다.

2. 기억 갱신과 목표 기반의 선제적 행동

cron이 여는 첫 번째 기능은 오랜 시간에 걸쳐 사용자에 관한 사실을 기억하는 것이다. 글은 이전 대화를 더 밀도 높은 기억으로 압축하는 백그라운드 작업을 ‘dreaming’이라고 부르며, 예를 들어 하루에 한 번 대화를 돌아보고 배운 내용을 장기 기억에 반영하는 예약 실행으로 구현할 수 있다고 설명한다. 두 번째 기능은 에이전트가 달성해야 할 역할이나 목표를 바탕으로 먼저 행동하거나 사용자에게 연락하는 것이다. 범용 에이전트라면 다가오는 마감, 미완료 대화의 후속 확인, 업무 관련 소식을 다룰 수 있고, Hone 같은 전문 에이전트라면 명시적 목표를 향해 움직인다. 예를 들어 한 시간마다 cron이 에이전트를 실행해 목표를 진전시킬 새로운 행동을 탐색하게 하고, 그 결과를 사용자에게 선제적 메시지로 전달하는 방식이다.

3. 정보 선별, 후속 알림과 에이전트 조율

상시 작동 에이전트의 또 다른 용도는 Slack이나 Email 같은 정보원을 살피고 사용자에게 관련성 있는 메시지만 알리는 것이다. 글은 10분마다 에이전트를 실행해 이벤트 흐름을 확인하고 주목할 내용을 통지하도록 하는 구현을 예로 든다. cron은 백그라운드 감시에만 쓰이는 것이 아니라, 사용자가 특정 시점에 무언가를 상기시켜 달라고 요청했을 때 해당 시점에 깨어나 알림을 보내는 데도 활용된다. 여러 에이전트의 조율에서는 하나의 오케스트레이터가 cron으로 에이전트 집단을 감시하며, 비동기 하위 작업의 완료를 기다리는 동안 잠들었다가 일정한 간격으로 다시 실행되어 진행 상황을 확인할 수 있다. 따라서 글에서 예약 실행은 정보 감시, 사용자 요청에 따른 알림, 하위 작업의 진행 확인을 연결하는 공통 수단으로 제시된다.

4. 구현을 위한 두 가지 핵심 구성요소

저자는 이러한 에이전트를 만들기 위해 일반적으로 견고한 cron 서버와 에이전트 친화적인 인터페이스라는 두 가지 요소가 필요하다고 정리한다. cron 서버는 개발자가 필요한 일정과 실행할 프롬프트를 쉽게 등록할 수 있어야 하며, 실행에 특정 스킬이나 권한이 필요하다면 그 정보도 포함할 수 있어야 한다. 특정 시점에 실행이 많이 몰릴 경우에는 실행 시점을 조금씩 분산하는 jitter로 부하를 나누어야 한다고 설명한다. 다른 한편으로 후속 알림처럼 에이전트가 예약 자체를 다루는 기능에는 예약을 설정하고 수정하기 쉬우면서도 통제되는 인터페이스가 필요하다. 글은 서버의 실행 기능과 에이전트가 예약을 조작하는 접점을 구분해 설명하며, 두 요소를 선제적 행동을 구현하는 기반으로 제시한다.

5. Managed Deep Agents의 실행 방식과 정적 예약

LangSmith Deployments에서 호스팅되는 Managed Deep Agents는 에이전트 실행을 동적으로 시작할 수 있는 내장 cron 서버를 제공한다. 글은 예약 실행을 정해진 일정에 전달된 프롬프트를 실행하는 것으로 설명하며, 이때 스레드와 메모리는 예약을 만든 주체를 기준으로 사용된다고 밝힌다. 예약은 에이전트 정의 안에 정적으로 포함하거나, 실행 중 Schedules SDK를 호출하는 도구를 통해 동적으로 생성할 수 있다. 정적 예약 예제는 schedules/daily_digest.py에서 define_schedule을 사용하고, cron을 ‘0 8 * * 1-5’, 시간대를 ‘America/Los_Angeles’로 지정한다. 이 설정은 평일 오전 8시에 도구로 영업 보고서를 확인하고 KPI 요약을 보내도록 하여, 에이전트의 기본 설계에 고정된 정기 업무를 포함하는 방법을 보여준다.

6. Schedules SDK로 만드는 동적·일회성 예약

동적 예약은 개발 단계에서 미리 예상하지 못한 반복 작업도 최종 사용자가 에이전트에게 요청해 설정할 수 있도록 한다. 글의 예제는 Schedules SDK를 set_schedule, list_schedules, delete_schedule 도구로 감싸고, 각각 현재 사용자의 예약을 생성·조회·삭제할 때 owner를 사용자 유형으로 지정한다. 모든 에이전트에 같은 도구 구성이 필요한 것은 아니며, 간단한 일회성 알림인 remind_me나 나중에 다시 확인하는 check_in_later만으로 충분한 경우도 있다고 설명한다. check_in_later 예제는 현재 UTC 시각에 minutes를 더한 시각을 계산하고, cron 대신 at과 프롬프트를 전달해 현재 사용자의 작업을 한 번 예약한다. 글은 문서 주소 langch.in/mda를 안내하고, mda init과 mda deploy를 통해 조직에 선제적 에이전트를 배포할 수 있다는 설명으로 마무리한다.

🧾 핵심 주장 / 시사점

  • 기억 갱신, 정보 선별, 알림과 에이전트 조율은 목적이 다르지만, 정해진 시점에 프롬프트를 실행한다는 공통 메커니즘으로 연결된다.
  • 선제적 행동은 예약 주기만으로 정해지지 않는다. 에이전트가 추구할 역할이나 목표가 실행할 행동의 방향을 제공한다.
  • Managed Deep Agents의 예약 도구는 에이전트 유형에 맞게 구성할 수 있으며, 반복 예약 전체를 다루는 도구부터 일회성 check_in_later까지 필요한 범위가 달라질 수 있다.

✅ 액션 아이템

  • 기억 갱신, 정보 선별, 사용자 알림과 비동기 하위 작업 확인 중 적용할 예약 실행 용도를 선정한다.
  • cron 서버의 일정·프롬프트·스킬·권한 지원과 jitter를 통한 부하 분산, 통제된 예약 설정·수정 방식을 검토한다.
  • Managed Deep Agents에서 정적 예약과 Schedules SDK 기반 동적 예약의 적용 범위를 정하고, 반복 실행의 cron과 일회성 실행의 at을 구분한다.

❓ 열린 질문

  • 예약 실행 비중 70% 이상이라는 관찰은 기억 갱신, 정보 선별, 사용자 알림 등 용도별로 어떻게 나뉘는가?
  • cron 서버에서 필요한 스킬·권한과 에이전트의 예약 설정·수정은 구체적으로 어떤 방식으로 통제되는가?
  • Managed Deep Agents에서 개발자가 정의하는 정적 예약과 Schedules SDK로 생성하는 동적 예약의 적용 범위는 어떻게 나누는 것이 적절한가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.