Thinking 수준 (/think 지시문)

기능

  • 인바운드 본문의 인라인 지시문: /t <level>, /think:<level> 또는 /thinking <level>.
  • 수준 (별칭): off | minimal | low | medium | high | xhigh (GPT-5.2 + Codex 모델만)
    • minimal → "think"
    • low → "think hard"
    • medium → "think harder"
    • high → "ultrathink" (최대 예산)
    • xhigh → "ultrathink+" (GPT-5.2 + Codex 모델만)
    • highest, maxhigh에 매핑됩니다.
  • 제공자 참고사항:
    • Z.AI (zai/*)는 바이너리 thinking (on/off)만 지원합니다. off가 아닌 모든 수준은 on으로 처리됩니다 (low에 매핑됨).

해결 순서

  1. 메시지의 인라인 지시문 (해당 메시지에만 적용).
  2. 세션 재정의 (지시문 전용 메시지를 보내서 설정).
  3. 전역 기본값 (구성의 agents.defaults.thinkingDefault).
  4. 폴백: 추론 가능 모델의 경우 low; 그렇지 않으면 off.

세션 기본값 설정

  • 지시문 있는 메시지를 보냅니다 (공백 허용), 예: /think:medium 또는 /t high.
  • 현재 세션에 고정됩니다 (기본적으로 발신자별); /think:off 또는 세션 유휴 재설정으로 지워집니다.
  • 확인 응답이 전송됩니다 (Thinking level set to high. / Thinking disabled.). 수준이 유효하지 않은 경우 (예: /thinking big), 명령이 힌트와 함께 거부되고 세션 상태는 변경되지 않습니다.
  • 인수 없이 /think (또는 /think:)을 보내면 현재 thinking 수준을 확인할 수 있습니다.

에이전트별 적용

  • Embedded Pi: 해결된 수준이 인프로세스 Pi 에이전트 런타임에 전달됩니다.

Verbose 지시문 (/verbose 또는 /v)

  • 수준: on (minimal) | full | off (기본값).
  • 지시문 전용 메시지는 세션 verbose를 토글하고 Verbose logging enabled. / Verbose logging disabled.로 응답합니다; 유효하지 않은 수준은 상태를 변경하지 않고 힌트를 반환합니다.
  • /verbose off는 명시적 세션 재정의를 저장합니다; inherit를 선택하여 Sessions UI를 통해 지웁니다.
  • 인라인 지시문은 해당 메시지에만 영향을 줍니다; 그렇지 않으면 세션/전역 기본값이 적용됩니다.
  • 인수 없이 /verbose (또는 /verbose:)를 보내면 현재 verbose 수준을 확인할 수 있습니다.
  • verbose가 on인 경우 구조화된 도구 결과를 내보내는 에이전트 (Pi, 기타 JSON 에이전트)는 각 도구 호출을 자체 메타데이터 전용 메시지로 다시 보냅니다. 가능한 경우 <emoji> <tool-name>: <arg> (path/command)가 접두사로 붙습니다. 이러한 도구 요약은 각 도구가 시작되자마자 전송됩니다 (별도의 버블), 스트리밍 델타가 아닙니다.
  • verbose가 full인 경우 도구 출력도 완료 후 전달됩니다 (별도의 버블, 안전한 길이로 잘림). 실행 중에 /verbose on|full|off를 토글하면 후속 도구 버블이 새 설정을 따릅니다.

Reasoning 가시성 (/reasoning)

  • 수준: on|off|stream.
  • 지시문 전용 메시지는 thinking 블록이 응답에 표시되는지 여부를 토글합니다.
  • 활성화되면 reasoning은 Reasoning: 접두사가 붙은 별도의 메시지로 전송됩니다.
  • stream (Telegram만): 응답이 생성되는 동안 reasoning을 Telegram 초안 버블로 스트리밍한 다음 reasoning 없이 최종 답변을 보냅니다.
  • 별칭: /reason.
  • 인수 없이 /reasoning (또는 /reasoning:)을 보내면 현재 reasoning 수준을 확인할 수 있습니다.

관련

Heartbeat

  • Heartbeat 프로브 본문은 구성된 heartbeat 프롬프트입니다 (기본값: Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.). Heartbeat 메시지의 인라인 지시문은 평소와 같이 적용됩니다 (하지만 heartbeat에서 세션 기본값을 변경하는 것은 피하세요).
  • Heartbeat 전달은 기본적으로 최종 페이로드만 전달합니다. 별도의 Reasoning: 메시지 (사용 가능한 경우)도 보내려면 agents.defaults.heartbeat.includeReasoning: true 또는 에이전트별 agents.list[].heartbeat.includeReasoning: true를 설정하세요.

웹 채팅 UI

  • 웹 채팅 thinking 선택기는 페이지가 로드될 때 인바운드 세션 저장소/구성에서 세션의 저장된 수준을 미러링합니다.
  • 다른 수준을 선택하면 다음 메시지에만 적용됩니다 (thinkingOnce); 전송 후 선택기는 저장된 세션 수준으로 돌아갑니다.
  • 세션 기본값을 변경하려면 /think:<level> 지시문을 보내세요 (이전과 같이); 선택기는 다음 새로고침 후 이를 반영합니다.