Open SWE 조직의 내부 비동기 코딩 에이전트를 구축하기 위한 오픈 소스 프레임워크입니다. 개발자는 Slack, Linear 또는 GitHub에서 봇을 언급할 수 있습니다. 서비스는 이슈/스레드 컨텍스트를 수집하고, 영구 클라우드 샌드박스를 생성하고, 리포지토리를 복제하고, 코드를 계획 및 편집하고, 명령을 실행하고, 브랜치에 커밋하고, 풀 요청 초안을 열거나 업데이트합니다.
설치 후 안전해지는 호스팅 코딩 서비스가 아닙니다. Open SWE은 LangGraph 및 Deep Agents을 기반으로 구축된 참조 아키텍처입니다. 운영자는 모델 및 샌드박스 제공자를 선택하고, GitHub/Slack/Linear 애플리케이션을 생성하고, 배포를 보호하고, 리포지토리 및 토큰 범위를 지정하고, 결정론적 검증을 추가하고, 네트워크 액세스를 제어하고, 결과로 발생하는 모든 끌어오기 요청을 소유해야 합니다.
엔드투엔드 아키텍처
| 레이어 | 게시된 역할 | 운영자가 결정한 사항 |
|---|---|---|
| 호출 | Slack 언급, Linear 댓글 또는 GitHub PR 댓글 | 누가 어떤 리포지토리를 어떤 비용으로 트리거할 수 있나요? |
| 맥락 | AGENTS.md와 전체 문제 또는 스레드 기록 | 신뢰할 수 있거나 수정되었거나 프롬프트 주입이 쉬운 콘텐츠는 무엇입니까? |
| 하네스 | Deep Agents은 LangGraph 내에 구성됩니다. | 모델, 시스템 프롬프트, 도구, 미들웨어 및 호출 제한 |
| 샌드박스 | 작업별 지속적인 원격 Linux 환경 | 공급자, 이미지, 송신, 수명, 리소스 및 데이터 위치 |
| 도구 | 셸, 파일, HTTP, Slack, Linear, GitHub 및 선택적 관찰 가능성 | 최소 권한, 부작용 승인 및 비밀 경계 |
| 오케스트레이션 | 하위 에이전트 및 결정적 미들웨어 후크 | 동시성, 예산, 공유 상태 및 오류 처리 |
| 배송 | 커밋, 푸시, PR 초안 및 소스 채널 응답 | CI, 검토자, 병합 정책 및 배포 분리 |
샌드박스는 외부 권한이 아닌 호스트 위험을 줄입니다.
저장소는 각 작업이 전체 셸 권한이 있고 확인 메시지가 없는 격리된 클라우드 샌드박스를 수신하며 Modal, Daytona, Runloop, E2B 및 LangSmith 샌드박스를 지원한다고 말합니다. 별도의 샌드박스는 파일 시스템과 프로세스 충돌을 제한하지만 폭발 반경이 "완전히 포함되어 있다"는 README의 문구를 문자 그대로 취급해서는 안 됩니다.
에이전트는 네트워크 송신, 저장소 권한, 패키지 레지스트리 액세스 및 외부 API을 가질 수 있습니다. 소스를 유출하거나, 모델 크레딧을 소각하거나, 유해한 끌어오기 요청을 열거나, 토큰을 남용하거나, 샌드박스에서 접근할 수 있는 내부 서비스를 공격할 수 있습니다. 샌드박스 제공자 제어 영역 손상은 작업 경계를 넘을 수도 있습니다. 억제에는 송신 정책, 단기 자격 증명, 할당량, 공급자 격리 및 독립적인 병합/배포 게이트가 필요합니다.
| 위험 | 샌드박스 도움말 | 필수 컴패니언 제어 |
|---|---|---|
| 파괴적인 쉘 명령 | 로컬 디스크/프로세스 손상을 일회용 환경으로 제한 | 프로덕션 마운트가 없습니다. 리소스/시간 제한 및 깔끔한 분해 |
| 악의적인 의존성 | 개발자 노트북에서 작업을 분리합니다. | 잠금 파일, 레지스트리 허용 목록, 검사 및 제한된 송신 |
| GitHub 토큰 오용 | 토큰이 외부 작업을 허용하는 경우 거의 없음 | 리포지토리 및 분기 작업으로 제한된 프록시/범위 앱 토큰 |
| 신속한 주입 | 호스트 손상을 제한할 수 있음 | 신뢰 레이블, 도구 정책 및 민감한 시스템 거부 |
| 잘못된 코드 | 격리된 런타임에서 테스트를 허용합니다. | 결정적 CI, 보안 검토 및 보호된 분기 |
| 데이터 유출 | 로컬 워크스테이션 데이터 분리 | 공급자/데이터 검토, 수정 및 아웃바운드 대상 제어 |
문제 및 채팅 텍스트는 신뢰할 수 없는 지침입니다.
Open SWE은 전체 Linear 문제 또는 Slack 스레드를 에이전트 컨텍스트에 삽입합니다. 이는 작업 이해력을 향상시키지만 직접적인 프롬프트 주입 경로를 생성합니다. 외부 보고자 또는 복사된 로그는 에이전트에게 비밀을 공개하거나 악성 URL을 가져오거나 관련 없는 코드를 변경하도록 지시할 수 있습니다. AGENTS.md는 더 신뢰할 수 있지만 손상된 분기가 수정할 수 있는 저장소 콘텐츠이기도 합니다.
출처와 신뢰 수준에 따라 콘텐츠를 표시하세요. 시스템 정책, 조직 규칙 및 승인된 저장소 구성은 티켓 설명, 댓글, 로그, 웹 페이지 및 코드 문자열보다 순위가 높아야 합니다. 신뢰할 수 없는 기여자가 관찰 가능성이나 내부 데이터 도구를 사용하여 실행을 트리거하지 않도록 하세요. 현재 프로젝트에서는 선택적 Datadog/LangSmith 도구를 승인된 사용자로 명시적으로 제한합니다. 그 경계를 보존하고 테스트하세요.
도구 선별 및 자격 증명
기본 도구 세트에는 셸 실행, 파일 작업, URL 가져오기, 임의 HTTP 요청, Linear 검색/설명 및 Slack 반응/답장이 포함됩니다. 서버가 승인된 요청을 수행하는 동안 샌드박스가 더미 토큰을 볼 수 있도록 GitHub 작업을 프록시할 수 있습니다. 선택적 Datadog, LangSmith 및 Corridor 도구는 서버 측에서 실행되어 해당 자격 증명을 샌드박스 외부에 유지합니다.
| 도구 그룹 | 최소 권한 | 고위험 오용 |
|---|---|---|
| GitHub | 코드 읽기; 하나의 작업 분기를 푸시합니다. PR 초안 공개/업데이트 | 보호, 비밀, 릴리스 또는 기타 분기 변경 |
| Slack/Linear | 트리거 스레드/문제를 읽고 거기에 응답하세요. | 기밀 토론 또는 대량 메시지 검색 |
| HTTP/가져오기 | 가능한 경우 허용 목록에 있는 공개 문서 | SSRF, 메타데이터 액세스, 유출 및 적대적인 페이지 지침 |
| 관찰 가능성 | 읽기 전용, 범위가 지정된 서비스 및 승인된 사용자 | 로그/추적에 포함된 고객 데이터 또는 비밀 유출 |
| 쉘 | 리소스가 제한된 샌드박스 내에서만 모든 권한을 제어할 수 있습니다. | 포크 폭탄, 암호화폐 채굴, 네트워크 스캐닝 또는 지속성 |
| 하위 에이전트 | 부모와 동일하거나 좁은 권한 | 비용, 충돌 및 도구 호출 증가 |
검증은 가장 큰 기본 격차입니다.
README에서는 유효성 검사를 프롬프트 기반으로 설명합니다. 에이전트는 커밋하기 전에 린터, 포맷터 및 테스트를 실행하도록 지시받습니다. 지침은 강제가 아닙니다. 에이전트는 비용이 많이 드는 테스트를 건너뛰거나, 출력을 잘못 읽거나, 테스트를 약화시키거나, 동작을 조롱하거나, 시간 초과 후 성공을 주장할 수 있습니다. 프로젝트 자체에서는 결정적 CI, 시각적 검증 또는 검토 게이트를 추가할 것을 권장합니다.
모델 루프 외부로 수용을 이동합니다. 서비스는 필수 명령이 새로운 환경에서 실행되고 예상되는 컴퓨터 판독 가능 결과를 반환할 때까지 작업을 성공으로 표시해서는 안 됩니다. 워크플로 변경 사항이 별도로 검토되지 않는 한 에이전트는 자체 통과 상태를 결정하는 워크플로를 편집해서는 안 됩니다.
| 게이트 | 독립적인 증거 | 실패 정책 |
|---|---|---|
| 범위 | 문제 허용 목록과 비교하여 변경된 경로 | PR 업데이트 차단 또는 사람 예외 요청 |
| 빌드/타입 검사 | 새로운 결제 명령 및 종료 코드 | 로그 첨부 및 미완료로 표시 |
| 테스트 | 필수 제품군과 변경된 테스트 검토 | 기대치를 자동으로 편집하는 재시도 루프 없음 |
| 보안 | 종속성, 비밀 및 정적 분석 스캐너 | 검역 결과; 자동으로 닫히지 않음 |
| 시각적 | 정의된 경로/뷰포트에서의 스크린샷 비교 | 의미 있는 차이에 대한 인간의 승인 |
| 검토 가능성 | 차이 크기, 요약, 위험 및 롤백 필드 | 지나치게 크거나 우려 사항이 혼합된 변경 사항을 분할합니다. |
영구 스레드에는 수명 주기 규칙이 필요합니다.
후속 Slack/Linear 메시지는 동일한 결정적 스레드 및 영구 샌드박스로 라우팅됩니다. 이는 컨텍스트를 보존하지만 손상된 상태, 오래된 분기, 다운로드된 비밀 및 런어웨이 프로세스도 보존할 수 있습니다. 최대 수명, 유휴 시간 제한, 디스크 할당량 및 "클린 템플릿에서 재생성" 경로를 정의합니다. 몇 주 후에 다시 열린 티켓은 패치가 적용되지 않은 이전 환경을 자동으로 재개해서는 안 됩니다.
미들웨어는 다음 모델 호출 전에 대기 중인 메시지를 삽입합니다. 어떤 메시지가 작업을 변경했는지, 누가 보냈는지, 범위가 확장되었는지 기록합니다. 후속 조치가 새로운 저장소, 외부 시스템 또는 생산 작업을 요청하는 경우 이를 일반적인 대화 맥락으로 취급하는 대신 새로운 승인 결정을 생성합니다.
하위 에이전트: 비선형 비용을 사용한 유용한 병렬 처리
Deep Agents은 자체 미들웨어, 할 일 목록 및 파일 작업을 사용하여 하위 에이전트를 생성할 수 있습니다. 테스트 찾기, API 비교 또는 제한된 diff 검토와 같이 읽기가 많은 독립적인 작업에만 사용하세요. 한 분기의 여러 작성자가 가정을 덮어쓰고 더 크고 일관성이 떨어지는 변경을 생성할 수 있습니다.
- 최대 하위 수, 모델 호출 제한, 토큰 예산 및 벽시계 기한을 설정합니다.
- 겹치지 않는 파일을 할당하거나 상위 항목 중 하나가 편집 내용을 직렬화하도록 요구합니다.
- 하위 권한을 상위 권한보다 더 넓게 유지하지 마세요.
- 모든 어린이가 산문 결론뿐만 아니라 증거와 불확실성을 반환하도록 만드십시오.
- 비용 측정을 위해 모든 하위 활동을 원래 작업에 청구합니다.
배포 및 종속성 선택
Open SWE에는 백엔드, 대시보드, LangGraph/LangSmith 서비스, GitHub App/OAuth, 호출 통합, 샌드박스 공급자, 모델 자격 증명 및 프로덕션 호스팅과 같은 Python 패키지를 설치하는 것 이상이 필요합니다. 코드는 MIT 라이선스를 받았지만 클라우드 샌드박스, 모델, 관찰 가능성 및 메시징 플랫폼에는 별도의 가격 책정 및 데이터 조건이 있습니다.
Open SWE 커밋과 모든 종속성 잠금을 고정합니다. 관리형 비밀 시스템에 애플리케이션 비밀을 저장하고, 웹훅 비밀을 교체하고, 서명을 검증하고, 재생된 이벤트를 거부하세요. 별도의 개발 및 프로덕션 설치. 공개 웹훅과 강력한 GitHub App은 매력적인 표적입니다.
작업 선택
| 작업 | 적합성 | 이유 |
|---|---|---|
| 기계적 API 마이그레이션 | 좋은 조종사 | 명확한 패턴, 제한된 파일 및 결정론적 테스트 |
| 누락된 단위 테스트 추가 | 리뷰가 좋음 | 유용한 연구이지만 테스트에서는 잘못된 동작을 인코딩할 수 있습니다. |
| 종속성 업데이트 | 조건부 | 변경 로그, 보안 및 호환성 검토가 필요합니다. |
| 모호한 제품 기능 | 초기 적합성이 좋지 않음 | 요구사항과 UX 판단이 코딩을 지배합니다. |
| 인증 재설계 | 고위험 | 보안 아키텍처에는 책임 있는 전문 지식이 필요합니다 |
| 생산사고 | 자율적 적합성이 좋지 않음 | 시간적 압박과 실제 권위로 인해 실수가 확대됩니다. |
승인된 엔지니어링 작업 측정
작업 수락률, 검토자 시간, 첫 번째 독립 실행 시 CI 통과, 다시 열린 결함, 보안 조사 결과, 샌드박스 시간, 모델 토큰 및 병합된 PR당 총 비용을 추적합니다. 유사한 작업 복잡성에서 인간 기준과 비교하십시오. PR 수와 변경된 라인은 생산성이 아니라 출력량입니다.
에이전트 없는 제어 그룹과 동기 에이전트 그룹을 유지합니다. 비동기 에이전트는 검토 배치를 늘리는 동시에 중단을 줄일 수 있습니다. 유용한 질문은 숨겨진 작업량을 검토자와 플랫폼 엔지니어에게 이전하지 않고도 리드 타임과 승인된 품질이 향상되는지 여부입니다.
대안
| 옵션 | 최적의 핏 | Open SWE과의 절충 |
|---|---|---|
| Open SWE | 사용자 정의 가능한 내부 비동기 에이전트 플랫폼을 구축하는 팀 | 중요한 통합, 보안 및 운영 소유권 |
| Codex / Claude 코드 | 동기식 개발자 감독 터미널 작업 | 백그라운드 워크플로 조정 감소 |
| GitHub Copilot 코딩 에이전트 | GitHub 기반 관리형 이슈-PR 흐름 | 프레임워크 수준 사용자 정의가 적고 호스팅 모델이 다릅니다. |
| 데빈 | 관리형 자율 코딩 작업 공간 | 상업용 호스팅 플랫폼 및 내부 통제 감소 |
| OpenHands | 오픈 소스 코딩 에이전트 런타임 및 연구 | 다양한 통합 및 오케스트레이션 초점 |
| CI 스크립트/봇 | 결정적 마이그레이션, 서식 지정 및 업데이트 | 덜 유연한 추론, 종종 알려진 작업에 대해 더 안전하고 저렴함 |
자주 묻는 질문
Open SWE은 호스팅 서비스인가요?
오픈 소스 프레임워크입니다. 운영자는 이를 배포 및 구성하고 필요한 모델, 샌드박스 및 통합 서비스를 구매하거나 실행합니다.
어떤 샌드박스가 지원되나요?
현재 저장소에는 Modal, Daytona, Runloop, E2B 및 LangSmith과 사용자 정의 경로가 나열됩니다.
Slack, Linear 및 GitHub를 지원합니까?
그렇습니다. 이는 문서화된 기본 호출 및 후속 표면입니다.
샌드박스를 사용하면 전체 권한이 안전하게 보호되나요?
아니요. 로컬 실행을 격리하지만 네트워크, 저장소 및 외부 계정 권한에는 별도의 제어가 필요합니다.
자동으로 코드를 확인하나요?
기본값은 검사 실행을 위한 에이전트 지침에 크게 의존합니다. 팀은 결정적 외부 CI와 검토 게이트를 추가해야 합니다.
오픈소스인가요?
그렇습니다. 현재 저장소는 MIT에 따라 라이센스가 부여됩니다.
1차 소스
- 공식 저장소 및 아키텍처
- 공식 Open SWE 신청서
- 공식 설치 가이드
- 공식 커스터마이징 가이드
- 공식 보안 정책
- LangGraph 개요
- GitHub App 보안 모범 사례
- OWASP 프롬프트 주입 지침
2026년 7월 25일에 마지막으로 검토되었습니다. Open SWE은 빠르게 발전합니다. 배포된 개정을 고정하고 업그레이드 후 통합, 샌드박스 동작, 도구 및 보안 제어를 재검증합니다.




