eager와 restrained 사이에 balanced 위임 편향(delegation bias)을 추가했습니다. delegation-bias 규칙이 없는 모델은 이제 eager 대신 이 값으로 해석됩니다ask 도구는 questions[] 대신 HTML 폼 하나({ html })를 받습니다. 모델이 라디오, 체크박스, 선택 상자, 텍스트 입력, 텍스트 영역으로 구성된 <form>을 작성하며, 추천 항목이 미리 선택되어 있습니다. 제출된 폼 데이터는 JSON으로 반환됩니다. AskToolDetails는 이제 { answers: { name, question, answer }[]; timedOut? } 형태입니다. QuestionResult와 도구의 "Other", "Chat about this", 답변 메모, 답변 이미지 경로는 제거되었습니다. /tree에서 다시 답변하면 원래 폼이 다시 열립니다(NavigateTreeResult.reopenAsk는 html을 포함합니다).ask 답변을 오른쪽 클릭하면 메모(Note) 메뉴가 나타납니다. 답변을 선택하지 않고 해당 답변에 메모를 남길 수 있습니다(#18551, @H4vC 작성).task.eager(preferred/always)가 이제 메인 에이전트의 시스템 프롬프트에만 영향을 줍니다. 서브에이전트는 추가 서브에이전트 생성을 강요받는 대신 자체 모델의 위임 정책을 따릅니다.ask 폼에 그림을 표시할 수 있습니다. http(s) URL, data: URI, 로컬 파일(세션의 작업 디렉터리 기준 상대 경로)의 <img src>와 인라인 <svg> 다이어그램을 지원하며, 터미널 폼과 Tern에서 네이티브로 그려집니다.ask 폼의 모든 라디오 및 체크박스 그룹에 자유 입력 "Other" 답변이 추가되었습니다. 입력한 텍스트는 라디오의 값이 되거나 체크박스 그룹의 배열에 추가됩니다(필드별 폴백, 협업 게스트, ACP 설명 요청 포함).ui.formDialog(html, options)가 추가되었습니다. HTML <form>을 렌더링하며 { data, timedOut? }로 결정됩니다(취소 시 undefined). 대화형 TUI는 이를 폼 대화상자로 렌더링하고, 폼 설명 요청을 지원하는 ACP 클라이언트는 필드마다 속성 하나를 가진 설명 요청 하나를 받습니다. 이를 지원하지 않는 호스트(RPC)는 select/input/editor를 통해 ask 도구의 필드를 하나씩 답합니다.sh로 셸 명령을 실행할 수 있습니다. Python에서는 sh("git status"), JavaScript에서는 await sh`ls ${dir}` 또는 await sh("make", { cwd })를 사용합니다. 명령은 내장 bash 엔진에서 끝까지 실행되며(자동으로 백그라운드 전환되지 않음), 출력을 반환하고, 실패 시 종료 코드와 함께 ShellError를 발생시킵니다.omp zsh는 PATH에 없는 명령(ls, cat, head, jq 등)에 대해 omp 내장 유틸리티를 실행합니다. 단, command_not_found_handler가 처리하는 경우는 예외입니다(#18532, @H4vC 작성).history:// 간결한 기록, proc:// 작업 보존 및 대기 중 에이전트 조회, read JSON 쿼리 텍스트 출력에 대한 도구 및 내부 URL 설명을 명확하게 다듬었습니다(#18553, @xiangnan0811 작성).ask 답변을 클릭한 뒤 메모를 선택하면, 방금 클릭한 답변 대신 표시된 질문에서 강조 표시된 답변에 메모가 남습니다(#18551, @H4vC 작성).n으로 추가한 ask 메모가 표시된 질문이 아니라 이전 질문에 저장되던 문제를 수정했습니다. Tern에서 클릭 후 메모를 선택하면 여전히 방금 클릭한 답변에 메모가 남으며, 메모 버튼에도 해당 답변이 표시됩니다(#18317, @DonMikone 작성)./export가 실패하던 문제를 수정했습니다. sub/../session.html 같은 상대 경로도 포함됩니다. 내보내기 메시지에는 기록된 파일의 전체 경로가 표시됩니다(#18369, #18525, @minhngoc25a 작성).Tasks로 지정하여, 이후 업데이트에서 해당 단계를 참조할 수 있도록 했습니다(#18552, @xiangnan0811 작성).omp zsh와 bash 도구의 작업 제어 없는 백그라운드 명령이 zsh 및 bash와 마찬가지로 Ctrl-C(INT, zsh에서는 QUIT 포함)를 무시하도록 수정했습니다. 이에 따라 콘솔에서 Ctrl-C를 눌러도 실행 중인 상태가 유지됩니다(#18532, @H4vC 작성).omp zsh가 시스템 zsh의 함수 라이브러리(compinit 로드)를 찾도록 수정했습니다(#18532, @H4vC 작성).omp zsh에서 입력한 명령 끝에 ^M이 붙지 않도록 수정했고, Path를 통해 프로그램을 찾으며, 파이프로 전달된 스크립트의 모든 줄을 실행합니다. cd는 C:\…/C:/…, .., ~를 지원하며($PWD는 C:/…로 유지), >/dev/null이 동작하고, 프롬프트는 root의 # 대신 %로 표시되며, $OSTYPE은 msys이고, USERNAME 경고가 더 이상 출력되지 않습니다(#18532, @H4vC 작성).omp zsh는 이제 ZLE로 줄을 편집합니다(히스토리, Tab 자동완성, 키 바인딩, $COLUMNS). Ctrl-C는 셸을 종료하는 대신 줄을 버리거나, INT 트랩을 실행하거나, 계속 진행되는 read를 중단합니다(#18532, @H4vC 작성).omp zsh에서 Ctrl-C가 포그라운드 프로그램을 중단하며, jobs, fg, bg가 동작합니다(fg로 가져온 작업도 Ctrl-C를 받습니다). 또한 프로세스 치환이 Windows 프로그램에서도 동작합니다(diff <(…) <(…), prog >(…))(#18532, @H4vC 작성)./dev/null이 동작합니다(>/dev/null, cat /dev/null, [ -c /dev/null ])(#18532, @H4vC 작성).omp zsh와 bash 도구의 /dev/tty가 콘솔을 엽니다(prog >/dev/tty). 또한 Ctrl-C로 종료된 MSYS 또는 Cygwin 프로그램은 512 대신 상태 130을 보고합니다(#18532, @H4vC 작성).omp zsh는 단일 명령과 마찬가지로 백그라운드 파이프라인에 대해 [n] pid 줄을 출력합니다(#18532, @H4vC 작성).omp zsh의 compinit이 여러 배의 속도로 빨라졌습니다. 단일 배열 및 연관 배열 요소는 전체 매개변수를 복사하지 않고 할당 및 읽기되며, autoload -r은 해석하는 함수마다 $fpath의 .zwc 다이제스트를 다시 읽지 않습니다(#18533, @H4vC 작성).omp zsh의 read -k와 read -q는 zsh와 같이 표준 입력 대신 Enter를 기다리지 않고 터미널에서 키를 읽습니다(#18533, @H4vC 작성).omp zsh 자동완성 목록에 파일 유형 표시(dir/, exe*)가 다시 나타나며, print -c는 터미널이 없어도 단어를 열 단위로 배치하고, ${x?msg}는 zsh와 같이 비대화형 셸을 상태 1로 종료합니다(#18533, @H4vC 작성).omp zsh의 부동소수점 값은 산술 연산에서 전체 정밀도를 유지합니다(s=$EPOCHREALTIME; print $(( EPOCHREALTIME - s ))가 최대 1초까지 어긋나지 않음). -F/-E 스타일 출력도 그대로 유지됩니다(#18533, @H4vC 작성).omp zsh의 typeset -U path / typeset -U fpath(및 local -U path)가 zsh와 같이 중복 항목을 제거합니다(#18533, @H4vC 작성).omp zsh와 bash 도구에서 백그라운드 파이프라인의 $!는 bash 및 zsh와 같이 마지막 프로그램의 pid가 됩니다. 따라서 kill $!은 해당 프로그램에 신호를 보냅니다. omp zsh의 백그라운드 파이프라인 [n] 줄은 zsh와 같이 각 프로세스의 pid를 나열합니다(#18547, @H4vC 작성).omp zsh가 더 빨라졌습니다. 함수 호출, 반복문, 산술 연산이 2~3배 빨라졌고, compinit은 거의 4배 빨라졌습니다. 큰 배열이나 연관 배열을 한 번에 한 요소씩 만들거나(a+=(x), h[k]=v), 큰 배열에서 $a[i]를 읽을 때 더 이상 크기에 비례해 느려지지 않습니다(#18565, @H4vC 작성).ask 도구 카드는 대기 중일 때 HTML 폼의 fieldset 범례와 필드 수를 표시하고, 답변이 완료되면 각 질문과 제출된 답변(또는 "(no answer)")을 표시합니다. 시간 초과로 제출된 항목은 별도로 표시됩니다.ask 도구 렌더러가 이제 { html } 폼 호출과 AskToolDetails { answers, timedOut } 결과를 그립니다. QuestionResult와 질문 목록 세부 필드는 제거되었습니다.HtmlFormDialog가 추가되었습니다. HTML 폼을 대화형 터미널 폼으로 렌더링하고, 긴 폼은 여러 페이지로 나누며, 답변을 JSON으로 반환합니다. 단일 <select>는 한 줄짜리 드롭다운이 되고, 라디오 및 체크박스 그룹에는 자유 입력 "Other" 답변이 제공됩니다. <img>(URL, data: URI, 로컬 파일)와 인라인 <svg> 그림은 백그라운드에서 로드됩니다. 선택적 비활성 시간 제한을 설정하면 현재 값이 제출되며, Tern 터미널에서는 폼이 네이티브로 표시됩니다.Editor.setText에 cursor: "start" 옵션이 추가되어, 미리 채워진 여러 줄 텍스트가 첫 줄에서 열립니다.n을 누르면 ask 대화상자의 메모가 표시된 행이 아니라 이전 질문의 답변에 저장되던 문제를 수정했습니다. 포인터 클릭만 메모를 방금 선택한 답변으로 리디렉션하며, 이때 Note 버튼에도 해당 답변이 표시됩니다(#18317, @DonMikone 작성).Full Changelog: v18.18.2...v18.18.3