@totaland/create-starter-kit 1.0.0 → 2.0.1

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 (228) hide show
  1. package/README.md +130 -18
  2. package/bin/index.js +109 -21
  3. package/package.json +2 -2
  4. package/templates/backend/.github/agents/ /360/237/216/255 planner.agent.md" +92 -0
  5. package/templates/backend/.github/agents/api-architect.agent.md +41 -0
  6. package/templates/backend/.github/agents/code-reviewer.agent.md +26 -0
  7. package/templates/backend/.github/agents/code-simplifier.agent.md +41 -0
  8. package/templates/backend/.github/agents/code-skeptic.agent.md +74 -0
  9. package/templates/backend/.github/agents/docs-specialist.agent.md +25 -0
  10. package/templates/backend/.github/agents/implementation-plan.agent.md +160 -0
  11. package/templates/backend/.github/agents/janitor.agent.md +90 -0
  12. package/templates/backend/.github/agents/ms-sql-dba.agent.md +25 -0
  13. package/templates/backend/.github/agents/plan.agent.md +115 -0
  14. package/templates/backend/.github/agents/planner.agent.md +15 -0
  15. package/templates/backend/.github/agents/playwright-tester.agent.md +13 -0
  16. package/templates/backend/.github/agents/postgresql-dba.agent.md +18 -0
  17. package/templates/backend/.github/agents/prd.agent.md +202 -0
  18. package/templates/backend/.github/agents/research-technical-spike.agent.md +170 -0
  19. package/templates/backend/.github/agents/software-engineer-agent-v1.agent.md +165 -0
  20. package/templates/backend/.github/agents/task-planner.agent.md +375 -0
  21. package/templates/backend/.github/agents/task-researcher.agent.md +255 -0
  22. package/templates/backend/.github/agents/tdd-green.agent.md +60 -0
  23. package/templates/backend/.github/agents/tdd-red.agent.md +60 -0
  24. package/templates/backend/.github/agents/tdd-refactor.agent.md +85 -0
  25. package/templates/backend/.github/agents/tech-debt-remediation-plan.agent.md +50 -0
  26. package/templates/backend/.github/agents/typescript-mcp-expert.agent.md +91 -0
  27. package/templates/backend/.github/agents/ultimate-thinking-beastmode.agent.md +644 -0
  28. package/templates/backend/.github/agents//360/237/216/255 generator.agent.md" +264 -0
  29. package/templates/backend/.github/agents//360/237/216/255 healer.agent.md" +44 -0
  30. package/templates/backend/.github/agents//360/237/216/255 pom.agent.md" +308 -0
  31. package/templates/backend/.github/instructions/a11y.instructions.md +369 -0
  32. package/templates/backend/.github/instructions/ms-sql-dba.instructions.md +25 -0
  33. package/templates/backend/.github/instructions/object-calisthenics.instructions.md +302 -0
  34. package/templates/backend/.github/instructions/performance-optimization.instructions.md +420 -0
  35. package/templates/backend/.github/instructions/playwright-python.instructions.md +62 -0
  36. package/templates/backend/.github/instructions/playwright-typescript.instructions.md +86 -0
  37. package/templates/backend/.github/instructions/security-and-owasp.instructions.md +51 -0
  38. package/templates/backend/.github/instructions/self-explanatory-code-commenting.instructions.md +162 -0
  39. package/templates/backend/.github/instructions/spec-driven-workflow-v1.instructions.md +323 -0
  40. package/templates/backend/.github/instructions/sql-sp-generation.instructions.md +74 -0
  41. package/templates/backend/.github/instructions/task-implementation.instructions.md +190 -0
  42. package/templates/backend/.github/instructions/typescript-mcp-server.instructions.md +228 -0
  43. package/templates/backend/.github/prompts/ai-prompt-engineering-safety-review.prompt.md +229 -0
  44. package/templates/backend/.github/prompts/architecture-blueprint-generator.prompt.md +321 -0
  45. package/templates/backend/.github/prompts/breakdown-epic-arch.prompt.md +65 -0
  46. package/templates/backend/.github/prompts/breakdown-epic-pm.prompt.md +57 -0
  47. package/templates/backend/.github/prompts/breakdown-feature-implementation.prompt.md +127 -0
  48. package/templates/backend/.github/prompts/breakdown-feature-prd.prompt.md +60 -0
  49. package/templates/backend/.github/prompts/breakdown-plan.prompt.md +508 -0
  50. package/templates/backend/.github/prompts/copilot-instructions-blueprint-generator.prompt.md +293 -0
  51. package/templates/backend/.github/prompts/create-agentsmd.prompt.md +248 -0
  52. package/templates/backend/.github/prompts/create-github-issue-feature-from-specification.prompt.md +27 -0
  53. package/templates/backend/.github/prompts/create-github-issues-feature-from-implementation-plan.prompt.md +27 -0
  54. package/templates/backend/.github/prompts/create-github-issues-for-unmet-specification-requirements.prompt.md +35 -0
  55. package/templates/backend/.github/prompts/create-implementation-plan.prompt.md +156 -0
  56. package/templates/backend/.github/prompts/create-llms.prompt.md +209 -0
  57. package/templates/backend/.github/prompts/create-specification.prompt.md +126 -0
  58. package/templates/backend/.github/prompts/create-technical-spike.prompt.md +230 -0
  59. package/templates/backend/.github/prompts/csharp-nunit.prompt.md +71 -0
  60. package/templates/backend/.github/prompts/ef-core.prompt.md +76 -0
  61. package/templates/backend/.github/prompts/folder-structure-blueprint-generator.prompt.md +404 -0
  62. package/templates/backend/.github/prompts/gen-specs-as-issues.prompt.md +165 -0
  63. package/templates/backend/.github/prompts/generate-custom-instructions-from-codebase.prompt.md +239 -0
  64. package/templates/backend/.github/prompts/java-junit.prompt.md +64 -0
  65. package/templates/backend/.github/prompts/memory-merger.prompt.md +107 -0
  66. package/templates/backend/.github/prompts/multi-stage-dockerfile.prompt.md +46 -0
  67. package/templates/backend/.github/prompts/playwright-automation-fill-in-form.prompt.md +29 -0
  68. package/templates/backend/.github/prompts/playwright-explore-website.prompt.md +19 -0
  69. package/templates/backend/.github/prompts/playwright-generate-test.prompt.md +19 -0
  70. package/templates/backend/.github/prompts/postgresql-code-review.prompt.md +214 -0
  71. package/templates/backend/.github/prompts/postgresql-optimization.prompt.md +406 -0
  72. package/templates/backend/.github/prompts/project-workflow-analysis-blueprint-generator.prompt.md +294 -0
  73. package/templates/backend/.github/prompts/prompt-builder.prompt.md +142 -0
  74. package/templates/backend/.github/prompts/remember.prompt.md +125 -0
  75. package/templates/backend/.github/prompts/review-and-refactor.prompt.md +15 -0
  76. package/templates/backend/.github/prompts/sql-code-review.prompt.md +303 -0
  77. package/templates/backend/.github/prompts/sql-optimization.prompt.md +298 -0
  78. package/templates/backend/.github/prompts/suggest-awesome-github-copilot-agents.prompt.md +72 -0
  79. package/templates/backend/.github/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md +71 -0
  80. package/templates/backend/.github/prompts/suggest-awesome-github-copilot-collections.prompt.md +149 -0
  81. package/templates/backend/.github/prompts/suggest-awesome-github-copilot-instructions.prompt.md +88 -0
  82. package/templates/backend/.github/prompts/suggest-awesome-github-copilot-prompts.prompt.md +71 -0
  83. package/templates/backend/.github/prompts/technology-stack-blueprint-generator.prompt.md +242 -0
  84. package/templates/backend/.github/prompts/typescript-mcp-server-generator.prompt.md +90 -0
  85. package/templates/backend/.github/prompts/update-implementation-plan.prompt.md +157 -0
  86. package/templates/backend/.github/prompts/update-markdown-file-index.prompt.md +76 -0
  87. package/templates/backend/Project_Folders_Structure_Blueprint.md +529 -0
  88. package/templates/backend/README.md +99 -0
  89. package/templates/backend/biome.json +45 -0
  90. package/{template → templates/backend}/drizzle.config.ts +1 -1
  91. package/{template → templates/backend}/package.json +9 -4
  92. package/templates/backend/pnpm-lock.yaml +4240 -0
  93. package/templates/backend/src/features/health/health.test.ts +23 -0
  94. package/{template → templates/backend}/src/features/health/index.ts +1 -0
  95. package/templates/backend/src/features/health/schemas.ts +29 -0
  96. package/templates/backend/src/features/orders/controller.ts +18 -0
  97. package/templates/backend/src/features/orders/index.ts +10 -0
  98. package/templates/backend/src/features/orders/schemas.ts +62 -0
  99. package/{template → templates/backend}/src/index.ts +3 -36
  100. package/templates/backend/src/lib/openapi.ts +25 -0
  101. package/templates/backend/src/lib/validateRequest.test.ts +84 -0
  102. package/templates/backend/src/lib/validateRequest.ts +72 -0
  103. package/{template → templates/backend}/tsconfig.json +2 -2
  104. package/{template → templates/backend}/vitest.config.ts +8 -1
  105. package/templates/frontend/.env.example +7 -0
  106. package/templates/frontend/.github/agents/ /360/237/216/255 planner.agent.md" +92 -0
  107. package/templates/frontend/.github/agents/api-architect.agent.md +41 -0
  108. package/templates/frontend/.github/agents/code-reviewer.agent.md +26 -0
  109. package/templates/frontend/.github/agents/code-simplifier.agent.md +41 -0
  110. package/templates/frontend/.github/agents/code-skeptic.agent.md +74 -0
  111. package/templates/frontend/.github/agents/docs-specialist.agent.md +25 -0
  112. package/templates/frontend/.github/agents/implementation-plan.agent.md +160 -0
  113. package/templates/frontend/.github/agents/janitor.agent.md +90 -0
  114. package/templates/frontend/.github/agents/ms-sql-dba.agent.md +25 -0
  115. package/templates/frontend/.github/agents/plan.agent.md +115 -0
  116. package/templates/frontend/.github/agents/planner.agent.md +15 -0
  117. package/templates/frontend/.github/agents/playwright-tester.agent.md +13 -0
  118. package/templates/frontend/.github/agents/postgresql-dba.agent.md +18 -0
  119. package/templates/frontend/.github/agents/prd.agent.md +202 -0
  120. package/templates/frontend/.github/agents/research-technical-spike.agent.md +170 -0
  121. package/templates/frontend/.github/agents/software-engineer-agent-v1.agent.md +165 -0
  122. package/templates/frontend/.github/agents/task-planner.agent.md +375 -0
  123. package/templates/frontend/.github/agents/task-researcher.agent.md +255 -0
  124. package/templates/frontend/.github/agents/tdd-green.agent.md +60 -0
  125. package/templates/frontend/.github/agents/tdd-red.agent.md +60 -0
  126. package/templates/frontend/.github/agents/tdd-refactor.agent.md +85 -0
  127. package/templates/frontend/.github/agents/tech-debt-remediation-plan.agent.md +50 -0
  128. package/templates/frontend/.github/agents/typescript-mcp-expert.agent.md +91 -0
  129. package/templates/frontend/.github/agents/ultimate-thinking-beastmode.agent.md +644 -0
  130. package/templates/frontend/.github/agents//360/237/216/255 generator.agent.md" +264 -0
  131. package/templates/frontend/.github/agents//360/237/216/255 healer.agent.md" +44 -0
  132. package/templates/frontend/.github/agents//360/237/216/255 pom.agent.md" +308 -0
  133. package/templates/frontend/.github/instructions/a11y.instructions.md +369 -0
  134. package/templates/frontend/.github/instructions/ms-sql-dba.instructions.md +25 -0
  135. package/templates/frontend/.github/instructions/object-calisthenics.instructions.md +302 -0
  136. package/templates/frontend/.github/instructions/performance-optimization.instructions.md +420 -0
  137. package/templates/frontend/.github/instructions/playwright-python.instructions.md +62 -0
  138. package/templates/frontend/.github/instructions/playwright-typescript.instructions.md +86 -0
  139. package/templates/frontend/.github/instructions/security-and-owasp.instructions.md +51 -0
  140. package/templates/frontend/.github/instructions/self-explanatory-code-commenting.instructions.md +162 -0
  141. package/templates/frontend/.github/instructions/spec-driven-workflow-v1.instructions.md +323 -0
  142. package/templates/frontend/.github/instructions/sql-sp-generation.instructions.md +74 -0
  143. package/templates/frontend/.github/instructions/task-implementation.instructions.md +190 -0
  144. package/templates/frontend/.github/instructions/typescript-mcp-server.instructions.md +228 -0
  145. package/templates/frontend/.github/prompts/ai-prompt-engineering-safety-review.prompt.md +229 -0
  146. package/templates/frontend/.github/prompts/architecture-blueprint-generator.prompt.md +321 -0
  147. package/templates/frontend/.github/prompts/breakdown-epic-arch.prompt.md +65 -0
  148. package/templates/frontend/.github/prompts/breakdown-epic-pm.prompt.md +57 -0
  149. package/templates/frontend/.github/prompts/breakdown-feature-implementation.prompt.md +127 -0
  150. package/templates/frontend/.github/prompts/breakdown-feature-prd.prompt.md +60 -0
  151. package/templates/frontend/.github/prompts/breakdown-plan.prompt.md +508 -0
  152. package/templates/frontend/.github/prompts/copilot-instructions-blueprint-generator.prompt.md +293 -0
  153. package/templates/frontend/.github/prompts/create-agentsmd.prompt.md +248 -0
  154. package/templates/frontend/.github/prompts/create-github-issue-feature-from-specification.prompt.md +27 -0
  155. package/templates/frontend/.github/prompts/create-github-issues-feature-from-implementation-plan.prompt.md +27 -0
  156. package/templates/frontend/.github/prompts/create-github-issues-for-unmet-specification-requirements.prompt.md +35 -0
  157. package/templates/frontend/.github/prompts/create-implementation-plan.prompt.md +156 -0
  158. package/templates/frontend/.github/prompts/create-llms.prompt.md +209 -0
  159. package/templates/frontend/.github/prompts/create-specification.prompt.md +126 -0
  160. package/templates/frontend/.github/prompts/create-technical-spike.prompt.md +230 -0
  161. package/templates/frontend/.github/prompts/csharp-nunit.prompt.md +71 -0
  162. package/templates/frontend/.github/prompts/ef-core.prompt.md +76 -0
  163. package/templates/frontend/.github/prompts/folder-structure-blueprint-generator.prompt.md +404 -0
  164. package/templates/frontend/.github/prompts/gen-specs-as-issues.prompt.md +165 -0
  165. package/templates/frontend/.github/prompts/generate-custom-instructions-from-codebase.prompt.md +239 -0
  166. package/templates/frontend/.github/prompts/java-junit.prompt.md +64 -0
  167. package/templates/frontend/.github/prompts/memory-merger.prompt.md +107 -0
  168. package/templates/frontend/.github/prompts/multi-stage-dockerfile.prompt.md +46 -0
  169. package/templates/frontend/.github/prompts/playwright-automation-fill-in-form.prompt.md +29 -0
  170. package/templates/frontend/.github/prompts/playwright-explore-website.prompt.md +19 -0
  171. package/templates/frontend/.github/prompts/playwright-generate-test.prompt.md +19 -0
  172. package/templates/frontend/.github/prompts/postgresql-code-review.prompt.md +214 -0
  173. package/templates/frontend/.github/prompts/postgresql-optimization.prompt.md +406 -0
  174. package/templates/frontend/.github/prompts/project-workflow-analysis-blueprint-generator.prompt.md +294 -0
  175. package/templates/frontend/.github/prompts/prompt-builder.prompt.md +142 -0
  176. package/templates/frontend/.github/prompts/remember.prompt.md +125 -0
  177. package/templates/frontend/.github/prompts/review-and-refactor.prompt.md +15 -0
  178. package/templates/frontend/.github/prompts/sql-code-review.prompt.md +303 -0
  179. package/templates/frontend/.github/prompts/sql-optimization.prompt.md +298 -0
  180. package/templates/frontend/.github/prompts/suggest-awesome-github-copilot-agents.prompt.md +72 -0
  181. package/templates/frontend/.github/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md +71 -0
  182. package/templates/frontend/.github/prompts/suggest-awesome-github-copilot-collections.prompt.md +149 -0
  183. package/templates/frontend/.github/prompts/suggest-awesome-github-copilot-instructions.prompt.md +88 -0
  184. package/templates/frontend/.github/prompts/suggest-awesome-github-copilot-prompts.prompt.md +71 -0
  185. package/templates/frontend/.github/prompts/technology-stack-blueprint-generator.prompt.md +242 -0
  186. package/templates/frontend/.github/prompts/typescript-mcp-server-generator.prompt.md +90 -0
  187. package/templates/frontend/.github/prompts/update-implementation-plan.prompt.md +157 -0
  188. package/templates/frontend/.github/prompts/update-markdown-file-index.prompt.md +76 -0
  189. package/templates/frontend/README.md +199 -0
  190. package/templates/frontend/biome.json +45 -0
  191. package/templates/frontend/components.json +22 -0
  192. package/templates/frontend/index.html +13 -0
  193. package/templates/frontend/package.json +44 -0
  194. package/templates/frontend/pnpm-lock.yaml +2011 -0
  195. package/templates/frontend/postcss.config.js +6 -0
  196. package/templates/frontend/public/vite.svg +1 -0
  197. package/templates/frontend/src/App.css +42 -0
  198. package/templates/frontend/src/App.tsx +17 -0
  199. package/templates/frontend/src/assets/react.svg +1 -0
  200. package/templates/frontend/src/components/layout/layout.component.tsx +31 -0
  201. package/templates/frontend/src/components/menu-toggle-icon.tsx +53 -0
  202. package/templates/frontend/src/components/ui/button.tsx +57 -0
  203. package/templates/frontend/src/docs/RECOMMENDED_LIBRARIES.md +226 -0
  204. package/templates/frontend/src/docs/SETUP_SUMMARY.md +162 -0
  205. package/templates/frontend/src/hooks/use-scroll.ts +21 -0
  206. package/templates/frontend/src/index.css +121 -0
  207. package/templates/frontend/src/lib/api-client.ts +46 -0
  208. package/templates/frontend/src/lib/utils.ts +6 -0
  209. package/templates/frontend/src/main.tsx +30 -0
  210. package/templates/frontend/src/pages/about/about.page.tsx +50 -0
  211. package/templates/frontend/src/pages/home/home.page.tsx +43 -0
  212. package/templates/frontend/tailwind.config.js +59 -0
  213. package/templates/frontend/tsconfig.app.json +41 -0
  214. package/templates/frontend/tsconfig.json +13 -0
  215. package/templates/frontend/tsconfig.node.json +26 -0
  216. package/templates/frontend/vite.config.ts +14 -0
  217. package/template/.env.example +0 -8
  218. package/template/AGENTS.md +0 -23
  219. package/template/ARCHITECTURE.md +0 -53
  220. package/template/ORDER_SYSTEM.md +0 -93
  221. package/template/biome.json +0 -3
  222. package/template/src/features/orders/controller.ts +0 -13
  223. package/template/src/features/orders/index.ts +0 -7
  224. /package/{template → templates/backend}/knip.json +0 -0
  225. /package/{template → templates/backend}/playwright.config.ts +0 -0
  226. /package/{template → templates/backend}/pnpm-workspace.yaml +0 -0
  227. /package/{template → templates/backend}/src/features/health/controller.ts +0 -0
  228. /package/{template → templates/backend}/tsconfig.build.json +0 -0
package/README.md CHANGED
@@ -1,42 +1,127 @@
1
- # create-starter-kit
1
+ # @totaland/create-starter-kit
2
2
 
3
- Scaffolding tool for creating new starter-kit projects.
3
+ Scaffolding tool for creating new starter-kit projects with a choice between backend and frontend templates.
4
+
5
+ ## Features
6
+
7
+ - ✨ Interactive template selection (backend or frontend)
8
+ - 🎯 CLI argument support for automation
9
+ - 📦 Clean, production-ready templates
10
+ - 🚀 Quick project initialization
4
11
 
5
12
  ## Usage
6
13
 
7
- ### Using pnpm create (recommended)
14
+ ### Interactive Mode (Recommended)
8
15
 
9
16
  ```bash
10
- pnpm create starter-kit my-new-project
17
+ pnpm create @totaland/starter-kit my-new-project
11
18
  ```
12
19
 
13
- ### Using pnpm dlx
20
+ You'll be prompted to select a template:
21
+ - **Backend** - Express.js + TypeScript + Drizzle ORM + Scalar API docs
22
+ - **Frontend** - React + Vite + TypeScript + Tailwind CSS v4 + shadcn/ui + TanStack Query
23
+
24
+ ### With Template Argument
25
+
26
+ Skip the prompt by specifying the template:
27
+
28
+ ```bash
29
+ # Create backend project
30
+ pnpm create @totaland/starter-kit my-backend backend
31
+
32
+ # Create frontend project
33
+ pnpm create @totaland/starter-kit my-frontend frontend
34
+ ```
35
+
36
+ ### Alternative Package Managers
37
+
38
+ Using npm:
39
+ ```bash
40
+ npm create @totaland/starter-kit@latest my-project
41
+ ```
42
+
43
+ Using yarn:
44
+ ```bash
45
+ yarn create @totaland/starter-kit my-project
46
+ ```
14
47
 
48
+ Using pnpm dlx:
15
49
  ```bash
16
- pnpm dlx create-starter-kit my-new-project
50
+ pnpm dlx @totaland/create-starter-kit my-project
17
51
  ```
18
52
 
19
- ### Using npx
53
+ ## Templates
20
54
 
55
+ ### Backend Template
56
+
57
+ **Tech Stack:**
58
+ - Express.js (via ultimate-express)
59
+ - TypeScript
60
+ - Drizzle ORM with PostgreSQL
61
+ - Scalar API documentation
62
+ - Biome for linting/formatting
63
+ - Vitest for testing
64
+
65
+ **Features:**
66
+ - 🏗️ Feature-based architecture
67
+ - 🔄 JSON-driven orchestration engine
68
+ - 📝 Comprehensive API documentation
69
+ - 🧪 Testing setup with Vitest
70
+ - 🗄️ Database migrations with Drizzle
71
+
72
+ **After Creation:**
73
+ ```bash
74
+ cd my-backend
75
+ pnpm install
76
+ pnpm dev
77
+ ```
78
+
79
+ ### Frontend Template
80
+
81
+ **Tech Stack:**
82
+ - React 19
83
+ - Vite 7
84
+ - TypeScript
85
+ - Tailwind CSS v4
86
+ - shadcn/ui (component library)
87
+ - TanStack Query v5
88
+ - React Router v7
89
+ - Drizzle ORM
90
+ - Biome for linting/formatting
91
+
92
+ **Features:**
93
+ - 🎨 Modern UI with Tailwind CSS v4
94
+ - 🎯 shadcn/ui ready (add components via CLI)
95
+ - 🔄 TanStack Query for data fetching
96
+ - 🗺️ React Router for navigation
97
+ - 📱 Responsive layout examples
98
+ - 🌗 Dark mode support
99
+
100
+ **After Creation:**
21
101
  ```bash
22
- npx create-starter-kit my-new-project
102
+ cd my-frontend
103
+ pnpm install
104
+ pnpm dev
105
+
106
+ # Add shadcn/ui components
107
+ pnpm dlx shadcn@latest add button card dialog
23
108
  ```
24
109
 
25
- ## What it does
110
+ ## What It Does
26
111
 
27
- 1. Creates a new directory with your project name
28
- 2. Copies the entire starter-kit template
29
- 3. Updates the `package.json` name field to match your project name
30
- 4. Provides next steps for installation and running the project
112
+ 1. Creates a new directory with your project name
113
+ 2. Copies the selected template (backend or frontend)
114
+ 3. Updates the `package.json` name field to match your project name
115
+ 4. Provides next steps for installation and running the project
31
116
 
32
117
  ## Local Development
33
118
 
34
119
  To test this locally before publishing:
35
120
 
36
- 1. Build the template:
121
+ 1. Make sure templates are up to date:
37
122
  ```bash
38
- cd /path/to/starter-kit
39
- ./scripts/sync-template.sh
123
+ cd /path/to/starter-kit/create-starter-kit
124
+ # Templates are in ./templates/backend and ./templates/frontend
40
125
  ```
41
126
 
42
127
  2. Link the package globally:
@@ -48,7 +133,12 @@ To test this locally before publishing:
48
133
  3. Test it:
49
134
  ```bash
50
135
  cd /tmp
51
- pnpm create starter-kit test-project
136
+ pnpm create @totaland/starter-kit test-project
137
+ # Select a template when prompted
138
+
139
+ # Or specify template directly
140
+ pnpm create @totaland/starter-kit test-backend backend
141
+ pnpm create @totaland/starter-kit test-frontend frontend
52
142
  ```
53
143
 
54
144
  ## Publishing
@@ -62,5 +152,27 @@ pnpm publish
62
152
 
63
153
  Once published, anyone can use:
64
154
  ```bash
65
- pnpm create starter-kit my-project
155
+ pnpm create @totaland/starter-kit my-project
66
156
  ```
157
+
158
+ ## Project Structure
159
+
160
+ ```
161
+ create-starter-kit/
162
+ ├── bin/
163
+ │ └── index.js # CLI entry point
164
+ ├── templates/
165
+ │ ├── backend/ # Backend template files
166
+ │ └── frontend/ # Frontend template files
167
+ ├── package.json
168
+ └── README.md
169
+ ```
170
+
171
+ ## Requirements
172
+
173
+ - Node.js 18+
174
+ - pnpm (recommended) or npm/yarn
175
+
176
+ ## License
177
+
178
+ MIT
package/bin/index.js CHANGED
@@ -1,26 +1,53 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { copyFileSync, mkdirSync, readFileSync, writeFileSync, readdirSync, statSync } from 'node:fs';
3
+ import {
4
+ copyFileSync,
5
+ mkdirSync,
6
+ readFileSync,
7
+ writeFileSync,
8
+ readdirSync,
9
+ existsSync,
10
+ } from 'node:fs';
4
11
  import { dirname, join, resolve } from 'node:path';
5
12
  import { fileURLToPath } from 'node:url';
13
+ import * as readline from 'node:readline/promises';
6
14
 
7
15
  const __dirname = dirname(fileURLToPath(import.meta.url));
8
16
 
9
17
  // Get the project name from command line arguments
10
18
  const projectName = process.argv[2];
19
+ const templateArg = process.argv[3]; // Optional template argument
11
20
 
12
21
  if (!projectName) {
13
22
  console.error('Error: Please provide a project name');
14
- console.log('Usage: pnpm create starter-kit <project-name>');
23
+ console.log('Usage: pnpm create @totaland/starter-kit <project-name> [template]');
24
+ console.log('Templates: backend, frontend');
15
25
  process.exit(1);
16
26
  }
17
27
 
18
28
  // Resolve paths
19
- const templateDir = resolve(__dirname, '../template');
29
+ const templatesDir = resolve(__dirname, '../templates');
20
30
  const targetDir = resolve(process.cwd(), projectName);
21
31
 
22
- console.log(`Creating new starter-kit project: ${projectName}`);
23
- console.log(`Target directory: ${targetDir}`);
32
+ // Check if target directory already exists
33
+ if (existsSync(targetDir)) {
34
+ console.error(`Error: Directory "${projectName}" already exists`);
35
+ process.exit(1);
36
+ }
37
+
38
+ // Available templates
39
+ const TEMPLATES = {
40
+ backend: {
41
+ name: 'Backend',
42
+ description: 'Express.js backend with TypeScript, Drizzle ORM, and Scalar API docs',
43
+ dir: 'backend',
44
+ },
45
+ frontend: {
46
+ name: 'Frontend',
47
+ description: 'React + Vite with TypeScript, Tailwind CSS v4, shadcn/ui, and TanStack Query',
48
+ dir: 'frontend',
49
+ },
50
+ };
24
51
 
25
52
  // Function to recursively copy directory
26
53
  function copyDir(src, dest) {
@@ -40,25 +67,86 @@ function copyDir(src, dest) {
40
67
  }
41
68
  }
42
69
 
43
- try {
44
- // Copy template to target directory
45
- copyDir(templateDir, targetDir);
70
+ // Function to prompt for template selection
71
+ async function promptTemplate() {
72
+ const rl = readline.createInterface({
73
+ input: process.stdin,
74
+ output: process.stdout,
75
+ });
46
76
 
47
- // Update package.json with the new project name
48
- const packageJsonPath = join(targetDir, 'package.json');
49
- const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
77
+ console.log('\n📦 Select a template:\n');
78
+ console.log('1. Backend - Express.js + TypeScript + Drizzle ORM');
79
+ console.log('2. Frontend - React + Vite + Tailwind CSS v4 + shadcn/ui\n');
50
80
 
51
- packageJson.name = projectName;
81
+ const answer = await rl.question('Enter your choice (1 or 2): ');
82
+ rl.close();
52
83
 
53
- writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\n');
54
-
55
- console.log('\n✅ Project created successfully!');
56
- console.log('\nNext steps:');
57
- console.log(` cd ${projectName}`);
58
- console.log(' pnpm install');
59
- console.log(' pnpm dev');
84
+ if (answer === '1' || answer.toLowerCase() === 'backend') {
85
+ return 'backend';
86
+ }
87
+ if (answer === '2' || answer.toLowerCase() === 'frontend') {
88
+ return 'frontend';
89
+ }
60
90
 
61
- } catch (error) {
62
- console.error('Error creating project:', error.message);
91
+ console.error('Invalid choice. Please run the command again.');
63
92
  process.exit(1);
64
93
  }
94
+
95
+ async function main() {
96
+ try {
97
+ // Determine which template to use
98
+ let templateKey;
99
+
100
+ if (templateArg) {
101
+ // Template specified via CLI argument
102
+ templateKey = templateArg.toLowerCase();
103
+ if (!TEMPLATES[templateKey]) {
104
+ console.error(`Error: Invalid template "${templateArg}"`);
105
+ console.log('Available templates: backend, frontend');
106
+ process.exit(1);
107
+ }
108
+ } else {
109
+ // Prompt for template selection
110
+ templateKey = await promptTemplate();
111
+ }
112
+
113
+ const template = TEMPLATES[templateKey];
114
+ const templateDir = join(templatesDir, template.dir);
115
+
116
+ // Verify template directory exists
117
+ if (!existsSync(templateDir)) {
118
+ console.error(`Error: Template directory not found: ${templateDir}`);
119
+ process.exit(1);
120
+ }
121
+
122
+ console.log(`\n🚀 Creating ${template.name} project: ${projectName}`);
123
+ console.log(`📁 ${template.description}\n`);
124
+
125
+ // Copy template to target directory
126
+ copyDir(templateDir, targetDir);
127
+
128
+ // Update package.json with the new project name
129
+ const packageJsonPath = join(targetDir, 'package.json');
130
+ if (existsSync(packageJsonPath)) {
131
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
132
+ packageJson.name = projectName;
133
+ writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\n');
134
+ }
135
+
136
+ console.log('✅ Project created successfully!\n');
137
+ console.log('📝 Next steps:');
138
+ console.log(` cd ${projectName}`);
139
+ console.log(' pnpm install');
140
+ console.log(' pnpm dev\n');
141
+
142
+ if (templateKey === 'frontend') {
143
+ console.log('💡 Tip: Add shadcn/ui components with:');
144
+ console.log(' pnpm dlx shadcn@latest add button card dialog\n');
145
+ }
146
+ } catch (error) {
147
+ console.error('Error creating project:', error.message);
148
+ process.exit(1);
149
+ }
150
+ }
151
+
152
+ main();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@totaland/create-starter-kit",
3
- "version": "1.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "Scaffolding tool for creating new starter-kit projects",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "files": [
13
13
  "bin",
14
- "template"
14
+ "templates"
15
15
  ],
16
16
  "keywords": [
17
17
  "starter-kit",
@@ -0,0 +1,92 @@
1
+ ---
2
+ description: Use this agent when you need to create comprehensive test plan for a web application or website.
3
+ tools: ['edit/createFile', 'edit/createDirectory', 'search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'playwright-test/browser_click', 'playwright-test/browser_close', 'playwright-test/browser_console_messages', 'playwright-test/browser_drag', 'playwright-test/browser_evaluate', 'playwright-test/browser_file_upload', 'playwright-test/browser_handle_dialog', 'playwright-test/browser_hover', 'playwright-test/browser_navigate', 'playwright-test/browser_navigate_back', 'playwright-test/browser_network_requests', 'playwright-test/browser_press_key', 'playwright-test/browser_select_option', 'playwright-test/browser_snapshot', 'playwright-test/browser_take_screenshot', 'playwright-test/browser_type', 'playwright-test/browser_wait_for', 'playwright-test/planner_setup_page']
4
+ ---
5
+
6
+ You are an expert web test planner with extensive experience in quality assurance, user experience testing, and test
7
+ scenario design. Your expertise includes functional testing, edge case identification, and comprehensive test coverage
8
+ planning.
9
+
10
+ You will:
11
+
12
+ 1. **Navigate and Explore**
13
+ - Invoke the `planner_setup_page` tool once to set up page before using any other tools
14
+ - Explore the browser snapshot
15
+ - Do not take screenshots unless absolutely necessary
16
+ - Use browser_* tools to navigate and discover interface
17
+ - Thoroughly explore the interface, identifying all interactive elements, forms, navigation paths, and functionality
18
+
19
+ 2. **Analyze User Flows**
20
+ - Map out the primary user journeys and identify critical paths through the application
21
+ - Consider different user types and their typical behaviors
22
+
23
+ 3. **Design Comprehensive Scenarios**
24
+
25
+ Create detailed test scenarios that cover:
26
+ - Happy path scenarios (normal user behavior)
27
+ - Edge cases and boundary conditions
28
+ - Error handling and validation
29
+
30
+ 4. **Structure Test Plans**
31
+
32
+ Each scenario must include:
33
+ - Clear, descriptive title
34
+ - Detailed step-by-step instructions
35
+ - Expected outcomes where appropriate
36
+ - Assumptions about starting state (always assume blank/fresh state)
37
+ - Success criteria and failure conditions
38
+
39
+ 5. **Create Documentation**
40
+
41
+ Save your test plan as requested:
42
+ - Executive summary of the tested page/application
43
+ - Individual scenarios as separate sections
44
+ - Each scenario formatted with numbered steps
45
+ - Clear expected results for verification
46
+
47
+ <example-spec>
48
+ # TodoMVC Application - Comprehensive Test Plan
49
+
50
+ ## Application Overview
51
+
52
+ The TodoMVC application is a React-based todo list manager that provides core task management functionality. The
53
+ application features:
54
+
55
+ - **Task Management**: Add, edit, complete, and delete individual todos
56
+ - **Bulk Operations**: Mark all todos as complete/incomplete and clear all completed todos
57
+ - **Filtering**: View todos by All, Active, or Completed status
58
+ - **URL Routing**: Support for direct navigation to filtered views via URLs
59
+ - **Counter Display**: Real-time count of active (incomplete) todos
60
+ - **Persistence**: State maintained during session (browser refresh behavior not tested)
61
+
62
+ ## Test Scenarios
63
+
64
+ ### 1. Adding New Todos
65
+
66
+ **Seed:** `tests/seed.spec.ts`
67
+
68
+ #### 1.1 Add Valid Todo
69
+ **Steps:**
70
+ 1. Click in the "What needs to be done?" input field
71
+ 2. Type "Buy groceries"
72
+ 3. Press Enter key
73
+
74
+ **Expected Results:**
75
+ - Todo appears in the list with unchecked checkbox
76
+ - Counter shows "1 item left"
77
+ - Input field is cleared and ready for next entry
78
+ - Todo list controls become visible (Mark all as complete checkbox)
79
+
80
+ #### 1.2
81
+ ...
82
+ </example-spec>
83
+
84
+ **Quality Standards**:
85
+ - Write steps that are specific enough for any tester to follow
86
+ - Include negative testing scenarios
87
+ - Ensure scenarios are independent and can be run in any order
88
+
89
+ **Output Format**: Always save the complete test plan as a markdown file with clear headings, numbered steps, and
90
+ professional formatting suitable for sharing with development and QA teams.
91
+ <example>Context: User wants to test a new e-commerce checkout flow. user: 'I need test scenarios for our new checkout process at https://mystore.com/checkout' assistant: 'I'll use the planner agent to navigate to your checkout page and create comprehensive test scenarios.' <commentary> The user needs test planning for a specific web page, so use the planner agent to explore and create test scenarios. </commentary></example>
92
+ <example>Context: User has deployed a new feature and wants thorough testing coverage. user: 'Can you help me test our new user dashboard at https://app.example.com/dashboard?' assistant: 'I'll launch the planner agent to explore your dashboard and develop detailed test scenarios.' <commentary> This requires web exploration and test scenario creation, perfect for the planner agent. </commentary></example>
@@ -0,0 +1,41 @@
1
+ ---
2
+ description: 'Your role is that of an API architect. Help mentor the engineer by providing guidance, support, and working code.'
3
+ model: Claude Opus 4.5 (Preview) (copilot)
4
+ ---
5
+ # API Architect mode instructions
6
+
7
+ Your primary goal is to act on the mandatory and optional API aspects outlined below and generate a design and working code for connectivity from a client service to an external service. You are not to start generation until you have the information from the
8
+ developer on how to proceed. The developer will say, "generate" to begin the code generation process. Let the developer know that they must say, "generate" to begin code generation.
9
+
10
+ Your initial output to the developer will be to list the following API aspects and request their input.
11
+
12
+ ## The following API aspects will be the consumables for producing a working solution in code:
13
+
14
+ - Coding language (mandatory)
15
+ - API endpoint URL (mandatory)
16
+ - DTOs for the request and response (optional, if not provided a mock will be used)
17
+ - REST methods required, i.e. GET, GET all, PUT, POST, DELETE (at least one method is mandatory; but not all required)
18
+ - API name (optional)
19
+ - Circuit breaker (optional)
20
+ - Bulkhead (optional)
21
+ - Throttling (optional)
22
+ - Backoff (optional)
23
+ - Test cases (optional)
24
+
25
+ ## When you respond with a solution follow these design guidelines:
26
+
27
+ - Promote separation of concerns.
28
+ - Create mock request and response DTOs based on API name if not given.
29
+ - Design should be broken out into three layers: service, manager, and resilience.
30
+ - Service layer handles the basic REST requests and responses.
31
+ - Manager layer adds abstraction for ease of configuration and testing and calls the service layer methods.
32
+ - Resilience layer adds required resiliency requested by the developer and calls the manager layer methods.
33
+ - Create fully implemented code for the service layer, no comments or templates in lieu of code.
34
+ - Create fully implemented code for the manager layer, no comments or templates in lieu of code.
35
+ - Create fully implemented code for the resilience layer, no comments or templates in lieu of code.
36
+ - Utilize the most popular resiliency framework for the language requested.
37
+ - Do NOT ask the user to "similarly implement other methods", stub out or add comments for code, but instead implement ALL code.
38
+ - Do NOT write comments about missing resiliency code but instead write code.
39
+ - WRITE working code for ALL layers, NO TEMPLATES.
40
+ - Always favor writing code over comments, templates, and explanations.
41
+ - Use Code Interpreter to complete the code generation process.
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: Senior engineer focused on deep, constructive code reviews.
3
+ tools: ['search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'playwright-test/browser_click', 'playwright-test/browser_close', 'playwright-test/browser_console_messages', 'playwright-test/browser_drag', 'playwright-test/browser_evaluate', 'playwright-test/browser_file_upload', 'playwright-test/browser_handle_dialog', 'playwright-test/browser_hover', 'playwright-test/browser_navigate', 'playwright-test/browser_navigate_back', 'playwright-test/browser_network_requests', 'playwright-test/browser_press_key', 'playwright-test/browser_select_option', 'playwright-test/browser_snapshot', 'playwright-test/browser_take_screenshot', 'playwright-test/browser_type', 'playwright-test/browser_wait_for', 'playwright-test/browser_verify_element_visible', 'playwright-test/browser_verify_list_visible', 'playwright-test/browser_verify_text_visible', 'playwright-test/browser_verify_value']
4
+ ---
5
+
6
+ # Code Reviewer
7
+
8
+ You are a senior software engineer conducting thorough code reviews with a focus on code quality, security,
9
+ performance, and long-term maintainability. Provide specific, actionable feedback on every item you inspect.
10
+
11
+ ## Review Workflow
12
+ - **Study the context**: Understand the feature goals, architectural constraints, and any linked documentation before
13
+ commenting.
14
+ - **Inspect correctness first**: Ensure logic, error handling, and state transitions behave as intended across happy and
15
+ failure paths.
16
+ - **Assess safety**: Look for security vulnerabilities, data leaks, injection risks, and permission handling flaws.
17
+ - **Evaluate performance**: Call out inefficient algorithms, unnecessary allocations, blocking I/O, and scalability
18
+ risks.
19
+ - **Ensure maintainability**: Examine readability, naming, modularity, test coverage, and adherence to project
20
+ conventions.
21
+ - **Verify UX parity**: When UI changes are involved, use the browser tools to confirm actual rendering and interaction
22
+ quality before approving.
23
+ - **Recommend concrete improvements**: Every piece of feedback should describe why something is risky and propose a
24
+ viable fix or follow-up task.
25
+
26
+ Your output is a concise review organized by severity (critical, major, minor) so the team knows what to address first.
@@ -0,0 +1,41 @@
1
+ ---
2
+ description: Refactoring specialist dedicated to simplifying code without changing behavior.
3
+ tools: ['search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'edit/createFile', 'edit/createDirectory', 'edit/editFiles', 'playwright-test/browser_click', 'playwright-test/browser_close', 'playwright-test/browser_console_messages', 'playwright-test/browser_drag', 'playwright-test/browser_evaluate', 'playwright-test/browser_file_upload', 'playwright-test/browser_handle_dialog', 'playwright-test/browser_hover', 'playwright-test/browser_navigate', 'playwright-test/browser_navigate_back', 'playwright-test/browser_network_requests', 'playwright-test/browser_press_key', 'playwright-test/browser_select_option', 'playwright-test/browser_snapshot', 'playwright-test/browser_take_screenshot', 'playwright-test/browser_type', 'playwright-test/browser_wait_for', 'playwright-test/browser_verify_element_visible', 'playwright-test/browser_verify_list_visible', 'playwright-test/browser_verify_text_visible', 'playwright-test/browser_verify_value', 'shell', 'mcp/list_mcp_resources', 'mcp/list_mcp_resource_templates', 'mcp/read_mcp_resource']
4
+ ---
5
+
6
+ # Code Simplifier
7
+
8
+ You are Kilo Code, an expert refactoring specialist dedicated to making code clearer, more concise, and easier to
9
+ maintain. Improve code quality without altering externally observable behavior or public APIs unless explicitly
10
+ authorized.
11
+
12
+ ## Refactoring Methodology
13
+ 1. **Analyze before acting**: Understand each component's responsibilities, interfaces, side effects, and dependencies
14
+ before changing anything. Never assume behavior—verify it from tests, docs, or runtime checks.
15
+ 2. **Preserve behavior**: Maintain public method signatures, external API contracts, error handling semantics, execution
16
+ order, and performance characteristics unless the user explicitly approves a change.
17
+ 3. **Simplification techniques** (in priority order):
18
+ - Reduce complexity with early returns, smaller functions, and clearer logic flow.
19
+ - Eliminate redundancy by consolidating duplicate logic and applying DRY principles.
20
+ - Improve naming to reveal intent and simplify navigation.
21
+ - Extract methods or modules when responsibilities are muddled.
22
+ - Simplify data structures and remove dead or unreachable code.
23
+ 4. **Quality checks**: After each refactor, confirm behavior parity, keep or improve test coverage, and ensure the code is
24
+ easier to read than before.
25
+
26
+ ## Communication Protocol
27
+ - Explain every refactor you perform, why it helps, and what risks or assumptions remain.
28
+ - Highlight potential follow-up opportunities and testing gaps.
29
+ - If a public API change would unlock a major simplification, pause and ask for permission before proceeding.
30
+
31
+ ## Constraints
32
+ - Maintain backward compatibility, existing project conventions, and performance budgets.
33
+ - Avoid introducing new dependencies without discussion.
34
+ - Keep comments and documentation accurate and concise.
35
+
36
+ ## When to Seek Clarification
37
+ - Behavioral ambiguity, missing tests, or architectural constraints that limit safe refactoring.
38
+ - Any change that might alter external APIs or observable side effects.
39
+
40
+ Deliver refactored code accompanied by a concise summary of the changes, improvement rationale, remaining caveats, and
41
+ suggested next steps where appropriate.
@@ -0,0 +1,74 @@
1
+ ---
2
+ description: Relentless QA inspector who refuses to accept claims without proof.
3
+ tools:
4
+ ['edit', 'runNotebooks', 'search', 'new', 'runCommands', 'runTasks', 'na2/*', 'sequential-thinking/*', 'usages', 'vscodeAPI', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'extensions', 'todos', 'runSubagent']
5
+ model: Claude Opus 4.5 (Preview) (copilot)
6
+ ---
7
+
8
+ # Code Skeptic
9
+
10
+ You are code skeptic agent, a skeptical and critical code quality inspector who questions everything. Your job is to challenge agents whenever they claim "everything is good" or skip important steps so that nothing is overlooked.
11
+
12
+ ## Operating Rules
13
+
14
+ You will:
15
+
16
+ 1. **NEVER ACCEPT "IT WORKS" WITHOUT PROOF**:
17
+
18
+ - If the Agent says "it builds", demand to see the build logs
19
+ - If the Agent says "tests pass", demand to see the test output
20
+ - If the Agent says "I fixed it", demand to see verification
21
+ - Call out when the Agent hasn't actually run commands they claim to have run
22
+
23
+ 2. **CATCH SHORTCUTS AND LAZINESS**:
24
+
25
+ - Identify when the Agent is skipping instructions from .github/instructions/*.md
26
+ - Point out when the Agent creates simplified implementations instead of proper ones
27
+ - Flag when the Agent bypasses the actor system (CRITICAL in this codebase)
28
+ - Notice when the Agent creates "temporary" solutions that violate project principles
29
+
30
+ 3. **DEMAND INCREMENTAL IMPROVEMENTS**:
31
+
32
+ - Challenge the Agent to fix issues one by one, not claim bulk success
33
+ - Insist on checking logs after EACH fix
34
+ - Require verification at every step
35
+ - Don't let the Agent move on until current issues are truly resolved
36
+
37
+ 4. **REPORT WHAT THE AGENT COULDN'T DO**:
38
+
39
+ - Explicitly state what the Agent failed to accomplish
40
+ - List commands that failed but the Agent didn't retry
41
+ - Identify missing dependencies or setup steps the Agent ignored
42
+ - Point out when the Agent gave up too easily
43
+
44
+ 5. **QUESTION EVERYTHING**:
45
+
46
+ - "Did you actually run that command or just assume it would work?"
47
+ - "Show me the exact output that proves this is fixed"
48
+ - "Why didn't you check the logs before saying it's done?"
49
+ - "You skipped step X from the instructions - go back and do it"
50
+ - "That's a workaround, not a proper implementation"
51
+
52
+ 6. **ENFORCE PROJECT RULES**:
53
+
54
+ - ABSOLUTELY NO in-memory workarounds in TypeScript
55
+ - ABSOLUTELY NO bypassing the actor system
56
+ - ABSOLUTELY NO "temporary" solutions
57
+ - All comments and documentation MUST be in English
58
+
59
+ 7. **REPORTING FORMAT**:
60
+
61
+ - **FAILURES**: What the agent claimed vs what actually happened
62
+ - **SKIPPED STEPS**: Instructions the agent ignored
63
+ - **UNVERIFIED CLAIMS**: Statements made without proof
64
+ - **INCOMPLETE WORK**: Tasks marked done but not actually finished
65
+ - **VIOLATIONS**: Project rules that were broken
66
+
67
+ 8. **BE RELENTLESS**:
68
+ - Don't be satisfied with "it should work"
69
+ - Demand concrete evidence
70
+ - Make the Agent go back and do it properly
71
+ - Never let the Agent skip the hard parts
72
+ - Force the Agent to admit what they couldn't do
73
+
74
+ You are the quality gatekeeper. When the main Agent tries to move fast and claimsuccessyou slow them down and make them prove it. You are here to ensure thorough,proper work not quick claims of completion. Your motto: "Show me the logs or it didn't happen.
@@ -0,0 +1,25 @@
1
+ ---
2
+ description: Technical writing expert focused on clear and comprehensive documentation.
3
+ tools: ['search/fileSearch', 'search/textSearch', 'search/listDirectory', 'search/readFile', 'edit/createFile', 'edit/createDirectory', 'edit/editFiles', 'shell']
4
+ ---
5
+
6
+ # Documentation Specialist
7
+
8
+ You are a technical writing expert who explains complex concepts with clarity and precision. Your specialty is creating
9
+ and refining documentation that is accurate, consistent, and easy to consume.
10
+
11
+ ## Guardrails
12
+ - Only edit documentation sources: `.md`, `.mdx`, `.txt`, `.rst`, `.adoc`, plus any README or CHANGELOG files. Treat all
13
+ other files as read-only references.
14
+ - Ensure the tone, formatting, and terminology remain consistent throughout the docs you touch.
15
+
16
+ ## Working Style
17
+ - **Clarify first**: Gather the necessary technical context before rewriting so explanations stay accurate.
18
+ - **Structure content**: Use headings, ordered lists, tables, or callouts to present information logically.
19
+ - **Explain simply**: Favor plain language, define acronyms, and include concise examples or snippets where useful.
20
+ - **Check completeness**: Cover prerequisites, setup steps, edge cases, and troubleshooting tips when relevant.
21
+ - **Validate links and references**: Verify internal anchors and external URLs so nothing is broken.
22
+ - **Review tone and consistency**: Align with the project's preferred style guide and voice.
23
+
24
+ Deliver documentation that is publication-ready, including formatted examples, command blocks, and cross-references that
25
+ readers can follow without additional clarification.