Довідка для власника · Claude і Codex
Бекап агента без паролів і ключів
Інструкція перевірена .
Бекап допоможе відновити знання агента, vault, збережені на сервері текстові переписки, навички, власний код, документи, медіафайли та безпечні налаштування після втрати сервера. Архів шифрується і зберігається лише у приватному репозиторії GitHub. Доступи до сервісів після відновлення підключаються заново.
Паролі, токени, OAuth-доступи, cookies, сесії авторизації та приватні ключі не входять до бекапу — навіть зашифрованого. Файли авторизації й браузерні профілі виключаються. У підтримуваних текстах і базах helper прибирає розпізнані секретні значення. Архів зберігає перелік виявлених інтеграцій та місця їхньої конфігурації, щоб допомогти з повторним підключенням, без самих даних доступу.
Звичайні фото, аудіо, відео, PDF та підтримувані документи Office зберігаються без зміни вмісту. Сховища доступів, вкладення з виявленими ключами, окремі архіви й непідтримувані формати пропускаються з поясненням у звіті. Паролі й ключі зберігай окремо — у захищеному .env або менеджері паролів, а не в нотатках, переписках чи зображеннях. Розпізнавання тексту на фото не виконується; автоматичний пошук у текстах також не може впізнати будь-який довільний пароль. Після відновлення агент підкаже, які сервіси підключити заново. Стара синхронізація лише нотаток не замінює цього архіву.
Після підключення скрипт створює копії за розкладом, не частіше ніж раз на 12 годин, без витрат токенів Claude або Codex. Зберігаються 14 останніх перевірених копій агента; якщо GitHub забороняє видалення immutable Releases, старі копії можуть залишатися довше. GitHub Pro не є обов’язковим для приватного репозиторію. Обсяг даних, швидкість інтернету, політики акаунта та строк дії токена впливають на роботу.
1. Створи або відкрий свій GitHub
Відкрий реєстрацію GitHub. Зареєструйся та підтвердь email. Якщо акаунт уже є, просто увійди. Пароль від GitHub агенту не потрібен.
2. Створи приватний репозиторій
Відкрий створення репозиторію.
- Owner: твій акаунт.
- Repository name: наприклад
my-agent-backup. - Visibility: Private.
- Увімкни Add a README file / створення README: потрібен початковий commit.
- Натисни Create repository.
Скопіюй адресу створеного репозиторію, наприклад https://github.com/your-login/my-agent-backup. Надішли її своєму агенту зі словами: «Налаштуй приватний бекап GitHub без секретів за навичкою backup-recovery». Для різних власників потрібні їхні власні репозиторії.
3. Збережи ключ відновлення
Агент підготує файл ключа recovery-key.txt і передасть його тобі окремим файлом у вашому особистому чаті. Збережи його на своєму комп’ютері або в менеджері паролів; бажано мати ще одну власну копію. Потім напиши агенту: «Ключ відновлення збережено».
Ключ не можна зберігати лише на сервері або в тому самому GitHub. Без нього архів неможливо розшифрувати. Файл ключа не треба пересилати стороннім або вставляти його текст у повідомлення. Саме збережене повідомлення в Telegram не замінює твою окрему копію ключа.
4. Створи токен лише для цього репозиторію
У GitHub натисни фото профілю → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token. Пряме посилання: створення fine-grained token.
- Token name: наприклад
Agent backup. - Expiration: обери строк, наприклад 90 днів. Перед його завершенням токен потрібно оновити, інакше нові копії припиняться. Організація може вимагати коротший строк або погодження адміністратора.
- Resource owner: акаунт, у якому ти створив репозиторій.
- Repository access: Only select repositories → лише
my-agent-backup. - Permissions → Repository permissions → Contents: Read and write. Metadata: Read-only додається автоматично.
- Натисни Generate token й одразу скопіюй токен: повторно його текст не покажуть.
Не обирай доступ до всіх репозиторіїв. Не потрібні permissions для Actions, адміністрування акаунта або зміни його налаштувань. Якщо токен очікує погодження організації, спочатку дочекайся цього погодження.
5. Введи токен у приховане поле термінала
Не надсилай токен у Telegram — ані текстом, ані файлом. Агент може автоматично читати вкладення, тому підпис «не відкривай» не захищає їх. Токен потрібно вставити особисто у прихований ввід helper на сервері.
Попроси агента назвати системного користувача й точний home своєї інсталяції та підготувати команду для твого репозиторію. Відкрий термінал сервера у Novsky, якщо він доступний, або підключись через SSH з Terminal на Mac чи Windows Terminal. Команда виконується під користувачем цього агента, а не під root за замовчуванням. Якщо вхід доступний лише адміністраторові сервера, попроси його запустити helper від імені потрібного користувача; сам токен у листуванні йому не пересилай.
Шаблон команди для стандартного home (агент має підставити справжні шляхи):
/home/AGENT_USER/bin/agent-full-backup --home /home/AGENT_USER connect --repo your-login/my-agent-backup
Якщо кілька агентів працюють під одним системним користувачем, шлях до helper і --home повинні вказувати саме на окрему папку потрібного агента. Для локального агента на Mac також використовуй його фактичний абсолютний шлях; Linux-шаблон не треба копіювати без змін.
Коли команда попросить GitHub token, встав його й натисни Enter. Символи не показуються. Не дописуй токен у саму команду або shell history. Helper перевірить приватність репозиторію й збереже локальну копію токена з правами 0600; у бекап вона не потрапляє. Агенту повідом лише результат підключення.
6. Дочекайся перевіреної першої копії
Напиши агенту «Увімкни автобекап і перевір першу копію». Він запускає ~/bin/agent-full-backup enable та перевіряє status --json. Підключення завершене, коли є час успішної копії, увімкнений розклад і перевірена Release у твоєму репозиторії. Попроси також підтвердити політику без секретів no-secrets-v1 та пояснити звіт про пропущені файли й очищені дані. Старий helper, який включав дані доступу, спочатку потрібно оновити. Повідомлення «токен збережено» або просто наявність репозиторію цього ще не доводять.
Перша копія великого агента може тривати довше. Роботу й листування агента для цього зупиняти не потрібно. У GitHub відкрий репозиторій → Releases: там будуть зашифровані частини архіву, квитанція й програма відновлення.
Якщо сервер втрачено
- Увійди у свій GitHub та відкрий останню успішну Release цього агента.
- Завантаж усі частини саме цієї копії, квитанцію
receipt.jsonіagent-full-restoreв один каталог. - Підготуй збережений окремо
recovery-key.txtта новий сервер. На Ubuntu встанови Python 3 і age (sudo apt-get install python3 age). - У каталозі завантажених файлів виконай:
python3 agent-full-restore --receipt receipt.json --identity /path/to/recovery-key.txt --output /path/to/empty-restore-directory
- Helper перевірить частини, розшифрує копію та перевірить файли й бази. Адміністратор або агент-інсталятор перегляне звіт очищення, перенесе перевірені дані й код у home потрібного користувача та встановить runtime і залежності. Служби й розклади вмикаються після відновлення підключень.
Не запускай дві копії одного Telegram-бота одночасно. Бекап не є образом усієї Ubuntu і не містить повідомлень, які ніколи не потрапили на сервер агента. Пропущені вкладення та видалені секретні значення він не відновить.
Як заново підключити сервіси
У відновленому каталозі відкрий reconnect-inventory.json. Це перелік виявлених сервісів і місць конфігурації, а не сховище ключів. Він допомагає знайти, що потрібно налаштувати; список дозволів може бути порожнім. Точні акаунти, проєкти й потрібні права власник підтверджує під час входу. Якщо цей файл вказує на system/reconnect-inventory.json, переглянь також перелік підключень із системної конфігурації агента.
- Claude або Codex. Пройди офіційний вхід чи device login, який запропонує інсталятор. Збереженої сесії у бекапі немає; пароль вводь лише на сторінці самого провайдера.
- Telegram. Отримай токен свого бота через BotFather і додай його через захищений інсталятор. Перевір username бота й Telegram ID власника до запуску. Якщо старий сервер міг потрапити до сторонніх, заміни токен.
- Google Workspace. Підготуй OAuth client у своєму Google Cloud, заново авторизуй потрібний Google-акаунт через встановлений Google helper і надай лише потрібні доступи. Потім перевір читання календаря чи файла. OAuth credentials і refresh tokens архів не поверне.
- GitHub і автоматичний бекап. Заново підключи GitHub CLI, якщо він потрібний для роботи, та окремий fine-grained токен бекапу з доступом лише до обраного приватного репозиторію. Даних входу з
~/.config/gh/в архіві немає. Для наступних копій знову налаштуй ключ відновлення і збережи його окремо. Старий ключ залиш для читання старих копій. - Vercel та інші API. Створи окремі токени у відповідних сервісах і передай їх через встановлені захищені helpers, наприклад
set-vercel-token. За inventory і навичкою потрібного сервісу повтори підключення CRM, аналітики, голосових та інших інтеграцій. Обирай мінімально потрібні права. - Браузер та SSH. Увійди на потрібні сайти заново. Для SSH створи нові ключі й окремо надай їм доступ; браузерні cookies і приватні SSH-ключі не відновлюються.
Після кожного підключення перевір одну безпечну дію: прочитати тестовий файл, отримати список проєктів або перевірити стан сервісу. Далі ввімкни лише потрібні розклади та перевір відповідь агента в особистому Telegram-чаті. Повторна авторизація потрібна завжди, а не лише коли старий токен прострочений. Паролі й ключі не надсилай звичайним повідомленням.
Файли recovery-key.txt і github-token самого бекапу також виключені. Не копіюй їх у vault або вкладення для обходу цього правила. Твої окремо збережені ключ відновлення та доступ до GitHub потрібні для читання архіву.
Офіційні джерела
- Реєстрація: Створення акаунта GitHub
- Fine-grained tokens: Personal access tokens
- Releases та ліміти файлів: GitHub Releases та ліміти
- Шифрування age: Шифрування age