BTW 사이드 질문
/btw는 해당 질문을 일반 대화 히스토리로 전환하지 않고 현재 세션에 대해 빠른 사이드 질문을 할 수 있게 해줍니다.
Claude Code의 /btw 동작을 모델로 삼았지만, OpenClaw의 게이트웨이 및 멀티 채널 아키텍처에 맞게 조정되었습니다.
동작 방식
다음을 전송하면:
/btw what changed?OpenClaw는 다음을 수행합니다:
- 현재 세션 컨텍스트를 스냅샷합니다,
- 별도의 도구 없는 모델 호출을 실행합니다,
- 사이드 질문에만 답변합니다,
- 메인 실행을 그대로 유지합니다,
- BTW 질문이나 답변을 세션 히스토리에 기록하지 않습니다,
- 일반 어시스턴트 메시지 대신 라이브 사이드 결과로 답변을 제공합니다.
중요한 개념 모델:
- 동일한 세션 컨텍스트
- 별도의 원샷 사이드 쿼리
- 도구 호출 없음
- 향후 컨텍스트 오염 없음
- 기록 지속성 없음
하지 않는 것
/btw는 다음을 하지 않습니다:
- 새로운 영구 세션 생성,
- 미완료된 메인 태스크 계속,
- 도구 또는 에이전트 도구 루프 실행,
- BTW 질문/답변 데이터를 기록 히스토리에 저장,
chat.history에 나타나기,- 재로드 후 유지.
의도적으로 일시적으로 설계되었습니다.
컨텍스트 작동 방식
BTW는 현재 세션을 배경 컨텍스트로만 사용합니다.
메인 실행이 현재 활성 상태인 경우, OpenClaw는 현재 메시지 상태를 스냅샷하고 진행 중인 메인 프롬프트를 배경 컨텍스트로 포함하면서 모델에게 명시적으로 알립니다:
- 사이드 질문에만 답변하고,
- 미완료된 메인 태스크를 재개하거나 완료하지 말고,
- 도구 호출이나 유사 도구 호출을 내보내지 마십시오.
이를 통해 BTW는 메인 실행과 격리되면서도 세션의 내용을 인식할 수 있습니다.
전달 모델
BTW는 일반 어시스턴트 기록 메시지로 전달되지 않습니다.
게이트웨이 프로토콜 수준에서:
- 일반 어시스턴트 채팅은
chat이벤트를 사용합니다 - BTW는
chat.side_result이벤트를 사용합니다
이 분리는 의도적입니다. BTW가 일반 chat 이벤트 경로를 재사용하면, 클라이언트는 이를 일반 대화 히스토리로 취급할 것입니다.
BTW는 별도의 라이브 이벤트를 사용하고 chat.history에서 재생되지 않으므로, 재로드 후 사라집니다.
표면 동작
TUI
TUI에서 BTW는 현재 세션 뷰에 인라인으로 렌더링되지만, 일시적으로 유지됩니다:
- 일반 어시스턴트 답변과 시각적으로 구분됩니다
Enter또는Esc로 해제 가능합니다- 재로드 시 재생되지 않습니다
외부 채널
Telegram, WhatsApp, Discord 같은 채널에서 BTW는 해당 표면에 로컬 임시 오버레이 개념이 없기 때문에 명확하게 레이블이 붙은 1회성 답변으로 전달됩니다.
답변은 여전히 사이드 결과로 처리되며, 일반 세션 히스토리로 처리되지 않습니다.
Control UI / 웹
게이트웨이는 BTW를 chat.side_result로 올바르게 내보내고, BTW는 chat.history에 포함되지 않으므로, 웹에 대한 지속성 계약은 이미 올바릅니다.
현재 Control UI에는 BTW를 브라우저에서 라이브로 렌더링하기 위한 전용 chat.side_result 소비자가 아직 필요합니다. 클라이언트 측 지원이 도착할 때까지, BTW는 완전한 TUI 및 외부 채널 동작을 갖춘 게이트웨이 수준 기능이지만, 아직 완전한 브라우저 UX는 아닙니다.
사용 시기
다음을 원할 때 /btw를 사용합니다:
- 현재 작업에 대한 빠른 설명,
- 긴 실행이 진행 중인 동안의 사실적인 사이드 답변,
- 향후 세션 컨텍스트의 일부가 되어서는 안 되는 임시 답변.
예시:
/btw what file are we editing?
/btw what does this error mean?
/btw summarize the current task in one sentence
/btw what is 17 * 19?사용하지 않을 시기
답변이 세션의 향후 작업 컨텍스트의 일부가 되기를 원한다면 /btw를 사용하지 마십시오.
그 경우, BTW 대신 메인 세션에서 일반적으로 질문하십시오.