ethan-skill 1.7.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -24
- package/dist/cli/index.js +3 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/skills/15-git-workflow.d.ts +3 -0
- package/dist/skills/15-git-workflow.d.ts.map +1 -0
- package/dist/skills/15-git-workflow.js +288 -0
- package/dist/skills/15-git-workflow.js.map +1 -0
- package/dist/skills/16-unit-testing.d.ts +3 -0
- package/dist/skills/16-unit-testing.d.ts.map +1 -0
- package/dist/skills/16-unit-testing.js +298 -0
- package/dist/skills/16-unit-testing.js.map +1 -0
- package/dist/skills/17-system-design.d.ts +3 -0
- package/dist/skills/17-system-design.d.ts.map +1 -0
- package/dist/skills/17-system-design.js +294 -0
- package/dist/skills/17-system-design.js.map +1 -0
- package/dist/skills/18-database-optimize.d.ts +3 -0
- package/dist/skills/18-database-optimize.d.ts.map +1 -0
- package/dist/skills/18-database-optimize.js +294 -0
- package/dist/skills/18-database-optimize.js.map +1 -0
- package/dist/skills/19-docker.d.ts +3 -0
- package/dist/skills/19-docker.d.ts.map +1 -0
- package/dist/skills/19-docker.js +360 -0
- package/dist/skills/19-docker.js.map +1 -0
- package/dist/skills/20-cicd.d.ts +3 -0
- package/dist/skills/20-cicd.d.ts.map +1 -0
- package/dist/skills/20-cicd.js +364 -0
- package/dist/skills/20-cicd.js.map +1 -0
- package/dist/skills/21-performance.d.ts +3 -0
- package/dist/skills/21-performance.d.ts.map +1 -0
- package/dist/skills/21-performance.js +139 -0
- package/dist/skills/21-performance.js.map +1 -0
- package/dist/skills/22-refactoring.d.ts +3 -0
- package/dist/skills/22-refactoring.d.ts.map +1 -0
- package/dist/skills/22-refactoring.js +235 -0
- package/dist/skills/22-refactoring.js.map +1 -0
- package/dist/skills/23-observability.d.ts +3 -0
- package/dist/skills/23-observability.d.ts.map +1 -0
- package/dist/skills/23-observability.js +266 -0
- package/dist/skills/23-observability.js.map +1 -0
- package/dist/skills/24-design-patterns.d.ts +3 -0
- package/dist/skills/24-design-patterns.d.ts.map +1 -0
- package/dist/skills/24-design-patterns.js +258 -0
- package/dist/skills/24-design-patterns.js.map +1 -0
- package/dist/skills/index.d.ts +10 -0
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +41 -1
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/skills.test.js +3 -3
- package/dist/skills/skills.test.js.map +1 -1
- package/dist/templates/templates.test.js +2 -3
- package/dist/templates/templates.test.js.map +1 -1
- package/package.json +1 -1
- package/rules/claude-code/CLAUDE.md +2410 -3
- package/rules/cline/.clinerules +2262 -2
- package/rules/codebuddy/CODEBUDDY.md +2361 -2
- package/rules/continue/.continuerules +2262 -2
- package/rules/copilot/copilot-instructions.md +2331 -2
- package/rules/cursor/.cursorrules +2399 -2
- package/rules/cursor/smart-flow.mdc +2399 -2
- package/rules/jetbrains/smart-flow.md +2331 -2
- package/rules/lingma/smart-flow.md +2352 -3
- package/rules/windsurf/.windsurf/rules/smart-flow.md +2332 -3
- package/rules/zed/smart-flow.rules +2251 -1
package/README.md
CHANGED
|
@@ -14,18 +14,20 @@
|
|
|
14
14
|
|
|
15
15
|
| 模块 | 内容 |
|
|
16
16
|
|------|------|
|
|
17
|
-
| **
|
|
17
|
+
| **24 个 Skill** | 标准化工作流节点,覆盖需求→接口设计→安全→部署→PRD→Git→测试→系统设计→数据库→Docker→CI/CD→性能→重构→可观测性→设计模式 |
|
|
18
18
|
| **11 个平台** | Cursor / Copilot / Cline / Windsurf / Zed / JetBrains / Continue / Claude Code 等 |
|
|
19
|
-
| **
|
|
20
|
-
| **
|
|
19
|
+
| **6 个 Pipeline** | 链式工作流(开发 / 汇报 / 质量 / 完整周期 / 故障响应 / 新功能),有状态持久化推进 |
|
|
20
|
+
| **23 个 MCP 工具** | AI 编辑器原生调用 Skill、Pipeline、Git、记忆库、估算 |
|
|
21
21
|
| **40+ CLI 命令** | Git 集成、开发工具、记忆库、估算、插件 OS 全覆盖 |
|
|
22
|
+
| **自定义 Skill** | `.ethan/skills/*.yaml/.md`,YAML frontmatter + Markdown body |
|
|
23
|
+
| **自定义 Pipeline** | `.ethan/pipelines/*.yaml`,引用内置或自定义 Skill 自由组合 |
|
|
22
24
|
| **浏览器扩展** | Chrome/Edge MV3,GitHub PR 一键 Review + 右键菜单 |
|
|
23
|
-
| **VS Code 扩展** | 侧边栏树、20 个命令、
|
|
25
|
+
| **VS Code 扩展** | 侧边栏树、20 个命令、23 个 @ethan 斜杠命令 |
|
|
24
26
|
| **插件 OS** | 发布/搜索/安装社区 Skill 插件,支持私有注册表 |
|
|
25
27
|
|
|
26
28
|
---
|
|
27
29
|
|
|
28
|
-
##
|
|
30
|
+
## 24 个 Skill
|
|
29
31
|
|
|
30
32
|
| # | Skill | 分类 | 触发词(示例) | 说明 |
|
|
31
33
|
|---|-------|------|--------------|------|
|
|
@@ -39,16 +41,33 @@
|
|
|
39
41
|
| 8 | 代码审查 | 质量侧 | `代码审查`、`code review`、`CR` | 系统性审查,分级输出 Blocker/Major/Minor |
|
|
40
42
|
| 9 | 故障排查 | 质量侧 | `故障排查`、`debug`、`线上故障` | 假设验证 + 5 Why 根因分析,三层解决方案 |
|
|
41
43
|
| 10 | 技术调研 | 需求侧 | `技术调研`、`技术选型`、`POC` | 加权评分矩阵 + POC 验证,输出有据可查的结论 |
|
|
44
|
+
| 11 | 接口设计 | 执行侧 | `接口设计`、`API 设计`、`RESTful` | RESTful/GraphQL 接口规范,OpenAPI 3.0 风格输出 |
|
|
45
|
+
| 12 | 安全审查 | 质量侧 | `安全审查`、`OWASP`、`security review` | OWASP Top 10 逐项扫描,四级风险清单(Critical→Low) |
|
|
46
|
+
| 13 | 部署上线 | 执行侧 | `部署上线`、`上线`、`deploy` | Pre-flight 预检 + 灰度/蓝绿策略 + 回滚方案全流程 |
|
|
47
|
+
| 14 | PRD 编写 | 需求侧 | `PRD`、`产品需求`、`写 PRD` | 用户故事 + 验收标准 AC + 非功能性需求 + 埋点方案 |
|
|
48
|
+
| 15 | **Git 工作流** | 执行侧 | `Git 工作流`、`分支策略`、`commit 规范` | GitFlow/Trunk-Based 选型、Conventional Commits、Rebase vs Merge 决策 |
|
|
49
|
+
| 16 | **单元测试** | 质量侧 | `单元测试`、`unit test`、`测试覆盖率` | AAA 模式、Mock 策略、Vitest/Jest 配置,建立测试文化 |
|
|
50
|
+
| 17 | **系统设计** | 执行侧 | `系统设计`、`架构设计`、`system design` | 需求拆解→容量估算→架构选型→核心组件→数据模型 |
|
|
51
|
+
| 18 | **数据库优化** | 质量侧 | `数据库优化`、`慢查询`、`索引优化` | 慢查询诊断、索引策略、查询优化、分库分表与缓存 |
|
|
52
|
+
| 19 | **Docker** | 执行侧 | `Docker`、`容器化`、`Dockerfile` | 多阶段构建、Compose 编排、安全加固与镜像精简 |
|
|
53
|
+
| 20 | **CI/CD** | 执行侧 | `CI/CD`、`流水线`、`GitHub Actions` | GitHub Actions 全流程、并行构建、多环境部署策略 |
|
|
54
|
+
| 21 | **性能优化** | 质量侧 | `性能优化`、`Core Web Vitals`、`performance` | 基线建立、前端懒加载/代码分割、后端缓存/并发优化 |
|
|
55
|
+
| 22 | **代码重构** | 质量侧 | `代码重构`、`refactoring`、`技术债` | 识别坏味道、提炼函数/多态等重构手法、测试先行 |
|
|
56
|
+
| 23 | **可观测性** | 质量侧 | `可观测性`、`监控`、`链路追踪` | 日志/指标/链路三支柱、OTel、Prometheus+Grafana、SLO |
|
|
57
|
+
| 24 | **设计模式** | 执行侧 | `设计模式`、`design pattern`、`GoF` | 23 种 GoF 模式速查、TypeScript 实现、场景→模式选型指南 |
|
|
42
58
|
|
|
43
59
|
---
|
|
44
60
|
|
|
45
|
-
##
|
|
61
|
+
## 6 个 Pipeline(链式工作流)
|
|
46
62
|
|
|
47
63
|
| Pipeline ID | Skills | 适用场景 |
|
|
48
64
|
|-------------|--------|---------|
|
|
49
|
-
| `dev-workflow` | 需求理解 → 任务拆解 → 方案设计 → 执行实现 |
|
|
65
|
+
| `dev-workflow` | 需求理解 → 任务拆解 → 方案设计 → 执行实现 | 常规功能开发 |
|
|
50
66
|
| `reporting` | 进度跟踪 → 任务报告 → 周报生成 | 项目汇报 |
|
|
51
67
|
| `quality-workflow` | 代码审查 → 故障排查 | 质量保障 |
|
|
68
|
+
| `full-dev-cycle` | 需求理解 → **接口设计** → 方案设计 → 执行实现 → 代码审查 → **部署上线** | 完整功能交付 |
|
|
69
|
+
| `incident-response` | 故障排查 → 技术调研 → 任务报告 | 线上故障处理 |
|
|
70
|
+
| `new-feature` | **PRD** → 技术调研 → **接口设计** → 任务拆解 → 执行实现 | 新功能从 0 到 1 |
|
|
52
71
|
|
|
53
72
|
自定义 Pipeline:在 `.ethan/pipelines/` 目录创建 YAML 文件,`ethan pipeline-init` 生成模板。
|
|
54
73
|
|
|
@@ -85,7 +104,7 @@ npx ethan-skill install --platform cursor --lang en
|
|
|
85
104
|
}
|
|
86
105
|
```
|
|
87
106
|
|
|
88
|
-
重启 AI 编辑器后,可使用全部 **
|
|
107
|
+
重启 AI 编辑器后,可使用全部 **23 个 MCP 工具**(详见下方 MCP 工具列表)。
|
|
89
108
|
|
|
90
109
|
### 方式三:全局安装
|
|
91
110
|
|
|
@@ -120,7 +139,7 @@ ethan install --platform cursor
|
|
|
120
139
|
|
|
121
140
|
```bash
|
|
122
141
|
ethan install [--platform <platform>] [--lang en] # 安装规则文件
|
|
123
|
-
ethan list [--json] # 列出所有 Skill
|
|
142
|
+
ethan list [--json] # 列出所有 Skill(含自定义)
|
|
124
143
|
ethan run # 交互式 Skill 执行向导
|
|
125
144
|
ethan init # 生成 .ethanrc.json 配置文件
|
|
126
145
|
ethan validate # 校验 rules/ 与源码是否同步
|
|
@@ -208,6 +227,35 @@ ethan pipeline run <id> [-c "上下文"] # 运行 Pipeline
|
|
|
208
227
|
ethan pipeline-init [--name my-pipeline] # 生成自定义 YAML Pipeline 模板
|
|
209
228
|
```
|
|
210
229
|
|
|
230
|
+
### 自定义 Skill
|
|
231
|
+
|
|
232
|
+
```bash
|
|
233
|
+
ethan skill new [name] [--format yaml|md] # 生成自定义 Skill 模板(默认 yaml)
|
|
234
|
+
ethan skill list # 列出 .ethan/skills/ 中的自定义 Skill
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
自定义 Skill 文件放置在 `.ethan/skills/` 目录,支持 `.yaml`、`.json`、`.md` 格式:
|
|
238
|
+
|
|
239
|
+
```markdown
|
|
240
|
+
---
|
|
241
|
+
id: my-skill
|
|
242
|
+
name: 自定义技能
|
|
243
|
+
nameEn: my_skill
|
|
244
|
+
description: 一句话描述
|
|
245
|
+
triggers:
|
|
246
|
+
- 触发词
|
|
247
|
+
outputFormat: Markdown 文档
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
## 1. 第一步
|
|
251
|
+
|
|
252
|
+
步骤说明...
|
|
253
|
+
|
|
254
|
+
## 2. 第二步
|
|
255
|
+
|
|
256
|
+
步骤说明...
|
|
257
|
+
```
|
|
258
|
+
|
|
211
259
|
### 插件 OS(Phase 6)
|
|
212
260
|
|
|
213
261
|
```bash
|
|
@@ -220,7 +268,7 @@ ethan plugin search <keyword> [-n <limit>] # 搜索社区插件(eth
|
|
|
220
268
|
|
|
221
269
|
---
|
|
222
270
|
|
|
223
|
-
##
|
|
271
|
+
## 23 个 MCP 工具
|
|
224
272
|
|
|
225
273
|
配置 MCP Server 后,AI 编辑器(Cursor / Cline / Continue 等)可直接调用:
|
|
226
274
|
|
|
@@ -236,13 +284,19 @@ ethan plugin search <keyword> [-n <limit>] # 搜索社区插件(eth
|
|
|
236
284
|
| `code_review` | 代码审查 Skill |
|
|
237
285
|
| `debug` | 故障排查 Skill |
|
|
238
286
|
| `tech_research` | 技术调研 Skill |
|
|
287
|
+
| `api_design` | 接口设计 Skill(v1.7.0 新增)|
|
|
288
|
+
| `security_review` | 安全审查 Skill(v1.7.0 新增)|
|
|
289
|
+
| `deployment` | 部署上线 Skill(v1.7.0 新增)|
|
|
290
|
+
| `prd` | PRD 编写 Skill(v1.7.0 新增)|
|
|
239
291
|
| `ethan_pipeline` | 串联执行完整 Pipeline |
|
|
240
|
-
| `ethan_workflow_next` |
|
|
292
|
+
| `ethan_workflow_next` | 推进工作流到下一步(传入摘要,返回下一步提示词)|
|
|
241
293
|
| `ethan_workflow_status` | 查询工作流进度与当前步骤 |
|
|
242
|
-
| `ethan_memory_search` | 搜索 Skill 记忆库(项目级 +
|
|
243
|
-
| `ethan_estimate` |
|
|
294
|
+
| `ethan_memory_search` | 搜索 Skill 记忆库(项目级 + 全局)|
|
|
295
|
+
| `ethan_estimate` | 生成三点估算提示词(支持小时/故事点/人天)|
|
|
244
296
|
| `ethan_git_commit` | 读取 staged diff → Conventional Commit 提示词 |
|
|
245
297
|
| `ethan_git_review` | 读取分支 diff → Blocker/Major/Minor Review 提示词 |
|
|
298
|
+
| `ethan_autopilot` | 生成 Pipeline 超级 prompt(自动链式执行)|
|
|
299
|
+
| `ethan_context_snapshot` | 采集项目快照(技术栈/git/目录树,TTL 30min 缓存)|
|
|
246
300
|
|
|
247
301
|
---
|
|
248
302
|
|
|
@@ -271,9 +325,9 @@ Chrome/Edge Manifest V3 扩展,将 Ethan 带入任意网页。
|
|
|
271
325
|
2. VS Code → Extensions → `...` → Install from VSIX
|
|
272
326
|
|
|
273
327
|
**功能:**
|
|
274
|
-
- **Skill 侧边栏树**:按分类分组展示
|
|
275
|
-
- **Pipeline 侧边栏树**:展示
|
|
276
|
-
- **
|
|
328
|
+
- **Skill 侧边栏树**:按分类分组展示 14 个 Skill,点击直接运行
|
|
329
|
+
- **Pipeline 侧边栏树**:展示 6 条 Pipeline,点击查看详情
|
|
330
|
+
- **23 个 @ethan 斜杠命令**:在 Copilot Chat 中使用 `@ethan /需求理解`、`@ethan /commit` 等
|
|
277
331
|
- **20 个命令面板命令**:包含 Git、开发工具、记忆、估算、复盘等全系列
|
|
278
332
|
- **状态栏快捷按钮**:底部状态栏 `⚡ Ethan`,单击打开 Skill 选择器
|
|
279
333
|
|
|
@@ -318,11 +372,11 @@ src/skills/*.ts ──→ [build-rules.ts] ──→ rules/cursor/smart-flow
|
|
|
318
372
|
```
|
|
319
373
|
ethan-skill/
|
|
320
374
|
├── src/
|
|
321
|
-
│ ├── skills/ # 单一数据源(
|
|
375
|
+
│ ├── skills/ # 单一数据源(24 Skill + pipeline 定义)
|
|
322
376
|
│ │ ├── types.ts # SkillDefinition、Platform、PipelineDefinition
|
|
323
377
|
│ │ ├── index.ts # ALL_SKILLS 导出
|
|
324
|
-
│ │ ├── pipeline.ts # PIPELINES
|
|
325
|
-
│ │ └── 01~
|
|
378
|
+
│ │ ├── pipeline.ts # PIPELINES(6条)+ resolvePipeline()
|
|
379
|
+
│ │ └── 01~24-*.ts # 各 Skill 定义(含 category、nextSkill)
|
|
326
380
|
│ ├── cli/ # 40+ CLI 命令入口
|
|
327
381
|
│ │ ├── index.ts # Commander.js 主程序
|
|
328
382
|
│ │ └── config.ts # .ethanrc.json 读写
|
|
@@ -330,20 +384,22 @@ ethan-skill/
|
|
|
330
384
|
│ │ └── utils.ts # getStagedDiff / getBranchDiff / truncateDiff 等
|
|
331
385
|
│ ├── workflow/ # 有状态工作流引擎
|
|
332
386
|
│ │ └── state.ts # 会话持久化、Named Sessions、步骤推进
|
|
333
|
-
│ ├── mcp/ # MCP Server(
|
|
387
|
+
│ ├── mcp/ # MCP Server(23 个工具)
|
|
334
388
|
│ │ └── server.ts
|
|
335
389
|
│ ├── router/ # 触发词路由
|
|
336
390
|
│ ├── templates/ # 各平台渲染模板(11 个 case,强制穷举)
|
|
337
391
|
│ ├── context/ # 项目技术栈自动检测
|
|
338
|
-
│ ├── loader/ # 自定义 Skill
|
|
392
|
+
│ ├── loader/ # 自定义 Skill/Pipeline 加载器
|
|
393
|
+
│ │ ├── custom-skill-loader.ts # .ethan/skills/*.yaml/.md
|
|
394
|
+
│ │ └── custom-pipeline-loader.ts # .ethan/pipelines/*.yaml
|
|
339
395
|
│ ├── server/ # Web UI Dashboard
|
|
340
396
|
│ └── vscode/ # VS Code 扩展
|
|
341
397
|
├── browser-extension/ # Chrome/Edge MV3 扩展
|
|
342
|
-
├── vscode-extension/ # VS Code 扩展 manifest(20 命令、
|
|
398
|
+
├── vscode-extension/ # VS Code 扩展 manifest(20 命令、23 斜杠命令)
|
|
343
399
|
├── rules/ # 构建产物,11 个平台(提交到仓库)
|
|
344
400
|
├── docs/ # 官网(GitHub Pages)
|
|
345
401
|
├── scripts/build/ # 构建脚本(build-rules.ts / build-vscode.ts)
|
|
346
|
-
└── .ethan/ # 项目级运行时数据(workflow.json、memory/、pipelines/)
|
|
402
|
+
└── .ethan/ # 项目级运行时数据(workflow.json、memory/、skills/、pipelines/)
|
|
347
403
|
```
|
|
348
404
|
|
|
349
405
|
---
|
|
@@ -399,7 +455,11 @@ npm run test:coverage # 覆盖率报告
|
|
|
399
455
|
|
|
400
456
|
| 版本 | 主要变更 |
|
|
401
457
|
|------|---------|
|
|
402
|
-
| **v1.
|
|
458
|
+
| **v1.9.0** | `ethan autopilot` 命令重命名为 `ethan auto`(原命令保留为别名兼容) |
|
|
459
|
+
| **v1.8.0** | 新增 10 个 Skill(Git 工作流/单元测试/系统设计/数据库优化/Docker/CI/CD/性能优化/代码重构/可观测性/设计模式);Skills 14 → 24;docs ReactBits 风格重设计 |
|
|
460
|
+
| **v1.7.0** | 新增 4 个 Skill(接口设计/安全审查/部署上线/PRD 编写);新增 3 条 Pipeline(full-dev-cycle/incident-response/new-feature);自定义 Pipeline 加载(`.ethan/pipelines/`);MCP 工具 19 → 23 |
|
|
461
|
+
| **v1.6.0** | 自定义 Skill 支持 `.md` 格式(YAML frontmatter + Markdown body);`ethan skill new --format md`;新增 MCP `ethan_autopilot` 和 `ethan_context_snapshot` 工具 |
|
|
462
|
+
| **v1.5.0** | MCP 新增 4 工具(git commit/review/memory search/estimate);VS Code 扩展 17 斜杠命令;插件 OS;浏览器扩展;Context 引擎;Stats 排行榜;记忆库;估算复盘 |
|
|
403
463
|
| **v1.3.0** | Git 集成(commit/review/pr/standup/changelog);开发工具(scan/explain/test-case/naming/readme/roast);On-call、定时任务、Git Hooks |
|
|
404
464
|
| **v1.2.0** | 新增代码审查、故障排查、技术调研 3 个 Skill;新增 Windsurf/Zed/JetBrains/Continue/Claude Code 5 个平台;validate/pipeline/doctor/stats 命令 |
|
|
405
465
|
| **v1.1.0** | 有状态工作流(workflow start/done/status);MCP Server;Web UI Dashboard;自动上下文检测 |
|
package/dist/cli/index.js
CHANGED
|
@@ -2986,9 +2986,10 @@ qualityCmd
|
|
|
2986
2986
|
}
|
|
2987
2987
|
console.log('');
|
|
2988
2988
|
});
|
|
2989
|
-
// ───
|
|
2989
|
+
// ─── auto 命令 ──────────────────────────────────────────────────────────
|
|
2990
2990
|
program
|
|
2991
|
-
.command('
|
|
2991
|
+
.command('auto [pipelineId]')
|
|
2992
|
+
.alias('autopilot')
|
|
2992
2993
|
.description('生成「超级 prompt」:一次粘贴即可让 AI 自动链式执行完整 Pipeline,无需手动推进每一步')
|
|
2993
2994
|
.option('-c, --context <context>', '任务上下文描述(如"实现用户登录功能")', '')
|
|
2994
2995
|
.option('--all', '生成全部 3 条 Pipeline 的超级 prompt')
|