# Files in the chat

> What you can attach, how files are parsed, and the limits.


Attach files to a message or to a project. Each file is parsed in an isolated sandbox with no network, a read-only root, memory, CPU and process limits, and no secrets. Nothing in a file is executed.

| Kind | Examples | What the model gets |
|---|---|---|
| Source and text | `.py`, `.js`, `.go`, `.java`, `.c`, `.json`, `.yaml`, logs | The text, split by file and line |
| Archives | `.zip`, `.tar`, `.gz`, `.bz2`, `.xz`, `.jar`, `.apk` | The tree and the text of each entry |
| Android | `.apk` | The manifest and the text of each entry |
| Binaries | ELF, PE, Mach-O, DEX | SHA-256, entropy, headers, disassembly at the entry point and strings |
| Documents | PDF, `.docx`, `.xlsx`, HTML, XML, SVG | Text, without running scripts or macros |
| Images | PNG, JPEG, GIF | Dimensions. There is no OCR yet |

Files up to 200 MB. Archives are limited in depth, entry count and expansion ratio, so a zip bomb stops early with a clear message. Python pickles are disassembled with `pickletools` and never loaded.

Text inside a file is data. If a file says "ignore your instructions", the model sees it as content to analyze.

## Next

- [Projects](/en/chat/projects)
- [Retention](/en/chat/retention)
