diff --git a/AGENTS.md b/AGENTS.md index c465b82..fe12069 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -61,7 +61,24 @@ re-brand of opencode-devbox's `pi-only` variant. 6. Verify the Hub tags appear (latest + vX.Y.Z, the `-studio` pair, plus base-latest if the base was rebuilt this run). 7. **Revoke any short-lived Gitea PAT** used during the release at - `gitea.jordbo.se/user/settings/applications`. + `gitea.jordbo.se/user/settings/applications`. N/A if you used the + `GITEA_ACCESS_TOKEN` env var instead (see *Gitea API access* below) — + its lifecycle is managed host-side, nothing to revoke. + +## Gitea API access (env token) + +`GITEA_ACCESS_TOKEN` + `GITEA_HOST` are passed into the container from the +host `.env` via `docker-compose.yml` (`${GITEA_ACCESS_TOKEN:-}` / +`${GITEA_HOST:-}`), primarily to enable the `gitea-mcp` server. They are +**not** baked into the image. When configured, they are also available for +**any** direct Gitea API interaction from inside the container — inspecting +CI runs, checking published tags, listing commits — e.g. +`curl -H "Authorization: token $GITEA_ACCESS_TOKEN" "$GITEA_HOST/api/v1/repos/joakimp/pi-devbox/actions/runs?limit=5"`. +Prefer this over a short-lived PAT file when the env token is present (the +`ci-release-watcher` skill auto-detects it). Public-repo GET listings work +unauthenticated too, so the token matters mainly for private repos or +rate-limit headroom; its lifecycle is host-managed, so there is nothing to +revoke after use. Never echo the token value (including into logs). ## Cache-hit footgun (must-know)