Refactor runtime around isolated bot instances

This commit is contained in:
zenord
2026-08-16 23:45:09 +08:00
parent 914579a94c
commit f9fb4ef776
51 changed files with 2355 additions and 1459 deletions
+11 -8
View File
@@ -2,19 +2,22 @@
set -euo pipefail
PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
GORI_AGENT_HOME="${GORI_AGENT_HOME:-$HOME/.gori-agent}"
BIN_DIR="$GORI_AGENT_HOME/bin"
GORI_AGENT_ROOT="${GORI_AGENT_ROOT:-$HOME/.gori-agent}"
BIN_DIR="$GORI_AGENT_ROOT/bin"
INSTANCES_DIR="$GORI_AGENT_ROOT/instances"
PROFILE_FILE="${GORI_AGENT_PROFILE:-$HOME/.bashrc}"
mkdir -p "$BIN_DIR" "$GORI_AGENT_HOME/state" "$GORI_AGENT_HOME/logs"
umask 077
mkdir -p "$BIN_DIR" "$INSTANCES_DIR"
chmod 700 "$GORI_AGENT_ROOT" "$BIN_DIR" "$INSTANCES_DIR"
cat >"$BIN_DIR/gori-agent" <<EOF
#!/usr/bin/env bash
set -euo pipefail
export GORI_AGENT_HOME="\${GORI_AGENT_HOME:-$GORI_AGENT_HOME}"
export GORI_AGENT_ROOT="\${GORI_AGENT_ROOT:-$GORI_AGENT_ROOT}"
exec "$PROJECT_ROOT/gori-agent.sh" "\$@"
EOF
chmod +x "$BIN_DIR/gori-agent"
chmod 700 "$BIN_DIR/gori-agent"
PATH_BLOCK_START="# >>> gori-agent >>>"
PATH_BLOCK_END="# <<< gori-agent <<<"
@@ -22,7 +25,7 @@ if [[ -w "$PROFILE_FILE" ]] && ! grep -q "$PATH_BLOCK_START" "$PROFILE_FILE"; th
{
echo ""
echo "$PATH_BLOCK_START"
echo "export GORI_AGENT_HOME=\"$GORI_AGENT_HOME\""
echo "export GORI_AGENT_ROOT=\"$GORI_AGENT_ROOT\""
echo "export PATH=\"$BIN_DIR:\$PATH\""
echo "$PATH_BLOCK_END"
} >>"$PROFILE_FILE"
@@ -30,5 +33,5 @@ fi
echo "Installed gori-agent to $BIN_DIR/gori-agent"
echo "Project root: $PROJECT_ROOT"
echo "PATH profile: $PROFILE_FILE"
echo "Run 'source $PROFILE_FILE' or open a new terminal, then use: gori-agent --help"
echo "Instances root: $INSTANCES_DIR"
echo "Run 'source $PROFILE_FILE' or open a new terminal, then use: gori-agent instance list"