refactor(opencode): удалены устаревшие профили safe-build/safe-plan
Профили дублировали работу permission-reviewer статическими списками: их deny обходили ревьюер и давали отказы без причины (git push). Теперь решения об ask принимает плагин; статикой оставлены только deny на чтение секретов - детерминированная гарантия, LLM-ревьюеру не доверяем. - opencode.json: default_agent -> build, убраны статические списки и deny на git push (решение за ревьюером) - permission-reviewer.jsonc: actorProfiles переключены на встроенные build/plan - install.sh: блок линковки agents заменён чисткой старого симлинка; добавлено копирование permission-reviewer.jsonc в ~/.config/opencode (плагин читает его только оттуда - раньше тюнинг не применялся) - тесты: проверка чистки симлинка и копирования конфига ревьюера
This commit is contained in:
1 parent
c3efe60a00
commit
32cd7097e6
6 files changed
+34
-212
No files matched your search
+16
-2
@@ -437,11 +437,19 @@ SKILLS_SRC="$DOTFILES_DIR/agents/.agents/skills"
|
||||
OPENCODE_DIR="$HOME/.config/opencode"
|
||||
OPENCODE_SRC_DIR="$DOTFILES_DIR/opencode/.config/opencode"
|
||||
OPENCODE_JSON_SRC="$OPENCODE_SRC_DIR/opencode.json"
|
||||
OPENCODE_REVIEWER_SRC="$OPENCODE_SRC_DIR/permission-reviewer.jsonc"
|
||||
|
||||
mkdir -p "$OPENCODE_DIR"
|
||||
|
||||
if [ -d "$OPENCODE_SRC_DIR/agents" ]; then
|
||||
ensure_symlink "$OPENCODE_SRC_DIR/agents" "$OPENCODE_DIR/agents"
|
||||
# Профили safe-build/safe-plan удалены: агенты встроенные (build/plan),
|
||||
# решения об "ask" принимает permission-reviewer. Старый симлинк чистим.
|
||||
if [ -L "$OPENCODE_DIR/agents" ]; then
|
||||
case "$(readlink "$OPENCODE_DIR/agents" 2>/dev/null || true)" in
|
||||
"$OPENCODE_SRC_DIR"*)
|
||||
rm "$OPENCODE_DIR/agents"
|
||||
info "Удалён устаревший симлинк ~/.config/opencode/agents"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [ -d "$SKILLS_SRC" ]; then
|
||||
@@ -452,6 +460,12 @@ if [ -f "$OPENCODE_JSON_SRC" ]; then
|
||||
copy_managed_file "$OPENCODE_JSON_SRC" "$OPENCODE_DIR/opencode.json" "opencode.json"
|
||||
fi
|
||||
|
||||
# Настройки permission-reviewer: плагин читает их только из глобального
|
||||
# ~/.config/opencode, из репозитория они не подхватываются — копируем.
|
||||
if [ -f "$OPENCODE_REVIEWER_SRC" ]; then
|
||||
copy_managed_file "$OPENCODE_REVIEWER_SRC" "$OPENCODE_DIR/permission-reviewer.jsonc" "permission-reviewer.jsonc"
|
||||
fi
|
||||
|
||||
# ── Claude Code ──────────────────────────────────────────────────────
|
||||
# Из репозитория линкуются только skills. Настройки (settings.json,
|
||||
# settings.local.json) принадлежат Claude Code и живут только на машине.
|
||||
|
||||
Reference in new issue
Block a user