From 7265c8202df445bc16caf18a0026200eca970a06 Mon Sep 17 00:00:00 2001 From: Levi Neely Date: Fri, 8 May 2026 14:46:41 +0200 Subject: [PATCH] sh: redefine sigintr during agent turn to interrupt without exiting --- scripts/s/sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/s/sh b/scripts/s/sh index d35c99c..57d8be5 100755 --- a/scripts/s/sh +++ b/scripts/s/sh @@ -192,8 +192,7 @@ S=$MOUNT/s/$id fn sigintr { printf '\n' >[1=2] - if(is_idle) exit 0 - echo stop > $S/ctl + exit 0 } chat_off=0 @@ -274,6 +273,8 @@ done; exit 1'} case * printf '%s\n' $"input > $S/prompt || { printf 'submit failed\n' >[1=2] } + fn sigintr { printf '\n' >[1=2]; echo stop > $S/ctl } + cat $S/statewait >/dev/null >[2]/dev/null while(! is_idle) { @@ -286,6 +287,8 @@ done; exit 1'} sleep 0.05 } + fn sigintr { printf '\n' >[1=2]; exit 0 } + n=`{wc -c < $S/chat >[2]/dev/null} if(~ $#n 0) n=0 if(test $n -gt $chat_off) {