基于优刻得US3+云主机的零中断AI开发流实战
随着Claude Code、OpenAI Codex等Coding Agent工具的普及,越来越多开发任务开始从“人写代码”转向“人给目标、Agent执行”。
但在实际使用过程中,很多开发者会遇到一个共同的问题:Agent的运行环境往往依赖本地电脑。当笔记本休眠、网络中断或设备关机后,正在执行的任务也会随之停止。每次重新启动Agent,都需要重新加载上下文和理解项目状态,影响连续性和执行效率。
一个能够持续在线、保留上下文并支持自动执行的Agent运行环境,会带来更好的协作和开发体验。
一、优刻得US3+云主机:让Agent在云端不间断工作
实用的方案是将Agent的运行环境迁移到云端。
项目文件统一存储在优刻得US3对象存储中,通过挂载方式作为Agent的工作目录;同时使用云主机作为长期在线的执行环境。无论开发者使用哪台设备访问,看到的都是同一份项目数据。代码修改、测试结果、任务记录以及Agent产生的各类文件都会实时保存到对象存储中。
即使关闭浏览器、断开远程连接,云端任务依然可以继续执行。当再次连接时,可以直接查看最新进展,而无需重新启动整个流程。
最终形成的工作流是:
接收任务→读取项目上下文→制定执行计划→修改代码→运行测试→生成结果报告→等待人工确认或继续执行下一步任务。

-
Windows本地代码通过rclone实时或定时同步到US3。
-
Ubuntu云主机通过US3FS把同一个bucket挂载到本地目录/mnt/us3-project。
-
Claude Code在这个目录下工作,所有产物一并存入US3。
-
AstraFlow星图模型服务平台可以直接调用API,让Agent无缝调用。
二、手把手配置教程
1. 创建US3存储空间(Bucket)
- 登录优刻得控制台 → 对象存储US3 → 创建存储空间

b. 记录下:Bucket名称(如agent-workspace)、公钥/私钥(API 密钥管理页获取)

后续rclone和US3FS都需要这2个信息。
2. Windows本地:用rclone同步代码到US3
a. 下载rclone Windows版,解压并把rclone.exe加入PATH

b. 打开cmd或Powershell窗口,输入rclone version验证rclone已配置成功

c. 配置远程连接(选择S3兼容存储),在cmd或Powershell下运行下面的命令,交互式输入:
rclone config
n/s/q> n #创建新的配置文件
name> us3 # 自己起个名字
storage> 4 # 输入数字选择 Amazon S3 Compliant Storage
provider> 47 # 选择 S3 兼容提供商 US3 Object Storage
env_auth> 1 # 不通过环境变量配置AK信息,2是通过环境配置AK信息
access_key_id> access_key #你的公钥(4.1第2点中的公钥)
secret_access_key> secret_access_key #你的私钥(4.1第2点中的私钥)
endpoint> 2 #根据实际情况选择
acl> 1 #默认为private
storage_class> 2 # 标准存储Standard storage class
其他选项一路回车默认,最后确认保存,最后一步选择“q”
如果想要再修改配置文件,Windows系统可以在"C:\Users\换成你的用户名\AppData\Roaming\rclone\rclone.conf"修改rclone.conf文件
比如chunk_size = 8M #当前支持8M
d. 测试连通性(在cmd或Powershell下,后面无单独说明都是在cmd下运行):
rclone ls us3:agent-workspace
2026/05/26 21:20:36 NOTICE: s3: s3 provider "US3" not known - please set correctly
#表示已列出配置文件us3对应的bucket:agent-workspace,当前bucket下没有文件和目录,是一个空目录
e. 同步本地的的项目(以D:\my-project为例):
#首次全量上传
rclone sync D:\my-project us3:agent-workspace/project --progress
#以后每次修改后增量同步(也可以写个bat定时运行)
rclone sync D:\my-project us3:agent-workspace/project --exclude node_modules/
到了这一步,你本地的代码已经“上云”了。
3. Ubuntu云主机:挂载US3到本地目录
a. SSH登录你的Ubuntu云主机(建议2核4G以上),如果没有创建可以在云主机控制台创建
b. 安装US3FS(以amd64为例),下载链接:
curl -o us3fs https://ufile-release.cn-bj.ufileos.com/us3fs/us3fs_2.1.5
# 给予x权限
chmod +x us3fs
# 移动到可执行目录下
sudo mv us3fs /bin/us3fs
c. 配置访问凭证,参考示例:
sudo mkdir -p /etc/us3fs
sudo vi /etc/us3fs/us3fs.yaml
写入你自己的对象存储令牌的key:
access_key: ************************************
secret_key: ************************************
endpoint: internal-cn-wlcb.ufileos.com
hosts: []
#endpoint根据US3所在地域修改为对应域名
地域和域名,建议和云主机在一个地域,这样云主机与对象存储US3可以通过内网互访,速度大大提升。
d. 挂载bucket:
sudo mkdir -p /mnt/us3-project
sudo us3fs -l --uid=1000 --gid=1000 -o allow_other agent-workspace /mnt/us3-project
#如果挂载提示Segmentation fault等错误,可以先用us3fs --update看下是否依然报错,如果还报错可能是us3fs文件错误,需要重新下载
e. 运行df -h看到挂载点即成功,可以看到最下方多了一个1.0P的us3fs

f. 验证:ls /mnt/us3-project/project 应能看到Windows同步上来的文件。

现在Ubuntu和Windows面对的是同一份实时数据*。*
4. 安装LiteLLM并配置模型API(类似CCSwitch)
a. 安装Python环境
sudo apt update
sudo apt install -y python3 python3-pip python3-venv
b. 创建虚拟环境
mkdir ~/litellm
cd ~/litellm
python3 -m venv venv
source venv/bin/activate
c. 安装LiteLLM
pip install "litellm[proxy]==1.88.1"
#验证:
litellm --version
#返回类似:LiteLLM: Current Version = 1.88.1
d. 编辑配置文件,配置模型API
#创建配置文件:
vi ~/litellm/config.yaml
#以Qwen3.7-Max代替claude-opus-4-7为 示例:
model_list:
# ===== Claude 映射 =====
- model_name: claude-opus-4-7
litellm_params:
model: openai/qwen3.7-max
api_base: https://api.modelverse.cn/v1
api_key: aw8Zs66jD534Ec
#api_key: 更换为星途API平台KEY
# 新加坡节点:https://api-sg.umodelverse.ai
# 大陆节点:https://api.modelverse.cn
# 美国节点:https://api-us-ca.umodelverse.ai
e. 启动LiteLLM
source ~/litellm/venv/bin/activate
litellm --config ~/litellm/config.yaml --port 4000
#成功后会看到类似下面的提示:
LiteLLM: Proxy initialized with Config, Set models:
claude-opus-4-7 #实际的模型是国内注流的qwen3.7-max,只是显示名称为claude-opus-4-7
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:4000 (Press CTRL+C to quit)
f. 测试代理
#4.4.5的窗口先不要关闭,新开一个窗口,可以加上 | jq,展示更清晰
curl http://127.0.0.1:4000/v1/models |jq
#返回以下信息:
{
"data": [
{
"id": "qwen3.7-max",
"object": "model",
"created": 1677610602,
"owned_by": "openai"
}
],
"object": "list"
}
g. 将LiteLLM设置为后台服务(可选)
sudo vi /etc/systemd/system/litellm.service
#添加以下内容
[Unit]
Description=LiteLLM Proxy
After=network.target
[Service]
User=ubuntu
WorkingDirectory=/home/ubuntu/litellm
ExecStart=/home/ubuntu/litellm/venv/bin/litellm \
--config /home/ubuntu/litellm/config.yaml \
--port 4000
Restart=always
[Install]
WantedBy=multi-user.target
加载litellm服务
#启动
sudo systemctl daemon-reload
sudo systemctl enable litellm
sudo systemctl start litellm
#查看
systemctl status litellm

5. 安装Claude Code工具,并接入优刻得星图平台API模型
a. 安装Node.js与Claude Code CLI
# 安装必要组件:
sudo apt-get install -y curl
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
sudo apt-get install -y nodejs
# 验证:
node -v
#返回 v24.15.0 或对应版本
npm -v
# 返回 11.12.1 或对应版本
# 安装 Claude Code
sudo npm install -g @anthropic-ai/claude-code@2.1.150
# 验证:
claude --version
# 返回 2.1.150 (Claude Code) 或对应版本,如果使用较新的版本遇到
b. 配置环境变量
从星图控制台-密钥管理-获取API
Claude Code接入指南,编辑配置文件~/.claude/settings.json
# 如果~/.claude目录不存在,可以先创建该目录mkdir -p ~/.claude
{
"env": {
"ANTHROPIC_BASE_URL": "http://127.0.0.1:4000",
"ANTHROPIC_API_KEY": "dummy"
}
}
# dummy 可以随便写;
# 真正的 Key 在 LiteLLM 中配置。
验证:
claude
"Hello, 请简单介绍一下自己"

6. 让Agent “记住”上下文——持久化项目与会话
切换到项目路径,如:/mnt/us3-project,在Claude Code工具中将所有的流程跑完后,再将project-a目录下的文件上传到对象存储
只要项目目录在/mnt/us3-project下,Claude Code的所有工作文件(.claude/ 目录、终端日志、计划文件)都会存入US3。
a. 进入到项目所在目录启动运行:
cd /mnt/us3-project #切换到项目所在目录
claude # 启动Agent
b. 使用Claude Code的 --resume继续上次会话:
当云主机重启或Agent意外退出后,你可以这样回到之前的状态:
cd /mnt/us3-project
claude --resume
Claude Code会自动读取.claude/中的会话记录,接着上次给的指令往下执行。
三、跑一个完整Demo:从需求到代码提交全自动
场景:给Agent 一个任务——“在app.py中增加一个/health健康检查接口,并写单元测试”。
a. 为Agent准备一个简单的Python Flask项目(本地写好然后同步,或直接在云主机创建):
mkdir -p /mnt/us3-project #根据项目情况选择或cd到对应目录
cd /mnt/us3-project
cat > app.py << 'EOF'
from flask import Flask
app = Flask(name)
@app.route('/')
def hello():
return "Hello, Agent!"
if name == 'main':
app.run(host='0.0.0.0', port=5000)
EOF
b. 编写agent规则,CLAUDE.md,将规则放到.claude目录,Claude Agent会自动加载:
你是一个自动运行的coding agent。
工作规则:
1. 优先读取 task.md。
2. 自动分析项目结构。
3. 可以读取、修改、创建文件。
4. 遇到错误时自行修复。
5. 自动运行 pytest。
6. 如果测试失败,继续修改直到全部通过。
7. 不需要询问用户确认。
8. 所有任务完成后生成 report.md。
9. 除非任务全部完成,否则不要停止。
c. 编写任务文件task.md:
# 开发任务
请循环执行:
1. 读取 app.py;
2. 完成需求;
3. 执行 pytest;
4. 如果测试失败:
- 分析错误;
- 修改代码;
- 再次执行 pytest;
5. 重复以上步骤,直到全部测试通过;
6. 最终生成 report.md;
不要询问用户确认。
只有所有测试通过后才结束任务。
d. 启动Agent读任务并执行:
cd /mnt/us3-project/project #切换到项目所在目录
claude #启动claude
在Claude Code界面中,告诉它:
请读取.claude下的CLAUDE.MD,按照其中的规则工作.
Agent 会依次修改代码、编写测试、运行pytest,失败时还会自动修复,直到通过,然后输出report.md。
e. 检查结果:
ls /mnt/us3-project/project
__pycache__ app.py env.txt report.md task.md tests
cat report.md # 查看报告执行情况

f. 提交代码(闭环): 你可以直接在云主机上将代码push到Git仓库(只要项目本身是git管理的),或通过CI/CD发布。Agent也可以在任务中被要求执行git add . && git commit -m "feat: add health check" && git push。
g. 将对象存储的文件拷贝到本地Windows:
#第一次建议使用copy命令
rclone copy us3:agent-workspace/project-a D:\my-project -P
#以后涉及增量再使用sync命令,以下命令供参考:
#rclone sync us3:agent-workspace/project D:\my-project --exclude node_modules/
#可以过滤掉包含“.”开头或者“.swp”、“.swx”结尾的文件
h. 你在Windows上就能看到全部产物,包括Agent的详细报告。

如果项目比较复杂或有非常频繁的读写请求,可以先在云主机的数据盘上创建单独项目目录,执行完成后再把结果上传到对象存储。
四、进阶:用优刻得沙箱服务简化环境搭建(沙箱使用s3fs网络协议)
如果不想手动管理云主机和代理,可以直接用优刻得的Agent沙箱。沙箱里面预置了Claude Code工具并且已经打通了星途模型,只要通过SDK或CLI提交任务就行。
a. 环境配置
export AGENTBOX_API_KEY=your_api_key
b. 安装Python SDK
#目前ubuntu、macOS等不能直接在本地使用pip安装,建议通过虚拟环境安装
python3 -m venv sandbox-env
source sandbox-env/bin/activate
pip install ucloud-sandbox
c. 创建第一个沙箱,示例(Python SDK):
ucloud-sandbox-cli sbx cr claude-code
#根据提示输入控制台的密钥,并回车
Enter API Token:
#输入密钥后即已进入claude-code沙箱环境
d. 进入claude-code沙箱环境,查看系统当前目录结构
#执行df-h看是否当前目录结构
Filesystem Size Used Avail Use% Mounted on
/dev/root 12G 2.1G 9.3G 19% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 1.6G 48K 1.6G 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
e. 安装s3fs
#因系统为最小化安装,也没有vim、nano等工具,所以可以一并安装
sudo apt update && sudo apt install s3fs vim -y
f. 配置密钥,格式为 AccessKeyID:SecretAccessKey
#写入凭证, 文件内容格式:access-token:secret-access-token
sudo vim /root/.passwd-s3fs
#设置权限
sudo chmod 600 /root/.passwd-s3fs
g. 挂载US3对象存储
# 创建目录:
mkdir -p /home/user/us3-project
# 创建一个挂载us3的sh文件,如:mount_s3fs.sh,并添加以下内容:
sudo vim mount_s3fs.sh
sudo s3fs agent-workspace /mnt/us3-project \
-o passwd_file=~/.passwd-s3fs \
-o url=http://internal.s3-cn-wlcb.ufileos.com \
-o use_path_request_style \
-o allow_other \
-o multipart_size=8 \
-o multireq_max=8 \
-o parallel_count=32 \
-o dbglevel=info \
-o curldbg
# 挂载对象存储
bash mount_s3fs.sh #挂载成功 df -h 一下
Filesystem Size Used Avail Use% Mounted on
/dev/root 12G 2.2G 9.3G 19% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 1.6G 48K 1.6G 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
s3fs 16E 0 16E 0% /home/user/us3-project
h. 进入项目空间
cd /home/user/us3-project/project
#可以ls一下当前目录下有哪些文件(根据项目情况下面显示的文件、目录可能不一样)
4913 app.py app.py~ app_py.swo app_py.swp sandbox-env task.md task_md.swp tests venv
i. 启动Claude Code工具,按提示输入星图API平台的KEY
#会看到如下提示:
Enter API Token:
✓ Token saved to environment variable
ℹ Configuring Claude settings...
✓ Updated settings: /root/.claude/settings.json
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Current Configuration:
• Base URL: https://api.modelverse.cn
• Token: az1F3lE8ra...45D8
• Experimental Betas: Disabled
j. 启动任务
/home/user/us3-project 路径下有一个task.md文件,请严格按照 task.md 的要求完成所有步骤,最后生成报告
k. 执行完成
任务结束后可能返回如下所示的信息
cat > report.md << 'MDEOF'
# 执行报告
## 任务来源
`/home/rexwt5/us3-project/project/task.md`
## 任务清单与完成情况
| # | 任务 | 状态 |
|---|------|------|
| 1 | 读取 `app.py` | 完成 |
| 2 | 添加 `/health` 路由,返回 `{"status": "ok"}` 和 200 | 完成 |
| 3 | 创建 `tests/test_health.py` 并编写测试 | 完成 |
| 4 | 运行 pytest 全部通过 | 完成 |
| 5 | 生成 `report.md` | 完成 |
● 任务全部完成。
关键产物
- app.py — 修复了 __name__ 写法并新增 /health 路由(返回 {"status": "ok"}、HTTP 200)
- tests/test_health.py — 3 个 pytest 用例(状态码、content-type、JSON body)
- report.md — 执行报告
pytest 结果:3 passed in 0.10s。
额外说明:原 app.py 存在语法错误(Flask(name) / if name == 'main':),已顺手修正;项目自带的 venv/sandbox-env
为空壳,临时在系统 Python 上安装了 flask 与 pytest 以完成运行。
l. 可以在当前系统,也可以在对象存储控制台看到任务结束后产生的目录和文件

这种方式下,沙箱本身是托管服务,根本不用担心云主机运维,而且模型适配官方已经做好,即开即用。
五、总结
整个方案的精髓在于 “分离关注点” :
-
存储层(US3) 保证代码与上下文永不丢失
-
计算层(云主机/沙箱) 提供 7×24 永不掉线的执行环境
-
模型层(星途 + 代理) 提供稳定、高性价比的 AI 能力
你只需要在Windows上写task.md,偶尔Review结果,剩下的事情全部交给那个住在云上的Agent。真正实现 “你定目标,它出结果”,而不是你替它每次开机。
Tips*:*
如果对成本敏感,可以把云主机设成竞价实例,配合启动脚本自动挂载 US3 并拉起 Agent 会话。
建议对 US3 开启版本控制,这样 Agent 改坏的代码也能随时回滚。
更多推荐
所有评论(0)