From 375546b1b5c5b1629ef3730b612eedfb7fc8ed2d Mon Sep 17 00:00:00 2001 From: Stefan Date: Sat, 30 May 2026 21:55:26 +0200 Subject: [PATCH 1/7] Fix directory path in paperclip installation script --- install/paperclip-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index ce2260f9..b14a912a 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -72,7 +72,7 @@ for PAPERCLIP_ONBOARD_CMD in \ "pnpm paperclipai onboard --yes --bind lan" \ "pnpm paperclipai onboard --yes"; do rm -f "$PAPERCLIP_ONBOARD_LOG" - setsid bash -c "cd /opt/paperclip && ${PAPERCLIP_ONBOARD_CMD}" >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & + setsid bash -c "cd /opt/paperclip-ai && ${PAPERCLIP_ONBOARD_CMD}" >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! for _ in {1..60}; do if [[ -f /opt/paperclip-data/instances/default/config.json ]]; then From 6673781e35ffbab18c826b733fa40f96ae6087fe Mon Sep 17 00:00:00 2001 From: Stefan Date: Sat, 30 May 2026 23:00:52 +0200 Subject: [PATCH 2/7] Add environment variables for onboarding commands Set environment variables for PAPERCLIP_HOME and PAPERCLIP_CONFIG before executing onboarding commands. --- install/paperclip-install.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index b14a912a..bf3c4d84 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -51,6 +51,7 @@ HOST=0.0.0.0 PORT=3100 SERVE_UI=true PAPERCLIP_HOME=/opt/paperclip-data +PAPERCLIP_CONFIG=/opt/paperclip-data/instances/default/config.json PAPERCLIP_INSTANCE_ID=default PAPERCLIP_DEPLOYMENT_MODE=authenticated PAPERCLIP_DEPLOYMENT_EXPOSURE=private @@ -72,7 +73,11 @@ for PAPERCLIP_ONBOARD_CMD in \ "pnpm paperclipai onboard --yes --bind lan" \ "pnpm paperclipai onboard --yes"; do rm -f "$PAPERCLIP_ONBOARD_LOG" - setsid bash -c "cd /opt/paperclip-ai && ${PAPERCLIP_ONBOARD_CMD}" >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & + setsid env \ + PAPERCLIP_HOME="/opt/paperclip-data" \ + PAPERCLIP_CONFIG="/opt/paperclip-data/instances/default/config.json" \ + bash -c "cd /opt/paperclip-ai && ${PAPERCLIP_ONBOARD_CMD}" \ + >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! for _ in {1..60}; do if [[ -f /opt/paperclip-data/instances/default/config.json ]]; then From d7bafd12d6c7a88bfd250650345f19be358cbead Mon Sep 17 00:00:00 2001 From: Stefan Date: Sun, 31 May 2026 09:32:39 +0200 Subject: [PATCH 3/7] Refactor Paperclip installation script for variable usage --- install/paperclip-install.sh | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index bf3c4d84..8cc5a3e4 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -42,6 +42,9 @@ $STD npm install -g \ msg_ok "Installed Agent CLIs" msg_info "Configuring Paperclip" +PAPERCLIP_HOME="/opt/paperclip-data" +PAPERCLIP_CONFIG="${PAPERCLIP_HOME}/instances/default/config.json" + mkdir -p /opt/paperclip-data mkdir -p /root/.claude /root/.codex BETTER_AUTH_SECRET=$(openssl rand -hex 32) @@ -50,8 +53,8 @@ DATABASE_URL=postgresql://${PG_DB_USER}:${PG_DB_PASS}@127.0.0.1:5432/${PG_DB_NAM HOST=0.0.0.0 PORT=3100 SERVE_UI=true -PAPERCLIP_HOME=/opt/paperclip-data -PAPERCLIP_CONFIG=/opt/paperclip-data/instances/default/config.json +PAPERCLIP_HOME=${PAPERCLIP_HOME} +PAPERCLIP_CONFIG=${PAPERCLIP_CONFIG} PAPERCLIP_INSTANCE_ID=default PAPERCLIP_DEPLOYMENT_MODE=authenticated PAPERCLIP_DEPLOYMENT_EXPOSURE=private @@ -74,13 +77,13 @@ for PAPERCLIP_ONBOARD_CMD in \ "pnpm paperclipai onboard --yes"; do rm -f "$PAPERCLIP_ONBOARD_LOG" setsid env \ - PAPERCLIP_HOME="/opt/paperclip-data" \ - PAPERCLIP_CONFIG="/opt/paperclip-data/instances/default/config.json" \ + PAPERCLIP_HOME="${PAPERCLIP_HOME}" \ + PAPERCLIP_CONFIG=${PAPERCLIP_CONFIG}" \ bash -c "cd /opt/paperclip-ai && ${PAPERCLIP_ONBOARD_CMD}" \ >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! for _ in {1..60}; do - if [[ -f /opt/paperclip-data/instances/default/config.json ]]; then + if [[ -f "$PAPERCLIP_CONFIG" ]]; then break fi if ! kill -0 "$PAPERCLIP_ONBOARD_PID" 2>/dev/null; then @@ -92,19 +95,19 @@ for PAPERCLIP_ONBOARD_CMD in \ kill -- -"${PAPERCLIP_ONBOARD_PID}" >/dev/null 2>&1 || true wait "$PAPERCLIP_ONBOARD_PID" 2>/dev/null || true fi - [[ -f /opt/paperclip-data/instances/default/config.json ]] && break + [[ -f "$PAPERCLIP_CONFIG" ]] && break if ! grep -q "unknown option '--bind'" "$PAPERCLIP_ONBOARD_LOG"; then break fi msg_info "Retrying Paperclip Onboarding" done -if [[ ! -f /opt/paperclip-data/instances/default/config.json ]]; then +if [[ ! -f "$PAPERCLIP_CONFIG" ]]; then msg_error "Failed to bootstrap Paperclip" exit 1 fi -if grep -q 'authenticated' /opt/paperclip-data/instances/default/config.json; then +if grep -q 'authenticated' $PAPERCLIP_CONFIG; then pnpm paperclipai auth bootstrap-ceo >"$PAPERCLIP_BOOTSTRAP_LOG" 2>&1 || true PAPERCLIP_INVITE_URL=$(awk -F'Invite URL: ' '/Invite URL:/ {print $2; exit}' "$PAPERCLIP_BOOTSTRAP_LOG") PAPERCLIP_INVITE_EXPIRY=$(awk -F'Expires: ' '/Expires:/ {print $2; exit}' "$PAPERCLIP_BOOTSTRAP_LOG") From 3425f03c3e069a1be1bfa4ee4c31fe5c610a739e Mon Sep 17 00:00:00 2001 From: Stefan Date: Sun, 31 May 2026 09:50:38 +0200 Subject: [PATCH 4/7] Fix syntax error in paperclip-install.sh --- install/paperclip-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index 8cc5a3e4..6e01c4e5 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -78,7 +78,7 @@ for PAPERCLIP_ONBOARD_CMD in \ rm -f "$PAPERCLIP_ONBOARD_LOG" setsid env \ PAPERCLIP_HOME="${PAPERCLIP_HOME}" \ - PAPERCLIP_CONFIG=${PAPERCLIP_CONFIG}" \ + PAPERCLIP_CONFIG="${PAPERCLIP_CONFIG}" \ bash -c "cd /opt/paperclip-ai && ${PAPERCLIP_ONBOARD_CMD}" \ >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! From fe62faf84f502648fab66aad9ffabbd8730c3abb Mon Sep 17 00:00:00 2001 From: Stefan Date: Sun, 31 May 2026 09:55:01 +0200 Subject: [PATCH 5/7] Fix command substitution syntax in install script --- install/paperclip-install.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index 6e01c4e5..7ad93beb 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -77,9 +77,9 @@ for PAPERCLIP_ONBOARD_CMD in \ "pnpm paperclipai onboard --yes"; do rm -f "$PAPERCLIP_ONBOARD_LOG" setsid env \ - PAPERCLIP_HOME="${PAPERCLIP_HOME}" \ - PAPERCLIP_CONFIG="${PAPERCLIP_CONFIG}" \ - bash -c "cd /opt/paperclip-ai && ${PAPERCLIP_ONBOARD_CMD}" \ + PAPERCLIP_HOME="$PAPERCLIP_HOME" \ + PAPERCLIP_CONFIG="$PAPERCLIP_CONFIG" \ + bash -c 'cd /opt/paperclip-ai && '"$PAPERCLIP_ONBOARD_CMD" \ >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! for _ in {1..60}; do From db622748ab6acf267c20fc3daaadb2f95ad8ecce Mon Sep 17 00:00:00 2001 From: Stefan Date: Sun, 31 May 2026 09:57:12 +0200 Subject: [PATCH 6/7] Fix command substitution in paperclip-install.sh --- install/paperclip-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index 7ad93beb..9af23fcc 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -79,7 +79,7 @@ for PAPERCLIP_ONBOARD_CMD in \ setsid env \ PAPERCLIP_HOME="$PAPERCLIP_HOME" \ PAPERCLIP_CONFIG="$PAPERCLIP_CONFIG" \ - bash -c 'cd /opt/paperclip-ai && '"$PAPERCLIP_ONBOARD_CMD" \ + bash -c 'cd /opt/paperclip-ai && $PAPERCLIP_ONBOARD_CMD' \ >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! for _ in {1..60}; do From 78e8f74415e8ec9a38b96779a5dbb0a1854332d6 Mon Sep 17 00:00:00 2001 From: Stefan Date: Sun, 31 May 2026 09:58:48 +0200 Subject: [PATCH 7/7] Update onboarding command execution in script --- install/paperclip-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/paperclip-install.sh b/install/paperclip-install.sh index 9af23fcc..066b3202 100644 --- a/install/paperclip-install.sh +++ b/install/paperclip-install.sh @@ -79,7 +79,7 @@ for PAPERCLIP_ONBOARD_CMD in \ setsid env \ PAPERCLIP_HOME="$PAPERCLIP_HOME" \ PAPERCLIP_CONFIG="$PAPERCLIP_CONFIG" \ - bash -c 'cd /opt/paperclip-ai && $PAPERCLIP_ONBOARD_CMD' \ + bash -c 'cd /opt/paperclip-ai && exec "$@"' _ $PAPERCLIP_ONBOARD_CMD \ >"$PAPERCLIP_ONBOARD_LOG" 2>&1 & PAPERCLIP_ONBOARD_PID=$! for _ in {1..60}; do