Lines starting with # are notes for the human. Ignore them.

# ── create-bsv-app starter prompt ──────────────────────────────────────
# Paste this into your AI coding assistant (Claude Code, Cursor, Codex,
# GitHub Copilot, Windsurf, Gemini CLI...) and send. It asks about your
# experience first, then adjusts its questions to match. No BSV knowledge needed.
# Already have an idea? Write it on the next line. Otherwise leave it blank.

Help me build an app on BSV using create-bsv-app. My idea (optional): [ ]

# Step 1: one question so the assistant knows how to talk to you.
## 1. Ask about my experience first
Ask only this, then wait for my answer:
"Before we start, have you shipped an app before?
  a) No, this is my first one
  b) Yes, web apps, but I'm new to BSV or blockchain
  c) Yes, including apps on BSV"

Match the rest of the session to my answer:
  a) Beginner: warm, plain language, no jargon, explain why each choice helps me.
     Never show code unless I ask.
  b) Developer new to BSV: normal dev terms are fine. Explain anything BSV-specific
     in one line (wallet, identity key, testnet, signed request).
  c) BSV developer: brief and technical, use the CLI's own terms, skip explanations.

# Step 2: a few questions about what you want. Reply in your own words,
# or say "you choose" and you'll get sensible defaults.
## 2. Ask what I need
Ask these in ONE message, as a numbered list with lettered options and your
recommendation marked. Tell me I can reply "you choose". Skip anything my idea
already answers. Phrase each one for my level:

  1. What do you want to make, and who is it for?
  2. Where will people use it?
     a) Plain: "on a website" or "other apps connect to it, no screens"
     b/c) Dev: frontend + API (recommended), frontend only, or API only
  3. Should people sign in?
     a) Plain: "with their wallet app: no passwords, no emails, no accounts to manage"
     b) Dev: wallet login instead of passwords; the server gets a verified identity key
     c) Dev: add wallet-login?
  4. Does it remember things or share them between people (posts, votes, orders)?
     a) Plain: "so only the real person can add or change their own things"
     b) Dev: signed requests, so each API call proves who sent it and can't be tampered with
     c) Dev: add signed-requests?
  5. Do you want to get paid (a price, tips, or pay per use)?
     a) Plain: "people pay you from their wallet, straight to you, with no payment
        company in between"
     b/c) Dev: accept a BSV payment that your server verifies and receives
  6. Only if my idea is close to polls, payments between people, a to-do list,
     a marketplace, a message board, a coin-flip game or locking coins: offer the
     matching example app as a starting point.
  For level c, also ask: package manager, network (main/test/ttn), and default glue
  (auto-wiring) or --no-glue.

# Step 3: you'll see the plan before anything happens.
## 3. Turn my answers into a setup (internal, don't show this mapping)
  - Website + remembers things or gets paid -> --starter full-stack
  - Website only -> react; no screens -> express
  - Sign in -> wallet-login; remembers things -> signed-requests (wallet-connect always)
  - Gets paid -> follow https://www.createbsvapp.com/docs/accept-payments.md after scaffolding
  - Example app -> its repository starter id from /docs/starters.md (ignores capability flags)
  - Existing project here (package.json) -> add mode; skip question 2
  - Package manager from the lockfile, otherwise npm. Network: testnet unless I chose otherwise.
Show the plan for my level:
  a) 3 to 5 plain bullets on what I'll get, plus "we use free test coins, so trying
     it costs nothing". Command underneath for reference.
  b) Short bullets with the stack and capabilities, plus the command.
  c) Just the command.
Then wait for my "go".

# Step 4: the assistant does the setup. Meanwhile, install the free BSV
# Browser wallet (https://browser.bsvb.tech/) so you can try your app.
## 4. Set it up and build it
- Unless I'm level c, remind me to install BSV Browser (https://browser.bsvb.tech/).
- Learn the tool from the docs, not memory. If the create-bsv-app-docs MCP server is
  connected, use it. Otherwise use https://www.createbsvapp.com/llms.txt and https://www.createbsvapp.com/docs/<page>.md.
- Always run the CLI with --yes; it hangs on prompts otherwise. Needs Node 22+.
  New:      npx create-bsv-app@latest <dir> --starter <id> --capabilities <list> --yes
  Existing: npx create-bsv-app@latest add --capabilities wallet-connect,<others> --yes
  Add --package-manager <pnpm|yarn|bun> if it isn't npm. If it exits with
  "Invalid config: ...", fix what the message says.
- Read the generated AGENTS.md before writing code; apply its "Wiring (manual)" section
  if present. Use its helpers (useWallet, useWalletLogin, signedFetch,
  verifySignedRequest). Never write your own key or crypto code. Leave src/bsv/ as generated.
- Build my idea: wallet identity for "who's who", signed requests for anything people
  save or change, and the accept-payments recipe for anything people pay for.

# Step 5: you get a link and simple steps to try it.
## 5. Check it works, then show me
Run the build and tests and fix failures (see https://www.createbsvapp.com/docs/troubleshooting.md). Start it
with `npm run dev`. Then, for my level:
  a) Explain in plain words what my app does, give 3 simple steps to try it at
     http://localhost:5173 with BSV Browser, and suggest 2 or 3 things to add next.
  b) Summarise what was built, the key files and helpers, and how to test it, then
     suggest next steps with links to the relevant /docs pages.
  c) List the changed files and the run command.
