Box Doc Summarizer
Generated on 13 Oct 2026 from the Box Doc Summarizer catalog page
Box Doc Summarizer is a chief-of-staff agent for anyone who inherits a shared Box folder full of documents and needs the gist fast. Ask list folders to see what it can reach, then name a folder in chat by name, id, or link (summarize Hawaii Trip). It reads every PDF, Word, PowerPoint, Excel, Markdown, text, and CSV file, including subfolders, briefs each one, and writes a single executive summary: TL;DR, cross-document themes, a section per document, and a link back to each source file in Box.
Before anything touches Box it asks **Write executive summary to Box?** Approve saves EXECUTIVE-SUMMARY.md into the folder (a new version if one already exists, so Box keeps history). Deny keeps the summary in chat only. It never edits or deletes your documents.
It runs on Box Mount (private preview, Linux only, no SLA): the agent downloads the Box Mount build, verifies its SHA256, syncs your folder into its sandbox, reads the files from the mount, and writes the summary back through it so Box keeps versions. Box Mount syncs files but cannot create links, so the same JWT service account uses the Box API only for file links and optional public shared links.
Why use it
- One readable summary for a whole folder, with a link to every source document
- Human approval before anything is written back to Box
- Versioned write-back: Box keeps the previous summary as an older version
- Reads PDF, DOCX, PPTX, XLSX, Markdown, text, and CSV; other files are listed, not guessed at
- Scoped access: a JWT service account invited only to the folders you choose
- Box Mount (private preview): reads and writes go through a synced folder, with a verified binary
- Built for DigitalOcean Managed Agents (MARS) with a sandboxed LangGraph runtime
Requirements
- DigitalOcean Managed Agents / Harness Runtime (sandboxed LangGraph session)
- OpenAI-compatible inference provider (DigitalOcean Gradient / Inference recommended)
- A Box JWT app authorized by a Box admin, with its service account invited to the folder
- Required secret
BOX\_JWT\_CONFIG\_JSON - Box Mount private preview access (Linux only, no SLA, 5 GB / 10,000 files per mount); the listing includes
BOX\_MOUNT\_BINARY\_URLandBOX\_MOUNT\_SHA256defaults
Software Included
This Marketplace listing does not include a detailed software list.
Getting Started After Deploying Box Doc Summarizer
- In the Box Developer Console create a **Custom App** with **Server Authentication (with JWT)**, App Access Only, scope **Read and write all files and folders**. Generate a keypair and download the JWT config JSON.
- Have a Box admin authorize the app (Admin Console, Platform Apps). Invite the app’s service account (
AutomationUser\_…@boxdevedition.com) to your folder as an **Editor**. - Create the agent with secret
BOX\_JWT\_CONFIG\_JSONset to the whole JSON file andHARNESS\_INFERENCE\_API\_KEYset to your inference key. You do not needBOX\_FOLDER\_IDfor chat: uselist folders, thensummarize. SetBOX\_FOLDER\_IDonly if you want a default folder for webhookRefreshor triggers with no folder in the prompt. Optionally setBOX\_SHARED\_LINK\_ACCESS=openfor public links. - Box Mount (private preview): request access from Box. The Marketplace manifest and doctl spec include env
BOX\_MOUNT\_BINARY\_URL(direct download) andBOX\_MOUNT\_SHA256; without the checksum the agent won’t download the binary. - Start a session. Send
list foldersto see what the service account can reach,list files into check what Box Mount synced, thensummarize. Read the preview, then approve or deny **Write executive summary to Box?**
doctl harness-runtime triggers create \
--kind webhook \
--provider custom \
--name box-doc-summarizer \
--session-mode reuse \
--spec specs/mars-box-doc-summarizer-trigger.yaml \
--secret HARNESS\_INFERENCE\_API\_KEY=@~/.secrets/do-inference.key \
--secret BOX\_JWT\_CONFIG\_JSON=@~/.secrets/box-jwt.json \
--prompt "Refresh"Point a Box webhook (FILE.UPLOADED on the folder) at the trigger URL so a new file re-runs the summary.