agentk은(는) 무엇을 하나요?
에이전트K는 AI 에이전트를 위한 사용자 공간 보안 커널입니다: 타입이 있는 시스템 콜, 오염 인식 정책, 기능 영수증, 서명된 증거, 재생 가능한 비행 로그를 갖춘 MCP/도구 경계입니다.
개요
에이전트K는 AI 에이전트가 외부 시스템과 상호 작용할 때 보안 경계를 제공합니다. 기존의 단순한 샌드박스와 달리, 에이전트K는 각 도구 호출을 명시적인 시스템 콜로 변환하여 세밀한 접근 제어와 감사가 가능합니다.
주요 기능
- 타입이 있는 시스템 콜(Typed Syscalls): 각 도구 호출은 명시적인 타입과 파라미터를 가진 시스템 콜로 변환됩니다.
- 오염 인식 정책(Taint-Aware Policy): 민감한 데이터의 흐름을 추적하고 허가되지 않은 전파를 차단합니다.
- 기능 영수증(Capability Receipts): 각 권한 부여에 대한 영수증을 생성하여 추적 가능성을 제공합니다.
- 서명된 증거(Signed Evidence): 모든 에이전트 행동에 대한 서명된 증거를 생성하여 부인 방지를 제공합니다.
- 재생 가능한 비행 로그(Replayable Flight Logs): 전체 실행 과정을 로그로 기록하여 문제 발생 시 재현할 수 있습니다.
지원 플랫폼
에이전트K는 다음과 같은 AI 에이전트 플랫폼에서 사용할 수 있습니다:
- Claude Code
- Cursor
- Codex
- 기타 MCP 프로토콜을 지원하는 에이전트
설치
npm install -g @atomics-hub/agentk
# 또는
pip install agentk
빠른 시작
- 정책 파일 생성:
# policy.yaml
version: "1.0"
rules:
- syscall: "filesystem.read"
allow: ["/home/user/projects/*"]
deny: ["/etc/shadow", "/home/user/secrets/*"]
- syscall: "network.connect"
allow: ["api.github.com:443"]
deny: ["*:80"]
- 에이전트 실행:
agentk run --policy policy.yaml -- your-agent-command
정책 예제
파일 시스템 접근 제어
syscalls:
- name: "filesystem.read"
taint_propagation: true
on_taint: "block"
- name: "filesystem.write"
require_receipt: true
max_size: 10485760 # 10MB
네트워크 접근 제어
syscalls:
- name: "network.connect"
allowed_domains:
- "*.github.com"
- "api.openai.com"
block_private_ips: true
환경 변수
| 변수명 | 설명 | 기본값 |
|---|---|---|
AGENTK_POLICY | 정책 파일 경로 | ./policy.yaml |
AGENTK_LOG_LEVEL | 로그 레벨 | info |
AGENTK_EVIDENCE_DIR | 증거 저장 디렉토리 | ./.agentk/evidence |
AGENTK_FLIGHT_LOG | 비행 로그 파일 경로 | ./.agentk/flight.log |
아키텍처
+------------------+ +------------------+ +------------------+
| AI Agent | --> | AgentK Kernel | --> | External Tool |
| (Claude Code 등) | | (Syscall Layer) | | (MCP 서버 등) |
+------------------+ +------------------+ +------------------+
|
v
+------------------+
| Policy Engine |
| (Taint Tracking) |
+------------------+
개발자 가이드
사용자 정의 정책 작성
정책은 YAML 형식으로 작성되며, 다음 섹션을 포함할 수 있습니다:
version: 정책 버전syscalls: 시스템 콜별 규칙taint_rules: 오염 전파 규칙audit: 감사 설정
API 참조
자세한 API 문서는 공식 문서를 참조하세요.
라이선스
MIT