Files
Codex-Launcher---Any-AI-Por…/src/cleanup-codex-stale.sh
admin 4bbfb4ada7 v3.5.0 — Major Release: Command Code Multi-Format Parser, AI Assist, Self-Revive Watchdog
CC Adapter (17 fixes):
- Multi-format tool-call parser chain: DSML → bash → explore → XML → raw JSON → fallback
- Three-tier argument parser (direct/unescape/unicode_escape)
- Recursive double/triple-wrap unwrapping (_unwrap_cmd)
- Post-extraction sanitizer validation
- DSML tag support (current CC model format)
- Self-revive watchdog (50 restarts, progressive backoff)
- Debug-to-file logging (cc-debug.log)
- Inline self-test (19 tests via --self-test)
- ErrorAnalyzer with 4xx learning on retry
- Schema cache with 24h TTL

Launcher:
- AI Assist integration
- Updated usage dashboard
- Reasoning controls per-provider
- Updated cleanup patterns

.deb: v3.5.0 (70KB) — v3.3.0 kept as fallback
2026-05-22 10:54:30 +04:00

59 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
# Cleanup script for Codex Launcher - kills only launcher-owned processes.
set -u
REGISTRY="${HOME}/.cache/codex-launcher/pids.json"
echo "Cleaning up launcher-owned processes..." >&2
kill_group() {
kind="$1"
pgid="$2"
if [ -z "$pgid" ] || [ "$pgid" = "null" ]; then
return 0
fi
if kill -TERM -- "-$pgid" 2>/dev/null; then
echo " Stopped ${kind} pgid=${pgid}"
return 0
fi
return 0
}
if [ -f "$REGISTRY" ]; then
python3 - "$REGISTRY" <<'PY'
import json, sys
from pathlib import Path
path = Path(sys.argv[1])
try:
data = json.loads(path.read_text())
except Exception:
data = {}
for kind, meta in sorted(data.items()):
pgid = meta.get('pgid') if isinstance(meta, dict) else None
if pgid:
print(f'{kind}\t{pgid}')
PY
else
echo " No registry found; nothing to stop"
fi | while IFS=$'\t' read -r kind pgid; do
[ -n "${kind:-}" ] || continue
kill_group "$kind" "$pgid"
done
rm -f "$HOME/.codex/.launch-action-socket" 2>/dev/null || true
rm -f "$HOME/.codex/.codex-desktop-launch-action" 2>/dev/null || true
rm -f "$HOME/.local/share/codex-desktop/.launch-action-socket" 2>/dev/null || true
rm -f "$HOME/.cache/codex-desktop/.launch-action-socket" 2>/dev/null || true
rm -f "$HOME/.local/share/codex-desktop/.codex-desktop-pid" 2>/dev/null || true
rm -f "$HOME/.cache/codex-desktop/.codex-desktop-pid" 2>/dev/null || true
rm -f "$HOME/.local/share/codex-desktop/.webview-pid" 2>/dev/null || true
rm -f "$HOME/.cache/codex-desktop/.webview-pid" 2>/dev/null || true
echo "Cleanup complete"