dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
DeepSeek Harness Mobile 是一个面向 DeepSeek Harness 的原生 iOS 客户端。它通过 dsh-plugin-mobile-gateway 与 Harness 建立 WebSocket 连接,将工作区、会话、实时回复和 Agent 执行轨迹带到 iPhone,同时延续 DeepSeek WebUI 克制、清晰的视觉语言
简体中文 · English
使用 Kotlin Multiplatform 共享核心逻辑,为 Android 与 iOS 提供原生移动端体验。
通过 Mobile Gateway 在手机、平板和折叠屏设备上访问 DeepSeek Harness 的工作区、实时对话、Agent 轨迹、插件、定时任务与文件。
官方网站:Whaleness
Whaleness 是独立开发的 DeepSeek Harness 第三方原生移动客户端。项目已完成 Kotlin Multiplatform(KMP)架构改造,并同时提供可运行的 Android 与 iOS 应用:
shared 负责跨端协议、状态机、Reducer、投影和同步逻辑,是共享业务状态的唯一来源。androidApp 使用 Kotlin、Jetpack Compose 和 OkHttp 实现 Android 产品能力。DeepSeekHarnessMobile 使用 SwiftUI/UIKit 构建 iOS 界面,并通过 Kotlin/Native framework 接入共享逻辑。两端均通过 dsh-plugin-mobile-gateway 与 Harness 建立 WebSocket 连接。网络、安全存储、文件、图片、生命周期和后台任务由各平台原生实现,业务规则则尽可能收敛到 shared/commonMain。
AppRelease/release-info.json 为准。欢迎加入 Whaleness 公测用户群,交流使用体验、反馈问题并获取支持。使用微信扫码,或保存图片后在微信中识别。
当前二维码于 2026 年 10 月 23 日更新,原图注明 2026 年 10 月 30 日前有效。若已过期,请查看产品页面中的最新群码。
平台/模块 · 当前状态 · 主要实现 KMP shared · 已接入 Android 与 iOS · Gateway 协议、Store/Reducer、Conversation/Trajectory 投影、History 同步、Question/Approval、Session Control、工作区文件状态与代码预览支持 Android · 已实现原生客户端 · Jetpack Compose、OkHttp WebSocket、DataStore(非敏感配置)、Keystore(凭据)、CameraX/ML Kit 扫码、前台服务、附件缓存、文件下载与预览 iOS · 已实现原生客户端 · SwiftUI/UIKit、URLSession WebSocket、UserDefaults(非敏感配置)、Keychain(凭据)、二维码配对、后台执行、附件与工作区文件
Android 与 iOS 使用各自的原生 UI 和平台能力,并不是共享 UI。功能和交互会持续对齐,但个别系统级行为可能因平台限制而不同。
read-only、workspace-write、danger-full-access Harness Agent 权限;这些不是手机本地文件系统权限。截图来自 iOS 版本;Android 使用 Jetpack Compose 实现相应的信息架构和核心流程。新增的语音、文件、字体及 iPad 截图拍摄于 2026 年 10 月 16 日(1.7.6),素材来源见截图说明。
按住说话松手转写,上滑取消 PDF 预览从对话直接查看文件 字体大小跟随系统或手动调整
宽屏首页工作区与会话分栏展示 大屏对话舒适的内容宽度与输入区域 文件预览保留对话上下文 大屏语音输入录音反馈随窗口尺寸适配
工作区首页工作区与最近会话 对话Markdown、代码与工具结果 轨迹时间概览与事件时间线
设置部署默认值与 Gateway 状态 Agent 预设工具、提示词与能力组合 默认模型Provider、模型与思考等级
插件管理查看详情与启用状态 定时任务查看计划与执行情况
更多界面:工作区、轨迹详情与设备配对
切换工作区快速访问不同项目 目录选择浏览并创建工作区 轨迹详情摘要、Token 与内容预览
浅色配对扫码或手动输入 深色配对完整深色模式适配 深色对话阅读、代码与输入面板
DeepSeek Harness
│
dsh-plugin-mobile-gateway
│
WebSocket
┌───────────────┴───────────────┐
│ │
Android OkHttp Transport iOS URLSession GatewayClient
│ │
KMP Gateway Runtime Swift Router / KMP Adapter
│ │
└───────────────┬───────────────┘
│
KMP shared / commonMain
Protocol · Store · Reducer · Projection
History Sync · Question/Approval · Workspace Files
┌───────────────┴───────────────┐
│ │
Jetpack Compose SwiftUI / UIKit
Android UI iOS UIprotocol/:Gateway DTO、JSON 表示与 wire decoder。gateway/:平台传输接口,以及配对、鉴权、请求关联、重连与事件背压策略。Android 使用完整共享 Runtime,OkHttp 只实现底层传输。domain/:Session、Question、Approval 和 Session Control 的 Reducer。projection/:Conversation 与 Trajectory 的增量投影。sync/:History 分页、实时尾部合并和去重。facade/:面向 Swift/Kotlin 平台层的粗粒度 Store、Intent、Event,以及工作区路径、分块顺序、进度与 SHA-256 校验逻辑。共享层不依赖 Compose、SwiftUI、Android Framework 或 Apple UI Framework。iOS 复用共享 Store、Reducer、Projection 和文件状态机,但当前仍由 Swift GatewayClient 负责 WebSocket、连接与重连,再通过 Adapter 将事件送入共享层;它尚未接入完整的 KMP Gateway Runtime。
Android 和 iOS 均在平台侧负责安全存储、图片处理、临时文件落盘、系统分享/打开以及应用生命周期。共享层负责远端文件协议、状态流转、分块一致性和完整性校验,不直接操作平台文件系统。
.
├── shared/ # Kotlin Multiplatform 共享业务模块
│ └── src/
│ ├── commonMain/ # 协议、状态机、投影、同步与 facade
│ └── commonTest/ # 跨平台单元测试
├── androidApp/ # Android 原生应用(Jetpack Compose)
│ └── src/
│ ├── main/ # 产品代码与平台实现
│ ├── test/ # JVM 测试
│ └── androidTest/ # 设备测试
├── DeepSeekHarnessMobile/ # iOS 原生应用(SwiftUI/UIKit)
├── DeepSeekHarnessMobileTests/ # iOS XCTest
├── DeepSeekHarnessMobile.xcodeproj
├── Docs/ # 调研、KMP 迁移与验证文档
└── Design/ # 设计规范与展示素材dsh-plugin-mobile-gateway 0.10.3+ 的 DeepSeek HarnesscompileSdk / targetSdk)ANDROID_HOME 或 ANDROID_SDK_ROOT 指向 Android SDK。./gradlew :androidApp:assembleDebug./gradlew :androidApp:installDebugDshMobile,扫描 WebUI 生成的配对二维码,或手动输入配对信息。Debug APK 位于:
androidApp/build/outputs/apk/debug/androidApp-debug.apk当 Android Emulator 需要访问宿主机的 127.0.0.1:3080 时,可以先执行:
adb reverse tcp:3080 tcp:3080DeepSeekHarnessMobile.xcodeproj。DeepSeekHarnessMobile Scheme 与目标设备。Build KMP Framework 阶段会自动选择并编译对应的 Kotlin/Native framework。无需提前手工构建 framework;如需单独生成 Apple Silicon iOS Simulator framework,可执行:
./gradlew :shared:linkDebugFrameworkIosSimulatorArm64dsh-plugin-mobile-gateway(最低 0.10.3),完整退出并重新启动 dsh web:dsh plugin --profile web add dsh-plugin-mobile-gateway@latest常见地址:
场景 · 地址 iOS Simulator · ws://127.0.0.1:3080/ws/mobile Android Emulator + adb reverse · ws://127.0.0.1:3080/ws/mobile 同一局域网内的真机 · ws://:3081/ws/mobile 公网部署 · wss:///ws/mobile
[!IMPORTANT]
真机不能使用127.0.0.1访问电脑。表中的ws://仅用于受信任的本地开发环境;公网或不可信网络必须使用wss://并正确配置 TLS 与设备鉴权。一次性配对 Token 不应写入日志、Issue 或聊天记录。
[!NOTE]