Replies: 3 comments
|
你的源码定位是对的( npm 上现成的两个
(同一带上还有 披露:这些全是别人的包,不是我的,我一个都没装过,上面只是照 npm 描述转述。装之前建议自己看一眼源码和权限面——尤其第二个带 还有一个装插件本身的坑要先知道:#1697 —— 装任何依赖 这些包的存在,反过来是你提案最好的论据我建议你把它们写进原帖,而不是当成"那就不用提了": 两个独立作者各自实现了同一件事,说明这不是小众需求;而他们都得自己造一条上传通道(因为 这个区分对提案很重要:
你已经把两条路都列出来了,建议把第二条明确成主诉求。 一个相关的、你可能想一起提的事实即使文件能附上去了,模型那边能不能用它是另一回事。这一带最近有几条相关报告:
也就是说,附件这条链路目前在客户端和服务端两侧都有已知缺口。如果你的提案能顺带指出"通用附件需要一条从 composer 到工具的完整路径,而不只是 composer 那一段",会更完整——光能贴上去、模型读不到,用户感受不到差别。 边界与利益相关我们不修 DSH 自家组件—— 利益相关:我维护 pi2dsh(Pi 生态兼容层)。这条不推销——我们不做文件上传,上面那两个上传插件和我们没有任何关系。 |
|
I verified this against current rc.2 source and agree that the missing abstraction is broader than MIME acceptance. The image vocabulary continues past
So widening One additional security gate worth including: parser provenance and truncation must survive replay. For PDF/office/archive inputs, record extractor version, limits, warnings, coordinates, and derived-artifact digest; otherwise the model can appear to cite content that was never extracted. Archive expansion also needs independent member, depth, expanded-byte, and compression-ratio bounds. I turned the current source map, reference design, safe rc.2 workspace workaround, failure router, and fifteen acceptance gates into an independent architecture guide: https://github.com/sandbaseai/deepseek-harness-handbook/blob/main/docs/en/integrations/general-file-attachments.md Affiliation: I maintain this SandBase handbook. It is an independent community project, not official DeepSeek AI documentation. |
|
感谢这么详细的回复,尤其是帮我分清"少支持几个 MIME"和"缺通用附件通道"这两件事的区别。你说得对——我会把诉求从"放宽 模型那边读不读得到,我之前确实没充分意识到。谢谢点出 #4612( 你提到的两个上传包我会按你说的先看源码和权限面,也会注意 #1697 那个"依赖 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Summary
In the DSH web interface (
dsh web),Ctrl+Vpasting a non-image file (e.g..pdf,.xlsx,.docx,.txt,.zip) has no effect — the file "won't go in". Images (.png,.jpg,.webp,.gif) paste fine and appear as attachments. There is no file-upload / file-card affordance for general files either.This blocks a very common workflow: users want to drop a spreadsheet or document on the agent to inspect it.
Expected behavior
Pasting (or dragging) any file should be accepted and attached, not just images. At minimum:
Environment
@deepseek-ai/dshversion:0.1.1-rc.2Root cause (I traced it — saving you time)
The clipboard-file path in the client always routes files into an image-only pipeline.
In
packages/client/ui-conversation(dsh-client-ui-conversation), theonPastehandler does:And
intakeImagesis image-specific:imageLimits.mediaTypes(defined indsh-client-connection/dsh-api-remotes) is limited toimage/png | image/jpeg | image/webp(some places addimage/gif). There is no separate channel or UI for general files — the attachment moduledsh-client-ui-attachmentis likewise image-oriented (onAddImages,MessageImage,ImageLightbox,ComposerAttachments, allimage.*labels).So a non-image file is pulled out of the clipboard but rejected by the image-type check (or simply has no UI to receive it) → appears as "paste had no effect".
Suggested approach
In
onPaste/ the attach path, branch by type:file.typeis inmediaTypes→ current image pipeline (unchanged).*/*).This keeps image behavior intact while adding real file support.
Extra context
This is the same class of issue as the
ApprovalPanelnot rendering full details (private component, compiled-only distribution, nosrcshipped). The client packages ship compiled output only (files: ["lib/index.js", ...], build viatsdown, nosrc/), so there's no clean local override — a first-class, source-level fix is the right path.Thank you!
All reactions