@mk-co/neox-cli 2.0.35 → 2.0.37
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/dist/cli/main.js +548 -481
- package/dist/sdk/index.js +315 -256
- package/dist/skills/builtin/commit/SKILL.md +75 -0
- package/dist/skills/builtin/review/SKILL.md +135 -0
- package/package.json +1 -1
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "Git Commit"
|
|
3
|
+
description: "智能生成 commit message 并提交代码变更"
|
|
4
|
+
user-invocable: true
|
|
5
|
+
neox:
|
|
6
|
+
category: git
|
|
7
|
+
aliases: [ci, gc]
|
|
8
|
+
allowedTools: [execute_shell, readfile]
|
|
9
|
+
dangerLevel: moderate
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Overview
|
|
13
|
+
|
|
14
|
+
帮助用户创建高质量的 Git commit,自动分析变更并生成符合规范的 commit message。
|
|
15
|
+
|
|
16
|
+
## Instructions
|
|
17
|
+
|
|
18
|
+
请按以下步骤执行:
|
|
19
|
+
|
|
20
|
+
1. **检查当前状态**
|
|
21
|
+
- 运行 `git status` 查看当前变更状态
|
|
22
|
+
- 运行 `git diff --staged` 分析已暂存的改动
|
|
23
|
+
|
|
24
|
+
2. **处理未暂存的改动**
|
|
25
|
+
- 如果没有暂存的改动,询问用户是否要暂存所有改动
|
|
26
|
+
- 如果用户同意,运行 `git add -A`
|
|
27
|
+
|
|
28
|
+
3. **生成 Commit Message**
|
|
29
|
+
- 根据改动内容生成 commit message
|
|
30
|
+
- 使用 Conventional Commits 格式:`<type>(<scope>): <description>`
|
|
31
|
+
- type 类型:
|
|
32
|
+
- `feat`: 新功能
|
|
33
|
+
- `fix`: 修复 bug
|
|
34
|
+
- `docs`: 文档变更
|
|
35
|
+
- `style`: 代码格式(不影响代码运行的变动)
|
|
36
|
+
- `refactor`: 重构(既不是新增功能,也不是修复 bug)
|
|
37
|
+
- `test`: 增加测试
|
|
38
|
+
- `chore`: 构建过程或辅助工具的变动
|
|
39
|
+
|
|
40
|
+
4. **确认并提交**
|
|
41
|
+
- 显示生成的 commit message
|
|
42
|
+
- 询问用户确认或修改
|
|
43
|
+
- 执行 `git commit -m "<message>"`
|
|
44
|
+
|
|
45
|
+
## 参数说明
|
|
46
|
+
|
|
47
|
+
- `-m "<message>"`: 直接使用指定的 commit message,跳过自动生成
|
|
48
|
+
- `--amend`: 修改上一次提交
|
|
49
|
+
- `--no-verify`: 跳过 pre-commit hooks
|
|
50
|
+
|
|
51
|
+
## Examples
|
|
52
|
+
|
|
53
|
+
### 自动生成 message
|
|
54
|
+
```
|
|
55
|
+
用户: /commit
|
|
56
|
+
AI: 分析变更后生成 message,询问确认,执行提交
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 指定 message
|
|
60
|
+
```
|
|
61
|
+
用户: /commit -m "fix: 修复登录超时问题"
|
|
62
|
+
AI: 直接使用指定的 message 进行提交
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 修改上次提交
|
|
66
|
+
```
|
|
67
|
+
用户: /commit --amend
|
|
68
|
+
AI: 分析变更,生成新 message,使用 --amend 修改上次提交
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## 注意事项
|
|
72
|
+
|
|
73
|
+
- 不要提交包含敏感信息的文件(如 .env、密钥文件等)
|
|
74
|
+
- 提交前确保代码可以正常运行
|
|
75
|
+
- 遵循项目的 commit message 规范
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "Code Review"
|
|
3
|
+
description: "对代码变更进行全面审查,检查潜在问题"
|
|
4
|
+
user-invocable: true
|
|
5
|
+
neox:
|
|
6
|
+
category: code
|
|
7
|
+
aliases: [cr, review]
|
|
8
|
+
allowedTools: [readfile, glob, grep, execute_shell]
|
|
9
|
+
dangerLevel: safe
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Overview
|
|
13
|
+
|
|
14
|
+
对代码变更进行专业审查,关注代码质量、安全性、性能等方面。
|
|
15
|
+
|
|
16
|
+
## Instructions
|
|
17
|
+
|
|
18
|
+
请按以下步骤执行代码审查:
|
|
19
|
+
|
|
20
|
+
1. **获取要审查的代码变更**
|
|
21
|
+
- 默认审查 staged changes:`git diff --staged`
|
|
22
|
+
- 如果没有 staged changes,审查工作区变更:`git diff`
|
|
23
|
+
- 可指定文件、分支或 PR
|
|
24
|
+
|
|
25
|
+
2. **分析代码变更**
|
|
26
|
+
关注以下方面:
|
|
27
|
+
|
|
28
|
+
### 正确性
|
|
29
|
+
- 代码逻辑是否正确
|
|
30
|
+
- 边界条件是否处理
|
|
31
|
+
- 异常情况是否考虑
|
|
32
|
+
|
|
33
|
+
### 安全性(OWASP Top 10)
|
|
34
|
+
- 注入攻击(SQL、命令、XSS)
|
|
35
|
+
- 认证和授权问题
|
|
36
|
+
- 敏感数据暴露
|
|
37
|
+
- 不安全的配置
|
|
38
|
+
|
|
39
|
+
### 性能
|
|
40
|
+
- 是否有 N+1 查询
|
|
41
|
+
- 是否有不必要的循环
|
|
42
|
+
- 内存泄漏风险
|
|
43
|
+
- 是否缺少缓存
|
|
44
|
+
|
|
45
|
+
### 可维护性
|
|
46
|
+
- 代码是否清晰易读
|
|
47
|
+
- 命名是否合理
|
|
48
|
+
- 是否有重复代码
|
|
49
|
+
- 注释是否充分
|
|
50
|
+
|
|
51
|
+
3. **生成审查报告**
|
|
52
|
+
|
|
53
|
+
## Output Format
|
|
54
|
+
|
|
55
|
+
使用以下格式输出审查报告:
|
|
56
|
+
|
|
57
|
+
```markdown
|
|
58
|
+
## Code Review Report
|
|
59
|
+
|
|
60
|
+
### Summary
|
|
61
|
+
- 审查文件数: X
|
|
62
|
+
- 变更行数: +X / -X
|
|
63
|
+
- 总体评价: [优秀/良好/需改进/有问题]
|
|
64
|
+
|
|
65
|
+
### Critical Issues 🔴
|
|
66
|
+
严重问题,必须修复
|
|
67
|
+
|
|
68
|
+
- [文件:行号] 问题描述
|
|
69
|
+
建议: 修复建议
|
|
70
|
+
|
|
71
|
+
### Warnings ⚠️
|
|
72
|
+
警告,建议修复
|
|
73
|
+
|
|
74
|
+
- [文件:行号] 问题描述
|
|
75
|
+
建议: 修复建议
|
|
76
|
+
|
|
77
|
+
### Suggestions 💡
|
|
78
|
+
改进建议
|
|
79
|
+
|
|
80
|
+
- [文件:行号] 改进建议
|
|
81
|
+
|
|
82
|
+
### Highlights ✨
|
|
83
|
+
代码中的亮点
|
|
84
|
+
|
|
85
|
+
- [文件:行号] 亮点描述
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## 参数说明
|
|
89
|
+
|
|
90
|
+
- `<file>`: 指定要审查的文件
|
|
91
|
+
- `--branch <name>`: 审查指定分支与当前分支的差异
|
|
92
|
+
- `--pr <number>`: 审查指定 PR(需要 GitHub CLI)
|
|
93
|
+
- `--focus <area>`: 聚焦审查区域(security/performance/style)
|
|
94
|
+
|
|
95
|
+
## Examples
|
|
96
|
+
|
|
97
|
+
### 审查 staged changes
|
|
98
|
+
```
|
|
99
|
+
用户: /review
|
|
100
|
+
AI: 获取 staged changes,进行全面审查,输出报告
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### 审查指定文件
|
|
104
|
+
```
|
|
105
|
+
用户: /review src/auth/login.ts
|
|
106
|
+
AI: 读取文件,进行审查,输出报告
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### 聚焦安全审查
|
|
110
|
+
```
|
|
111
|
+
用户: /review --focus security
|
|
112
|
+
AI: 重点检查安全相关问题
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### 审查 PR
|
|
116
|
+
```
|
|
117
|
+
用户: /review --pr 123
|
|
118
|
+
AI: 使用 gh 命令获取 PR 变更,进行审查
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 审查清单
|
|
122
|
+
|
|
123
|
+
### 必查项
|
|
124
|
+
- [ ] 是否有硬编码的密钥或密码
|
|
125
|
+
- [ ] 是否有 SQL 注入风险
|
|
126
|
+
- [ ] 是否有 XSS 风险
|
|
127
|
+
- [ ] 是否正确处理了错误
|
|
128
|
+
- [ ] 是否有资源泄漏(文件、连接等)
|
|
129
|
+
|
|
130
|
+
### 推荐查项
|
|
131
|
+
- [ ] 变量命名是否清晰
|
|
132
|
+
- [ ] 函数是否过长(> 50 行)
|
|
133
|
+
- [ ] 是否有魔法数字
|
|
134
|
+
- [ ] 是否缺少必要的日志
|
|
135
|
+
- [ ] 是否有适当的类型定义
|