TL;DR
- Argos는 약 1MB 크기의 Rust 보안 게이트웨이로, AI 클라이언트와 모델 컨텍스트 프로토콜(MCP) 서버 사이의 JSON-RPC 트래픽을 검사해 허가되지 않은 파일 접근과 파괴적 명령을 차단함.
Tokio비동기 스트림을 사용하며, 요청 검사 오버헤드는 1밀리초 미만이고 도구 호출 검사는 0.2밀리초 미만임.- 경로 정규화와
../제거를 통해 경로 탐색을 막고,.env, 개인 키, 클라우드 자격 증명 등 민감한 파일 접근을 차단함. - 허용·차단 규칙은
argos.toml에서 설정하며, 감사 로그는 로컬 JSON Lines 파일에 기록되고 클라우드 텔레메트리는 없음. - Windows·Linux 사전 빌드 바이너리 또는 소스 빌드로 설치할 수 있으며, Claude Desktop·Cursor의 MCP 서버 명령 앞에 연결해 사용함.
Argos
- Argos는 AI 클라이언트(Claude Desktop, Cursor)와 기반 MCP 도구 서버 사이에 배치되는 투명한 보안 파이프임.
- Quad9·Pi-hole의 마찰 없는 사용 철학에서 영감을 받아, 원시 JSON-RPC 트래픽을 실시간 검사하고 허가되지 않은 파일 접근, 경로 탐색 공격, 파괴적 명령이 시스템에 도달하기 전에 결정론적으로 차단함.
기능
- 밀리초 미만 오버헤드: 순수 Rust와
Tokio비동기 스트림으로 구현되며, 에이전트나 개발자가 체감할 지연이 없음. - 경로 탐색 샌드박싱: 운영체제 경로 정규화와
../제거를 통해 엄격한 작업 공간 경계를 적용함. - 비밀 정보 및 민감 파일 차단:
.env,id_rsa,id_ed25519개인 키, 클라우드 자격 증명에 대한 접근을 차단함. - 파괴적 명령 차단:
rm -rf, 디스크 포맷 명령, 포크 폭탄 등 위험한 터미널 명령을 가로챔. - 로컬 감사 로깅: 허용 및 차단 작업을 구조화된 JSON Lines 로그(
argos-audit.log)에 기록하며, 클라우드 텔레메트리를 사용하지 않음. - 유연한 설정: 선언형 규칙을
argos.toml에서 사용자 지정함. - 로컬·비공개 도구: 자체 포함된 약 1MB 단일 바이너리로 전부 Rust로 구현되며, 외부 텔레메트리나 클라우드 의존성이 없음. 결정론적 패턴 매칭, 운영체제 기본 기능, JSON-RPC 스트림 가로채기에만 의존해 민감한 코드, 설정 키, 감사 기록이 로컬 기기를 벗어나지 않음.
빠른 시작
1. 설치
- 선택지 A — 사전 빌드 바이너리(Windows·Linux): Releases 페이지에서 시스템에 맞는 최신 사전 컴파일 바이너리를 내려받음.
- Windows:
argos.exe를 내려받거나argos-windows-x86_64.zip의 압축을 풂. - Linux:
argos-linux-x86_64.tar.gz를 내려받아 압축을 푼 뒤 실행 권한을 설정함. - 선택지 B — 소스에서 빌드(macOS 또는 모든 플랫폼): macOS(Apple Silicon·Intel)에서 실행하거나 로컬 컴파일을 선호하는 경우 저장소를 복제하고
cargo build --release를 실행함. - 저장소: https://github.com/JUSICK/Argos-mcp-guardrail.git
- 컴파일된 바이너리 위치: Linux·macOS는
target/release/argos, Windows는target/release/argos.exe임.
2. 정책 설정
argos.toml을 만들고 Argos 실행 파일 옆이나 작업 공간 루트에 둠.- 파일 시스템 정책은 경로 탐색 차단을 활성화하고,
.env,.ssh,id_rsa,id_ed25519,credentials,.aws,.npmrc를 차단 패턴으로 지정함. .env.example,.env.sample,.env.template은 정책을 통과하는 명시적 예외로 지정함.- 명령 정책은
rm -rf,mkfs, 포크 폭탄,chmod -R 777,dd if=를 차단 대상으로 지정함. - 감사 로깅은 활성화하고, 허용된 프로세스 기록은 비활성화할 수 있음.
log_file에는 Argos와 같은 디렉터리에 만들 파일명이나 전체 경로를 지정함. 기본 예시는argos-audit.log임.
3. Claude Desktop 또는 Cursor 연동
claude_desktop_config.json의mcpServers설정에서 Argos를 MCP 서버 명령으로 지정하고,--뒤에 실제 MCP 서버 명령과 인수를 둠.- Windows 설정은
argos.exe경로와npx.cmd,@modelcontextprotocol/server-filesystem, 작업 공간 경로를 사용함. - macOS·Linux 설정은
/usr/local/bin/argos와npx,@modelcontextprotocol/server-filesystem, 작업 공간 경로를 사용함. - Claude Desktop을 재시작하면 Argos가 도구 호출을 감시해 허가되지 않은 파일 시스템 경로 탐색과 자격 증명 노출을 차단함.
4. 작동 방식
- AI 클라이언트(Claude·Cursor)와 실제 MCP 도구 서버 사이에서 Argos가 표준 입력·출력(stdin/stdout)으로 전달되는 JSON-RPC 트래픽을 검사함.
- Argos는
tools/call요청을 0.2밀리초 미만에 검사함. - 허용된 요청은 실제 MCP 도구 서버로 전달하고, 차단된 요청은 JSON-RPC 오류를 반환하며 이벤트를 기록함.
- 대규모 프로젝트에서 AI 에이전트가 둘 이상이면 Argos 인스턴스를 원하는 만큼 둘 수 있으며,
Argos-Backend,Argos-Frontend처럼 이름을 바꿔 사용할 수 있음.
라이선스
- MIT 라이선스이며 개인 및 상업적 사용이 무료임.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요