# @bytedance/mona-cli 中文文档

规范地址：https://npmcn.com/package/%40bytedance/mona-cli/

版本：0\.3\.50
npm 元数据更新时间：2026-01-21T09:38:14.660Z
中文译文更新时间：2026-11-08T21:50:55.126Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40bytedance/mona-cli
原文对照：https://npmcn.com/package/%40bytedance/mona-cli/?lang=original

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

- 包体积（解压后）：10.3 kB，11 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：2 个
- 首次发布：2021-11-01T07:56:44.406Z
- 最新版本发布：2026-01-21T09:38:14.517Z
- 近 30 天下载量：2947（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：394（近 12 个月 3 个）

## 中文简介

商贸应用软件的开发和制造工具

## 安装

```sh
npm install @bytedance/mona-cli
```

也可以使用：`pnpm add @bytedance/mona-cli`、`yarn add @bytedance/mona-cli`、`bun add @bytedance/mona-cli`

## README

# @bytedance/mona-cli

## 介绍

mona-cli是电商商家应用的CLI工具，主要为了能够提升商家应用在各端开发和运行效率，统一开放方案，从而保证安全开放。

## 快速开始

### 安装CLI

快速开始开发一个插件需要先安装该CLI工具，使用如下命令进行安装

```bash
npm install -g @bytedance/mona-cli
// 或使用yarn安装，任选其一
yarn global add @bytedance/mona-cli
```

安装完成后，控制台输入

```bash
mona -v
```

能正确打印出版本，则表明安装成功

### 初始化项目

下面我们来初始化一个项目，使用如下命令

```bash
mona init
```

按照提示依次输入项目名称，选择模板，选择是否使用typescript和样式预处理器 注意：模板目前仅支持Plugin

### 开发

项目初始化完成后可以进行开发，使用如下命令启动开发服务器，可以实时调试

```bash
mona start
```

### 打包

开发完成后，对项目进行打包，可以使用如下命令

```
mona build
```

### 发布

项目打包完成后，可以使用如下命令，对待发布资源进行压缩

```
mona publish
```

生成后的压缩包，需要在开放平台 -> 应用管理 -> 插件管理 -> 新增版本中上传该压缩包，并填写版本描述

## 目录结构

```bash
.
├── README.md
├── app.config.ts // 应用配置文件
├── mona.config.ts // 项目配置文件
├── package.json
├── src
│   ├── app.tsx
│   ├── common
│   ├── components
│   │   └── Wrapper
│   │       ├── index.less
│   │       └── index.tsx
│   ├── pages
│   │   ├── Home
│   │   │   ├── index.less
│   │   │   ├── index.tsx
│   │   │   └── page.config.ts // 页面配置文件
│   │   ├── Info
│   │   │   ├── index.tsx
│   │   │   └── page.config.ts
│   │   └── List
│   │       ├── index.tsx
│   │       └── page.config.ts
│   └── typings
│       └── assetsDefinition.d.ts
└── tsconfig.json
```

所有的页面文件应放在pages中，所有的组件文件应放在components中。

项目构建配置文件为`mona.config.ts`，可以在该文件中更改构建配置

应用配置文件为`app.config.ts`，可以在该文件中配置路由

页面配置文件分别放在页面文件下`page.config.ts`中，可以在这里配置页面相关的配置

详细配置见下面的配置介绍

### svg

svg资源会使用`@svgr/webpack`处理成React组件，可以直接通过组件的方式来引入svg图片，示例

```js
import Logo from '@/common/imgs/logo.svg';

const App = () => {
  return (
    <div>
      <Logo className={styles.logo} />
    </div>
  )
}

export default App
```

## 配置

### 项目配置

项目配置文件为项目根目录下的`mona.config.js`，配置文件内容如下：

```js
// mona.config.ts
import { createProjectConfig } from '@bytedance/mona';
export default createProjectConfig({
  projectName: 'demo',
  input: './src/app.tsx',
  output: 'dist'
})
```

| 参数 | 说明 | 是否必填 | 类型 | 默认值 |
| --- | --- | --- | --- | --- |
| projectName | 应用/插件名称 | 是 | string | \- |
| input | 入口文件路径 | 否 | string | \- |
| output | 打包后的文件目录路径 | 否 | string | \- |
| raw | 定义函数来修改webpack配置 | 否 | (options: any) => any | \- |
| dev | 用来修改本地服务配置 | 否 | string | { port: 9999 } |

### 应用配置

应用配置文件为项目根目录下的`app.config.js`，配置文件内容如下：

```js
// app.config.ts
import { createAppConfig } from '@bytedance/mona';
export default createAppConfig({
  pages: [
    'pages/Home/index',
    'pages/Info/index',
    'pages/List/index'
  ]
})
```

| 参数 | 说明 | 是否必填 | 类型 | 默认值 |
| --- | --- | --- | --- | --- |
| pages | 页面路径 | 是 | string\[\] | \- |

默认`pages`的第一项为首页

### 页面配置

页面配置文件为每个页面目录下的`page.config.js`，配置文件内容如下：

```js
// page.config.ts
import { createPageConfig } from '@bytedance/mona';
export default createPageConfig({
  navigationBarTitleText: 'page title'
})
```

| 参数 | 说明 | 是否必填 | 类型 | 默认值 |
| --- | --- | --- | --- | --- |
| navigationBarTitleText | 当前页面标题 | 否 | string | \- |

## 命令

可以使用`mona -h`查看帮助命令，`mona -v`查看当前版本

### mona init

初始化一个商家应用/商家应用插件项目

-   \-h, --help：输出帮助信息
-   \-u, --use-typescript：是否使用typescript
-   \-s, --style：指定样式处理器(css/less)
-   \-t, --template：指定模板(plugin)

### mona start

启动本地开发服务器

-   \-h, --help：输出帮助信息
-   \-p, --port：指定本地服务器端口

### mona build

对项目进行打包

-   \-h, --help：输出帮助信息

### mona publish

压缩打包后的产物，以便在开放平台发布

-   \-h, --help：输出帮助信息

### mona update

更新@bytedance/mona-cli到最新版本

## 常见问题

### @bytedance/mona-cli 是什么？

商贸应用软件的开发和制造工具

### 如何安装 @bytedance/mona-cli？

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

### @bytedance/mona-cli 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/bytedance\_\_mona-cli 是否存在。

### @bytedance/mona-cli 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @bytedance/mona-cli 可以商用吗？

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

### @bytedance/mona-cli 的下载量有多少？

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

### @bytedance/mona-cli 还在维护吗？

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

