diff --git a/.github/workflows/weekly-update.yml b/.github/workflows/weekly-update.yml
index eb4a65e21..9f9dc4f8c 100644
--- a/.github/workflows/weekly-update.yml
+++ b/.github/workflows/weekly-update.yml
@@ -86,12 +86,14 @@ jobs:
GH_TOKEN: ${{ github.token }}
run: |
BRANCH_NAME="weekly-update-$(date +%Y%m%d)"
- git config user.name "github-actions[bot]"
- git config user.email "github-actions[bot]@users.noreply.github.com"
git remote set-url origin "https://x-access-token:${GH_TOKEN}@github.com/${{ github.repository }}.git"
git checkout -b "$BRANCH_NAME"
echo "branch=$BRANCH_NAME" >> $GITHUB_OUTPUT
+ - uses: SocketDev/socket-registry/.github/actions/setup-git-signing@6096b06b1790f411714c89c40f72aade2eeaab7c # main
+ with:
+ gpg-private-key: ${{ secrets.BOT_GPG_PRIVATE_KEY }}
+
- name: Run updating skill with Claude Code
id: claude
timeout-minutes: 30
@@ -108,7 +110,28 @@ jobs:
set +e
pnpm exec claude --print --dangerously-skip-permissions \
--model sonnet \
- "/updating - Run the updating skill to update all dependencies. Create atomic commits for each update. You are running in CI mode - skip builds and tests. Do not push or create a PR." \
+ "$(cat <<'PROMPT'
+ /updating
+
+
+ You are an automated CI agent in a weekly dependency update workflow.
+ Git is configured with GPG signing. A branch has been created for you.
+
+
+
+ Update all dependencies to their latest versions.
+ Create one atomic commit per dependency update with a conventional commit message.
+ Leave all changes local — the workflow handles pushing and PR creation.
+ Skip running builds, tests, and type checks — CI runs those separately.
+
+
+
+ Each updated dependency has its own commit.
+ The lockfile is consistent with package.json changes.
+ No uncommitted changes remain in the working tree.
+
+ PROMPT
+ )" \
2>&1 | tee claude-output.log
CLAUDE_EXIT=${PIPESTATUS[0]}
set -e
@@ -182,6 +205,9 @@ jobs:
path: claude-output.log
retention-days: 7
+ - uses: SocketDev/socket-registry/.github/actions/cleanup-git-signing@6096b06b1790f411714c89c40f72aade2eeaab7c # main
+ if: always()
+
notify:
name: Notify results
needs: [check-updates, apply-updates]