Claude is actually very good at analysing and documenting a codebase. Get it to do a high level analysis and document, and then more granular versions of that for sub sections, down to the level of detail where you think you need. Tell it to document just the functionality and business rules, rather than the code itself.
You can verify the details by hand and with your friend to be confident you've got the business rules correct. Then use Claude in a similar way to create technical design documentation from the business rules docs, starting at a high level design and then creating more detailed subsections. You can give it specific technical direction through this process, with the kinds of architecture and patterns you want to use.
If you haven't worked with Claude much, its important to know how to work with it for good results. Always break up your sessions with it. Just having a single conversation that you keep working on for days or weeks will give increasingly poor results as the amount of information it has to keep track of blows out. Have targetted discussions that generate an output (usually documentation) and then start a new conversation that uses the output from the previous discussion, but focuses on a more granular aspect of it. As you generate documents, have claude update its "claude.md" file, which is a project file with any info you want to include in every conversation. Having an index to your documents so it knows which document to look for for a specific subject will save you a lot of time and tokens.
This is whow I would reverse vibe code a vibe codebase. It sounds like you haven't used Claude much, it is actually very capable when managed correctly by a skilled programmer. I'm happy to answer any questions you have.
Cue the downvotes.