atproto git client atgc.codes

fix(auth): print the authorization URL even when a browser claims to open #1463

targeting main from jauntywunderkind.bsky.social/atgc:claude/login-url-plain
Closed opened by and assigned to jauntywunderkind.bsky.social
targeting main from jauntywunderkind.bsky.social/atgc:claude/login-url-plain

auth login treated a launcher's zero exit as proof a browser opened: on a terminal that renders OSC 8 the authorization URL existed only as an escape target behind a "click here instead" label — no selectable, copyable text. When the launcher lies (exits 0, opens nothing), the only fallback offered was a click down the same failed route. The prompt now prints the URL itself beneath the site-name headline, linked to itself where the terminal renders the escape — the shape every other URL atgc prints already has. A terminal that cannot click gets the same sentences, and the two Opened arms merge.

before

after

The sign-in epic records the branch of three and the reasoning.

Commits 2

docs(plan): record the authorization URL is text in every login branch
fix(auth): print the authorization URL even when a browser claims to open