Community연구 & 데이터 분석github.com

GoPlusSecurity/agentguard

AI 에이전트를 위한 보안 가드 — 악성 스킬 차단, 데이터 유출 방지, 비밀 보호. 24개의 탐지 규칙, 런타임 액션 평가, 신뢰 레지스트리.

agentguard란 무엇인가요?

이 스킬은 AI 에이전트(예: Claude Code, Cursor, Codex)를 위한 보안 레이어 역할을 합니다. 악성 스킬이나 프롬프트 인젝션 공격을 차단하고, 민감한 데이터(API 키, 비밀번호 등)의 유출을 방지하며, 신뢰할 수 있는 스킬과 액션을 관리하는 '신뢰 레지스트리'를 제공합니다. 24개의 미리 정의된 탐지 규칙을 통해 런타임 중 에이전트의 모든 액션을 평가하여 위험한 동작을 실시간으로 차단합니다. 이를 통해 개발자는 보안에 대한 걱정 없이 안전하게 AI 에이전트를 활용할 수 있습니다. 다양한 AI 에이전트 플랫폼에서 사용 가능하며, 명확한 API와 설정을 통해 쉽게 통합할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add GoPlusSecurity/agentguard

Installed? Explore more 연구 & 데이터 분석 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

agentguard은(는) 무엇을 하나요?

AI 에이전트를 위한 보안 가드 — 악성 스킬 차단, 데이터 유출 방지, 비밀 보호. 24개의 탐지 규칙, 런타임 액션 평가, 신뢰 레지스트리.

개요

agentguard는 AI 에이전트(예: Claude Code, Cursor, Codex)를 보호하는 보안 레이어입니다.

  • 악성 스킬 차단: 프롬프트 인젝션, 원치 않는 파일 접근 등을 탐지하여 차단합니다.
  • 데이터 유출 방지: API 키, 비밀번호, 토큰 등 민감한 정보가 외부로 유출되는 것을 방지합니다.
  • 비밀 보호: 에이전트가 비밀 정보를 로그나 파일에 기록하지 못하도록 보호합니다.
  • 신뢰 레지스트리: 신뢰할 수 있는 스킬과 액션을 관리하여 안전한 환경을 유지합니다.

주요 기능

24개의 탐지 규칙

  • 프롬프트 인젝션: 악의적인 프롬프트 주입 시도 탐지 및 차단
  • 파일 시스템 공격: 허용되지 않은 파일 읽기/쓰기 시도 차단
  • 네트워크 요청 모니터링: 의심스러운 네트워크 요청 탐지
  • 비밀 누출 방지: 환경 변수, 설정 파일 등에서 비밀 정보가 노출되지 않도록 보호

런타임 액션 평가

에이전트가 실행하는 모든 액션(파일 읽기/쓰기, 명령 실행, 네트워크 요청 등)을 실시간으로 평가하여 위험도를 결정합니다. 설정에 따라 차단, 경고, 허용 등의 조치를 취합니다.

신뢰 레지스트리

  • 신뢰할 수 있는 스킬과 액션을 관리할 수 있습니다.
  • 특정 스킬이나 액션을 명시적으로 허용하거나 차단할 수 있습니다.
  • 레지스트리는 설정 파일이나 외부 저장소에서 관리할 수 있습니다.

설치 및 사용법

설치

pip install agentguard

또는 소스에서 직접 설치:

git clone https://github.com/GoPlusSecurity/agentguard.git
cd agentguard
pip install -r requirements.txt

기본 사용법

from agentguard import AgentGuard

# AgentGuard 인스턴스 생성
guard = AgentGuard()

# 에이전트 액션 평가
action = {
    'type': 'file_write',
    'path': '/tmp/test.txt',
    'content': 'some data'
}
result = guard.evaluate(action)
if result['action'] == 'block':
    print('액션이 차단되었습니다:', result['reason'])

설정 파일 예제 (config.yaml)

# agentguard 설정
general:
  mode: 'strict'  # 'strict', 'moderate', 'permissive'
  log_level: 'info'

rules:
  prompt_injection:
    enabled: true
    severity: 'high'
  secret_leak:
    enabled: true
    patterns:
      - 'API_KEY'
      - 'PASSWORD'
      - 'TOKEN'
  file_access:
    allowed_paths:
      - '/tmp/'
      - '/home/user/work/'
    blocked_paths:
      - '/etc/passwd'
      - '/root/'

trust_registry:
  skills:
    - name: 'allowed-skill-1'
      hash: 'abc123'
    - name: 'allowed-skill-2'
      hash: 'def456'
  actions:
    - type: 'network_request'
      allowed_domains:
        - 'api.example.com'
        - 'cdn.trusted.com'

통합 방법

Claude Code

Claude Code와 통합하려면 환경 변수에 AGENTGUARD_MODE를 설정하거나, agentguard를 Python 패키지로 임포트하여 사용할 수 있습니다.

Cursor

Cursor 설정에서 agentguard를 활성화하면 모든 AI 액션이 보호됩니다.

Codex

Codex와 함께 사용할 때는 agentguard를 미들웨어로 설정하여 요청을 가로채고 평가할 수 있습니다.

API 문서

AgentGuard.evaluate(action)

  • action: 딕셔너리 형태의 액션 정보 (type, path, content, url 등)
  • 반환값: {'action': 'allow'|'block'|'warn', 'reason': '...'}

AgentGuard.update_registry(registry)

신뢰 레지스트리를 업데이트합니다.

  • registry: 신뢰할 스킬/액션 목록을 포함한 딕셔너리

AgentGuard.add_rule(rule)

사용자 정의 탐지 규칙을 추가합니다.

  • rule: {'name': '...', 'condition': lambda action: ..., 'action': 'block'|'warn'}

로깅 및 모니터링

agentguard는 모든 평가 결과를 로그로 기록합니다. 로그 레벨을 조정하여 상세한 정보를 확인할 수 있습니다.

# 환경 변수로 로그 레벨 설정
export AGENTGUARD_LOG_LEVEL=debug

기여하기

기여는 언제나 환영합니다! 버그 리포트, 기능 제안, 풀 리퀘스트를 보내주세요.

라이선스

이 프로젝트는 MIT 라이선스로 배포됩니다.

연락처

관련 스킬