manuelschipper/nah

a guard that blocks catastrophic agent actions

해결하는 문제

nah는 AI 코드 에이전트가 전체 파일 시스템 삭제, 시크릿 도용, Git 이력 삭제와 같은 치명적인 작업을 수행하는 것을 막습니다. 이는 실행 전에 도구 호출을 가로채는 방식으로 작동합니다. nah는 증명 가능한 위험한 명령어를 차단하는 안전 가드 역할을 하며, 위험하지 않은 호출은 에이전트의 기존 런타임 권한에 맡깁니다.

작동 방식

nah는 정적 Rust 바이너리로 작성되어 LLM을 사용하지 않고 결정론적으로 작동합니다. 도구 호출을 "형식화된 효과"(예: 파일 읽기, 네트워크 요청, 프로세스 동작)로 파싱하고, 가드 카탈로그와 비교합니다.

가드가 명확한 위반을 감지하면 차단 판정을 반환하며, 이는 에이전트가 해당 작업이 거부된 이유를 알 수 있도록 합니다. 어떤 가드도 트리거되지 않으면 위임 판정을 반환하여 에이전트의 자체 사전 또는 승인 프로세스가 요청을 처리할 수 있도록 합니다. 사용자는 원하는 언어로 사용자 정의 확장을 구축하여 프로젝트에 특화된 안전 규칙을 추가할 수 있습니다.

대상 사용자

Claude Code, Cursor, Devin과 같은 AI 코드 에이전트를 사용하면서, 실수나 악의적인 파괴 명령어에 대한 자동 보호 계층을 원하는 개발자들.

주요 특징

  • 결정론적 안전성: LLM 판정이 아닌 Rust 바이너리를 사용하여 마이크로초 응답 시간과 일관된 결과를 보장합니다.
  • 풍부한 가드 카탈로그: 실행 허가 침해, 시크릿 도용, 파일 시스템 파괴, 인프라 제거를 포함한 46개의 내장 가드를 제공합니다.
  • 광범위한 통합: Claude Code, Cursor, Copilot 등 다양한 에이전트 런타임을 지원합니다.
  • fontenc-자기 보호: 에이전트가 nah를 비활성화하거나 구성 파일을 수정하려는 시도를 차단합니다.
  • 사용자 정의 가능: TUI 또는 CLI를 통해 특정 가드를 전환하거나 사용자 정의 가드 프로그램을 생성할 수 있습니다.

관련

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