fix: switch-account - скилл-заглушка + exit 2 для блокировки LLM
Без скилла Claude Code выдаёт "Unknown command" до запуска хука. Скилл нужен как регистрация команды, но тело пустое - хук перехватывает через exit 2 (stderr) до вызова LLM. Откат изменения в ai-setup.sh которое скрывало скилл от деплоя. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -20,11 +20,8 @@ mapfile -t accounts < <(ls "$ACCOUNTS_DIR"/*.credentials.json 2>/dev/null \
|
||||
| xargs -I{} basename {} .credentials.json | sort)
|
||||
|
||||
if [ ${#accounts[@]} -eq 0 ]; then
|
||||
jq -n '{
|
||||
"decision": "block",
|
||||
"reason": "Аккаунты не настроены. Создай ~/.claude/accounts/<name>.credentials.json для каждого аккаунта и запиши текущий в ~/.claude/accounts/current"
|
||||
}'
|
||||
exit 0
|
||||
echo "Аккаунты не настроены. Создай ~/.claude/accounts/<name>.credentials.json для каждого аккаунта." >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
current=$(cat "$CURRENT_FILE" 2>/dev/null || echo "")
|
||||
@@ -41,8 +38,5 @@ cp "$ACCOUNTS_DIR/${next}.credentials.json" "$CREDS"
|
||||
chmod 600 "$CREDS"
|
||||
echo "$next" > "$CURRENT_FILE"
|
||||
|
||||
total=${#accounts[@]}
|
||||
msg="Аккаунт: ${current:-?} -> ${next} (${total} аккаунтов)"
|
||||
|
||||
jq -n --arg msg "$msg" '{"decision": "block", "reason": $msg}'
|
||||
exit 0
|
||||
echo "Аккаунт: ${current:-?} -> ${next} (всего: ${#accounts[@]})" >&2
|
||||
exit 2
|
||||
|
||||
Reference in New Issue
Block a user