# @agilecustoms/envctl 中文文档

规范地址：https://npmcn.com/package/%40agilecustoms/envctl/

版本：1\.33\.1
npm 元数据更新时间：2026-10-30T14:50:50.831Z
中文译文更新时间：2026-11-09T20:53:31.083Z
软件包许可：UNLICENSED

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

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

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

- 包体积（解压后）：65.2 kB，36 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=22\.0\.0
- 运行依赖：3 个
- 首次发布：2025-03-26T14:16:02.094Z
- 最新版本发布：2026-10-30T14:50:50.502Z
- 近 30 天下载量：1734（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：193（近 12 个月 94 个）

## 中文简介

用于管理环境的节点.js CLI 客户端

## 安装

```sh
npm install @agilecustoms/envctl
```

也可以使用：`pnpm add @agilecustoms/envctl`、`yarn add @agilecustoms/envctl`、`bun add @agilecustoms/envctl`

## README

# 内存

```
┌────────────────────────────┐
│ IN NON-PROD ACCOUNT        │
│                            │
│ You run: terraform apply   │
│ We run:  terraform destroy │
└────────────────────────────┘
```

EnvCtl 是将Terraform环境生命周期管理自动化于非验证账户的工具

**主要用途案例**: 您为 dev 测试提供了资源, 工具在工作日结束时会摧毁它们, 所以 **您节省$**

信封免费供个人使用

### 安装

EnvCtl 需要节点22或以上

```shell
npm install -g @agilecustoms/envctl
```

### 设置

目前(2026年5月)EnvCtl正在进行α测试,请联系作者 _[切库拉耶瓦莱克塞@gmail.com](mailto:chekulaevalexey@gmail.com)_ 用于登机. 一旦获得 API 密钥, 您可以运行 :

```shell
envctl configure
```

### 使用量

这很容易 随便用 `envctl` 改为 `terraform`数字 :

```shell
envctl init -backend-config=key=my-test-env
envctl plan  # any normal terraform plan arguments
envctl apply # any normal terraform apply arguments
envctl delete
```

> 说明。 它现在可以使用"去除"命令,而不是"去除",而是在EnvCtl后端发射Aync破坏过程. 为此,您需要创建用户/角色, 并设定信任政策, 让 EnvCtl 承担并代表您删除资源

优点:

-   (主)你可以忘记跑 `destroy`,EnvCtl 将在工作日结束时删除资源(配置)
-   通常破坏需要很长的时间(如果在VPC中使用Lambda的话,最多40分钟). 你用不着等它
-   (未来) 通常畸形只是不能删除一个资源,因为例如,S3桶中已经有一些对象. 我们称之为"硬资源". EnvCtl 也会删除它们

由于现在在远程服务器上运行了一个销毁程序,你可能需要知道正在发生什么. 为此,您可以使用下列命令:

```shell
envctl status # shows environment status: ACTIVE, DELETING, DELETE_ERROR
envctl logs   # shows most recent destroy logs - helpful if status returns DELETE_ERROR
```

`logs` 保存文件并在文件管理器中打开其目录。 它没有打开 `--no-open` 输出或输出不是终端( AI 代理、 脚本、 CI) - 然后使用打印的文件路径

### 限制

截止2026年5月:

-   只支持 AWS 。 未来计划提供全球气候方案、Azure和其他供应商 (发送电子邮件到 _[切库拉耶瓦莱克塞@gmail.com](mailto:chekulaevalexey@gmail.com)_ 如果您想成为其他提供者的测试者)
-   仅S3 远程状态( 其他远程状态计划)

### 额外特性 :

-   如果由于锁定出错而应用失败, EnvCtl 将提议您强制解锁状态并重试 `apply`。 。 。 . 在非交互模式( CI) 中, 它会因原锁错误而失败( 很快会永远等待)
-   如果由于已知的瞬态 AWS 错误而应用失败, EnvCtl 重试 `apply` 一次 一次吗. 保存的计划不能被应用两次(在失败的应用后被搁置),所以 `envctl apply {planfile}` EnvCtl 首次重新运行 `plan` 与它保存的参数 `envctl plan -out={planfile}` (单位:千美元) `.terraform/envctl.json`) (中文(简体) ). 未制作的计划文件 `envctl plan` (或自此已更改)未再审
-   用于多租户账户的 EnvCtl 自动注入定义环境密钥/前缀的变量
-   和 AWS CLI 一样, EnvCtl 支持配置文件, 因此您可以在不同的账户中切换

### 支助

目前,支助是通过电子邮件进行的 `chekulaevalexey@gmail.com`

### 路线图

-   OIDC支持(目前客户需要创建带有访问密钥的IAM用户)
-   支持其他供应商(GCP、Azure)
-   自助网站(目前通过聊天录用)
-   扩展“ Hard 资源” 支持( 非空 S3 桶, Api Gateway 中修正的路由等)
-   环境删除失败时在 Slack/电子邮件中发出通知
-   企业扩展分析

## 永恒的环境

在CD管线中使用了以至端的测试. 此类环境不是在工作日结束时删除,而是在创建一段时间后删除 (可配置,一般在一个小时之内——进行所有测试所需的时间). 关键想法:如果测试成功,你的CD管道的最后一步将运行 `envctl delete`。 。 。 . 测试完成后,您的管道就结束, 你不需要再等几分钟 资源删除了! 但如果测试失败了, 你有时间调查失败, 并有机会延长环境寿命!

这个功能可供α/β测试者使用,在活体释放后的第一个月使用,然后支付

联系人 _[切库拉耶瓦莱克塞@gmail.com](mailto:chekulaevalexey@gmail.com)_ 电子环境演示

## 常见问题

### @agilecustoms/envctl 是什么？

用于管理环境的节点\.js CLI 客户端

### 如何安装 @agilecustoms/envctl？

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

### @agilecustoms/envctl 支持 TypeScript 吗？

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

### @agilecustoms/envctl 支持 ESM 还是 CommonJS？

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

### @agilecustoms/envctl 需要什么版本的 Node\.js？

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

### @agilecustoms/envctl 可以商用吗？

@agilecustoms/envctl 使用 UNLICENSED 许可。作者声明为 UNLICENSED，即不授予公开使用许可（与公共领域的 Unlicense 不同）。使用前需获得作者授权。以上为概括，不构成法律意见，请以许可原文为准。

### @agilecustoms/envctl 的下载量有多少？

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

### @agilecustoms/envctl 还在维护吗？

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

