From a306cbbce6d4eedca053850b0b79b3d08da7cc4d Mon Sep 17 00:00:00 2001 From: Ollie Agent Date: Thu, 30 Jul 2026 21:24:54 +0200 Subject: [PATCH] remove dead session scripts s/{sh,b,bfg,bbg} --- contrib/scripts/s/b | 191 -------------------------- contrib/scripts/s/bbg | 10 -- contrib/scripts/s/bfg | 13 -- contrib/scripts/s/sh | 305 ------------------------------------------ 4 files changed, 519 deletions(-) delete mode 100755 contrib/scripts/s/b delete mode 100755 contrib/scripts/s/bbg delete mode 100755 contrib/scripts/s/bfg delete mode 100755 contrib/scripts/s/sh diff --git a/contrib/scripts/s/b b/contrib/scripts/s/b deleted file mode 100755 index 92d01b1..0000000 --- a/contrib/scripts/s/b +++ /dev/null @@ -1,191 +0,0 @@ -#!/usr/bin/env bash -# s/b: one-shot ollie query via s/ namespace. -# -# Usage: job [flags] [prompt...] -# echo "prompt" | job [flags] - -set -euo pipefail - -MOUNT=${OLLIE:-$HOME/mnt/ollie} - -cmd=${0##*/} -die() { printf '%s: %s\n' "$cmd" "$*" >&2; exit 1; } - -# Retry a command once after remounting on I/O error. -try() { "$@" 2>/dev/null || { ollie-remount && "$@"; }; } -# Write $1 to file $2, retrying after remount on failure. -wf() { printf '%s\n' "$1" > "$2" 2>/dev/null || { ollie-remount && printf '%s\n' "$1" > "$2"; }; } - -usage() { - cat </dev/null || true - return $rc -} - -rc=0 - -if [ "$bg" -eq 1 ]; then - # Background mode: must use sessions (persistent state to poll later). - if [ "$parallel" -gt 1 ]; then - abort=$(mktemp) - trap 'rm -f "$abort"' EXIT - pids=() - for i in $(seq 1 "$parallel"); do - id="${base}-${i}" - ( - [ -s "$abort" ] && exit 1 - fn_run_one "$id" || { - if [ "$failfast" -eq 1 ]; then - echo 1 > "$abort" - for j in $(seq 1 "$parallel"); do - jid="${base}-${j}" - [ "$jid" != "$id" ] && rm -r "$MOUNT/s/$jid" 2>/dev/null || true - done - fi - exit 1 - } - ) & - pids+=($!) - done - for pid in "${pids[@]}"; do wait "$pid" || rc=1; done - else - fn_run_one "$base" || rc=1 - fi -else - # Foreground mode: use /generate (stateless, no session). - if [ "$parallel" -gt 1 ]; then - pids=() - for i in $(seq 1 "$parallel"); do - fn_generate & - pids+=($!) - done - for pid in "${pids[@]}"; do wait "$pid" || rc=1; done - else - fn_generate || rc=1 - fi -fi - -exit $rc diff --git a/contrib/scripts/s/bbg b/contrib/scripts/s/bbg deleted file mode 100755 index d1380dc..0000000 --- a/contrib/scripts/s/bbg +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/env bash -# s/bbg: batch background; submit prompt, print session path, return immediately. -for _arg; do - [ "$_arg" = "-help" ] && exec "${0%/*}/b" -help -done -cmd=${0##*/} -if [ $# -eq 0 ] && [ -t 0 ]; then - printf '%s: prompt required: pass as arguments or pipe via stdin\n' "$cmd" >&2; exit 1 -fi -exec "${0%/*}/b" -bg "$@" diff --git a/contrib/scripts/s/bfg b/contrib/scripts/s/bfg deleted file mode 100755 index 4085f11..0000000 --- a/contrib/scripts/s/bfg +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash -# s/bfg: batch foreground query; submit prompt, wait, print result. -for _arg; do - [ "$_arg" = "-help" ] && exec "${0%/*}/b" -help -done -cmd=${0##*/} -if [ $# -eq 0 ] && [ -t 0 ]; then - printf '%s: prompt required: pass as arguments or pipe via stdin\n' "$cmd" >&2; exit 1 -fi -if [ $# -eq 0 ] && ! [ -t 0 ]; then - exec "${0%/*}/b" "$(cat)" -fi -exec "${0%/*}/b" "$@" diff --git a/contrib/scripts/s/sh b/contrib/scripts/s/sh deleted file mode 100755 index ac4df52..0000000 --- a/contrib/scripts/s/sh +++ /dev/null @@ -1,305 +0,0 @@ -#!/usr/bin/env rc -# sh: interactive chat interface for ollie AI agents. - -MOUNT=/home/lkn/mnt/ollie -if(! ~ $#OLLIE 0) MOUNT=$OLLIE -LAST=$home/.config/ollie/last-session - -fn load_session { - awk -F'\t' -v d=$1 'NF==2 && $1==d {print $2; exit}' $LAST >[2]/dev/null -} - -fn save_session { - dir=$1 - sessid=$2 - mkdir -p `{dirname $LAST} - tmp=`{mktemp} - if(test -f $LAST) - awk -F'\t' -v d=$dir 'NF==2 && $1!=d' $LAST > $tmp - printf '%s\t%s\n' $dir $sessid >> $tmp - mv $tmp $LAST -} - -fn die { - echo $* >[1=2] - exit 1 -} - -fn remount { - ollie-remount >[2]/dev/null -} -fn cfg_get { - awk -F= -v k=$1 '$1==k{gsub(/^[ \t]+|[ \t]+$/,"",$2); print $2; exit}' $S/cfg >[2]/dev/null -} - -fn is_idle { - state=`{cat $S/state >[2]/dev/null || { remount; cat $S/state >[2]/dev/null }} - ~ $state idle -} - -fn show_new { - n=`{wc -c < $S/chat >[2]/dev/null} - if(~ $#n 0) n=0 - if(test $n -gt $chat_off) { - tail -c +`{expr $chat_off + 1} $S/chat - chat_off=$n - printf '\n' - } -} - -fn usage { - cat <<'EOF' -usage: sh [flags] - -Flags: - -new always create a new session - -resume resume last session for cwd; error if none - -session ID attach to a specific session by ID - -name NAME name for new session - -cwd DIR working directory (default: pwd) - -backend BACKEND backend override (e.g. ollama, anthropic) - -model MODEL model override - -agent AGENT agent config name - -help show this help - -Input at the prompt: - submit prompt, stream response - /stop interrupt the current agent turn - /kill kill the session and exit - /compact compact conversation history - /clear clear conversation history - /rn rename the session - /cwd [path] get or set working directory - /agent [name] get or set agent - /model [name] get or set model - /backend [name] get or set backend - /models list available models - /backends list available backends - /mcp list MCP servers - /usage show token usage - /ctxsz show context size - /q enqueue prompt for later - ! run shell command in session cwd - line ending with \ continue input (next line) - Enter submit input - Ctrl-C interrupt running turn (or exit if idle) -EOF - exit 0 -} - -new=0 -resume=0 - -while(! ~ $#* 0) { - switch($1) { - case -new - new=1 - case -resume - resume=1 - case -session - id_flag=$2 - shift - case -name - name=$2 - shift - case -backend - backend=$2 - shift - case -model - model=$2 - shift - case -agent - agent=$2 - shift - case -cwd - cwd=$2 - shift - case -help - usage - case * - die 'unknown flag: '^$1 - } - shift -} - -_dir=`{pwd} -if(! ~ $#cwd 0) _dir=$cwd - -fn write_new { - { - if(! ~ $#name 0) printf 'name=%s\n' $name - printf 'cwd=%s\n' $_dir - if(! ~ $#backend 0) printf 'backend=%s\n' $backend - if(! ~ $#model 0) printf 'model=%s\n' $model - if(! ~ $#agent 0) printf 'agent=%s\n' $agent - } > $MOUNT/s/new || { remount; { - if(! ~ $#name 0) printf 'name=%s\n' $name - printf 'cwd=%s\n' $_dir - if(! ~ $#backend 0) printf 'backend=%s\n' $backend - if(! ~ $#model 0) printf 'model=%s\n' $model - if(! ~ $#agent 0) printf 'agent=%s\n' $agent - } > $MOUNT/s/new } -} - -fn create_session { - if(! ~ $#name 0) { - write_new - id=$name - return - } - before=`{ls $MOUNT/s >[2]/dev/null} - write_new - deadline=`{expr `{date +%s} + 5} - while(test `{date +%s} -lt $deadline) { - for(d in `{ls $MOUNT/s >[2]/dev/null}) { - if(! ~ $d $before) { - id=$d - return - } - } - sleep 0.05 - } - die 'timeout waiting for new session' -} - -_picked=0 - -if(! ~ $#id_flag 0) { - if(! test -d $MOUNT/s/$id_flag) die 'session not found: '^$id_flag - id=$id_flag - printf 'session: %s (resumed)\n' $id >[1=2] - _picked=1 -} - -if(~ $_picked 0) if(~ $resume 1) { - id=`{load_session $_dir} - if(~ $#id 0) die 'no resumable session for '^$_dir - if(! test -d $MOUNT/s/$id) die 'no resumable session for '^$_dir - printf 'session: %s (resumed)\n' $id >[1=2] - _picked=1 -} - -if(~ $_picked 0) if(~ $new 1) { - create_session - save_session $_dir $id - printf 'session: %s\n' $id >[1=2] - _picked=1 -} - -if(~ $_picked 0) { - id=`{load_session $_dir} - if(! ~ $#id 0) if(test -d $MOUNT/s/$id) { - printf 'session: %s (resumed)\n' $id >[1=2] - _picked=1 - } - if(~ $_picked 0) { - create_session - save_session $_dir $id - printf 'session: %s\n' $id >[1=2] - } -} - -S=$MOUNT/s/$id - -fn sigint { - if(is_idle) exit 0 - echo stop > $S/ctl -} - -chat_off=0 -if(test -f $S/chat) chat_off=`{wc -c < $S/chat} - -if(! test -t 0) { - cat > $S/prompt || { remount; cat > $S/prompt } || die 'submit failed' - exit 0 -} - -tail -n 40 $S/chat >[2]/dev/null - -while(true) { - input=`` () {bash -c 'buf=; p="> "; c=". " -while IFS= read -r -e -p "$p" line /dev/tty; do - case $line in - *\\) buf="${buf}${line%\\} -"; p="$c";; - *) printf "%s" "$buf$line"; exit 0;; - esac -done; exit 1'} - if(~ $#input 0) break - switch($"input) { - case /stop - echo stop > $S/ctl - case /kill - echo kill > $S/ctl - break - case /compact - echo compact > $S/ctl - case /clear - echo clear > $S/ctl - case /cwd - cfg_get cwd - echo - case /cwd?* - newcwd=`{printf '%s\n' $"input | sed 's,^/cwd ,,'} - printf 'cwd=%s\n' $newcwd > $S/cfg - case /agent - cfg_get agent - echo - case /agent?* - printf 'agent=%s\n' `{printf '%s\n' $"input | sed 's,^/agent ,,'} > $S/cfg - show_new - case /model - cfg_get model - echo - case /model?* - printf 'model=%s\n' `{printf '%s\n' $"input | sed 's,^/model ,,'} > $S/cfg - show_new - case /backend - cfg_get backend - echo - case /backend?* - printf 'backend=%s\n' `{printf '%s\n' $"input | sed 's,^/backend ,,'} > $S/cfg - show_new - case /models - cat $S/models >[2]/dev/null - case /backends - cat $MOUNT/backends >[2]/dev/null - case /usage - cat $S/usage >[2]/dev/null - case /ctxsz - cat $S/ctxsz >[2]/dev/null - case /mcp - cat $S/mcp >[2]/dev/null - case /rn?* - newid=`{printf '%s\n' $"input | sed 's,^/rn ,,'} - printf 'rn %s\n' $newid > $S/ctl - id=$newid - S=$MOUNT/s/$id - save_session $_dir $id - case /q?* - printf '%s\n' `{printf '%s\n' $"input | sed 's,^/q ,,'} > $S/fifo.in - printf 'queued\n' >[1=2] - case /* - printf 'unknown command: %s\n' `{printf '%s\n' $"input | awk '{print $1}'} >[1=2] - case * - printf '%s\n' $"input > $S/prompt || { remount; printf '%s\n' $"input > $S/prompt } || { printf 'submit failed\n' >[1=2] } - - while(! is_idle) { - n=`{wc -c < $S/chat >[2]/dev/null} - if(~ $#n 0) n=0 - if(test $n -gt $chat_off) { - tail -c +`{expr $chat_off + 1} $S/chat - chat_off=$n - } - sleep 0.05 - } - - n=`{wc -c < $S/chat >[2]/dev/null} - if(~ $#n 0) n=0 - if(test $n -gt $chat_off) { - tail -c +`{expr $chat_off + 1} $S/chat - chat_off=$n - } - printf '\n' - } -}