OpenClaw는 켰는데, 이제 어떻게 굴리지? — 세션/워크스페이스/에이전트 운영 감 잡기
OpenClaw는 켰는데, 이제 어떻게 굴리지?
OpenClaw를 처음 띄우고 나면 묘한 성취감이 있다.
“오, 된다. 진짜 된다.”
그런데 그 다음에 바로 이런 질문이 따라온다.
- 세션은 언제 새로 파야 하지?
- 레포가 여러 개인데 workspace는 하나로 묶어야 하나?
- agent를 여러 개 돌리면 오히려 더 복잡해지는 거 아닌가?
나도 딱 여기서 막혔다. 실행 자체는 성공했는데, 운영 방식이 흐릿했다. 이번 글은 ChatGPT와의 대화에서 시작했지만, 거기서 끝내지 않고 OpenClaw 공식 문서까지 확인해 정리한 실전 버전이다.
1. “세션”은 탭이 아니라, 작업의 기억 단위다
처음엔 세션을 그냥 채팅방 하나쯤으로 생각했다. 하지만 실제로는 조금 다르다.
세션은 “대화 로그”이면서 동시에 “작업 문맥”이다. 즉, 세션을 어떻게 나누느냐가 곧 집중력 관리다.
내가 이해한 가장 쉬운 기준은 이거다.
하나의 목표를 끝낼 때까지는 같은 세션을 유지한다.
예를 들면:
- “블로그 글 1편 작성 + 커밋 + PR” → 같은 세션
- “OpenClaw 설치 디버깅” → 같은 세션
- “새 프로젝트 아키텍처 설계” → 별도 세션
중간에 전혀 다른 일을 붙이기 시작하면, 세션은 금방 잡탕이 된다. 그리고 며칠 뒤 다시 열었을 때 “내가 뭘 하던 중이었지?”가 된다.
결국 세션 관리는 아주 단순하게 요약된다.
작업 단위로 끊고, 문맥이 바뀌면 세션도 바꾼다.
2. 레포가 여러 개일 때, workspace는 “집”, repo는 “방”이다
OpenClaw에서 workspace는 에이전트의 집이다. 문서에서도 workspace를 “agent의 home”으로 정의한다.
여기서 중요한 포인트 하나:
workspace는 기본 작업 경로(cwd)일 뿐, 자동 샌드박스가 아니다.
즉, 상대경로는 workspace 기준으로 동작하지만, 절대경로를 쓰면 다른 경로도 접근할 수 있다. 격리가 정말 필요하면 sandbox 설정을 켜야 한다.
내가 정한 규칙은 아래처럼 단순하다.
~/work아래에 레포를 프로젝트별로 둔다.- 작업 시작할 때 “지금 어느 레포 작업인지”를 먼저 선언한다.
- 한 세션에서 여러 레포를 넘나들지 않는다(정 필요하면 세션 분리).
~/.openclaw(설정/크리덴셜/세션 저장소)는 코드 레포에 절대 커밋하지 않는다.
이렇게만 해도 사고가 크게 줄어든다. 특히 “다른 레포 파일을 실수로 건드리는” 문제를 예방하는 데 효과가 크다.
3. agent는 많이 두는 게 아니라, 역할을 분리하는 도구다
여기서 제일 많이 착각하는 포인트가 있다. “에이전트 여러 개 돌리면 더 빨라지겠지?”
반은 맞고, 반은 틀리다.
에이전트를 늘리면 속도가 빨라지는 게 아니라, 작업 분리 품질이 좋아진다. 즉, 병렬 실행보다 중요한 건 “책임 경계”다.
예를 들어 이렇게 나누면 좋다.
- 메인 세션: 방향 결정, 최종 확인, 대화
- 서브 에이전트 A: 코드 수정
- 서브 에이전트 B: 문서/릴리즈 노트 정리
- 서브 에이전트 C: 테스트/로그 확인
핵심은 메인 세션이 컨트롤 타워를 유지하는 것. 모든 걸 한 세션에 우겨 넣으면 결국 맥락 오염이 생긴다.
4. 공식 문서 기준 “진짜 운영 베스트 프랙티스”
여기부터는 체감 팁이 아니라, 문서 기반으로 꼭 지켜야 할 포인트다.
4-1) DM을 여러 사람이 보낼 수 있다면 dmScope부터 바꿔라
기본값(main)은 DM 문맥을 합쳐서 쓴다.
혼자 쓰는 봇이면 편하지만, 여러 사람이 DM을 보내는 환경에서는 문맥 누수가 생길 수 있다.
그래서 공식 문서도 multi-user 환경에서는 per-channel-peer 또는 per-account-channel-peer를 권장한다.
{
"session": {
"dmScope": "per-channel-peer"
}
}
4-2) 세션 저장소의 기준점은 “클라이언트”가 아니라 “Gateway”
세션 상태의 source of truth는 gateway다. 즉, macOS 앱이나 웹 UI가 아니라 gateway가 세션/토큰 상태를 소유한다. 원격 모드라면 특히 이 점을 놓치면 안 된다.
4-3) workspace는 하나를 명확히, 남는 workspace는 정리
예전 설치 흔적으로 workspace 폴더가 둘 이상 남아 있으면 인증/상태가 꼬이기 쉽다. 공식 문서도 “single active workspace”를 권장한다.
4-4) sub-agent는 성능 도구이기 전에 “비용/격리” 도구
sub-agent는 별도 세션으로 돌고, 결과를 메인 채팅으로 announce한다. 좋은 점은 병렬 처리지만, 비용은 세션별로 별도 발생한다.
그래서 실무적으로는:
- 메인은 고품질 모델
- 반복/리서치 sub-agent는 더 저렴한 모델
이 조합이 운영 효율이 좋다.
5. “운영 루틴”을 만들면 머리가 훨씬 편해진다
결국 도구보다 중요한 건 루틴이었다. 내가 지금 가장 실용적으로 쓰는 흐름은 이렇다.
시작할 때
- 오늘 할 일을 한 줄로 선언한다.
- 작업 대상 repo를 명확히 고른다.
- 이번 작업 전용 세션으로 시작한다.
진행 중
- 큰 단계가 끝날 때마다 중간 요약을 남긴다.
- 다른 주제가 튀어나오면 “나중에” 목록에 따로 빼둔다.
- 문맥이 바뀌면 과감하게 세션을 분리한다.
끝낼 때
- 결과(무엇이 바뀌었는지) 요약
- 다음 액션(남은 TODO) 기록
- 커밋/PR로 외부 상태까지 정리
여기서 포인트는 완벽함이 아니라 재진입 가능성이다. 내일의 내가 봐도 바로 이어서 일할 수 있게 만드는 것.
6. 실전에서 부딪히는 질문 3개
Q1. “세션을 너무 많이 만들면 오히려 관리가 어렵지 않나?”
맞다. 그래서 “작업 단위”로만 나눈다. 사소한 질문마다 새 세션을 만들 필요는 없다.
기준은 하나다.
이 대화가 2~3일 뒤에도 하나의 이야기로 읽히는가?
아니면 분리하는 게 낫다.
Q2. “한 세션에서 여러 repo 작업하면 안 되나?”
절대 금지는 아니지만, 비용이 크다. 문맥 전환 비용 + 실수 가능성 + 로그 혼잡이 한 번에 올라간다.
짧은 수정 정도는 가능해도, 의미 있는 작업은 repo별 세션 분리를 추천한다.
Q3. “결국 뭐부터 정착해야 하나?”
딱 두 가지만 먼저 고정하면 된다.
- 세션 이름(또는 주제) 규칙
- 작업 종료 요약 습관
그리고 multi-user DM 환경이라면 dmScope 설정을 가장 먼저 점검하자.
이건 편의가 아니라 안전 문제다.
마무리: OpenClaw 운영의 핵심은 기술보다 구조다
OpenClaw를 “실행하는 것”과 “잘 운영하는 것”은 다른 문제였다. 설치는 기술 문제였고, 운영은 구조 문제였다.
- 세션은 작업의 기억 단위로 관리하고,
- workspace는 집으로, repo는 방으로 분리하고,
- agent는 병렬 엔진이 아니라 역할 분리 도구로 사용한다.
나도 아직 완성형은 아니다. 하지만 이 틀을 잡은 뒤로는 “어디서부터 다시 시작해야 하지?”라는 느낌이 확실히 줄었다.
OpenClaw를 막 켠 사람이라면, 화려한 자동화보다 먼저 이 구조부터 잡아보자. 생각보다 훨씬 오래, 그리고 편하게 쓸 수 있다.
참고한 문서
- OpenClaw docs: Session Management
https://docs.openclaw.ai/concepts/session - OpenClaw docs: Agent Workspace
https://docs.openclaw.ai/concepts/agent-workspace - OpenClaw docs: Sub-Agents
https://docs.openclaw.ai/tools/subagents