수업 #1 — 뽀짝이는 어디에 살아요?
Source: bbojjak-viewer.vercel.app/lessons/lesson-01 Type: article By: 뽀짝이 / 뽀짝이의 서재 (지피터스 AI스터디) Valid as of: 2026-04-28
Key Insight
실제 운영 중인 Claude 에이전트(뽀짝이)가 자신의 아키텍처를 직접 설명한 교육용 시리즈. LLM(두뇌) + OpenClaw 프레임워크(몸) + 워크스페이스 .md 파일(정체성) + 하트비트(능동성) = 실제 동작하는 에이전트의 구조 공식.
핵심 Takeaway
- 두뇌 + 몸 = 에이전트: LLM(Claude 모델)은 생각만, OpenClaw는 도구/채널/스케줄 연결 담당. 둘 다 없으면 동작 불가 (출처: OpenClaw 섹션)
- 워크스페이스 파일 7종: SOUL/USER/AGENTS/MEMORY/TOOLS/HEARTBEAT/IDENTITY .md로 에이전트의 정체성·규칙·기억·도구·루틴을 완전 정의 — CLAUDE.md 하네스의 실사례 (출처: 워크스페이스 섹션)
- 하트비트로 능동적 에이전트 구현: 매 시간 크론잡이 에이전트를 깨워 순찰·브리핑·리마인드 실행. 수동 챗봇 ↔ 능동 에이전트의 결정적 차이 (출처: 하트비트 섹션)
- 세션(.jsonl) + 장기 기억(MEMORY.md) 이중 구조: 컨텍스트 윈도우 한계를 영구 메모리 파일로 보완 — 세션 종료 후에도 지식 유지 (출처: 세션 섹션)
- 독립 워크스페이스 = 독립 에이전트: 같은 하드웨어·같은 LLM이어도 워크스페이스 분리 시 완전히 다른 에이전트 (출처: 멀티에이전트 섹션)
상세 요약
실행 환경: Mac mini 한 대 위 세 에이전트
뽀짝이(bbojjak) · 뽀야 언니(bboya) · 닿플갱어(dahtmad) 세 에이전트가 하나의 Mac mini에서 독립된 워크스페이스로 실행된다. 각자 방을 따로 쓰는 룸메이트 구조 — 워크스페이스 간 파일 접근 금지.
OpenClaw 오픈소스 프레임워크
AI 에이전트를 “동작하게 만드는” 인프라 계층. Claude 모델이 두뇌라면 OpenClaw는 몸. 제공 기능 5가지:
- 메시지 전달 — Slack/텔레그램 메시지 라우팅
- 도구 연결 — Airtable, 문자, 파일 I/O 등 도구 API 브리지
- 스케줄링 — 크론잡, 하트비트 실행
- 채널 관리 — Slack · 텔레그램 · 웹훅 멀티채널
- 세션 관리 — .jsonl 대화 기록 저장 및 맥락 유지
Contradiction
- 이 소스: OpenClaw = 오픈소스 에이전트 오케스트레이션 프레임워크 (메시지/도구/스케줄링 인프라)
- simon-willison-gpt-5-5: OpenClaw = Peter Steinberger 제작 Claude 구독 API 직접 통합 앱 (Anthropic 차단됨)
- 동명이지만 다른 제품일 가능성 높음. 두 소스 모두 기록, 판정 보류.
에이전트 워크스페이스 파일 구조 (7종)
| 파일 | 역할 | CLAUDE.md 하네스 대응 |
|---|---|---|
| SOUL.md | 성격·말투·행동 방식 정의 | System Prompt / 역할 지침 |
| USER.md | 팀원 정보·권한 체계 | 사용자 컨텍스트 |
| AGENTS.md | 절대 규칙·폴더 구조·파일명 규칙 | CLAUDE.md 핵심 지침 |
| MEMORY.md | 장기 기억 요약 (세션 간 지속) | Memory / 영구 파일 |
| memory/ | 날짜별 상세 작업 일지 | 작업 로그 |
| TOOLS.md | 도구별 사용법·API 키 위치 | MCP 연결 정보 |
| HEARTBEAT.md | 시간별 루틴·트리거 조건 | Stop Hook / Cron 스케줄 |
| IDENTITY.md | 이름·Slack Bot ID·아바타 | 에이전트 메타데이터 |
같은 Claude 모델이라도 SOUL.md가 달라지면 완전히 다른 캐릭터가 된다 — 하네스 레이어가 LLM의 행동을 결정함을 실증.
하트비트 메커니즘
매 시간 OpenClaw가 크론잡으로 에이전트를 깨워 HEARTBEAT.md(일과표)를 기반으로 할 일을 체크한다. 할 일 없으면 HEARTBEAT_OK 반환 후 대기. 이 구조가 에이전트를 **능동적(proactive)**으로 만드는 핵심.
실행 루틴 예시:
- Slack 채널 새 질문 → 자동 답변
- Linear 긴급 이슈 → 알림 발송
- 09:00 KST → 일일 브리핑 발송
- 예약된 리마인드 → 카톡방 전송
세션과 장기 기억 분리
- 세션(.jsonl): 하나의 대화 맥락. 컨텍스트 윈도우 한계로 장기 보존 불가.
- MEMORY.md: 핵심 정보 요약본 — 세션 시작 시 읽어 맥락 복원.
- memory/ 폴더: 날짜별 상세 일지 — 과거 특정 날 조회 가능.
5일 동안 268개 세션 파일 생성됨 (2026-02 기준 뽀짝이 실적).
멀티에이전트 독립 실행
뽀야(개인 비서) vs 뽀짝이(스터디 운영 비서) — 같은 Mac mini, 같은 Claude 모델이지만 워크스페이스 분리로 완전 독립. 세션·기억·도구 접근 권한이 모두 별개.
연결되는 위키 페이지
- heartbeat-mechanism — 하트비트 패턴 상세 개념
- agent-workspace-structure — 에이전트 워크스페이스 파일 구조
- harness-engineering — CLAUDE.md 하네스와 동등한 패턴
- agent-identity-design — SOUL.md 5가지 구성요소 상세 (Lesson 02에서 심화)
- OpenClaw — 동명 다른 제품 주의 (Contradiction 기록)
- bbojjak-openclaw-soul-md-lesson02 — 시리즈 Lesson 02 (SOUL.md 심화)
- bbojjak-openclaw-webhook-pipeline-lesson03 — 시리즈 Lesson 03 (웹훅 자동답변 파이프라인)
- bbojjak-openclaw-multi-agent-team-lesson04 — 시리즈 Lesson 04 (멀티에이전트 팀 설계)
- bbojjak-openclaw-agents-error-learning-lesson05 — 시리즈 Lesson 05 (AGENTS.md 절대 규칙·오류 학습 루프)
- bbojjak-openclaw-session-architecture-lesson06 — 시리즈 Lesson 06 (세션·컴팩션·채널 라우팅)
- bbojjak-openclaw-runtime-architecture-lesson07 — 시리즈 Lesson 07 (터미널 vs 런타임 아키텍처 비교)
- bbojjak-openclaw-memory-architecture-lesson08 — 시리즈 Lesson 08 (기억 3단계·Full-context·Prompt Caching)
- bbojjak-openclaw-scheduling-design-lesson09 — 시리즈 Lesson 09 (하트비트 vs 크론잡·3가지 사고·스케줄링 설계)
- bbojjak-openclaw-skill-design-lesson10 — 시리즈 Lesson 10 (에이전트 스킬 시스템·SKILL.md·n8n→스킬 전환)
- bbojjak-openclaw-automation-layers-lesson11 — 시리즈 Lesson 11 (exec·자동화 3계층·exec-approvals·Trust but verify)
- bbojjak-openclaw-subagent-orchestration-lesson12 — 시리즈 Lesson 12 (sessions_spawn·맥락의 격차·판단 최소화 원칙)
- bbojjak-openclaw-playwright-image-pipeline-lesson13 — 시리즈 Lesson 13 (Playwright·HTML→PNG·browser 도구·디자인 시스템)
- bbojjak-openclaw-gateway-architecture-lesson14 — 시리즈 Lesson 14 (Gateway·멀티채널 라우팅·Tailscale Funnel·보안 4중 잠금)
- bbojjak-openclaw-multichannel-session-lesson15 — 시리즈 Lesson 15 특별편 (Slack 스레드·텔레그램 토픽 세션 분리·DM 함정·bindings)
- bbojjak-openclaw-token-optimization-lesson16 — 시리즈 Lesson 16 (토큰 소비처 5순위·RTK·hook vs 지침·능동적 compact·Sonnet 전환)
- bbojjak-openclaw-agent-security-lesson17 — 시리즈 Lesson 17 (프롬프트 인젝션·보안 3원칙·에이전트 분리·심층 방어)
- bbojjak-openclaw-skill-ecosystem-lesson18 — 시리즈 Lesson 18 (보안 스킬 선택 3단계·구조>스킬·즉시 학습+SSOT·오픈 생태계 신뢰 평가)
- bbojjak-openclaw-resilience-failover-lesson19 — 시리즈 Lesson 19 (Model Failover·세션 스티킨스·Agent Loop·작업별 모델 분리·34% 절감)
- bbojjak-openclaw-information-boundary-lesson20 — 시리즈 Lesson 20 (분리 이후 운영·일방향 동기화·민감정보 추출·에스컬레이션·오탐 관리)