foliko 1.0.85 → 1.0.87

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.
Files changed (178) hide show
  1. package/.agent/agents/code-assistant.json +14 -0
  2. package/.agent/agents/email-assistant.json +14 -0
  3. package/.agent/agents/file-assistant.json +15 -0
  4. package/.agent/agents/system-assistant.json +15 -0
  5. package/.agent/agents/web-assistant.json +12 -0
  6. package/.agent/data/ambient/goals.json +50 -0
  7. package/.agent/data/ambient/memories.json +7 -0
  8. package/.agent/data/default.json +21 -311
  9. package/.agent/data/plugins-state.json +162 -174
  10. package/.agent/data/scheduler/tasks.json +1 -0
  11. package/.agent/data/weixin.json +6 -0
  12. package/.agent/mcp_config.json +1 -0
  13. package/.agent/package.json +8 -0
  14. package/.agent/plugins/__pycache__/test_plugin.cpython-312.pyc +0 -0
  15. package/.agent/plugins/daytona/README.md +89 -0
  16. package/.agent/plugins/daytona/index.js +377 -0
  17. package/.agent/plugins/daytona/package.json +12 -0
  18. package/.agent/plugins/marknative/README.md +134 -0
  19. package/.agent/plugins/marknative/index.js +228 -0
  20. package/.agent/plugins/marknative/package.json +12 -0
  21. package/.agent/plugins/marknative/update-readme.js +134 -0
  22. package/.agent/plugins/system-info/index.js +387 -0
  23. package/.agent/plugins/system-info/package.json +4 -0
  24. package/.agent/plugins/system-info/test.js +40 -0
  25. package/.agent/plugins/temp-repo/LICENSE +201 -0
  26. package/.agent/plugins/test_plugin.py +304 -0
  27. package/.agent/plugins.json +14 -5
  28. package/.agent/python-scripts/test_sample.py +24 -0
  29. package/.agent/skills/agent-browser/SKILL.md +311 -0
  30. package/.agent/skills/agent-browser/TEST_PLAN.md +200 -0
  31. package/.agent/skills/sysinfo/SKILL.md +38 -0
  32. package/.agent/skills/sysinfo/system-info.sh +130 -0
  33. package/.agent/skills/workflow/SKILL.md +324 -0
  34. package/.agent/workflows/email-digest.json +50 -0
  35. package/.agent/workflows/file-backup.json +21 -0
  36. package/.agent/workflows/get-ip-notify.json +32 -0
  37. package/.agent/workflows/news-aggregator.json +93 -0
  38. package/.agent/workflows/news-dashboard-v2.json +94 -0
  39. package/.agent/workflows/notification-batch.json +32 -0
  40. package/.claude/settings.local.json +8 -7
  41. package/.env.example +56 -56
  42. package/README.md +441 -441
  43. package/examples/test-chat-debug.js +102 -0
  44. package/examples/test-chat-result.js +76 -0
  45. package/examples/test-chat-stream-diff.js +63 -0
  46. package/examples/test-concurrent-chat.js +60 -0
  47. package/examples/test-long-chat.js +77 -0
  48. package/examples/test-session-chat.js +93 -0
  49. package/package.json +2 -2
  50. package/plugins/ambient-agent/EventWatcher.js +4 -4
  51. package/plugins/extension-executor-plugin.js +44 -1
  52. package/plugins/file-system-plugin.js +44 -5
  53. package/plugins/session-plugin.js +21 -0
  54. package/plugins/weixin-plugin.js +278 -29
  55. package/skills/find-skills/AGENTS.md +162 -162
  56. package/skills/find-skills/SKILL.md +133 -133
  57. package/skills/foliko-dev/SKILL.md +67 -0
  58. package/skills/python-plugin-dev/SKILL.md +238 -238
  59. package/src/core/agent-chat.js +106 -58
  60. package/src/core/agent.js +3 -61
  61. package/src/utils/index.js +1 -1
  62. package/.agent/.shared/ui-ux-pro-max/data/charts.csv +0 -26
  63. package/.agent/.shared/ui-ux-pro-max/data/colors.csv +0 -97
  64. package/.agent/.shared/ui-ux-pro-max/data/icons.csv +0 -101
  65. package/.agent/.shared/ui-ux-pro-max/data/landing.csv +0 -31
  66. package/.agent/.shared/ui-ux-pro-max/data/products.csv +0 -97
  67. package/.agent/.shared/ui-ux-pro-max/data/prompts.csv +0 -24
  68. package/.agent/.shared/ui-ux-pro-max/data/react-performance.csv +0 -45
  69. package/.agent/.shared/ui-ux-pro-max/data/stacks/flutter.csv +0 -53
  70. package/.agent/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +0 -56
  71. package/.agent/.shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +0 -53
  72. package/.agent/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +0 -53
  73. package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +0 -51
  74. package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +0 -59
  75. package/.agent/.shared/ui-ux-pro-max/data/stacks/react-native.csv +0 -52
  76. package/.agent/.shared/ui-ux-pro-max/data/stacks/react.csv +0 -54
  77. package/.agent/.shared/ui-ux-pro-max/data/stacks/shadcn.csv +0 -61
  78. package/.agent/.shared/ui-ux-pro-max/data/stacks/svelte.csv +0 -54
  79. package/.agent/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +0 -51
  80. package/.agent/.shared/ui-ux-pro-max/data/stacks/vue.csv +0 -50
  81. package/.agent/.shared/ui-ux-pro-max/data/styles.csv +0 -59
  82. package/.agent/.shared/ui-ux-pro-max/data/typography.csv +0 -58
  83. package/.agent/.shared/ui-ux-pro-max/data/ui-reasoning.csv +0 -101
  84. package/.agent/.shared/ui-ux-pro-max/data/ux-guidelines.csv +0 -100
  85. package/.agent/.shared/ui-ux-pro-max/data/web-interface.csv +0 -31
  86. package/.agent/.shared/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
  87. package/.agent/.shared/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-313.pyc +0 -0
  88. package/.agent/.shared/ui-ux-pro-max/scripts/core.py +0 -258
  89. package/.agent/.shared/ui-ux-pro-max/scripts/design_system.py +0 -1067
  90. package/.agent/.shared/ui-ux-pro-max/scripts/search.py +0 -106
  91. package/.agent/ARCHITECTURE.md +0 -288
  92. package/.agent/agents/ambient-agent.md +0 -57
  93. package/.agent/agents/debugger.md +0 -55
  94. package/.agent/agents/email-assistant.md +0 -49
  95. package/.agent/agents/file-manager.md +0 -42
  96. package/.agent/agents/python-developer.md +0 -60
  97. package/.agent/agents/scheduler.md +0 -59
  98. package/.agent/agents/web-developer.md +0 -45
  99. package/.agent/data/puppeteer-sessions/undefined.json +0 -6
  100. package/.agent/mcp_config_updated.json +0 -12
  101. package/.agent/rules/GEMINI.md +0 -273
  102. package/.agent/rules/allow-rule.md +0 -77
  103. package/.agent/rules/log-rule.md +0 -83
  104. package/.agent/rules/security-rule.md +0 -93
  105. package/.agent/scripts/auto_preview.py +0 -148
  106. package/.agent/scripts/checklist.py +0 -217
  107. package/.agent/scripts/session_manager.py +0 -120
  108. package/.agent/scripts/verify_all.py +0 -327
  109. package/.agent/skills/api-patterns/SKILL.md +0 -81
  110. package/.agent/skills/api-patterns/api-style.md +0 -42
  111. package/.agent/skills/api-patterns/auth.md +0 -24
  112. package/.agent/skills/api-patterns/documentation.md +0 -26
  113. package/.agent/skills/api-patterns/graphql.md +0 -41
  114. package/.agent/skills/api-patterns/rate-limiting.md +0 -31
  115. package/.agent/skills/api-patterns/response.md +0 -37
  116. package/.agent/skills/api-patterns/rest.md +0 -40
  117. package/.agent/skills/api-patterns/scripts/api_validator.py +0 -211
  118. package/.agent/skills/api-patterns/security-testing.md +0 -122
  119. package/.agent/skills/api-patterns/trpc.md +0 -41
  120. package/.agent/skills/api-patterns/versioning.md +0 -22
  121. package/.agent/skills/app-builder/SKILL.md +0 -75
  122. package/.agent/skills/app-builder/agent-coordination.md +0 -71
  123. package/.agent/skills/app-builder/feature-building.md +0 -53
  124. package/.agent/skills/app-builder/project-detection.md +0 -34
  125. package/.agent/skills/app-builder/scaffolding.md +0 -118
  126. package/.agent/skills/app-builder/tech-stack.md +0 -40
  127. package/.agent/skills/app-builder/templates/SKILL.md +0 -39
  128. package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +0 -76
  129. package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +0 -92
  130. package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +0 -88
  131. package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +0 -88
  132. package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +0 -83
  133. package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +0 -90
  134. package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +0 -90
  135. package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +0 -122
  136. package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +0 -122
  137. package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +0 -169
  138. package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +0 -134
  139. package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +0 -83
  140. package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +0 -119
  141. package/.agent/skills/architecture/SKILL.md +0 -55
  142. package/.agent/skills/architecture/context-discovery.md +0 -43
  143. package/.agent/skills/architecture/examples.md +0 -94
  144. package/.agent/skills/architecture/pattern-selection.md +0 -68
  145. package/.agent/skills/architecture/patterns-reference.md +0 -50
  146. package/.agent/skills/architecture/trade-off-analysis.md +0 -77
  147. package/.agent/skills/clean-code/SKILL.md +0 -201
  148. package/.agent/skills/doc.md +0 -177
  149. package/.agent/skills/frontend-design/SKILL.md +0 -418
  150. package/.agent/skills/frontend-design/animation-guide.md +0 -331
  151. package/.agent/skills/frontend-design/color-system.md +0 -311
  152. package/.agent/skills/frontend-design/decision-trees.md +0 -418
  153. package/.agent/skills/frontend-design/motion-graphics.md +0 -306
  154. package/.agent/skills/frontend-design/scripts/accessibility_checker.py +0 -183
  155. package/.agent/skills/frontend-design/scripts/ux_audit.py +0 -722
  156. package/.agent/skills/frontend-design/typography-system.md +0 -345
  157. package/.agent/skills/frontend-design/ux-psychology.md +0 -1116
  158. package/.agent/skills/frontend-design/visual-effects.md +0 -383
  159. package/.agent/skills/i18n-localization/SKILL.md +0 -154
  160. package/.agent/skills/i18n-localization/scripts/i18n_checker.py +0 -241
  161. package/.agent/skills/mcp-builder/SKILL.md +0 -176
  162. package/.agent/skills/web-design-guidelines/SKILL.md +0 -57
  163. package/.agent/workflows/brainstorm.md +0 -113
  164. package/.agent/workflows/create.md +0 -59
  165. package/.agent/workflows/debug.md +0 -103
  166. package/.agent/workflows/deploy.md +0 -176
  167. package/.agent/workflows/enhance.md +0 -63
  168. package/.agent/workflows/orchestrate.md +0 -237
  169. package/.agent/workflows/plan.md +0 -89
  170. package/.agent/workflows/preview.md +0 -81
  171. package/.agent/workflows/simple-test.md +0 -42
  172. package/.agent/workflows/status.md +0 -86
  173. package/.agent/workflows/structured-orchestrate.md +0 -180
  174. package/.agent/workflows/test.md +0 -144
  175. package/.agent/workflows/ui-ux-pro-max.md +0 -296
  176. /package/.agent/plugins/{puppeteer-plugin → temp-repo/puppeteer-plugin}/README.md +0 -0
  177. /package/.agent/plugins/{puppeteer-plugin → temp-repo/puppeteer-plugin}/index.js +0 -0
  178. /package/.agent/plugins/{puppeteer-plugin → temp-repo/puppeteer-plugin}/package.json +0 -0
@@ -1,81 +0,0 @@
1
- ---
2
- description: Preview server start, stop, and status check. Local development server management.
3
- ---
4
-
5
- # /preview - Preview Management
6
-
7
- $ARGUMENTS
8
-
9
- ---
10
-
11
- ## Task
12
-
13
- Manage preview server: start, stop, status check.
14
-
15
- ### Commands
16
-
17
- ```
18
- /preview - Show current status
19
- /preview start - Start server
20
- /preview stop - Stop server
21
- /preview restart - Restart
22
- /preview check - Health check
23
- ```
24
-
25
- ---
26
-
27
- ## Usage Examples
28
-
29
- ### Start Server
30
- ```
31
- /preview start
32
-
33
- Response:
34
- 🚀 Starting preview...
35
- Port: 3000
36
- Type: Next.js
37
-
38
- ✅ Preview ready!
39
- URL: http://localhost:3000
40
- ```
41
-
42
- ### Status Check
43
- ```
44
- /preview
45
-
46
- Response:
47
- === Preview Status ===
48
-
49
- 🌐 URL: http://localhost:3000
50
- 📁 Project: C:/projects/my-app
51
- 🏷️ Type: nextjs
52
- 💚 Health: OK
53
- ```
54
-
55
- ### Port Conflict
56
- ```
57
- /preview start
58
-
59
- Response:
60
- ⚠️ Port 3000 is in use.
61
-
62
- Options:
63
- 1. Start on port 3001
64
- 2. Close app on 3000
65
- 3. Specify different port
66
-
67
- Which one? (default: 1)
68
- ```
69
-
70
- ---
71
-
72
- ## Technical
73
-
74
- Auto preview uses `auto_preview.py` script:
75
-
76
- ```bash
77
- python .agent/scripts/auto_preview.py start [port]
78
- python .agent/scripts/auto_preview.py stop
79
- python .agent/scripts/auto_preview.py status
80
- ```
81
-
@@ -1,42 +0,0 @@
1
- ---
2
- name: simple-test
3
- description: 简单测试工作流
4
- version: "1.0"
5
- steps: >
6
- [
7
- {
8
- "type": "agent",
9
- "name": "测试步骤1",
10
- "agentName": "product-owner",
11
- "input": "请说'Hello from workflow'",
12
- "outputVariable": "step1Result"
13
- },
14
- {
15
- "type": "skill",
16
- "name": "测试步骤2",
17
- "skillName": "api-patterns",
18
- "scriptName": "api_validator.py",
19
- "args": ".",
20
- "outputVariable": "step2Result"
21
- }
22
- ]
23
- variables:
24
- testVar: "测试值"
25
- parameters:
26
- - name: message
27
- description: 测试消息
28
- default: "默认消息"
29
- timeout: 30000
30
- ---
31
-
32
- # 简单测试工作流
33
-
34
- 这是一个简单的工作流测试文件,使用JSON字符串格式的steps字段,避免YAML解析问题。
35
-
36
- ## 说明
37
-
38
- 此工作流包含两个简单步骤:
39
- 1. 调用product-owner Agent
40
- 2. 执行api-patterns技能中的api_validator.py脚本
41
-
42
- 用于验证工作流引擎的基本功能。
@@ -1,86 +0,0 @@
1
- ---
2
- description: Display agent and project status. Progress tracking and status board.
3
- ---
4
-
5
- # /status - Show Status
6
-
7
- $ARGUMENTS
8
-
9
- ---
10
-
11
- ## Task
12
-
13
- Show current project and agent status.
14
-
15
- ### What It Shows
16
-
17
- 1. **Project Info**
18
- - Project name and path
19
- - Tech stack
20
- - Current features
21
-
22
- 2. **Agent Status Board**
23
- - Which agents are running
24
- - Which tasks are completed
25
- - Pending work
26
-
27
- 3. **File Statistics**
28
- - Files created count
29
- - Files modified count
30
-
31
- 4. **Preview Status**
32
- - Is server running
33
- - URL
34
- - Health check
35
-
36
- ---
37
-
38
- ## Example Output
39
-
40
- ```
41
- === Project Status ===
42
-
43
- 📁 Project: my-ecommerce
44
- 📂 Path: C:/projects/my-ecommerce
45
- 🏷️ Type: nextjs-ecommerce
46
- 📊 Status: active
47
-
48
- 🔧 Tech Stack:
49
- Framework: next.js
50
- Database: postgresql
51
- Auth: clerk
52
- Payment: stripe
53
-
54
- ✅ Features (5):
55
- • product-listing
56
- • cart
57
- • checkout
58
- • user-auth
59
- • order-history
60
-
61
- ⏳ Pending (2):
62
- • admin-panel
63
- • email-notifications
64
-
65
- 📄 Files: 73 created, 12 modified
66
-
67
- === Agent Status ===
68
-
69
- ✅ database-architect → Completed
70
- ✅ backend-specialist → Completed
71
- 🔄 frontend-specialist → Dashboard components (60%)
72
- ⏳ test-engineer → Waiting
73
-
74
- === Preview ===
75
-
76
- 🌐 URL: http://localhost:3000
77
- 💚 Health: OK
78
- ```
79
-
80
- ---
81
-
82
- ## Technical
83
-
84
- Status uses these scripts:
85
- - `python .agent/scripts/session_manager.py status`
86
- - `python .agent/scripts/auto_preview.py status`
@@ -1,180 +0,0 @@
1
- ---
2
- name: structured-orchestrate
3
- description: 结构化编排工作流示例 - 演示多Agent协同工作
4
- version: "1.0"
5
- author: "Foliko Team"
6
- steps:
7
- - type: sequential
8
- name: 规划阶段
9
- steps:
10
- - type: agent
11
- name: 项目规划
12
- agentName: project-planner
13
- inputTemplate: |
14
- 请为以下任务创建详细的项目计划:
15
-
16
- 任务:{{task}}
17
-
18
- 要求:
19
- 1. 创建 docs/PLAN.md 文件
20
- 2. 包含技术栈选择
21
- 3. 包含实施步骤
22
- 4. 包含时间估算
23
- outputVariable: planResult
24
-
25
- - type: condition
26
- name: 检查计划是否存在
27
- condition: "ctx.variables.planResult && ctx.variables.planResult.output && ctx.variables.planResult.output.includes('PLAN.md')"
28
- trueSteps:
29
- - type: agent
30
- name: 请求用户批准
31
- agentName: product-owner
32
- inputTemplate: |
33
- 计划已创建:docs/PLAN.md
34
-
35
- 计划摘要:
36
- {{vars.planResult.output}}
37
-
38
- 请确认是否批准执行?(Y/N)
39
- outputVariable: approvalResult
40
-
41
- - type: condition
42
- name: 检查用户批准
43
- condition: "ctx.variables.approvalResult && ctx.variables.approvalResult.output && ctx.variables.approvalResult.output.includes('Y')"
44
- trueSteps:
45
- - type: parallel
46
- name: 并行实施阶段
47
- steps:
48
- - type: agent
49
- name: 前端开发
50
- agentName: frontend-specialist
51
- inputTemplate: |
52
- 基于以下计划实施前端部分:
53
-
54
- 任务:{{task}}
55
- 计划:{{vars.planResult.output}}
56
-
57
- 请开始前端实现。
58
- outputVariable: frontendResult
59
-
60
- - type: agent
61
- name: 后端开发
62
- agentName: backend-specialist
63
- inputTemplate: |
64
- 基于以下计划实施后端部分:
65
-
66
- 任务:{{task}}
67
- 计划:{{vars.planResult.output}}
68
-
69
- 请开始后端实现。
70
- outputVariable: backendResult
71
-
72
- - type: agent
73
- name: 数据库设计
74
- agentName: database-architect
75
- inputTemplate: |
76
- 基于以下计划设计数据库:
77
-
78
- 任务:{{task}}
79
- 计划:{{vars.planResult.output}}
80
-
81
- 请设计数据库 schema。
82
- outputVariable: dbResult
83
-
84
- - type: sequential
85
- name: 测试和验证
86
- steps:
87
- - type: skill
88
- name: 运行安全扫描
89
- skillName: vulnerability-scanner
90
- scriptName: security_scan.py
91
- args: "."
92
- outputVariable: securityScanResult
93
-
94
- - type: skill
95
- name: 运行代码检查
96
- skillName: lint-and-validate
97
- scriptName: lint_runner.py
98
- args: "."
99
- outputVariable: lintResult
100
-
101
- - type: agent
102
- name: 测试工程师
103
- agentName: test-engineer
104
- inputTemplate: |
105
- 请执行测试验证:
106
-
107
- 前端结果:{{vars.frontendResult ? '完成' : '未完成'}}
108
- 后端结果:{{vars.backendResult ? '完成' : '未完成'}}
109
- 数据库结果:{{vars.dbResult ? '完成' : '未完成'}}
110
-
111
- 安全扫描:{{vars.securityScanResult ? '完成' : '未完成'}}
112
- 代码检查:{{vars.lintResult ? '完成' : '未完成'}}
113
-
114
- 请执行全面的测试。
115
- outputVariable: testResult
116
-
117
- - type: agent
118
- name: 生成最终报告
119
- agentName: product-owner
120
- inputTemplate: |
121
- 请生成最终项目报告:
122
-
123
- 任务:{{task}}
124
-
125
- 执行结果:
126
- - 规划:{{vars.planResult ? '完成' : '未完成'}}
127
- - 前端:{{vars.frontendResult ? '完成' : '未完成'}}
128
- - 后端:{{vars.backendResult ? '完成' : '未完成'}}
129
- - 数据库:{{vars.dbResult ? '完成' : '未完成'}}
130
- - 安全扫描:{{vars.securityScanResult ? '完成' : '未完成'}}
131
- - 代码检查:{{vars.lintResult ? '完成' : '未完成'}}
132
- - 测试:{{vars.testResult ? '完成' : '未完成'}}
133
-
134
- 请提供项目总结和下一步建议。
135
- outputVariable: finalReport
136
-
137
- variables:
138
- defaultTask: "开发一个简单的任务管理应用"
139
- parameters:
140
- - name: task
141
- description: 项目任务描述
142
- required: true
143
- default: "开发一个简单的任务管理应用"
144
- timeout: 600000
145
- ---
146
-
147
- # 结构化编排工作流
148
-
149
- 这是一个结构化工作流示例,演示如何使用工作流引擎协调多个Agent。
150
-
151
- ## 工作流说明
152
-
153
- 此工作流模拟完整的软件开发流程:
154
- 1. **规划阶段**:使用 project-planner 创建项目计划
155
- 2. **用户批准**:请求用户确认计划
156
- 3. **并行实施**:前端、后端、数据库同时开发
157
- 4. **测试验证**:运行安全检查、代码检查、综合测试
158
- 5. **报告生成**:生成最终项目报告
159
-
160
- ## 使用方法
161
-
162
- 通过Agent的`executeWorkflow`方法调用:
163
-
164
- ```javascript
165
- await agent.executeWorkflow('structured-orchestrate', {
166
- task: '开发一个用户认证系统'
167
- });
168
- ```
169
-
170
- ## 技术要点
171
-
172
- - 使用结构化JSON步骤定义
173
- - 支持条件分支
174
- - 支持并行执行
175
- - 变量传递和模板渲染
176
- - 技能调用集成
177
-
178
- ## 向后兼容
179
-
180
- 此文件同时包含结构化步骤(在frontmatter中)和传统的Markdown描述,确保与现有系统兼容。
@@ -1,144 +0,0 @@
1
- ---
2
- description: Test generation and test running command. Creates and executes tests for code.
3
- ---
4
-
5
- # /test - Test Generation and Execution
6
-
7
- $ARGUMENTS
8
-
9
- ---
10
-
11
- ## Purpose
12
-
13
- This command generates tests, runs existing tests, or checks test coverage.
14
-
15
- ---
16
-
17
- ## Sub-commands
18
-
19
- ```
20
- /test - Run all tests
21
- /test [file/feature] - Generate tests for specific target
22
- /test coverage - Show test coverage report
23
- /test watch - Run tests in watch mode
24
- ```
25
-
26
- ---
27
-
28
- ## Behavior
29
-
30
- ### Generate Tests
31
-
32
- When asked to test a file or feature:
33
-
34
- 1. **Analyze the code**
35
- - Identify functions and methods
36
- - Find edge cases
37
- - Detect dependencies to mock
38
-
39
- 2. **Generate test cases**
40
- - Happy path tests
41
- - Error cases
42
- - Edge cases
43
- - Integration tests (if needed)
44
-
45
- 3. **Write tests**
46
- - Use project's test framework (Jest, Vitest, etc.)
47
- - Follow existing test patterns
48
- - Mock external dependencies
49
-
50
- ---
51
-
52
- ## Output Format
53
-
54
- ### For Test Generation
55
-
56
- ```markdown
57
- ## 🧪 Tests: [Target]
58
-
59
- ### Test Plan
60
- | Test Case | Type | Coverage |
61
- |-----------|------|----------|
62
- | Should create user | Unit | Happy path |
63
- | Should reject invalid email | Unit | Validation |
64
- | Should handle db error | Unit | Error case |
65
-
66
- ### Generated Tests
67
-
68
- `tests/[file].test.ts`
69
-
70
- [Code block with tests]
71
-
72
- ---
73
-
74
- Run with: `npm test`
75
- ```
76
-
77
- ### For Test Execution
78
-
79
- ```
80
- 🧪 Running tests...
81
-
82
- ✅ auth.test.ts (5 passed)
83
- ✅ user.test.ts (8 passed)
84
- ❌ order.test.ts (2 passed, 1 failed)
85
-
86
- Failed:
87
- ✗ should calculate total with discount
88
- Expected: 90
89
- Received: 100
90
-
91
- Total: 15 tests (14 passed, 1 failed)
92
- ```
93
-
94
- ---
95
-
96
- ## Examples
97
-
98
- ```
99
- /test src/services/auth.service.ts
100
- /test user registration flow
101
- /test coverage
102
- /test fix failed tests
103
- ```
104
-
105
- ---
106
-
107
- ## Test Patterns
108
-
109
- ### Unit Test Structure
110
-
111
- ```typescript
112
- describe('AuthService', () => {
113
- describe('login', () => {
114
- it('should return token for valid credentials', async () => {
115
- // Arrange
116
- const credentials = { email: 'test@test.com', password: 'pass123' };
117
-
118
- // Act
119
- const result = await authService.login(credentials);
120
-
121
- // Assert
122
- expect(result.token).toBeDefined();
123
- });
124
-
125
- it('should throw for invalid password', async () => {
126
- // Arrange
127
- const credentials = { email: 'test@test.com', password: 'wrong' };
128
-
129
- // Act & Assert
130
- await expect(authService.login(credentials)).rejects.toThrow('Invalid credentials');
131
- });
132
- });
133
- });
134
- ```
135
-
136
- ---
137
-
138
- ## Key Principles
139
-
140
- - **Test behavior not implementation**
141
- - **One assertion per test** (when practical)
142
- - **Descriptive test names**
143
- - **Arrange-Act-Assert pattern**
144
- - **Mock external dependencies**