Pull requests / #1119

#1119 Add local PDF, Word and Excel attachments with screenshot previews

open · @medking82 · 0 commentaires · Sur GitHub

Setup & installServer & APISecurityDocumentationWindows

Description

When attaching a local document, the web app can now extract PDF text, Word body paragraphs/tables and Excel cached cell values before sending the question. Scanned PDF pages become bounded PNG attachments when vision is enabled. Screenshot previews and pending-read guards also cover pasted or dropped pictures; Send waits for extraction, and New chat ignores cancelled or delayed reads.

This rebuilds our contribution from #724 on the rewritten `main` (`82f46a8c`), following the maintainer's history-cleanup notice. It contains only the original document attachment vertical slice and is independent of durable chat, skills, research policy and adaptive memory.

Uploads stay in process memory. A child worker enforces size, time, memory and concurrency limits. The route reuses the existing API-key and own-page admission; malformed/encrypted documents, unsafe Office ZIP/XML and over-limit content return bounded errors or visible extraction notes. Parser dependencies are pinned, including the legacy-install path that adds missing parsers without replacing the runtime.

Validation on Windows, after the new-main port:
- 11 extraction tests passed, including real PDF/DOCX/XLSX workers, scanned pages, Unicode, unsafe input and resource limits.
- 267 HTTP admission and affected server/security/MCP/frontend/Windows process tests passed.
- 5 package pin and legacy-install checks passed.
- 12 Node attachment tests passed: native image wire, pending Send, queued cancellation, reload draft and storage failure.
- Isolated browser checks verified unsent text draft reload and a completed mock-model chat using the current app. Upload/paste gestures were not repeated manually in this integration.
- Staged diff check passed. Existing upstream socket/file ResourceWarnings remain visible in regression output.

No production archive, GPU or real model was used. Unix memory containment is implemented but was not exercised in this Windows validation. Legacy `.doc`/`.xls`, encrypted PDF and OCR are outside this change; a text-only model cannot read scanned-page pictures. Browser draft storage can fill, in which case the UI warns and retains the current in-memory draft.

Sur le site

Liens install, modèles, releases.