에이전트 작업 공간
작업 공간은 에이전트의 홈입니다. 파일 도구 및 작업 공간 컨텍스트에 사용되는 유일한 작업 디렉토리입니다. 개인적으로 유지하고 메모리처럼 취급하세요. 이는 설정, 자격 증명 및 세션을 저장하는~/.openclaw/와는 별도로 존재합니다.
중요: 작업 공간은 **기본 현재 작업 디렉토리(cwd)**이며, 강력한 샌드박스가 아닙니다. 도구들은 작업 공간을 기준으로 상대 경로를 해석하지만, 샌드박스 격리 기능이 활성화되지 않으면 절대 경로로 호스트의 다른 위치에 도달할 수 있습니다. 고립이 필요하다면 agents.defaults.sandbox(또는 에이전트별 샌드박스 설정)을 사용하세요. 샌드박스 격리가 활성화되어 있고 workspaceAccess가 "rw"가 아닌 경우, 도구는 호스트 작업 공간이 아닌 ~/.openclaw/sandboxes 밑의 샌드박스 작업 공간 내부에서 작동합니다.
기본 위치
- 기본값:
~/.openclaw/workspace OPENCLAW_PROFILE이 설정되어 있고"default"가 아닌 경우, 기본값이~/.openclaw/workspace-<profile>로 변경됩니다.~/.openclaw/openclaw.json에서 재정의할 수 있습니다:
openclaw onboard, openclaw configure, 또는 openclaw setup은 작업 공간을 생성하고 부트스트랩 파일을 생성합니다.
이미 작업 공간 파일을 관리하고 있다면, 부트스트랩 파일 생성을 끌 수 있습니다:
추가 작업 공간 폴더
이전 설치에서는~/openclaw가 생성됐을 수 있습니다. 여러 작업 공간 디렉토리를 유지하는 것은 인증이나 상태 드리프트를 유발할 수 있으며, 한 번에 하나의 작업 공간만 활성화될 수 있습니다.
추천: 단 하나의 활성 작업 공간을 유지하세요. 추가 폴더를 더 이상 사용하지 않는다면, 이를 보관하거나 휴지통으로 이동하세요 (예시: trash ~/openclaw). 여러 작업 공간을 의도적으로 유지한다면, agents.defaults.workspace가 활성화된 작업 공간을 가리키도록 하세요.
openclaw doctor는 추가 작업 공간 디렉토리를 감지하면 경고합니다.
작업 공간 파일 맵 (각 파일의 의미)
작업 공간 내에 OpenClaw가 기대하는 표준 파일들은 다음과 같습니다:-
AGENTS.md- 에이전트를 위한 작동 지침과 메모리 사용 방식.
- 매 세션 시작 시 로드.
- 규칙, 우선순위 및 “행동 요령”을 위한 좋은 장소.
-
SOUL.md- 페르소나, 어조, 경계.
- 모든 세션에서 로드.
-
USER.md- 사용자가 누구인지 및 그들에게 말하는 방법.
- 모든 세션에서 로드.
-
IDENTITY.md- 에이전트의 이름, 분위기, 이모지.
- 부트스트랩 의식 중 생성/업데이트.
-
TOOLS.md- 로컬 도구 및 컨벤션에 대한 노트.
- 도구 가용성을 통제하지 않음; 단지 가이드.
-
HEARTBEAT.md- 하트비트 실행을 위한 선택적 체크리스트.
- 토큰 소모를 피하기 위해 짧게 유지.
-
BOOT.md- 게이트웨이 재시작 시 내부 훅이 활성화된 경우 실행되는 선택적 시작 체크리스트.
- 짧게 유지; 발신 전송에는 메시지 도구를 사용.
-
BOOTSTRAP.md- 일회성 첫 실행 의식.
- 새로운 작업 공간에만 생성.
- 의식이 완료되면 삭제.
-
memory/YYYY-MM-DD.md- 일일 메모리 로그 (하루에 한 파일).
- 세션 시작 시 오늘 + 어제를 읽는 것을 권장.
-
MEMORY.md(선택 사항)- 선별된 장기 메모리.
- 메인, 비공개 세션에서만 로드 (공유/그룹 컨텍스트에서는 제외).
-
skills/(선택 사항)- 작업 공간 전용 스킬.
- 이름이 충돌할 때 관리/번들링된 스킬을 대체.
-
canvas/(선택 사항)- 노드 디스플레이를 위한 캔버스 UI 파일 (예:
canvas/index.html).
- 노드 디스플레이를 위한 캔버스 UI 파일 (예:
agents.defaults.bootstrapTotalMaxChars (기본값: 150000)로 조정합니다. openclaw setup은 기존 파일을 덮어쓰지 않고 누락된 기본값을 재생성할 수 있습니다.
작업 공간에 포함되지 않는 항목
다음 항목은~/.openclaw/에 있으며 작업 공간 저장소에 커밋되지 않아야 합니다:
~/.openclaw/openclaw.json(설정)~/.openclaw/credentials/(OAuth 토큰, API 키)~/.openclaw/agents/<agentId>/sessions/(세션 기록 + 메타데이터)~/.openclaw/skills/(관리된 스킬)
Git 백업 (권장, 비공개)
작업 공간을 개인 메모리로 취급하세요. 개인 git 저장소에 넣어 백업하고 복구 가능하게 합니다. 게이트웨이가 실행되는 머신에서 다음 단계를 수행합니다 (작업 공간이 존재하는 곳).1) 저장소 초기화
git이 설치되어 있으면, 새로운 작업 공간은 자동으로 초기화됩니다. 이 작업 공간이 이미 저장소가 아니라면, 다음을 실행하세요:2) 비공개 원격 추가 (초보자 친화적 옵션)
옵션 A: GitHub 웹 UI- GitHub에서 새로운 비공개 저장소를 생성합니다.
- README를 초기화하지 않습니다 (병합 충돌 방지).
- HTTPS 원격 URL을 복사합니다.
- 원격을 추가하고 푸시합니다:
gh)
- GitLab에서 새로운 비공개 저장소를 생성합니다.
- README를 초기화하지 않습니다 (병합 충돌 방지).
- HTTPS 원격 URL을 복사합니다.
- 원격을 추가하고 푸시합니다:
3) 지속적인 업데이트
비밀 커밋 금지
비공개 저장소에서도, 작업 공간에 비밀을 저장하지 않도록 하세요:- API 키, OAuth 토큰, 비밀번호 또는 개인 자격 증명.
~/.openclaw/아래의 모든 것.- 채팅이나 민감한 첨부 파일의 원시 덤프.
~/.openclaw/).
제안 .gitignore 시작기:
새로운 머신으로 작업 공간 이동
- 저장소를 원하는 경로로 복제합니다 (기본값
~/.openclaw/workspace). - 그 경로에서
agents.defaults.workspace를~/.openclaw/openclaw.json에 설정합니다. - 누락된 파일을 생성하기 위해
openclaw setup --workspace <path>를 실행합니다. - 세션이 필요하다면, 예전 머신에서
~/.openclaw/agents/<agentId>/sessions/를 별도로 복사합니다.
고급 참고 사항
- 멀티 에이전트 라우팅은 에이전트별로 다른 작업 공간을 사용할 수 있습니다. 라우팅 설정에 대해서는 채널 라우팅을 참조하세요.
agents.defaults.sandbox가 활성화된 경우, 비주 메인 세션은agents.defaults.sandbox.workspaceRoot아래의 세션별 샌드박스 작업 공간을 사용할 수 있습니다.