





















@@ -504,6 +504,28 @@ function Stop-OpenClawGatewayProcesses {
504504 Start-Sleep -Seconds 2
505505}
506506507+function Complete-WorkspaceSetup {
508+ $workspace = $env:OPENCLAW_WORKSPACE_DIR
509+ if (-not $workspace) {
510+ $workspace = Join-Path $env:USERPROFILE '.openclaw\workspace'
511+ }
512+ $stateDir = Join-Path $workspace '.openclaw'
513+ New-Item -ItemType Directory -Path $stateDir -Force | Out-Null
514+ @'
515+# Identity
516+517+- Name: OpenClaw
518+- Purpose: Parallels npm update smoke test assistant.
519+'@ | Set-Content -Path (Join-Path $workspace 'IDENTITY.md') -Encoding UTF8
520+ @'
521+{
522+ "version": 1,
523+ "setupCompletedAt": "2026-01-01T00:00:00.000Z"
524+}
525+'@ | Set-Content -Path (Join-Path $stateDir 'workspace-state.json') -Encoding UTF8
526+ Remove-Item (Join-Path $workspace 'BOOTSTRAP.md') -Force -ErrorAction SilentlyContinue
527+}
528+507529function Restart-GatewayWithRecovery {
508530 param(
509531 [Parameter(Mandatory = $true)][string]$OpenClawPath
@@ -586,6 +608,7 @@ try {
586608 # an explicit start only if the RPC endpoint never returns.
587609 Write-ProgressLog 'update.restart-gateway'
588610 Restart-GatewayWithRecovery -OpenClawPath $openclaw
611+ Complete-WorkspaceSetup
589612 Write-ProgressLog 'update.agent-turn'
590613 Invoke-CaptureLogged 'openclaw agent' { & $openclaw agent --agent main --session-id $SessionId --message 'Reply with exact ASCII text OK only.' --json } | Out-Null
591614 $exitCode = $LASTEXITCODE
@@ -709,6 +732,21 @@ if [ "\$gateway_ready" != "1" ]; then
709732 echo "gateway did not become RPC-ready after transport recovery" >&2
710733 exit 1
711734fi
735+workspace="\${OPENCLAW_WORKSPACE_DIR:-\$HOME/.openclaw/workspace}"
736+mkdir -p "\$workspace/.openclaw"
737+cat > "\$workspace/IDENTITY.md" <<'IDENTITY_EOF'
738+# Identity
739+740+- Name: OpenClaw
741+- Purpose: Parallels npm update smoke test assistant.
742+IDENTITY_EOF
743+cat > "\$workspace/.openclaw/workspace-state.json" <<'STATE_EOF'
744+{
745+ "version": 1,
746+ "setupCompletedAt": "2026-01-01T00:00:00.000Z"
747+}
748+STATE_EOF
749+rm -f "\$workspace/BOOTSTRAP.md"
712750/opt/homebrew/bin/openclaw models set "$MODEL_ID"
713751/opt/homebrew/bin/openclaw agent --agent main --session-id "parallels-npm-update-macos-transport-recovery-$expected_needle" --message "Reply with exact ASCII text OK only." --json
714752EOF
@@ -784,6 +822,25 @@ if (-not \$gatewayReady) {
784822\$providerValue = [Text.Encoding]::UTF8.GetString(\$providerBytes)
785823Set-Item -Path ('Env:' + '$API_KEY_ENV') -Value \$providerValue
786824& \$openclaw models set '$MODEL_ID'
825+\$workspace = \$env:OPENCLAW_WORKSPACE_DIR
826+if (-not \$workspace) {
827+ \$workspace = Join-Path \$env:USERPROFILE '.openclaw\\workspace'
828+}
829+\$stateDir = Join-Path \$workspace '.openclaw'
830+New-Item -ItemType Directory -Path \$stateDir -Force | Out-Null
831+@'
832+# Identity
833+834+- Name: OpenClaw
835+- Purpose: Parallels npm update smoke test assistant.
836+'@ | Set-Content -Path (Join-Path \$workspace 'IDENTITY.md') -Encoding UTF8
837+@'
838+{
839+ "version": 1,
840+ "setupCompletedAt": "2026-01-01T00:00:00.000Z"
841+}
842+'@ | Set-Content -Path (Join-Path \$stateDir 'workspace-state.json') -Encoding UTF8
843+Remove-Item (Join-Path \$workspace 'BOOTSTRAP.md') -Force -ErrorAction SilentlyContinue
787844& \$openclaw agent --agent main --session-id 'parallels-npm-update-windows-transport-recovery-$expected_needle' --message 'Reply with exact ASCII text OK only.' --json
788845EOF
789846 )"
@@ -1189,6 +1246,21 @@ if [ "\$gateway_ready" != "1" ]; then
11891246 tail -n 120 /tmp/openclaw-parallels-npm-update-macos-gateway.log 2>/dev/null || true
11901247fi
11911248/opt/homebrew/bin/openclaw gateway status --deep --require-rpc
1249+workspace="\${OPENCLAW_WORKSPACE_DIR:-\$HOME/.openclaw/workspace}"
1250+mkdir -p "\$workspace/.openclaw"
1251+cat > "\$workspace/IDENTITY.md" <<'IDENTITY_EOF'
1252+# Identity
1253+1254+- Name: OpenClaw
1255+- Purpose: Parallels npm update smoke test assistant.
1256+IDENTITY_EOF
1257+cat > "\$workspace/.openclaw/workspace-state.json" <<'STATE_EOF'
1258+{
1259+ "version": 1,
1260+ "setupCompletedAt": "2026-01-01T00:00:00.000Z"
1261+}
1262+STATE_EOF
1263+rm -f "\$workspace/BOOTSTRAP.md"
11921264/opt/homebrew/bin/openclaw agent --agent main --session-id parallels-npm-update-macos-$expected_needle --message "Reply with exact ASCII text OK only." --json
11931265EOF
11941266 macos_desktop_user_exec /bin/bash /tmp/openclaw-main-update.sh
@@ -1249,6 +1321,21 @@ if [ -n "$expected_needle" ]; then
12491321fi
12501322openclaw update status --json
12511323openclaw models set "$MODEL_ID"
1324+workspace="\${OPENCLAW_WORKSPACE_DIR:-\$HOME/.openclaw/workspace}"
1325+mkdir -p "\$workspace/.openclaw"
1326+cat > "\$workspace/IDENTITY.md" <<'IDENTITY_EOF'
1327+# Identity
1328+1329+- Name: OpenClaw
1330+- Purpose: Parallels npm update smoke test assistant.
1331+IDENTITY_EOF
1332+cat > "\$workspace/.openclaw/workspace-state.json" <<'STATE_EOF'
1333+{
1334+ "version": 1,
1335+ "setupCompletedAt": "2026-01-01T00:00:00.000Z"
1336+}
1337+STATE_EOF
1338+rm -f "\$workspace/BOOTSTRAP.md"
12521339openclaw agent --local --agent main --session-id parallels-npm-update-linux-$expected_needle --message "Reply with exact ASCII text OK only." --json
12531340EOF
12541341 prlctl exec "$LINUX_VM" /usr/bin/env "$API_KEY_ENV=$API_KEY_VALUE" /bin/bash /tmp/openclaw-main-update.sh
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。