콘텐츠로 이동

OpenClaw 규칙 씹힘 문제 — 해결책 모음

OpenClaw 규칙 씹힘 문제 — 해결책 모음

섹션 제목: “OpenClaw 규칙 씹힘 문제 — 해결책 모음”

OpenClaw의 AGENTS.md / systemPromptOverride 규칙이 실제 동작 중 무시되거나 잘리는 현상에 대한 해결책 정리. 깃허브 공식 이슈 및 커뮤니티 논의를 기반으로 함.


🔴 근본 원인 (깃허브 이슈 기반)

섹션 제목: “🔴 근본 원인 (깃허브 이슈 기반)”
이슈원인상태
#75187AGENTS.md 중요 규칙이 파일 하단에 있어 bootstrapMaxCharshead-truncation 당함Open
#72150systemPromptOverride가 게이트웨이 재시작 / sessions.json 삭제 시 세션 재생성 안 됨Closed
#71378Guard 레이어 추가 PR (L3) — 입/출력/메모리 필터링Abandoned
#76248세션 modelOverride / providerOverride 무시됨 (비슷한 패턴)Closed

1️⃣ bootstrapMaxChars 값 늘리기 (가장 기본)

섹션 제목: “1️⃣ bootstrapMaxChars 값 늘리기 (가장 기본)”
Terminal window
openclaw config set agents.defaults.bootstrapMaxChars 8000
# 또는 더 큰 값 (모델 컨텍스트 창에 맞춰)

#75187 의 핵심 원인. 기본값이 작으면 AGENTS.md 하단 규칙이 잘림.


2️⃣ AGENTS.md 수동 재배치 — 중요 규칙을 상단으로

섹션 제목: “2️⃣ AGENTS.md 수동 재배치 — 중요 규칙을 상단으로”

openclaw doctor --fix 자동 생성 템플릿에서:

  • ## Red Lines, ## External vs Internal 같은 핵심 규칙을 파일 상단으로 이동
  • 개성/인사말 등은 하단으로

#75187 에서 제안된 workaround. 자동 생성기 버그가 고쳐질 때까지 수동 정렬.


3️⃣ systemPromptOverride 재적용 스크립트 (재시작 대응)

섹션 제목: “3️⃣ systemPromptOverride 재적용 스크립트 (재시작 대응)”

게이트웨이 재시작 후 sessions.json이 초기화되면 override 사라짐.

Terminal window
# 재시작 후 자동 적용하도록 alias나 systemd post-hook
openclaw config set 'agents.list.0.systemPromptOverride' 'YOUR_RULES_HERE'
# 또는
openclaw gateway restart && sleep 5 && openclaw config reload

#72150 해결책. 세션 재생성 시 override를 다시 주입해야 함.


4️⃣ 모델 컨텍스트 창 키우기 (모델 변경)

섹션 제목: “4️⃣ 모델 컨텍스트 창 키우기 (모델 변경)”

큰 컨텍스트 창 모델 사용:

  • gpt-4o, claude-sonnet-4, gemini-1.5-pro
  • 또는 로컬: qwen3-32b, gemma4-31b (Ollama)

규칙이 길수록 큰 컨텍스트가 유리. 작은 모델(8B)은 규칙 잘리기 쉬움.


5️⃣ rules를 user 메시지에 중복 삽입 (fallback)

섹션 제목: “5️⃣ rules를 user 메시지에 중복 삽입 (fallback)”

System prompt가 씹히면 user turn에 다시 넣기:

[시스템 규칙 리마인더]
- 추측 금지
- 검색한 척 금지
- ...

커뮤니티에서 나온 “belt and suspenders” 방식. 완전한 해결은 아니지만 안전장치.


6️⃣ Guard 레이어 사용 (L3 가드 — 실험적)

섹션 제목: “6️⃣ Guard 레이어 사용 (L3 가드 — 실험적)”

#71378 에서 논의된 입/출력 검증 레이어:

  • input guard: 모델 입력 전 규칙 위반 여부 검사
  • output guard: 응답 후 규칙 준수 확인 (재생성 트리거)
  • memory guard: 메모리 저장 전 필터
  • skill guard: 스킬 호출 전 제한 검사

PR은 abandoned 되었지만, 비슷한 로직을 커스텀 프롬프트로 구현 가능.


7️⃣ OpenClaw 버전 업데이트 + 세션 파일 백업

섹션 제목: “7️⃣ OpenClaw 버전 업데이트 + 세션 파일 백업”
Terminal window
openclaw update
# sessions.json 정기 백업
cp ~/.openclaw/sessions.json ~/.openclaw/sessions.json.bak

#72150 버그는 최신 버전에서 일부 패치됨. 세션 파일 보존이 중요.


8️⃣ AGENTS.md를 CLAUDE.md로 분할 (프로젝트별)

섹션 제목: “8️⃣ AGENTS.md를 CLAUDE.md로 분할 (프로젝트별)”

워크스페이스 루트 AGENTS.md는 짧게 유지하고, 프로젝트 폴더별 CLAUDE.md에 세부 규칙 분산:

  • 전역 규칙 (짧게)
  • 프로젝트별 규칙 (해당 폴더에서만 로드)

커뮤니티에서 제안한 토큰 절약 전략.


  1. 즉시: bootstrapMaxChars 늘리기
  2. 중기: AGENTS.md 수동 재배열 (중요 규칙 상단)
  3. 장기: systemPromptOverride 재적용 스크립트 + 큰 컨텍스트 모델


[!note] 수정이력

  • 2026-05-03 16:09, 분홍 (hermes): 최초 작성 — 깃허브 이슈 기반 해결책 8가지 정리