DSH: установка без зависимости от ~/.claude (#49) #64
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/49-dsh-install-source"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
DSH: установка без зависимости от ~/.claude (#49)
Закрывает install-time зависимость DSH-порта от Claude Code: свежая установка
на машине без
~/.claudeбольше не оставляет bootstrap пустым.Issue: #49. Роадмап: #48. Change:
openspec/changes/dsh-install-source/(спека
dsh-install, дизайн с решениями D-1…D-6). План:docs/superpowers/plans/2026-10-24-dsh-install-source.md.Что изменилось
dsh/install.sh --skills: источник superpowers —--superpowers-from <dir>→$DSH_SUPERPOWERS_SOURCE→$DSH_HOME/superpowers→ legacy-кэш Claude Code(с
WARN). Принимаются и корень репозитория superpowers, и каталогskills/.FAILс готовой командой клона, если~/.dsh/skillsпуст;WARNи сохранение копий при повторной установке. Локальные скиллыroleиsddставятся в обоих случаях.--checkпечатает источник superpowers (ok/WARN legacy/WARN нет);невалидный явный источник —
FAIL.--global: в установленномAGENTS.mdпути ролей —~/.dsh/roles, ни одногопути
~/.claude; шапка явно говорит, что проектныйCLAUDE.md/AGENTS.md—формат инструкций DSH, а не runtime Claude Code.
global/CLAUDE.mdврепозитории не менялся (его читает CC).
процесс; при
~/.dshпредупреждений нет.Rulings I made
--checkна невалидный явный источник возвращает 1 (ошибка конфигурациипользователя, а не «источника нет»). Записано в спеку/дизайн по ходу работы.
~/.claude/rolesкак legacy, переформулирована:в установленном файле не остаётся ни одного пути
~/.claude(требование спеки).skills/skills) исправлен в тесте,production не затронут.
Ревью ветки
deepseek-v4-pro, диапазонde58eff..ab458b5: Critical/Important — нет, 5 Minor.Две находки переоценены по эффекту и закрыты в
4054e13:using-superpowers/SKILL.md) принимался и давал«copied 0» с кодом 0 → теперь это не источник, установка падает с
FAIL;--superpowers-from=/""молча игнорировался и проваливался наlegacy → теперь ошибка
exit 2.Отложены (Minor, не входят в этот PR): интеграционный тест предупреждения о
legacy-ролях в
index.apply; зависимость--globalот python3 (жёсткоетребование, покрыто
--check); неудаляемые устаревшие каталоги скиллов(пре-существующее поведение per-skill замены).
Проверено
bash dsh/tests/run.sh→ 63/63 (было 57).bash tests/run.sh(CC-контур) → 630 passed, 0 failed.openspec validate dsh-install-source --strict→ valid.HOMEбез~/.claude:--global --skills --roles --superpowers-from→ 15 superpowers + 2 локальных скилла + 4 роли;
$HOME/.claudeне создан;prepareBootstrap({home})→~/.dsh/skills/using-superpowers/SKILL.md, маркер<!-- DSH-HARNESS-BOOTSTRAP:412d797495fc8765 -->.Осталось человеку
bash dsh/install.sh --global --skills --roles(сейчас
--checkпоказываетWARN: legacy superpowers source: пиннинга в~/.dsh/superpowersнет, а установленный~/.dsh/AGENTS.mdещё содержит трипути
~/.claude/roles).~/.claude(юнит-уровень пройден).Deferred
~/.dsh(design D-4).