claude-cac 1.5.1-beta.1 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cac +19 -5
- package/package.json +1 -1
package/cac
CHANGED
|
@@ -11,7 +11,7 @@ VERSIONS_DIR="$CAC_DIR/versions"
|
|
|
11
11
|
# ── utils: colors, read/write, UUID, proxy parsing ───────────────────────
|
|
12
12
|
|
|
13
13
|
# shellcheck disable=SC2034 # used in build-concatenated cac script
|
|
14
|
-
CAC_VERSION="1.5.1
|
|
14
|
+
CAC_VERSION="1.5.1"
|
|
15
15
|
|
|
16
16
|
_read() { [[ -f "$1" ]] && tr -d '[:space:]' < "$1" || echo "${2:-}"; }
|
|
17
17
|
_die() { printf '%b\n' "$(_red "error:") $*" >&2; exit 1; }
|
|
@@ -1406,10 +1406,15 @@ if [[ -n "$PROXY" ]] && [[ -f "$CAC_DIR/relay.js" ]]; then
|
|
|
1406
1406
|
sleep 5
|
|
1407
1407
|
# relay.proxy removed by _relay_stop — intentional stop, exit watchdog
|
|
1408
1408
|
[[ -f "$CAC_DIR/relay.proxy" ]] || exit 0
|
|
1409
|
-
# relay alive — nothing to do
|
|
1409
|
+
# relay alive and port reachable — nothing to do
|
|
1410
1410
|
if [[ -f "$CAC_DIR/relay.pid" ]]; then
|
|
1411
1411
|
_rpid=$(tr -d '[:space:]' < "$CAC_DIR/relay.pid")
|
|
1412
|
-
kill -0 "$_rpid" 2>/dev/null
|
|
1412
|
+
if kill -0 "$_rpid" 2>/dev/null; then
|
|
1413
|
+
_rport=$(tr -d '[:space:]' < "$CAC_DIR/relay.port" 2>/dev/null || true)
|
|
1414
|
+
(echo >/dev/tcp/127.0.0.1/"$_rport") 2>/dev/null && continue
|
|
1415
|
+
# process alive but port unresponsive — kill and restart
|
|
1416
|
+
kill "$_rpid" 2>/dev/null || true
|
|
1417
|
+
fi
|
|
1413
1418
|
fi
|
|
1414
1419
|
# relay dead — restart on same port with same proxy
|
|
1415
1420
|
_rport=$(tr -d '[:space:]' < "$CAC_DIR/relay.port" 2>/dev/null || true)
|
|
@@ -2044,6 +2049,13 @@ _env_cmd_set() {
|
|
|
2044
2049
|
esac
|
|
2045
2050
|
}
|
|
2046
2051
|
|
|
2052
|
+
_env_cmd_stop() {
|
|
2053
|
+
_relay_stop 2>/dev/null || true
|
|
2054
|
+
touch "$CAC_DIR/stopped"
|
|
2055
|
+
echo " $(_green "✓") cac paused — claude will run without any cac injection"
|
|
2056
|
+
echo " $(_dim "resume with:") $(_green "cac <name>")"
|
|
2057
|
+
}
|
|
2058
|
+
|
|
2047
2059
|
cmd_env() {
|
|
2048
2060
|
case "${1:-help}" in
|
|
2049
2061
|
create) _env_cmd_create "${@:2}" ;;
|
|
@@ -2051,6 +2063,7 @@ cmd_env() {
|
|
|
2051
2063
|
ls|list) _env_cmd_ls ;;
|
|
2052
2064
|
rm|remove) _env_cmd_rm "${@:2}" ;;
|
|
2053
2065
|
activate) _env_cmd_activate "${@:2}" ;;
|
|
2066
|
+
stop) _env_cmd_stop ;;
|
|
2054
2067
|
check) cmd_check "${@:2}" ;;
|
|
2055
2068
|
deactivate) echo "$(_yellow "warning:") deactivate has been removed — switch with 'cac <name>' or uninstall with 'cac self delete'" >&2 ;;
|
|
2056
2069
|
help|-h|--help)
|
|
@@ -2064,7 +2077,8 @@ cmd_env() {
|
|
|
2064
2077
|
echo " $(_green "ls") List all environments"
|
|
2065
2078
|
echo " $(_green "rm") <name> Remove an environment"
|
|
2066
2079
|
echo " $(_green "check") Verify current environment"
|
|
2067
|
-
echo " $(_green "
|
|
2080
|
+
echo " $(_green "stop") Pause cac (claude runs natively, no injection)"
|
|
2081
|
+
echo " $(_green "cac") <name> Switch environment (also resumes if stopped)"
|
|
2068
2082
|
echo
|
|
2069
2083
|
;;
|
|
2070
2084
|
*)
|
|
@@ -3509,7 +3523,7 @@ case "$1" in
|
|
|
3509
3523
|
add) echo "$(_yellow "warning:") 'cac add' → 'cac env create <name> -p <proxy>'" >&2; exit 1 ;;
|
|
3510
3524
|
setup) echo "$(_yellow "removed:") 'cac setup' no longer exists — cac auto-initializes on first use" >&2 ;;
|
|
3511
3525
|
check) echo "$(_yellow "warning:") 'cac check' → 'cac env check'" >&2; cmd_check ;;
|
|
3512
|
-
stop)
|
|
3526
|
+
stop) _env_cmd_stop ;;
|
|
3513
3527
|
resume|-c) echo "$(_yellow "warning:") 'cac resume' removed — use 'cac env activate <name>'" >&2; exit 1 ;;
|
|
3514
3528
|
relay) echo "$(_yellow "warning:") relay is now automatic (TUN auto-detected)" >&2 ;;
|
|
3515
3529
|
delete|uninstall) echo "$(_yellow "warning:") 'cac delete' → 'cac self delete'" >&2; cmd_delete ;;
|