flux7-mesh은(는) 무엇을 하나요?
AI 에이전트를 위한 가드레일 사이드카 프록시 — 정책, 승인 게이트, 권한 부여(grants), 추적(tracing). 하나의 Go 바이너리, 하나의 YAML.
개요
flux7-mesh는 AI 에이전트(예: Claude Code, Cursor, Codex)와 상호작용하는 환경에서 보안 및 규정 준수 요구사항을 적용하기 위한 경량 사이드카 프록시입니다. 이는 에이전트의 모든 명령과 API 호출을 가로채서, 사전 정의된 정책에 따라 승인, 거부, 수정 또는 기록합니다.
주요 기능
- 정책 기반 제어: YAML 파일에 정의된 규칙에 따라 에이전트의 액세스 권한을 제한합니다.
- 승인 게이트: 위험도가 높은 작업(예: 파일 시스템 접근, 네트워크 요청)에 대해 인간의 승인을 요구합니다.
- 권한 부여(Grants): 특정 작업에 대해 세분화된 권한을 부여하여 최소 권한 원칙을 구현합니다.
- 분산 추적(Tracing): 모든 에이전트 활동을 기록하고 추적하여 감사(Audit)와 문제 해결을 지원합니다.
- 간편한 배포: 단일 Go 바이너리로 제공되며, Docker 또는 Kubernetes 환경에 쉽게 통합할 수 있습니다.
설치 및 실행
요구 사항
- Go 1.21 이상 (컴파일 시), 또는 미리 빌드된 바이너리
- Docker (컨테이너 실행 시)
다운로드
go install github.com/KTCrisis/flux7-mesh@latest
또는 Releases 페이지에서 미리 빌드된 바이너리를 다운로드할 수 있습니다.
기본 실행
flux7-mesh --config mesh.yaml
구성 파일 예시 (mesh.yaml)
# flux7-mesh 구성 파일 예시
server:
port: 8080
tls_enabled: false
policies:
- name: restrict-file-access
match:
action: "file:read"
path_pattern: "/etc/*"
effect: deny
reason: "민감한 시스템 파일에 대한 접근 차단"
- name: require-approval-for-delete
match:
action: "file:delete"
effect: require-approval
approval_timeout: 30s
grants:
- name: write-logs
match:
action: "file:write"
path_pattern: "/var/log/flux7/*"
effect: allow
logging:
level: info
format: json
output: stdout
tracing:
enabled: true
endpoint: "http://jaeger:14268/api/traces"
지원 플랫폼
- Claude Code:
claude_code플러그인을 통해 자연스럽게 통합됩니다. - Cursor: 환경 변수
FLUX7_MESH_ENDPOINT를 설정하여 사용할 수 있습니다. - Codex:
codexCLI와 함께 사용할 수 있습니다.
사용 방법
Claude Code와 함께 사용
export CLAUDE_CODE_PLUGINS="flux7-mesh"
export FLUX7_MESH_CONFIG="./mesh.yaml"
claude code
Cursor와 함께 사용
export FLUX7_MESH_ENDPOINT="http://localhost:8080"
cursor .
참고 자료
라이선스
MIT License. 자세한 내용은 LICENSE 파일을 참조하세요.