@ computesdk/ 打开计算机
ComputeSDK的OpenComputer提供者 - 创建持久云VM,运行命令,读取/写入文件,曝光预览URL,并通过ComputeSDK接口管理检查点.
安装
npm install computesdk @computesdk/opencomputer
设置
创建 OpenComputer API 密钥并设定 :
export OPENCOMPUTER_API_KEY=your_api_key_here
可选择地覆盖 API URL :
export OPENCOMPUTER_API_URL=https://app.opencomputer.dev
快速启动
import { compute } from 'computesdk';
import { opencomputer } from '@computesdk/opencomputer';
compute.setConfig({
provider: opencomputer({ apiKey: process.env.OPENCOMPUTER_API_KEY }),
});
const sandbox = await compute.instances.create({ templateId: 'base' });
const result = await sandbox.runCommand('echo "Hello from OpenComputer"');
console.log(result.stdout);
await sandbox.filesystem.writeFile('/tmp/hello.txt', 'Hello ComputeSDK');
console.log(await sandbox.filesystem.readFile('/tmp/hello.txt'));
const url = await sandbox.getUrl({ port: 3000 });
console.log(url);
await sandbox.destroy();
配置
interface OpenComputerConfig {
apiKey?: string;
apiUrl?: string;
template?: string;
timeout?: number;
envs?: Record<string, string>;
metadata?: Record<string, string>;
cpuCount?: number;
memoryMB?: number;
diskMB?: number;
secretStore?: string;
burst?: boolean;
previewAuth?: { scheme?: 'bearer'; token?: 'auto' | string };
}
timeout 使用计算SDK的毫秒常规并被转换为OpenComputer以秒为基础的API.
特征
- 通过 OpenComputer exec 命令执行
- 文件系统读取、写入、 mkdir、 列表、 存在、 删除
- Sandbox 创建, 通过 ID 重新连接, 并销毁
- 预览沙盒端口的 URL
- 通过计算SDK快照检查点
抓图
开放式计算机检查站被限制在源沙箱内。 此提供者返回窗体中的快照ID instanceId:checkpointId 因此计算SDK可以在以后删除检查点.
const sandbox = await compute.instances.create();
const snapshot = await compute.snapshot.create(sandbox.instanceId, {
name: 'ready-state',
});
const clone = await compute.instances.create({ snapshotId: snapshot.id });
await compute.snapshot.delete(snapshot.id);
await clone.destroy();
await sandbox.destroy();
您也可以通过原始的 OpenComputer 检查点ID compute.instances.create({ snapshotId }) 当你只需要叉出它.
快照默认为打开计算机 disk_only 检查站 promoteToFull: true覆盖 metadata: { kind: 'full' } 或者说 metadata: { promoteToFull: false } 需要的时候.