JIN.PROC // v3.1
~/ / AI 활용법 / 2026-04-29-ai-guide-3-autonomous

[AI 활용법 3] 자율모드 — 안전한 위임의 기술

감독 없이 돌아가는 AI에게 무엇을 맡기고 무엇을 막아야 하는가

DATE 2026.04.29 UPDATED 2026.04.29 READ ~ 3 MIN WORDS 529

시리즈 3편. 자율모드는 편의 기능 이 아니라 위임 기능 이다. 감독이 없는 만큼 더 엄격한 가드레일이 필요하다.

자율모드의 정의

“자율모드(autonomous mode)”는 AI가 사용자의 실시간 개입 없이 사전 정의된 작업 큐를 독립적으로 처리하는 모드다. 일반 대화 모드와 다른 점은 한 가지 — 다음 행동을 사용자에게 묻지 않는다.

이 한 가지가 모든 안전 비용을 결정한다. 묻지 않는 만큼, 사전에 막아 놓아야 한다.

진입은 보수적으로

자율모드는 다음 중 하나가 충족될 때만 진입한다:

  • 사용자가 명시적으로 “자율모드 시작” / @autonomous / “큐 소화해줘”
  • 프로젝트 CLAUDE.md에 자율모드 활성화가 명시
  • plans/today-queue.md가 존재하고 사용자가 그 파일 기반 실행을 요청

모호하면 진입하지 않는다. 일반 모드를 기본값으로.

작동 루프

1. 큐 확인        → plans/today-queue.md 맨 위 작업
2. 계획 요약      → logs/YYYY-MM-DD.md에 미리 기록
3. 실행            → feature 브랜치에서
4. 테스트/검증    → 통과 못 하면 커밋 안 함
5. 커밋           → Conventional Commits, 영문, 사용자 identity
6. 완료 기록      → logs에 변경 파일·커밋 해시·테스트 결과 append
7. 다음 작업       → 큐에서 해당 항목 제거
8. 막히면         → blocked.md로 이동, 다음 항목으로

루프의 핵심은 “되돌릴 수 있는 작업만 자동화” 다.

절대 금지 — Hard Blocks

자율모드에서는 사용자 승인이 있더라도 수행하지 않는 행위:

범주 금지 행위
DB 프로덕션 DB 마이그레이션, DROP, DELETE, TRUNCATE
Git push origin main/master, force push, reset --hard, 브랜치 삭제
결제 실제 외부 API 키가 필요한 결제·주문·송금의 실호출 (샌드박스는 OK)
시크릿 .env, *.key, *.pem, 인증 설정 파일 편집
시스템 글로벌 패키지 설치 (npm i -g, brew, apt)
외부 통신 허가되지 않은 외부 서버 대량 송신, 웹훅 실호출
파일 홈 디렉터리 밖 대량 삭제, 시스템 파일 편집

원칙: 자율모드는 되돌릴 수 있는 것 만 한다. 외부 상태(돈, 고객 데이터, 프로덕션)에 영향이 가는 일은 무조건 에스컬레이션.

실패 처리 — 막히면 멈춘다

  • 한 작업 시도는 최대 3회.
  • 한 작업이 3회 연속 실패 → blocked.md로 이동, 다음 큐로.
  • 세션 내 7회 이상 연속 실패 → 자율모드 자체 중단, 사용자에게 에스컬레이션.

blocked.md 기록 형식:

## [YYYY-MM-DD HH:mm] <작업 제목>

**시도 횟수**: 3
**실패 원인**:
- 시도 1: <요약 + 에러>
- 시도 2: ...
- 시도 3: ...

**필요한 판단/정보**:
- 사용자에게 물어봐야 할 것
- 부족한 정보·권한·사양

검증 게이트 — 예외 없음

스택별 필수 검증을 커밋 전 에 통과시킨다:

  • TypeScript: tsc --noEmit + npm test
  • Python: pytest + mypy/pyright
  • Go: go build ./... + go test ./... + go vet
  • Rust: cargo check + cargo test + cargo clippy

검증이 불가능한 환경이면 그 사실을 로그에 남기고 블록 처리 한다. “테스트 못 돌렸지만 작동할 것” 은 자율모드에서 절대 금지.

작업 큐 항목 형식

today-queue.md의 한 항목:

## [TASK-001] OAuth PKCE 도입
- 목표: 기존 implicit flow → PKCE 전환
- 영향 범위: src/auth/*, tests/auth/*
- 완료 기준: 단위 테스트 + e2e 1건 통과
- 관련 이슈: #123
- 위험도: medium

위험도: high인 항목은 자율모드로 처리하지 않는다. 사람에게 넘긴다.

자율모드 종료 보고

세션이 끝나면 logs/YYYY-MM-DD.md 하단에:

## 자율모드 세션 요약 (HH:mm ~ HH:mm)
- 처리 완료: <N개>
- 블록됨: <M개> (blocked.md 참조)
- 실패: <K개>
- 생성 커밋: <해시 목록>
- 남은 큐: <개수>
- 종료 사유: 큐 소진 | 실패 상한 | 사용자 중지 | 금지 범위 감지

한 줄 요약

자율모드의 비결은 “무엇을 시킬까” 가 아니라 “무엇을 절대 못 하게 할까” 의 목록이다.


다음 편: AI 활용법 4 — 모듈화·성능·UI: AI에게 맡길 때의 가드레일 이전 편: AI 활용법 2 — 컨텍스트 관리