오픈클로 AI 에이전트에 대한 하드 가드레일 강제: 승인 게이팅 및 동시성 제한

Mac mini에서 Ollama(GLM 5.2, 폴백 Anthropic Sonnet 4.6 및 Haiku)로 OpenClaw 봇을 실행하는 개발자가 전형적인 문제에 직면했습니다: 봇이 "승인 없이 이메일 보내지 않기" 및 "최대 5개 동시 호출"과 같은 하드 규칙을 매번 이해를 확인함에도 불구하고 반복적으로 위반합니다. 사용자의 가설은 정확합니다: 이것은 컨텍스트로서의 규칙이지 제약으로서의 규칙이 아닙니다. 모델은 지침을 권고로 처리하므로 프롬프팅이나 메모리 강화로는 해결되지 않습니다.
표준 해결책은 적용을 모델의 추론 루프 외부로 이동하는 것입니다. 통계적 텍스트 예측기에 하드 제한을 적용하도록 의존할 수 없습니다. 오케스트레이션 계층에서 결정적 검사가 필요합니다.
도구 호출에 대한 승인 게이팅
이메일(또는 위험한 작업)을 승인 뒤로 게이트하려면 도구 호출을 인간-인-더-루프 패턴으로 래핑하세요:
- 모델이 이메일 전송을 요청하면 실행 전에 호출을 가로챕니다.
- Discord에서 확인 프롬프트를 표시합니다(예: 버튼 또는 반응).
- 사용자가 승인한 경우에만 실제 API 호출을 실행합니다.
# OpenClaw 도구 핸들러의 의사 코드
if tool == "send_email":
message = f"다음으로 이메일 전송을 승인하시겠습니까? {to}"
if not await discord_approval(message):
return "사용자가 거부했습니다. 보내지 마세요."
# 이메일 API 호출 진행
이렇게 하면 모델이 말로 무엇을 하든 물리적으로 게이트를 우회할 수 없습니다.
오케스트레이션 수준의 동시성 제한
"최대 5"와 같은 동시성 제한의 경우 명령 디스패처에 세마포어 또는 카운터를 구현하세요:
import asyncio
semaphore = asyncio.Semaphore(5)
async def handle_tool_call(tool, args):
async with semaphore:
# 도구 호출 실행
제한을 초과하는 모든 시도는 모델 의도와 관계없이 대기하거나 즉시 실패합니다.
이것이 GLM/Ollama 특정 문제인가요?
사용자는 이것이 GLM에 특정한지 아니면 로컬 모델에 일반적인지 묻습니다. r/openclaw 토론에 따르면 이는 일반적인 LLM 한계입니다—모든 모델은 지침을 컨텍스트로 처리하지 제약으로 처리하지 않습니다. 프롬프팅만으로는 하드 제한을 적용할 수 없습니다. 해결책은 항상 인프라 수준의 적용을 필요로 합니다.
권장 사항
메모리나 스킬에 규칙을 다시 진술하는 것을 중지하세요. 대신 도구 호출 계층에 명시적 검사를 구축하세요. 모델을 정책 집행자가 아닌 제안 엔진으로 취급하세요.
📖 전체 소스 읽기: r/openclaw
👀 See Also
Coldstart 및 종료 세션 스크립트: OpenClaw를 위한 향상된 에이전트 메모리
OpenClaw 사용자가 콜드스타트 및 세션 종료 스크립트와 SOP 디렉토리를 공유하여 에이전트가 컨텍스트 전환 및 반복 문제 해결을 돕습니다.

비판적 LLM 상호작용을 위한 실용적인 습관
레딧 게시물은 LLM 작업 시 확증 편향을 피하기 위한 구체적인 기법을 설명하며, 중립적 설명을 위한 '딸기' 모드와 적대적 검토를 위한 '소크라테스' 모드 같은 맞춤형 프롬프트 모드와 훈련 데이터 구성 평가를 포함합니다.

OpenClaw: 작업이 재시작 후에도 유지되지 않는다면, 그것은 여전히 채팅 세션입니다
Reddit 게시물은 대화 기록에 상태를 의존하는 OpenClaw 작업은 재개할 수 없다고 주장합니다. 작업 ID, 단계 및 승인 상태를 대화 기록 외부에 저장하세요.

OpenClaw를 통해 여러 ChatGPT 계정에서 사용되지 않은 Codex Reset 크레딧 확인
한 사용자가 두 번째 OAuth 계정에서 속도 제한 초기화 크레딧이 만료되는 것을 발견했습니다. 에이전트가 두 계정을 스캔하여 총 6개의 사용되지 않은 크레딧을 찾았습니다. 하나를 사용하여 1분 이내에 쿨다운을 해제했습니다. 함정은 문서화되지 않은 엔드포인트와 스킬 발견 문제입니다.