From d250099dc5d61519629cec268e432a3079fe6e78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D0=BE=D0=BA=D0=BE=D1=81=20=D0=90=D1=80=D1=82=D0=B5?= =?UTF-8?q?=D0=BC=20=D0=9D=D0=B8=D0=BA=D0=BE=D0=BB=D0=B0=D0=B5=D0=B2=D0=B8?= =?UTF-8?q?=D1=87?= Date: Tue, 30 Jun 2026 12:12:42 +0700 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BB=D0=B8=D1=86=D0=B5=D0=BD=D0=B7=D0=B8=D1=8F?= =?UTF-8?q?=20MIT=20=D0=B8=20=D0=BA=D0=BE=D0=BF=D0=B8=D1=80=D0=B0=D0=B9?= =?UTF-8?q?=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile.test | 1 + LICENSE | 21 +++++++++++++++++++ README.md | 4 ++++ home-configs/claude/hooks/account-email.sh | 1 + home-configs/claude/hooks/add-account-hook.sh | 1 + .../claude/hooks/switch-account-hook.sh | 1 + home-configs/claude/statusline-command.sh | 1 + scripts/ai-setup.sh | 1 + scripts/fuck-rkn.sh | 1 + scripts/ks-off.sh | 1 + scripts/ks-on.sh | 1 + scripts/ru-bypass.sh | 1 + setup.sh | 1 + test_isolated.sh | 1 + test_sigint.sh | 1 + tests/test_fixes.sh | 1 + tests/test_network.sh | 1 + 17 files changed, 40 insertions(+) create mode 100644 LICENSE diff --git a/Dockerfile.test b/Dockerfile.test index f172992..002e0b7 100644 --- a/Dockerfile.test +++ b/Dockerfile.test @@ -1,3 +1,4 @@ +# Copyright (c) 2026 Виталий Никитенко. MIT License. FROM ubuntu:24.04 # Avoid interactive prompts during package installation diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..4709c5a --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Виталий Никитенко + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 763fbfe..fe8b06a 100644 --- a/README.md +++ b/README.md @@ -274,3 +274,7 @@ bash test_isolated.sh # автоустановка ai-gpt, ai-kimi и ai-gl bash tests/test_network.sh # маршрутизация (нужен активный ru-bypass) # test_sigint.sh # ручной диагностический тест SIGINT ``` + +## Лицензия + +MIT License. Copyright (c) 2026 Виталий Никитенко. См. [LICENSE](LICENSE). diff --git a/home-configs/claude/hooks/account-email.sh b/home-configs/claude/hooks/account-email.sh index 0c090d6..7ece546 100644 --- a/home-configs/claude/hooks/account-email.sh +++ b/home-configs/claude/hooks/account-email.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # Определяет email Claude.ai аккаунта по OAuth-токену в credentials-файле. # Источник истины — сам токен (НЕ claude auth status, который читает # рассинхронизированный oauthAccount из ~/.claude.json). diff --git a/home-configs/claude/hooks/add-account-hook.sh b/home-configs/claude/hooks/add-account-hook.sh index 76c5f85..458072f 100755 --- a/home-configs/claude/hooks/add-account-hook.sh +++ b/home-configs/claude/hooks/add-account-hook.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # UserPromptSubmit hook: перехватывает /add-account. # 1) сохраняет текущий аккаунт по его реальному email (account-email.sh) # 2) запускает oauth-логин в фоне (открывает браузер) diff --git a/home-configs/claude/hooks/switch-account-hook.sh b/home-configs/claude/hooks/switch-account-hook.sh index 087881a..f80daac 100755 --- a/home-configs/claude/hooks/switch-account-hook.sh +++ b/home-configs/claude/hooks/switch-account-hook.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # UserPromptSubmit hook: перехватывает /switch-account и циклически меняет аккаунт/ключ. # Текущий аккаунт определяется ПО ТОКЕНУ в .credentials.json (account-email.sh), # а не по claude auth status — он читает рассинхронизированный oauthAccount. diff --git a/home-configs/claude/statusline-command.sh b/home-configs/claude/statusline-command.sh index bdb40ec..8405887 100755 --- a/home-configs/claude/statusline-command.sh +++ b/home-configs/claude/statusline-command.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. input=$(cat) cwd=$(echo "$input" | jq -r '.cwd') model=$(echo "$input" | jq -r '.model.display_name // empty') diff --git a/scripts/ai-setup.sh b/scripts/ai-setup.sh index ed7a513..b901482 100755 --- a/scripts/ai-setup.sh +++ b/scripts/ai-setup.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # ============================================================ # AI Setup - Claude / GPT-5.5 / Grok / Qwen / DeepSeek / Kimi / GLM / Gemini # Запуск: bash ai-setup.sh diff --git a/scripts/fuck-rkn.sh b/scripts/fuck-rkn.sh index 25dcec0..8d4a897 100644 --- a/scripts/fuck-rkn.sh +++ b/scripts/fuck-rkn.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # ============================================================================= # setup.sh — Единый установщик: # • Telegram MTProto прокси (nginx stream + telemt + fail2ban) diff --git a/scripts/ks-off.sh b/scripts/ks-off.sh index 2aded86..3be2d1a 100644 --- a/scripts/ks-off.sh +++ b/scripts/ks-off.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # ks-off.sh — временно отключить kill switch UFW # После этого отключи Amnezia через её GUI — трафик пойдёт напрямую через провайдера. # Обратная команда: sudo bash ks-on.sh diff --git a/scripts/ks-on.sh b/scripts/ks-on.sh index c6196a1..be78aeb 100644 --- a/scripts/ks-on.sh +++ b/scripts/ks-on.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # ks-on.sh — включить/восстановить kill switch UFW # Перед этим подключи Amnezia через её GUI, иначе интернет будет полностью заблокирован. diff --git a/scripts/ru-bypass.sh b/scripts/ru-bypass.sh index fe3ff99..6f6da4a 100644 --- a/scripts/ru-bypass.sh +++ b/scripts/ru-bypass.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # ru-bypass.sh — .ru трафик напрямую мимо Amnezia, всё остальное через VPN + kill switch # # Принцип: ipset + более специфичные маршруты имеют приоритет над amn0. diff --git a/setup.sh b/setup.sh index b7ace32..e95b061 100755 --- a/setup.sh +++ b/setup.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # Мастер-скрипт. Запускай от обычного пользователя (sudo попросит сам где нужно). cd "$(dirname "$0")" diff --git a/test_isolated.sh b/test_isolated.sh index 5a7c708..e18bcee 100644 --- a/test_isolated.sh +++ b/test_isolated.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # test_isolated.sh — проверка логики автоустановки без реальных скачиваний # Использует mock для curl, чтобы проверить, что скрипты вызывают правильные URL diff --git a/test_sigint.sh b/test_sigint.sh index a39b55e..438e18b 100755 --- a/test_sigint.sh +++ b/test_sigint.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. python3 -c "import time; print('python started'); time.sleep(100)" & py_pid=$! node -e " diff --git a/tests/test_fixes.sh b/tests/test_fixes.sh index 01a34f6..4829492 100755 --- a/tests/test_fixes.sh +++ b/tests/test_fixes.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # tests/test_fixes.sh - unit tests for code-review fixes in ai-setup.sh # Run: bash tests/test_fixes.sh diff --git a/tests/test_network.sh b/tests/test_network.sh index a7fc006..8f15e92 100644 --- a/tests/test_network.sh +++ b/tests/test_network.sh @@ -1,4 +1,5 @@ #!/bin/bash +# Copyright (c) 2026 Виталий Никитенко. MIT License. # Тесты сетевой настройки: Amnezia + ru-bypass + kill switch # Запускать без sudo (проверяет что доступно обычному пользователю) -- 2.34.1