Kiro IDE 안전 장치
실행 모드, Checkpoint, Permissions
Kiro IDE 안전 장치
실행 모드 · Checkpoint · Permissions
빠르게 실험하고, 안전하게 되돌린다
AI 자율성 제어와 변경사항 복원
안전 장치 오버뷰
실행 모드 · Checkpoint · Permissions
안전 장치
AI의 속도를 유지하면서 사고를 막는 3중 보호 체계
3중 보호
실행 모드·Checkpoint·Permissions가 겹겹이 AI 자율성을 제어합니다.
- Autopilot / Supervised — 자율 실행 제어
- Checkpoint — 자동 복원 지점
- Permissions — 능력별 승인 정책
- 실험은 Checkpoint · 확정은 Git
안전 장치는 속도를 늦추는 것이 아니라 빠르게 실험할 담력을 줍니다.
3중 보호 체계
실행 모드·Checkpoint·Permissions — 서로 다른 층에서 실수를 거르는 세 겹의 제어
-
1
Autopilot / Supervised
- AI 자율 실행 여부를 제어
- Autopilot: 즉시 적용 (승인 대기 없음)
- Supervised: 변경 사항을 먼저 보여주고 승인 대기
-
2
Checkpoint
- AI 변경마다 자동으로 복원 지점 생성
- 특정 시점으로 전체 프로젝트 즉시 되돌리기
- Git과 독립 — 커밋 전에도 복원 가능
-
3
Permissions
- 파일 읽기/쓰기/셸/MCP 각각 별도 승인 정책
- Autopilot/Supervised와 공존하는 추가 레이어
- permissions.yaml로 선언적 설정
한 장치에 다 걸지 않습니다 — 모드·복원·권한이 서로 다른 층에서 실수를 걸러냅니다.
실험은 Checkpoint, 확정은 Git
안전 장치의 핵심 철학
실험은 Checkpoint, 확정은 Git
AI와의 실험은 Checkpoint로 자유롭게, 팀과의 공유는 Git 커밋으로 확정합니다
- 빠른 실험
- 안전한 복원
- 팀 협업
- 이력 관리
실행 모드
Autopilot · Supervised
실행 모드
Autopilot과 Supervised — 위험도에 따라 자율성을 조절하는 기준
Autopilot / Supervised
AI가 즉시 적용하느냐, 승인 후 적용하느냐를 상황에 맞게 고릅니다.
- Autopilot — 즉시 적용
- Supervised — Accept/Reject 승인
- 세션 중 언제든 전환
- 위험도 기준 선택 가이드
기본 질문은 하나입니다 — 실패 비용이 낮으면 Autopilot, 높으면 Supervised.
Autopilot vs Supervised
AI 자율성 수준을 세션 중 언제든 전환
Autopilot
- AI가 즉시 파일 생성/수정
- 명령어 자동 실행
- 빠른 프로토타이핑에 최적
- 신뢰할 수 있는 작업에 사용
- 터미널 명령도 자동 실행
속도가 핵심인 상황. 프로토타입, 버그 수정, 리팩토링 등 실패 비용이 낮은 작업. Checkpoint가 있으니 언제든 되돌림.
Supervised
- AI가 변경 사항을 미리 보여줌
- Accept/Reject으로 선택
- 프로덕션 코드 수정에 적합
- 인프라 변경, 보안 설정 시
- 각 변경을 사전 검토
품질이 핵심인 상황. 프로덕션 배포 직전, 인프라 코드, 보안 정책 변경 등 실패 비용이 높은 작업.
전환은 토글 하나입니다 — 작업 위험도가 바뀌면 모드도 바로 바꿉니다.
상황별 모드 선택 가이드
프로토타입·문서는 Autopilot, 프로덕션·인프라·보안은 Supervised — 실패 비용과 되돌리기 난이도가 기준
| 상황 | 권장 모드 | 이유 |
|---|---|---|
| 새 기능 프로토타입 | Autopilot | 빠른 반복이 중요, 실패 비용 낮음 |
| 버그 수정 (명확한 에러) | Autopilot | AI가 정확하게 수정, Checkpoint로 안전망 |
| 프로덕션 API 수정 | Supervised | 하위 호환성 검증 필요 |
| 인프라 코드 (CDK/CFn) | Supervised | 리소스 생성/삭제 — 되돌리기 어려움 |
| 보안/인증 로직 | Supervised | 한 줄 실수가 취약점 |
| 문서/주석 생성 | Autopilot | 코드 동작에 영향 없음 |
문서·프로토타입은 Autopilot, 프로덕션·인프라·보안은 Supervised가 기본값입니다.
Checkpoint
자동 저장 · 비교 · 복원
Checkpoint
AI 변경마다 자동으로 남는 복원 지점 — Revert·Restore와 Git과의 역할 분담
Checkpoint
프롬프트마다 자동 생성되는 복원 지점으로 실험을 되돌립니다.
- 프롬프트마다 자동 생성
- Revert — 마지막 턴 파일만 취소
- Restore — 코드+대화 되감기
- Git과 독립 — 커밋 전에도 복원
수동 저장이 없습니다 — 단 에이전트가 수정한 파일만 스냅샷되므로 수동 편집·터미널 변경은 Git으로 지킵니다.
Checkpoint 동작 흐름
프롬프트마다 자동 스냅샷 — 마지막 턴만 취소하는 Revert · 특정 시점으로 되감는 Restore
-
1
AI 변경
- 프롬프트마다 자동으로 Checkpoint 생성
- 에이전트가 수정한 파일 내용을 스냅샷
- 수동 편집·MCP·터미널 변경은 추적하지 않음
-
2
마커 표시
- 채팅 히스토리에 Checkpoint 마커로 표시
- 어느 프롬프트 시점인지 대화 맥락과 함께 확인
- 수동 저장 불필요 — 완전 자동
-
3
Revert
- 마지막 턴의 파일 변경만 취소
- 대화는 그대로 두고 코드만 되돌림
- 가장 가벼운 되돌리기
-
4
Restore
- 특정 Checkpoint 시점으로 코드+대화 컨텍스트를 되감기
- 이후 대화는 폐기됨
- Git 커밋과 무관 — 커밋 전에도 복원
가볍게는 Revert, 크게는 Restore — Restore는 이후 대화를 폐기하므로 시점을 확인하고 되감습니다.
Checkpoint vs Git
보완적 관계 — 서로 다른 역할
| 항목 | Checkpoint | Git |
|---|---|---|
| 생성 시점 | AI 변경마다 자동 | 사용자가 명시적 커밋 |
| 범위 | 에이전트가 수정한 파일 | 커밋에 담은 파일 전체 |
| 공유 | 로컬 전용 | 원격 리포로 팀 공유 |
| 용도 | AI 실험 중 빠른 되돌리기 | 확정된 변경 이력 관리 |
| 수명 | IDE 세션의 실험용 | 영구 보존 |
| 비유 | 포토샵 히스토리 | 문서 버전 관리 |
대체가 아니라 분업입니다 — 실험은 Checkpoint, 확정 이력은 Git이 맡습니다.
Permissions
능력별 승인 · 정책 커스터마이징
Permissions
능력(capability) 단위로 선언하는 승인 정책 — deny > ask > allow
Permissions
permissions.yaml에 capability별 deny/ask/allow 규칙을 선언합니다.
- capability 14종 — fs·shell·mcp 등
- deny > ask > allow 우선순위
- 동의 UI — Allow · Always allow
- 3가지 정책 — 민감도에 맞게
모드와 무관하게 deny는 절대 뚫리지 않습니다 — 시크릿과 파괴적 명령부터 잠급니다.
Permissions — 능력별 권한 제어
Autopilot/Supervised 위에 겹쳐 적용하는 추가 보호 레이어
capability(능력) + match(glob 패턴) + effect(deny/ask/allow) 규칙 구조. deny > ask > allow 우선순위. deny된 능력은 어떤 모드에서든 사용 불가.
| capability | 제어 대상 | 기본 동작 |
|---|---|---|
| fs_read | 파일 읽기, 디렉토리 목록, 검색 | allow (./**) |
| fs_write | 파일 쓰기, 편집, 삭제 | ask |
| shell | 터미널 명령어 실행 | ask (읽기 전용 git 명령만 allow) |
| mcp | MCP 서버 도구 호출 (패턴: server/tool) | ask |
| subagent | 서브에이전트 위임 | ask |
| web_fetch / web_search | URL 페치, 웹 검색 | ask |
| skill / power / diagnostics / context 등 | Skills·Powers 활성화, 진단, 컨텍스트 도구 | ask |
permissions.yaml 설정 예시
~/.kiro/settings/ 또는 워크스페이스별 설정
# ~/.kiro/settings/permissions.yaml
rules:
# ① 셸: git, npm, npx만 허용
- capability: shell
effect: allow
match:
- "git *"
- "npm *"
- "npx *"
exclude:
- "npm publish*"
# ② 파일 쓰기: src/와 tests/만 허용
- capability: fs_write
effect: allow
match:
- "src/**"
- "tests/**"
# ③ .env 파일 읽기 금지
- capability: fs_read
effect: deny
match:
- "**/.env"
- "**/.env.*"
- shell — match 접두사 패턴으로 허용 명령을 한정하고, exclude로 npm publish*만 예외 차단
- fs_write — 쓰기 가능 경로를 src/·tests/ 글롭으로 한정. 그 밖의 쓰기는 기본 정책으로
- fs_read + deny — 시크릿(.env 계열) 완전 차단. deny > ask > allow 우선순위라 어떤 allow보다 우선
IDE 동의 UI 흐름
도구 호출이 ask로 평가되면 채팅 상단에 프롬프트 표시
Kiro — 채팅 패널 · 승인 프롬프트(ask)
SHELL 승인 요청
git push --force origin main
허용 패턴
정확 명령: git push --force origin main
접두사: git push *
스코프
All workspaces
This workspace ✓
This session
Allow
Always allow
Deny
Always deny
Always allow를 누르는 순간 permissions.yaml에 규칙 저장 — 넓히기 전에 패턴 확인
-
1
도구 호출
- AI가 도구 사용을 요청
- 해당 capability의 규칙을 평가
- deny면 즉시 차단, allow면 즉시 실행
-
2
ask 프롬프트
- 채팅 패널 상단에 승인 UI 표시
- Allow(1회) / Always allow(규칙 저장)
- Deny(1회) / Always deny(규칙 저장)
-
3
패턴 선택
- 허용 범위를 정확 명령·명령 접두사 중 선택
- 스코프: All workspaces / This workspace / This session
- 넓게 열수록 편하지만 위험도 함께 커짐
-
4
규칙 저장
- permissions.yaml에 자동 추가
- 다음부터 동일 패턴은 프롬프트 없음
- 복합 셸 명령(; && ||)은 분리 평가
3가지 정책 옵션
프로젝트 민감도에 맞는 정책 선택
항상 허용 (Allow)
신뢰할 수 있는 능력에 적용
- 승인 프롬프트 없이 즉시 실행
- 파일 읽기, 안전한 명령에 적합
- Autopilot과 함께 사용하면 최대 속도
언제 — 읽기 전용 작업, 문서 생성, 테스트 실행
항상 거부 (Deny)
민감한 능력을 완전 차단
- AI가 해당 능력을 사용할 수 없음
- 시크릿 파일 읽기, 프로덕션 배포 차단
- 실수로라도 실행 불가
언제 — .env 접근, rm -rf, git push --force
매번 확인 (Ask)
상황에 따라 판단이 필요한 능력
- 매 실행마다 승인 프롬프트 표시
- 변경 내용을 검토 후 Allow/Deny로 판단
- 기본값 — 처음 시작할 때 권장
언제 — 파일 수정, 셸 명령 실행, 외부 API 호출
처음에는 ask를 기본값으로 두고, 신뢰가 쌓인 능력만 allow로 넓혀 갑니다.
엔터프라이즈 거버넌스
IAM Identity Center · Kiro Profile · 구독 관리
거버넌스
IT 관리자가 조직 수준에서 Kiro를 제어하는 세 축 — 사용자·정책·비용
거버넌스
IAM Identity Center와 Kiro Profile로 조직 전체의 사용을 관리합니다.
- IAM Identity Center — 그룹 구독 배정
- Kiro Profile — 계정+리전 관리 단위
- Governance — 모델·MCP·Permissions 강제
- 구독 티어·크레딧 모니터링
개인 설정 위에 조직 정책이 우선합니다 — Administration Permissions는 오버라이드할 수 없습니다.
엔터프라이즈 제어 3축
사용자는 IAM Identity Center · 정책은 Governance · 비용은 티어와 크레딧 모니터링 — AWS 콘솔의 Kiro 서비스에서 관리
사용자 관리
IAM Identity Center로 중앙 ID 관리. 그룹 단위 구독 배정.
Governance 정책
모델/MCP/Permissions를 조직 수준에서 강제. 개인 오버라이드 불가.
비용 통제
구독 티어 관리, 크레딧 사용량 모니터링, Overage Cap 설정.
사용자·정책·비용 — 세 축을 AWS 콘솔의 Kiro 서비스에서 한 번에 관리합니다.
엔터프라이즈 관리 체계
IAM Identity Center → Kiro Profile → 구독 관리 — 그룹 배정이 개별 유저에 자동 적용되는 구조
-
1
IAM Identity Center
- AWS 중앙 사용자 ID 관리 서비스
- Okta, Microsoft Entra ID 연동 가능
- 그룹 단위로 Kiro 구독 배정
-
2
Kiro Profile
- AWS 계정 + 리전 조합의 관리 단위
- 구독 티어와 설정을 사용자에게 적용
- AWS 콘솔의 Kiro 서비스에서 생성
-
3
구독 관리
- Free/Pro/Pro+/Pro Max/Power 티어 배정
- 크레딧 사용량 모니터링
- Governance 정책으로 모델/MCP 제한
ID는 Identity Center가, 적용 단위는 Kiro Profile이 맡습니다 — 그룹에 배정하면 개별 유저에 자동 적용됩니다.
Governance 정책
Model Governance·MCP Registry·Administration Permissions — 개인이 오버라이드할 수 없는 조직 수준 정책
Model Governance
팀/프로젝트별 허용 모델 정책. 특정 모델만 사용하도록 제한 가능.
MCP Registry
조직 수준 MCP 서버 허용/차단. 승인된 도구만 연결 가능.
Administration Permissions
조직 수준 Permissions 정책. 개인이 오버라이드 불가.
거버넌스는 deny/ask만 강제할 수 있습니다 — 조직이 잠근 것을 개인이 열 수 없는 구조입니다.
속도와 안전의 균형