I built an AI tool that turns messy decks and transcripts into a discovery report A developer built Discovery Phase AI, a tool that ingests slide decks, documents, transcripts and images and drafts a project discovery report covering background, stakeholders, requirements, architecture and roadmap. The system uses Claude models with no tool access, parsing only JSON output and validating every referenced record ID against the database, and requires users to review and accept each proposed change before it is saved. The backend is a Go modular monolith with Postgres, and the frontend is React with Tiptap and Mermaid, with AI usage metered via credit reservation and settlement to prevent overspending on parallel requests. Every software project starts with a discovery phase: goals, stakeholders, requirements, architecture, a rough roadmap. In practice it lives in slide decks, Google Docs and call transcripts, and someone has to turn that pile into one coherent document. I built Discovery Phase AI https://discoveryphaseai.com/?utm source=devto&utm medium=community&utm campaign=launch to do the first draft of that work. You upload your source files, review what the model proposes, and export a report. What it does - Takes decks, docs, transcripts and images and drafts the discovery stages: background, executive summary, problem statement, stakeholders, goals and metrics, users and journeys, requirements, architecture, roadmap. - Lets you review every proposal before anything is saved. Nothing the model writes is stored until you accept it. - Keeps an "improve with AI" chat on each stage, with a quality score and suggestions anchored to the text. - Checks the impact of a change across stages, so an edited requirement shows which goals, diagrams or milestones may now be out of date. - Exports the report as PDF, Word, PowerPoint or Markdown, with Mermaid diagrams drawn as images. How it's built - Backend: Go modular monolith chi, pgx, no ORM, hand-written SQL . Every module follows repository → service → handler, and modules never import each other's internals. - Frontend: React + TypeScript on Vite, Tiptap for the rich-text stages, Mermaid for diagrams. - Database: Postgres, with all state in the database so several instances can run side by side. - AI: Claude models. The model has no tools: its output is only parsed JSON, and every record id it mentions is checked against the database before it can touch anything. Things I learned Treat everything you send to the model as untrusted. Uploaded files, other stages' text and chat history are all wrapped as untrusted data, and a suggested change can only reference records that exist in the same project. Make the AI output reviewable, not final. Typed operations add, update, remove that the user applies one by one are much easier to trust than a rewritten document. Meter AI usage from day one. Each call reserves credits before it runs and settles afterwards, so parallel requests cannot overspend. Try it There is a free plan, and you can open a full sample report without signing up: example report https://discoveryphaseai.com/example-report?utm source=devto&utm medium=community&utm campaign=launch the project in it is invented . I'd love to hear how you run discovery today, and what you would want a tool like this to do differently.