# Gitea + 1Password setup One-time steps to push to Gitea (http://10.0.10.205/) using your 1Password SSH key. ## One-time setup 1. **Create SSH config for Gitea** (from project root): ```bash ./scripts/setup-gitea-ssh.sh ``` This creates `~/.ssh/gitea-1password-only` so Git uses 1Password for `gitea@10.0.10.205`. 2. **Enable 1Password SSH agent** In 1Password: **Settings → Developer** → enable **Use the SSH agent**. 3. **Optional: sign commits with your SSH key** Add the following to your `~/.gitconfig` (and set `name` / `email` if not already set): ```ini [user] name = bert.hausmans email = bert@hausmans.nl signingkey = ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIw+E4aOsaDPBruF6PBjloZNaVS3jHVOTXTv9GN/LY5H [gpg] format = ssh [gpg "ssh"] program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign" [commit] gpgsign = true ``` Then every commit will be signed with your 1Password SSH key (1Password may prompt when signing). ## Pushing - **From Cursor**: Use the usual Push action. Git uses the repo’s `core.sshCommand`, which points at 1Password. - **From Terminal**: Run `./gitea-push.sh` or `git push` from the project root. **Terminal asking for a password instead of 1Password?** Re-run the setup so SSH uses the 1Password agent: `./scripts/setup-gitea-ssh.sh`, then try `./gitea-push.sh` again from Terminal.app. **1Password not popping up?** The approval dialog usually only appears when the request comes from **Terminal.app** or **iTerm**, not from Cursor’s integrated terminal. Run `./gitea-push.sh` from Terminal.app (or iTerm) so 1Password can show the prompt. **First push in a session:** 1Password may need to approve use of the SSH key once. If Cursor’s Push hangs or fails, run this in **Terminal.app** (so 1Password can show the approval dialog): ```bash export SSH_AUTH_SOCK="$HOME/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock" ssh -T gitea@10.0.10.205 ``` Approve in 1Password when asked, then push again from Cursor or `./gitea-push.sh`.