# 실행 중 방향 잡기

> 에이전트가 일하는 도중에 정정을 보내기 — 무엇을 바꿀 수 있고, 언제 반영되고, 횟수를 다 쓰면 어떻게 되는가.

**스티어링**은 아직 도는 중인 [실행](/ko/docs/work/runs/)에 정정을 보내는 것입니다. 에이전트가 다음 단계에서 그것을 반영하므로, 정정 비용이 실행 전체가 아니라 한 단계에 그칩니다.

## 언제 쓰는가

실행이 잘못 가는 것이 보이는 그 순간입니다. 나쁜 실행이 끝나기를 기다렸다가 무엇이 잘못됐는지 설명하면 그 사이의 모든 작업을 버리게 되고, 에이전트는 사용자가 지켜보고 있던 맥락을 처음부터 다시 쌓아야 합니다.

좋은 스티어는 짧고 교정적입니다.

- *"이번 주만, 한 달 전체 말고."*
- *"뉴스레터는 빼줘."*
- *"산문 말고 표로 써줘."*
- *"검색 그만해도 돼, 충분해 — 요약만 해줘."*

## 동작 방식

실행이 도는 중에 입력창에 쓰고 보내면 됩니다. 그 밖에 할 일은 없습니다. 실행 중에 보낸 메시지는 새 차례가 아니라 스티어입니다.

에이전트는 지금 하고 있는 도구 호출을 끝낸 다음, 다음 단계를 정하기 전에 정정을 읽습니다. 스티어가 가끔 한 박자 늦게 반영되는 것처럼 보이는 이유입니다. 이미 나간 호출은 취소되지 않습니다.

## 스티어링으로 바꿀 수 있는 것과 없는 것

| 할 수 있는 것 | 할 수 없는 것 |
| --- | --- |
| 다음에 할 일의 방향을 돌리기 | 이미 실행된 도구 호출을 되돌리기 |
| 작업 범위를 좁히거나 넓히기 | 이번 실행의 모델이나 프롬프트를 바꾸기 |
| 출력 형식을 바꾸기 | 이미 지워진 데이터를 되살리기 |
| 검색을 멈추고 답하게 하기 | 승인된 행동이 이미 보낸 메일을 회수하기 |

되돌릴 수 없는 일은 스티어링이 아니라 [승인](/ko/docs/work/approvals/) 관문이 막습니다. "그건 하지 마" 를 위한 장치는 그쪽이고, 행동 *뒤*가 아니라 *앞*에 섭니다.

## 스티어 횟수를 다 썼을 때

한 실행이 받는 스티어 횟수에는 한도가 있습니다. 기본은 다섯 번입니다. 실행을 새로 시작하는 대신 끝없이 방향만 돌리게 되는 것을 막는 장치입니다.

한도에 닿아도 메시지가 사라지지는 않습니다. 일반 후속 메시지로 전달되어 실행이 끝난 뒤에 처리됩니다. 이런 일이 생기면 대화에 표시됩니다.

<Aside type="tip" title="반복되는 스티어는 프롬프트 결함입니다">
  같은 에이전트에게 매번 같은 정정을 보내고 있다면, 그것은 [시스템 프롬프트](/ko/docs/build/system-prompt/)
  에 있어야 할 내용입니다. 스티어는 실행 하나를 고치고, 프롬프트는 모든 실행을 고칩니다.
</Aside>

## 한계

- 기본값은 실행당 다섯 번입니다.
- 스티어는 그것을 보낸 실행에만 적용됩니다. 프롬프트나 [메모리](/ko/docs/capabilities/memory/)에 넣지 않는 한 다음 실행에는 기억되지 않습니다.
- 스티어링은 채팅 환경에서 쓸 수 있습니다. [루틴](/ko/docs/automate/routines/)이나 [채널](/ko/docs/automate/channels/)에서 시작된 실행은 사용자 앞에 놓여 있지 않습니다.
- 이미 나간 도구 호출은 정정을 읽기 전에 끝납니다.

## 관련 문서

<CardGrid>
  <LinkCard
    title="실행"
    href="/ko/docs/work/runs/"
    description="실행이 무엇이고 진행 중에 어떻게 읽는지."
  />
  <LinkCard
    title="승인"
    href="/ko/docs/work/approvals/"
    description="되돌릴 수 없는 행동을 일어나기 전에 막는 관문."
  />
  <LinkCard
    title="시험하고 다듬기"
    href="/ko/docs/build/iterating/"
    description="반복되는 정정을 더 나은 에이전트로 바꾸기."
  />
</CardGrid>
