dsh-client-ui-conversation
github.com/deepseek-ai/deepseek-harness
v0.0.1-rc.1
界面与主题
动态执行代码
对话领域:骨架(header/tabs/composer/empty state)、聊天视图(分组步骤摘要流、流式尾部隔离、回合状态)、composer dock(会话统计与输入框粘性固定)、输入 dock(队列行加 todo 计划条)、详情外壳,以及按作用域寻址的 ConversationService。工具呈现属于 `ui-tool`。
作者原文(英文)
Conversation domain: skeleton, ordered chat flow, composer with the Host-backed busy-Enter preference, and details host
中文简介由 DeepSeek 模型翻译,仅供参考。
检测报告
有一定能力。命中了若干能力模式,大多是插件正常工作时会用到的。
1需留意2一般21未命中
高关注需留意一般
能力清单
- 动态执行代码
dynamic-code需留意1 处命中lib/client.js:1730schema.callback = new Function("return " + schema.callback)();- 看 eval / new Function 的入参来自哪里。常量字符串和用户输入是两回事。
- 动态加载模块
dynamic-import一般53 处命中…ient/skeleton/ApprovalPanel.d.ts:12export declare function ApprovalPanel(props: ApprovalComposerProps): import("react").JSX.Element;…ient/chat/AssistantMarkdown.d.ts:18export declare const AssistantMarkdown: import("react").MemoExoticComponent<({ blocks, streaming, interrupted, loadImage……ient/chat/AssistantNodeView.d.ts:3export declare const AssistantNodeView: import("react").MemoExoticComponent<({ node, useTurnData, openFile, loadImage, f……es/client/chat/ChatNodeSeat.d.ts:9export declare const ChatNodeSeat: import("react").MemoExoticComponent<({ nodeKey, selectedCallId, cwd, openFile, inspec…- 动态导入本身无害,但会让依赖关系难以静态审阅。
- 接触凭据或密钥
credentials一般1 处命中README.md:27The chat flow projects consecutive model-retry nodes across retry turns into one stable, muted status row updated to the…- 看它读取哪些凭据、发往哪里。用于登录自己的服务是正常的。
逐条扫描明细
| 能力 | 标识 | 关注度 | 命中次数 |
|---|---|---|---|
| 动态执行代码 | dynamic-code | 需留意 | 1 |
| 动态加载模块 | dynamic-import | 一般 | 53 |
| 接触凭据或密钥 | credentials | 一般 | 1 |
这份报告的口径
扫描读的是包里的源码,全程不执行第三方代码。 本次读了 76 个文件,扫描于 2026-10-14。 命中次数只说明源码里出现过这类调用,不说明行为好坏——一个插件读写文件 500 次和 1 次 都会被记为「读取文件」。这是能力清单,不是信任评分,也不是安全结论: 没扫出来的能力可能只是写法没被规则覆盖。
依赖安全公告
已查询这个插件声明的全部依赖,没有匹配到已公开的安全公告。(含 DSH 框架包在内的 @deepseek-ai/* 不作查询——那是运行时自己的问题,不是插件的。)