The code.emmathe.dev key is now loaded in the ssh-agent, so git push works with sandbox off and PRs are raised via the tea CLI. Correct the git-network-ops memory that said Gitea always needs hand-off; keep hand-off as the fallback only if the key drops from the agent.
2.1 KiB
name, description, metadata
| name | description | metadata | ||||||
|---|---|---|---|---|---|---|---|---|
| git-network-ops | Push/pull is remote-specific — both GitHub and Gitea (code.emmathe.dev) are agent-pushable in-sandbox (sandbox off); raise Gitea PRs with the tea CLI. |
|
Whether a network op can run depends on which key the remote needs:
GitHub remotes (e.g. csg-citrix-storefront/*): pushable in-sandbox by the agent. ssh-agent holds the decrypted ~/.ssh/id_ed25519 (emma.thorpe@cloud.com), which is authorized on GitHub. Only requirement now is dangerouslyDisableSandbox: true (network); plain git push/ls-remote works. Probe non-mutatively with git ls-remote first. (Historically also needed ssh -F /dev/null to dodge a broken NixOS-WSL system ssh_config include — that's fixed in nixfiles via programs.ssh.systemd-ssh-proxy.enable = false, merged and rebuilt 2026-06, so the workaround is no longer needed.)
Gitea (code.emmathe.dev, e.g. nixfiles): pushable in-sandbox by the agent (as of 2026-07-14). The ssh-agent now holds the code.emmathe.dev key (git@code.emmathe.dev), so git push works with dangerouslyDisableSandbox: true — it needs the agent socket plus ~/.ssh/known_hosts, both reachable with sandbox off. Probe with git ls-remote first. Raise PRs with the tea CLI, which is installed and logged in to code.emmathe.dev (user lyrathorpe): tea pr create --login code.emmathe.dev --repo lyrathorpe/nixfiles --base main --head <branch> --title "..." --description "...". Only fall back to hand-off if ssh-add -l (sandbox off) does NOT list the code.emmathe.dev key — then it dropped from the agent and Lyra must re-add it (ssh-add ~/.ssh/code.emmathe.dev, passphrase-protected).
Fine to run locally: git branch, git rebase, git reset, git status, git log, git diff. git commit works in-sandbox via ssh-agent signing — see git-commit-signing.
How to apply: Both remotes → do it with sandbox off; probe with git ls-remote first, and raise Gitea PRs via tea. Hand off only if the Gitea key is missing from the agent. Related: git-conventions.