shepherd-agents/shepherd
A runtime substrate that turns an agent's execution into a reversible, Git-like trace, so meta-agents can observe, fork, replay, and revert any run. Couples agent and environments in a copy-on-write fork ~5x faster than docker commit, with ~95% KV-cache reuse on replay. Framework built for meta-agents to supervise, optimize, and train other agents
해결하는 문제
Shepherd는 높은 수준의 검토, 되돌릴 수 있는 실행, 감시가 필요한 AI 에이전트를 위한 런타임 기반을 제공합니다. 파일 시스템에 통제되지 않은 변경을 가하는 문제를 해결하여, 사용자가 실제로 워크스페이스에 적용되기 전에 제안된 변경 사항을 검토하고 승인할 수 있도록 합니다.
작동 방식
Shepherd는 에이전트 활동을 내구성 있고 검사 가능한 실행 트레이스로 기록합니다. 에이전트가 작업을 수행할 때 출력은 사용자 파일에 직접 쓰이지 않고, "보존된 출력"(제안)으로 보관됩니다. 사용자는 이러한 변경 세트를 검토하고 선택, 적용, 해제, 또는 버릴 수 있습니다.
보안을 보장하기 위해 Shepherd는 OS 수준의 권한 부여(macOS Seatbelt 및 Linux Landlock)를 사용하여 에이전트를 격리합니다. 권한은 작업의 Python 함수 시그니처에 직접 정의됩니다. 예를 들어, 리포지토리 핸들에 대해 ReadOnly 또는 ReadWrite를 지정하면, 에이전트가 시스템 호출 수준에서 파일 시스템을 수정할 수 있는지 여부가 결정됩니다.
대상 사용자
에이전트가 데이터를 실수로 손상시키거나 권한 없는 변경을 하지 않도록 보호할 수 있는 안전 계층이 필요한 에이전트 워크플로우를 개발하는 개발자, 그리고 프로그래머블 메타에이전트를 연구하는 연구자에게 적합합니다.
주요 특징
- 되돌릴 수 있는 실행: 에이전트 실행은 트레이스로 기록되어, 3방향 병합을 통해 출력을 검토하고 버리거나 병합할 수 있습니다.
- OS 수준의 사전 격리: macOS 및 Linux에서 네이티브 시스템 호출 격리에서 읽기 전용 vs 읽기/쓰기 권한을 강제합니다.
- 시그니처 기반 권한: 권한은 Python 작업 시그니처에 명시적으로 선언되어 보안 표면을 쉽게 감사할 수 있습니다.
- 내구성 있는 트레이스: CLI를 통해 검사 가능한 기계가 읽을 수 있는 실행 기록을 유지합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트