---
name: cehoproxy_github_publish
description: "Публикация CehoProxy: почему Apache 2.0, почему движок sing-box нельзя класть в релизы, и как позиционировать продукт"
metadata: 
  node_type: memory
  type: project
  originSessionId: cf75944b-cc91-4988-aab6-28363391917a
  modified: 2026-08-07T11:16:52.851Z
---

Подготовка [[cehoproxy_overview]] к GitHub, 07.08.2026. Чек-лист владельца лежит в репозитории как `PUBLISH.md` (он в `.gitignore`, наружу не уходит). Пуш не делался — ждёт слова владельца.

**Лицензия была Apache 2.0** (07.08.2026 заменена собственным соглашением, см. [[cehoproxy_two_repos]]) (`LICENSE` + `NOTICE`). Против MIT её выбрали за раздел 6: лицензия прямо НЕ передаёт прав на названия и логотипы, а у нас бренд и обязательная марка «Выковано в КодоЦех» ([[kodoceh_brand_forged_mark]]). Плюс явная патентная оговорка. Против GPL — продукт коробочный, копилефт только сузил бы круг тех, кто сможет им пользоваться на работе.

**Главное про чужой код: sing-box под GPL-3.0-or-later** (проверено по тексту LICENSE в его репозитории) плюс условие автора «производные не вправе использовать имя или подразумевать связь». Мы с ним НЕ линкуемся: генерируем JSON и запускаем отдельным процессом — это «mere aggregation», свой код лицензируем как хотим. **Но это работает, только пока бинарник sing-box не кладётся ни в репозиторий, ни в релизные архивы.** Раздал собранный — стал распространителем GPL и обязан отдавать исходники именно той версии. Поэтому движок ставит пользователь, а продукт ищет его в своей папке, рядом с собой и в PATH. Записано в `THIRD-PARTY.md`, чтобы не решать заново.

**В тестах лежала НАСТОЯЩАЯ подписка** — `tests/.../fixtures/sub-vlessi.txt` с живым UUID, адресами нод провайдера и ключами Reality. Заменена на синтетическую (`example.com`, адреса из документационных диапазонов, нулевые UUID) плюс добавлен фикстур со всеми шестью протоколами. Повезло, что репозиторий ещё не был под гитом: история ничего не запомнила. **Перед первым `git init` любого проекта — прогонять поиск секретов по всему дереву.** В `.gitignore` теперь `sub-*.txt` с исключением для фикстур.

**Позиционирование — не про обход блокировок.** Продукт описывается тем, чем является: изоляция трафика выбранных приложений в заданный туннель (это и нужно на корпоративных машинах, где системный прокси запрещён). В темах репозитория нет `vpn` и `bypass`, в README нет упоминаний доступа к заблокированным ресурсам, подписки не поставляются, адрес проверки нейтральный. Публикация исходников и реклама — разные вещи, вторая рискованнее.

**Открытый вопрос к владельцу:** `src/ProxyCage.App` — ранний WPF-прототип, продуктом больше не является, на Unix не собирается и дублирует логику Core. Предложено удалить перед публикацией, но без слова владельца код не удаляется.

**Опубликовано 07.08.2026.** Организация `CodoCeh` на GitHub (владелец аккаунта `cebers227-cmd`), репозиторий `CodoCeh/CehoProxy`, приватный. Пуш по SSH-ключу владельца: токен не запрашивался и не вводился. `UpdateRepo` в коде выставлен ровно как `CodoCeh/CehoProxy` — регистр важен для поиска релизов.

**Имя организации резервирует бренд глобально, имя репозитория — нет.** Имена пользователей и организаций GitHub живут в одном пространстве; репозиторий `логин/CodoCeh` имя бренда не защищает.

**Ранний WPF-прототип удалён** по слову владельца вместе с обслуживавшими его скриптами (`build.ps1`, `download-runtime.ps1`) и записью в файле решения — иначе `dotnet build` решения падал на отсутствующем проекте: чистить надо и секцию вложенности, не только объявление.

Связано: [[cehoproxy_crossplatform_plan]], [[secrets_audit_skill]].
