Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
708d6dd
fix(binance): 修复 K 线 WebSocket 断开后无法重连导致 openPrice/closePrice 丢失的问题
WrBug Feb 26, 2026
a2be5b7
feat(crypto-tail): 价差策略监控页手动下单与 UI 优化
WrBug Feb 26, 2026
cb1f438
fix(crypto-tail): 周期切换时按周期拉取 tokenIds,修复手动下单 orderbook 不存在
WrBug Feb 26, 2026
9b4d8fc
feat(frontend): 优化加密价差策略监控页面移动端体验
WrBug Feb 26, 2026
79b1545
feat(frontend): 手动下单功能增强与金额模式支持
WrBug Feb 26, 2026
1967d97
fix(frontend): 修复 RATIO 模式下金额被错误截断的问题
WrBug Feb 26, 2026
1688fa9
feat(frontend): 优化"最大"按钮计算,支持保留2位小数
WrBug Feb 26, 2026
e5acad5
fix(frontend): 限制下单价格最高为 0.99
WrBug Feb 26, 2026
5483a1a
feat(frontend): 优化加密价差监控页面体验
WrBug Feb 26, 2026
3cc37da
feat(backend): 优化通知推送,区分输赢并显示可用余额
WrBug Feb 28, 2026
f86749e
feat(frontend): 优化 Leader 列表 UI,使用图标操作栏
WrBug Feb 28, 2026
4ebfacf
feat(frontend): 优化多个列表页面 UI,添加空状态提示
WrBug Feb 28, 2026
46e10eb
feat(crypto-tail): 加密价差策略收益曲线与交互优化
WrBug Mar 2, 2026
97249db
style(copy-trading): 跟单列表操作列改为图标按钮样式
WrBug Mar 2, 2026
96d224a
fix(frontend): 移除 CryptoTailStrategyList 未使用的 useRef 导入
WrBug Mar 2, 2026
9b6cc63
refactor(frontend): 优化仓位管理列表视图列结构
WrBug Mar 2, 2026
83bc209
refactor(ci): simplify docker-build workflow and update TG notifications
WrBug Mar 2, 2026
e7af4d4
feat: 消息推送自定义模板与独立设置页
WrBug Mar 2, 2026
8f0a494
refactor(notification): 优化模板配置布局并完善多语言支持
WrBug Mar 2, 2026
9c70dc7
fix(frontend): 移除未使用变量与导入以消除 TS 报错
WrBug Mar 2, 2026
b8e10f3
feat(skills): 添加 create-release skill 支持自动发布公告
WrBug Mar 2, 2026
561ebf0
feat(订单推送/通知): 按实际成交价与 size_matched 展示价格与数量
WrBug Mar 2, 2026
686d14b
fix(account): 卖出订单通知与创建订单失败错误展示
WrBug Mar 2, 2026
46c32df
fix(notification): 优化移动端消息设置页面交互体验
WrBug Mar 2, 2026
e78785d
Add AI bug report template
Mar 9, 2026
6cb48bb
Update AI bug report template to bilingual (English/Chinese)
Mar 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 20 additions & 1 deletion .cursor/skills/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@
│ └── package.json
├── backend/ # 后端相关 skill
└── common/ # 通用 skill
└── create-release/ # 创建 GitHub Release
├── SKILL.md
└── scripts/
└── create-release.sh
```

- **SKILL.md**:YAML frontmatter(`name`、`description` 必填,`name` 须与父文件夹名一致、小写连字符)+ 给 Agent 的详细指令。
Expand All @@ -27,7 +31,8 @@

## 示例

- `frontend/check-i18n-keys/SKILL.md` + `frontend/check-i18n-keys/scripts/` — 检查前端多语言 key。
- `frontend/check-i18n-keys/SKILL.md` + `frontend/check-i18n-keys/scripts/` — 检查前端多语言 key
- `common/create-release/SKILL.md` + `common/create-release/scripts/` — 创建 GitHub Release

## 运行 check-i18n-keys

Expand All @@ -37,3 +42,17 @@ npm install
npm run check-i18n
```

## 运行 create-release

```bash
cd .cursor/skills/common/create-release/scripts
./create-release.sh -t v1.0.0 -T "Release v1.0.0" -d "发布说明"
```

参数说明:
- `-t` 版本号(必需,格式 v1.0.0)
- `-T` Release 标题
- `-d` Release 描述
- `-p` 标记为 Pre-release(自动加 -beta 后缀)
- `-y` 无交互模式

341 changes: 341 additions & 0 deletions .cursor/skills/common/create-release/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,341 @@
---
name: create-release
description: 创建 PolyHermes 项目的 GitHub Release。当用户要求发布版本、创建 release、打 tag 或发布新版本时使用。
---

# Create Release

创建 PolyHermes 项目的 GitHub Release,包括创建 Git tag、推送 tag、创建 GitHub Release(支持 pre-release),并自动在 Issue #1 发布公告。

## 使用时机

- 用户要求「发布版本」「创建 release」「打 tag」「发布新版本」时
- 用户要求「创建 pre-release」「beta 版本」时
- 用户提到「v1.x.x」等版本号相关操作时

## 前置条件

1. **GitHub CLI 已安装**:确保 `gh` 命令可用
2. **已登录 GitHub**:运行 `gh auth status` 确认
3. **工作目录干净**:建议先提交所有更改

## 指令

### 步骤 1:收集发布信息

询问用户以下信息:
- 版本号(格式:vX.Y.Z,如 v1.0.0)
- 是否为 Pre-release(测试版本)
- Release 标题和描述(可选,如未提供则自动生成)

### 步骤 2:生成 Release 内容

**重要**:如果用户未提供描述,需要根据 Git commits 自动生成。

1. **获取上一个版本的 tag**:
```bash
git describe --tags --abbrev=0 HEAD
```

2. **获取版本间的 commits**:
```bash
git log <PREVIOUS_TAG>..HEAD --oneline --no-merges
```

3. **过滤 commit 规则**:
- **排除**:版本内新增功能的修复 commit
- **判断方法**:如果一个 commit 的消息包含「fix」「修复」「bugfix」等关键词,且是针对同一版本内新增代码的修复,则不包含
- **保留**:新功能、性能优化、重构、文档更新等

4. **生成中英文 Release 内容**:
- 格式要求:**中文在上,英文在下**
- 使用分隔线 `---` 分隔中英文部分
- 按功能类型分组(新功能、改进、修复等)

示例格式:
```markdown
## 新功能

- 添加了 A 功能
- 支持了 B 操作

## 改进

- 优化了 C 性能

---

## New Features

- Added feature A
- Supported operation B

## Improvements

- Optimized performance C
```

### 步骤 3:运行发布脚本

在项目根目录下执行:

```bash
cd .cursor/skills/common/create-release/scripts && \
chmod +x create-release.sh && \
./create-release.sh -t <VERSION> [-T "<TITLE>"] [-d "<DESCRIPTION>"] [-p] [-y]
```

### 步骤 4:发布公告到 Issue #1

**重要**:Release 创建成功后,必须自动在 Issue #1 下发布公告 comment。

1. **生成公告内容**(面向用户,通俗易懂):

公告格式模板:
```markdown
# 🎉 PolyHermes vX.X.X 版本发布公告

## 📅 发布日期

YYYY年MM月DD日

---

## ✨ 本次更新亮点

### 🚀 新功能

**功能名称**
- 用通俗的语言描述这个功能是什么
- 用户能从中获得什么好处
- 如何使用这个功能

### 🔧 改进优化

- 优化了 XXX,现在 XXX 更快/更稳定了
- 改进了 XXX 体验,操作更简单了

### 🐛 问题修复

- 修复了 XXX 问题,不再出现 XXX 情况

---

## 📦 如何更新

### Docker 部署(推荐)

```bash
# 拉取最新镜像
docker pull wrbug/polyhermes:vX.X.X

# 重启服务
docker-compose -f docker-compose.prod.yml down
docker-compose -f docker-compose.prod.yml up -d
```

---

## ⚠️ 安全提醒

**请务必使用官方 Docker 镜像源,避免财产损失!**

**官方镜像地址**:`wrbug/polyhermes`

---

## 📚 相关链接

- **GitHub Release**: https://github.com/WrBug/PolyHermes/releases/tag/vX.X.X
- **Docker Hub**: https://hub.docker.com/r/wrbug/polyhermes
```

2. **公告内容编写原则**:

- ✅ **通俗易懂**:避免技术术语,用用户能理解的语言
- ✅ **突出价值**:告诉用户这个更新对他们有什么好处
- ✅ **简洁明了**:每个功能点用 1-2 句话说明
- ✅ **包含操作指引**:告诉用户如何使用新功能
- ✅ **中英文双语**:中文在上,英文在下(可选)
- ❌ **避免**:commit hash、代码细节、内部实现

3. **执行发布公告命令**:

```bash
gh issue comment 1 --repo WrBug/PolyHermes --body "$(cat <<'EOF'
# 🎉 PolyHermes vX.X.X 版本发布公告

[公告内容...]

---
EOF
)"
```

或使用文件方式(内容较长时推荐):

```bash
echo "[公告内容...]" > /tmp/announcement.md
gh issue comment 1 --repo WrBug/PolyHermes --body-file /tmp/announcement.md
```

### 参数说明

| 参数 | 说明 | 示例 |
|------|------|------|
| `-t, --tag` | 版本号(必需) | `-t v1.0.0` |
| `-T, --title` | Release 标题 | `-T "Release v1.0.0"` |
| `-d, --description` | Release 描述 | `-d "## 新功能\n- 功能1"` |
| `-f, --description-file` | 从文件读取描述 | `-f CHANGELOG.md` |
| `-p, --prerelease` | 标记为 Pre-release(自动加 -beta 后缀) | `-p` |
| `-y, --yes` | 无交互模式 | `-y` |

## 版本号格式

- 必须格式:`v数字.数字.数字`(如 v1.0.0, v1.10.2, v1.1.12)
- 如果指定 `--prerelease`,会自动拼接 `-beta` 后缀(如 v1.0.1 → v1.0.1-beta)

## Release 内容生成规则

### 中英文格式

Release 描述**必须**使用中英文双语格式:

```markdown
## 中文标题

- 内容项1
- 内容项2

---

## English Title

- Item 1
- Item 2
```

### Commit 过滤规则

**需要排除的 commit 类型**:

1. **版本内修复**:对同一版本新增功能的后续修复
- 例如:v1.0.1 新增了功能 A,然后有一个 commit 修复功能 A 的 bug → 不包含
- 判断依据:commit 消息包含「fix」「修复」「bugfix」且相关功能在本版本新增

2. **琐碎修改**:
- typo 修正
- 代码格式调整
- 注释更新

**需要保留的 commit 类型**:

1. 新功能(feat、feature)
2. 改进/优化(improve、optimize、enhance)
3. 重要 bug 修复(针对旧版本的 bug)
4. 重构(refactor)
5. 文档更新(docs)

### 分组建议

- **新功能 / New Features**
- **改进 / Improvements**
- **修复 / Bug Fixes**(仅包含对旧版本 bug 的修复)
- **其他 / Others**

## 公告内容示例

以下是一个面向用户的公告示例:

```markdown
# 🎉 PolyHermes v1.2.0 版本发布公告

## 📅 发布日期

2026年3月2日

---

## ✨ 本次更新亮点

### 🚀 新功能

**系统自动更新**
- 现在可以在网页上直接更新系统,无需手动重启 Docker
- 更新过程约 30-60 秒,系统会自动处理
- 如果更新失败,系统会自动恢复到旧版本

**RPC 节点管理**
- 可以在系统设置中添加、编辑、删除自定义 RPC 节点
- 可以随时启用或禁用节点
- 系统会自动选择可用的节点

### 🔧 改进优化

- **更快的跟单响应**:通过实时监听链上交易,跟单速度提升到秒级
- **更准确的盈亏统计**:系统会自动追踪实际成交价,统计数据更准确
- **内存占用优化**:修复了内存泄漏问题,系统可以长时间稳定运行

### 🐛 问题修复

- 修复了部分市场无法正确查询价格的问题
- 修复了卖出订单偶发失败的问题

---

## 📦 如何更新

### 方式一:网页更新(推荐)

1. 登录系统,进入 **系统设置** → **系统更新**
2. 点击 **检查更新**
3. 如果有新版本,点击 **立即升级**
4. 等待更新完成即可

### 方式二:Docker 更新

```bash
docker pull wrbug/polyhermes:v1.2.0
docker-compose -f docker-compose.prod.yml down
docker-compose -f docker-compose.prod.yml up -d
```

---

## ⚠️ 安全提醒

**请务必使用官方 Docker 镜像源!**

官方镜像:`wrbug/polyhermes`

---

## 📚 相关链接

- **GitHub Release**: https://github.com/WrBug/PolyHermes/releases/tag/v1.2.0
- **Docker Hub**: https://hub.docker.com/r/wrbug/polyhermes
```

## 发布流程

1. 验证版本号格式
2. 检查 Git 工作目录状态
3. 检查 tag 是否已存在
4. 生成 Release 内容(中英文)
5. 创建本地 tag
6. 推送 tag 到远程
7. 创建 GitHub Release
8. **生成面向用户的公告内容**
9. **发布公告到 Issue #1**
10. 返回 Release URL 和公告链接

## 注意事项

- Pre-release 版本不会触发 Telegram 通知
- GitHub Actions 会自动触发构建流程
- 如果 tag 已存在,会提示是否删除并重新创建
- **必须**在 Release 创建成功后发布公告到 Issue #1

## 可选目录说明

- `scripts/`:包含 `create-release.sh` 发布脚本
Original file line number Diff line number Diff line change
Expand Up @@ -346,4 +346,3 @@ main() {

# 执行主函数
main "$@"

Loading