AI-translated from English; not yet reviewed by a fluent editor.

# Сачувајте Hermes Agent на приватном GitHub репозиторијуму и проверите опоравак

> Направите пуну резервну копију Hermes података, шифрујте је пре слања на приватни GitHub, закажите извршавања без агента и проверите преузимање и увоз на засебној машини. Водич заснован на документацији.

By BIG CHANGE Editorial

Published: 2026-10-19T18:30:35.265Z
Updated: 2026-10-19T18:30:35.265Z
Canonical: https://bigchange.ai/blog/hermes-encrypted-github-backup-recovery-guide

![Conceptual charcoal illustration of two separate unbranded desktop computers on metal shelves, one connected to an orange cable and the other beside a loose cable.](https://bigchange.ai/api/media/file/hermes-backup-recovery-separate-machines-v3.png)
AI-generated conceptual illustration by BIG CHANGE.

Овај водич је за оператора самостално хостованог Hermes Agent система који може да управља Linux налогом и приватним GitHub репозиторијумом. Исход је конкретан: пуна архива Hermes **корисничких података**, шифрована пре напуштања сервера, потврђена на предвиђеном приватном удаљеном репозиторијуму, па преузета и увезена на засебној привременој машини. Поступак је документован за [Hermes CLI на commit-у `86fa9e6`](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/cli-commands.md), проверено 19. октобра 2026. BIG CHANGE је проверио синтаксу и ток скрипте инертним локалним пробним подацима; није извршио стварну Hermes резервну копију, age шифровање, слање на GitHub, заказано покретање или враћање. Сматрајте копију доказаном за своју инсталацију тек пошто лично обавите све провере испод.

## Велика промена

- **Шта се променило:** Hermes команда за пуну резервну копију може да прикупи радне податке у ZIP, а његов cron режим без агента може да изврши прегледану скрипту. Тако оператор може да направи заказану шифровану копију без препуштања копирања AI моделу.
- **Зашто је важно:** Оператор проверава три одвојене чињенице: Hermes је довршио архиву, шифровани садржај је стигао у предвиђени приватни репозиторијум и нова инсталација може да га увезе. Свака провера открива другу врсту грешке. Архива и даље изоставља апликацију и део локалних података машине.
- **На шта обратити пажњу:** Практична одлука је да ли архива и растућа Git историја остају довољно мали за овај ограничени пут. Неуспешна вежба опоравка или било које ограничење величине захтева други план складиштења пре ослањања на распоред.

## 1. Припремите сервер, кључ и репозиторијум

Користите Linux са Bash-ом, GNU алатима `stat -c` и `du -sb`, уз инсталирани Hermes CLI, Git, GitHub CLI (`gh`), age, `unzip`, `sha256sum`, SSH и активан Hermes gateway за cron. Потврдите да инсталиране команде `hermes backup`, `hermes import` и `hermes cron create --help` одговарају [референци CLI-ја на фиксираном commit-у](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/cli-commands.md), [честим питањима](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/faq.md) и [cron приручнику](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/user-guide/features/cron.md). Утврдите корисника оперативног система и `HERMES_HOME` који припадају gateway-у. Целокупно подешавање и прву ручну копију извршите као тај корисник. Пример претпоставља наменски чист Git клон и `main` грану.

Пуна Hermes копија укључује конфигурацију, приступне податке, меморије, вештине, сесије и профиле испод корена података. Изоставља Hermes код, преузете зависности и извршно окружење, раније копије, контролне тачке, профиле приступних података прегледача, SQLite пратеће датотеке и неке локалне датотеке. Не прикупља неповезане датотеке са других места на серверу. **Немојте користити `--quick`** за овај исход пуне копије података. Прегледајте важне ставке изван тог обухвата и заштитите их засебно. ZIP садржи тајне чак и када је одредишни репозиторијум приватан.

Направите age идентитет, приватни кључ потребан за дешифровање, на заштићеном месту изван `HERMES_HOME`, припремног директоријума и Git клона. Сачувајте независно ускладиштену копију тог идентитета за опоравак. Исписани прималац `age1…` је јаван и иде у конфигурацију; приватни идентитет не иде. Пратите [референцу за коришћење age](https://github.com/FiloSottile/age/blob/main/README.md).

```bash
umask 077
install -d -m 700 /PRIVATE-KEY-STORE
age-keygen -o /PRIVATE-KEY-STORE/hermes-backup-identity.txt
age-keygen -y /PRIVATE-KEY-STORE/hermes-backup-identity.txt
```

Направите **приватни** репозиторијум само за ову копију, проверите ко има приступ и подесите неинтерактивни приступ за читање помоћу `gh` и Git SSH приступ за упис под истим корисником који извршава Hermes cron. Токене и приватне SSH кључеве држите изван Hermes података, припреме и Git-а. Интерактивна пријава другим налогом не доказује заказани приступ. Замените ознаке великим словима пре извршавања примера. Ако је прављење репозиторијума већ направило README или `main` грану, проверите их и прескочите неспојиве иницијализационе команде.

```bash
gh repo create ACCOUNT/PRIVATE-REPOSITORY --private --clone
gh repo view ACCOUNT/PRIVATE-REPOSITORY --json isPrivate --jq .isPrivate
cd PRIVATE-REPOSITORY
git remote set-url origin git@github.com:ACCOUNT/PRIVATE-REPOSITORY.git
git remote get-url --all origin
git remote get-url --push --all origin
git branch -M main
printf '%s\n' 'Encrypted Hermes backup storage; ciphertext and checksum only.' > README.md
git add README.md
git commit -m 'Initialize private backup repository'
git push -u origin HEAD:main
git ls-remote --heads origin main
```

`gh repo create --clone` може одабрати ХТТПС из локалних поставки; изричито наведени SSH remote изнад одређује одредиште овог поступка. Наставите тек када `isPrivate` врати `true`, сарадници буду предвиђени, ефективни УРЛ за преузимање и слање појединачно одговарају једном прегледаном SSH УРЛ-у и удаљени приступ ради као заказани корисник. [Правила удаљених Git репозиторијума](https://git-scm.com/docs/git-remote) дозвољавају преписивање УРЛ-а, додатна одредишта и засебан `pushurl`; скрипта испод при сваком извршавању проверава сирове и ефективне вредности.

Напустите клон пре чувања следећа два блока кода. Направите приватни директоријум за подешавање изван корена Hermes података, Git клона, припремног директоријума и складишта кључева. Сачувајте `hermes-github-backup.sh` и `hermes-github-backup.conf` тамо; инсталационе команде их копирају у власнички профил. Наменски Git клон мора остати чист.

```bash
install -d -m 700 /ABSOLUTE/PRIVATE-SETUP
cd /ABSOLUTE/PRIVATE-SETUP
```

## 2. Инсталирајте прегледану скрипту за копирање

Сачувајте цео Bash блок испод као `hermes-github-backup.sh` у том приватном директоријуму. Други блок сачувајте као `hermes-github-backup.conf` поред њега, пошто замените сваку ознаку апсолутном путањом или јавним примаоцем. Ово је shell конфигурација коју треба локално прегледати пре учитавања и дати дозволе само власнику. Не сме садржати лозинку, токен или приватни age идентитет. Скрипта је комплетан предложени пример; синтакса и инертни ток су проверени, али је прилагодите и тестирајте на својој инсталацији. Настала датотека `latest.zip.age` је шифрована архива.

```bash
#!/usr/bin/env bash
# Documentation-based Linux sample for an operator to review and adapt.
# Place with hermes-github-backup.conf under the owning HERMES_HOME/scripts/.
# Requires GNU stat -c and du -sb. Git Bash was used only for inert fixtures.
set -Eeuo pipefail
umask 077

script_dir=$(CDPATH= cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)
owning_home=$(CDPATH= cd -- "$script_dir/.." && pwd -P)
if [[ -n ${HERMES_HOME:-} && $(CDPATH= cd -- "$HERMES_HOME" && pwd -P) != "$owning_home" ]]; then
  printf 'Backup stopped: cron profile and script directory differ.\n' >&2
  exit 1
fi
export HERMES_HOME="$owning_home"

config="$script_dir/hermes-github-backup.conf"
[[ -f "$config" ]] || { printf 'Backup stopped: reviewed configuration missing.\n' >&2; exit 1; }
# This file is local, owner-reviewed shell configuration. It must contain no secret.
# shellcheck source=/dev/null
source "$config"
: "${HERMES_BIN:?set an absolute Hermes executable path}"
: "${REPO_DIR:?set an absolute private clone path}"
: "${STAGING_PARENT:?set an absolute private staging path}"
: "${AGE_RECIPIENT:?set an age public recipient}"
: "${EXPECTED_REMOTE:?set the exact private GitHub SSH remote}"
: "${BRANCH:=main}"

fail() { printf 'Backup stopped: %s.\n' "$1" >&2; exit 1; }
for path in "$HERMES_BIN" "$REPO_DIR" "$STAGING_PARENT"; do
  [[ $path == /* ]] || fail 'a configured path is not absolute'
done
[[ -x "$HERMES_BIN" ]] || fail 'Hermes executable unavailable'
[[ $AGE_RECIPIENT == age1* ]] || fail 'age public recipient invalid'
[[ $EXPECTED_REMOTE == git@github.com:*/*.git ]] || fail 'remote is not the reviewed GitHub SSH URL'
[[ $BRANCH =~ ^[a-zA-Z0-9._/-]+$ ]] || fail 'branch name invalid'
[[ -d "$STAGING_PARENT" ]] || fail 'staging directory unavailable'
stage_parent=$(CDPATH= cd -- "$STAGING_PARENT" && pwd -P)
[[ $stage_parent != "$owning_home" && $stage_parent != "$owning_home"/* ]] || fail 'staging is inside Hermes data'

# Atomic, nonblocking whole-flow lock: keep it through push and remote readback.
# A stale directory after a crash requires operator inspection; never steal it.
lockdir="$stage_parent/.hermes-github-backup-flow.lock"
mkdir -- "$lockdir" 2>/dev/null || fail 'another backup flow holds the lock or a stale lock needs review'
work=''
cleanup() {
  if [[ -n $work ]]; then
    rm -f -- "$work/hermes.zip" "$work/latest.zip.age" "$work/latest.sha256" "$work/backup.log"
    rmdir -- "$work" 2>/dev/null || true
  fi
  rmdir -- "$lockdir" 2>/dev/null || true
}
trap cleanup EXIT

[[ -d "$REPO_DIR/.git" ]] || fail 'Git repository unavailable'
repo=$(CDPATH= cd -- "$REPO_DIR" && pwd -P)
[[ $repo != "$owning_home" && $repo != "$owning_home"/* ]] || fail 'repository is inside Hermes data'
[[ $stage_parent != "$repo" && $stage_parent != "$repo"/* ]] || fail 'staging is inside Git repository'
[[ $repo != "$stage_parent"/* ]] || fail 'Git repository is inside staging'

command -v age >/dev/null || fail 'age unavailable'
command -v gh >/dev/null || fail 'GitHub CLI unavailable for private visibility check'
command -v unzip >/dev/null || fail 'zip verifier unavailable'
command -v git >/dev/null || fail 'Git unavailable'
remote_repo=${EXPECTED_REMOTE#git@github.com:}
remote_repo=${remote_repo%.git}
visibility=$(gh repo view "$remote_repo" --json isPrivate --jq .isPrivate 2>/dev/null) || fail 'GitHub repository visibility unreadable'
[[ $visibility == true ]] || fail 'GitHub repository is not confirmed private'
raw_fetch_urls=$(git -C "$repo" config --get-all remote.origin.url) || fail 'Git fetch URL missing'
[[ $raw_fetch_urls == "$EXPECTED_REMOTE" ]] || fail 'Git has multiple or unexpected raw fetch URLs'
raw_push_urls=$(git -C "$repo" config --get-all remote.origin.pushurl || true)
[[ -z $raw_push_urls ]] || fail 'separate Git pushurl requires independent review'
effective_fetch_urls=$(git -C "$repo" remote get-url --all origin) || fail 'effective fetch URL unreadable'
effective_push_urls=$(git -C "$repo" remote get-url --push --all origin) || fail 'effective push URL unreadable'
[[ $effective_fetch_urls == "$EXPECTED_REMOTE" ]] || fail 'Git fetch URL rewrite or extra destination'
[[ $effective_push_urls == "$EXPECTED_REMOTE" ]] || fail 'Git push URL rewrite or extra destination'
[[ $(git -C "$repo" branch --show-current) == "$BRANCH" ]] || fail 'local branch changed'
[[ -z $(git -C "$repo" status --porcelain --untracked-files=all) ]] || fail 'repository has unrelated changes'

# No interactive prompt is possible in an unattended Hermes cron tick.
export GIT_TERMINAL_PROMPT=0
export GIT_SSH_COMMAND='ssh -o BatchMode=yes'
remote_head=$(git -C "$repo" ls-remote --heads origin "$BRANCH" | awk '{print $1}')
[[ -n $remote_head && $remote_head == "$(git -C "$repo" rev-parse HEAD)" ]] || fail 'remote unreadable or branch has changed'

work=$(mktemp -d "$stage_parent/hermes-backup.XXXXXXXX") || fail 'private staging creation failed'

if "$HERMES_BIN" backup -o "$work/hermes.zip" >"$work/backup.log" 2>&1; then
  :
else
  backup_rc=$?
  fail "Hermes full backup returned $backup_rc; temporary zip/log will be removed, so diagnose with a separate controlled manual run"
fi
[[ -s "$work/hermes.zip" ]] || fail 'Hermes archive absent or empty'
unzip -tq "$work/hermes.zip" >"$work/backup.log" 2>&1 || fail 'zip integrity check failed'
age -r "$AGE_RECIPIENT" -o "$work/latest.zip.age" "$work/hermes.zip" >"$work/backup.log" 2>&1 || fail 'archive encryption failed'
[[ -s "$work/latest.zip.age" ]] || fail 'encrypted archive absent or empty'

# Deliberately below GitHub's 50 MiB warning. Git history retains every version.
cipher_bytes=$(stat -c %s "$work/latest.zip.age")
(( cipher_bytes <= 40000000 )) || fail 'encrypted archive exceeds this small-repository recipe'
git_bytes=$(du -sb "$repo/.git" | awk '{print $1}')
(( git_bytes + cipher_bytes + 10000000 <= 500000000 )) || fail 'repository history approaches the review limit'
hash=$(sha256sum "$work/latest.zip.age" | awk '{print $1}')
printf '%s  latest.zip.age\n' "$hash" >"$work/latest.sha256"

cp -- "$work/latest.zip.age" "$repo/latest.zip.age"
cp -- "$work/latest.sha256" "$repo/latest.sha256"
git -C "$repo" add -- latest.zip.age latest.sha256
staged=$(git -C "$repo" diff --cached --name-only)
[[ $staged == $'latest.sha256\nlatest.zip.age' ]] || fail 'staged paths are not the two reviewed files'
git -C "$repo" diff --cached --check >/dev/null || fail 'staged content check failed'
git -C "$repo" commit -m "Encrypted Hermes backup $(date -u +%Y-%m-%dT%H:%M:%SZ)" >/dev/null || fail 'local backup commit failed'
run_head=$(git -C "$repo" rev-parse HEAD)
(( $(du -sb "$repo/.git" | awk '{print $1}') <= 500000000 )) || fail 'Git history exceeds review limit before push'
[[ $(git -C "$repo" rev-parse HEAD) == "$run_head" ]] || fail 'local HEAD changed before push'
git -C "$repo" push origin "$run_head:refs/heads/$BRANCH" >/dev/null || fail 'remote push failed; inspect exact remote before retrying'
remote_head=$(git -C "$repo" ls-remote --heads origin "$BRANCH" | awk '{print $1}')
[[ $remote_head == "$run_head" ]] || fail 'this run commit not confirmed at remote'
printf 'Encrypted backup verified at private remote commit %s.\n' "$run_head"
```

```bash
# No passwords, tokens, age identities or private keys belong here.
HERMES_BIN=/absolute/path/to/hermes
REPO_DIR=/absolute/path/to/dedicated-private-github-clone
STAGING_PARENT=/absolute/path/to/private-staging-outside-hermes-and-git
AGE_RECIPIENT=age1replace_with_operator_public_recipient
EXPECTED_REMOTE=git@github.com:ACCOUNT/PRIVATE-REPOSITORY.git
BRANCH=main
```

Направите припремни директоријум изван корена Hermes података и Git клона. Прегледане датотеке ставите у `scripts/` директоријум власничког профила. Пре сваког извршавања клон мора бити чист и усклађен са удаљеном `main` граном. Скрипта закључава цео ток кроз слање и повратно читање; никада не преузима заузету или стару браву. Као нове путање припремљене за Git прихвата само `latest.zip.age` и `latest.sha256`. Стаје када шифрована датотека премаши **40.000.000 бајтова** или локални `.git` са резервним простором приђе **500.000.000 бајтова**. То су конзервативна ограничења примера, не гаранције GitHub складиштења.

```bash
export HERMES_HOME=/absolute/path/to/owning-hermes-data-root
install -d -m 700 /ABSOLUTE/PRIVATE-STAGING
install -d -m 700 "$HERMES_HOME/scripts"
install -m 700 hermes-github-backup.sh "$HERMES_HOME/scripts/hermes-github-backup.sh"
install -m 600 hermes-github-backup.conf "$HERMES_HOME/scripts/hermes-github-backup.conf"
"$HERMES_HOME/scripts/hermes-github-backup.sh"
```

Ручно извршавање треба да заврши излазним кодом нула и испише commit направљен **баш тим извршавањем** након новог читања удаљеног репозиторијума. Потврдите да `gh repo view` и даље пријављује приватност, прегледајте праћене путање у клону и проверите тачан commit на предвиђеном remote-у. Локална архива или commit нису удаљени резултат. Заустављено извршавање не бележите као такво. Hermes наводи да пуна копија враћа `0` само када је свака изабрана датотека додата, `1` за непотпуну архиву, чак и ако ZIP постоји, и `2` када друга копија ради. Скрипта при изласку брише привремени ZIP и дневник; обично брисање није безбедно уништавање података. За прескочене датотеке истражите одвојеном контролисаном ручном командом `hermes backup -o /PRIVATE-DIAGNOSTIC/hermes.zip`, прегледајте излазни статус и извештај и одлучите како заштитити изостављени материјал.

## 3. Закажите и прегледајте прво доспело извршавање

Тек након ручног резултата користите документовани Hermes режим `--no-agent --script` из истог профила. Извршава датотеку без LLM позива. Намерно одаберите учесталост и локално достављање статуса без тајни. Проверите OS идентитет gateway-а, профил и следеће време. Према Hermes документацији, временско ограничење скрипте долази из `HERMES_CRON_SCRIPT_TIMEOUT`, затим `cron.script_timeout_seconds`, затим **подразумеваних 3.600 секунди**. Поставите и проверите вредност примерену посматраном извршавању; истек времена је грешка. Прочишћено окружење скрипте не прима аутоматски приступне податке провајдера којима управља Hermes, па проверите ненадгледани `gh` и SSH приступ под стварним заказаним корисником пре ослањања на њега.

```bash
hermes cron create '0 3 * * *' --no-agent --script hermes-github-backup.sh --deliver local --name 'Encrypted Hermes backup'
hermes cron list
hermes cron status
hermes cron doctor
```

После првог **заказаног** термина прегледајте тачан ИД посла и запис извршавања, локални излаз под `~/.hermes/cron/output/` за подразумевани профил, сваки инцидент и главни commit предвиђеног удаљеног репозиторијума. Потврдите да је gateway остао доступан и да је извршавање пријавило удаљени commit настао баш тим окидањем. Ручно покретање не доказује да је cron радио. Ако нема излаза, прегледајте тај посао и gateway, не правите други распоред. Статусне поруке не смеју садржати ZIP садржај, тајне или приступне податке.

## 4. Докажите преузимање и увоз на новој машини

Користите **засебну привремену Linux машину без продукционог Hermes профила или gateway-а**. Прво инсталирајте компатибилно Hermes издање: архива је кориснички податак, не слика апликације или извршног окружења. Тест машини дајте независан одобрен приступ за читање предвиђеног приватног репозиторијума и независно сачуваног age идентитета. Потврдите remote клона и изабрани commit. Не покрећите `hermes import` на изворном серверу или постојећем профилу. Све враћене распореде и спољне радње држите неактивним док човек не прегледа одредишта и одлучи о укључивању.

```bash
umask 077
unset HERMES_HOME
git clone git@github.com:ACCOUNT/PRIVATE-REPOSITORY.git /PRIVATE-RECOVERY/hermes-backup-clone
cd /PRIVATE-RECOVERY/hermes-backup-clone
sha256sum -c latest.sha256
age --decrypt -i /PRIVATE-KEY-STORE/hermes-backup-identity.txt -o /PRIVATE-RECOVERY/hermes.zip latest.zip.age
unzip -tq /PRIVATE-RECOVERY/hermes.zip
hermes import /PRIVATE-RECOVERY/hermes.zip
hermes setup
hermes cron list
```

Упоредите увезене профиле, вештине, меморије, сесије и cron дефиниције са оним што сте желели да заштитите. `hermes setup` проверава конфигурацију провајдера, али прегледајте приступне податке и путање специфичне за машину које треба прилагодити. Забележите стварне резултате. Тачна контролна сума и ZIP који може да се дешифрује сами не доказују употребљиво враћање. Уклоните нешифровани пробни ZIP после вежбе према локалним правилима; обично брисање не гарантује безбедно уништавање.

## Када провере стану

Непотпуна Hermes копија, ZIP или шифровачка грешка, неочекиван ефективни Git УРЛ, неприватан или нечитљив репозиторијум, заузета брава тока, ограничење величине, неуспешно слање, различит удаљени commit или неуспешан увоз оставља извршавање **непотврђеним**. Решите конкретан узрок и проверите тренутно стање пре новог покушаја. Ако је исход слања неизвестан, прво проверите тачну удаљену грану и commit. Ако брава остане после пада, проверите жив процес и локално/удаљено стање; никада не бришите активну браву. Ако се изгуби приватни age идентитет, за дешифровање треба независна исправна копија. Прво промените откривене приступне податке ако нешифроване тајне уђу у Git; касније брисање датотеке не уклања ранију историју или друге клонове.

[GitHub смернице за велике датотеке](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github) упозоравају на **50 MiB**, блокирају обичне Git датотеке изнад **100 MiB** и наводе да Git није замишљен као алат за резервне копије. Пример намерно стаје испод тих граница. Свака промењена шифрована датотека остаје у Git историји и када се `latest.zip.age` замени. Не подижите прећутно границе 40 MB/500 MB, не преписујте историју и не сматрајте приватност шифровањем. Преиспитајте наменско складиште за копије или засебно прегледан LFS план ако падну провере величине или опоравка. Трошкови налога, складишта, мреже и сервера и даље важе; скрипта без агента сама не захтева LLM позив. Нису мерени трајање, успешност или уштеде овог поступка.

За засебан, ужи Hermes задатак заказивања погледајте [како подесити понављајући Hermes посао заснован на вештини и проверити прво извршавање](https://bigchange.ai/blog/hermes-skill-recurring-job-first-run). Провера његовог извештаја не замењује шифровану архиву и вежбу опоравка.

## Извори и додатно читање

- [Hermes Agent CLI команде, фиксирани commit `86fa9e6`](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/cli-commands.md) — Команда пуне копије, обухват, изузеци и излазни статуси. Проверено 19. октобра 2026. према фиксираном извору; не доказује да је пример радио на стварном профилу.
- [Hermes Agent честа питања, исти фиксирани commit](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/faq.md) — Пренос пуне копије, `hermes import` и `hermes setup`; архива је податак, не слика извршног окружења.
- [Приручник Hermes заказаних задатака, исти фиксирани commit](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/user-guide/features/cron.md) — Скрипта без агента, достављање, прочишћено окружење, gateway и временско ограничење. Проверите помоћ инсталиране верзије пре заказивања.
- [age README](https://github.com/FiloSottile/age/blob/main/README.md) — Шифровање примаоцем и дешифровање идентитетом. Променљива `main` страница проверена 19. октобра 2026; инертни пробни подаци нису тестирали стварно шифровање.
- [Приватност GitHub репозиторијума](https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories), [Прављење репозиторијума](https://docs.github.com/en/repositories/creating-and-managing-repositories/quickstart-for-repositories) и [GitHub CLI repo view](https://cli.github.com/manual/gh_repo_view) — Приватни приступ и повратна провера видљивости. Приступ и даље зависи од прегледаних сарадника и приступних података.
- [Git remote](https://git-scm.com/docs/git-remote) и [Git push](https://git-scm.com/docs/git-push) — Ефективна одредишта и послате референце; скрипта додаје сопствену проверу удаљене главе тачног извршавања.
- [GitHub смернице за велике датотеке](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github) и [Уклањање осетљивих података](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository) — Git ограничења величине и историје и зашто откривене приступне податке треба променити, а не само обрисати датотеку. Променљиви приручници проверени 19. октобра 2026.

## Sources

- [Hermes Agent CLI команде, фиксирани commit 86fa9e6](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/cli-commands.md) — Синтакса пуне копије, обухват корисничких података, изостављања и излазни статуси; фиксирани commit проверен 2026-10-19. Није тестирана стварна копија.
- [Hermes Agent честа питања, фиксирани commit 86fa9e6](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/reference/faq.md) — Увоз и подешавање нове машине; архива података, не слика апликације/извршног окружења. Враћање није тестирано.
- [Приручник Hermes заказаних задатака, фиксирани commit 86fa9e6](https://github.com/NousResearch/hermes-agent/blob/86fa9e6ca1de7ee71132d2be0103f3e37d1fa872/website/docs/user-guide/features/cron.md) — Скрипте без агента, прочишћено окружење, gateway, достављање и приоритет временских ограничења; инсталирани CLI није посматран.
- [age README](https://github.com/FiloSottile/age/blob/main/README.md) — Шифровање примаоцем и дешифровање идентитетом; променљиви main проверен 2026-10-19; инертни пробни подаци нису шифровали.
- [Приватност GitHub репозиторијума](https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories) — Граница приватног приступа и улога сарадника; променљиви приручник проверен 2026-10-19.
- [Прављење GitHub репозиторијума](https://docs.github.com/en/repositories/creating-and-managing-repositories/quickstart-for-repositories) — Подешавање приватног репозиторијума; променљиви приручник проверен 2026-10-19.
- [GitHub CLI repo view](https://cli.github.com/manual/gh_repo_view) — isPrivate повратна провера видљивости; проверено 2026-10-19.
- [Git remote](https://git-scm.com/docs/git-remote) — Понашање ефективних одредишта за преузимање/слање; променљиви Git приручник проверен 2026-10-19.
- [Git push](https://git-scm.com/docs/git-push) — Понашање слања изричите референце; променљиви приручник проверен 2026-10-19.
- [GitHub смернице за велике датотеке](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github) — Упозорење на 50 MiB, блокада обичне Git датотеке изнад 100 MiB и напомена да Git није замишљен за копије; променљиви приручник проверен 2026-10-19.
- [GitHub уклањање осетљивих података](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository) — Промена приступних података и ограничења уклањања историје; променљиви приручник проверен 2026-10-19.
