Dicklesworthstone/destructive_command_guard

A fast Rust safety hook that blocks destructive shell, git, and filesystem commands before AI coding agents run them. 50+ security packs (databases, Kubernetes, Docker, cloud, Terraform), heredoc/inline-script scanning, CI scan mode, and explain mode; works with Claude Code, Codex, Gemini, Copilot, Cursor, and more.

Destructive Command Guard (dcg)

무엇인가요

Destructive Command Guard (dcg) 는 AI 기반 코딩 어시스턴트(Claude, Codex, Gemini, GitHub Copilot, Cursor 등)와 셸 사이에 위치하는 고성능 후크입니다. 어시스턴트가 코드, 데이터 또는 인프라를 삭제하거나 손상시킬 수 있는 명령을 실행하려고 할 때, dcg는 해당 요청을 가로채어 방대한 안전 규칙 라이브러리(packs라고 함)를 기반으로 평가한 후, 명확한 설명과 함께 차단하거나 실행을 허용합니다.

왜 중요한가요

AI 코딩 에이전트는 코드 자동 작성 및 실행에 점점 더 많이 사용되고 있습니다. git reset --hard, rm -rf /, aws ec2 terminate-instances와 같은 잘못된 명령 하나만으로도 수 시간의 작업이 사라지거나 프로덕션 서비스가 중단될 수 있습니다. dcg는 이러한 에이전트에 대해 제로 구성 보호를 제공하여 파일 시스템, 버전 관리 시스템 또는 클라우드 공급자에 도달하기 전에 파괴적인 명령을 포착합니다.

핵심 기능 (README 설명 기준)

기능 내용
광범위한 에이전트 지원 Claude Code, Codex CLI, Gemini CLI, GitHub Copilot CLI, VS Code Copilot Chat, Cursor, Hermes Agent, Posit Assistant, Grok (xAI), Oh My Pi 등을 지원합니다.
모듈식 "팩" 파일 시스템, Git, 데이터베이스, Docker, Kubernetes, AWS/GCP/Azure, Terraform 등을 다루는 50개 이상의 사전 작성된 규칙 팩. 팩은 에이전트별 또는 전역으로 활성화/비활성화할 수 있습니다.
서브밀리초 지연 시간 SIMD 가속 정규식 필터링을 통해 사용자가 가드 존재를 느끼지 못할 정도로 빠르게 작동합니다.
Heredoc / 인라인 스크립트 스캔 python -c, 셸 스크립트 또는 heredoc 내부에 숨겨진 위험한 명령을 감지합니다.
스마트 컨텍스트 감지 명령처럼 보이는 데이터(예: grep "rm -rf")와 실제 실행 가능한 명령을 구분합니다.
풍부한 터미널 UI stderr에 이유와 더 안전한 대안을 포함한 사람이 읽기 쉬운 거부 패널을 표시합니다.
기계 판독 가능한 출력 후크 프로토콜을 기대하는 에이전트(예: Codex)를 위해 stdout에 JSON 거부 페이로드를 출력합니다.
설명 모드 dcg explain "<command>"를 통해 명령이 차단되는 이유를 보여줍니다.
CI / 프리커밋 스캔 dcg를 스캔 모드로 실행하여 코드 리뷰 중에 위험한 명령을 포착할 수 있습니다.
우회 및 허용 목록 DCG_BYPASS=1을 통한 임시 우회, 일회성 허용 코드 또는 영구 허용 목록 항목을 지원합니다.
에이전트별 프로필 에이전트마다 다른 신뢰 수준과 규칙 세트를 설정할 수 있습니다 (예: Claude는 관대하게, 알 수 없는 에이전트는 엄격하게).
크로스 플랫폼 설치 프로그램 Linux/macOS용 원라인 curl 설치 프로그램, Windows 네이티브용 PowerShell 설치 프로그램(서명 검증 옵션 포함)을 제공합니다.

작동 방식 (개요)

  1. 설치 – 설치 프로그램이 바이너리(dcg 또는 dcg.exe)를 배치하고 대상 AI 에이전트의 구성 디렉토리에 후크 파일을 등록합니다(예: ~/.claude/settings.json).
  2. 호출 – 에이전트가 명령을 실행하려고 할 때 후크를 호출합니다. 후크는 명령 문자열과 일부 메타데이터를 수신합니다.
  3. 평가 – dcg는 컴파일된 정규식을 사용하여 명령을 활성화된 팩과 대조합니다. 팩은 카테고리별로 그룹화되어 있습니다(예: core.filesystem, database.postgresql).
  4. 결정 – 규칙의 심각도(critical, high, medium 등)에 따라 결과는 다음과 같습니다:
    • deny – 명령을 차단하고 팁이 포함된 컬러 패널을 출력하며 에이전트에 JSON 거부 응답을 반환합니다.
    • ask – 에이전트 프로토콜이 지원하는 경우 사람의 검토를 요청합니다.
    • warn / log – 명령 실행을 허용하되 이벤트를 기록합니다.
  5. 출력 – stderr에는 사람을 위한 메시지를, stdout에는 기계를 위한 JSON을 출력합니다.
  6. 구성 – 사용자는 ~/.config/dcg/config.toml을 편집하여 추가 팩 활성화, 정책 조정 또는 에이전트별 프로필 설정을 수행합니다.

권장 사용자

  • 개발자: Claude, Copilot, Gemini 등 LLM 기반 코딩 어시스턴트를 사용하며 실수로 인한 파괴적인 명령으로부터 안전망을 원하는 분.
  • 팀: AI 에이전트를 CI 파이프라인에 통합하는 경우; dcg를 프리커밋 후크로 실행하여 위험한 명령이 커밋되는 것을 방지할 수 있습니다.
  • Ops / DevOps 엔지니어: AI 에이전트를 사용하여 클라우드 리소스, 컨테이너 또는 Kubernetes를 관리하며 실수로 인한 terraform destroy, kubectl delete, aws ec2 terminate-instances로부터 보호가 필요한 분.

시작하기 (README의 빠른 단계)

# 원라인 설치 (Linux/macOS/WSL)
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/destructive_command_guard/main/install.sh?$(date +%s)" | bash -s -- --easy-mode

설치 프로그램은 플랫폼을 감지하고, 가능하면 서명을 검증하며, dcg를 PATH에 추가하고, 자체 테스트를 실행하며, 지원되는 모든 에이전트에 대해 후크를 구성합니다.

설치 후 기본 구성으로 가장 치명적인 명령(core.filesystem, core.git, system.disk 및 Windows 전용 팩)은 이미 보호됩니다. 보호를 강화하려면 ~/.config/dcg/config.toml을 편집하세요:

[packs]
enabled = [
  "database.postgresql",
  "containers.docker",
  "cloud.aws",
]

제한 사항 및 고려 사항 (README 기준)

  • 핵심 팩(core.filesystem, core.git)은 항상 평가됩니다. 비활성화할 수는 없지만 규칙별로 정책을 완화할 수는 있습니다.
  • 이 후크는 Claude 스타일 후크 프로토콜을 지원하는 에이전트에서만 작동합니다. 다른 에이전트의 경우 감지 전용 모드로 대체될 수 있습니다.
  • 우회 메커니즘이 존재하지만 오용 시 위험이 다시 발생할 수 있으므로 신중하게 사용해야 합니다.
  • 많은 팩을 추가하면 메모리 사용량이 증가할 수 있지만, SIMD 엔진 덕분에 지연 시간은 서브밀리초로 유지됩니다.

요약: dcg는 AI 코딩 어시스턴트가 발행하는 명령을 가로채어 포괄적인 규칙 세트와 대조하고, 돌이킬 수 없는 피해를 줄 수 있는 모든 작업을 차단하는 Rust 기반 안전 계층입니다. 사용자가 느끼지 못할 정도로 빠르게 작동합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트