工作区同步
把手机上的工作区目录同步到远程服务器或本地某个普通目录。入口在「设置 → 运行环境 → 连接与同步」,页面底部有四个标签页。
这一页和「容器与镜像」的分工
这一页只管连接通道和文件同步。如果你想让 AI 直接把远程服务器当执行环境(命令、文件、终端都在服务器上跑),那是另一件事,见远程 SSH 模式——它会复用这里建好的 SFTP 通道。
连接配置
点右上角 + 新建一个连接通道:
- 协议类型:
SFTP(默认端口 22)、FTP(默认端口 21)或本地。 - 连接名称:别名。
- 主机地址:IP 或域名。选「本地」类型时这里填手机内部存储的目标目录,例如
/storage/emulated/0/AICode/projects。 - 端口 / 用户名 / 认证方式:SFTP 和 FTP 必填。认证方式可以选密码,或者选密钥(从「SSH 密钥」页已添加的私钥里挑,加密私钥可以填口令)。本地类型不需要这些。
- 测试连通性:保存前可以先测一下,本地类型会测目录是否可达。
SSH 密钥与主机指纹
点顶栏的钥匙图标进入,底部两个标签页:
密钥:管理登录用的私钥。点右上角 + 从文件选择器选私钥文件,App 会复制到私有目录并解析出公钥指纹,加密的私钥会标注「需口令」。左滑删除。
指纹:管理已信任的服务器主机指纹。首次连接某台服务器时会弹窗显示密钥类型和 SHA256: 指纹,确认「信任并连接」后保存下来,之后直接放行。如果服务器指纹变了会再次要求确认——这是防中间人攻击的机制,指纹突然变化要当心。左滑删除后下次连接重新确认。
挂载目录
连接通道只是"能连上",还要建立"哪个本地工作区对应哪个远程目录"的映射。点右上角 + :
- 关联连接通道:下拉选一个已建好的连接。
- 远程目标目录:右侧文件夹图标可以打开远程目录浏览器逐级点选。本地类型填根目录下的子目录,通常保持
/。 - 映射到本地工作区:下拉选一个本地工作区(需要先在侧边栏创建)。
- 应用启动时自动连接:打开后会跟随当前工作区——App 启动或切换工作区时,自动连接映射到当前工作区的挂载并同步,同时断开其它工作区的挂载。连接失败会按退避间隔一直重试,关掉开关才停。
保存时如果已存在相同的「通道 + 远程目录 + 工作区」组合,会提示挂载已存在并拦截。
连接成功后卡片上有几个操作:断开连接、上传全部 / 同步全部、下载全部(本地类型没有下载)、连接并同步。列表行左滑可删除。
同步是单向的
自动同步只把本地的改动推到远程(监听本地文件的增删改,连接建立时先全量上传一次),远程目录的变化不会自动拉下来。
需要把远程文件拉到本地时手动点「下载全部」,但要注意这是全量覆盖式拉取:会覆盖本地同名文件(不删除本地多出来的文件),本地没保存的修改可能被覆盖。用之前想清楚。
连接超时是 15 秒,主机不可达时会快速报错而不是一直等。已连接的挂载每 30 秒探活一次,断线后按 5 秒、10 秒、20 秒、40 秒、60 秒的间隔自动重连并恢复同步。本地类型没有网络连接,不参与探活。
内置 FTP 服务端
手机自己开一个 FTP 服务,方便用电脑管理手机上的项目。
手机和电脑要连同一个 WiFi。开启后界面会显示 FTP 地址(如 ftp://192.168.1.100:2121,点地址可复制),在电脑的文件资源管理器或 FileZilla 里访问即可,能管理 projects/ 下的全部项目。
可配置的参数有监听端口、登录用户名、登录密码、是否允许匿名访问、是否开机自启,改完点底部「保存配置」。
注意安全
允许匿名访问意味着同一网络下的任何设备都能读写你的项目文件。在公共 WiFi 下不要开匿名访问,用完建议关掉服务。
同步设置
- 遵循 .gitignore 规则:打开后自动读取项目根目录的
.gitignore过滤要同步的文件。 - 单次最大同步队列数量:防止一次性改动大量文件时把服务端打爆,超出的操作会排队分批执行。
另外同步引擎始终会忽略常见的构建和缓存目录(node_modules、.git、build、dist 等),不用手动配置。
改完点底部「保存设置」生效。