[AI & Robot] 9. OpenClaw in Detail

2026년 04월 30일
공개 Hanyang Univ 26-01

1. OpenClaw의 다차원 마크다운(.md) 생태계

OpenClaw는 에이전트의 정체성, 환경, 기술, 기억을 별도의 파일로 관리합니다. 이는 토큰 효율성을 높이고 모델이 복잡한 지시사항 사이에서 길을 잃지 않게 합니다.

[정체성 및 환경 설정]

  1. SOUL.md (영혼/근본 원칙): 에이전트가 절대로 어겨서는 안 될 최상위 가이드라인입니다. (예: "데이터 삭제 전 반드시 승인 필요", "모호한 지시는 추측하지 말고 질문할 것")
  2. IDENTITY.md (페르소나): 에이전트의 전문 분야와 말투를 규정합니다.
  3. USER.md (사용자 프로필): 사용자의 기술 스택, 작업 환경, 선호하는 코드 스타일 등을 기록합니다. 에이전트는 이를 바탕으로 "따로 말하지 않아도" 사용자에게 최적화된 결과물을 내놓습니다.

[운영 및 실행 도구]

  1. AGENTS.md (협업 매뉴얼): 여러 에이전트가 협업할 때 업무를 넘겨주는(Handoff) 규칙을 정의합니다.
  2. SKILL.md (도구 명세서): 에이 전트가 사용할 수 있는 '무기'들입니다. 특정 Python 라이브러리 사용법, API 호출 규격, 셸 스크립트 실행 절차 등이 모듈화되어 있습니다.

[기억 및 자동화]

  1. MEMORY.md (장기 기억): 프로젝트의 핵심 진행 상황, 과거의 중요한 의사결정 등을 저장합니다. 세션이 바뀌어도 맥락이 끊기지 않는 핵심 장치입니다.
  2. INDEX.md (지식 인덱스): 방대한 일일 로그와 문서 중 필요한 정보를 즉시 찾기 위한 메타데이터 저장소입니다.
  3. HEARTBEAT.md (스케줄링/자율 실행): 사용자의 명령 없이도 특정 시간에 에이전트를 깨우는 트리거입니다. (예: "매일 아침 9시, 어제 작업 로그 요약 보고")

2. 자율적 추론(Agentic Reasoning)의 심층 분석

과거의 방식(LangChain, Flowise 등)과 OpenClaw의 결정적인 차이는 '비결정론적 유연성'에 있습니다.

[기존 방식: DAG(유향 비순환 그래프) 기반 파이프라인]

LangChain이나 Flowise는 개발자가 '순서도'를 그립니다.

  1. "A를 수행하라" -> "실패하면 B로 가라" -> "성공하면 C로 가라"
  2. 한계: 개발자가 예상치 못한 에러(네트워크 오류, 라이브러리 버전 충돌 등)가 발생하면 전체 프로세스가 멈춥니다. AI는 그저 정해진 궤도 위를 달리는 열차와 같습니다.

[OpenClaw 방식: ReAct 기반 자율 추론]

OpenClaw는 순서도를 그리지 않고 '목표'와 '도구'만 줍니다. 에이전트는 내부적으로 다음의 루프를 무한 반복합니다.

  1. Plan (계획): 목표를 달성하기 위한 하위 단계들을 스스로 설계합니다.
  2. Act (실행): 필요한 SKILL을 로드하여 도구를 실행합니다.
  3. Observe (관찰): 실행 결과를 분석합니다. (성공했는가? 에러가 났는가?)
  4. Reflect (성찰/수정): 결과가 예상과 다르다면, 왜 실패했는지 추론하고 계획을 즉시 수정합니다.

3. 실무 예시: "기술 세미나용 파워포인트 자동 생성"

사용자가 "내일 있을 로봇 자율주행 세미나 발표 자료 PPT로 만들어줘"라고 한 마디만 던졌을 때, OpenClaw 내부에서 일어나는 과정입니다.

Step 1: 상황 파악 및 계획 수립 (Reasoning)

  1. 에이전트는 USER.md를 읽고 사용자가 로봇 센터장이며, 현재 'Lemmy' 프로젝트를 진행 중임을 파악합니다.
  2. SKILL.md에서 python-pptx 라이브러리를 활용한 PPT 생성 기술이 있는지 확인합니다.
  3. 계획: "1) 최신 자율주행 트렌드 리서치, 2) 장표 구성안 작성, 3) Python 코드로 PPT 파일 생성"

Step 2: 실행 및 관찰 (Act & Observe)

  1. 에이전트가 python-pptx를 이용해 첫 번째 장표를 만들려고 시도합니다.
  2. 장애 발생: 로컬 환경에 해당 라이브러리가 설치되어 있지 않아 ImportError가 발생합니다.

Step 3: 자율적 수정 (Self-Correction - OpenClaw의 진가)

  1. 기존 방식: "라이브러리가 없어 실행할 수 없습니다"라고 에러를 뱉고 멈춤.
  2. OpenClaw:
  3. 에러 로그를 관찰하고 "라이브러리 부재"가 원인임을 스스로 파악합니다.
  4. SKILL.md에서 terminal_command 스킬을 꺼내어 pip install python-pptx 명령어를 스스로 실행합니다.
  5. 설치 성공을 확인한 뒤, 다시 PPT 생성 코드를 실행합니다.

Step 4: 최종 성찰 및 기록 (Reflect & Memory)

  1. PPT 파일 생성이 완료되면, 에이전트는 장표 내용을 검토하며 SOUL.md에 정의된 "전문성 있는 톤앤매너"가 유지되었는지 스스로 평가합니다.
  2. 작업 완료 후 MEMORY.md에 "2026-04-30: 로봇 세미나 PPT 생성 완료. 사용된 소스 및 라이브러리 환경 세팅 기록됨"이라고 적어둡니다. 다음에 비슷한 요청이 오면 설치 과정을 생략하고 더 빠르게 작업하기 위함입니다.