Sections
Step 000Join the beta
Step-by-step field guide

How to build
complex software
with AI

A practical walkthrough of the decisions, setup, testing, and operational work behind a serious AI-assisted software product—based on documented experience.

Start reading

By David McMasters. I’m not a developer. Over the past few months I built a complex software product with AI and kept a list of everything it took. The list got long.

Some steps are things I ran into; others are decisions and requirements I researched along the way. Not every project needs every step. Use the ones that fit yours.

CHAPTER 01

Define what you're actually building

  1. 001Start with a rough idea rather than a usable engineering specification.Encountered / reported
  2. 002Decide whether the intended outcome is a business, internal tool, client project, personal utility, or experiment.Documented decision / task
  3. 003Identify who benefits from the product and who actually pays for it.Documented decision / task
  4. 004Write down what a successful first version must accomplish.Documented decision / task
  5. 005Separate the founder's vision from the implementation the AI happens to suggest.Documented decision / task
  6. 006Explain the same product thesis to ChatGPT, Claude, Codex, and separate agents.Encountered / reported
  7. 007Decide what belongs in the first usable slice.Documented decision / task
  8. 008Determine what can be deferred without losing the central promise.Documented decision / task
  9. 009Change direction when new evidence reveals a wrong first approach.Encountered / reported
  10. 010Record rejected directions so the next AI doesn't revive them.Documented decision / task
  11. 011Decide how much founder involvement is wanted versus what can be delegated.Documented decision / task
  12. 012Identify nonnegotiable customer ownership and spending limits.Documented decision / task
  13. 013Identify available time, budget, risk tolerance, and launch urgency.Documented decision / task
  14. 014Decide which actions need founder approval versus an automated safe default.Documented decision / task
  15. 015Define evidence that something is actually finished.Documented decision / task
  16. 016Distinguish a functioning demo from a durable real-world result.Documented decision / task
  17. 017Re-explain why generating more code was not necessarily progress.Encountered / reported
  18. 018Establish an explicit finish line before opening another task lane.Documented decision / task
CHAPTER 02

Find a real problem and a reason to exist

  1. 019Research the actual pain of building ambitious products with AI.Encountered / reported
  2. 020Identify the buyer, everyday user, and alternatives they already know.Documented decision / task
  3. 021Study Lovable, Replit, Base44, Cursor, Claude, Codex, and emerging competitors.Encountered / reported
  4. 022Separate a competitor's advertised capability from a proved customer outcome.Documented decision / task
  5. 023Build a competitor matrix without assuming everyone else lacks planning or testing.Documented decision / task
  6. 024Compare your idea with existing tools, including the project tools you already use.My real build: agent managers and Linear.Encountered / reported
  7. 025Ask which parts of the existing product idea could be solved by buying or integrating something else.Documented decision / task
  8. 026Decide when founders need an initial prototype and when they need to graduate an existing one.Documented decision / task
  9. 027Clarify why BYOA is more than an extra connector.Encountered / reported
  10. 028Define the smallest compelling differentiating experience.Documented decision / task
  11. 029Rework the pitch after it sounded like a generic orchestration product.Encountered / reported
  12. 030Research which founder segments experience the pain most acutely.Documented decision / task
  13. 031Test whether the pain is actually worth paying to remove.Documented decision / task
  14. 032Separate technical success from customer adoption and business value.Documented decision / task
  15. 033Decide whether a feature advances the founder's actual goal.Documented decision / task
  16. 034Seek candid feedback from potential design partners rather than assuming the idea sells itself.Encountered / reported
  17. 035Compare market evidence, founder reports, provider claims, and AI-generated inference.Documented decision / task
  18. 036Reevaluate the project thesis as stronger builders acquire yesterday's differentiators.Documented decision / task
A BRIEF INTERRUPTION

Still reading?

It doesn’t have a name yet. The code is a long way off.
CHAPTER 03

Name the thing. Then name it again.

  1. 037Start with an internal code name so naming doesn’t block the work.My real build: Relay.Encountered / reported
  2. 038Explore alternatives that don't sound like generic AI-product jargon.Encountered / reported
  3. 039Reject names that feel clichéd, confusing, or too close to existing brands.Encountered / reported
  4. 040Explore the connection between praxis, judgment, and purposeful action.Encountered / reported
  5. 041Shortlist a distinctive public-facing name.My real build: Praxeri.Encountered / reported
  6. 042Check the availability of the exact-match .com domain.Encountered / reported
Show the other 15 naming stepsIncluding the trademark search. Especially the trademark search.
  1. 043Check domain purchase terms and renewal economics.Encountered / reported
  2. 044Buy the exact-match domain and keep the registration records.Encountered / reported
  3. 045Screen similar-sounding business names and adjacent software brands.Documented decision / task
  4. 046Search trademark databases and likely conflict classes.Documented decision / task
  5. 047Flag potential confusion rather than declaring a trademark legally cleared.Documented decision / task
  6. 048Decide if specialist trademark counsel is needed before broader commercialization.Documented decision / task
  7. 049Determine whether the operating company needs a DBA or assumed-name filing.Documented decision / task
  8. 050Move documentation and customer copy to the public name.My real build: Relay became Praxeri.Encountered / reported
  9. 051Keep old code names inside the code if renaming is risky, but never in front of customers.Encountered / reported
  10. 052Update account, domain, application, and provider identity consistently.Documented decision / task
  11. 053Decide what the brand name means in plain English.Documented decision / task
  12. 054Define a voice that can be funny without mocking founders.Documented decision / task
  13. 055Test multiple headline directions rather than assuming a clever slogan explains the product.Encountered / reported
  14. 056Screen public claims so the brand doesn't promise things still on the roadmap.Documented decision / task
  15. 057Keep a record of approved, rejected, and superseded positioning.Documented decision / task
CHAPTER 04

Congratulations, now you're a company

  1. 058Choose the legal entity that will run your beta.Encountered / reported
  2. 059Resolve personal funding versus company ownership of product assets.Documented decision / task
  3. 060Clarify member and intellectual-property ownership arrangements.Documented decision / task
  4. 061Document rights to code, domain, design, and contractor-created work.Documented decision / task
  5. 062Decide when a separate new company becomes appropriate.Documented decision / task
  6. 063Check entity name, registered details, and public legal contact.Documented decision / task
Show the other 16 company and legal stepsYour lawyer will want to read these.
  1. 064Determine whether an assumed-name registration is necessary.Documented decision / task
  2. 065Separate business and personal finances, contracts, and records.Documented decision / task
  3. 066Decide who is authorized to sign beta and provider agreements.Documented decision / task
  4. 067Prepare founder IP assignment or licensing documents where necessary.Documented decision / task
  5. 068Check legal risks of using third-party code and external model services.Documented decision / task
  6. 069Prepare beta participation terms appropriate to actual supported functionality.Documented decision / task
  7. 070Explain acceptable use and what the product refuses to do.Documented decision / task
  8. 071Define confidentiality expectations for early customers.Documented decision / task
  9. 072Explain how beta access can end and what happens to data.Documented decision / task
  10. 073Choose realistic warranties, limitations, and liability boundaries for counsel review.Documented decision / task
  11. 074Review technology errors-and-omissions and cyber insurance needs.Documented decision / task
  12. 075Set a support and vulnerability-reporting contact.Documented decision / task
  13. 076Determine regulated-data or high-risk uses the early cohort should not support.Documented decision / task
  14. 077Document what happens if a user's data or source is lost.Documented decision / task
  15. 078Have qualified counsel review binding terms before relying on them.Documented decision / task
  16. 079Keep legal language aligned with what the live application actually does.Documented decision / task
CHAPTER 05

Write the privacy policy nobody knew you needed

  1. 080Discover that connecting an AI to a project also creates a data-handling product.Encountered / reported
  2. 081Inventory every category of information the application collects.Documented decision / task
  3. 082Account for prompts, responses, conversation history, files, and repository snippets.Documented decision / task
  4. 083Account for the project’s saved decisions, archived assumptions, and uploaded documents.Documented decision / task
  5. 084Account for OAuth authorization details and connection identifiers.Documented decision / task
  6. 085Account for error logs, diagnostic traces, model usage, and QA screenshots.Documented decision / task
Show the other 19 privacy stepsYes, there are that many.
  1. 086Inventory session cookies, browser storage, and analytics trackers.Documented decision / task
  2. 087Determine which tracking is necessary for a small private beta.Documented decision / task
  3. 088Define what each outside service receives and why.Documented decision / task
  4. 089Maintain a current processor and subprocessor inventory.Documented decision / task
  5. 090Separate product-usage analytics from marketing tracking.Documented decision / task
  6. 091Decide whether a consent banner is actually required for relevant jurisdictions and trackers.Documented decision / task
  7. 092Explain where data is processed and which user-directed providers receive it.Documented decision / task
  8. 093Define what is retained during a project and what is deleted afterward.Documented decision / task
  9. 094Specify backup retention and the limits of immediate deletion.Documented decision / task
  10. 095Design export and account-deletion request paths.Documented decision / task
  11. 096Document customer privacy contact and applicable request procedures.Documented decision / task
  12. 097Disclose model-provider training and retention behavior without guessing.Documented decision / task
  13. 098Avoid sending a customer's proprietary project to other customers' model contexts.Documented decision / task
  14. 099Decide which learning signals can be derived without retaining confidential raw content.Documented decision / task
  15. 100Version privacy policies when a new real provider or data flow goes live.Documented decision / task
  16. 101Correct privacy language when it described an older local setup instead of the cloud runtime.Encountered / reported
  17. 102Review provider-specific legal requirements before customer-facing integrations.Documented decision / task
  18. 103Audit the application against the privacy policy rather than trusting the draft.Documented decision / task
  19. 104Make sure public marketing claims don't imply nonexistent privacy certification.Documented decision / task
SESSION RESET 1 / 2

Wait. What are we building again?

Context window full. Starting fresh…

001Tell me a little about your idea.
002Is it a business or personal project?
003Have you picked a name?
FOUNDER: We did all of that. We are on step 105.
AI: Oh. I found the handoff. Right. Step 105. Carry on.
CHAPTER 06

Secrets, permissions, and the things you really shouldn't paste

  1. 105Learn the difference between a successful login and sufficient project permissions.Encountered / reported
  2. 106Diagnose missing GitHub App permissions and account selection.Encountered / reported
  3. 107Encounter permission problems only after attempting a repository move.Encountered / reported
  4. 108Determine the minimum scopes required for each tool and operation.Documented decision / task
  5. 109Separate personal accounts, organizations, workspaces, projects, and repositories.Documented decision / task
  6. 110Handle OAuth authorization and callback redirect configuration.Documented decision / task
  7. 111Deal with different visible states for connected versus verified services.Encountered / reported
  8. 112Store tokens in appropriate secret management, not plain prompts.Documented decision / task
  9. 113Keep secrets out of worker context, browser JavaScript, and logs.Documented decision / task
  10. 114Avoid placing API keys in ordinary chat or Git commits.Documented decision / task
  11. 115Decide whether a provider key is for one project, one environment, or an entire organization.Documented decision / task
  12. 116Use separate development, staging, and production credentials where justified.Documented decision / task
  13. 117Confirm the account that owns each resource before making changes.Documented decision / task
  14. 118Test token expiry, revocation, reconnect, and refresh failures.Documented decision / task
  15. 119Verify least-privilege access after every expanded App permission request.Documented decision / task
  16. 120Control what third-party tools can see about a private project.Documented decision / task
  17. 121Document when consent is required before sharing source or strategy externally.Documented decision / task
  18. 122Avoid reusing a founder's personal browser profile in cloud tests.Documented decision / task
  19. 123Prove another founder cannot read the current founder's data.Documented decision / task
  20. 124Prove an agent cannot approve its own sensitive tool access.Documented decision / task
  21. 125Decide who can publish, delete, buy, transfer, or change production settings.Documented decision / task
  22. 126Test secret redaction at every known output and evidence boundary.Documented decision / task
  23. 127Retest privacy assumptions after changing the execution architecture.Encountered / reported
  24. 128Prepare an incident-response plan for leaks, bad permissions, or tenant crossover.Documented decision / task
CHAPTER 07

Choose your AI. Then learn how it bills you.

  1. 129Start building heavily with Claude and evaluate Codex for independent tasks.Encountered / reported
  2. 130Compare coding-agent subscriptions with metered provider APIs.Encountered / reported
  3. 131Discover that an AI subscription is not the same as API usage.Encountered / reported
  4. 132Check which subscription-based integrations are actually authorized for commercial use.Documented decision / task
  5. 133Investigate why usage quotas suddenly disappear faster than expected.Encountered / reported
  6. 134Measure huge cache-read and cache-write token volumes, not just visible output.Encountered / reported
  7. 135Discover a long-lived Claude session had grown beyond 750K context tokens.Encountered / reported
  8. 136Discover the cost of multi-agent and helper loops multiplying context processing.Encountered / reported
  9. 137Determine which provider and model should handle each task type.Documented decision / task
  10. 138Reserve higher-cost inference for work where stronger reasoning helps.Documented decision / task
  11. 139Test whether cheap models are adequate for summaries, triage, or other bounded tasks.Documented decision / task
  12. 140Compare open-weight models without assuming cheap inference is free infrastructure.Documented decision / task
  13. 141Keep API billing, subscription allowances, and cloud-sandbox costs separate.Documented decision / task
  14. 142Prevent a fallback from silently switching a user to a different billing method.Documented decision / task
  15. 143Estimate costs before authorizing metered tasks.Documented decision / task
  16. 144Set monthly, daily, and per-run spend limits.Documented decision / task
  17. 145Check a provider's limits and actual reset windows before scheduling work.Documented decision / task
  18. 146Keep sufficient allowance for likely repairs and independent checks.Documented decision / task
  19. 147Track total cost per accepted task, not cost per agent response.Documented decision / task
  20. 148Decide when not to run a model at all because a script can do the job.Documented decision / task
  21. 149Move more execution to Codex and realize reduced Claude usage alone doesn't prove savings.Encountered / reported
CHAPTER 08

Set up the actual development environment

  1. 150Work across local and hosted execution environments—and find out why those behave differently.Encountered / reported
  2. 151Determine what runs on the user's laptop versus the cloud.Documented decision / task
  3. 152Test local worker connectivity and native provider authentication.Encountered / reported
  4. 153Investigate Windows-specific command and tool failure behavior.Encountered / reported
  5. 154Determine whether Git, Python, Node, npm, Docker, or WSL is truly required.Documented decision / task
  6. 155Avoid requiring beginners to install an entire developer toolchain by default.Documented decision / task
  7. 156Develop a desktop helper and discover that signed installers, safe updates, and setup support are separate jobs.Encountered / reported
  8. 157Diagnose a working Helper update hidden behind the wrong UI control.Encountered / reported
  9. 158Encounter local Helper/desktop paths that distracted from cloud beta delivery.Encountered / reported
  10. 159Decide to park the desktop Helper for the initial cloud-only beta.Encountered / reported
  11. 160Prove a clean first-use environment without relying on the developer's machine.Documented decision / task
  12. 161Distinguish local model subscription access from provider-authorized hosted access.Documented decision / task
  13. 162Test file permissions and selected-folder access rather than trusting folder labels.Documented decision / task
  14. 163Determine which environment variables change the active billing route.Documented decision / task
  15. 164Document supportable OS/browser/platform combinations.Documented decision / task
  16. 165Use a clean VM or supported isolated environment for novice-install proof when needed.Documented decision / task
  17. 166Diagnose missing runtime dependencies without telling users to bypass OS protections.Documented decision / task
  18. 167Make installations and upgrades recoverable and reversible.Documented decision / task
  19. 168Build a genuine cloud path that does not require keeping the founder's laptop on.Documented decision / task
A BRIEF INTERRUPTION

Wait. You thought that was the setup?

We haven't connected all the accounts.
CHAPTER 09

Connect all those services. In the right account.

  1. 169Set up and reconfigure GitHub Apps and authorizations.Encountered / reported
  2. 170Connect and troubleshoot Claude authentication and API-key alternatives.Encountered / reported
  3. 171Connect and test Notion workspaces and page access.Encountered / reported
  4. 172Find that an authorized Notion workspace didn't expose the desired project page.Encountered / reported
  5. 173Handle the difference between discovering a resource and actually being able to edit it.Encountered / reported
  6. 174Investigate Notion reconnect and add-page permission problems.Encountered / reported
Show the other 21 account-connection stepsEach one in the right account. Ideally.
  1. 175Connect or test Vercel authorization, project selection, and domain configuration.Encountered / reported
  2. 176Work through separate cloud-compute and application-hosting credentials without mixing their permissions.Encountered / reported
  3. 177Set up or investigate Railway application runtime configuration.Encountered / reported
  4. 178Encounter Railway build and service-start failures.Encountered / reported
  5. 179Use Neon and revisit compute limits and production-readiness assumptions.Encountered / reported
  6. 180Explore Supabase authorization and insufficient-scope errors.Encountered / reported
  7. 181Connect Resend for product mail and distinguish it from app-specific customer email.Encountered / reported
  8. 182Determine whether a connector is read-only, read/write, or able to provision resources.Documented decision / task
  9. 183Define Create, Configure, Bind, Verify, Operate, and Remove as different stages.Documented decision / task
  10. 184Verify exactly which GitHub repository a connector is permitted to touch.Documented decision / task
  11. 185Verify which Vercel team and project an account actually authorizes.Documented decision / task
  12. 186Verify which Notion parent page is shareable and writable.Documented decision / task
  13. 187Verify Supabase project identity, database authority, and row-level security constraints.Documented decision / task
  14. 188Decide whether OAuth, API, MCP, or guided manual setup best fits each provider.Documented decision / task
  15. 189Inspect callback URLs and redirect allowlists after domain changes.Documented decision / task
  16. 190Avoid asking users to create resources in the wrong organization.Documented decision / task
  17. 191Test disconnect, revoke, and reauthorize without losing project state.Documented decision / task
  18. 192Keep resource IDs bound to the correct project across reconnects.Documented decision / task
  19. 193Distinguish connected, provisioned, configured, bound, verified, and operable.Documented decision / task
  20. 194Revisit connector decisions that an agent had incorrectly reduced to read-only.Encountered / reported
  21. 195Avoid duplicating services already supplied by a founder's chosen builder.Documented decision / task
CHAPTER 10

Get your product out of 14 chat windows

  1. 196Develop important product decisions in ChatGPT conversations.Encountered / reported
  2. 197Carry those decisions into Claude prompts for implementation.Encountered / reported
  3. 198Pass Claude's build findings back for independent analysis.Encountered / reported
  4. 199Paste review findings back into the build conversation.Encountered / reported
  5. 200Repeat the loop when a reviewer finds another issue.Encountered / reported
  6. 201Keep Notion pages to stop decisions disappearing into old chats.Encountered / reported
  7. 202Correct Notion pages when new decisions supersede older ones.Encountered / reported
  8. 203Review long handoff packets and rewrite instructions when they omit a constraint.Encountered / reported
  9. 204Ask one AI to search earlier conversations before handing work to another.Encountered / reported
  10. 205Discover that chat history doesn't equal reliable project memory.Encountered / reported
  11. 206Use structured context packets to avoid repeating the entire founder story.Encountered / reported
  12. 207Explain that a previously rejected architecture is still rejected.Encountered / reported
  13. 208Explain which current codebase and deployment an agent must inspect.Encountered / reported
  14. 209Tell a new agent not to trust a previous agent's completion claim.Encountered / reported
  15. 210Carry the correct release versions, task identities, review notes, and approvals across handoffs.Encountered / reported
  16. 211Mark facts as founder-stated, independently observed, inferred, or unknown.Documented decision / task
  17. 212Preserve source/date and confidence for consequential project decisions.Documented decision / task
  18. 213Separate historical raw conversations from authoritative current project state.Documented decision / task
  19. 214Select only task-relevant information for the next builder.Documented decision / task
  20. 215Check whether a memory entry became stale after actual code changed.Documented decision / task
  21. 216Design a fresh-session handoff that doesn't require the founder to write a novel.Documented decision / task
  22. 217Find that a long checkpoint page forced readers to wade through historical clutter.Encountered / reported
  23. 218Audit instruction files whose account of the project conflicts with the actual code.Encountered / reported
  24. 219Keep a record of every accepted founder correction so it isn't asked again.Documented decision / task
CHAPTER 11

Build an actual Project Brain

  1. 220Document goals, scope, priorities, rejected options, and current dependencies.Encountered / reported
  2. 221Try maintaining durable project decisions in a dedicated project-memory system rather than hoping chat remembers everything.Encountered / reported
  3. 222Give those decisions a structured history so changes can be tracked and corrected.Encountered / reported
  4. 223Decide what the Project Brain is authoritative about—and what the code is authoritative about.Documented decision / task
  5. 224Distinguish active, superseded, disputed, archived, and unknown facts.Documented decision / task
  6. 225Preserve evidence for why a requirement changed.Documented decision / task
  7. 226Track source project identities across builders and GitHub migration.Documented decision / task
  8. 227Check that imported research isn't silently promoted into verified truth.Documented decision / task
  9. 228Correct a case where a founder's own statement had been treated as independently observed evidence.Encountered / reported
  10. 229Decide when a worker must ask for more context rather than invent an answer.Documented decision / task
  11. 230Test context continuity across browser refresh, chat threads, and model handoffs.Documented decision / task
  12. 231Verify that all unfinished obligations survive a new session.Documented decision / task
  13. 232Keep provider-specific implementation details out of universal founder memory.Documented decision / task
  14. 233Create small task-sized context packets instead of sending the full Project Brain.Documented decision / task
  15. 234Resolve contradictions before authorizing consequential execution.Documented decision / task
  16. 235Protect private project context from cross-workspace disclosure.Documented decision / task
  17. 236Retain history without forcing each new model to reread everything.Documented decision / task
  18. 237Give founders a readable view of what the system believes about their project.Documented decision / task
CHAPTER 12

Build the system that learns whether any of this helped

  1. 238Try building a separate evidence system to learn whether AI-assisted work actually helped.Encountered / reported
  2. 239Reconstruct past execution events from code history, AI sessions, and review records.Encountered / reported
  3. 240Distinguish actual timestamps from reconstructed or uncertain ones.Encountered / reported
  4. 241Connect recommendations to later decisions and accepted outcomes.Documented decision / task
  5. 242Track which model, agent, role, and reviewer actually did the work.Documented decision / task
  6. 243Record retries, repair rounds, failed gates, and founder interventions.Documented decision / task
  7. 244Distinguish useful failures found from duplicated scanner noise.Documented decision / task
  8. 245Measure cost per founder-accepted task rather than passed run.Documented decision / task
  9. 246Record what was tested and what remained unverified.Documented decision / task
  10. 247Learn when an extra specialist improves the outcome versus wastes money.Documented decision / task
  11. 248Prevent one customer's proprietary code from becoming another customer's model context.Documented decision / task
  12. 249Document which model predictions were contradicted by actual runtime behavior.Documented decision / task
  13. 250Use outcome evidence to improve future decisions without letting an AI silently rewrite important policy.Documented decision / task
  14. 251Decide when a practice should be versioned, superseded, or retired.Documented decision / task
  15. 252Separate observed prevention from made-up estimates of hypothetical savings.Documented decision / task
  16. 253Build a truthful operator view of learning, cost, and quality.Documented decision / task
  17. 254Accept that a system can collect lots of events and still lack outcome linkage.Documented decision / task
A BRIEF INTERRUPTION

Copy. Paste. Correct. Repeat.

Somewhere your last accepted decision is living in the wrong chat window.
CHAPTER 13

Hire yourself an AI team. Then become its manager.

  1. 255Decide when one Claude session is enough.Encountered / reported
  2. 256Experiment with Claude subagents and helper tasks.Encountered / reported
  3. 257Experiment with concurrent work and many-agent review sessions.Encountered / reported
  4. 258Find that more agents can generate more coordination and usage than useful progress.Encountered / reported
  5. 259Define bounded roles for planning, building, security, UX, and independent review.Documented decision / task
  6. 260Choose which roles genuinely need different models or providers.Documented decision / task
  7. 261Decide when parallel tasks are safe and when they share a dangerous file.Documented decision / task
  8. 262Assign a single implementation owner for a touched code area.Documented decision / task
  9. 263Create independent reviewer roles without letting them overwrite the builder's work.Documented decision / task
  10. 264Set agent permissions for source, filesystem, shell, network, and credentials.Documented decision / task
  11. 265Limit agent runtime, context, tool calls, retries, and spending.Documented decision / task
  12. 266Prevent agents from reviving abandoned tasks because they saw stale plans.Documented decision / task
  13. 267Prevent two agents from changing the same shared state without coordination.Documented decision / task
  14. 268Deal with agent passbacks that required additional prompts and clarification.Encountered / reported
  15. 269Retest a repair after a different agent's review contradicted the first one.Encountered / reported
  16. 270Record exact changes and evidence from every worker, not just a confident summary.Documented decision / task
  17. 271Retire temporary agents and clean their branches when work is complete.Documented decision / task
  18. 272Detect when repeated repairs mean the approach is wrong, not just the code.Documented decision / task
  19. 273Stop expensive browser and multi-agent loops when they became unproductive.Encountered / reported
  20. 274Define an inexpensive single-builder path for ordinary low-risk changes.Documented decision / task
  21. 275Keep founder attention focused on approvals, not agent staffing decisions.Documented decision / task
CHAPTER 14

Manage the project management process too

  1. 276Build and repeatedly refine a project roadmap and milestone structure.Encountered / reported
  2. 277Create task lanes and independent review gates.Encountered / reported
  3. 278Reconcile duplicate and superseded checklists.Encountered / reported
  4. 279Discover that a huge master checklist can itself become a navigation problem.Encountered / reported
  5. 280Choose one active source for task ownership and status.Documented decision / task
  6. 281Distinguish planned, built, tested, reviewed, integrated, deployed, and accepted.Documented decision / task
  7. 282Assign dependencies and explicit blockers before starting parallel work.Documented decision / task
  8. 283Limit how many tasks can be actively built at once.Documented decision / task
  9. 284Keep a founder-visible short list of the actual next decisions.Documented decision / task
  10. 285Check whether a task still advances the accepted finish line.Documented decision / task
  11. 286Challenge feature creep when beta is close.Documented decision / task
  12. 287Park worthwhile ideas without letting them interrupt a release.Documented decision / task
  13. 288Decide when a failed attempt merits repair, rollback, or a new design.Documented decision / task
  14. 289Retain historical failures without resurfacing every one as a new task.Documented decision / task
  15. 290Ask which existing components already solve a requested problem.Documented decision / task
  16. 291Record why new vendors and infrastructure were rejected.Documented decision / task
  17. 292Find an internal tool that was built but never connected to the actual experience.Encountered / reported
  18. 293Keep acceptance criteria behavior-focused instead of just output-focused.Documented decision / task
CHAPTER 15

Git is apparently a lifestyle now

  1. 294Create source repositories and choose ownership accounts.Encountered / reported
  2. 295Create branches for experiments, integrations, and fixes.Encountered / reported
  3. 296Create worktrees so parallel agents don't stomp on each other.Encountered / reported
  4. 297End up with hundreds of worktrees and branches needing inventory.Encountered / reported
  5. 298Discover a worktree folder name didn't match its active branch.Encountered / reported
  6. 299Find a default working folder hundreds of commits behind the live app.Encountered / reported
  7. 300Find a live copy reportedly hundreds of commits ahead of the remote backup.Encountered / reported
  8. 301Prove the exact deployed page and backend are tied to known source commits.Documented decision / task
  9. 302Create off-machine recovery copies before dangerous cleanup.Documented decision / task
  10. 303Inventory uncommitted, unmerged, and unpublished changes.Documented decision / task
  11. 304Identify which branches contain useful work versus superseded experiments.Documented decision / task
  12. 305Prevent an agent from building a feature on an old copy of the source code.Documented decision / task
  13. 306Handle file conflicts between simultaneous agents.Documented decision / task
  14. 307Choose safe merge/rebase policies for approved work.Documented decision / task
  15. 308Check whether a fix already exists on another branch.Documented decision / task
  16. 309Reconcile work copied across branches without pretending it merged cleanly.Documented decision / task
  17. 310Verify the diff instead of trusting the agent's commit description.Documented decision / task
  18. 311Test protected-baseline rules before promotion.Documented decision / task
  19. 312Require actual source ownership transfer, not an empty replacement repository.Documented decision / task
  20. 313Avoid deleting customer source during trial-repository cleanup.Documented decision / task
  21. 314Preserve commit history and relevant project evidence across a transfer.Documented decision / task
  22. 315Prove repo identity and branch state after an account migration.Documented decision / task
  23. 316Record which exact SHA each reviewer actually examined.Documented decision / task
  24. 317Clean stale worktrees only after approving the recovery plan.Documented decision / task
CHAPTER 16

Design it. Decide it looks wrong. Repeat.

  1. 318Try to create the interface using verbal prompts alone.Encountered / reported
  2. 319Discover the design is functional but not good enough.Encountered / reported
  3. 320Revise layouts, navigation, information hierarchy, and copy multiple times.Encountered / reported
  4. 321Identify what the current product experience actually needs to communicate.Documented decision / task
  5. 322Review other apps' UX patterns rather than relying only on model imagination.Documented decision / task
  6. 323Experiment with Mobbin as an upstream reference tool.Encountered / reported
  7. 324Find that generic design searches produced weak results.Encountered / reported
  8. 325Learn to search for specific screens, interactions, states, and users.Documented decision / task
  9. 326Avoid copying a single competitor design even if it looks great.Documented decision / task
  10. 327Compare independent reference patterns before extracting a visual direction.Documented decision / task
  11. 328Check usage and retention rights for third-party visual materials.Documented decision / task
  12. 329Use the external source as inspiration, not a screenshot library to redistribute.Documented decision / task
  13. 330Generate original concepts and founder-visible preview options where warranted.Documented decision / task
  14. 331Obtain approval of a meaningful design direction before spending hours coding.Documented decision / task
  15. 332Record the accepted design direction so the next agent doesn't redesign it.Documented decision / task
  16. 333Review what actually rendered in the browser, not just what the code suggests.Documented decision / task
  17. 334Work through competing design-mode ideas and tool choices.Encountered / reported
  18. 335Reconcile screens that duplicated status or sent the user to the wrong place.Encountered / reported
  19. 336Test desktop and phone behavior independently.Documented decision / task
  20. 337Do not bury the essential action under impressive technical controls.Documented decision / task
  21. 338Check accessibility, copy, empty states, and responsive hierarchy.Documented decision / task
  22. 339Compare the final rendered experience against the accepted reference.Documented decision / task
SESSION RESET 2 / 2

Fresh agent. Fresh start. Unfortunately.

The assistant has resumed from the wrong place. Again.

001What are you hoping to build?
002Have you connected GitHub?
003Would you like me to design a dashboard?
FOUNDER: You already designed it. Twice. We are on step 340.
AI: Great. Which repository is the current one?
A BRIEF INTERRUPTION

Are you having fun yet?

You were promised a five-minute app.
CHAPTER 17

Make it usable by somebody who doesn't know what OAuth means

  1. 340Design multiple founder onboarding routes for existing projects and new ideas.Encountered / reported
  2. 341Watch a novice test expose missing founder facts.Encountered / reported
  3. 342See the user mention four interviews and still get told to conduct five.Encountered / reported
  4. 343Discover a screen reporting setup success while its main action remained unusable.Encountered / reported
  5. 344Find that a Chat Send button could be disabled after onboarding.Encountered / reported
  6. 345Find buttons and links that worked in mocks but not the real user journey.Encountered / reported
  7. 346Ask the founder's intended outcome before connecting ten tools.Documented decision / task
  8. 347Handle users who don't know GitHub, CLI, PATH, worktrees, or environment variables.Documented decision / task
  9. 348Explain billing choices without forcing an unfamiliar API setup.Documented decision / task
  10. 349Preserve all previously entered customer and product facts.Documented decision / task
  11. 350Avoid asking the founder to provide information already recorded.Documented decision / task
  12. 351Make the first useful recommendation understandable without technical jargon.Documented decision / task
  13. 352Show a clear recovery action if an external account is unavailable.Documented decision / task
  14. 353Place only meaningful approvals in the Needs You queue.Documented decision / task
  15. 354Provide contextual help tied to the real error, not generic documentation links.Documented decision / task
  16. 355Check that completion takes the founder somewhere useful.Documented decision / task
  17. 356Avoid repeatedly showing connected services as unverified in contradictory screens.Documented decision / task
  18. 357Prove the experience on the actual deployed site with a fresh account.Documented decision / task
  19. 358Ensure the product is usable on phone-sized screens where supported.Documented decision / task
CHAPTER 18

Actually build the software

  1. 359Build a web frontend and a reliable backend that actually agree on the state of a project.Encountered / reported
  2. 360Keep project and workspace identities consistent across the different services involved.Encountered / reported
  3. 361Define source of truth for projects, members, resources, and tasks.Documented decision / task
  4. 362Choose when to use hosted databases versus local files.Documented decision / task
  5. 363Separate the founder chat interface from the coding worker's actual execution.Documented decision / task
  6. 364Turn chat intent into a bounded, approved work package.Documented decision / task
  7. 365Preserve source, task, and result identities through the whole workflow.Documented decision / task
  8. 366Treat provider requests and real actions differently from simulated demos.Documented decision / task
  9. 367Fix server errors surfaced only during realistic browser navigation.Encountered / reported
  10. 368Find a missing backend field caused a Home 500 while a cloud task existed.Encountered / reported
  11. 369Separate routine automated changes from actions requiring real owner authorization.Documented decision / task
  12. 370Make retried operations idempotent or safely recoverable.Documented decision / task
  13. 371Plan concurrency behavior when several workspaces run simultaneously.Documented decision / task
  14. 372Avoid accidental cross-project state writes.Documented decision / task
  15. 373Keep credentials separate from visible task packets.Documented decision / task
  16. 374Expose useful progress without leaking raw internal paths or secrets.Documented decision / task
  17. 375Return build outcomes to the same founder conversation that initiated them.Documented decision / task
  18. 376Keep architecture modules interoperable without creating duplicate task systems.Documented decision / task
  19. 377Distinguish implementation success from feature acceptance and deployment.Documented decision / task
CHAPTER 19

Run the builders somewhere safe

  1. 378Evaluate Vercel Sandbox for isolated cloud work.Encountered / reported
  2. 379Wire and test a hosted runner instead of relying on a founder laptop.Encountered / reported
  3. 380Determine when a sandbox is needed and when a simple API call suffices.Documented decision / task
  4. 381Reserve compute cost before starting a metered execution.Documented decision / task
  5. 382Limit execution time, wall clock, process count, and egress.Documented decision / task
  6. 383Keep each task in an isolated workspace and source boundary.Documented decision / task
  7. 384Limit what a build task can access, especially sensitive accounts and credentials.Documented decision / task
  8. 385Check whether the necessary CLI/model provider can run in that environment.Documented decision / task
  9. 386Discover some promising desktop/QA tooling did not work in hosted cloud execution.Encountered / reported
  10. 387Try Midscene and conclude it wasn't usable in the present cloud setup.Encountered / reported
  11. 388Continue with plain Playwright instead of pretending Midscene was integrated.Encountered / reported
  12. 389Use a single authorized coding writer where shared files are involved.Documented decision / task
  13. 390Let parallel research or review happen without multiple workers overwriting the same source files.Documented decision / task
  14. 391Handle canceled builds and restore readable results after interruption.Documented decision / task
  15. 392Prevent two jobs from spending the final budget allocation simultaneously.Documented decision / task
  16. 393Stop idle sandboxes and reclaim temporary resources.Documented decision / task
  17. 394Record the exact model payer and infrastructure payer per run.Documented decision / task
  18. 395Make a failed sandbox report its true failure instead of fake success.Documented decision / task
  19. 396Prove that cloud workers do not depend on hidden local machine state.Documented decision / task
CHAPTER 20

Show the founder an app without showing it to the internet

  1. 397Prototype private cloud previews before broad public deployment.Encountered / reported
  2. 398Learn that a Vercel account requirement can break the intended first-run experience.Encountered / reported
  3. 399Design a preview route that works without the founder owning a Vercel team account.Documented decision / task
  4. 400Bind the preview to the exact built source candidate.Documented decision / task
  5. 401Create short-lived, user-bound preview access.Documented decision / task
  6. 402Verify that private previews aren't exposed to the wrong viewer.Documented decision / task
  7. 403Prevent unauthenticated access to a private preview.Documented decision / task
  8. 404Review subdomain versus direct sandbox-host preview architectures.Documented decision / task
  9. 405Encounter Safari/WebKit iframe and separate-tab behavior differences.Encountered / reported
  10. 406Build an Open private preview fallback for blocked embedded frames.Encountered / reported
  11. 407Expire and revoke preview access reliably.Documented decision / task
  12. 408Check service-worker behavior doesn't preserve stale access.Documented decision / task
  13. 409Separate a preview from staging and live publication.Documented decision / task
  14. 410Show an honest error when a preview cannot be opened.Documented decision / task
  15. 411Handle preview stop, reopen, and idle-expiry behavior.Documented decision / task
  16. 412Track preview compute and hosting costs independently of AI token usage.Documented decision / task
  17. 413Test desktop and phone access where the claimed product supports it.Documented decision / task
  18. 414Prove the owner can access the preview through the real product UI.Documented decision / task
  19. 415Never claim a static screenshot proves a working app preview.Documented decision / task
A BRIEF INTERRUPTION

Halfway there?

Nobody knows. The AI said it was 90% done three chapters ago.
CHAPTER 21

Build automated tests. Then test the tests.

  1. 416Write and run large Python test suites.Encountered / reported
  2. 417Write and run JavaScript/page suites.Encountered / reported
  3. 418Test core context contracts and data transitions.Encountered / reported
  4. 419Run focused browser navigation and interaction crawls.Encountered / reported
  5. 420Test a real button click rather than just its render function.Documented decision / task
  6. 421Discover many passing tests missed an obvious founder-facing failure.Encountered / reported
  7. 422Separate mock-provider pass evidence from live-provider acceptance.Documented decision / task
  8. 423Check that requirements are tested against the accepted founder intent.Documented decision / task
  9. 424Create negative tests that deliberately make a gate fail.Documented decision / task
  10. 425Find that a design-word budget was effectively hard-coded to PASS.Encountered / reported
  11. 426Ensure the test actually goes red for a bad screen.Documented decision / task
  12. 427Run relevant security, accessibility, and error-state checks.Documented decision / task
  13. 428Test that previously working behavior survives new changes.Documented decision / task
  14. 429Compare actual build output to the approved design and work package.Documented decision / task
  15. 430Track which test version, source SHA, and environment were checked.Documented decision / task
  16. 431Avoid full expensive QA for disposable exploration when focused checks suffice.Documented decision / task
  17. 432Escalate test depth for shared infrastructure and release candidates.Documented decision / task
  18. 433Check wrong-account, wrong-tenant, and revoked-access denial paths.Documented decision / task
  19. 434Test how the product behaves if its AI provider is unavailable.Documented decision / task
  20. 435Treat skipped tests as skipped, not passed.Documented decision / task
  21. 436Prevent a builder from declaring itself independently reviewed.Documented decision / task
  22. 437Use real-world user journeys instead of only line coverage.Documented decision / task
  23. 438Repeat reviews after fixes and discover new defects in a different path.Encountered / reported
  24. 439Stop endless repair when the same area fails repeatedly.Documented decision / task
CHAPTER 22

Security isn't a button that says Secure

  1. 440Run independent security checks rather than relying entirely on builder self-review.Encountered / reported
  2. 441Evaluate Aikido after substantial earlier hardening work.Encountered / reported
  3. 442Find meaningful additional security issues in older or overlooked code.Encountered / reported
  4. 443Distinguish source findings from reachable production vulnerabilities.Documented decision / task
  5. 444Review dependency vulnerabilities against actual use and exposure.Documented decision / task
  6. 445Scan for secrets and accidental log disclosure.Documented decision / task
  7. 446Review static-analysis rules and their commercial licenses.Documented decision / task
  8. 447Review cross-tenant access and account authorization paths.Documented decision / task
  9. 448Verify production permissions, privileged routes, and release approval checks.Documented decision / task
  10. 449Check webhook signatures and replay protections where supported.Documented decision / task
  11. 450Recheck private-preview access, expiry and isolation before considering it safe.Documented decision / task
  12. 451Test permission boundaries for browser workers and connected tools.Documented decision / task
  13. 452Separate the risk a scanner asserts from the impact you’ve confirmed yourself.Documented decision / task
  14. 453Document confirmed defects, mitigations, false positives, and unknowns.Documented decision / task
  15. 454Re-run the relevant scanner after a bounded fix.Documented decision / task
  16. 455Avoid treating an Aikido green result as legal or security certification.Documented decision / task
  17. 456Decide when full DAST, pentesting, or human review is warranted.Documented decision / task
  18. 457Protect production databases and real users from unsafe active scans.Documented decision / task
  19. 458Record the exact source version scanned by each security tool.Documented decision / task
  20. 459Check security findings against user-visible privacy and trust promises.Documented decision / task
  21. 460Keep the baseline affordable rather than forcing every customer to buy premium pentesting.Documented decision / task
CHAPTER 23

Now deploy it. Actually, not that version.

  1. 461Create release candidates with named source SHAs.Encountered / reported
  2. 462Prepare separate page, API runtime, and infrastructure releases.Encountered / reported
  3. 463Keep staging and review environments distinct from production when needed.Encountered / reported
  4. 464Encounter Railway deploy/start failures requiring investigation.Encountered / reported
  5. 465Investigate a Vercel domain misconfiguration.Encountered / reported
  6. 466Confirm correct DNS, environment bindings, and callback URLs.Documented decision / task
  7. 467Check every required environment variable before release.Documented decision / task
  8. 468Run Linux, Windows, frontend, and provider-specific gates as relevant.Documented decision / task
  9. 469Repair a release script that failed to stop on a bad final check.Encountered / reported
  10. 470Make a failed gate actually block the release unless explicitly governed.Documented decision / task
  11. 471Bind the release packet to exact repository and deployed runtime identities.Documented decision / task
  12. 472Keep one known-good rollback target and explicit recovery instructions.Documented decision / task
  13. 473Stop new releases while another material build or migration is active.Documented decision / task
  14. 474Retain a recoverable source and data backup before destructive changes.Documented decision / task
  15. 475Check actual deployment identity rather than trusting pipeline labels.Documented decision / task
  16. 476Run a real post-deployment smoke test on the published environment.Documented decision / task
  17. 477Verify browser auth, API Chat, source connectivity, and preview after the release.Documented decision / task
  18. 478Test rollback instructions rather than assuming they work.Documented decision / task
  19. 479Discover a page can appear normal while backend readiness is still incomplete.Encountered / reported
  20. 480Treat a green test suite and a green live release as different claims.Documented decision / task
  21. 481Write clear founder release notes about what actually changed.Documented decision / task
  22. 482Wait for explicit approval when the operation can affect customers.Documented decision / task
CHAPTER 24

Operate the thing after the confetti falls

  1. 483Set up application and infrastructure health signals.Documented decision / task
  2. 484Review provider service failures and incomplete build status.Encountered / reported
  3. 485Track unexpected 500 errors and browser console failures.Documented decision / task
  4. 486Keep support diagnostics linked to the exact user task.Documented decision / task
  5. 487Set sensible retry and backoff policies for temporary outages.Documented decision / task
  6. 488Distinguish rate limits from revoked authorization and provider downtime.Documented decision / task
  7. 489Monitor compute quotas, storage allowance, and inactive cloud resources.Documented decision / task
  8. 490Discover hosted database compute allowances can be exhausted.Encountered / reported
  9. 491Plan restore windows and recovery expectations for hosted data.Documented decision / task
  10. 492Confirm secret rotation and credential expiry don't silently break customers.Documented decision / task
  11. 493Watch for orphaned workers and previews that keep costing money.Documented decision / task
  12. 494Document the owner and next action for a live incident.Documented decision / task
  13. 495Decide which failures require immediate founder notification.Documented decision / task
  14. 496Give the founder a useful error and recovery choice instead of a stack trace.Documented decision / task
  15. 497Support repair without accidentally overwriting accepted source.Documented decision / task
  16. 498Keep operational history so future agent sessions can diagnose repeated failures.Documented decision / task
  17. 499Check license and provider-term changes for material workflow impact.Documented decision / task
  18. 500Don't mistake an idle dashboard for a healthy working product.Documented decision / task
A BRIEF INTERRUPTION

The tests passed.

The app was still broken. That was a real lesson.
CHAPTER 25

Do the math. Every time the model changes.

  1. 501Compare monthly subscriptions with API-equivalent token estimates.Encountered / reported
  2. 502Reconstruct spending when the visible Claude bill didn't explain compute consumption.Encountered / reported
  3. 503Compare actual Claude and Codex use rather than one tool in isolation.Encountered / reported
  4. 504Separate direct AI costs from your own coordination and hosting costs.Documented decision / task
  5. 505Estimate fixed infrastructure cost per active project.Documented decision / task
  6. 506Track costs of failed builds, review loops, and unused sandboxes.Documented decision / task
  7. 507Set quota and per-task budget ceilings before paid work begins.Documented decision / task
  8. 508Decide when a third-party service saves more than a custom implementation.Documented decision / task
  9. 509Evaluate whether a paid specialist adds unique, consequential findings.Documented decision / task
  10. 510Avoid claiming hypothetical counterfactual savings as historical fact.Documented decision / task
  11. 511Measure elapsed time and founder interventions per accepted milestone.Documented decision / task
  12. 512Evaluate lower-cost open models on held-out real tasks.Documented decision / task
  13. 513Recheck model price, rate limits, and terms before changing provider routing.Documented decision / task
  14. 514Protect a customer's ability to use their already-paid supported account route.Documented decision / task
  15. 515Explain what pays for Chat, Build, Review, and preview separately.Documented decision / task
  16. 516Test the economic assumptions at 10, 100, and 1,000 active projects.Documented decision / task
  17. 517Decide when an additional service or human review is optional rather than bundled.Documented decision / task
CHAPTER 26

Own it. Actually own it.

  1. 518Decide that founders should bring and own their preferred AI providers.Encountered / reported
  2. 519Design a free first build that means holding a customer’s source code for a while.Encountered / reported
  3. 520Disclose temporary source custody before claiming that code is in the founder's account.Documented decision / task
  4. 521Verify GitHub App installation on the custody organization.Documented decision / task
  5. 522Encounter a transfer-permission failure in the actual source-claim path.Encountered / reported
  6. 523Check transfer authority before the founder attempts to claim code.Documented decision / task
  7. 524Verify destination account, organization, permissions, and repository visibility.Documented decision / task
  8. 525Confirm that full source history transferred to the new owner.Documented decision / task
  9. 526Make sure you don’t keep an unauthorized copy of a customer’s source code.Documented decision / task
  10. 527Delete trial copies of customer code according to the retention rules you disclosed.Documented decision / task
  11. 528Avoid deleting the customer's claimed repository during cleanup.Documented decision / task
  12. 529Preserve the user's ability to continue directly in Claude, Codex, or GitHub.Documented decision / task
  13. 530Make customer data and accepted project decisions exportable where supported.Documented decision / task
  14. 531Define what keeps running in the customer’s own accounts if they stop paying you.Documented decision / task
  15. 532Show who owns and pays for every new resource.Documented decision / task
  16. 533Prefer secure guided setup in the founder's account when it's simpler and cheaper.Documented decision / task
  17. 534Reserve consequential spending, transfer, delete, and publish decisions for the owner.Documented decision / task
  18. 535Confirm that leaving your product doesn’t mean rebuilding the whole project.Documented decision / task
CHAPTER 27

Make the business real, not just the product

  1. 536Compare subscription pricing hypotheses for single and multiple projects.Encountered / reported
  2. 537Separate your own fee from the third-party AI and hosting costs customers pay directly.Documented decision / task
  3. 538Decide what a free or sponsored trial must actually prove.Documented decision / task
  4. 539Show where the paywall sits before founders invest major effort.Documented decision / task
  5. 540Avoid surprise token depletion, hidden credits, or bait-and-switch pricing.Documented decision / task
  6. 541Plan support costs and unit economics for a small founder-led company.Documented decision / task
  7. 542Research bootstrapping, angels, accelerators, and VC options.Encountered / reported
  8. 543Explore Nashville-area founder networks and design-partner introductions.Encountered / reported
  9. 544Discuss an investor one-pager and the evidence it would need.Encountered / reported
  10. 545Decide which funding would genuinely accelerate development.Documented decision / task
  11. 546Evaluate whether partner and model access matters more than headline valuation.Documented decision / task
  12. 547Preserve product adoption and retention evidence before claiming traction.Documented decision / task
  13. 548Separate a paid pilot, an invitation list, and active retained paying customers.Documented decision / task
  14. 549Decide whether and when human engineering/security review becomes a premium offering.Documented decision / task
  15. 550Keep company-readiness obligations proportionate to the founder's real goals.Documented decision / task
  16. 551Distinguish a profitable small business from a venture-scale startup when advising founders.Documented decision / task
A BRIEF INTERRUPTION

Welcome to the founder's second full-time job.

It's mostly figuring out which bill you're actually paying.
CHAPTER 28

Now explain it to a person who hasn't lived your life

  1. 552Try a positioning that sounds impressive to you, and find that it sounds generic to everyone else.My real build: “orchestrator.”Encountered / reported
  2. 553Try positioning it as a founder operating system and find that people needed examples.Encountered / reported
  3. 554Build a one-pager for a potential design-partner introduction.Encountered / reported
  4. 555Explain what a founder gets that direct Claude use does not provide by default.Encountered / reported
  5. 556Receive the question, 'Why wouldn't I just use Claude myself?'Encountered / reported
  6. 557Develop a short product explanation for a first-time AI builder.Documented decision / task
  7. 558Develop a deeper explanation for someone already paying for Claude and Codex.Documented decision / task
  8. 559Show concrete responsibilities normally hidden behind a quick demo.Documented decision / task
  9. 560Create an evidence-backed founder story rather than fictional customer testimonials.Documented decision / task
  10. 561Decide how much technical complexity belongs behind an optional expandable layer.Documented decision / task
  11. 562Keep brand tone witty without belittling inexperienced founders.Documented decision / task
  12. 563Test whether the homepage actually communicates execution rather than advice only.Documented decision / task
  13. 564Run synthetic messaging checks and recognize they aren't real buyer evidence.Encountered / reported
  14. 565Verify every public feature claim against the live route actually supported.Documented decision / task
  15. 566Design an onboarding moment that demonstrates useful judgment before asking for payment.Documented decision / task
  16. 567Experiment with memorable campaign language instead of a wall of jargon.Documented decision / task
  17. 568Measure real comprehension, activation, and willingness to pay.Documented decision / task
CHAPTER 29

Find real users. Not fictional personas.

  1. 569Seek design partners willing to test an unfinished product.Encountered / reported
  2. 570Explore Vanderbilt and other founder-community introductions.Encountered / reported
  3. 571Choose a small supervised beta cohort the infrastructure can safely support.Documented decision / task
  4. 572Ask whether the user has a prototype, an idea, or an internal operational problem.Documented decision / task
  5. 573Get permission before accessing customer repos and external accounts.Documented decision / task
  6. 574Explain known limitations before asking for trust.Documented decision / task
  7. 575Observe the first session without coaching the customer through every screen.Documented decision / task
  8. 576Record the first moment the founder gets genuine useful value.Documented decision / task
  9. 577Separate customer-observed friction from the builder's self-reported success.Documented decision / task
  10. 578Watch which instructions the customer needs to repeat.Documented decision / task
  11. 579Find whether initial recommendations match their actual goal and evidence.Documented decision / task
  12. 580Test whether a founder returns after seven and fourteen days.Documented decision / task
  13. 581Verify what users would pay for, and what they’d keep doing without your product.Documented decision / task
  14. 582Ask what was unnecessary rather than only what features they want added.Documented decision / task
  15. 583Track one credible real result before multiplying onboarding campaigns.Documented decision / task
A BRIEF INTERRUPTION

Almost done.

Your AI has just reported that everything is fixed.
CHAPTER 30

Oh, and do all that again when the AI says 'fixed'

  1. 584Send Claude a task and review its confident completion report.Encountered / reported
  2. 585Open the actual app and find the interaction still wrong.Encountered / reported
  3. 586Write a correction that explains what the founder originally wanted.Encountered / reported
  4. 587Send the correction back to the builder.Encountered / reported
  5. 588Ask an independent model to review the new change.Encountered / reported
  6. 589Find a different error in the review.Encountered / reported
  7. 590Send that finding back to the builder.Encountered / reported
  8. 591Wait for the next fix.Encountered / reported
  9. 592Run the test suite again.Encountered / reported
  10. 593Find a test that was checking the wrong thing.Encountered / reported
  11. 594Rewrite the test so the obvious failure actually fails.Encountered / reported
  12. 595Re-run the suite after the new test.Encountered / reported
  13. 596Check that another screen didn't lose the original state.Encountered / reported
  14. 597Discover the reviewer inspected an old branch.Encountered / reported
  15. 598Explain which branch was actually deployed.Encountered / reported
  16. 599Move the review to the current source SHA.Encountered / reported
  17. 600Check whether another agent already fixed the same issue somewhere else.Encountered / reported
  18. 601Reconcile overlapping worktrees and conflicting file edits.Encountered / reported
  19. 602Retell the accepted decision to a new Claude session.Encountered / reported
  20. 603Copy the latest handoff back into Notion.Encountered / reported
  21. 604Correct an outdated Notion checkpoint that is still being read.Encountered / reported
AUTOMATED COMPLETION REPORT
✓

604 / 604 STEPS COMPLETE.

Everything has been checked. Definitely finished. Nothing more to see here.

✓ PASSProject goal understood
✓ PASSActual customer and payer identified
✓ PASSMarket alternatives checked
✓ PASSBrand and domain accounted for
✓ PASSCompany and IP ownership mapped
✓ PASSPrivacy policy matches runtime
✓ PASSSubprocessor and data-flow inventory current
✓ PASSCredentials and scopes protected
✓ PASSCorrect provider account selected
✓ PASSGitHub source and permissions verified
✓ PASSCorrect Notion workspace read
✓ PASSModel billing route confirmed
✓ PASSCurrent project memory reconciled
✓ PASSBuilder and reviewer share source SHA
✓ PASSParallel agents have no conflicting edits
✓ PASSDesign direction accepted
✓ PASSEvery important button works
✓ PASSActual browser journey passes
✓ PASSIndependent security findings handled
✓ PASSSafe preview access verified
✓ PASSProduction and rollback readiness known
✓ PASSFounder actually accepted the result

All checks passed. Confidence: extremely high. Project ready.

...Hold on. Why is there a step 605?

Oh. There are 96 more things. Apparently the AI checked its own homework and called the project finished before checking the actual result.

  1. 605Review an API-billing surprise or spent quota before continuing.Encountered / reported
  2. 606Reduce agent parallelism because the coordination became more expensive than the work.Encountered / reported
  3. 607Change the approach after one more repair fails the exact same way.Encountered / reported
  4. 608Checkpoint what really worked so the next model doesn't repeat the whole cycle.Documented decision / task
  5. 609Stop calling a task done because one agent wrote the word 'DONE'.Documented decision / task
CHAPTER 31

We finished the list. Then found another list.

A deeper pass surfaced additional real episodes and more specific decision checks. Many expand a general item above. Research labels distinguish reported experience from documented work.

  1. 610Register a real praxeri.com business email workspace; the domain alone is not an inbox.Encountered / reported
  2. 611Configure the Google Workspace Admin Console, account aliases, and team email identities.Encountered / reported
  3. 612Set up two-step verification for the business email accounts and administrators.Encountered / reported
  4. 613Set recovery phone and backup email so losing one login does not strand the company.Encountered / reported
  5. 614Track the Google Workspace free-trial end date and the transition to actual billing.Encountered / reported
  6. 615Connect Resend separately from Workspace and distinguish platform email from customers’ app email.Encountered / reported
Show the other 50 steps we found after finishingWe did warn you.
  1. 616Send actual staging sign-in and password-setup messages and confirm they arrive.Encountered / reported
  2. 617Investigate the real praxeri.com domain misconfiguration reported by Vercel.Encountered / reported
  3. 618Recheck domain-dependent OAuth callback and redirect allowlists whenever the brand or hosting moves.Documented decision / task
  4. 619Find the old code name still hiding in internal assets and exported filenames.Encountered / reported
  5. 620Trace a Railway deployment failure to TLS certificate-authority verification.Encountered / reported
  6. 621Discover that fixing a cloud TLS problem requires investigating the running environment—not blaming the service.Encountered / reported
  7. 622Discover a cloud volume's file ownership can make saved application data seem to disappear.Encountered / reported
  8. 623Work through runtime user permissions and startup configuration to get the service running again.Encountered / reported
  9. 624Read a hosted proof carefully: application and Postgres UP does not mean the workers or full journey were proven.Encountered / reported
  10. 625Investigate repeated Railway build and startup failures in separate review and staging environments.Encountered / reported
  11. 626Discover that a database's free compute allowance can run out—and affect a product's availability.Encountered / reported
  12. 627Inspect Neon minimum compute, scale-to-zero, restore window, and production access settings rather than assuming a free database is production-ready.Encountered / reported
  13. 628Investigate the possibility of idle Upstash Redis state being archived after weeks without activity.Encountered / reported
  14. 629Decide whether an idle state provider needs activity, a different plan, replacement, or deliberate retirement.Documented decision / task
  15. 630Find that a seemingly ready cloud test is blocked by expired provider authorization.Encountered / reported
  16. 631Review GitHub App installation permission-expansion requests on the correct account or organization.Encountered / reported
  17. 632Perform a real staging repository ownership transfer rather than trusting a claim/transfer mock.Encountered / reported
  18. 633Correct a read-only Notion recommendation when the accepted connector must also create and edit approved content.Encountered / reported
  19. 634Connect to Notion and find the selected workspace exposes People and To Do List instead of the needed project page.Encountered / reported
  20. 635Discover an authorized Notion account still needs page-level sharing and expansion permissions.Encountered / reported
  21. 636Investigate an authentication outage after a deployment change.Encountered / reported
  22. 637Reconcile a recovery action against the exact release authorization instead of assuming a green fix grants a new approval.Encountered / reported
  23. 638Discover that a privileged source-control operation was running inside a less-trusted environment.Encountered / reported
  24. 639Separate privileged source-control actions from untrusted execution and verify the transfer safely.Encountered / reported
  25. 640Adversarially test whether source-control tooling or environment manipulation can cross the intended trust boundary.Encountered / reported
  26. 641Reproduce multiple cloud-spending and execution-lifecycle defects before authorizing paid work.Encountered / reported
  27. 642Verify that concurrent jobs cannot both spend the same remaining allowance.Encountered / reported
  28. 643Account for realistic worst-case model and infrastructure usage before authorizing a run.Encountered / reported
  29. 644Confirm cleanup and failed-run retries don't leave budget records stuck or inconsistent.Encountered / reported
  30. 645Reconcile the execution record against billed usage and actual work after a partial failure.Encountered / reported
  31. 646Repair task ordering when two work plans were created in the same second.Encountered / reported
  32. 647Compare actual PowerShell and Bash command failures in agent execution logs before choosing the default automation path.Encountered / reported
  33. 648Catch an out-of-date project summary being mistaken for approval of a newer release.Encountered / reported
  34. 649Find error details that make perfect sense to a developer and absolutely none to a founder.Encountered / reported
  35. 650Catch a user interface saying review is underway as if independent approval were complete.Encountered / reported
  36. 651Fix an approve/decline action that targeted the wrong piece of work.Encountered / reported
  37. 652Make the existing Helper update visible when the real control was hidden in a collapsed device panel.Encountered / reported
  38. 653Recheck reviewers and test workers against the exact current repository checkout rather than a convenient old branch.Encountered / reported
  39. 654Resolve the same provider being marked Connected on one screen and Optional or unverified on another.Encountered / reported
  40. 655Find useful completed specialist work that still lives in an isolated branch and never reached the release candidate.Encountered / reported
  41. 656Discover a checkpoint document grew so long that every new agent wasted time rereading obsolete history.Encountered / reported
  42. 657Realize the largest AI usage spike came from helper and browser loops, not just direct founder prompts.Encountered / reported
  43. 658Clarify whether a design-reference provider's commercial plan and content rights support your intended usage.Documented decision / task
  44. 659Check whether a provider permits your product's chosen authentication and billing arrangement.Documented decision / task
  45. 660Match a third-party security finding to the actual reviewed source version before claiming it was addressed.Documented decision / task
  46. 661Plan secure credential rotation and minimal incident records if a secret appears where it shouldn't.Documented decision / task
  47. 662Verify an owner-authorized exception isn't confused with an AI worker silently bypassing a release check.Documented decision / task
  48. 663Retest Safari/WebKit preview isolation and fallback even after Chromium and Firefox pass.Encountered / reported
  49. 664Separate a design concept from a private working preview, and both from staging and live environments.Documented decision / task
  50. 665Show that a scripted provider journey passing does not certify a working real-user hosted build.Encountered / reported
CHAPTER 32

And somewhere in another window, you built three more products.

Documented lessons from Eruvi, Stocks, Collectibles, and Core Intelligence. Not a universal requirement to operate four products.

  1. 666Run a separate career-intelligence product alongside the AI-development platform.Encountered / reported
  2. 667Decide whether that product is a one-time advice tool or an ongoing relationship with the user.Documented decision / task
  3. 668Distinguish what a person said, what they demonstrated, what external evidence showed, and what an AI inferred.Documented decision / task
  4. 669Keep several plausible career routes alive rather than forcing one impressive-sounding answer.Documented decision / task
  5. 670Check career-market data source, release vintage, permissions, and staleness before making a recommendation.Documented decision / task
  6. 671Separate a job's advertised pay from whether the person can realistically access that opportunity.Documented decision / task
Show the other 29 lessons from the other productsDifferent products. Same mistakes.
  1. 672Test whether a new user reaches real value without a tutorial or an enormous questionnaire.Documented decision / task
  2. 673Build a career-intelligence journey while making sure older experiments don't quietly override current decisions.Encountered / reported
  3. 674Track what happens after a real-world experiment instead of scoring a career path from AI confidence alone.Documented decision / task
  4. 675Don't change a person's settled goals just because one conversation was emotional or unusually recent.Documented decision / task
  5. 676Run a separate trading-intelligence system with its own data providers, models, decisions, and operational controls.Encountered / reported
  6. 677Deduplicate feeds, sessions, and event identifiers before declaring a market-data snapshot current.Documented decision / task
  7. 678Preserve what the trading model actually knew at each decision time, not facts learned after the stock moved.Documented decision / task
  8. 679Compare a market-decision model against a realistic unchanged baseline, not just its most flattering chart.Documented decision / task
  9. 680Preserve a legitimate CASH / no-trade decision rather than forcing the AI to recommend activity.Documented decision / task
  10. 681Separate model research and live model settings; don't silently retune production from a tiny sample.Documented decision / task
  11. 682Reconcile an operations dashboard that said ready with the actual session, source freshness, and live-delivery state.Encountered / reported
  12. 683Prove the morning job actually ran, with correct time zones, status, delivered output, and restart behavior.Documented decision / task
  13. 684Keep brokerage/trading authority separate from a system designed to make recommendations.Documented decision / task
  14. 685Build an entirely different collectibles underwriting and valuation project in parallel.Encountered / reported
  15. 686Decide which graded assets have sufficient comparable-sale evidence to estimate a credible value.Documented decision / task
  16. 687Decide which external data is worth paying for and collect only what the current evaluation needs.Documented decision / task
  17. 688Preserve point-in-time provenance so later sales don't sneak into an earlier valuation.Documented decision / task
  18. 689Run repeatable sales-evidence collection and verify retries don't duplicate historical observations.Encountered / reported
  19. 690Separate asset valuation confidence from the risk and lending policies of a particular lender.Documented decision / task
  20. 691Check whether an attractive valuation tool actually addresses monitoring and decision risk for its intended users.Documented decision / task
  21. 692Decide whether a lender portal is genuinely usable rather than calling the underlying math a complete product.Documented decision / task
  22. 693Avoid becoming a balance-sheet lender simply because you can build lending software.Documented decision / task
  23. 694Build a cross-project evidence tracker while other products keep evolving.Encountered / reported
  24. 695Reconstruct tens of thousands of old project and AI-development events into a usable history.Encountered / reported
  25. 696Classify timestamp confidence so reconstructed events don't masquerade as exact historical truth.Documented decision / task
  26. 697Build connectors for different historical evidence sources, then verify what was actually captured.Documented decision / task
  27. 698Compare AI claims with changes, accepted results, and real spending rather than treating confidence as proof.Documented decision / task
  28. 699Keep one project's private data out of another project's learning context while still reusing safe general lessons.Documented decision / task
  29. 700Decide which lessons really deserve becoming reusable practices—and require evidence first.Documented decision / task

A real snapshot from the build behind this guide

579commits
158branches
287worktrees
~70review deployments

A documented two-week snapshot from the founder's own build—not a measurement of wasted work. And no, this is not a suggested workflow.

One final step
  1. 701Turn this entire build journey into a perfectly serious-looking step-by-step guide to building complex software with AI. Give it an ordinary title and a professional-looking link preview. Share it without explaining the joke. Let people discover it themselves.Documented decision / task

The guide is real. The joke is what I went through to write it.

You can actually use this checklist. Not every item applies to every product, and some are mistakes to avoid rather than steps to repeat.

End of list. Beginning of the point.

You tired of reading this?
Imagine doing it.

I did a lot of it, as a non-developer, mostly by copying and pasting between AI chats. Nobody should have to become their own architect, AI-team manager, QA department and privacy officer just to make something useful.

That’s why I’m building Praxeri. It works with Claude, the AI that writes your code, and runs the project around it. It helps you decide which of these steps your project needs, and which to skip for now. It remembers your decisions, so a new chat doesn’t start from zero. It builds each change in a private preview you check first. And when the AI says “fixed,” it shows you what was actually tested.

Your code goes to your own GitHub, and builds run on your own Claude plan or Anthropic key. Praxeri charges one flat fee, not credits. The free first build is the exception: we hold that code until you connect your GitHub.

Can it do everything on this list yet? Not quite. It’s in closed beta: some parts work, some are being tested, and plenty are still on the roadmap. Claiming every box is checked would be an embarrassing way to end this list.

Join the founding beta

No pitch required. We don’t need your idea to add you to the beta list.

Where are you? (optional)
Ready to try it when a spot opens? (optional)

A real person reads every one, and we invite builders a few at a time. We use your email only to contact you about the beta. No newsletter, no sharing. Want off the list? Email support@praxeri.com.

Want to look around first? See what Praxeri does →

Stuck building something? Ask Praxeri.

“I’m not a developer. I’ve just spent an unreasonable amount of time building with AI, breaking things, fixing them, and figuring out what actually works. Ask me what you’re stuck on. I’ll share what I’ve learned—and when I haven’t tried something, I’ll tell you that too.”

One question at a time, please. I read every one and answer what I can, but I can’t promise how fast. Please don’t include passwords, keys, private code or customer data.

One more thing. You knew there would be.

What did we miss?

You’ve probably got a step that isn’t on this list. A bug your AI swore it fixed. An afternoon lost to one permission checkbox. Tell us in the comments on the LinkedIn post you came from, or share the guide with your own story.

Rather not post it publicly? Suggest a step here.

We read every suggestion before adding anything, and we won’t name you unless you give a name. Sending this doesn’t sign you up for anything.

Questions, credit and house rules

Have questions? Use Ask Praxeri above, or the LinkedIn comments. I’ll answer what I can. I’m not a software developer or an AI expert. When I don’t know something, I’ll say so, and where AI helps draft an answer, I’ll label it. Other builders are welcome to correct me.

Beginner questions are welcome. So are friendly sarcasm, strong language and honest criticism, including of Praxeri. Hate, threats, stalking, doxxing, harassment, spam and publishing anyone’s secrets are not.

Your ideas are yours. Don’t post confidential plans, customer details, passwords or unreleased vulnerabilities. We may learn from general, non-identifying patterns in what builders find hard. We won’t republish your story or a specific idea as our own without your permission.

Want credit if we add your step? Tell us the name or handle to use, or say anonymous. We review additions before including them, and we won’t build every suggestion.

Build the fun stuff. Skip the circus. You keep the keys.

Curious where these steps came from? The note below separates real experiences, researched practices and work that is still planned.