Unclear The lookup also depends on two further internal checks whose names are not known, so it is unclear whether it runs at all.
What
The Projects tool lets Claude search and write documents in a claude.ai Project. Several parts of it changed:
project_searchresults can now include images, as image blocks next to the text. Before, results were text only. Images are removed when a result is stored and put back when the result is remapped (restoreTransientForRemap).project_searchnow takes a number from the switchtengu_pebble_harbor, held between 0 and 4. Before, it took onlyn. Nothing has been read about this switch.tengu_lovely_rainalone now gates writing into the document in view, andtengu_lucky_nebulaonly gates the variant that writes by file path. Before, writing needed both.tengu_toasty_owlis unchanged. For bothtengu_lovely_rainandtengu_lucky_nebula, the flag server returned off for this site's account and for the anonymous baseline, and no reading has been taken under this release.- Writes and deletes go through a new approval check.
- Stream events gain an internal optional
owed_rowsfield. It lists the IDs ofproject_doc_readsrows, which record Claude Code reading a claude.ai Project's documents. - After a turn whose attachments include
project_doc_reads, Claude Code starts a lookup of hashes (fingerprints) of those documents. The environment variableCLAUDE_CODE_PROJECT_DOC_LOOK_TIMEOUT_MSsets how long the lookup may take, and on a timeout it gives up for the rest of the session. In headless mode (running without the interactive screen) the ID of theproject_doc_readsattachment is also collected into a list.
Why
Claude can now get pictures, not just text, back from a project search. Whether each kind of write is available depends on a different server switch than before. If the document lookup slows you down, CLAUDE_CODE_PROJECT_DOC_LOOK_TIMEOUT_MS bounds it.
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubt
The lookup also depends on two further internal checks whose names are not known, so it is unclear whether it runs at all.