audio streaming app plyr.fm
38
fork

Configure Feed

Select the types of activity you want to include in your feed.

docs: clarify staging vs production deploy workflow in CLAUDE.md (#875)

The deploy line was vague ("Automated via Actions") and didn't explain
that main → staging is automatic while production requires `just release`.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

authored by

nate nowack
Claude Opus 4.6
and committed by
GitHub
e046181c c411002d

+1 -1
+1 -1
AGENTS.md
··· 11 11 * **Workflow:** 12 12 * Use **GitHub Issues** (not Linear). 13 13 * **PRs:** Always create for review; never push to main directly. 14 - * **Deploy:** Automated via Actions (Backend: Fly.io, Frontend: Cloudflare Pages). Never deploy locally. 14 + * **Deploy:** Merging to `main` auto-deploys to **staging** (`stg.plyr.fm`). Production requires `just release` (see `docs/deployment/environments.md`). Never deploy locally. 15 15 * **ATProto NSIDs:** namespaces are environment-aware via settings (e.g., `fm.plyr.dev` (dev), `fm.plyr` (prod)). **Never** hardcode outside of scripts. these are fully-qualified hostname in Reverse Domain-Name Order, not urls. 16 16 * **Auth Security:** Session IDs live in HttpOnly cookies. **Never** touch `localStorage` for auth. 17 17 * **Async Everywhere:** Never block the event loop. Use `anyio`/`aiofiles`.