# Proposal: install сам тянет свежий superpowers с git Issue: #67. Связано: #49 (закрыт), #48 (роадмап), change `dsh-install-source`. Ответ владельца 24.10.2026: «а давай инстал будет тащить сам свежую версию с гита». ## Why После #49 install-time источник задаётся явно: `--superpowers-from`, `$DSH_SUPERPOWERS_SOURCE` или ручной клон в `~/.dsh/superpowers`. Это снимает зависимость от `~/.claude`, но перекладывает получение источника на человека и не обновляет его: клон, сделанный полгода назад, остаётся «свежим» навсегда, а `WARN: legacy superpowers source` на машине владельца так и висит, потому что пиннинга нет. Владелец хочет, чтобы `dsh/install.sh --skills` сам получал свежий superpowers: первый запуск — клон, следующие — обновление. Явные флаги остаются для офлайна, зеркал и отладки и сеть не трогают. ## What Changes - **git — источник по умолчанию.** `--skills` клонирует `https://github.com/obra/superpowers` в `$DSH_HOME/superpowers` (depth 1), если клона нет, и обновляет `fetch --depth 1` + `reset --hard FETCH_HEAD`, если есть. URL переопределяется `$DSH_SUPERPOWERS_REPO` (зеркала, локальные репозитории в тестах). - **Порядок источников:** явный источник (`--superpowers-from`, `$DSH_SUPERPOWERS_SOURCE`) → git-клон (обновить/создать) → legacy-кэш Claude Code → legacy `~/.claude/skills`. Ручная копия `~/.dsh/superpowers` без `.git` используется как есть с `WARN` (совместимость с #49). - **Сеть и ошибки.** Нет сети при существующем клоне — `WARN`, работа из кэша. Нет сети, нет клона, нет других источников — `FAIL` с кодом 1 и подсказкой `--superpowers-from`. Оборванный клон не оставляется на диске. - **`--check` остаётся офлайновым:** не клонирует и не обновляет, показывает `ok: superpowers source (, git )` для git-клона, `WARN` для ручной копии без `.git`, legacy и «нет источника» — как в #49. - **Тесты без сети:** локальный git-репозиторий через `DSH_SUPERPOWERS_REPO` (`file://`), проверка первого клона, обновления до нового коммита, офлайна и `--check`. - **Документация.** README/PORT: quick start без ручного клона, офлайн-путь, `DSH_SUPERPOWERS_REPO`, `--check` с sha. ## Non-goals - Вендоринг superpowers в репозиторий — отклонён в #49 (D-1) и остаётся отклонённым. - Пиннинг тега/коммита и проверка подписи: «свежая версия» = последний коммит default-ветки; воспроизводимость установки обеспечивается глубиной 1 и записанным sha в выводе, а не неизменностью источника. - Субмодули и LFS в клоне superpowers. - Обновление ролей/локальных скиллов из сети: они по-прежнему из репозитория обвязки.