Claude Skill

restore-exocortex

Restore IWE memory from an exocortex backup on a new device or after data loss — NL wrapper around restore-from-exocortex.sh.

LLM Mart · 0 points · 13 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download TserenTserenov-FMT-exocortex-template-.claude_skills_restore-exocortex-52c884b.zip · 2 KB
Part of tserentserenov/fmt-exocortex-template — 50 skills

Install

skills CLI npx skills add https://github.com/TserenTserenov/FMT-exocortex-template/tree/main/.claude/skills/restore-exocortex
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install tserentserenov-fmt-exocortex-template@llmmart
Git git clone https://github.com/TserenTserenov/FMT-exocortex-template.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole tserentserenov/fmt-exocortex-template collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

/restore-exocortex — Восстановление памяти из exocortex

Роль: R6 Кодировщик Триггер: «восстанови экзокортекс / память», новое устройство, потеря/повреждение memory/ Service Clause: DP.SC.153 (родительский, скиллы); реализация #125

Обещание (контракт)

Вход: (опц.) путь к governance-репо. По умолчанию $WORKSPACE_DIR/$GOVERNANCE_REPO (~/IWE/DS-strategy). Выход: восстановленные memory/ + extensions/ + CLAUDE.md + симлинк memory/; отчёт + напоминание перезапустить Claude Code. Инвариант: НЕ перезаписывает населённую memory/ или extensions/ без явного подтверждения пользователя.

Оркестрация, не реализация. Скилл судит (свежее устройство vs существующая инсталляция, резолв пути, подтверждение) и зовёт детерминированный примитив scripts/restore-from-exocortex.sh. Сам file-ops не делает. На голом терминале без агента используется скрипт напрямую — это bootstrap-путь (см. SETUP-GUIDE).

Алгоритм

Шаг 1. Резолв скрипта и пути

  • Скрипт: $IWE_SCRIPTS/restore-from-exocortex.sh → fallback $WORKSPACE_DIR/FMT-exocortex-template/scripts/restore-from-exocortex.sh. Нет файла → см. Режим отказа.
  • Governance-репо: аргумент пользователя, иначе $WORKSPACE_DIR/${GOVERNANCE_REPO:-DS-strategy}. Убедиться, что <gov>/exocortex/ существует.

Шаг 2. Pre-flight (judgment — здесь LLM уместен)

  • Определить целевую auto-memory: ~/.claude/projects/$(echo "$HOME" | tr '/_.' '-')-IWE/memory (Claude Code слугифицирует /, _, . → -; tr '/' '-' промахнётся при _ в username).
  • Пусто/нет → свежее устройство, восстановление без --force.
  • Населена → существующая инсталляция. Это destructive: показать --dry-run и спросить подтверждение перед --force (Правило 7, исключение «необратимое»).

Шаг 3. Превью → восстановление

  1. Всегда сначала restore-from-exocortex.sh <gov> --dry-run — показать пользователю, что будет сделано.
  2. После согласия (или сразу, если memory пуста) — запуск без --dry-run (с --force, если memory населена и пользователь подтвердил).

Шаг 4. Отчёт

  • Сколько memory-файлов восстановлено, восстановлен ли CLAUDE.md, создан ли симлинк.
  • Напомнить: перезапустить Claude Code — память грузится при старте сессии.

Режим отказа

Сценарий Поведение
exocortex/ не найден Стоп: backup отсутствует/не запушен. Подсказать git pull governance-репо или проверить путь
Скрипт не найден До мержа #151 — взять из ветки: git checkout feat/exocortex-sync-restore -- scripts/restore-from-exocortex.sh; иначе bug-report
memory населена, нет подтверждения НЕ перезаписывать. Показать dry-run, ждать явного «да»/--force
Агент ещё не настроен (голое устройство) Скилл недоступен → инструктировать запуск скрипта из терминала (bootstrap-путь, SETUP-GUIDE)
Files (fmt-exocortex-template)
  • SKILL.md 4.8 KB
    ---
    # see DP.SC.153 (родительский), #125
    name: restore-exocortex
    description: "Restore IWE memory from an exocortex backup on a new device or after data loss — NL wrapper around restore-from-exocortex.sh."
    version: 1.0.0
    layer: L1
    status: active
    browser_safe: false
    triggers:
      slash: [/restore-exocortex]
      phrases: ["восстанови экзокортекс", "восстанови память", "восстановить exocortex", "restore exocortex", "подними память на новом устройстве"]
    owner_role: R6
    annotations:
      destructive: true
      interactive: true
    related: ["#125"]
    ---
    
    # /restore-exocortex — Восстановление памяти из exocortex
    
    > **Роль:** R6 Кодировщик
    > **Триггер:** «восстанови экзокортекс / память», новое устройство, потеря/повреждение `memory/`
    > **Service Clause:** DP.SC.153 (родительский, скиллы); реализация #125
    
    ## Обещание (контракт)
    
    **Вход:** (опц.) путь к governance-репо. По умолчанию `$WORKSPACE_DIR/$GOVERNANCE_REPO` (`~/IWE/DS-strategy`).
    **Выход:** восстановленные `memory/` + `extensions/` + `CLAUDE.md` + симлинк `memory/`; отчёт + напоминание перезапустить Claude Code.
    **Инвариант:** НЕ перезаписывает населённую `memory/` или `extensions/` без явного подтверждения пользователя.
    
    > **Оркестрация, не реализация.** Скилл судит (свежее устройство vs существующая инсталляция, резолв пути, подтверждение) и зовёт детерминированный примитив `scripts/restore-from-exocortex.sh`. Сам file-ops не делает. На голом терминале без агента используется скрипт напрямую — это bootstrap-путь (см. SETUP-GUIDE).
    
    ## Алгоритм
    
    ### Шаг 1. Резолв скрипта и пути
    - Скрипт: `$IWE_SCRIPTS/restore-from-exocortex.sh` → fallback `$WORKSPACE_DIR/FMT-exocortex-template/scripts/restore-from-exocortex.sh`. Нет файла → см. Режим отказа.
    - Governance-репо: аргумент пользователя, иначе `$WORKSPACE_DIR/${GOVERNANCE_REPO:-DS-strategy}`. Убедиться, что `<gov>/exocortex/` существует.
    
    ### Шаг 2. Pre-flight (judgment — здесь LLM уместен)
    - Определить целевую auto-memory: `~/.claude/projects/$(echo "$HOME" | tr '/_.' '-')-IWE/memory` (Claude Code слугифицирует `/`, `_`, `.` → `-`; `tr '/' '-'` промахнётся при `_` в username).
    - **Пусто/нет** → свежее устройство, восстановление без `--force`.
    - **Населена** → существующая инсталляция. Это destructive: показать `--dry-run` и **спросить подтверждение** перед `--force` (Правило 7, исключение «необратимое»).
    
    ### Шаг 3. Превью → восстановление
    1. Всегда сначала `restore-from-exocortex.sh <gov> --dry-run` — показать пользователю, что будет сделано.
    2. После согласия (или сразу, если memory пуста) — запуск без `--dry-run` (с `--force`, если memory населена и пользователь подтвердил).
    
    ### Шаг 4. Отчёт
    - Сколько memory-файлов восстановлено, восстановлен ли `CLAUDE.md`, создан ли симлинк.
    - **Напомнить: перезапустить Claude Code** — память грузится при старте сессии.
    
    ## Режим отказа
    
    | Сценарий | Поведение |
    |---------|-----------|
    | `exocortex/` не найден | Стоп: backup отсутствует/не запушен. Подсказать `git pull` governance-репо или проверить путь |
    | Скрипт не найден | До мержа #151 — взять из ветки: `git checkout feat/exocortex-sync-restore -- scripts/restore-from-exocortex.sh`; иначе bug-report |
    | memory населена, нет подтверждения | НЕ перезаписывать. Показать dry-run, ждать явного «да»/`--force` |
    | Агент ещё не настроен (голое устройство) | Скилл недоступен → инструктировать запуск скрипта из терминала (bootstrap-путь, SETUP-GUIDE) |
    
    <!-- USER-SPACE -->
    <!-- /USER-SPACE -->
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related