#!/usr/bin/env bash # SessionStart hook: проверяет, подключена ли обвязка к проекту в cwd. # Всё на месте — молчит. Чего-то нет — пишет в контекст сессии инструкцию агенту. # HARNESS_AUTO_ADOPT=1 в окружении → агенту велено подключать без вопроса. set -uo pipefail input=$(cat) cwd=$(printf '%s' "$input" | python3 -c 'import sys,json; print(json.load(sys.stdin).get("cwd",""))' 2>/dev/null) [ -n "$cwd" ] || exit 0 git -C "$cwd" rev-parse --is-inside-work-tree >/dev/null 2>&1 || exit 0 root=$(git -C "$cwd" rev-parse --show-toplevel) missing=() [ -d "$root/openspec" ] || missing+=("openspec/") [ -d "$root/.codegraph" ] || missing+=(".codegraph/") grep -qs '^## OpenSpec и superpowers' "$root/CLAUDE.md" || missing+=("секция «OpenSpec и superpowers» в CLAUDE.md") [ ${#missing[@]} -eq 0 ] && exit 0 if [ -n "$(git -C "$root" status --porcelain)" ]; then dirty=" Рабочее дерево не чистое — скрипт откажется; сначала попроси пользователя закоммитить или спрятать изменения." else dirty=""; fi if [ "${HARNESS_AUTO_ADOPT:-0}" = "1" ]; then mode="Выполни это сейчас, до любых других действий, без вопроса, и одной строкой сообщи пользователю, что сделано." else mode="Прежде чем что-либо делать, спроси пользователя одним вопросом, подключить ли обвязку, и по «да» выполни." fi cat <