# @appsemble/cli 中文文档

规范地址：https://npmcn.com/package/%40appsemble/cli/

版本：0\.40\.9
npm 元数据更新时间：2026-10-29T22:56:47.153Z
中文译文更新时间：2026-11-06T12:26:55.857Z
软件包许可：LGPL-3\.0-only

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

原始 npm 页面：https://www.npmjs.com/package/%40appsemble/cli
原文对照：https://npmcn.com/package/%40appsemble/cli/?lang=original
项目主页：https://appsemble.app/
源码仓库：https://gitlab.com/appsemble/appsemble

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

- 包体积（解压后）：298 kB，182 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=24
- 运行依赖：32 个
- 首次发布：2018-01-19T09:25:25.277Z
- 最新版本发布：2026-10-29T22:56:46.802Z
- 近 30 天下载量：6451（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：370（近 12 个月 62 个）

## 中文简介

用 Appsemble 应用程序和块开发的 CLI

## 安装

```sh
npm install @appsemble/cli
```

也可以使用：`pnpm add @appsemble/cli`、`yarn add @appsemble/cli`、`bun add @appsemble/cli`

## README

# ![](https://gitlab.com/appsemble/appsemble/-/raw/0.40.9/config/assets/logo.svg) 应用 CLI

> 管理命令行的应用程序和块 .

[![npm](https://img.shields.io/npm/v/@appsemble/cli)](https://www.npmjs.com/package/@appsemble/cli) [![GitLab CI](https://gitlab.com/appsemble/appsemble/badges/0.40.9/pipeline.svg)](https://gitlab.com/appsemble/appsemble/-/releases/0.40.9) [![Prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg)](https://prettier.io/)

## 目录

-   [安装](https://npmcn.com/package/%40appsemble/cli/#readme-installation)
-   [使用量](https://npmcn.com/package/%40appsemble/cli/#readme-usage)
    -   [认证](https://npmcn.com/package/%40appsemble/cli/#readme-authentication)
    -   [组织](https://npmcn.com/package/%40appsemble/cli/#readme-organizations)
    -   [应用程序](https://npmcn.com/package/%40appsemble/cli/#readme-apps)
    -   [块](https://npmcn.com/package/%40appsemble/cli/#readme-blocks)
    -   [组](https://npmcn.com/package/%40appsemble/cli/#readme-groups)
    -   [资产](https://npmcn.com/package/%40appsemble/cli/#readme-assets)
    -   [资源](https://npmcn.com/package/%40appsemble/cli/#readme-resources)
    -   [备份恢复](https://npmcn.com/package/%40appsemble/cli/#readme-backup-restore)
    -   [连续工作](https://npmcn.com/package/%40appsemble/cli/#readme-cronjobs)
-   [许可证](https://npmcn.com/package/%40appsemble/cli/#readme-license)

## 安装

```sh
npm install @appsemble/cli
```

## 使用量

通过运行以下命令可以实现完整的功能列表:

```sh
appsemble --help
```

每个子命令也支持 `--help` 旗帜.

### 认证

Appsemble CLI使用OAuth2客户端认证到Appsemble服务器.

要登录, 运行以下命令并遵循输出中的指令 :

```sh
appsemble login
```

要登录, 请运行以下命令并选择要删除的客户端证书 :

```sh
apsemble logout
```

应用 CLI 还支持使用 `APPSEMBLE_CLIENT_CREDENTIALS` 环境 变量。 这对自动化大多有用.

### 组织

应用CLI可以用来创建和更新组织. 例如:

```sh
appsemble organization create my-organization --name 'My Organization' --icon icon.png
```

### 应用程序

Appsemble CLI 允许您将 Appsemble 应用程序拖入标准 Appsemble 项目布局. 命令后再接一系列交互式问题. 您也可以通过数值作为 参数.

```sh
appsemble app create
```

Appsemble CLI可用于创建,导出,导入并更新应用. 例如,创建 应用程序在 `apps/my-app` 目录, 运行 :

```sh
appsemble app publish apps/my-app
```

同样,为了使用应用程序目录更新应用程序,运行以下命令:

```sh
appsemble app update --id <app-id> <path/to/updated app>.
```

如果您想要更新应用程序的设置, 请运行以下命令 :

```sh
appsemble app patch --id <app-id>
```

使用 `--help` 带有上述命令的旗帜以查看支持的参数.

* * *

**\\ N注**

> 这个 `app patch` 命令支持更新 `locked` 应用程序的属性,锁定的属性是 在其它属性之前更新。 如果您设置锁定属性为 `fullLock`,任何其他更改 除非您正在使用,否则将不会应用 `--force` 旗帜.

* * *

要使用 CLI 删除应用程序,使用以下命令:

```sh
appsemble app delete --id <appId>
```

要导出一个app作为zip文件, 请运行如下 :

```sh
appsemble app export --id <app-id>
```

此命令的支持参数是 `resources`, (中文(简体) ), `assets` 财务报告和审定财务报表 `path`资源用于 指定是否在导出文件中包含资源,同样也适用于资产和 路径是要将已下载文件放入文件夹的路径。 默认路径是 `./apps`,资源和资产违约 `false`。 。 。 .

要从zip文件中导入应用程序,请使用以下命令:

```sh
appsemble app import <path-of-zip-file> --organization <organizationId>
```

为了更深入地解释如何建造应用软件,请使用我们 [应用程序构建指南](https://appsemble.app/docs/guides)。 。 。 .

### 块

Appsemble CLI 允许您将 Appsemble 块拖入标准 Appsemble 项目 设置。 命令后再接一系列交互式问题.

```sh
appsemble block create
```

虽然我们不建议在 生产)相貌块. 例如,在 `blocks` 目录, 运行 :

```sh
appsemble block publish blocks/*
```

或发布位于其他目录中的单个块,运行

```sh
appsemble block publish path/to/block/directory
```

块如果没有被任何应用程序使用,可以被删除. 要删除块, 请运行

```sh
appsemble block delete <block-name:block-version>
```

组织 id 可以作为论据(默认为“应用”).

要进一步了解与块相关的命令, 请运行

```sh
appsemble block --help
```

构件用途 [![](https://avatars.githubusercontent.com/u/2105791?s=16) 网络软件包](https://webpack.js.org/)。用于 在此安装额外的依赖 [`webpack`](https://www.npmjs.com/package/webpack/v/4.44.1) 财务报告和审定财务报表 [`@appsemble/webpack-config`](https://www.npmjs.com/package/@appsemble/webpack-config)

```sh
npm install webpack@webpack-4 @appsemble/webpack-config
```

为了更深入地解释如何建造应用软件,请使用我们 [块开发指南](https://appsemble.app/docs/development/developing-blocks)。 。 。 .

### 组

Appsemble CLI可以用来管理应用程序的组. 例如,以下命令创建 新组名 `My Group`数字 :

```sh
appsemble group create 'My Group' --app-id 1 --context development
```

### 资产

Appsemble CLI可用于从磁盘上上传资产. 例如,以下命令创建 名为 `example-asset`数字 :

```sh
appsemble asset publish --app-id 1 path/to/example-asset.png
```

### 资源

应用 CLI 可用于从 JSON 文件或目录创建资源 :

```json
[
  {
    "title": "My Resource",
    "description": "This record is an example."
  }
]
```

```sh
appsemble resource publish --app-id 1 --context development --app path/to/my-app my-resource path/to/resources/my-resource.json
```

```sh
appsemble resource publish --app-id 1 --context development --app path/to/my-app my-resource path/to/resources/*
```

而资源也可以在JSON文件中包含一个ID后被更新.

```json
[
  {
    "id": 1,
    "title": "My Updated Resource",
    "description": "This will be the updated content of the first my-resource record."
  }
]
```

```sh
appsemble resource update --app-id 1 --context development --app path/to/my-app my-resource path/to/resources/*
```

### 备份恢复

Appsemble CLI 可用于从创建的备份文件中恢复应用程序和数据库数据 `backup-production-data` (例如, `npm run appsemble -- backup-production-data`) (中文(简体) ). 备份文件 使用该格式 `<backupsFilename>_<YYYYMMDDHHmmssSSS>.sql.gz` (例如, `appsemble_prod_backup_20250101093045123.sql.gz`) (中文(简体) ). 使用最新的备份文件名( 例如 检查一下 `rclone`)和您的对象存储证书:

```sh
npm run appsemble -- restore-data-from-backup --restoreBackupFilename <backupsFilename_YYYYMMDDHHmmssSSS.sql.gz> --backupsHost <your-object-storage-host> --backupsAccessKey <your-backups-access-key> --backupsSecretKey <your-backups-secret-key>
```

恢复备份后, 运行重加密命令 :

```sh
npm run appsemble -- reencrypt-secrets --old-aes-secret <old-aes-secret>
```

### 连续工作

Appsemble CLI可以用于运行app cronjobs. 以下命令将运行所有已设置的 计划5分钟内运行:

```sh
appsemble run-cronjobs
```

工作运行的频率(更准确地说,工作运行的时间可以追溯多久) 时间间隔(以分钟计)也可以用:

```sh
appsemble run-cronjobs --interval 30
```

## 许可证

[LGPL-3.0 仅限](https://gitlab.com/appsemble/appsemble/-/blob/0.40.9/LICENSE.md) © [应用](https://appsemble.com/)

## 常见问题

### @appsemble/cli 是什么？

用 Appsemble 应用程序和块开发的 CLI

### 如何安装 @appsemble/cli？

在项目目录运行 npm install @appsemble/cli，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 appsemble，可以用 npx appsemble 直接运行。

### @appsemble/cli 支持 TypeScript 吗？

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

### @appsemble/cli 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @appsemble/cli 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=24。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @appsemble/cli 可以商用吗？

@appsemble/cli 使用 LGPL-3\.0-only 许可。弱 Copyleft：作为库被调用时通常不要求开源你自己的代码，但修改库本身需以 LGPL 开源；前端打包合并后的适用边界存在不同理解。以上为概括，不构成法律意见，请以许可原文为准。

### @appsemble/cli 的下载量有多少？

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

### @appsemble/cli 还在维护吗？

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

