← ClaudeAtlas

first-run-setuplisted

Use at session start when config-doctor reports the project is not build/deploy-ready, or when the user asks to set up the project - interviews the user, gets EAS logged in / project linked / iOS credentials provisioned and a real bundle id, offers optional payments/auth/API config, and records decisions so the session-start nudge goes quiet
ryan75195/dotnet-agent-harness · ★ 2 · Data & Documents · score 66
Install: claude install-skill ryan75195/dotnet-agent-harness
# First-run setup (EAS build/deploy readiness + optional features) Run this when the SessionStart config check nudges you, or when the user asks to "set up the project" / "make it build-ready". Goal: clear every critical item so `eas build` / `eas submit` run without hitting a setup wall, then record optional-feature decisions. ## Read current state first Run `node scripts/config-doctor.js` and read its report. Work only the items it flags. Re-run it at the end - success is when it prints nothing. ## Tier 1 - critical (do these first, in order) 1. **EAS login.** Run `eas whoami`. If not logged in, ask the user to run `! eas login`, then re-run `eas whoami` to confirm. 2. **EAS project link.** If `app.config.js` has no `extra.eas.projectId`, run `eas init` (or ask the user to run `! eas init` if it needs interactive auth). Because this template uses a dynamic `app.config.js`, `eas init` may print the project id rather than writing it - if so, set `extra.eas.projectId` in `app.config.js` by hand to the id it prints. Commit the `app.config.js` change through the CLAUDE.md dev lifecycle (issue -> feat branch -> PR), never directly on main. 3. **Production bundle identifier.** If the bundle id still contains `com.example.`, ask the user for their real reverse-DNS id (e.g. `com.acme.myapp`) and set it in `app.config.js`. Both the production and `.dev` values derive from the same string in the template. Commit via the lifecycle. 4. **iOS credent