Publish reviewed development agents and WUI draft with recovery evidence (#1497)
This commit is contained in:
@@ -5,7 +5,7 @@ REPO="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
cd "$REPO"
|
||||
|
||||
usage() {
|
||||
echo 'Usage: scripts/agent.sh --host-dev AGENT [--fresh] [--check] [--soul FILE] [--constitution FILE] [--user FILE]'
|
||||
echo 'Usage: scripts/agent.sh --host-dev AGENT [--fresh] [--check] [--soul FILE] [--constitution FILE] [--user FILE] [--provider NAME] [--model ID] [--thinking LEVEL]'
|
||||
echo 'Default: resume the latest agent development conversation; first launch starts one.'
|
||||
}
|
||||
fail() { echo "${AGENT:-tui}: $*" >&2; exit 1; }
|
||||
@@ -20,12 +20,23 @@ shift
|
||||
SOUL="$REPO/agents/$AGENT/SOUL.md"
|
||||
CONSTITUTION="$REPO/contracts/CONSTITUTION.md"
|
||||
USER_FILE=""
|
||||
PROVIDER=""
|
||||
MODEL=""
|
||||
THINKING=""
|
||||
FRESH=false
|
||||
CHECK=false
|
||||
while [ "$#" -gt 0 ]; do
|
||||
case "$1" in
|
||||
--fresh) FRESH=true; shift ;;
|
||||
--check) CHECK=true; shift ;;
|
||||
--provider|--model|--thinking)
|
||||
[ "$#" -ge 2 ] && [ -n "$2" ] && [[ "$2" != --* ]] || fail "$1 needs a value"
|
||||
case "$1" in
|
||||
--provider) PROVIDER="$2" ;;
|
||||
--model) MODEL="$2" ;;
|
||||
--thinking) THINKING="$2" ;;
|
||||
esac
|
||||
shift 2 ;;
|
||||
--soul|--constitution|--user)
|
||||
[ "$#" -ge 2 ] && [ -n "$2" ] || fail "$1 needs a file"
|
||||
case "$1" in
|
||||
@@ -43,6 +54,15 @@ done
|
||||
source "$REPO/scripts/common.sh"
|
||||
load_config
|
||||
[ "$MOSAIC_ADAPTER" = pi ] || fail 'native launcher requires the pi adapter'
|
||||
PROVIDER="${PROVIDER:-$MOSAIC_PROVIDER}"
|
||||
MODEL="${MODEL:-$MOSAIC_MODEL}"
|
||||
THINKING_ARGS=()
|
||||
if [ -n "$THINKING" ]; then
|
||||
case "$THINKING" in
|
||||
off|minimal|low|medium|high|xhigh|max) THINKING_ARGS=(--thinking "$THINKING") ;;
|
||||
*) fail "invalid thinking level: $THINKING" ;;
|
||||
esac
|
||||
fi
|
||||
USER_FILE="${USER_FILE:-$MOSAIC_DATA_ROOT/user/USER.md}"
|
||||
PI="$REPO/node_modules/.bin/pi"
|
||||
[ -x "$PI" ] || fail 'run npm ci --ignore-scripts --no-audit --no-fund in the repository first'
|
||||
@@ -62,7 +82,7 @@ for skill in "${SKILLS[@]}"; do
|
||||
done
|
||||
[ -s "$REPO/extensions/goal/index.ts" ] || fail 'missing canonical goal extension'
|
||||
STATE="$REPO/.pi/state/$AGENT"
|
||||
echo "$AGENT: native host TUI | Pi $PIN | $MOSAIC_PROVIDER/$MOSAIC_MODEL"
|
||||
echo "$AGENT: native host TUI | Pi $PIN | $PROVIDER/$MODEL${THINKING:+:$THINKING}"
|
||||
echo "$AGENT: workspace $REPO"
|
||||
echo "$AGENT: SOUL=$SOUL | CONSTITUTION=$CONSTITUTION | USER=$USER_FILE"
|
||||
echo "$AGENT: sessions $STATE/sessions | skills: ${SKILLS[*]}"
|
||||
@@ -116,5 +136,5 @@ exec "$PI" --approve --offline --no-context-files --no-extensions --no-skills \
|
||||
--extension "$REPO/.pi/extensions/goal/index.ts" \
|
||||
"${SKILL_ARGS[@]}" \
|
||||
--tools read,bash,edit,write,grep,find,ls,goal_report \
|
||||
--provider "$MOSAIC_PROVIDER" --model "$MOSAIC_MODEL" \
|
||||
--provider "$PROVIDER" --model "$MODEL" "${THINKING_ARGS[@]}" \
|
||||
--append-system-prompt "$PROMPT" "${SESSION_ARGS[@]}"
|
||||
|
||||
Reference in New Issue
Block a user