# @computesdk/mosaic 中文文档

规范地址：https://npmcn.com/package/%40computesdk/mosaic/

版本：0\.1\.23
npm 元数据更新时间：2026-11-06T13:39:20.551Z
中文译文更新时间：2026-11-10T14:21:50.215Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40computesdk/mosaic
原文对照：https://npmcn.com/package/%40computesdk/mosaic/?lang=original
项目主页：https://www.mosaicos.com/
源码仓库：https://github.com/computesdk/computesdk

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：148 kB，9 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：2 个
- 首次发布：2026-08-05T18:12:15.799Z
- 最新版本发布：2026-11-06T13:39:20.363Z
- 近 30 天下载量：15138（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：23（近 12 个月 23 个）

## 中文简介

Mosaic 计算SDK的提供者 - 以烟花为主的沙盒环境

## 安装

```sh
npm install @computesdk/mosaic
```

也可以使用：`pnpm add @computesdk/mosaic`、`yarn add @computesdk/mosaic`、`bun add @computesdk/mosaic`

## README

# @ computesdk/ mosaic (帮助)

计算SDK的 Mosaic 提供者 。 Mosaic为以火花为主的沙盒环境提供了命令执行,工作空间文件系统,预览URL,快照,以及从容器图像所构建的环境.

## 安装

```bash
npm install computesdk @computesdk/mosaic
```

## 快开始

```typescript
import { compute } from 'computesdk';
import { mosaic } from '@computesdk/mosaic';

compute.setConfig({
  provider: mosaic({
    baseUrl: process.env.MOSAIC_API_URL,
    apiKey: process.env.MOSAIC_API_TOKEN,
  }),
});

const sandbox = await compute.instances.create({ templateId: 'node-20' });

await sandbox.filesystem.writeFile('/workspace/server.js', 'require("http").createServer((_, r) => r.end("ok")).listen(3000)');
await sandbox.runCommand('node /workspace/server.js', { background: true });
console.log(await sandbox.getUrl({ port: 3000 }));

await sandbox.destroy();
```

提供者还读到 `MOSAIC_API_URL` 财务报告和审定财务报表 `MOSAIC_API_TOKEN` 当这些值从配置中删除时. `baseUrl` 应当指出Mosaic API的部署,以及 `apiKey` 以无记名的迹象形式发出的.

## 配置

```typescript
interface MosaicConfig {
  baseUrl?: string;
  apiKey?: string;
  template?: string;
  memoryMb?: number;
  vcpu?: number;
  requestTimeoutMs?: number;
  /** Outbound network access. On by default. */
  networkEnabled?: boolean;
  /** Lifetime of a URL from getUrl, in seconds. Defaults to 3600. */
  previewExpiresInSeconds?: number;
}
```

单放箱 `templateId`, (中文(简体) ), `runtime`, (中文(简体) ), `memoryMb`, (中文(简体) ), `memoryMiB`, (中文(简体) ), `vcpus`, (中文(简体) ), `cpus`,以及 `metadata` 选项覆盖提供者默认值.

## 模板、快照和图像

`node-20` 财务报告和审定财务报表 `python-3.11` 是Mosaic的股票模板。 其他一切——a `templateId` 这不是股票,a `snapshotId`,或一个 `image` ——是您自己的环境之一,通过id或您给它取的名字进行处理:

```typescript
const provider = mosaic({});

// Build an environment from any linux/amd64 registry image (minutes, once).
await provider.template.create({ name: 'my-env', image: 'python:3.12-slim' });

// Sandboxes from it restore in about a second, like any other template.
const sandbox = await compute.instances.create({ templateId: 'my-env' });

// Or checkpoint a sandbox you have already set up.
const snapshot = await provider.snapshot.create(sandbox.instanceId, { name: 'my-toolchain' });
await compute.instances.create({ snapshotId: 'my-toolchain' });
```

`template.create` 接受 `image` 加可选 `retentionSeconds` 财务报告和审定财务报表 `registryUsername`编号 :`registryPassword` 一个私人形象。 登记册证书用于这一拉动,从未储存.

## 支助行动

| 方法 | 支助 | 页:1 |
| --- | --- | --- |
| `create` | ✅ | 库存模板、快照或图像环境;资源和元数据覆盖. |
| `getById` | ✅ | 回返 `null` 当找不到沙盒时. |
| `list` | ✅ | 列出 API 令牌可见的沙盒 . |
| `destroy` | ✅ | 缺少沙盒的同上. |
| `runCommand` | ✅ | 工作目录,环境,超时,以及背景执行. |
| `getInfo` | ✅ | 返回生命周期状态和资源元数据. |
| `getUrl` | ✅ | 终止 HTTPS 为来宾端口预览 URL . |
| `filesystem` | ✅ | 读取,写出,mkdir,读出,存在,去除. |
| `snapshot` | ✅ | 创建,列表,并删除;可以名取名并恢复快照. |
| `template` | ✅ | 从容器图像中构建、列出和删除环境. |

## 页:1

-   `background: true` 通过 shell 进程级别发射命令,因此一个dev 服务器比启动它的请求有效,而沙盒仍然可以被暂停. 回来的 `stdout` 是贝壳工作编号.
-   文件系统在内部调用 `/workspace` 使用 Mosaic 二进制安全文件 API;其外出路径会倒回外壳.
-   图像必须是 `linux/amd64` 并包含 `/bin/sh`,所以不动和刮伤的图像被拒绝.
-   Mosaic的边缘为HTTPS上空提供预览; `getUrl` 拒绝任何其他协议.

## 许可证

麻省理工学院

## 常见问题

### @computesdk/mosaic 是什么？

Mosaic 计算SDK的提供者 - 以烟花为主的沙盒环境

### 如何安装 @computesdk/mosaic？

在项目目录运行 npm install @computesdk/mosaic，或使用 pnpm add / yarn add / bun add。

### @computesdk/mosaic 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @computesdk/mosaic 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @computesdk/mosaic 可以商用吗？

@computesdk/mosaic 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @computesdk/mosaic 的下载量有多少？

根据 npm 官方下载统计，@computesdk/mosaic 在 2026/10/11 – 2026/11/09 这 30 天内被下载 15,138 次，日均约 505 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @computesdk/mosaic 还在维护吗？

最新版本 0\.1\.23 发布于 2026/11/06（4 天前）；至今共发布 23 个版本，其中过去 12 个月发布了 23 个；首次发布于 2026/08/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

