Alex’s Cloudflare account must enable Workers Paid before Containers can run. Terminal SSH passed on Nate’s Mac. Desktop reached SSH but its remote runtime initialization stalled; a successful Desktop task is not yet verified. This page is an instruction guide, not a live project dashboard.
1. Create your own accounts
- Create a free GitHub account, verify your email and enable two-factor authentication. Save recovery codes in your password manager.
- Give Nate your GitHub username. He invites that account to the private SailScan repository. Accept the invitation in GitHub notifications. You never need to share your password.
- Install Claude Desktop, sign into your own Claude account and open the Code tab. Your plan must include Claude Code.
- For remote Cloudflare access, sign into your own Cloudflare account and enroll your laptop’s public SSH key. Keep the private key on your laptop. Nate supplies the tested connection file after provisioning.
The accompanying alex-onboarding.sh wizard walks you through these steps. It saves only your GitHub username and commit email locally.
2. Connect from Desktop or Terminal
Claude Desktop
- Open Code.
- Open the environment dropdown → Add SSH connection.
- Name: SailScan Dev.
- SSH host: sailscan-dev, after installing the connection file.
- Choose project folder /workspace/boats.
Terminal
ssh sailscan-dev cd /workspace/boats claude
Both interfaces work on the remote files. Finish or checkpoint one task before starting another interface on the same branch.
For Nate’s current local test only: SSH host sailscan-dev-local. The dedicated SSH configuration is installed on Nate’s Mac and uses the isolated test key and Docker transport. This connection runs in Docker on Nate’s Mac; it does not prove Cloudflare connectivity.
3. Sign into GitHub inside the workspace
Run these once after connecting. GitHub gives you a device code and a browser address; sign into your own account there.
gh auth login --hostname github.com --git-protocol https --web gh auth setup-git git config --global user.name "Alex" git config --global user.email "YOUR_VERIFIED_GITHUB_EMAIL" git clone https://github.com/natemcguire/boats.git /workspace/boats cd /workspace/boats
Replace the email placeholder with your verified address or the noreply address from GitHub’s email settings. If the checkout already exists, skip cloning. “Repository not found” usually means the invitation has not been accepted or you signed into a different account.
4. Do one small task
cd /workspace/boats sail-task SAIL-178 onboarding-test claude
First prompt:
Create docs/alex-onboarding-check.md on this task branch. Write one sentence confirming which machine and branch you are using. Do not modify application behavior or deploy anything. Show me the diff, commit only that file, and open a draft PR for Nate.
Use a real task number for subsequent work. Claude can run tests and push your branch using your own GitHub login. A draft PR is a review request, not a release. Nate reviews and controls production deployment.
Opening a PR manually
git status git add docs/alex-onboarding-check.md git commit -m "docs: verify Alex workspace" git push -u origin HEAD gh pr create --draft --base master
Where each kind of work runs
| Work | Development and testing |
|---|---|
| Model experiments | Cloudflare coding workspace; separate GPU jobs when needed. Model Lab is planned, not live. |
| Scanner, labeler and backend | Linux workspace with explicit development API and data; private previews require setup. |
| iOS / Android source | Edit in the workspace and run JavaScript tests. |
| iOS builds / Xcode debugging | Nate’s Mac, GitHub macOS or Expo EAS for builds. Xcode and local iOS Simulator need a Mac. |
| Android builds | Linux or Expo EAS; no Mac required. |
| Camera, GPS and upload acceptance | Physical iPhone and Android phone. A browser preview is not device validation. |
Current repo caveat: the EAS preview profile uses production. Do not treat it as a staging test build until the profile is corrected.
Save before you leave
Cloudflare container files can disappear when a container stops. A Git push saves committed work; a workspace checkpoint must also save unfinished edits. Never paste secrets into source files.
Current limitation: cloud checkpoint/restore still needs a real deployment test. Automatic checkpoints and a safe pause button are not implemented. Do not use the cloud prototype as the only copy of important unfinished work.
After a restart, GitHub and Claude may require another login. Production deploy keys, customer database credentials, and Nate’s personal configuration do not belong in this workspace.