claude-pangu 2.1.13 → 2.1.15
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/.claude-plugin/plugin.json +1 -1
- package/hooks/auto-update-checker.sh +94 -0
- package/hooks/hooks.json +11 -0
- package/hooks/keyword-detector.sh +50 -21
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://code.claude.com/plugin-schema.json",
|
|
3
3
|
"name": "oh-my-claude",
|
|
4
|
-
"version": "2.1.
|
|
4
|
+
"version": "2.1.15",
|
|
5
5
|
"hooks": "./hooks/hooks.json",
|
|
6
6
|
"description": "基于中国传统文化的 Claude Code 智能编排插件 - A Claude Code plugin inspired by Chinese traditional culture",
|
|
7
7
|
"author": "ZDragon17",
|
|
@@ -520,11 +520,105 @@ detect_update_commands() {
|
|
|
520
520
|
return 1
|
|
521
521
|
}
|
|
522
522
|
|
|
523
|
+
# ==================== SessionStart 专用函数 ====================
|
|
524
|
+
|
|
525
|
+
# SessionStart 时的快速检查和自动更新
|
|
526
|
+
# 特点:
|
|
527
|
+
# 1. 非阻塞 - 不影响启动速度
|
|
528
|
+
# 2. 静默 - 只在有更新时才显示消息
|
|
529
|
+
# 3. 自动更新 - 后台执行更新
|
|
530
|
+
session_start_check() {
|
|
531
|
+
log "SessionStart 触发自动更新检查"
|
|
532
|
+
|
|
533
|
+
# 首先检查之前的后台更新是否完成
|
|
534
|
+
check_background_update_result
|
|
535
|
+
|
|
536
|
+
# 检查插件是否安装
|
|
537
|
+
if ! is_plugin_installed; then
|
|
538
|
+
log "插件未安装,跳过更新检查"
|
|
539
|
+
return 0
|
|
540
|
+
fi
|
|
541
|
+
|
|
542
|
+
# 检查是否有正在进行的后台更新
|
|
543
|
+
local pid_file="$UPDATE_CACHE/update-pid.txt"
|
|
544
|
+
if [ -f "$pid_file" ]; then
|
|
545
|
+
local pid=$(cat "$pid_file" 2>/dev/null)
|
|
546
|
+
if kill -0 "$pid" 2>/dev/null; then
|
|
547
|
+
log "后台更新正在进行中 (PID: $pid),跳过本次检查"
|
|
548
|
+
return 0
|
|
549
|
+
fi
|
|
550
|
+
fi
|
|
551
|
+
|
|
552
|
+
# 检查是否需要检查(时间间隔)- SessionStart 时使用较短的间隔检查
|
|
553
|
+
# 但如果距离上次检查不足 1 小时,则跳过
|
|
554
|
+
local last_check=$(get_last_check_time)
|
|
555
|
+
if [ -n "$last_check" ]; then
|
|
556
|
+
local last_ts=$(date -d "$last_check" +%s 2>/dev/null || date -j -f "%Y-%m-%dT%H:%M:%S" "$last_check" +%s 2>/dev/null || echo 0)
|
|
557
|
+
local now_ts=$(date +%s)
|
|
558
|
+
local hours_diff=$(( (now_ts - last_ts) / 3600 ))
|
|
559
|
+
|
|
560
|
+
if [ "$hours_diff" -lt 1 ]; then
|
|
561
|
+
log "距离上次检查不足 1 小时,跳过"
|
|
562
|
+
return 0
|
|
563
|
+
fi
|
|
564
|
+
fi
|
|
565
|
+
|
|
566
|
+
log "开始 SessionStart 更新检查"
|
|
567
|
+
|
|
568
|
+
local current=$(get_current_version)
|
|
569
|
+
local latest=$(get_latest_npm_version)
|
|
570
|
+
|
|
571
|
+
if [ -z "$latest" ]; then
|
|
572
|
+
latest=$(get_latest_github_version)
|
|
573
|
+
fi
|
|
574
|
+
|
|
575
|
+
local status=$(compare_versions "$current" "$latest")
|
|
576
|
+
|
|
577
|
+
save_update_state "$current" "$latest" "$status"
|
|
578
|
+
|
|
579
|
+
# 如果有更新且启用了自动更新
|
|
580
|
+
if [ "$status" = "outdated" ]; then
|
|
581
|
+
if [ "$AUTO_UPDATE" = "true" ]; then
|
|
582
|
+
# 输出 JSON 格式的 systemMessage,在启动时显示更新提示
|
|
583
|
+
cat << EOF
|
|
584
|
+
{
|
|
585
|
+
"hookSpecificOutput": {
|
|
586
|
+
"hookEventName": "SessionStart",
|
|
587
|
+
"additionalContext": "🔄 oh-my-claude 发现新版本: $current → $latest,正在后台自动更新..."
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
EOF
|
|
591
|
+
# 启动后台更新
|
|
592
|
+
background_update "$current" "$latest"
|
|
593
|
+
else
|
|
594
|
+
# 非自动更新模式:只显示提示
|
|
595
|
+
cat << EOF
|
|
596
|
+
{
|
|
597
|
+
"hookSpecificOutput": {
|
|
598
|
+
"hookEventName": "SessionStart",
|
|
599
|
+
"additionalContext": "🔔 oh-my-claude 有新版本可用! 当前: $current → 最新: $latest。更新命令: npm update -g $PACKAGE_NAME"
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
EOF
|
|
603
|
+
fi
|
|
604
|
+
else
|
|
605
|
+
log "当前已是最新版本或无法确定版本状态: $status"
|
|
606
|
+
fi
|
|
607
|
+
|
|
608
|
+
return 0
|
|
609
|
+
}
|
|
610
|
+
|
|
523
611
|
# ==================== 主函数 ====================
|
|
524
612
|
|
|
525
613
|
main() {
|
|
526
614
|
local input="$1"
|
|
527
615
|
|
|
616
|
+
# 检查是否是 SessionStart 模式
|
|
617
|
+
if [ "$input" = "--session-start" ]; then
|
|
618
|
+
session_start_check
|
|
619
|
+
exit 0
|
|
620
|
+
fi
|
|
621
|
+
|
|
528
622
|
if [ -z "$input" ]; then
|
|
529
623
|
# 无输入时,执行自动检查
|
|
530
624
|
auto_check_update
|
package/hooks/hooks.json
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"hooks": {
|
|
3
|
+
"SessionStart": [
|
|
4
|
+
{
|
|
5
|
+
"type": "command",
|
|
6
|
+
"command": "bash ${CLAUDE_PLUGIN_ROOT}/hooks/auto-update-checker.sh --session-start",
|
|
7
|
+
"timeout": 10000,
|
|
8
|
+
"continueOnError": true,
|
|
9
|
+
"priority": "low",
|
|
10
|
+
"windows_compatible": true,
|
|
11
|
+
"description": "启动时自动检查更新 - 后台静默检查和更新"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
3
14
|
"Stop": [
|
|
4
15
|
{
|
|
5
16
|
"type": "command",
|
|
@@ -57,9 +57,35 @@ fi
|
|
|
57
57
|
|
|
58
58
|
# ============================================================================
|
|
59
59
|
# 第一优先级:愚公移山模式(最高优先级,需要持续执行)
|
|
60
|
+
# v2.1.13: 扩展自然语言触发,自动识别大任务需求
|
|
60
61
|
# ============================================================================
|
|
61
62
|
|
|
63
|
+
# 显式触发词(命令式)
|
|
64
|
+
explicit_yishan=false
|
|
62
65
|
if echo "$prompt_lower" | grep -qE '(ultra[-_]?work|ulw|移山|yi[-_]?shan|persist|愚公|yu[-_]?gong)'; then
|
|
66
|
+
explicit_yishan=true
|
|
67
|
+
fi
|
|
68
|
+
|
|
69
|
+
# 隐式触发词(自然语言表达大任务意图)
|
|
70
|
+
# 模式: [动词] + [大规模/完整/整个] + [名词]
|
|
71
|
+
implicit_yishan=false
|
|
72
|
+
if echo "$prompt_lower" | grep -qE '(实现|开发|创建|构建|搭建|完成|做|写|build|implement|create|develop|make).{0,10}(功能|模块|系统|页面|组件|服务|接口|feature|module|system|page|component|service|api)'; then
|
|
73
|
+
implicit_yishan=true
|
|
74
|
+
fi
|
|
75
|
+
# 模式: 重构/重写/升级 整个/全部
|
|
76
|
+
if echo "$prompt_lower" | grep -qE '(重构|重写|升级|迁移|refactor|rewrite|upgrade|migrate).{0,5}(整个|全部|所有|entire|whole|all)'; then
|
|
77
|
+
implicit_yishan=true
|
|
78
|
+
fi
|
|
79
|
+
# 模式: 帮我/请/给我 + 动词 + 功能
|
|
80
|
+
if echo "$prompt_lower" | grep -qE '(帮我|请|给我|help me|please).{0,5}(实现|开发|创建|写|做|build|implement|create|develop|make)'; then
|
|
81
|
+
implicit_yishan=true
|
|
82
|
+
fi
|
|
83
|
+
# 模式: 添加/新增 + 功能/模块
|
|
84
|
+
if echo "$prompt_lower" | grep -qE '(添加|新增|加入|增加|add|new).{0,5}(功能|模块|特性|feature|module)'; then
|
|
85
|
+
implicit_yishan=true
|
|
86
|
+
fi
|
|
87
|
+
|
|
88
|
+
if [ "$explicit_yishan" = true ] || [ "$implicit_yishan" = true ]; then
|
|
63
89
|
cat << 'EOF'
|
|
64
90
|
{
|
|
65
91
|
"systemMessage": "\n\n<ultrawork-mode>\n🏔️ **愚公移山模式已激活!**\n\n[CODE RED] 最高精度要求。行动前深度思考。\n\n## 执行规则(非协商)\n\n### 1. TODO 强制执行\n- 必须使用 TodoWrite 分解任务\n- 完成一个就标记一个\n- TODO 未全部完成前不能停止\n\n### 2. 并行执行\n- 独立任务应并行发起 background_task\n- 不要顺序等待,浪费时间\n\n### 3. 验证保证\n- 没有证据 = 没有完成\n- 运行测试/构建,展示输出\n\n### 4. 零容忍\n- 禁止范围缩减(不做 demo/简化版)\n- 禁止部分完成(100% 或不做)\n- 禁止提前停止(TODO 全完成后才能停)\n\n### 5. 自检机制\n每次准备停止前:\n1. 读取 TODO 列表\n2. 检查有无 pending/in_progress\n3. 有 → 继续工作\n4. 全完成 → 可以停止\n\n**愚公精神:坚持必将成功!**\n</ultrawork-mode>\n"
|
|
@@ -83,13 +109,14 @@ fi
|
|
|
83
109
|
|
|
84
110
|
# ============================================================================
|
|
85
111
|
# 第三优先级:调试/诊断类(紧急问题处理)
|
|
112
|
+
# v2.1.13: 直接激活扁鹊诊断模式,无需再输入命令
|
|
86
113
|
# ============================================================================
|
|
87
114
|
|
|
88
115
|
# 检测调试关键词 - 优先处理紧急问题
|
|
89
|
-
if echo "$prompt_lower" | grep -qE '(fix.{0,20}(bug|error)|debug|调试|报错|异常|exception|扁鹊|bianque|诊断|diagnose|crash|崩溃|挂了|不工作|not working)'; then
|
|
116
|
+
if echo "$prompt_lower" | grep -qE '(fix.{0,20}(bug|error)|debug|调试|报错|异常|exception|扁鹊|bianque|诊断|diagnose|crash|崩溃|挂了|不工作|not working|为什么.{0,10}(报错|失败|出错)|怎么.{0,5}(修|解决)|这个.{0,5}(错误|bug|问题))'; then
|
|
90
117
|
cat << 'EOF'
|
|
91
118
|
{
|
|
92
|
-
"systemMessage": "\n\n🩺
|
|
119
|
+
"systemMessage": "\n\n<bianque-mode>\n🩺 **扁鹊诊断模式已激活!**\n\n## 望闻问切诊断流程\n\n### 1. 望 - 观察错误表象\n- 仔细阅读错误信息\n- 记录错误类型、位置、调用栈\n\n### 2. 闻 - 收集上下文\n- 检查相关代码文件\n- 了解最近的改动\n- 查看环境配置\n\n### 3. 问 - 确认症状\n- 什么时候开始出现?\n- 是否可以复现?\n- 有哪些条件触发?\n\n### 4. 切 - 定位根因\n- 追踪调用链\n- 检查变量状态\n- 验证假设\n\n### 输出格式\n```\n📋 诊断报告\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n🔴 症状: [错误描述]\n🔍 根因: [分析结果]\n💊 处方: [修复方案]\n🛡️ 预防: [如何避免]\n```\n\n**请提供错误信息或描述问题,我来诊断。**\n</bianque-mode>\n"
|
|
93
120
|
}
|
|
94
121
|
EOF
|
|
95
122
|
exit 0
|
|
@@ -102,7 +129,7 @@ fi
|
|
|
102
129
|
if echo "$prompt_lower" | grep -qE '(安全|漏洞|注入|security|vulnerab|injection|墨子|mozi|audit|审计|xss|csrf|防御|渗透|pentest)'; then
|
|
103
130
|
cat << 'EOF'
|
|
104
131
|
{
|
|
105
|
-
"systemMessage": "\n\n🛡️
|
|
132
|
+
"systemMessage": "\n\n<mozi-mode>\n🛡️ **墨子安全审计模式已激活!**\n\n## 兼爱非攻 - 防御性安全审计\n\n### 1. 输入验证\n- [ ] 所有用户输入已验证\n- [ ] SQL 注入防护(参数化查询)\n- [ ] XSS 防护(输出编码)\n- [ ] 命令注入防护\n\n### 2. 认证授权\n- [ ] 密码安全存储(bcrypt/argon2)\n- [ ] JWT/Session 安全配置\n- [ ] 权限检查完整性\n- [ ] CSRF 防护\n\n### 3. 数据安全\n- [ ] 敏感数据加密\n- [ ] 日志脱敏\n- [ ] 安全传输(HTTPS)\n\n### 4. 依赖安全\n- [ ] 无已知漏洞依赖\n- [ ] 依赖版本更新\n\n**请提供要审计的代码或描述安全需求。**\n</mozi-mode>\n"
|
|
106
133
|
}
|
|
107
134
|
EOF
|
|
108
135
|
exit 0
|
|
@@ -115,12 +142,13 @@ fi
|
|
|
115
142
|
# 优化:移除单独的"测试"/"test",避免误触发
|
|
116
143
|
# "测试一下这个功能"不应触发测试模式
|
|
117
144
|
# 只有明确的测试开发需求才触发
|
|
145
|
+
# v2.1.13: 直接激活包拯测试模式
|
|
118
146
|
if echo "$prompt_lower" | grep -qE '(单元测试|集成测试|unit[-_]?test|integration[-_]?test|tdd|jest|vitest|pytest|包拯|baozheng|开封|coverage|覆盖率|e2e|端到端|测试用例|test[-_]?case|测试覆盖|写测试|添加测试|补测试)' || \
|
|
119
147
|
echo "$prompt_lower" | grep -qE '(写|添加|补充|增加|创建).{0,5}测试' || \
|
|
120
148
|
echo "$prompt_lower" | grep -qE '测试.{0,5}(用例|覆盖|框架|策略)'; then
|
|
121
149
|
cat << 'EOF'
|
|
122
150
|
{
|
|
123
|
-
"systemMessage": "\n\n⚖️
|
|
151
|
+
"systemMessage": "\n\n<baozheng-mode>\n⚖️ **包拯测试模式已激活!**\n\n## 测试设计原则\n\n### 1. 测试金字塔\n- 🔺 单元测试 (70%) - 快速、隔离\n- 🔸 集成测试 (20%) - 组件交互\n- 🔹 E2E测试 (10%) - 完整流程\n\n### 2. 测试覆盖要求\n- 正常路径 (Happy Path)\n- 边界条件 (Boundary)\n- 异常情况 (Error Cases)\n- 空值处理 (Null/Undefined)\n\n### 3. TDD 流程\n1. 🔴 Red - 先写失败的测试\n2. 🟢 Green - 最小实现让测试通过\n3. 🔵 Refactor - 重构优化\n\n### 4. 测试命名\n```\nshould_[期望行为]_when_[条件]\n```\n\n**请告诉我要测试什么功能或代码。**\n</baozheng-mode>\n"
|
|
124
152
|
}
|
|
125
153
|
EOF
|
|
126
154
|
exit 0
|
|
@@ -133,7 +161,7 @@ fi
|
|
|
133
161
|
if echo "$prompt_lower" | grep -qE '(数据库|database|sql|表设计|索引|index|migration|mysql|postgresql|mongo|redis|仓颉|cangjie|造字|数据建模|schema|orm)'; then
|
|
134
162
|
cat << 'EOF'
|
|
135
163
|
{
|
|
136
|
-
"systemMessage": "\n\n📊
|
|
164
|
+
"systemMessage": "\n\n<cangjie-mode>\n📊 **仓颉数据库模式已激活!**\n\n## 观察规律,创造结构\n\n### 1. 数据建模原则\n- 实体识别与关系梳理\n- 范式化 vs 反范式化权衡\n- 主键/外键设计\n\n### 2. 表结构设计\n- 字段类型选择(精确匹配)\n- 约束定义(NOT NULL, UNIQUE, CHECK)\n- 默认值和自动填充\n\n### 3. 索引策略\n- 主键索引(自动)\n- 查询字段索引\n- 复合索引顺序\n- 覆盖索引优化\n\n### 4. 性能考量\n- 避免 SELECT *\n- 分页优化\n- 批量操作\n- 读写分离\n\n### 输出格式\n```sql\n-- 表结构 DDL\n-- 索引 DDL \n-- 示例查询\n```\n\n**请描述你的数据需求或提供现有表结构。**\n</cangjie-mode>\n"
|
|
137
165
|
}
|
|
138
166
|
EOF
|
|
139
167
|
exit 0
|
|
@@ -153,7 +181,7 @@ if echo "$prompt_lower" | grep -qE '(性能|慢|slow|孙子|sunzi|perf|瓶颈|bo
|
|
|
153
181
|
echo "$prompt_lower" | grep -qE '(performance|speed|memory|cpu|loading).{0,10}optimi[sz]'; then
|
|
154
182
|
cat << 'EOF'
|
|
155
183
|
{
|
|
156
|
-
"systemMessage": "\n\n⚔️
|
|
184
|
+
"systemMessage": "\n\n<sunzi-mode>\n⚔️ **孙子性能优化模式已激活!**\n\n## 知己知彼,百战不殆\n\n### 1. 侦察 - 性能分析\n- 定位慢操作(Profiler/DevTools)\n- 识别瓶颈类型(CPU/IO/Network/Memory)\n- 测量基准数据\n\n### 2. 谋略 - 优化策略\n\n**前端优化**:\n- 懒加载 / 代码分割\n- 虚拟滚动 / 分页\n- 缓存策略 / CDN\n- 图片优化 / WebP\n\n**后端优化**:\n- 数据库索引 / 查询优化\n- 缓存层(Redis/Memcached)\n- 连接池 / 批量操作\n- 异步处理 / 队列\n\n**算法优化**:\n- 时间复杂度降级\n- 空间换时间\n- 减少循环嵌套\n\n### 3. 验证 - 效果测量\n- 优化前后对比\n- 压力测试\n- 监控告警\n\n**请描述性能问题或提供要优化的代码。**\n</sunzi-mode>\n"
|
|
157
185
|
}
|
|
158
186
|
EOF
|
|
159
187
|
exit 0
|
|
@@ -170,7 +198,7 @@ if echo "$prompt_lower" | grep -qE '(api|集成|对接|integrate|webhook|sdk|res
|
|
|
170
198
|
echo "$prompt_lower" | grep -qE '(设计|开发|封装|对接|调用).{0,5}(api|接口)'; then
|
|
171
199
|
cat << 'EOF'
|
|
172
200
|
{
|
|
173
|
-
"systemMessage": "\n\n⛵ **郑和 API
|
|
201
|
+
"systemMessage": "\n\n<zhenghe-mode>\n⛵ **郑和 API 远航模式已激活!**\n\n## 七下西洋 - API 集成专家\n\n### 1. 航线规划 - API 设计\n- RESTful 资源设计\n- 请求/响应格式\n- 错误码规范\n- 版本策略\n\n### 2. 远航出发 - 集成实现\n\n**HTTP 客户端**:\n```typescript\n// 统一封装示例\nconst api = {\n baseURL: '',\n timeout: 10000,\n interceptors: { request, response }\n}\n```\n\n**认证方式**:\n- API Key\n- OAuth 2.0\n- JWT Bearer\n\n**错误处理**:\n- 重试策略\n- 超时处理\n- 降级方案\n\n### 3. 航海日志 - 文档\n- OpenAPI/Swagger 规范\n- 请求示例\n- 响应示例\n\n**请描述要集成的 API 或提供 API 文档。**\n</zhenghe-mode>\n"
|
|
174
202
|
}
|
|
175
203
|
EOF
|
|
176
204
|
exit 0
|
|
@@ -183,7 +211,7 @@ fi
|
|
|
183
211
|
if echo "$prompt_lower" | grep -qE '(devops|ci/cd|cicd|部署|运维|docker|kubernetes|k8s|容器|terraform|基础设施|流水线|pipeline|李冰|libing|都江堰|helm|argocd)'; then
|
|
184
212
|
cat << 'EOF'
|
|
185
213
|
{
|
|
186
|
-
"systemMessage": "\n\n🌊 **李冰 DevOps
|
|
214
|
+
"systemMessage": "\n\n<libing-mode>\n🌊 **李冰 DevOps 模式已激活!**\n\n## 都江堰水利智慧 - 分而治之\n\n### 1. CI/CD 流水线\n```yaml\n# 标准流程\nstages:\n - build # 构建\n - test # 测试\n - deploy # 部署\n```\n\n### 2. 容器化\n**Dockerfile 最佳实践**:\n- 多阶段构建\n- 最小基础镜像\n- 非 root 用户\n- 健康检查\n\n### 3. Kubernetes\n- Deployment/Service/Ingress\n- ConfigMap/Secret\n- HPA 自动扩缩\n- Helm Charts\n\n### 4. 基础设施即代码\n- Terraform 模块化\n- 环境一致性\n- 状态管理\n- 变更审计\n\n### 5. 监控告警\n- Prometheus + Grafana\n- 日志聚合\n- 链路追踪\n\n**请描述你的 DevOps 需求。**\n</libing-mode>\n"
|
|
187
215
|
}
|
|
188
216
|
EOF
|
|
189
217
|
exit 0
|
|
@@ -196,7 +224,7 @@ fi
|
|
|
196
224
|
if echo "$prompt_lower" | grep -qE '(监控|日志|告警|追踪|monitor|logging|alert|trace|metrics|prometheus|grafana|张衡|zhangheng|可观测|observab|elk|sentry)'; then
|
|
197
225
|
cat << 'EOF'
|
|
198
226
|
{
|
|
199
|
-
"systemMessage": "\n\n🔭
|
|
227
|
+
"systemMessage": "\n\n<zhangheng-mode>\n🔭 **张衡监控观测模式已激活!**\n\n## 候风地动仪 - 感知预警\n\n### 1. 指标监控 (Metrics)\n- 系统指标:CPU/Memory/Disk/Network\n- 应用指标:QPS/延迟/错误率\n- 业务指标:订单量/转化率\n\n### 2. 日志系统 (Logging)\n- 结构化日志\n- 日志级别规范\n- 聚合与检索\n- 敏感信息脱敏\n\n### 3. 链路追踪 (Tracing)\n- 分布式追踪 ID\n- 调用链可视化\n- 性能瓶颈定位\n\n### 4. 告警配置\n```yaml\n# 告警规则示例\nalert: HighErrorRate\nexpr: error_rate > 0.05\nfor: 5m\nlabels:\n severity: critical\n```\n\n### 5. 仪表盘\n- 关键指标概览\n- 趋势分析\n- 异常检测\n\n**请描述你的监控需求。**\n</zhangheng-mode>\n"
|
|
200
228
|
}
|
|
201
229
|
EOF
|
|
202
230
|
exit 0
|
|
@@ -209,7 +237,7 @@ fi
|
|
|
209
237
|
if echo "$prompt_lower" | grep -qE '(云原生|cloud[-_]?native|serverless|无服务器|lambda|函数计算|嫦娥|change|moon|云端|faas|aws|azure|gcp)'; then
|
|
210
238
|
cat << 'EOF'
|
|
211
239
|
{
|
|
212
|
-
"systemMessage": "\n\n🌙
|
|
240
|
+
"systemMessage": "\n\n<change-mode>\n🌙 **嫦娥云端仙子模式已激活!**\n\n## 广寒宫 - 云原生架构\n\n### 1. Serverless 函数\n- AWS Lambda / Azure Functions / Cloud Functions\n- 冷启动优化\n- 内存配置\n- 超时设置\n\n### 2. 云服务集成\n**存储**: S3/Blob/GCS\n**数据库**: DynamoDB/CosmosDB/Firestore\n**消息队列**: SQS/Service Bus/Pub/Sub\n**CDN**: CloudFront/Azure CDN\n\n### 3. 架构模式\n- 事件驱动\n- API Gateway + Lambda\n- 微服务通信\n- 无状态设计\n\n### 4. 成本优化\n- 按需付费 vs 预留实例\n- 自动扩缩容\n- 资源标签管理\n- 成本监控\n\n### 5. 安全合规\n- IAM 最小权限\n- VPC 网络隔离\n- 密钥管理\n- 审计日志\n\n**请描述你的云原生需求。**\n</change-mode>\n"
|
|
213
241
|
}
|
|
214
242
|
EOF
|
|
215
243
|
exit 0
|
|
@@ -220,12 +248,13 @@ fi
|
|
|
220
248
|
# ============================================================================
|
|
221
249
|
|
|
222
250
|
# 注意:pr 需要作为独立词或在 pull request 上下文中,避免匹配 progress 等词
|
|
223
|
-
|
|
251
|
+
# v2.1.13: 直接激活魏征审查模式
|
|
252
|
+
if echo "$prompt_lower" | grep -qE '(审查|code[-_]?review|review|cr|pull[-_]?request|魏征|weizheng|谏|规范检查|代码评审|看看.{0,5}代码|检查.{0,5}(代码|这个)|帮我.{0,5}review)' || \
|
|
224
253
|
echo "$prompt_lower" | grep -qE '\bpr\b' || \
|
|
225
254
|
echo "$prompt_lower" | grep -qE '(提交|合并).{0,5}pr'; then
|
|
226
255
|
cat << 'EOF'
|
|
227
256
|
{
|
|
228
|
-
"systemMessage": "\n\n🪞
|
|
257
|
+
"systemMessage": "\n\n<weizheng-mode>\n🪞 **魏征审查模式已激活!**\n\n## 代码审查清单\n\n### 1. 代码规范\n- [ ] 命名是否清晰有意义\n- [ ] 函数是否单一职责\n- [ ] 是否遵循项目代码风格\n\n### 2. 逻辑正确性\n- [ ] 边界条件处理\n- [ ] 错误处理完整性\n- [ ] 空值检查\n\n### 3. 安全性\n- [ ] 输入验证\n- [ ] SQL注入防护\n- [ ] XSS防护\n\n### 4. 性能\n- [ ] 不必要的循环\n- [ ] N+1 查询\n- [ ] 内存泄漏风险\n\n### 5. 可维护性\n- [ ] 代码重复\n- [ ] 注释是否必要且准确\n- [ ] 测试覆盖\n\n**请提供要审查的代码或文件路径。**\n</weizheng-mode>\n"
|
|
229
258
|
}
|
|
230
259
|
EOF
|
|
231
260
|
exit 0
|
|
@@ -238,7 +267,7 @@ fi
|
|
|
238
267
|
if echo "$prompt_lower" | grep -qE '(简洁|简化|重构|refactor|kiss|yagni|dry|clean[-_]?code|代码异味|code[-_]?smell|老子|laozi|道德经|至简|simplify|技术债|technical[-_]?debt)'; then
|
|
239
268
|
cat << 'EOF'
|
|
240
269
|
{
|
|
241
|
-
"systemMessage": "\n\n☯️
|
|
270
|
+
"systemMessage": "\n\n<laozi-mode>\n☯️ **老子简洁之道模式已激活!**\n\n## 大道至简 - Clean Code 原则\n\n### 1. KISS - Keep It Simple, Stupid\n- 简单的代码更容易理解和维护\n- 避免过度设计\n- 一个函数做一件事\n\n### 2. YAGNI - You Aren't Gonna Need It\n- 不要为未来需求编码\n- 删除未使用的代码\n- 需要时再添加功能\n\n### 3. DRY - Don't Repeat Yourself\n- 提取重复代码为函数\n- 使用配置替代硬编码\n- 单一数据源原则\n\n### 4. 代码异味检测\n- 过长函数(>20行)\n- 过深嵌套(>3层)\n- 重复代码\n- 过多参数(>3个)\n- 注释过多(代码不够清晰)\n\n### 5. 重构手法\n- 提取方法\n- 内联变量\n- 重命名\n- 简化条件表达式\n\n**请提供要简化的代码。**\n</laozi-mode>\n"
|
|
242
271
|
}
|
|
243
272
|
EOF
|
|
244
273
|
exit 0
|
|
@@ -251,7 +280,7 @@ fi
|
|
|
251
280
|
if echo "$prompt_lower" | grep -qE '(界面设计|美学|ux|用户体验|视觉设计|交互设计|顾恺之|gukaizhi|painter|配色|布局|figma|sketch)'; then
|
|
252
281
|
cat << 'EOF'
|
|
253
282
|
{
|
|
254
|
-
"systemMessage": "\n\n🎨
|
|
283
|
+
"systemMessage": "\n\n<gukaizhi-mode>\n🎨 **顾恺之界面美学模式已激活!**\n\n## 以形写神 - UI/UX 设计\n\n### 1. 视觉层次\n- 信息优先级\n- 留白运用\n- 对比与平衡\n- 视觉引导\n\n### 2. 配色方案\n- 主色/辅色/强调色\n- 色彩心理学\n- 无障碍对比度\n- 暗色模式适配\n\n### 3. 布局原则\n- 网格系统\n- 响应式设计\n- 组件间距\n- 触控区域\n\n### 4. 交互设计\n- 反馈及时性\n- 加载状态\n- 错误提示\n- 微交互动画\n\n### 5. 组件设计\n- 一致性\n- 可复用性\n- 可访问性\n- 设计系统\n\n**请描述你的界面设计需求。**\n</gukaizhi-mode>\n"
|
|
255
284
|
}
|
|
256
285
|
EOF
|
|
257
286
|
exit 0
|
|
@@ -264,7 +293,7 @@ fi
|
|
|
264
293
|
if echo "$prompt_lower" | grep -qE '(前端|组件|react|vue|angular|frontend|component|craft|鲁班|luban|巧工|qiaogong|html|css|javascript|typescript|nextjs|nuxt)'; then
|
|
265
294
|
cat << 'EOF'
|
|
266
295
|
{
|
|
267
|
-
"systemMessage": "\n\n🔧
|
|
296
|
+
"systemMessage": "\n\n<luban-mode>\n🔧 **鲁班巧匠模式已激活!**\n\n## 精益求精 - 前端工匠\n\n### 1. 组件设计\n- 单一职责\n- Props 接口定义\n- 默认值处理\n- 类型安全\n\n### 2. 状态管理\n- 本地 vs 全局状态\n- 状态提升\n- 派生状态\n- 副作用处理\n\n### 3. 样式方案\n- CSS Modules / Tailwind / CSS-in-JS\n- 响应式设计\n- 主题系统\n- 动画过渡\n\n### 4. 性能优化\n- 组件懒加载\n- 虚拟列表\n- 防抖节流\n- 缓存策略\n\n### 5. 代码质量\n```typescript\n// 组件模板\ninterface Props {\n // 明确的类型定义\n}\n\nexport function Component({ ...props }: Props) {\n // 清晰的实现\n}\n```\n\n**请描述要实现的前端功能或组件。**\n</luban-mode>\n"
|
|
268
297
|
}
|
|
269
298
|
EOF
|
|
270
299
|
exit 0
|
|
@@ -277,7 +306,7 @@ fi
|
|
|
277
306
|
if echo "$prompt_lower" | grep -qE '(需求|用户故事|prd|功能规划|requirements|user[-_]?story|feature[-_]?spec|李白|libai|poet|产品)'; then
|
|
278
307
|
cat << 'EOF'
|
|
279
308
|
{
|
|
280
|
-
"systemMessage": "\n\n✨
|
|
309
|
+
"systemMessage": "\n\n<libai-mode>\n✨ **李白需求炼金师模式已激活!**\n\n## 天生我材必有用 - 需求挖掘\n\n### 1. 需求挖掘\n- 谁是用户?\n- 用户痛点是什么?\n- 期望的解决方案?\n- 成功标准是什么?\n\n### 2. 用户故事 (User Story)\n```\n作为 [角色]\n我想要 [功能]\n以便于 [价值]\n\n验收标准:\n- Given [前提条件]\n- When [操作]\n- Then [期望结果]\n```\n\n### 3. 功能优先级\n| 优先级 | 标准 |\n|--------|------|\n| P0 | 必须有,否则无法使用 |\n| P1 | 应该有,核心体验 |\n| P2 | 可以有,锦上添花 |\n| P3 | 未来考虑 |\n\n### 4. PRD 大纲\n- 背景与目标\n- 用户画像\n- 功能需求\n- 非功能需求\n- 验收标准\n\n**请描述你的产品想法或需求。**\n</libai-mode>\n"
|
|
281
310
|
}
|
|
282
311
|
EOF
|
|
283
312
|
exit 0
|
|
@@ -294,7 +323,7 @@ if echo "$prompt_lower" | grep -qE '(文档|注释|readme|changelog|司马迁|si
|
|
|
294
323
|
echo "$prompt_lower" | grep -qE '(撰写|编写|更新|完善).{0,5}文档'; then
|
|
295
324
|
cat << 'EOF'
|
|
296
325
|
{
|
|
297
|
-
"systemMessage": "\n\n📜
|
|
326
|
+
"systemMessage": "\n\n<simaqian-mode>\n📜 **司马迁文档史官模式已激活!**\n\n## 究天人之际,通古今之变\n\n### 1. README 结构\n```markdown\n# 项目名称\n> 一句话描述\n\n## 特性\n## 安装\n## 快速开始\n## API 文档\n## 贡献指南\n## 许可证\n```\n\n### 2. API 文档\n- 端点描述\n- 请求参数\n- 响应格式\n- 示例代码\n- 错误码\n\n### 3. 代码注释\n```typescript\n/**\n * 函数简述\n * @param name - 参数说明\n * @returns 返回值说明\n * @example\n * // 使用示例\n */\n```\n\n### 4. CHANGELOG\n```markdown\n## [版本号] - 日期\n### Added\n### Changed\n### Fixed\n### Removed\n```\n\n### 5. 技术文档\n- 架构图\n- 数据流\n- 部署指南\n- 故障排查\n\n**请描述需要撰写的文档类型和内容。**\n</simaqian-mode>\n"
|
|
298
327
|
}
|
|
299
328
|
EOF
|
|
300
329
|
exit 0
|
|
@@ -308,7 +337,7 @@ fi
|
|
|
308
337
|
if echo "$prompt_lower" | grep -qE '(架构设计|系统设计|技术方案|architecture|system[-_]?design|诸葛|zhuge|consult|技术选型|微服务|分布式)'; then
|
|
309
338
|
cat << 'EOF'
|
|
310
339
|
{
|
|
311
|
-
"systemMessage": "\n\n🎯
|
|
340
|
+
"systemMessage": "\n\n<zhuge-mode>\n🎯 **诸葛战略顾问模式已激活!**\n\n## 运筹帷幄,决胜千里\n\n### 1. 需求分析\n- 业务目标是什么?\n- 用户规模预期?\n- 性能要求?\n- 预算约束?\n\n### 2. 架构评估维度\n| 维度 | 考量 |\n|------|------|\n| 可扩展性 | 水平/垂直扩展能力 |\n| 可用性 | 容错、降级、恢复 |\n| 可维护性 | 模块化、可测试性 |\n| 安全性 | 认证、授权、加密 |\n| 成本 | 开发、运维、云资源 |\n\n### 3. 技术选型\n- 编程语言\n- 框架选择\n- 数据库方案\n- 中间件\n- 云服务\n\n### 4. 架构模式\n- 单体 vs 微服务\n- 同步 vs 异步\n- 事件驱动\n- CQRS/Event Sourcing\n\n### 5. 决策输出\n```\n📋 架构决策记录 (ADR)\n- 背景\n- 决策\n- 理由\n- 后果\n```\n\n**请描述你的架构需求或问题。**\n</zhuge-mode>\n"
|
|
312
341
|
}
|
|
313
342
|
EOF
|
|
314
343
|
exit 0
|
|
@@ -323,7 +352,7 @@ fi
|
|
|
323
352
|
if echo "$prompt_lower" | grep -qE '(悟空|wukong|火眼|huoyan|定位代码|追踪调用|依赖关系|代码地图|调用链|call[-_]?graph|代码结构|codebase|熟悉代码|了解代码)'; then
|
|
324
353
|
cat << 'EOF'
|
|
325
354
|
{
|
|
326
|
-
"systemMessage": "\n\n🔍
|
|
355
|
+
"systemMessage": "\n\n<wukong-mode>\n🔍 **悟空火眼金睛模式已激活!**\n\n## 火眼金睛,明察秋毫\n\n### 1. 快速侦察任务\n- 定位关键文件\n- 追踪函数调用\n- 识别入口点\n- 找到配置位置\n\n### 2. 探索策略\n```\n1. 从入口点开始(main/index/app)\n2. 顺藤摸瓜追踪调用链\n3. 标记关键节点\n4. 绘制依赖关系\n```\n\n### 3. 常用搜索\n- 类/函数定义\n- 接口实现\n- 配置引用\n- 环境变量\n\n### 4. 输出格式\n```\n📍 目标: [搜索目标]\n📁 位置: [文件路径:行号]\n🔗 调用链: A → B → C\n📝 说明: [简要描述]\n```\n\n### 5. 代码地图\n- 目录结构概览\n- 模块依赖图\n- 核心流程图\n\n**告诉我你要找什么?**\n</wukong-mode>\n"
|
|
327
356
|
}
|
|
328
357
|
EOF
|
|
329
358
|
exit 0
|
|
@@ -336,7 +365,7 @@ fi
|
|
|
336
365
|
if echo "$prompt_lower" | grep -qE '(计划审查|风险评估|可行性|feasibility|刘伯温|liubowen|momus|plan[-_]?review|todo[-_]?review|验证计划)'; then
|
|
337
366
|
cat << 'EOF'
|
|
338
367
|
{
|
|
339
|
-
"systemMessage": "\n\n🔮
|
|
368
|
+
"systemMessage": "\n\n<liubowen-mode>\n🔮 **刘伯温计划审查模式已激活!**\n\n## 审时度势,运筹帷幄\n\n### 1. 计划完整性检查\n- [ ] 目标明确可衡量\n- [ ] 任务分解合理\n- [ ] 依赖关系清晰\n- [ ] 时间估算现实\n- [ ] 资源分配充足\n\n### 2. 风险评估矩阵\n| 风险 | 可能性 | 影响 | 缓解措施 |\n|------|--------|------|----------|\n| ? | 高/中/低 | 高/中/低 | ? |\n\n### 3. 可行性维度\n- **技术可行性**: 技术栈是否支持?\n- **资源可行性**: 人力/时间/预算够吗?\n- **业务可行性**: 需求是否合理?\n\n### 4. 审查输出\n```\n📋 计划审查报告\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n✅ 优点: [计划亮点]\n⚠️ 风险: [潜在问题]\n💡 建议: [改进意见]\n📊 评分: X/10\n```\n\n### 5. 预警信号\n- 范围蔓延\n- 依赖阻塞\n- 时间压缩\n- 资源不足\n\n**请提供要审查的计划或 TODO 列表。**\n</liubowen-mode>\n"
|
|
340
369
|
}
|
|
341
370
|
EOF
|
|
342
371
|
exit 0
|
|
@@ -349,7 +378,7 @@ fi
|
|
|
349
378
|
if echo "$prompt_lower" | grep -qE '(图片|图像|pdf|截图|扫描|image|picture|screenshot|视觉|离娄|lilou|looker|看看这个|分析这张)'; then
|
|
350
379
|
cat << 'EOF'
|
|
351
380
|
{
|
|
352
|
-
"systemMessage": "\n\n🖼️
|
|
381
|
+
"systemMessage": "\n\n<lilou-mode>\n🖼️ **离娄多模态洞察模式已激活!**\n\n## 明察秋毫 - 视觉内容分析\n\n### 1. 图像分析能力\n- UI 截图分析\n- 架构图理解\n- 流程图解读\n- 错误截图诊断\n- 设计稿还原\n\n### 2. PDF 解析\n- 文档内容提取\n- 表格数据识别\n- 图表解读\n- 关键信息摘要\n\n### 3. 分析输出格式\n```\n📷 图像分析报告\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n🎯 主题: [图像主要内容]\n📝 描述: [详细描述]\n💡 洞察: [关键发现]\n🔧 建议: [行动建议]\n```\n\n### 4. 支持场景\n- UI 问题定位\n- 设计稿实现\n- 文档信息提取\n- 图表数据分析\n\n**请提供图片或 PDF 文件,告诉我你想了解什么。**\n</lilou-mode>\n"
|
|
353
382
|
}
|
|
354
383
|
EOF
|
|
355
384
|
exit 0
|