fish-pocket

agent
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Run DeepSeek Harness on iPhone and iPad, with a fully native SwiftUI interface. No computer, no server. 在 iPhone 和 iPad 上本机运行 DeepSeek Harness,界面完全原生。

README.md

Fish Pocket 吉祥物:眨眼笑的鲸鱼娘大肥鱼

Fish Pocket

在 iPhone 和 iPad 上本机运行 DeepSeek Harness,界面完全原生

不连电脑,不连服务器,不是网页套壳。引擎就跑在 App 里,每个页面都用 SwiftUI 重写。

如果你也想把大肥鱼装进口袋,加入 TestFlight 公测,再点个 ⭐ 支持一下吧。

English

https://github.com/user-attachments/assets/d149b48d-ef15-4ba7-9fc3-2c627ea66ec0

iOS

工具详情:命令和真实输出 iPhone 上的终端:node 和 git 都在本机运行 原生插件管理 灵动岛显示任务进度

iPad

iPad 横屏:侧栏、对话和右侧工作台同屏

能做什么

  • 完全原生的界面: 对话、审批、工作台、插件和设置都用 SwiftUI 重写,交互按 iOS 习惯设计,不是把网页塞进 WebView。支持深色模式,可以跟随系统,也可以在设置里手动切换。官方 Web UI 也保留着,需要时可以在设置里打开。
  • 完整的 Agent: 对话、工具调用、文件编辑、搜索、计划模式和审批,功能对齐官方 Web UI。
  • 真能用的终端: 内置 bash、node、pnpm、git,还有 rg、jq、curl、sed、awk 等常用命令。
  • 内置 Git: 基于静态链接的 libgit2,不靠子进程。clone、commit、branch、merge、stash、pull、push 等日常操作都能用,输出和真 git 一致,Agent 照常读懂。私有仓库用 HTTPS 加 Token 认证。
  • DSH 插件生态: 从 npm 安装纯 JavaScript 插件,手机上直接启用。
  • 工作台: 终端、文件预览、内置浏览器和改动查看都放在一个面板里。
  • iOS 专属体验: 灵动岛和锁屏 Live Activity,切到后台任务也能继续。
  • iPad 适配: 常驻侧栏、右侧工作台、多窗口、拖放文件,外接键盘支持常用快捷键。
  • 更私密: 会话和工作区留在设备上。

模型调用仍然需要联网,用 DeepSeek 账号或 API Key 都可以。

和其他方案的区别

Fish Pocket 远程客户端 手机里跑网页版 iOS 上的 Linux 模拟器(iSH、UTM SE)
引擎在哪里 手机 电脑或服务器 手机 手机
界面 完全原生 SwiftUI 看具体项目 官方 Web UI 终端或官方 Web UI
电脑要开着吗 不用 要 不用 不用
灵动岛和锁屏状态 有 看具体项目 看具体项目 没有
完整的 Linux 工具 没有,只有内置命令和 Node 有 看具体项目 有
运行速度 Node 原生运行,比桌面慢数倍 电脑原生速度 看具体项目 特别慢,CPU 指令要逐条解释执行

快速开始

直接安装:在 iPhone 或 iPad 上打开 TestFlight 公测链接,需要 iOS 17 或更高版本。

自己编译:你需要 macOS、Xcode 26、Node 24 和 xcodegen,构建 libgit2 还需要 cmake 或 uv。

git clone https://github.com/imsai-sh/fish-pocket.git
cd fish-pocket && scripts/run-sim.sh

脚本会自动下载 nodejs-mobile、构建 libgit2、组装引擎,然后装到模拟器上运行。默认设备是 iPhone 17 Pro,可以用 SIM_DEVICE 指定。

想装到真机上,先把 app/project.yml 和 scripts/run-device.sh 里的 com.wsw.dsh-ios 换成你自己的 Bundle ID,再运行:

DEVELOPMENT_TEAM=<你的团队 ID> scripts/run-device.sh

怎么做到的

iOS 不允许 App 创建子进程,也不允许运行下载的二进制。所以这里不模拟 Linux 虚拟机,而是把 Node 嵌进 App,再用 DSH 自己的服务接缝换掉“执行世界”。引擎文件一行都没改。

Fish Pocket 架构:SwiftUI 界面通过本地 HTTP 连接 App 内的 DSH 引擎,引擎再把 bash、node、git 和原生 addon 分别交给 just-bash、Worker 线程、libgit2 和纯 JS 替身

路线图

  • 完善第三方插件支持
  • bash 解释器移出引擎线程

参与贡献

欢迎提 issue 和 PR,让你的 Agent 看 CONTRIBUTING.md。

致谢

特别感谢 DSH Go,是它启发我们做了这个 iOS 版本。

Fish Pocket 还站在这些优秀项目的肩膀上。

直接使用:

参考过的思路:

  • dsh-mobile:DSH 的远程访问方案
  • a-Shell:证明了 iOS 上可以有真正好用的本地终端

也感谢 DSH 社区的朋友们,“大肥鱼”这个外号来自大家的二创。吉祥物鲸鱼娘的原始角色来自上善无形,女仆版二次设计来自 ZipZipPipe。第三方许可证见 THIRD_PARTY_NOTICES.md。

作者

由 sai 开发,更多内容见个人主页。

我的其他开源项目:

许可证

代码使用 MIT。

吉祥物图片(App 图标、启动图和 README 头图)不适用 MIT,它们基于他人作品,按 CC BY-NC-SA 4.0 使用,不可商用。如果你要商用这份代码,请先换掉这些图片,详见 THIRD_PARTY_NOTICES.md。


这是独立的社区项目,与深度求索(DeepSeek)不存在隶属、合作、授权或背书关系。“大肥鱼”是社区对 DeepSeek 的昵称。吉祥物基于社区二创的鲸鱼娘形象,用 AI 重新生成了表情,原形象版权归上善无形和 ZipZipPipe,没有使用 DeepSeek 的 Logo。

Yorumlar (0)

Sonuc bulunamadi