← 返回列表
未验证
在手机上审批工具调用,离线运行编码代理
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/17 · 已提供中文文档
一个由官方 DeepSeek Harness 驱动的本地优先 Android 编码代理
综合分
26.9
GitHub 分
26.9
用户评分
—
★ Stars
0
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add Very12345/sai该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
sai sai 是一个基于 GPLv3 的 Android 编码代理,围绕本地工作区设计。它的名字将 AI 与 sail(帆)结合在一起:一个紧凑的代理,旨在从手机、兼容 Debian/PRoot 的运行时、显式工具审批以及自带模型 API 凭据出发推动工作向前。 当前实现(1.3.1 Preview 2 / runtime r58) - sai 现在提供三个真正的 Harness 客户端,而不是重新实现它们的代理循环:固定版本的 DeepSeek Harness 0.1.0-rc.6、通过 codex app-server 使用的官方 Codex,以及通过其 匹配的 Agent SDK/CLI 协议使用的 Claude Code。Node 24.19.0、Codex 0.147.0 和 Claude Code 2.1.233 都包含在 经过验证的离线运行时中;每个客户端都保留其原生项目、历史记录、命令和审批。 - Android 项目、模型和旧版对话可以迁移,而不会暴露凭据。DSH 通过 Android Keystore 凭据插件解析 提供方引用,旧的 Kotlin 循环不再 接收主 UI、语音、桌面或诊断任务。 - 第一方能力以单独版本化的 DSH 包形式位于 dsh-plugins/ 中:UI、Android、 语音、模型、请求防护、GitHub、市场、宠物、工件和旧版导入。第三方插件 发现会读取维护中的 awesome-dsh-plugin 目录,而 sai 仍会自行执行其包、路径、生命周期脚本和权限预检。 - 两个固定版本的社区优化预设已预安装,但绝不会强制应用于会话: Anchored Standard 用于与 Minimal 对齐的首轮锚定,Router Standard 用于 任务感知的 spec/react/weak 路由(包括 Flash 专用的 weak persona)。两者都可从扩展中心移除 并重新安装;该套件的无限制运行时注入器未被打包。 - DSH 本地源受随机 HttpOnly 会话 cookie、经过身份验证的健康检查 和白名单 Android 桥接保护;不暴露通用 JavaScript 接口。 - 面向 Android 10 及更高版本的原生 Kotlin 和 Jetpack Compose UI。 - DSH 事件溯源会话,支持引导、审批、压缩和后台恢复。 - OpenAI Responses、OpenAI 兼容 Chat Completions、Anthropic 兼容 和 Gemini 协议适配器。 - 多项目和多会话工作区 UI、结构化事件渲染、 可折叠编辑器、附件来源选择、ZIP 项目导入、Git 导入检查点、文件工具、补丁预览、命令风险分类 以及可恢复作业。 - Room v3 提供方配置文件,每个提供方支持多个模型、加密 API 密钥、模型发现/手动模型、推理控制以及任务级使用情况 报告。DeepSeek 的价格和总额以人民币显示。 - 一个可运行的扩展中心,用于已安装扩展、发现、MCP、 Skills ZIP/Git 导入、Hooks、插件清单、静态诊断、实时 MCP 探测、内置推荐、回滚元数据以及安全的默认禁用 安装。 - DSH 原生仅追加事件、Steer 输入、上下文压缩、代码工具、 Git 操作、浏览器能力以及显式语音请求。 - 按键说话输入,支持发送/麦克风状态合并、上滑取消、 实时部分字幕,以及一个可选、可独立卸载的语音包, 使用流式 Zipformer 加 Paraformer 最终校正。语音通话模式支持简短的 speak 摘要和 Steer 式打断。 - 仅限 Agent 使用的 WebView 环境,具有会过期的 DOM 节点标识符、 observe/click/input/select/submit/navigation/screenshot 操作,且不向网页暴露 任何 JavaScript 接口。 - 一个 Tauri 2 Windows 配套应用,支持二维码配对、固定证书的 TLS WebSocket、X25519/HKDF/AES-GCM 应用加密、项目/会话列表、 冲突安全的文本编辑、基础 Agent 对话,以及双向源格式 DSH/Codex/Claude 会话 同步,并带有 SHA-256 冲突检查。Codex 和 Claude 同步到其原生桌面会话根目录; DSH 接受显式的桌面会话目录。冲突会被报告,而不是被覆盖。桌面请求 不能代表手机批准危险操作。 - 适用于 ARM64 和 x86_64 的 ABI 匹配 PRoot/loader 库、原生 forkpty 桥接,以及交互式终端界面。 - 离线捆绑的 GitHub CLI 2.97.0(适用于 ARM64/x86_64),支持浏览器设备登录 和可选的高级 Token 输入。两条路径都会将凭据迁移到 Android Keystore,擦除临时 gh 配置,并仅将 GH_TOKEN 注入 到单个受信任的子进程中。 - 用于模型 API、GitHub、MCP/Skill 目录的共享请求保护层: 有界并发、GitHub 变更串行化、Retry-After 处理、 幂等请求的指数退避,以及主机冷却。 - dsh-plugin/ 是一个可安装的 DeepSeek Harness 捆绑包,暴露一个稳定的 sai_mobile 桥接工具,同时将所有 Android 审批保留在手机上。 - 基础 Debian 13 运行时、Git、GitHub CLI、Node 24 和固定版本的 DSH 已捆绑, 以便通过 SHA-256 校验实现离线首次启动。可选语言工具链 和可独立卸载的语音包仍为单独下载。 - 运行时激活是原子的。先前已验证的 DSH 闭包仍可从 故障屏幕使用;回滚会在应用重启期间保持固定,直到用户 显式恢复 APK 捆绑的运行时。 提供方 harness、GUI、持久化、审批系统、原生 PRoot 运行时、 PTY 桥接和 rootfs 安装器共同构建为 ARM64 或 x86_64 APK。 原生构件可通过 native/README.md 中记录的固定暂存或从源码 工作流复现。1.2.0 preview 6 ARM64 构建旨在用于 vivo X200s 级设备上的就地验证,且无需清除应用数据。它 包含紧凑的双行编辑器、画布式 PTY 终端、单实例 任务宠物、设置搜索以及完整的应用主题。 desktop 目录包含 Tauri 2 配套程序及其安全说明。 加密的实时会话和 Harness 对话同步已实现。自动 mDNS 重连 和持久化的 Windows 凭据管理器身份仍被列为 下一个连接加固里程碑;目前桌面端重启需要 重新扫描二维码。 网站与下载 响应式产品网站位于 site/,由 GitHub Pages 在每次推送到 main 时部署。它介绍了 Android 应用和 Windows 配套程序,并在运行时根据最新的 GitHub Release 解析其下载按钮。 推送诸如 v1.2.0-dsh-preview.2 的版本标签会运行统一发布工作流。它会 测试并打包 ARM64/x86_64 Android 构建,构建 Windows NSIS 安装程序,创建可选的 sai-voice-pack-zh-en.apk,生成 SHA256SUMS.txt、CycloneDX SBOM 和许可证声明,并将所有输出 发布在一个 Release 中。两个特定 ABI 的 DSH Runtime Pack 与 一个分离的 Ed25519 签名一同发布,因此运行时和 Android 外壳拥有各自独立的 更新产物。 从预览版 6 开始,Android 应用每天检查一次 GitHub Releases,并 可以自行下载正确的 ABI APK。它会验证 SHA256SUMS.txt,并要求 APK 签名证书与当前已安装的 sai 匹配,然后才会打开 Android 的系统安装程序。更新绝不会静默安装。 构建 该项目固定使用 Android Gradle Plugin 9.2.0、Gradle 9.4.1、Kotlin 2.3.21、 compile SDK 37、target SDK 36 和 minimum SDK 29。在 local.properties 中设置 sdk.dir,然后运行 scripts/build.ps1。 所有大型开发数据都被重定向到系统盘之外: - Android Studio:D:\Code\Android Studio - Android SDK/NDK:D:\Code\Android\Sdk - JDK 17:D:\Code\Java\jdk-17.0.20+8 - AVD 镜像:D:\Code\Android\Avd - Gradle 缓存和发行版:D:\Code\GradleHome - Android Studio 索引和插件:D:\Code\Android\StudioData 使用 scripts/start-android-studio.ps1,以便 IDE 也继承这些路径。 更多细节见 docs/ARCHITECTURE.md 和 docs/BUILDING.md。 安全边界 PRoot 提供 Linux 用户空间兼容性,而非 Docker 级别的隔离。 请勿执行不受信任的仓库或扩展。提供商密钥保存在 由 Android Keystore 支持的加密存储中,默认情况下绝不会注入到 shell 环境中。
同作者(Very12345)的其他插件
扫码进群