dsh-at-file
FSMargoo/dsh-at-fileCodex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。
**DeepSeek Chat(chat.deepseek.com)同款附件**:回形针上传按钮、240×64 DS 风格文件卡片(官方彩色文档图标,从 DS 前端 bundle 提取)、拖拽上传、文本提取(PDF/DOCX/XLSX/TXT)注入消息、对话流中渲染真实附件卡片(自定义 user 渲染器)且模型读取完整内容。
DeepSeek Chat(chat.deepseek.com)同款附件渲染样式 —— 上传按钮、文件卡片、图标、消息内附件展示,全部一比一复刻官方前端(图标与样式直接提取自 chat.deepseek.com 前端 bundle)。DeepSeek Harness 插件(dual-face bundle)。
IconPaperclipOutline16 图标,点击选择任意文档/图片(多选),tooltip「上传文档或图片(仅文本提取)」DS_ATTACH_MAX_CHARS 可调;在段落边界截断,不切断句子)DEEPEYE_API_KEY / BOOK_OCR_API_KEY 环境变量)【附件】名\n【文件大小】N\n【文件内容】…【文件内容结束】),模型读到完整内容# 从 GitHub
dsh plugin --profile web add github:wqx-txdsyl/dsh-ds-attach
# 或本地路径
dsh plugin --profile web add <本目录绝对路径>
重启 dsh web 生效。
pdfjs-dist / mammoth / xlsx(纯 JS,无原生编译)。安装插件时若提示 allowBuilds,按提示添加即可(这些库无编译脚本,通常无需)。
/ds-attach/upload(base64 接收 + 落盘 + 文本提取 + 扫描 PDF OCR)、/ds-attach/file(回读)、/ds-attach/meta(元信息)$DSH_HOME/ds-attach/<sessionId>/,会话隔离,路径穿越防护DEEPEYE_API_KEY 或 BOOK_OCR_API_KEY 环境变量(智谱 glm-4v-flash,baseUrl 默认 https://open.bigmodel.cn/api/paas/v4);未配置 key 时才显示「未提取到文本」
DS_ATTACH_FORCE_OCR=1 强制 OCR(注意:整本书逐页识别,可能需数分钟);DS_ATTACH_TEXTLAYER_ONLY=1 禁用 OCRBOOK_OCR_SCALE(渲染分辨率倍数,默认 3,越高字形越清晰)、BOOK_OCR_CONCURRENCY(并行页数,默认 2)、BOOK_OCR_CROP_TOP / BOOK_OCR_CROP_BOTTOM(OCR 前裁剪页眉页脚区域,页面高度比例,默认 0.07/0.08,设 0 关闭)、BOOK_OCR_MODEL / BOOK_OCR_BASE_URL / BOOK_OCR_MAX_TOKENS / BOOK_OCR_TIMEOUT_MSMIT