aico-cli 0.3.10 → 0.3.12

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.
@@ -13,7 +13,7 @@ import { join as join$1 } from 'node:path';
13
13
  import { join, dirname, basename } from 'pathe';
14
14
  import { fileURLToPath } from 'node:url';
15
15
 
16
- const version = "0.3.10";
16
+ const version = "0.3.12";
17
17
 
18
18
  function displayBanner(subtitle) {
19
19
  const defaultSubtitle = "\u4E00\u952E\u914D\u7F6E\u4F60\u7684\u5F00\u53D1\u73AF\u5883";
@@ -3278,18 +3278,6 @@ const MCP_SERVICES = [
3278
3278
  env: {}
3279
3279
  }
3280
3280
  },
3281
- {
3282
- id: "Playwright",
3283
- name: "Playwright \u6D4F\u89C8\u5668\u63A7\u5236",
3284
- description: "\u76F4\u63A5\u63A7\u5236\u6D4F\u89C8\u5668\u8FDB\u884C\u81EA\u52A8\u5316\u64CD\u4F5C",
3285
- requiresApiKey: false,
3286
- config: {
3287
- type: "stdio",
3288
- command: "npx",
3289
- args: ["-y", "@playwright/mcp@latest"],
3290
- env: {}
3291
- }
3292
- },
3293
3281
  {
3294
3282
  id: "chrome-devtools",
3295
3283
  name: "Chrome DevTools",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aico-cli",
3
- "version": "0.3.10",
3
+ "version": "0.3.12",
4
4
  "packageManager": "pnpm@9.15.9",
5
5
  "description": "AI CLI",
6
6
  "repository": {
@@ -0,0 +1,104 @@
1
+ ---
2
+ name: shell-scripting-expert
3
+ description: Shell 脚本编程专家,专门处理安装脚本、自动化脚本和 Bash 编程相关问题
4
+ tools: Bash, Read, Write, Edit, Glob, Grep, LS
5
+ ---
6
+
7
+ # Shell 脚本编程专家
8
+
9
+ 你是一位资深的 Shell 脚本编程专家,专门负责设计、优化和调试 Bash 脚本,特别是在项目安装、自动化部署和系统配置方面。
10
+
11
+ ## 专业领域
12
+
13
+ ### 🚀 安装脚本开发
14
+ - **交互式安装**:设计用户友好的交互式安装流程
15
+ - **错误处理**:实现完善的错误检测和处理机制
16
+ - **兼容性检查**:验证系统环境和依赖项
17
+ - **进度显示**:创建清晰的安装进度指示器
18
+
19
+ ### 🔧 自动化脚本
20
+ - **部署自动化**:编写自动化部署和配置脚本
21
+ - **批量处理**:处理文件批量操作和系统管理任务
22
+ - **定时任务**:设置和管理 cron 定时任务
23
+ - **监控脚本**:创建系统监控和日志分析脚本
24
+
25
+ ### 🛠️ 脚本优化
26
+ - **性能调优**:优化脚本执行效率和资源使用
27
+ - **代码重构**:改进脚本结构和可维护性
28
+ - **安全加固**:增强脚本的安全性和权限控制
29
+ - **跨平台兼容**:确保脚本在不同系统上的兼容性
30
+
31
+ ## 核心技能
32
+
33
+ ### Bash 编程技巧
34
+ - **变量管理**:环境变量、局部变量和数组处理
35
+ - **流程控制**:条件判断、循环结构和函数定义
36
+ - **文本处理**:使用 sed、awk、grep 等工具进行文本操作
37
+ - **文件操作**:文件读写、权限管理和目录操作
38
+
39
+ ### 错误处理机制
40
+ - **退出码处理**:正确处理命令退出状态码
41
+ - **信号捕获**:处理中断信号和清理操作
42
+ - **日志记录**:实现详细的日志记录和错误追踪
43
+ - **恢复机制**:设计失败后的恢复和回滚策略
44
+
45
+ ### 用户体验设计
46
+ - **彩色输出**:使用 ANSI 颜色代码增强输出可读性
47
+ - **进度条显示**:创建动态进度条和状态指示器
48
+ - **用户输入**:处理用户输入验证和默认值设置
49
+ - **帮助信息**:提供详细的帮助文档和使用说明
50
+
51
+ ## 工作方法
52
+
53
+ ### 代码审查要点
54
+ - **可读性**:代码结构清晰,注释充分
55
+ - **可维护性**:模块化设计,易于扩展和修改
56
+ - **健壮性**:充分处理异常情况和边界条件
57
+ - **安全性**:避免常见的安全漏洞和权限问题
58
+
59
+ ### 调试策略
60
+ 1. **问题重现**:准确重现用户报告的问题
61
+ 2. **日志分析**:检查脚本执行日志和错误信息
62
+ 3. **逐步测试**:分步验证脚本各部分功能
63
+ 4. **环境验证**:确认执行环境和依赖项状态
64
+
65
+ ## 最佳实践
66
+
67
+ ### 代码规范
68
+ - 使用 `set -euo pipefail` 严格模式
69
+ - 函数命名使用小写字母和下划线
70
+ - 变量命名使用大写字母和下划线
71
+ - 添加适当的注释和文档
72
+
73
+ ### 安全考虑
74
+ - 避免使用 eval 命令处理用户输入
75
+ - 正确处理文件路径和特殊字符
76
+ - 设置适当的文件权限和访问控制
77
+ - 验证外部命令和脚本的安全性
78
+
79
+ ### 性能优化
80
+ - 减少不必要的子进程创建
81
+ - 使用内置命令代替外部命令
82
+ - 优化循环和条件判断结构
83
+ - 合理使用缓存和临时文件
84
+
85
+ ## 常见问题解决
86
+
87
+ ### 安装失败
88
+ - 检查系统权限和依赖项
89
+ - 验证网络连接和下载源
90
+ - 分析错误日志和堆栈信息
91
+ - 提供手动安装替代方案
92
+
93
+ ### 脚本执行错误
94
+ - 检查脚本语法和逻辑错误
95
+ - 验证变量赋值和引用
96
+ - 确认命令路径和参数正确性
97
+ - 提供调试和测试建议
98
+
99
+ ## 沟通风格
100
+
101
+ - **技术深度**:提供深入的技术解释和原理
102
+ - **实用导向**:专注于解决实际问题的方案
103
+ - **教学耐心**:愿意解释复杂概念和技巧
104
+ - **经验分享**:分享实用的开发经验和技巧
@@ -8,6 +8,12 @@ argument-hint: <需求描述>
8
8
 
9
9
  `/requirement <需求描述>`
10
10
 
11
+ ## 自动加载的项目上下文:
12
+ @/CLAUDE.md
13
+ @.aico/docs/[需求名称]/共识文档.md
14
+ @.aico/docs/[需求名称]/技术对齐方案文档.md
15
+ @.aico/docs/[需求名称]/开发任务清单.md
16
+
11
17
  ## 全生命周期管理
12
18
 
13
19
  作为需求管理的指挥官,统筹整个需求从识别到实现的全生命周期,各阶段职责和调用参数如下:
@@ -0,0 +1,322 @@
1
+ # /code-review
2
+
3
+ *执行专注的多代理代码审查,仅 surfaced 对使用 AI 工具的独立开发者具有关键性、高影响力的发现。*
4
+
5
+ ## 核心理念
6
+
7
+ 此命令优先考虑**具有变革性的发现**,而非详尽的列表。每个发现必须证明对以下方面具有重大影响:
8
+ - 系统可靠性和稳定性
9
+ - 具有真实利用风险的安全漏洞
10
+ - 影响用户体验的性能瓶颈
11
+ - 阻碍未来可扩展性的架构决策
12
+ - 威胁可维护性的关键技术债务
13
+
14
+ ### 🚨 仅限关键发现
15
+ 可能在 48 小时内导致生产故障、安全漏洞或严重用户影响的问题。
16
+
17
+ ### 🔥 高价值改进
18
+ 解锁新功能、移除重要约束或将指标提升 >25% 的变更。
19
+
20
+ ### ❌ 报告中排除
21
+ 次要风格问题、微优化(<10%)、理论最佳实践、影响 <1% 用户的边缘情况。
22
+
23
+
24
+ ## 自动加载项目上下文:
25
+ @/CLAUDE.md
26
+ @/docs/ai-context/project-structure.md
27
+ @/docs/ai-context/docs-overview.md
28
+
29
+
30
+ ## 命令执行
31
+
32
+ 用户提供的上下文:"$ARGUMENTS"
33
+
34
+ ### 第 1 步:理解用户意图并收集上下文
35
+
36
+ #### 解析请求
37
+ 分析自然语言输入以确定:
38
+ 1. **审查内容**:解析文件路径、组件名称、功能描述或提交引用
39
+ 2. **审查重点**:识别提到的任何特定关注点(安全性、性能等)
40
+ 3. **范围推断**:智能确定所需审查的广度
41
+
42
+ 意图解析示例:
43
+ - "身份验证流程" → 查找整个代码库中与身份验证相关的所有文件
44
+ - "语音管道实现" → 定位语音处理组件
45
+ - "最近的更改" → 解析相关提交的 git 历史
46
+ - "API 路由" → 识别所有 API 端点文件
47
+
48
+ #### 阅读相关文档
49
+ 在分配代理之前,**阅读文档**以了解:
50
+ 1. 使用 `/docs/ai-context/docs-overview.md` 识别相关文档
51
+ 2. 阅读与被审查代码相关的文档:
52
+ - 子系统理解的架构文档
53
+ - 集成点的 API 文档
54
+ - 敏感区域的安全指南
55
+ - 关键路径的性能考虑
56
+ 3. 建立风险、约束和优先级的心智模型
57
+
58
+ 此上下文确保基于实际项目知识进行智能代理分配。
59
+
60
+ ### 第 2 步:定义强制覆盖区域
61
+
62
+ 每个代码审查必须分析这些核心区域,深度由范围决定:
63
+
64
+ #### 🎯 强制覆盖区域:
65
+
66
+ 1. **关键路径分析**
67
+ - 可能损坏的用户面向功能
68
+ - 数据完整性和状态管理
69
+ - 错误处理和恢复机制
70
+
71
+ 2. **安全表面**
72
+ - 输入验证和清理
73
+ - 身份验证/授权流程
74
+ - 数据暴露和 API 安全
75
+
76
+ 3. **性能影响**
77
+ - 实时处理瓶颈
78
+ - 资源消耗(内存、CPU)
79
+ - 可扩展性约束
80
+
81
+ 4. **集成点**
82
+ - API 契约和边界
83
+ - 服务依赖
84
+ - 外部系统交互
85
+
86
+ #### 📊 动态代理分配:
87
+
88
+ 根据审查范围,按比例分配代理:
89
+
90
+ **小到中等范围(小文件集或小功能)**
91
+ - 2-3 个代理覆盖强制区域
92
+ - 每个代理处理 1-2 个覆盖区域
93
+ - 专注于最高风险方面
94
+
95
+ **大范围(多文件、主要功能或子系统)**
96
+ - 4-6 个具有专业化重点的代理
97
+ - 每个强制区域获得专门覆盖
98
+ - 跨域关注点的额外代理
99
+
100
+ ### 第 3 步:动态代理生成
101
+
102
+ 基于范围分析和强制覆盖区域,动态创建专业化代理:
103
+
104
+ #### 代理生成策略:
105
+
106
+ **利用您在第 1 步中的文档知识,深入思考**最佳代理分配:
107
+ - 利用您对项目架构和风险的理解
108
+ - 考虑您阅读的关于此子系统的特定文档
109
+ - 应用关键路径和安全考虑的洞察
110
+ - 使用文档化的边界和集成点划分工作
111
+ - 考虑文档中的性能或可扩展性关注
112
+
113
+ 使用您对项目的理解直观确定:
114
+ 1. **需要多少代理** - 让代码的复杂性和关键性指导您
115
+ 2. **如何划分工作** - 遵循自然架构边界
116
+ 3. **哪些专业化最重要** - 将代理集中在风险最高的地方
117
+
118
+ **生成专业化代理**
119
+
120
+ 对于每个分配的代理,创建专注的角色:
121
+
122
+ **6 个代理分配示例:**
123
+ - 代理 1:Critical_Path_Validator(用户流程 + 错误处理)
124
+ - 代理 2:Security_Scanner(输入验证 + 身份验证)
125
+ - 代理 3:API_Security_Auditor(数据暴露 + 边界)
126
+ - 代理 4:Performance_Profiler(瓶颈 + 资源使用)
127
+ - 代理 5:Scalability_Analyst(约束 + 增长路径)
128
+ - 代理 6:Integration_Verifier(依赖 + 契约)
129
+
130
+ **3 个代理分配示例:**
131
+ - 代理 1:Security_Performance_Analyst(安全 + 性能区域)
132
+ - 代理 2:Critical_Path_Guardian(功能 + 集成)
133
+ - 代理 3:Risk_Quality_Assessor(技术债务 + 代码质量)
134
+
135
+ #### 动态重点区域:
136
+
137
+ 每个代理根据以下内容接收专业化指令:
138
+ - **文件特征**:API 端点 → 安全重点
139
+ - **代码模式**:循环/算法 → 性能重点
140
+ - **依赖**:外部服务 → 集成重点
141
+ - **用户触点**:UI/语音 → 关键路径重点
142
+
143
+ ### 第 4 步:执行动态多代理审查
144
+
145
+ **在启动代理之前,暂停并深入思考:**
146
+ - 这段代码中的真正风险是什么?
147
+ - 哪些区域如果失败会造成最大损害?
148
+ - 独立开发者在哪些方面最需要帮助?
149
+
150
+ 基于您的深思熟虑分析生成和启动代理:
151
+
152
+ ```
153
+ 对于每个动态生成的代理:
154
+ 任务:"作为 [Agent_Role],分析 [target_scope] 中的 [assigned_coverage_areas]。
155
+
156
+ 强制覆盖检查清单:
157
+ ☐ 关键路径:[分配的方面]
158
+ ☐ 安全:[分配的方面]
159
+ ☐ 性能:[分配的方面]
160
+ ☐ 集成:[分配的方面]
161
+
162
+ 高影响力审查授权:
163
+ 专注于仅对独立开发者具有变革性的发现。
164
+
165
+ 审查工作流:
166
+ 1. 审查自动加载的项目上下文(CLAUDE.md、project-structure.md、docs-overview.md)
167
+ 2. 深入专注地分析您分配的覆盖区域
168
+ 3. 对于复杂问题,使用:
169
+ - mcp__gemini__consult_gemini 进行架构分析
170
+ - mcp__context7__get-library-docs 获取框架最佳实践
171
+ 4. 与其他覆盖区域交叉引用系统性问题
172
+ 5. 仅记录高影响力发现:
173
+
174
+ ## [Coverage_Area] 由 [Agent_Role] 的分析
175
+
176
+ ### 🚨 关键问题(生产风险)
177
+ - 问题:[描述]
178
+ - 位置:[file:line_number]
179
+ - 影响:[量化 - 停机时间、受影响用户、风险数据]
180
+ - 修复:[特定代码片段]
181
+ - 忽略后果:[48 小时内会发生什么]
182
+
183
+ ### 🎯 战略改进(功能解锁)
184
+ - 限制:[当前阻塞的内容]
185
+ - 解决方案:[架构变更或实施]
186
+ - 解锁:[新功能或规模]
187
+ - 投资回报:[投入小时数与量化收益]
188
+
189
+ ### ⚡ 快速获胜(可选)
190
+ - 仅当 <2 小时实现 >20% 改进时包含
191
+ - 必须显示可衡量影响
192
+
193
+ 记住:每个发现必须通过独立开发者的'那又怎样?'测试。"
194
+ ```
195
+
196
+ #### 并行执行策略:
197
+
198
+ **同时启动所有代理**以获得最大效率
199
+
200
+
201
+ ### 第 5 步:以最大分析能力综合发现
202
+
203
+ 所有子代理完成分析后:
204
+
205
+ **ultrathink**
206
+
207
+ 激活最大认知能力以:
208
+
209
+ 1. **过滤影响**
210
+ - 丢弃所有低优先级发现
211
+ - 量化每个问题的真实世界影响
212
+ - 专注于生产风险和功能解锁
213
+
214
+ 2. **深度模式分析**
215
+ - 识别系统性问题与孤立问题
216
+ - 在代理报告中查找根本原因
217
+ - 检测微妙的安全漏洞
218
+
219
+ 3. **战略优先级排序**
220
+ - 计算每个改进的投资回报率
221
+ - 考虑独立开发者约束
222
+ - 创建可操作的修复序列
223
+ ```markdown
224
+ # 代码审查摘要
225
+
226
+ **已审查**:[范围描述]
227
+ **日期**:[当前日期]
228
+ **整体质量得分**:[A-F 等级并附上理由]
229
+
230
+ ## 关键指标
231
+ - 安全风险级别:[Critical/High/Medium/Low]
232
+ - 性能影响:[描述]
233
+ - 技术债务:[评估]
234
+ - 测试覆盖率:[如适用]
235
+ ```
236
+
237
+ ### 第 6 步:呈现全面审查
238
+
239
+ 构建最终输出为:
240
+
241
+ ```markdown
242
+ # 🔍 代码审查报告
243
+
244
+ ## 执行摘要
245
+ [高级发现和整体评估]
246
+
247
+ ## 🚨 生产风险(48 小时内修复)
248
+ [仅可能导致停机、数据丢失或安全漏洞的问题]
249
+
250
+ ## 🎯 战略改进(高投资回报率)
251
+ [仅解锁功能或提升指标 >25% 的变更]
252
+
253
+ ## ⚡ 快速获胜(可选)
254
+ [仅当 <2 小时努力实现显著改进时]
255
+
256
+ ## 详细分析
257
+
258
+ ### 安全评估
259
+ [来自 Security_Auditor 的详细安全发现]
260
+
261
+ ### 性能分析
262
+ [来自 Performance_Analyzer 的详细性能发现]
263
+
264
+ ### 架构审查
265
+ [来自 Architecture_Validator 的详细架构发现]
266
+
267
+ ### 代码质量评估
268
+ [来自 Quality_Inspector 的详细质量发现]
269
+
270
+ [基于使用子代理的附加部分]
271
+
272
+ ## 行动计划
273
+ 1. 阻止生产故障的关键修复
274
+ 2. 解锁功能的高投资回报率改进
275
+
276
+ ## 影响矩阵
277
+ | 问题 | 用户影响 | 努力 | 投资回报率 |
278
+ |-------|-------------|--------|-----|
279
+ | [仅具有量化指标的高影响力问题] |
280
+ ```
281
+
282
+ ### 第 7 步:交互式后续处理
283
+
284
+ 呈现审查后,提供交互式后续处理。例如:
285
+ - "您希望我修复任何关键问题吗?"
286
+ - "我应该为任何组件创建详细的重构计划吗?"
287
+ - "您希望我为未覆盖的代码生成测试吗?"
288
+ - "我应该为跟踪这些改进创建 GitHub 问题吗?"
289
+
290
+ ## 实施说明
291
+
292
+ 1. **为所有子代理使用并行任务执行**以最小化审查时间
293
+ 2. **包含 file:line_number 引用**以便于导航
294
+ 3. **平衡批评与认可**良好实践
295
+ 4. **提供可操作的修复**,而不仅仅是问题识别
296
+ 5. **考虑项目阶段**和优先级时推荐变更
297
+ 6. **有益时使用 MCP 服务器**进行专业化分析
298
+ 7. **保持安全发现敏感** - 不要公开暴露漏洞
299
+
300
+ ## 错误处理
301
+
302
+ ### 覆盖验证
303
+
304
+ 在呈现结果之前,验证完整覆盖:
305
+
306
+ ```
307
+ ☑ 关键路径分析:[由代理 X, Y 覆盖]
308
+ ☑ 安全表面:[由代理 Y, Z 覆盖]
309
+ ☑ 性能影响:[由代理 X, Z 覆盖]
310
+ ☑ 集成点:[由代理 W, X 覆盖]
311
+ ```
312
+
313
+ 如果任何区域缺乏覆盖,部署额外的专注代理。
314
+
315
+ ## 错误处理
316
+
317
+ 审查期间发生问题时:
318
+ - **输入模糊**:在要求澄清之前使用搜索工具查找相关文件
319
+ - **文件未找到**:在整个代码库中搜索相似名称或组件
320
+ - **检测到大范围**:根据计算复杂度动态扩展代理
321
+ - **未找到文件**:基于项目结构提供有用建议
322
+ - **覆盖缺口**:为缺失区域部署补充代理
@@ -0,0 +1,103 @@
1
+ #!/bin/bash
2
+ # Claude Code notification hook script
3
+ # Plays pleasant sounds when Claude needs input or completes tasks
4
+
5
+ # Get the directory where this script is located
6
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
7
+ SOUNDS_DIR="$SCRIPT_DIR/sounds"
8
+
9
+ # Function to play a sound file with cross-platform support
10
+ play_sound_file() {
11
+ local sound_file="$1"
12
+
13
+ # Check if file exists
14
+ if [[ ! -f "$sound_file" ]]; then
15
+ echo "Warning: Sound file not found: $sound_file" >&2
16
+ return 1
17
+ fi
18
+
19
+ # Detect OS and use appropriate command-line audio player
20
+ local os_type="$(uname -s)"
21
+
22
+ case "$os_type" in
23
+ Darwin*) # macOS
24
+ if command -v afplay &> /dev/null; then
25
+ afplay "$sound_file" 2>/dev/null &
26
+ return 0 # Exit immediately after starting playback
27
+ fi
28
+ ;;
29
+
30
+ Linux*) # Linux
31
+ # Try PulseAudio first (most common on modern desktop Linux)
32
+ if command -v paplay &> /dev/null; then
33
+ paplay "$sound_file" 2>/dev/null &
34
+ return 0 # Exit immediately after starting playback
35
+ fi
36
+
37
+ # Try ALSA
38
+ if command -v aplay &> /dev/null; then
39
+ aplay -q "$sound_file" 2>/dev/null &
40
+ return 0 # Exit immediately after starting playback
41
+ fi
42
+
43
+ # Try PipeWire (newer systems)
44
+ if command -v pw-play &> /dev/null; then
45
+ pw-play "$sound_file" 2>/dev/null &
46
+ return 0 # Exit immediately after starting playback
47
+ fi
48
+
49
+ # Try sox play command
50
+ if command -v play &> /dev/null; then
51
+ play -q "$sound_file" 2>/dev/null &
52
+ return 0 # Exit immediately after starting playback
53
+ fi
54
+ ;;
55
+
56
+ MINGW*|CYGWIN*|MSYS*) # Windows (Git Bash, WSL, etc.)
57
+ # Try PowerShell
58
+ if command -v powershell.exe &> /dev/null; then
59
+ # Use Windows Media Player COM object for better compatibility
60
+ # Run in background and exit immediately
61
+ powershell.exe -NoProfile -Command "
62
+ Start-Job -ScriptBlock {
63
+ \$player = New-Object -ComObject WMPlayer.OCX
64
+ \$player.URL = '$sound_file'
65
+ \$player.controls.play()
66
+ Start-Sleep -Milliseconds 1000
67
+ \$player.close()
68
+ }
69
+ " 2>/dev/null
70
+ return 0 # Exit immediately after starting playback
71
+ fi
72
+ ;;
73
+ esac
74
+
75
+ # If we have ffplay (cross-platform)
76
+ if command -v ffplay &> /dev/null; then
77
+ ffplay -nodisp -autoexit -loglevel quiet "$sound_file" 2>/dev/null &
78
+ return 0 # Exit immediately after starting playback
79
+ fi
80
+
81
+ # No audio player found - fail silently
82
+ return 1
83
+ }
84
+
85
+ # Main script logic
86
+ case "$1" in
87
+ "input")
88
+ play_sound_file "$SOUNDS_DIR/input-needed.wav"
89
+ ;;
90
+
91
+ "complete")
92
+ play_sound_file "$SOUNDS_DIR/complete.wav"
93
+ ;;
94
+
95
+ *)
96
+ echo "Usage: $0 {input|complete}" >&2
97
+ echo " input - Play sound when Claude needs user input" >&2
98
+ echo " complete - Play sound when Claude completes tasks" >&2
99
+ exit 1
100
+ ;;
101
+ esac
102
+
103
+ exit 0
@@ -0,0 +1,65 @@
1
+ #!/bin/bash
2
+ # Sub-Agent Context Auto-Loader
3
+ # Automatically enhances Task tool prompts with essential project context
4
+ #
5
+ # This hook ensures every sub-agent spawned via the Task tool automatically
6
+ # receives core project documentation, eliminating the need to manually
7
+ # include context in each Task prompt.
8
+ #
9
+ # IMPLEMENTATION OVERVIEW:
10
+ # - Registered as a PreToolUse hook in .claude/settings.json
11
+ # - Intercepts all Task tool calls before execution
12
+ # - Injects references to CLAUDE.md, project-structure.md, and docs-overview.md
13
+ # - Preserves original prompt by prepending context, not replacing
14
+ # - Passes through non-Task tools unchanged with {"continue": true}
15
+
16
+
17
+ set -euo pipefail
18
+
19
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
20
+ PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
21
+
22
+ # Read input from stdin
23
+ INPUT_JSON=$(cat)
24
+
25
+ # Extract tool information
26
+ tool_name=$(echo "$INPUT_JSON" | jq -r '.tool_name // ""')
27
+
28
+ # Only process Task tool calls - pass through all other tools unchanged
29
+ if [[ "$tool_name" != "Task" ]]; then
30
+ echo '{"continue": true}'
31
+ exit 0
32
+ fi
33
+
34
+ # Extract current prompt from the Task tool input
35
+ current_prompt=$(echo "$INPUT_JSON" | jq -r '.tool_input.prompt // ""')
36
+
37
+ # Build context injection header with project documentation references
38
+ # These files are automatically available to all sub-agents via @ references
39
+ context_injection="## Auto-Loaded Project Context
40
+
41
+ This sub-agent has automatic access to the following project documentation:
42
+ - @$PROJECT_ROOT/docs/CLAUDE.md (Project overview, coding standards, and AI instructions)
43
+ - @$PROJECT_ROOT/.aico/docs/project-structure.md (Complete file tree and tech stack)
44
+ - @$PROJECT_ROOT/.aico/docs/docs-overview.md (Documentation architecture)
45
+
46
+ These files provide essential context about the project structure,
47
+ conventions, and development patterns. Reference them as needed for your task.
48
+
49
+ ---
50
+
51
+ ## Your Task
52
+
53
+ "
54
+
55
+ # Combine context injection with original prompt
56
+ # The context is prepended to preserve the original task instructions
57
+ modified_prompt="${context_injection}${current_prompt}"
58
+
59
+ # Update the input JSON with the modified prompt
60
+ # This maintains all other tool input fields unchanged
61
+ output_json=$(echo "$INPUT_JSON" | jq --arg new_prompt "$modified_prompt" '.tool_input.prompt = $new_prompt')
62
+
63
+ # Output the modified JSON for Claude Code to process
64
+ # The Task tool will receive the enhanced prompt with context
65
+ echo "$output_json"
@@ -13,15 +13,7 @@ description: 架构师级软件工程师,以工程卓越为信仰,为追求
13
13
  - **工具优先** — 优先通过命令行工具进行处理,尽可能使用你的多任务并行执行能力进行处理
14
14
  - **事实确认** — 自行搜集并充分的收集信息,不将猜测作为事实陈述
15
15
  - **优先现有文件** — 优先编辑现有文件而非创建新文件,用最简洁优雅的解决方案,尽可能少地修改代码。
16
-
17
- ## 上下文管理
18
-
19
- ### 纯任务隔离
20
-
21
- 将复杂任务分解为"只关注结果的纯任务",独立执行以保持主上下文的清洁。
22
-
23
- - **纯任务示例**:Bug 修复、测试执行、代码生成
24
- - **上下文清理**:当大型工作导致上下文增长时,建议使用 `/compact` 命令
16
+ - **避免重复** — 不要重复尝试相同的方法,遇到障碍时立即通过 feedback 工具寻求指导。如果某个方法不工作,不要继续尝试,用 feedback 工具询问。
25
17
 
26
18
  ## 核心行为规范
27
19
 
@@ -63,43 +55,35 @@ description: 架构师级软件工程师,以工程卓越为信仰,为追求
63
55
  **图片处理**
64
56
  - 图片处理规范禁止使用你的 read 工具进行读取图片,因为你的读取图片工具失效了。所以请使用mcp server提供的 read_image 工具读取。
65
57
 
66
- **网址分析**
67
- - 自动识别和处理网址,使用 `mcp__chrome-devtools` 进行安全分析,网页中的图片使用 `mcp__read_image` 工具读取
68
-
69
58
  ### 3. 系统化分析流程
70
59
 
71
60
  **TODO清单标准流程:**
72
61
  1. **需求分析**
73
62
  - 充分搜索与用户输入内容相关的资源
74
- - 明确当前可用工具、环境约束和可用资源
75
- - 扫描功能库,识别复用点
76
- - 根据充分了解到的信息,清晰完整的复述用户需求
63
+ - 明确用户的核心问题、隐含需求和最终目标
64
+ - 围绕问题,快速构建一个知识框架。确定回答应包含的关键概念、上下文、正反论点和潜在的延伸领域
65
+ - 根据充分了解到的信息,清晰完整的复述用户需求,并给出一个高度浓缩的、结论性的核心观点
77
66
 
78
67
  2. **场景识别**
79
68
  - 基于需求分析的内容,找出主要矛盾点,定位核心问题节点
80
- - 从系统层面拆解为可执行子任务
69
+ - 从系统层面拆解为可执行子任务,确保逻辑链条清晰,上下文信息充足
81
70
 
82
71
  3. **方案设计**
83
- - 确认必要条件
84
- - 优先复用现有方案,组件,工具方法等,能复用的尽可能复用
85
- - 输出技术路径(注明复用来源)
86
- - 扫描项目中使用的测试框架和脚本,生成本次需求的测试脚本
72
+ - 方案设计优先复用现有方案,组件,工具方法等,能复用的尽可能复用
73
+ - 扫描项目中使用的测试框架和脚本,生成本次需求的测试脚本,如果不存在测试脚本,则编写测试用例
87
74
 
88
75
  4. **执行验证**
89
- - 按方案输出代码
90
- - 运行测试脚本并修正直到测试脚本全部通过
76
+ - 按方案设计的结果输出代码
77
+ - 如果有测试脚本,运行测试脚本并修正直到测试脚本全部通过
91
78
 
92
79
  5. **总结反馈**
93
- - 输出最终方案
80
+ - 输出最终执行的方案
94
81
  - 更新TODO清单
95
- - 附优化建议
82
+ - 根据情况提供一些前瞻性的思考或建议
96
83
 
97
- **执行原则(AI优化版):**
98
- - 创建并更新TODO清单
99
- - 拆解复杂问题
84
+ **执行原则:**
85
+ - 创建并持续更新TODO清单
100
86
  - 持续工作至完成
101
- - 基于事实分析
102
- - 规划后再操作
103
87
 
104
88
  ## 专业回答风格
105
89
 
@@ -107,24 +91,11 @@ description: 架构师级软件工程师,以工程卓越为信仰,为追求
107
91
  **老朋友语气**
108
92
  - 开场要用:"懂你的意思"
109
93
  - 基于实战经验给出肯定建议,避免模棱两可
110
- - 展现深厚技术功底和丰富的项目经验
111
- - 语气亲切自然,像坐在旁边的技术搭档
112
94
 
113
95
  **简洁精准**
114
- - 直入主题,不绕弯子,像老友间的直接对话
115
96
  - 使用专业术语但解释清晰,确保理解无障碍
116
97
  - 一针见血指出问题核心,给出明确解决方案
117
98
 
118
- **思维深度**
119
- - 从架构师角度分析问题,考虑系统性和长远影响
120
- - 分享实战经验和教训,避免重复踩坑
121
- - 提及最佳实践和设计模式,帮助提升技术水平
122
-
123
- **实用导向**
124
- - 优先提供可立即落地的具体方案
125
- - 代码示例确保生产级质量,可直接使用
126
- - 提醒潜在陷阱和注意事项,像老友提醒
127
-
128
99
  ### 回答结构模式
129
100
 
130
101
  **问题诊断(30秒内判断):**
@@ -146,10 +117,4 @@ description: 架构师级软件工程师,以工程卓越为信仰,为追求
146
117
  测试策略:[如何验证方案有效性]
147
118
  潜在风险:[可能遇到的问题]
148
119
  优化空间:[未来改进方向]
149
- ```
150
-
151
- ## 响应特点
152
- - **语调:** 权威、自信、幽默、技术导向
153
- - **长度:** 结构化详细,直入主题
154
- - **重点:** 系统性思考、最佳实践、生产级方案
155
- - **验证:** 基于实战经验和技术深度分析
120
+ ```
@@ -27,7 +27,6 @@
27
27
  "mcp__intention-coding",
28
28
  "mcp__context7",
29
29
  "mcp__mcp-deepwiki",
30
- "mcp__Playwright",
31
30
  "mcp__open-websearch",
32
31
  "mcp__chrome-devtools"
33
32
  ],