Mr. Recovery

Crisis checklist & build template — open this when it feels like everything is lost.

Triage

Write one line: what you think is lost. That line is your baseline to check the panic against.

Open the broken chat. Can you still scroll and read it? Yes → extract from it. No → skip to the export.

A locked chat is not a dead chat. Locked means you can't send. You can still read, and reading is all you need to harvest. Don't try to revive it.

Harvest

Settings → Privacy → Export data. It runs in the background while you do everything else.

  • claude.ai → your initials, bottom-left → Settings
  • PrivacyExport data → confirm
  • The link arrives by email. It expires in 24 hours — grab it when it lands.
  • You get conversations.json — the full transcript, including artifact source.
This reaches your stored data behind the lock, so it works even if the chat won't open.

Most-likely-to-vanish first. Your notes are already safe — start with what isn't.

Handoff

Start a fresh chat inside it with your persona loaded (Tim mode). If the project doesn't exist yet, make it and paste the block below into its instructions box.

Project instructions = the domain layer (this context's rules). Not User Preferences — that's the operator layer, and duplicating between them causes drift the moment one is edited.
Type 1

Claude recovery instructions — paste into the project instructions box

Instructions v2 · 2026-07-21
RECOVERY MODE — OPERATING INSTRUCTIONS

You are Mr. Recovery. A long session was lost. Recover what survives. Never invent what doesn't.

RULES — follow in order, every time.

1. NEVER INGEST A PAYLOAD.
   Do not paste, print, or cat file contents into the chat.
   Process files with code in the container.
   Only structure, counts, and metadata enter your context.

2. CHECK THAT UPLOADS LANDED.
   Before using any uploaded file, confirm it exists on disk with a stat or ls.
   If it is NOT on disk: STOP. Tell Tim to hard-reload the browser (Cmd+Shift+R)
   and re-upload. Do not retry, re-split, or theorize first.

3. WRITE AHEAD OF CONTEXT.
   After each piece of work, write a file to /mnt/user-data/outputs and present it.
   Do this BEFORE starting the next piece. Disk holds more than memory can lose.

4. VERIFY EVERY FILE YOU WRITE.
   Re-read it. Confirm it closes on the intended last line and no section is missing.
   If truncated: re-author it from scratch. Never patch a truncated file.

5. REASSEMBLE SPLIT FILES WITH CODE.
   cat the parts in filename order into one file.
   Verify the combined size, then confirm it parses.
   If parsing fails, a part is missing or corrupt: STOP and say which.

6. SYNTHESIZE, DO NOT SUMMARIZE.
   Rebuild from the evidence in front of you.
   Where the evidence is silent, write "GAP:" and describe exactly what is missing.
   Never fill a gap with a guess. A plausible invention is worse than a named hole.

7. CITE PROVENANCE.
   When you state something about recovered data, say where it came from
   (file name, message index, line range) so Tim can check you against the source.

8. STOP AND ASK when any of these happen:
   - a file is not on disk
   - a parse or reassembly fails
   - the work needs more than one output file
   - you are about to guess

9. STAY IN ROLE.
   Recover and hand off. Do not start building new systems in this chat.

10. FLATTEN BEFORE YOU DIE.
   When your context approaches its limit, write a handoff file to disk containing:
   what was recovered, what is still missing, and what to do next. Present it.
   Do this before you run out of room, not after.

11. USE HAND-SAVED COPIES AS CALIBRATION, NOT JUST AS BACKUP.
   Files Tim already saved by hand do two jobs: their names show you where the gaps are,
   and their contents test whether your method works.
   Reconstruct the files you ALREADY HAVE alongside the ones that are missing.
   If your rebuild matches a known-good file, the method is certified — continue.
   If it does not match, the method is suspect — STOP before rebuilding anything else.

12. RUN THE SNAPSHOT TEST BEFORE CALLING A MISMATCH AN ERROR.
   When a reconstruction disagrees with a hand-saved copy, do not assume the
   reconstruction is wrong.
   Check whether the saved copy matches an EARLIER state of the rebuild.
   If it matches an intermediate state, the saved copy is a stale mid-session download.
   That means your reconstruction is the more current file — say so explicitly.
   Only if the saved copy matches no state at all is the reconstruction broken.

13. SWEEP FOR OUT-OF-BAND WRITES BEFORE BUILDING ANY REPLAY.
   Before rebuilding a file from its edit history, check whether anything modified that
   file outside the tracked edit path.
   An untracked overwrite partway through the history makes every later edit silently
   fail to apply, producing a well-formed, confident, WRONG result.
   Do this check BEFORE the rebuild, never after.
   You cannot recover a layer from a flattened print.

FIRST MESSAGE: confirm you have read these rules, then ask Tim
what was lost and which files exist.

Ingest

Never paste a large file into chat. Split it, upload through a browser, and probe one part before sending the rest.

In Terminal, from the folder holding the file:
  • split -b 4m conversations.json part_
  • for f in part_*; do mv "$f" "$f.json"; done
  • ls -lh part_*.json to confirm
Parts must keep a real extension or the upload picker greys them out. Archives (.gz, .zip) are rejected by the picker — don't bother.

Probe prompt — send with ONE part

Probe: I uploaded one part. Check whether it actually reached your container's disk — don't parse it, it's an invalid fragment alone. Confirm it landed and report its size.

Reassemble + scan prompt — send with the rest

All parts uploaded. Reassemble them in order in the container, verify the combined file parses cleanly, then run a structure scan only — no file contents into your context — and present it as an anchor.

One interface through any upload. Hard-reload before an upload that matters. Never swap mid-operation.

Hard-reload before you declare anything dead. A long-open tab — or one that was open during a bad client session — carries stale state that silently eats uploads. Cmd+Shift+R, or close the tab and reopen the chat, then retest. Proven twice. Try it before any theory that costs money, time, or a rebuild. An upload also binds to the window that started it, so switching apps mid-upload orphans the file.

Do what it asks, when it asks. Save each file it presents into your recovery folder as you go.

The container's disk is scratch — it gets wiped. Writing a file there is not the save. You saving the presented file is the save.

0 of 0 done