pre no longer builds a bare serve.git mirror, moves refs or sets allowAnySHA1InWant. The repo-local insteadOf now rewrites the official URLs directly to --source, so updates follow the fork's main (force-push it to the branch under test). post still undoes the redirect via the clone/snapshot restore. --ref is removed: neither hermes update nor the tester's pre-branch desktop can follow another branch through config the kit could set without the mirror. pre now ls-remotes --source's main before writing anything, so a bad source aborts with nothing done. The stale global-redirect cleanup is dropped: it only matched serve.git paths.
80 lines
3.5 KiB
Markdown
80 lines
3.5 KiB
Markdown
# testing the bundles branch against your normal hermes install
|
|
|
|
instructions:
|
|
|
|
1. close hermes, the gateway, etc. make sure you have no running hermes processes.
|
|
|
|
2. apply my updater override:
|
|
macos/linux:
|
|
```bash
|
|
REPO_ID="NousResearch/hermes-agent"
|
|
SHA=$(curl -fsSL -H "User-Agent: hermes-installer" "https://api.github.com/repos/$REPO_ID/commits/main" | grep -m1 '"sha"' | cut -d'"' -f4)
|
|
if [[ ! "$SHA" =~ ^[0-9a-f]{40}$ ]]; then echo "Failed to resolve commit SHA" >&2; exit 1; fi
|
|
curl -fsSL "https://raw.githubusercontent.com/$REPO_ID/$SHA/scripts/update-test/hermes-update-rehearsal.sh" | bash -s -- pre
|
|
```
|
|
|
|
windows (open PowerShell with **Run as Administrator** — the backup takes a disk snapshot, which needs admin):
|
|
```powershell
|
|
$repo_id = "NousResearch/hermes-agent"
|
|
$sha = (irm "https://api.github.com/repos/$repo_id/commits/main" -Headers @{ "User-Agent" = "ps-installer" }).sha
|
|
$scriptUrl = "https://raw.githubusercontent.com/$repo_id/$sha/scripts/update-test/hermes-update-rehearsal.ps1"
|
|
& ([scriptblock]::Create((irm $scriptUrl))) pre
|
|
```
|
|
|
|
this backs up your entire hermes home and any desktop app settings, then points your install's updates at the test fork's `main` (no local mirror: `hermes update` fetches straight from the fork, so it needs network). _from this point on, nothing you do in hermes will be preserved, until you restore your backup at the end._
|
|
|
|
3. boot hermes up to ensure everything is working, still. if you normally have a background service, gateway, etc, make sure it's running.
|
|
|
|
4. update hermes like you normally do.
|
|
|
|
5. test hermes. make sure nothing breaks, everything you use still works, etc.
|
|
|
|
6. close hermes, the gateway, etc. make sure you have no running hermes processes.
|
|
|
|
7. restore your backup:
|
|
|
|
macos/linux:
|
|
```bash
|
|
REPO_ID="NousResearch/hermes-agent"
|
|
SHA=$(curl -fsSL -H "User-Agent: hermes-installer" "https://api.github.com/repos/$REPO_ID/commits/main" | grep -m1 '"sha"' | cut -d'"' -f4)
|
|
if [[ ! "$SHA" =~ ^[0-9a-f]{40}$ ]]; then echo "Failed to resolve commit SHA" >&2; exit 1; fi
|
|
curl -fsSL "https://raw.githubusercontent.com/$REPO_ID/$SHA/scripts/update-test/hermes-update-rehearsal.sh" | bash -s -- post --yes
|
|
```
|
|
|
|
windows (again as **Administrator**):
|
|
```powershell
|
|
$repo_id = "NousResearch/hermes-agent"
|
|
$sha = (irm "https://api.github.com/repos/$repo_id/commits/main" -Headers @{ "User-Agent" = "ps-installer" }).sha
|
|
$scriptUrl = "https://raw.githubusercontent.com/$repo_id/$sha/scripts/update-test/hermes-update-rehearsal.ps1"
|
|
& ([scriptblock]::Create((irm $scriptUrl))) post -Yes
|
|
```
|
|
|
|
this puts hermes back to exactly how it was beforehand.
|
|
|
|
# testing the bundles branch from a fresh install
|
|
|
|
macos/linux, in a terminal
|
|
|
|
```bash
|
|
REPO_ID="NousResearch/hermes-agent"
|
|
|
|
SHA=$(curl -fsSL -H "User-Agent: hermes-installer" "https://api.github.com/repos/$REPO_ID/commits/main" | grep -m1 '"sha"' | cut -d'"' -f4)
|
|
|
|
if [[ ! "$SHA" =~ ^[0-9a-f]{40}$ ]]; then
|
|
echo "Failed to resolve commit SHA for $REPO_ID" >&2
|
|
exit 1
|
|
fi
|
|
|
|
curl -fsSL "https://raw.githubusercontent.com/$REPO_ID/$SHA/scripts/install.sh" | HERMES_REPO_URL="https://github.com/$REPO_ID.git" bash
|
|
```
|
|
|
|
windows, in powershell
|
|
|
|
```powershell
|
|
$repo_id = "NousResearch/hermes-agent"
|
|
$sha = (irm "https://api.github.com/repos/$repo_id/commits/main" -Headers @{ "User-Agent" = "ps-installer" }).sha
|
|
$scriptUrl = "https://raw.githubusercontent.com/$repo_id/$sha/scripts/install.ps1"
|
|
$env:HERMES_REPO_URL = "https://github.com/$repo_id.git"
|
|
& ([scriptblock]::Create((irm $scriptUrl)))
|
|
```
|