docs: 添加 Git 自动提交规范
任务详情: - 在 CLAUDE.md 中添加了 Git 提交规范章节 - 定义了每次任务完成后的自动提交流程 - 规范了提交信息格式(包含任务类型、描述和详细说明) - 提供了自动化脚本示例 - 修改文件: CLAUDE.md - 新增文件: .claude/, .mcp.json - 影响功能: 项目文档和开发流程规范
This commit is contained in:
68
.claude/settings.local.json
Normal file
68
.claude/settings.local.json
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
{
|
||||||
|
"permissions": {
|
||||||
|
"allow": [
|
||||||
|
"Bash(mkdir:*)",
|
||||||
|
"Bash(rm:*)",
|
||||||
|
"Bash(pip install:*)",
|
||||||
|
"Bash(python3:*)",
|
||||||
|
"Bash(source:*)",
|
||||||
|
"Bash(/usr/bin/python3:*)",
|
||||||
|
"Bash(python:*)",
|
||||||
|
"Bash(cat:*)",
|
||||||
|
"mcp__promptx__promptx_init",
|
||||||
|
"mcp__claude-code-mcp__claude_code",
|
||||||
|
"mcp__serena__activate_project",
|
||||||
|
"mcp__serena__check_onboarding_performed",
|
||||||
|
"mcp__serena__onboarding",
|
||||||
|
"mcp__serena__list_dir",
|
||||||
|
"mcp__serena__read_file",
|
||||||
|
"mcp__serena__search_for_pattern",
|
||||||
|
"mcp__serena__execute_shell_command",
|
||||||
|
"mcp__serena__think_about_collected_information",
|
||||||
|
"mcp__serena__write_memory",
|
||||||
|
"mcp__serena__list_memories",
|
||||||
|
"Bash(pip3 install:*)",
|
||||||
|
"Bash(chmod:*)",
|
||||||
|
"Bash(grep:*)",
|
||||||
|
"Bash(pip install pymysql pyyaml requests)",
|
||||||
|
"Bash(python3:*)",
|
||||||
|
"Bash(grep:*)",
|
||||||
|
"Bash(cat:*)",
|
||||||
|
"Bash(mv:*)",
|
||||||
|
"Bash(timeout 120 python src/test/2025-08-14_模型对比测试/model_comparison_test.py)",
|
||||||
|
"Bash(timeout 60 python src/test/2025-08-14_模型对比测试/test_deepseek_professional.py)",
|
||||||
|
"mcp__serena__create_text_file",
|
||||||
|
"mcp__serena__replace_regex",
|
||||||
|
"Bash(mysql:*)",
|
||||||
|
"Bash(tree:*)",
|
||||||
|
"Bash(pkill:*)",
|
||||||
|
"mcp__serena__replace_symbol_body",
|
||||||
|
"Bash(timeout 600 python3 src/就业管家首页/main.py)",
|
||||||
|
"mcp__serena__find_file",
|
||||||
|
"Bash(/Users/xiaoqi/Documents/Dev/Project/2025-08-12_Saas数据生成/venv/bin/python3 /Users/xiaoqi/Documents/Dev/Project/2025-08-12_Saas数据生成/src/就业管家首页/main.py)",
|
||||||
|
"Bash(/Users/xiaoqi/Documents/Dev/Project/2025-08-12_Saas数据生成/venv/bin/python3 run_full_generation.py)",
|
||||||
|
"Bash(/Users/xiaoqi/Documents/Dev/Project/2025-08-12_Saas数据生成/run.sh)",
|
||||||
|
"Bash(. venv/bin/activate)",
|
||||||
|
"Bash(./venv/bin/python3:*)",
|
||||||
|
"Bash(/Users/xiaoqi/Documents/Dev/Project/2025-08-12_Saas数据生成/venv/bin/python3 src/就业管家首页/main.py)",
|
||||||
|
"Bash(/Users/xiaoqi/Documents/Dev/Project/2025-08-12_Saas数据生成/venv/bin/python3:*)",
|
||||||
|
"mcp__sequential-thinking__sequentialthinking",
|
||||||
|
"Bash(test:*)"
|
||||||
|
],
|
||||||
|
"defaultMode": "acceptEdits",
|
||||||
|
"additionalDirectories": [
|
||||||
|
"/Users/xiaoqi/Documents"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"enableAllProjectMcpServers": true,
|
||||||
|
"enabledMcpjsonServers": [
|
||||||
|
"context7",
|
||||||
|
"browser-tools",
|
||||||
|
"claude-code-mcp",
|
||||||
|
"promptx",
|
||||||
|
"playwright",
|
||||||
|
"sequential-thinking",
|
||||||
|
"feishu-api",
|
||||||
|
"shadcn-ui-server"
|
||||||
|
]
|
||||||
|
}
|
||||||
71
.mcp.json
Normal file
71
.mcp.json
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
{
|
||||||
|
"mcpServers": {
|
||||||
|
"context7": {
|
||||||
|
"type": "stdio",
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"@upstash/context7-mcp"
|
||||||
|
],
|
||||||
|
"env": {}
|
||||||
|
},
|
||||||
|
"browser-tools": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"@agentdeskai/browser-tools-mcp@latest"
|
||||||
|
],
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"claude-code-mcp": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"@steipete/claude-code-mcp@latest"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"promptx": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"-f",
|
||||||
|
"--registry",
|
||||||
|
"https://registry.npmjs.org",
|
||||||
|
"dpml-prompt@beta",
|
||||||
|
"mcp-server"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"playwright": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"@playwright/mcp@latest"
|
||||||
|
],
|
||||||
|
"env": {}
|
||||||
|
},
|
||||||
|
"sequential-thinking": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"@modelcontextprotocol/server-sequential-thinking"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"feishu-api": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"-y",
|
||||||
|
"apifox-mcp-server@latest",
|
||||||
|
"--project-id=6808546"
|
||||||
|
],
|
||||||
|
"env": {
|
||||||
|
"APIFOX_ACCESS_TOKEN": "APS-unMJRsbd0NZeaqd99nAIhdN63mVPUkzX"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"shadcn-ui-server": {
|
||||||
|
"command": "npx",
|
||||||
|
"args": [
|
||||||
|
"@heilgar/shadcn-ui-mcp-server"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
161
CLAUDE.md
Normal file
161
CLAUDE.md
Normal file
@@ -0,0 +1,161 @@
|
|||||||
|
# CLAUDE.md
|
||||||
|
|
||||||
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||||
|
|
||||||
|
## 项目概述
|
||||||
|
|
||||||
|
这是一个 n8n 工作流自动化平台的演示项目。n8n 源代码位于 `n8n-n8n-1.109.2/` 目录下。
|
||||||
|
|
||||||
|
## 常用命令
|
||||||
|
|
||||||
|
### 开发环境设置
|
||||||
|
```bash
|
||||||
|
cd n8n-n8n-1.109.2
|
||||||
|
pnpm install # 安装依赖
|
||||||
|
```
|
||||||
|
|
||||||
|
### 构建项目
|
||||||
|
```bash
|
||||||
|
cd n8n-n8n-1.109.2
|
||||||
|
pnpm build > build.log 2>&1 # 构建所有包并重定向输出到日志文件
|
||||||
|
tail -n 20 build.log # 查看构建日志的最后几行
|
||||||
|
```
|
||||||
|
|
||||||
|
### 运行 n8n
|
||||||
|
```bash
|
||||||
|
cd n8n-n8n-1.109.2
|
||||||
|
pnpm start # 启动 n8n 服务器
|
||||||
|
# 或使用 npx
|
||||||
|
npx n8n
|
||||||
|
# 或使用 Docker
|
||||||
|
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
|
||||||
|
```
|
||||||
|
|
||||||
|
### 测试
|
||||||
|
```bash
|
||||||
|
cd n8n-n8n-1.109.2
|
||||||
|
pnpm test # 运行所有测试
|
||||||
|
pnpm test:affected # 运行受影响的测试
|
||||||
|
pnpm dev:e2e # 开发模式下的 E2E 测试
|
||||||
|
```
|
||||||
|
|
||||||
|
### 代码质量检查
|
||||||
|
```bash
|
||||||
|
cd n8n-n8n-1.109.2
|
||||||
|
pnpm lint # 代码检查
|
||||||
|
pnpm typecheck # 类型检查
|
||||||
|
pnpm format # 格式化代码
|
||||||
|
```
|
||||||
|
|
||||||
|
## 项目结构
|
||||||
|
|
||||||
|
```
|
||||||
|
.
|
||||||
|
├── n8n-n8n-1.109.2/ # n8n 源代码目录
|
||||||
|
│ ├── packages/ # monorepo 包结构
|
||||||
|
│ │ ├── cli/ # CLI 和后端服务器
|
||||||
|
│ │ ├── core/ # 工作流执行引擎
|
||||||
|
│ │ ├── editor-ui/ # Vue 3 前端应用
|
||||||
|
│ │ ├── nodes-base/ # 内置节点集成
|
||||||
|
│ │ ├── workflow/ # 核心工作流接口
|
||||||
|
│ │ └── @n8n/ # 共享包
|
||||||
|
│ ├── docker/ # Docker 相关配置
|
||||||
|
│ └── cypress/ # E2E 测试
|
||||||
|
├── .git/ # Git 仓库
|
||||||
|
└── .vscode/ # VSCode 配置
|
||||||
|
```
|
||||||
|
|
||||||
|
## 技术栈
|
||||||
|
|
||||||
|
- **后端**: Node.js + TypeScript + Express + TypeORM
|
||||||
|
- **前端**: Vue 3 + TypeScript + Vite + Pinia
|
||||||
|
- **包管理**: pnpm workspaces + Turbo
|
||||||
|
- **测试**: Jest (单元测试) + Playwright (E2E)
|
||||||
|
- **数据库**: SQLite/PostgreSQL/MySQL (通过 TypeORM)
|
||||||
|
|
||||||
|
## 开发注意事项
|
||||||
|
|
||||||
|
1. **始终使用 pnpm** 而不是 npm 或 yarn
|
||||||
|
2. **在 n8n-n8n-1.109.2 目录下执行命令**
|
||||||
|
3. **运行测试前先进入对应的包目录**
|
||||||
|
4. **提交代码前运行 lint 和 typecheck**
|
||||||
|
5. **构建命令输出重定向到日志文件以便查看错误**
|
||||||
|
|
||||||
|
## Git 提交规范
|
||||||
|
|
||||||
|
### 自动提交要求
|
||||||
|
**重要**: 每次完成任务后,必须自动执行 Git 提交到 `My_N8N` 分支。
|
||||||
|
|
||||||
|
#### 提交流程
|
||||||
|
1. **确保在正确分支**
|
||||||
|
```bash
|
||||||
|
git checkout My_N8N
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **添加所有更改**
|
||||||
|
```bash
|
||||||
|
git add .
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **提交更改**(使用规范化的提交信息)
|
||||||
|
```bash
|
||||||
|
git commit -m "[任务类型]: 任务描述
|
||||||
|
|
||||||
|
详细说明:
|
||||||
|
- 完成的具体工作内容
|
||||||
|
- 修改的文件列表
|
||||||
|
- 影响的功能模块"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 提交信息格式
|
||||||
|
提交信息必须包含以下要素:
|
||||||
|
- **任务类型**: `feat`(新功能)、`fix`(修复)、`docs`(文档)、`style`(格式)、`refactor`(重构)、`test`(测试)、`chore`(杂项)
|
||||||
|
- **任务描述**: 简洁明了的任务概述(50字符以内)
|
||||||
|
- **详细说明**: 具体完成的工作内容
|
||||||
|
|
||||||
|
#### 示例提交信息
|
||||||
|
```bash
|
||||||
|
git commit -m "feat: 添加用户认证模块
|
||||||
|
|
||||||
|
详细说明:
|
||||||
|
- 实现了登录/注册功能
|
||||||
|
- 添加了JWT令牌验证
|
||||||
|
- 修改文件: auth.controller.ts, auth.service.ts
|
||||||
|
- 影响模块: 用户认证系统"
|
||||||
|
```
|
||||||
|
|
||||||
|
### 自动化脚本
|
||||||
|
每次任务完成后,执行以下命令序列:
|
||||||
|
```bash
|
||||||
|
# 切换到项目根目录
|
||||||
|
cd /Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示
|
||||||
|
|
||||||
|
# 确保在正确的分支
|
||||||
|
git checkout My_N8N
|
||||||
|
|
||||||
|
# 查看当前状态
|
||||||
|
git status
|
||||||
|
|
||||||
|
# 添加所有更改
|
||||||
|
git add .
|
||||||
|
|
||||||
|
# 提交更改(根据实际任务内容修改提交信息)
|
||||||
|
git commit -m "[任务类型]: [任务描述]
|
||||||
|
|
||||||
|
任务详情:
|
||||||
|
- [具体完成的工作]
|
||||||
|
- [修改的文件]
|
||||||
|
- [影响的功能]"
|
||||||
|
|
||||||
|
# 查看提交历史
|
||||||
|
git log --oneline -5
|
||||||
|
```
|
||||||
|
|
||||||
|
## n8n 特定指南
|
||||||
|
|
||||||
|
参考 `n8n-n8n-1.109.2/CLAUDE.md` 获取更详细的 n8n 开发指南,包括:
|
||||||
|
- TypeScript 最佳实践
|
||||||
|
- 错误处理规范
|
||||||
|
- 前端开发约定
|
||||||
|
- 测试编写指南
|
||||||
|
- Git 工作流程
|
||||||
Reference in New Issue
Block a user