# @andwhy/e2e-pipeline 中文文档

规范地址：https://npmcn.com/package/%40andwhy/e2e-pipeline/

版本：0\.15\.3
npm 元数据更新时间：2026-11-03T21:09:06.831Z
中文译文更新时间：2026-11-07T06:45:35.276Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40andwhy/e2e-pipeline
原文对照：https://npmcn.com/package/%40andwhy/e2e-pipeline/?lang=original
项目主页：https://github.com/why-agency/why-e2e-pipeline#readme
源码仓库：https://github.com/why-agency/why-e2e-pipeline

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

- 包体积（解压后）：170 kB，39 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：2 个
- 首次发布：2026-08-28T09:30:12.165Z
- 最新版本发布：2026-11-03T21:09:06.676Z
- 近 30 天下载量：2026（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：21（近 12 个月 21 个）

## 中文简介

脚手架全e2e测试管道:代理辅助Playwright测试,CI运行于Vercel预览,以及跟踪生产部署的Checkly监视器

## 安装

```sh
npm install @andwhy/e2e-pipeline
```

也可以使用：`pnpm add @andwhy/e2e-pipeline`、`yarn add @andwhy/e2e-pipeline`、`bun add @andwhy/e2e-pipeline`

## README

# @和为什么/e2e-管线

将完整的e2e测试管道纳入任何项目:代理辅助Playwright测试(通过 **克劳德代码**),CI运行于与Vercel预览相对抗,以及Checkly监视器跟踪出出产部署.

## 快开始

```bash
pnpm dlx @andwhy/e2e-pipeline init
```

CLI 将配置模板和工作流程写入您的项目并启用 `e2e-pipeline` **Claude 代码插件** 对于回波——插件带有代理定义,管弦规则,以及被引导的技巧,克洛德代码则自己不断更新. 安装纯粹是添加剂——它从不制造或覆盖 `CLAUDE.md`。 。 。 .

该插件位于 [`plugin/`](https://npmcn.com/package/%40andwhy/e2e-pipeline/plugin/) 本存储库中,按下列市场列出: [`.claude-plugin/marketplace.json`](https://npmcn.com/package/%40andwhy/e2e-pipeline/.claude-plugin/marketplace.json)它在开发机上加载(terminal, VS 代码,桌面应用);一个 Claude. ai/code 云段不装入可重播的插件 .

**设置和工作流程文件 :** [E2E 点中的测试](https://app.notion.com/p/31ff837b6270805d8922c4a7c7beb6b0) (为什么是机构内部的). 这些都保存在一个地方,而不是每个项目的脚手架上,因此一次发布工作流程变化.

## 选项

```
pnpm dlx @andwhy/e2e-pipeline init [--format ts|mjs] [--force] [--reset-config]
```

| 旗帜 | 说明 |
| --- | --- |
| `--format` | 配置文件格式( E)`ts` 或者说 `mjs`) (中文(简体) ). 使用 `mjs` 如果TS引发了冲突。 如果省略则提示 . |
| `--force` | 更新软件包拥有的文件并删除预插件副本 `.claude/`永远不要碰你的配置,工作流程, `CLAUDE.md`或者你拥有的任何东西. |
| `--reset-config` | 写新字 `*.new.{ts,mjs}` 每个配置的旁边, 这样你就可以看到它。 汝所出正正等正觉. |
| `--update-workflows` | 用可重复使用的工作流程的当前调用者来替换三个GitHub工作流程,并去掉即时和脚本副本,只读取了0.14.0前的工作流程. 单是脚手架会覆盖一个工作流程. |

代理,技能和规则通过插件自我更新;工作流程通过他们调用的可重复使用的工作流程更新. `init --force` 仅用于下面的软件包文件,以及 `init --force --update-workflows` 在0.14.0之前迁移回地脚手架.

## 创建什么

**从插件** ——在回放中除了两个条目 `.claude/settings.json` (承诺):

-   `playwright-test-planner`, (中文(简体) ), `playwright-test-generator`, (中文(简体) ), `playwright-test-healer` 代理人
-   `playwright-test-pipeline` 技术——有指导的行走; 当有人要求创建或固定测试并通过设置检查、计划 —— 生成 —— 治疗、预览验证和部署来护送测试时触发。 它还持有项目测试规则和代理即时模板.
-   一个SessionStart 勾起始终如一的代表团规则( 向代理, 永远不要手写 spec body), 仅在承载管道的重置中活动

**软件包** - 由 `--force`,所以不要用手编辑这些:

-   `.mcp.json` —— Playwright MCP 服务器配置( 项目根)
-   `playwright.mcp.config.{ts,mjs}` 配置 MCP 服务器负载: 延伸 `playwright.config` 和清除 `testIgnore`,因此计划/生成者可以执行正常运行忽略的种子

**种子过一次** - 开始点,然后你的项目拥有。 只写在不在场 从未被覆盖的时候, `--force` 包括:

-   `playwright.config.{ts,mjs}` —— Playwright 配置模板 `BASE_URL` 支助, `testDir: "./tests/e2e"`,以及 `testIgnore` 种子
-   `checkly.config.{ts,mjs}` ——选中配置了占位符的模板
-   `tests/e2e/seed.spec.{ts,js}` — Playwright MCP 种子文件 `setup_page`
-   `tests/e2e/helpers/preview-consent-setup.{ts,js}` —— 说 `prepareVercelPreviewPage` (Vercel 部署-保护绕行);项目延长时附有同意逻辑
-   `.github/workflows/pr-playwright-tests.yml` ——运行套件与PR的Vercel预览并评论结果
-   `.github/workflows/checkly-deploy.yml` 在生产部署成功时部署监测员
-   `.github/workflows/checkly-heal.yml` ——部署失败的显示器触发分化和疗效:生产回归立即升级为Slack,当病因出现在Repo自己的代码中时,作为PR草案的最小拟议固定; Stale测试得到固定并被硬化-包括行为中性的测试钩(C`data-testid`)在需要时应用源——并作为人审查PR打开,其自己的预览运行验证了应用侧钩. 直到一个Checkly Webhook警报频道向它发送信号——技能通过这个设置.

三个工作流程文件分别是几行的调用者. 工作在这个仓库里进行 `.github/workflows/reusable-*.yml`时引用 `@main`,所以在这里合并 更新每一个消费者的CI 没有PR在那里。 愈合时速`templates/github/prompts/checkly-heal.md`)和PR评论脚本(`templates/github/scripts/playwright-pr-comment.mjs`)从这些工作流程内已公布的npm包读取. 该存储库的一次性管理设置,因此其他重置者可将其工作流程称为:设置-行动-一般-访问-“可从组织内的存储库获取”.

工作流程需要存储器的秘密 : `CHECKLY_API_KEY`, (中文(简体) ), `CHECKLY_ACCOUNT_ID`, (中文(简体) ), `VERCEL_AUTOMATION_BYPASS_SECRET`自动愈合 `SLACK_WEBHOOK_URL` (值为 1Password). `ANTHROPIC_API_KEY` 是继承下来的组织秘密 由所有重置——无补.

E2E 规格在 **`tests/e2e/`** 因此,回购可以保持单元测试 其他地方在 `tests/` 没有Playwright试图运行它们。 种子坐在同一棵树上 不让试验发现 `testIgnore` 而不是生活在它之外.

代理商视此为默认, 而非规则 : 如果 Repo 已经有规格 在别的地方, 他们写在那里。 见项目测试规则6 规则 `playwright-test-pipeline` 技术.

`.gitignore` 增益 Playwright/测试输出和种子条目;现有行被保留.

脚手架文件格式化为项目本身的更漂亮文件 安装了,所以它们匹配 房子风格而不是这个包.

## 代理定制

这些特工将梵地拉 Playwright 测试代理延长为:

-   **额外工具**: 发电机得到 `terminal`, (中文(简体) ), `edit`, (中文(简体) ), `read_file`; 治疗者得到 `terminal`
-   **`data-testid` 工作流程**: 发电机读取计划中推荐的属性,并在录取前添加到源组件中
-   **Vercel 共享认证**: 每一个 `test.describe` 包含a `beforeEach` 以 Vercel 预览部署认证
-   **核查**:发电机和愈合器运行 `pnpm exec checkly pw-test` 当地测试合格后
-   **编号步骤注释**:每个逻辑步骤都得到一个注释(`// 1. Navigate to…`(中文(简体) )
-   **地方意识**: 没有硬编码域或特定本地端的 URL 模式
-   **可选输入草稿**: 计划员可以验证用户提供的行程草稿与活页

## 插件

`plugin/` 是标准布局中的 Claude 代码插件 : `agents/`, (中文(简体) ), `skills/playwright-test-pipeline/`, (中文(简体) ), `hooks/`,以及 `.claude-plugin/plugin.json`。 。 。 . `agents/` 生成—— `npm run build:plugin` 内嵌 `templates/claude/partials/_robustness-core.md` 进入源 `templates/claude/agents/` 并同步显示的版本 `package.json`。 。 。 . 输出是因为一个市场是一个 git 克隆; CI 失败拉动 请求其产出为停滞的(`npm run check:plugin`) (中文(简体) ).

在任何消费者回购中,在发布前尝试分支:

```
/plugin marketplace add why-agency/why-e2e-pipeline#<branch>
```

或启动 Claude 代码 `--plugin-dir ../why-e2e-pipeline/plugin`。 。 。 .

CI 中的自动愈合不会加载插件( 无头运行的 API 密钥有) 无插件来源:工作流程副本 `plugin/agents/playwright-test-healer.md` 因此 `plugin/` npm 中的船舶 套件也一样.

## 文档

安装和使用指南 `docs/notion/` 并且是来源于 事实 合并更改为 `main` 将其公布在地名网页上,盖章 与他们所记录的软件包版本。 在Notion中直接制作的编辑是 在下次出版时被覆盖 .

出版需要a `NOTION_TOKEN` 储存库秘密——一个编号PAT,或 内部整合标志,其整合已与两页共享. 拉请求运行 `node scripts/publish-notion.mjs --dry-run`转换 不写入, 无法在合并前完成 .

邮票显示 **最新版本发布至 npm**,而不是该版本 `package.json`。描述一个未发行版本的文档发送人们寻找 无法安装的特性 .

## 释放

弹出 `version` 内 `package.json`,添加一个 `CHANGELOG.md` 条目,合并到 `main`。 。 。 . 即通释出.

`.github/workflows/release.yml` 比较 `package.json` 对手的版本 没有。 如果两者不同,则发布并标记承诺;如果匹配,则退出 安静地,所以普通的合并 发布什么。 它需要一个 `NPM_TOKEN` 仓库 拥有出版权的秘密 `@andwhy` 范围.

发布时没有npm出处,这需要公共源寄存器.

## 许可证

麻省理工学院

## 常见问题

### @andwhy/e2e-pipeline 是什么？

脚手架全e2e测试管道:代理辅助Playwright测试,CI运行于Vercel预览,以及跟踪生产部署的Checkly监视器

### 如何安装 @andwhy/e2e-pipeline？

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

### @andwhy/e2e-pipeline 支持 TypeScript 吗？

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

### @andwhy/e2e-pipeline 支持 ESM 还是 CommonJS？

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

### @andwhy/e2e-pipeline 可以商用吗？

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

### @andwhy/e2e-pipeline 的下载量有多少？

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

### @andwhy/e2e-pipeline 还在维护吗？

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

