# @devcycle/cli 中文文档

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

版本：6\.6\.1
npm 元数据更新时间：2026-10-14T18:44:23.550Z
中文译文更新时间：2026-11-12T02:34:48.853Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：1.8 MB，356 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=20\.0\.0
- 运行依赖：28 个
- 首次发布：2022-01-19T16:26:17.623Z
- 最新版本发布：2026-10-14T18:44:23.244Z
- 近 30 天下载量：58219（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：120（近 12 个月 8 个）

## 中文简介

DevCycle CLI 工具

## 安装

```sh
npm install @devcycle/cli
```

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

## README

# DevCycle CLI 和 MCP 服务器

此寄存器包含用于管理命令行的特性旗的 DevCycle CLI,另外还有一个MCP(模式上下文协议)服务器,使AI编码助理能够与 DevCycle 交互.

主要特点包括:

-   从命令行完全管理您的特性、 变量、 变化和瞄准规则
-   检测并列出代码库中的 DevCycle 可变用法
-   管理您的自我目标覆盖以在变量值之间快速切换
-   生成 DevCycle 类型安全使用定义( 仅标注字)
-   与 Cursor 和 Claude 一起管理 AI 功能旗的 MCP( 模式背景协议) 服务器

CLI可以使用命令行参数或创建命令行参数等多种方式定制 [配置文件](https://npmcn.com/package/%40devcycle/cli/#readme-repo-configuration)。 。 。 .

[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io/) [![Version](https://img.shields.io/npm/v/@devcycle/cli.svg)](https://www.npmjs.com/package/@devcycle/cli) [![License](https://img.shields.io/npm/l/@devcycle/cli.svg)](https://github.com/DevCycleHQ/cli/blob/main/package.json)

-   [命令主题](https://npmcn.com/package/%40devcycle/cli/#readme-command-topics)
-   [图案抓取密钥,包括周围的引号](https://npmcn.com/package/%40devcycle/cli/#readme-pattern-captures-the-key-including-surrounding-quotes)
-   [图案条状引用, 只抓取内容](https://npmcn.com/package/%40devcycle/cli/#readme-pattern-strips-quotes-capturing-only-the-content)

## MCP AI 助理服务器

DevCycle MCP(模式上下文协议)服务器使Cursor和Claude等AI编码助理能够直接从您的开发环境管理功能旗. DevCycle提供主机MCP服务器,不需要本地安装.

### 快速设置( 不需要安装)

1.  **配置您的 AI 助手以使用主机 MCP 服务器 :**
    
    -   **光标**: 添加到 `.cursor/mcp_settings.json`数字 :
        
        ```json
        {
          "mcpServers": {
            "devcycle": {
              "url": "https://mcp.devcycle.com/mcp"
            }
          }
        }
        ```
        
    -   **克劳德桌面**: 添加到您的 Claude 配置文件 :
        
        ```json
        {
          "mcpServers": {
            "devcycle": {
              "command": "npx",
              "args": [
                "mcp-remote",
                "https://mcp.devcycle.com/mcp"
              ]
            }
          }
        }
        ```
        
2.  **就这样!** 服务器会在您首次使用时通过 OAuth 认证来引导您 .
    

您的 AI 助手现在可以代表您创建、 更新和管理功能标记 .

关于本地安装选项、详细的配置、可用的工具和高级使用,见 [完整的 MCP 文件](https://npmcn.com/package/%40devcycle/cli/docs/mcp.md)。 。 。 .

## CLI 文档

## 设置

### 安装 CLI

利用国家预防机制

```sh-session
$ npm install -g @devcycle/cli
```

换句话说,用家庭主妇

```sh-session
$ brew tap devcyclehq/cli
$ brew install devcycle
```

## 认证

许多CLI命令需要DevCycle API授权. 提供这些证书有几种方法.

### 使用 Access Tokens( 首选)

#### 登录命令

通过使用 [`login sso` 命令](https://npmcn.com/package/%40devcycle/cli/docs/login.md#dvc-login-sso),CLI会取回并存储一个访问令牌,有效期为24小时.

这个 [`login again` 命令](https://npmcn.com/package/%40devcycle/cli/docs/login.md#dvc-login-again) 可用于使用被保存的项目和组织取回新的访问符而无需提示它们.

这个过程将打开浏览器窗口与 DevCycle 通用登录页面交互. 它首先会获得个人访问符,然后促使你选择一个组织. 第二个浏览器窗口用于认证您选择的组织中的 CLI .

要切换组织 一旦登录 [`organizations select` 命令](https://npmcn.com/package/%40devcycle/cli/docs/organizations.md) 可以使用.

如果在集装箱化环境中执行CLI,请确保以下一个Port可以通过Port Forging访问:2194(默认),2195,2196或8080. 这将使认证程序能够完成并适当设置访问符.

#### Repo 输入命令

这个 [`repo init` 命令](https://npmcn.com/package/%40devcycle/cli/docs/repo.md#dvc-repo-init) 行为方式与 `login sso`,但创建 [repo 配置文件](https://npmcn.com/package/%40devcycle/cli/#readme-repo-configuration) 将项目和组织选择存放在那里.

### 使用客户证书

#### Auth 文件的客户端证书

使用 [`dvc status` 命令](https://npmcn.com/package/%40devcycle/cli/docs/status.md#dvc-status) 查找您的平台的配置文件位置。 证书可以被存储在Auth配置路径所指向的文件. 如果文件不存在,则创建该文件,其内容如下.

```yaml
clientCredentials:
  client_id: <your client id>
  client_secret: <your client secret>
```

此文件应该 **没有** 输入到版本控件.

默认位置基于 [oclif 配置目录](https://oclif.io/docs/config)

如果您打算使用覆盖配置文件位置的选项运行 CLI,则 [`dvc status` 命令](https://npmcn.com/package/%40devcycle/cli/docs/status.md#dvc-status) 命令可以使用这些选项运行,以确认文件位置是预期的.

### 项目选择

您还需要指定用于 CLI 的默认工程 ID .

如果有 Repo 配置文件,则 [`dvc diff`](https://npmcn.com/package/%40devcycle/cli/docs/diff.md) 财务报告和审定财务报表 [`dvc usages`](https://npmcn.com/package/%40devcycle/cli/docs/usages.md) 命令将使用该定义的工程.

否则,在登录或设定时使用 [工程选择命令](https://npmcn.com/package/%40devcycle/cli/docs/projects.md#dvc-projects-select)

### 环境变量

设置以下环境变量:

```sh-session
$ export DEVCYCLE_CLIENT_ID=<your client id>
$ export DEVCYCLE_CLIENT_SECRET=<your client secret>
$ export DEVCYCLE_PROJECT_KEY=<your project key>
```

### 命令行参数

CLI可以使用以下参数运行: 1

```sh-session
$ dvc --client-id=<your client id> --client-secret=<your client secret> --project=<your project key>
```

### Github 动作

Devcycle Github 动作通过 `project-key`, (中文(简体) ), `client-id` 财务报告和审定财务报表 `client-secret` 配置参数. 这通过命令行参数传递到CLI.

## 使用量

```sh-session
$ npm install -g @devcycle/cli
$ dvc COMMAND
running command...
$ dvc (--version)
@devcycle/cli/6.6.1 linux-x64 node-v24.21.0
$ dvc --help [COMMAND]
USAGE
  $ dvc COMMAND
...
```

# 命令主题

-   [`dvc alias`](https://npmcn.com/package/%40devcycle/cli/docs/alias.md) - 管理寄存器变量别名.
-   [`dvc autocomplete`](https://npmcn.com/package/%40devcycle/cli/docs/autocomplete.md) - 显示自动完成安装指令
-   [`dvc cleanup`](https://npmcn.com/package/%40devcycle/cli/docs/cleanup.md) - 用当前版本代码中的静态值替换 DevCycle 变量。 目前仅支持JavaScript.
-   [`dvc diff`](https://npmcn.com/package/%40devcycle/cli/docs/diff.md) - 打印一个DevCycle的可变用法介于您代码的两个版本之间.
-   [`dvc environments`](https://npmcn.com/package/%40devcycle/cli/docs/environments.md) - 为现有地物创造新的环境.
-   [`dvc features`](https://npmcn.com/package/%40devcycle/cli/docs/features.md) - 与管理API创建、查看或修改特性.
-   [`dvc generate`](https://npmcn.com/package/%40devcycle/cli/docs/generate.md) - 生成 Devcycle 相关文件 .
-   [`dvc help`](https://npmcn.com/package/%40devcycle/cli/docs/help.md) 显示 Dvc 的帮助 .
-   [`dvc identity`](https://npmcn.com/package/%40devcycle/cli/docs/identity.md) - 查看或管理你的DevCycle身份.
-   [`dvc keys`](https://npmcn.com/package/%40devcycle/cli/docs/keys.md) - 从管理API中获取SDK密钥.
-   [`dvc login`](https://npmcn.com/package/%40devcycle/cli/docs/login.md) - 登记到DevCycle.
-   [`dvc logout`](https://npmcn.com/package/%40devcycle/cli/docs/logout.md) - 丢弃任何存储在认证配置文件中的认证配置 .
-   [`dvc organizations`](https://npmcn.com/package/%40devcycle/cli/docs/organizations.md) - 列出或切换组织.
-   [`dvc overrides`](https://npmcn.com/package/%40devcycle/cli/docs/overrides.md) - 与管理API一起创建、查看或修改一个项目的重叠.
-   [`dvc projects`](https://npmcn.com/package/%40devcycle/cli/docs/projects.md) - 用管理API创建或查看项目.
-   [`dvc repo`](https://npmcn.com/package/%40devcycle/cli/docs/repo.md) - 管理仓库配置.
-   [`dvc status`](https://npmcn.com/package/%40devcycle/cli/docs/status.md) - 检查CLI状态.
-   [`dvc targeting`](https://npmcn.com/package/%40devcycle/cli/docs/targeting.md) - 创建、查看或修改目标设定规则,使之具有管理API的特点.
-   [`dvc usages`](https://npmcn.com/package/%40devcycle/cli/docs/usages.md) - 在您的代码当前版本中打印所有 DevCycle 变量用法 .
-   [`dvc variables`](https://npmcn.com/package/%40devcycle/cli/docs/variables.md) - 用管理API创建、查看或修改变量.
-   [`dvc variations`](https://npmcn.com/package/%40devcycle/cli/docs/variations.md) - 为已有的地物创建新的变体.

## Repo 配置

以下命令只能从配置仓库的根运行

-   [`dvc diff`](https://npmcn.com/package/%40devcycle/cli/docs/diff.md)
-   [`dvc usages`](https://npmcn.com/package/%40devcycle/cli/docs/usages.md)
-   [`dvc alias`](https://npmcn.com/package/%40devcycle/cli/docs/alias.md)
-   [`dvc cleanup`](https://npmcn.com/package/%40devcycle/cli/docs/cleanup.md)

作为命令行参数的许多选项也可以使用repo配置文件来指定. 默认 此文件的位置是 `<REPO ROOT>/.devcycle/config.yml`。 。 。 .

此位置可用 `--repo-config-path` 旗帜.

配置文件格式如下:

```yml
## the project and organization to use when connecting to the DevCycle Rest API for this repo
project: "project-key"
org:
  id: "org_xxxxxx"
  name: "unique-org-key"
  display_name: "Human Readable Org Name"
## block for configuring "code insights" features like diff and variable usage scanning
## use this section to improve the detection of DevCycle usage within your code
codeInsights:
  ## add additional names to check for when looking for instances of DVCClient from an SDK
  clientNames:
    - "dvcClient"
  ## map the values used in your code to the corresponding variable key in DevCycle
  variableAliases:
    "VARIABLES.ENABLE_V1": "enable-v1"
  ## additional regex patterns used to match variables for a specific file extension
  matchPatterns:
    ## file extension to override for, containing a list of patterns to use
    js:
      - dvcClient\.variable\(\s*["']([^"']*)["']
  ## an array of file glob patterns to include in usage scan
  includeFiles:
    - "*.[jt]s"
  ## an array of file glob patterns to exclude from usage scan
  excludeFiles:
    - "dist/*"
```

### 匹配图案和异名

在识别代码中的可变用法时,CLI会默认识别出DevCycle SDK方法. 要抓起来 您可能定义匹配模式的其他用法。 匹配模式由文件扩展定义.

\* 注: 每个图案必须包含一个精确的可变密钥捕获组. 抓取全部密钥值 (如果选择“带引文”的图案,包括周围引文). \* :

匹配模式可以在配置文件中定义, 例如 :

```yml
codeInsights:
  matchPatterns:
    js:
      - customVariableGetter\(\s*["']([^"']*)["']
    ts:
      - customVariableGetter\(\s*["']([^"']*)["']
    jsx:
      - customVariableHook\(\s*["']([^"']*)["']
      - customVariableGetter\(\s*["']([^"']*)["']
    tsx:
      - customVariableHook\(\s*["']([^"']*)["']
      - customVariableGetter\(\s*["']([^"']*)["']
```

#### 有无引用

匹配模式可以捕捉有引用或没有引用的可变密钥,这影响了是否需要别名:

引文为:

```yml
# Pattern captures the key including surrounding quotes
- dvcClient\.variable\(\s*(["'][^"']*["'])\s*,
```

-   匹配数 : `dvcClient.variable('my-variable', default)`
-   捕获 : `'my-variable'` (有引证

无引号( 需要异名或生成常数) :

```yml
# Pattern strips quotes, capturing only the content
- dvcClient\.variable\(\s*["']([^"']*)["']
```

-   匹配数 : `dvcClient.variable('my-variable', default)`
-   捕获 : `my-variable`

匹配模式也可以直接传递给使用 `--match-pattern` 旗帜 :

```bash
dvc usages --match-pattern ts="customVariableGetter\(\s*["']([^"']*)["']" js="customVariableGetter\(\s*["']([^"']*)["']"
```

当测试您的正则 `--show-regex` 旗帜可以帮助。 这将打印用于在您的代码库中找到匹配的所有图案 .

```bash
dvc usages --show-regex
```

#### 自定义打包函数

如果您使用SDK周围的包装功能,请为它们添加图案.

**示例: 自定义包装函数**

```yml
codeInsights:
  matchPatterns:
    ts:
      # Matches: getFeatureFlag('my-variable', defaultValue)
      - getFeatureFlag\(\s*([^,)]*)\s*,
      # Matches: isFeatureEnabled('my-variable')
      - isFeatureEnabled\(\s*([^,)]*)\s*\)
    tsx:
      # Matches: useFeatureFlag('my-variable', defaultValue)
      - useFeatureFlag\(\s*([^,)]*)\s*,
```

## 常见问题

### @devcycle/cli 是什么？

DevCycle CLI 工具

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

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

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

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

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

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

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

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

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

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

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

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

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

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

