Six steps. The first one is the one that bites if skipped. Everything runs in PowerShell on the Beelink.
powershell ~\claude-env\sync.ps1
This pulls down tonight's rules, memory and the corrected
/close command. Starting work without it means working from stale rules and pushing
them back over the good ones.
Right now several machines share one key, so the server cannot tell which machine did what. This gives the Beelink its own labelled identity. Press Enter at the passphrase prompt.
ssh-keygen -t ed25519 -C "beelink-cabin" -f $HOME\.ssh\id_ed25519_beelink
This uses the access the machine already has to add the new key alongside the old one. Nothing is removed, so there is no way to lock yourself out here.
$pub = Get-Content $HOME\.ssh\id_ed25519_beelink.pub ssh root@143.198.182.180 "echo '$pub' >> /root/.ssh/authorized_keys"
Add-Content $HOME\.ssh\config @" Host 143.198.182.180 User root IdentityFile ~/.ssh/id_ed25519_beelink IdentitiesOnly yes "@
The first command should print the server name. The second should show
beelink-cabin as the key that just logged in — that is the whole point, the
server can finally name the machine.
ssh root@143.198.182.180 "hostname" ssh root@143.198.182.180 "tail -3 /var/log/auth.log | grep Accepted"
If step 5 fails, nothing is broken — the old shared key still works. Remove the block added in step 4 and you are back where you started.
claude --resume 2196701d-5c4b-4a6e-8089-c0f39e56f65b
Then open the tabs you need — one for AME development, one for the Tuesday material. Same session, both people able to see it, from the machine or a phone.
The old key paulwalhus@wholetech is still doing the
automation — cron jobs, backups, deploys — and other machines still use it. It comes
out only once every machine that needs access has its own labelled key. Removing it now takes the
server offline for everything.
/opt/autoengine is under version control and commits itself every fifteen
minutes, so a collision costs a quarter of an hour and is visible.