에이전트 오류 학습 루프 (Agent Error Learning Loop)

AI 에이전트가 실수에서 “다시는 안 해” 규칙을 도출해 AGENTS.md(또는 CLAUDE.md)에 누적하는 구조적 학습 패턴. 핵심 원칙: 추상적 원칙이 아닌 구체적 실행 규칙만이 반복 실수를 방지하며, 1차 방어선(지침) + 2차 방어선(시스템 구조 변경)의 이중 방어가 최적이다.

오류 학습 루프 흐름

실수 발생
    ↓
원인 분석 (왜 발생했는가? 규칙 부재? 조건 미명시? 상태 추적 없음?)
    ↓
구체적 규칙 작성 (해석 여지 없이 그대로 따를 수 있는 수준)
    ↓
AGENTS.md / CLAUDE.md에 추가
    ↓
다시는 발생 불가

이 루프가 반복될수록 AGENTS.md가 두터워진다 = 에이전트가 강해진다. 9일 운영 기준 절대 규칙 0→14개 성장 사례. (출처: bbojjak-openclaw-agents-error-learning-lesson05)

“알고 있다 ≠ 실행한다” 원칙

추상적 원칙은 AI가 해석해야 한다. 해석은 틀릴 수 있다.

에이전트가 “불필요한 반복을 피하라”는 원칙을 알고 있어도 하트비트 루프에서 15번 중복 보고를 할 수 있다. 원칙을 알지만 특정 상황에 적용 판단을 놓치기 때문이다.

유형예시결과
❌ 추상적 원칙”불필요한 반복을 피하라”해석 실패 → 적용 누락 가능
✅ 구체적 규칙”최초 1회만. 메모리에서 ‘이미 보고했는지’ 확인”해석 없이 실행

절대 규칙 작성 기준: 다른 사람(또는 AI)이 읽었을 때 해석 여지 없이 실행할 수 있는가?

절대 규칙 패턴 3가지

패턴 1: 조건부 실행에 조건 명시

원인: 루틴 정의 시 실행 조건(시간, 상태, 트리거)을 누락 해결: 조건을 칼같이 명시

❌ "아침 브리핑을 보내라"
✅ "아침 브리핑은 KST 08:30~09:30 사이에만. 이 시간대 밖이면 절대 발송 금지"

패턴 2: 루프 반복 방지를 위한 상태 기억

원인: 하트비트 등 루프 기반 에이전트가 이전 실행 상태를 기억하지 않음 해결: 메모리 파일로 상태 추적 강제

❌ "오류 발생 시 보고한다"
✅ "오류는 최초 1회만 보고. 메모리 파일로 '이미 보고했는지' 반드시 확인"

패턴 3: 즉답 유혹 차단 — 원본 조회 강제

원인: 속도 우선으로 기억에 의존하는 즉답 해결: 조회를 건너뛰는 것 자체를 금지 규칙으로 명시

❌ "정확하게 답변한다"
✅ "일정/시간/숫자는 원본 데이터 조회 후 작성. 기억 의존 즉답 절대 금지"

2중 방어선 설계

Tip

절대 규칙(지침)만으로는 부족하다. 특히 위험도가 높은 오류는 실행 경로 자체를 제거하는 시스템 방어가 필요하다.

방어선방식강점약점
1차: 지침 (절대 규칙)AGENTS.md에 “하면 안 돼” 명시유연하게 적용 가능AI가 매번 판단. 한 번 놓치면 사고
2차: 시스템 (구조 변경)실행 경로 자체를 제거/단일화판단 불필요. 물리적으로 불가모든 상황에 적용 불가

이중 적용 예시 (매출 리포트 중복 발송):

  1. 1차: AGENTS.md에 “중복 발송 금지” 명시 (AI 판단)
  2. 2차: HEARTBEAT.md에서 해당 항목 삭제 → 실행 경로 자체가 하나로 단일화

적용 기준: 실수가 발생하면 → 1차 방어선 적용. 같은 실수가 재발하면 → 2차 방어선 추가.

CLAUDE.md 하네스와의 연결

harness-engineering의 CLAUDE.md 운영 철학과 이 루프는 동일한 원리다:

AGENTS.md (OpenClaw)CLAUDE.md (Claude Code 하네스)
절대 규칙CLAUDE.md 지침
SOUL.md + AGENTS.mdCLAUDE.md (두 역할 통합)
사고 → 절대 규칙 추가같은 실수 2번 → CLAUDE.md 추가
지침 → 시스템 이관CLAUDE.md → Hook/Skill 이관

특히 “같은 실수가 반복되면 시스템(Hook)으로 이관”하는 단계는 harness-engineering의 Phase 1→2→3 진화와 정확히 대응된다.

AGENTS.md = 조직의 실수 DB

AGENTS.md의 절대 규칙 목록은 단순한 금지 규칙 모음이 아니다. 에이전트가 실전에서 겪은 실수의 역사가 코드화된 문서다.

  • 규칙이 많을수록 = 더 많은 실전 경험이 쌓인 에이전트
  • 새 에이전트가 이 AGENTS.md를 처음 읽으면 = 선배의 실수를 미리 학습

이는 조직의 지식 관리(Knowledge Management) 관점에서도 중요하다: 개인 경험을 문서로 코드화하면 인수인계 없이 지식이 전달된다.

실전 적용

  • OpenClaw — AGENTS.md를 포함하는 에이전트 프레임워크
  • harness-engineering — CLAUDE.md = SOUL.md + AGENTS.md 역할 통합. 동일한 “실수 → 규칙 추가” 철학
  • agent-workspace-structure — AGENTS.md가 포함된 워크스페이스 7종 파일 구조
  • heartbeat-mechanism — 루프 기반 에이전트에서 절대 규칙이 특히 중요한 이유 (반복 실행)

실패 자동화 설계 — GUI 자동화에서의 재발

bbojjak-openclaw-automation-layers-lesson11 Lesson 11에서 동일한 사고 패턴이 GUI 자동화 맥락에서 재발했다: 카카오톡 앱 버그 → 하트비트마다 “처음 보고하는 것처럼” 15회 반복 보고.

이로부터 **“실패 자동화도 설계해야 한다”**는 원칙이 추가됐다:

  1. 에러 처리는 “감지”만으로 부족 → “이미 알고 있는 에러인지” 판단 메커니즘 필요
  2. 실패 시 재시도 횟수, 반복 보고 방지, 에스컬레이션 기준을 사전에 정의
  3. memory/ 파일에 “이미 보고한 에러” 상태 기록 → 다음 세션에서 판단 가능

이 패턴은 자동화의 안정성을 결정하는 핵심이며, automation-layer-framework의 GUI 자동화 설계 원칙과 연결된다.

관련 개념

즉시 학습 (Instant Learning) — 보안 버전

agent-skill-ecosystem-trust의 즉시 학습은 이 에러 학습 루프의 보안 특화 변형이다. (출처: bbojjak-openclaw-skill-ecosystem-lesson18)

사고 루프(Lesson 05):  에러 발생 → 원인 분석 → 규칙 작성 → AGENTS.md 추가
즉시 학습(Lesson 18):  인젝션 감지 → 방어 → 새 패턴 → learnings/prompt-injection.md append

차이: 즉시 학습은 인간의 개입 없이 에이전트가 스스로 경험을 파일에 기록한다. 공통: 두 패턴 모두 “경험이 파일에 기록되어 다음 세션에 전달”되는 구조.

RALF 자동수정 루프 사례

yt-autopus-adk-16agent-framework-2026의 RALF(RED→GREEN→REFACTOR→LOOP)는 이 개념의 실행형 구현이다.

  • 에러 감지 → 수정 → 재검증을 최대 5회 반복
  • 3회 연속 개선이 없으면 중단(서킷 브레이크)
  • 실패 원인을 기록해 다음 작업에서 동일 실수 재발을 억제

즉, 오류 학습 루프는 “규칙 문서화” 단계에 그치지 않고, 자동 수정 파이프라인 + 중단 조건 + 학습 기록이 함께 설계될 때 실전 안정성을 얻는다.

소스