{"name":"Read","slug":"read","family":"tool","title":"Tools","noun":"tool","description":"Files covered by a Read deny rule can no longer be written, not just edited.","description_source":"entry","described_by":{"version":"2.1.228","anchor":"write-tool-now-refuses-files-covered-by-a-read-deny-rule"},"presence":{"first_seen":"2.1.138","removed_in":null,"in_current_build":true,"newest_mined":"2.1.308","builds":149,"mined_builds":149,"first_cited":null},"aliases":[],"entries":[{"version":"2.1.302","anchor":"readclaudeprojects-in-a-permission-list","heading":"A built-in permission list now allows reading saved session files","line":"A built-in list of allowed tool actions now includes Read(~\/.claude\/projects\/**), the folder where sessions are saved","released_at":"2026-10-16 16:48:28","reason":"found in this entry's text"},{"version":"2.1.300","anchor":"pdf-reference-attachment-tells-the-model-it-has-not-seen-the","heading":"Claude is told plainly when it has not seen a PDF and must read it by pages","line":"For PDFs that must be read page by page, Claude is now told it has not seen the file and must read a page range before writing anything","released_at":"2026-10-14 14:27:26","reason":"found in this entry's text"},{"version":"2.1.288","anchor":"model-that-rejects-whole-pdfs-now-gets-a-read-pages-hint","heading":"Models that cannot read whole PDFs are told to read specific pages","line":"When a model rejects a whole PDF, Claude is now told to read specific pages with the Read tool's pages option instead","released_at":"2026-10-02 18:30:40","reason":"found in this entry's text"},{"version":"2.1.287","anchor":"bash-cd-then-read-approval-message-differs-for-cloud-session","heading":"Cloud sessions explain why a cd-then-read Bash command needs approval","line":"In cloud sessions, the approval prompt for a Bash command that changes folder then reads a file now explains the key and sign-in file risk","released_at":"2026-10-01 16:59:25","reason":"found in this entry's text"},{"version":"2.1.285","anchor":"tools-handling-extracted-into-a-helper","heading":"Handling of the --tools flag reorganized, with the same warnings","line":"The code that reads `--tools` and warns about unknown tool names was moved into one place; the warning text is unchanged","released_at":"2026-09-29 17:32:09","reason":"found in this entry's text"},{"version":"2.1.281","anchor":"file-tools-add-a-new-early-validation-step","heading":"File tools add a new early validation step","line":"Read, Edit, Write and NotebookEdit now run a shared check on the file path before any of their other input checks","released_at":"2026-09-23 17:01:17","reason":"found in this entry's text"},{"version":"2.1.277","anchor":"taskoutputs-output-length-config-knob-is-deprecated-tool-r","heading":"TaskOutput's output-length config knob is deprecated (tool removed)","line":"TaskOutput tool removed; background task output is now read via the Read tool","released_at":"2026-09-18 16:22:26","reason":"found in this entry's text"},{"version":"2.1.277","anchor":"per-tool-backgrounding-classification-rolled-out-across-ne","heading":"Per-tool 'backgrounding' classification rolled out across nearly all built-in tools","line":"Nearly every built-in tool now carries a 'backgrounding' classification of never, self, or detach","released_at":"2026-09-18 16:22:26","reason":"found in this entry's text"},{"version":"2.1.273","anchor":"read-tools-http-handler-helper-gains-body-file-support","heading":"Read tool's HTTP handler helper gains body_file support","line":"Read tool's HTTP handler settings now accept a body_file option alongside method, body, mode, and script","released_at":"2026-09-15 18:06:34","reason":"found in this entry's text"},{"version":"2.1.271","anchor":"new-system-reminder-against-using-cat-on-files-near-the-ba","heading":"New system reminder against using cat on files near the Bash output limit","line":"New guidance tells Claude to use the Read tool instead of cat for large files","released_at":"2026-09-14 19:45:19","reason":"found in this entry's text"}],"entries_total":32,"docs":[{"source":"api","path":"about-claude\/api-credits-for-subscribers","title":"api-credits-for-subscribers","documented":false},{"source":"api","path":"about-claude\/glossary","title":"glossary","documented":false},{"source":"api","path":"about-claude\/models\/choosing-a-model","title":"choosing-a-model","documented":false},{"source":"api","path":"about-claude\/models\/migration-guide","title":"Or, for the model with the same capabilities and no access approval requirement:","documented":false},{"source":"api","path":"about-claude\/models\/optimizing-for-cost-and-intelligence","title":"optimizing-for-cost-and-intelligence","documented":false},{"source":"api","path":"about-claude\/pricing","title":"pricing","documented":false},{"source":"api","path":"about-claude\/use-case-guides\/commerce-agents","title":"commerce-agents","documented":false},{"source":"api","path":"about-claude\/use-case-guides\/content-moderation","title":"content-moderation","documented":false},{"source":"api","path":"about-claude\/use-case-guides\/customer-support-chat","title":"customer-support-chat","documented":false},{"source":"api","path":"about-claude\/use-case-guides\/legal-summarization","title":"legal-summarization","documented":false}],"docs_total":12,"gates":[],"related":[],"url":"https:\/\/changelogs.core-directive.com\/reference\/tool\/read","family_url":"https:\/\/changelogs.core-directive.com\/reference\/tool.json"}