opencode-agent-kit 1.0.0

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 (361) hide show
  1. package/README.md +796 -0
  2. package/bin/commands/init.mjs +221 -0
  3. package/bin/init.mjs +21 -0
  4. package/package.json +22 -0
  5. package/template/.opencode/agent-docs/backend/README.md +0 -0
  6. package/template/.opencode/agent-docs/backend/node/BACKEND_PATTERNS.md +82 -0
  7. package/template/.opencode/agent-docs/backend/node/BACKEND_QUICK_START.md +49 -0
  8. package/template/.opencode/agent-docs/frontend/next/README.md +0 -0
  9. package/template/.opencode/agent-docs/frontend/nuxt/API_PATTERNS.md +807 -0
  10. package/template/.opencode/agent-docs/frontend/nuxt/CHEATSHEET.md +676 -0
  11. package/template/.opencode/agent-docs/frontend/nuxt/COMPLETION_REPORT.md +613 -0
  12. package/template/.opencode/agent-docs/frontend/nuxt/EXAMPLES.md +956 -0
  13. package/template/.opencode/agent-docs/frontend/nuxt/INDEX.md +596 -0
  14. package/template/.opencode/agent-docs/frontend/nuxt/MCP_GUIDE.md +881 -0
  15. package/template/.opencode/agent-docs/frontend/nuxt/MENTOR_CURRICULUM_30_DAYS.md +256 -0
  16. package/template/.opencode/agent-docs/frontend/nuxt/MENTOR_CURRICULUM_CHECKLIST.md +156 -0
  17. package/template/.opencode/agent-docs/frontend/nuxt/MENTOR_WEEKLY_ASSIGNMENTS.md +191 -0
  18. package/template/.opencode/agent-docs/frontend/nuxt/QUICK_START.md +509 -0
  19. package/template/.opencode/agent-docs/frontend/nuxt/README.md +506 -0
  20. package/template/.opencode/agent-docs/frontend/nuxt/README_AGENTS.md +140 -0
  21. package/template/.opencode/agent-docs/frontend/nuxt/README_DOCS.md +65 -0
  22. package/template/.opencode/agent-docs/frontend/nuxt/SUMMARY.md +474 -0
  23. package/template/.opencode/agent-docs/frontend/nuxt/TEAM_OPERATING_GUIDE.md +54 -0
  24. package/template/.opencode/agent-docs/frontend/nuxt/TESTING_GUIDE.md +904 -0
  25. package/template/.opencode/agent-docs/frontend/nuxt/WORKFLOWS.md +758 -0
  26. package/template/.opencode/agent-docs/frontend/react/API_PATTERNS.md +187 -0
  27. package/template/.opencode/agent-docs/frontend/react/CHEATSHEET.md +87 -0
  28. package/template/.opencode/agent-docs/frontend/react/INDEX.md +45 -0
  29. package/template/.opencode/agent-docs/frontend/react/QUICK_START.md +43 -0
  30. package/template/.opencode/agent-docs/frontend/react/README.md +159 -0
  31. package/template/.opencode/agent-docs/frontend/vue/README.md +0 -0
  32. package/template/.opencode/agent-docs/mobile/android/README.md +45 -0
  33. package/template/.opencode/agent-docs/mobile/flutter/README.md +44 -0
  34. package/template/.opencode/agents/android-developer.md +418 -0
  35. package/template/.opencode/agents/code-igniter-3-fullstack.md +345 -0
  36. package/template/.opencode/agents/code-reviewer.md +517 -0
  37. package/template/.opencode/agents/database-specialist.md +455 -0
  38. package/template/.opencode/agents/devops-specialist.md +562 -0
  39. package/template/.opencode/agents/flutter-developer.md +556 -0
  40. package/template/.opencode/agents/it-leader.md +911 -0
  41. package/template/.opencode/agents/laravel-advanced.md +691 -0
  42. package/template/.opencode/agents/node-backend-developer.md +343 -0
  43. package/template/.opencode/agents/nuxt-frontend-developer-mentor.md +402 -0
  44. package/template/.opencode/agents/nuxt-frontend-developer.md +1573 -0
  45. package/template/.opencode/agents/react-frontend-developer.md +1017 -0
  46. package/template/.opencode/agents/seo-specialist.md +681 -0
  47. package/template/.opencode/agents/ui-ux-designer.md +783 -0
  48. package/template/.opencode/commands/android-build/command.md +25 -0
  49. package/template/.opencode/commands/android-test/command.md +23 -0
  50. package/template/.opencode/commands/build-fix.md +29 -0
  51. package/template/.opencode/commands/checkpoint.md +74 -0
  52. package/template/.opencode/commands/code-review.md +40 -0
  53. package/template/.opencode/commands/e2e.md +363 -0
  54. package/template/.opencode/commands/eval.md +120 -0
  55. package/template/.opencode/commands/evolve.md +193 -0
  56. package/template/.opencode/commands/flutter-build/command.md +25 -0
  57. package/template/.opencode/commands/flutter-test/command.md +24 -0
  58. package/template/.opencode/commands/go-build.md +183 -0
  59. package/template/.opencode/commands/go-review.md +148 -0
  60. package/template/.opencode/commands/go-test.md +268 -0
  61. package/template/.opencode/commands/gpc-release/command.md +30 -0
  62. package/template/.opencode/commands/instinct-export.md +91 -0
  63. package/template/.opencode/commands/instinct-import.md +142 -0
  64. package/template/.opencode/commands/instinct-status.md +86 -0
  65. package/template/.opencode/commands/learn.md +70 -0
  66. package/template/.opencode/commands/multi-backend.md +158 -0
  67. package/template/.opencode/commands/multi-execute.md +310 -0
  68. package/template/.opencode/commands/multi-frontend.md +158 -0
  69. package/template/.opencode/commands/multi-plan.md +261 -0
  70. package/template/.opencode/commands/multi-workflow.md +183 -0
  71. package/template/.opencode/commands/orchestrate.md +172 -0
  72. package/template/.opencode/commands/plan.md +113 -0
  73. package/template/.opencode/commands/pm2.md +271 -0
  74. package/template/.opencode/commands/python-review.md +297 -0
  75. package/template/.opencode/commands/refactor-clean.md +28 -0
  76. package/template/.opencode/commands/sessions.md +305 -0
  77. package/template/.opencode/commands/setup-pm.md +80 -0
  78. package/template/.opencode/commands/skill-create.md +174 -0
  79. package/template/.opencode/commands/tdd.md +326 -0
  80. package/template/.opencode/commands/test-coverage.md +27 -0
  81. package/template/.opencode/commands/update-codemaps.md +17 -0
  82. package/template/.opencode/commands/update-docs.md +31 -0
  83. package/template/.opencode/commands/verify.md +59 -0
  84. package/template/.opencode/config.example.json +309 -0
  85. package/template/.opencode/config.json +341 -0
  86. package/template/.opencode/contexts/dev.md +20 -0
  87. package/template/.opencode/contexts/research.md +26 -0
  88. package/template/.opencode/contexts/review.md +22 -0
  89. package/template/.opencode/hooks/hooks.json +169 -0
  90. package/template/.opencode/instructions/INSTRUCTIONS.md +388 -0
  91. package/template/.opencode/package.json +5 -0
  92. package/template/.opencode/rules/README.md +82 -0
  93. package/template/.opencode/rules/android/gradle.md +62 -0
  94. package/template/.opencode/rules/android/testing.md +27 -0
  95. package/template/.opencode/rules/common/agents.md +49 -0
  96. package/template/.opencode/rules/common/coding-style.md +48 -0
  97. package/template/.opencode/rules/common/git-workflow.md +45 -0
  98. package/template/.opencode/rules/common/hooks.md +30 -0
  99. package/template/.opencode/rules/common/patterns.md +31 -0
  100. package/template/.opencode/rules/common/performance.md +55 -0
  101. package/template/.opencode/rules/common/security.md +29 -0
  102. package/template/.opencode/rules/common/testing.md +29 -0
  103. package/template/.opencode/rules/flutter/state-management.md +57 -0
  104. package/template/.opencode/rules/flutter/testing.md +42 -0
  105. package/template/.opencode/rules/golang/coding-style.md +26 -0
  106. package/template/.opencode/rules/golang/hooks.md +11 -0
  107. package/template/.opencode/rules/golang/patterns.md +39 -0
  108. package/template/.opencode/rules/golang/security.md +28 -0
  109. package/template/.opencode/rules/golang/testing.md +25 -0
  110. package/template/.opencode/rules/mobile/performance.md +36 -0
  111. package/template/.opencode/rules/python/coding-style.md +37 -0
  112. package/template/.opencode/rules/python/hooks.md +14 -0
  113. package/template/.opencode/rules/python/patterns.md +34 -0
  114. package/template/.opencode/rules/python/security.md +25 -0
  115. package/template/.opencode/rules/python/testing.md +33 -0
  116. package/template/.opencode/rules/typescript/coding-style.md +58 -0
  117. package/template/.opencode/rules/typescript/hooks.md +15 -0
  118. package/template/.opencode/rules/typescript/patterns.md +45 -0
  119. package/template/.opencode/rules/typescript/security.md +21 -0
  120. package/template/.opencode/rules/typescript/testing.md +11 -0
  121. package/template/.opencode/skills/api-documentation/SKILL.md +188 -0
  122. package/template/.opencode/skills/backend-patterns/SKILL.md +587 -0
  123. package/template/.opencode/skills/building-components/SKILL.md +37 -0
  124. package/template/.opencode/skills/building-components/references/accessibility.mdx +819 -0
  125. package/template/.opencode/skills/building-components/references/as-child.mdx +324 -0
  126. package/template/.opencode/skills/building-components/references/composition.mdx +239 -0
  127. package/template/.opencode/skills/building-components/references/data-attributes.mdx +413 -0
  128. package/template/.opencode/skills/building-components/references/definitions.mdx +258 -0
  129. package/template/.opencode/skills/building-components/references/design-tokens.mdx +57 -0
  130. package/template/.opencode/skills/building-components/references/docs.mdx +155 -0
  131. package/template/.opencode/skills/building-components/references/marketplaces.mdx +144 -0
  132. package/template/.opencode/skills/building-components/references/npm.mdx +166 -0
  133. package/template/.opencode/skills/building-components/references/polymorphism.mdx +583 -0
  134. package/template/.opencode/skills/building-components/references/principles.mdx +61 -0
  135. package/template/.opencode/skills/building-components/references/registry.mdx +169 -0
  136. package/template/.opencode/skills/building-components/references/state.mdx +99 -0
  137. package/template/.opencode/skills/building-components/references/styling.mdx +286 -0
  138. package/template/.opencode/skills/building-components/references/types.mdx +191 -0
  139. package/template/.opencode/skills/clickhouse-io/SKILL.md +429 -0
  140. package/template/.opencode/skills/coding-standards/SKILL.md +520 -0
  141. package/template/.opencode/skills/configure-ecc/SKILL.md +298 -0
  142. package/template/.opencode/skills/continuous-learning/SKILL.md +110 -0
  143. package/template/.opencode/skills/continuous-learning/config.json +18 -0
  144. package/template/.opencode/skills/continuous-learning/evaluate-session.sh +60 -0
  145. package/template/.opencode/skills/continuous-learning-v2/SKILL.md +284 -0
  146. package/template/.opencode/skills/continuous-learning-v2/agents/observer.md +137 -0
  147. package/template/.opencode/skills/continuous-learning-v2/agents/start-observer.sh +134 -0
  148. package/template/.opencode/skills/continuous-learning-v2/config.json +41 -0
  149. package/template/.opencode/skills/continuous-learning-v2/hooks/observe.sh +153 -0
  150. package/template/.opencode/skills/continuous-learning-v2/scripts/instinct-cli.py +489 -0
  151. package/template/.opencode/skills/continuous-learning-v2/scripts/test_parse_instinct.py +82 -0
  152. package/template/.opencode/skills/dart-add-unit-test/SKILL.md +122 -0
  153. package/template/.opencode/skills/dart-build-cli-app/SKILL.md +185 -0
  154. package/template/.opencode/skills/dart-collect-coverage/SKILL.md +141 -0
  155. package/template/.opencode/skills/dart-fix-runtime-errors/SKILL.md +166 -0
  156. package/template/.opencode/skills/dart-generate-test-mocks/SKILL.md +155 -0
  157. package/template/.opencode/skills/dart-migrate-to-checks-package/SKILL.md +126 -0
  158. package/template/.opencode/skills/dart-resolve-package-conflicts/SKILL.md +116 -0
  159. package/template/.opencode/skills/dart-run-static-analysis/SKILL.md +104 -0
  160. package/template/.opencode/skills/dart-use-pattern-matching/SKILL.md +146 -0
  161. package/template/.opencode/skills/django-patterns/SKILL.md +733 -0
  162. package/template/.opencode/skills/django-security/SKILL.md +592 -0
  163. package/template/.opencode/skills/django-tdd/SKILL.md +728 -0
  164. package/template/.opencode/skills/django-verification/SKILL.md +460 -0
  165. package/template/.opencode/skills/eval-harness/SKILL.md +227 -0
  166. package/template/.opencode/skills/firebase-basics/SKILL.md +103 -0
  167. package/template/.opencode/skills/firebase-basics/references/additional-skills.md +113 -0
  168. package/template/.opencode/skills/firebase-basics/references/cli-usage.md +31 -0
  169. package/template/.opencode/skills/firebase-basics/references/client-library-usage.md +45 -0
  170. package/template/.opencode/skills/firebase-basics/references/core-concepts.md +61 -0
  171. package/template/.opencode/skills/firebase-basics/references/iac-usage.md +40 -0
  172. package/template/.opencode/skills/firebase-basics/references/iam-security.md +74 -0
  173. package/template/.opencode/skills/firebase-basics/references/mcp-usage.md +63 -0
  174. package/template/.opencode/skills/flutter/SKILL.md +292 -0
  175. package/template/.opencode/skills/flutter-add-integration-test/SKILL.md +163 -0
  176. package/template/.opencode/skills/flutter-add-widget-preview/SKILL.md +145 -0
  177. package/template/.opencode/skills/flutter-add-widget-test/SKILL.md +154 -0
  178. package/template/.opencode/skills/flutter-apply-architecture-best-practices/SKILL.md +162 -0
  179. package/template/.opencode/skills/flutter-build-responsive-layout/SKILL.md +139 -0
  180. package/template/.opencode/skills/flutter-fix-layout-issues/SKILL.md +130 -0
  181. package/template/.opencode/skills/flutter-implement-json-serialization/SKILL.md +153 -0
  182. package/template/.opencode/skills/flutter-setup-declarative-routing/SKILL.md +255 -0
  183. package/template/.opencode/skills/flutter-setup-localization/SKILL.md +210 -0
  184. package/template/.opencode/skills/flutter-use-http-package/SKILL.md +174 -0
  185. package/template/.opencode/skills/frontend-design/SKILL.md +89 -0
  186. package/template/.opencode/skills/frontend-patterns/SKILL.md +631 -0
  187. package/template/.opencode/skills/golang-patterns/SKILL.md +673 -0
  188. package/template/.opencode/skills/golang-testing/SKILL.md +719 -0
  189. package/template/.opencode/skills/impeccable/SKILL.md +165 -0
  190. package/template/.opencode/skills/impeccable/agents/impeccable-asset-producer.md +101 -0
  191. package/template/.opencode/skills/impeccable/reference/adapt.md +190 -0
  192. package/template/.opencode/skills/impeccable/reference/animate.md +175 -0
  193. package/template/.opencode/skills/impeccable/reference/audit.md +133 -0
  194. package/template/.opencode/skills/impeccable/reference/bolder.md +113 -0
  195. package/template/.opencode/skills/impeccable/reference/brand.md +118 -0
  196. package/template/.opencode/skills/impeccable/reference/clarify.md +174 -0
  197. package/template/.opencode/skills/impeccable/reference/codex.md +105 -0
  198. package/template/.opencode/skills/impeccable/reference/cognitive-load.md +106 -0
  199. package/template/.opencode/skills/impeccable/reference/color-and-contrast.md +105 -0
  200. package/template/.opencode/skills/impeccable/reference/colorize.md +154 -0
  201. package/template/.opencode/skills/impeccable/reference/craft.md +123 -0
  202. package/template/.opencode/skills/impeccable/reference/critique.md +273 -0
  203. package/template/.opencode/skills/impeccable/reference/delight.md +302 -0
  204. package/template/.opencode/skills/impeccable/reference/distill.md +111 -0
  205. package/template/.opencode/skills/impeccable/reference/document.md +427 -0
  206. package/template/.opencode/skills/impeccable/reference/extract.md +69 -0
  207. package/template/.opencode/skills/impeccable/reference/harden.md +347 -0
  208. package/template/.opencode/skills/impeccable/reference/heuristics-scoring.md +234 -0
  209. package/template/.opencode/skills/impeccable/reference/interaction-design.md +195 -0
  210. package/template/.opencode/skills/impeccable/reference/layout.md +141 -0
  211. package/template/.opencode/skills/impeccable/reference/live.md +622 -0
  212. package/template/.opencode/skills/impeccable/reference/motion-design.md +109 -0
  213. package/template/.opencode/skills/impeccable/reference/onboard.md +234 -0
  214. package/template/.opencode/skills/impeccable/reference/optimize.md +258 -0
  215. package/template/.opencode/skills/impeccable/reference/overdrive.md +130 -0
  216. package/template/.opencode/skills/impeccable/reference/personas.md +179 -0
  217. package/template/.opencode/skills/impeccable/reference/polish.md +242 -0
  218. package/template/.opencode/skills/impeccable/reference/product.md +62 -0
  219. package/template/.opencode/skills/impeccable/reference/quieter.md +99 -0
  220. package/template/.opencode/skills/impeccable/reference/responsive-design.md +114 -0
  221. package/template/.opencode/skills/impeccable/reference/shape.md +165 -0
  222. package/template/.opencode/skills/impeccable/reference/spatial-design.md +100 -0
  223. package/template/.opencode/skills/impeccable/reference/teach.md +156 -0
  224. package/template/.opencode/skills/impeccable/reference/typeset.md +124 -0
  225. package/template/.opencode/skills/impeccable/reference/typography.md +159 -0
  226. package/template/.opencode/skills/impeccable/reference/ux-writing.md +107 -0
  227. package/template/.opencode/skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
  228. package/template/.opencode/skills/impeccable/scripts/command-metadata.json +94 -0
  229. package/template/.opencode/skills/impeccable/scripts/critique-storage.mjs +242 -0
  230. package/template/.opencode/skills/impeccable/scripts/design-parser.mjs +820 -0
  231. package/template/.opencode/skills/impeccable/scripts/detect-csp.mjs +198 -0
  232. package/template/.opencode/skills/impeccable/scripts/detect.mjs +21 -0
  233. package/template/.opencode/skills/impeccable/scripts/impeccable-paths.mjs +110 -0
  234. package/template/.opencode/skills/impeccable/scripts/is-generated.mjs +69 -0
  235. package/template/.opencode/skills/impeccable/scripts/live-accept.mjs +595 -0
  236. package/template/.opencode/skills/impeccable/scripts/live-browser-session.js +123 -0
  237. package/template/.opencode/skills/impeccable/scripts/live-browser.js +4860 -0
  238. package/template/.opencode/skills/impeccable/scripts/live-complete.mjs +75 -0
  239. package/template/.opencode/skills/impeccable/scripts/live-completion.mjs +18 -0
  240. package/template/.opencode/skills/impeccable/scripts/live-inject.mjs +446 -0
  241. package/template/.opencode/skills/impeccable/scripts/live-poll.mjs +200 -0
  242. package/template/.opencode/skills/impeccable/scripts/live-resume.mjs +48 -0
  243. package/template/.opencode/skills/impeccable/scripts/live-server.mjs +838 -0
  244. package/template/.opencode/skills/impeccable/scripts/live-session-store.mjs +254 -0
  245. package/template/.opencode/skills/impeccable/scripts/live-status.mjs +47 -0
  246. package/template/.opencode/skills/impeccable/scripts/live-wrap.mjs +632 -0
  247. package/template/.opencode/skills/impeccable/scripts/live.mjs +247 -0
  248. package/template/.opencode/skills/impeccable/scripts/load-context.mjs +141 -0
  249. package/template/.opencode/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
  250. package/template/.opencode/skills/impeccable/scripts/pin.mjs +214 -0
  251. package/template/.opencode/skills/iterative-retrieval/SKILL.md +202 -0
  252. package/template/.opencode/skills/java-coding-standards/SKILL.md +138 -0
  253. package/template/.opencode/skills/jetpack-compose/.skillfish.json +10 -0
  254. package/template/.opencode/skills/jetpack-compose/SKILL.md +420 -0
  255. package/template/.opencode/skills/jpa-patterns/SKILL.md +141 -0
  256. package/template/.opencode/skills/nutrient-document-processing/SKILL.md +165 -0
  257. package/template/.opencode/skills/nuxt-ui/SKILL.md +334 -0
  258. package/template/.opencode/skills/nuxt-ui/references/components.md +377 -0
  259. package/template/.opencode/skills/nuxt-ui/references/composables.md +127 -0
  260. package/template/.opencode/skills/nuxt-ui/references/layouts/chat.md +266 -0
  261. package/template/.opencode/skills/nuxt-ui/references/layouts/dashboard.md +220 -0
  262. package/template/.opencode/skills/nuxt-ui/references/layouts/docs.md +141 -0
  263. package/template/.opencode/skills/nuxt-ui/references/layouts/editor.md +168 -0
  264. package/template/.opencode/skills/nuxt-ui/references/layouts/page.md +260 -0
  265. package/template/.opencode/skills/nuxt-ui/references/theming.md +427 -0
  266. package/template/.opencode/skills/postgres-patterns/SKILL.md +146 -0
  267. package/template/.opencode/skills/project-guidelines-example/SKILL.md +345 -0
  268. package/template/.opencode/skills/python-patterns/SKILL.md +749 -0
  269. package/template/.opencode/skills/python-testing/SKILL.md +815 -0
  270. package/template/.opencode/skills/security-review/SKILL.md +494 -0
  271. package/template/.opencode/skills/security-review/cloud-infrastructure-security.md +361 -0
  272. package/template/.opencode/skills/shadcn-ui/README.md +248 -0
  273. package/template/.opencode/skills/shadcn-ui/SKILL.md +326 -0
  274. package/template/.opencode/skills/shadcn-ui/examples/auth-layout.tsx +177 -0
  275. package/template/.opencode/skills/shadcn-ui/examples/data-table.tsx +313 -0
  276. package/template/.opencode/skills/shadcn-ui/examples/form-pattern.tsx +177 -0
  277. package/template/.opencode/skills/shadcn-ui/resources/component-catalog.md +481 -0
  278. package/template/.opencode/skills/shadcn-ui/resources/customization-guide.md +516 -0
  279. package/template/.opencode/skills/shadcn-ui/resources/migration-guide.md +463 -0
  280. package/template/.opencode/skills/shadcn-ui/resources/setup-guide.md +412 -0
  281. package/template/.opencode/skills/shadcn-ui/scripts/verify-setup.sh +134 -0
  282. package/template/.opencode/skills/springboot-patterns/SKILL.md +304 -0
  283. package/template/.opencode/skills/springboot-security/SKILL.md +119 -0
  284. package/template/.opencode/skills/springboot-tdd/SKILL.md +157 -0
  285. package/template/.opencode/skills/springboot-verification/SKILL.md +100 -0
  286. package/template/.opencode/skills/strategic-compact/SKILL.md +63 -0
  287. package/template/.opencode/skills/strategic-compact/suggest-compact.sh +52 -0
  288. package/template/.opencode/skills/tdd-workflow/SKILL.md +409 -0
  289. package/template/.opencode/skills/vercel-composition-patterns/AGENTS.md +946 -0
  290. package/template/.opencode/skills/vercel-composition-patterns/SKILL.md +89 -0
  291. package/template/.opencode/skills/vercel-composition-patterns/rules/architecture-avoid-boolean-props.md +100 -0
  292. package/template/.opencode/skills/vercel-composition-patterns/rules/architecture-compound-components.md +112 -0
  293. package/template/.opencode/skills/vercel-composition-patterns/rules/patterns-children-over-render-props.md +87 -0
  294. package/template/.opencode/skills/vercel-composition-patterns/rules/patterns-explicit-variants.md +100 -0
  295. package/template/.opencode/skills/vercel-composition-patterns/rules/react19-no-forwardref.md +42 -0
  296. package/template/.opencode/skills/vercel-composition-patterns/rules/state-context-interface.md +191 -0
  297. package/template/.opencode/skills/vercel-composition-patterns/rules/state-decouple-implementation.md +113 -0
  298. package/template/.opencode/skills/vercel-composition-patterns/rules/state-lift-state.md +125 -0
  299. package/template/.opencode/skills/vercel-react-best-practices/AGENTS.md +2934 -0
  300. package/template/.opencode/skills/vercel-react-best-practices/SKILL.md +136 -0
  301. package/template/.opencode/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  302. package/template/.opencode/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
  303. package/template/.opencode/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  304. package/template/.opencode/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  305. package/template/.opencode/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
  306. package/template/.opencode/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  307. package/template/.opencode/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
  308. package/template/.opencode/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  309. package/template/.opencode/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
  310. package/template/.opencode/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  311. package/template/.opencode/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  312. package/template/.opencode/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  313. package/template/.opencode/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  314. package/template/.opencode/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  315. package/template/.opencode/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  316. package/template/.opencode/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  317. package/template/.opencode/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  318. package/template/.opencode/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  319. package/template/.opencode/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  320. package/template/.opencode/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  321. package/template/.opencode/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  322. package/template/.opencode/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  323. package/template/.opencode/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  324. package/template/.opencode/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  325. package/template/.opencode/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  326. package/template/.opencode/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  327. package/template/.opencode/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  328. package/template/.opencode/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  329. package/template/.opencode/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  330. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  331. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  332. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  333. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  334. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  335. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  336. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  337. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  338. package/template/.opencode/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  339. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  340. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  341. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  342. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  343. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  344. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  345. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  346. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  347. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  348. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  349. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  350. package/template/.opencode/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  351. package/template/.opencode/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  352. package/template/.opencode/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  353. package/template/.opencode/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  354. package/template/.opencode/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  355. package/template/.opencode/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  356. package/template/.opencode/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  357. package/template/.opencode/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
  358. package/template/.opencode/skills/verification-loop/SKILL.md +120 -0
  359. package/template/.opencode/skills/web-design-guidelines/SKILL.md +39 -0
  360. package/template/AGENTS.md +32 -0
  361. package/template/opencode.json +354 -0
@@ -0,0 +1,676 @@
1
+ # 🎯 Frontend Developer Agent - Cheat Sheet
2
+
3
+ Quick reference untuk command dan patterns yang sering dipakai.
4
+
5
+ ---
6
+
7
+ ## Aktivasi Agent
8
+
9
+ ```bash
10
+ # Mention agent
11
+ @frontend-developer [request]
12
+
13
+ # Switch ke agent (jika primary)
14
+ <Tab>
15
+ ```
16
+
17
+ ---
18
+
19
+ ## Skills Quick Load
20
+
21
+ ```bash
22
+ # Load specific skill
23
+ @frontend-developer Load skill `nuxt-ui` untuk build form components
24
+
25
+ # Load multiple skills
26
+ @frontend-developer Load skills: `building-components`, `security-review`, `tdd-workflow`
27
+
28
+ # Check loaded skills
29
+ @frontend-developer What skills are currently loaded?
30
+ ```
31
+
32
+ ---
33
+
34
+ ## Component Creation
35
+
36
+ ### Basic Component
37
+
38
+ ```bash
39
+ @frontend-developer Buat component Button dengan:
40
+ - Props: variant, size, disabled, loading
41
+ - TypeScript strict
42
+ - Accessible (ARIA + keyboard)
43
+ - File: app/components/ui/Button.vue
44
+ ```
45
+
46
+ ### Complex Component
47
+
48
+ ```bash
49
+ @frontend-developer Buat DataTable component:
50
+ - Props: data, columns, sortable, paginated
51
+ - Features: sort, filter, search, selection
52
+ - Virtualization untuk 1000+ rows
53
+ - Export to CSV
54
+ - Responsive (stack on mobile)
55
+ ```
56
+
57
+ ### Form Component
58
+
59
+ ```bash
60
+ @frontend-developer Buat LoginForm:
61
+ - Fields: email, password, remember me
62
+ - Validation dengan Zod
63
+ - Loading state
64
+ - Error handling
65
+ - Social login buttons
66
+ - Forgot password link
67
+ ```
68
+
69
+ ---
70
+
71
+ ## Styling & Design
72
+
73
+ ### Implement Design
74
+
75
+ ```bash
76
+ @frontend-developer Implement design dari [screenshot]:
77
+ - Aesthetic: [minimalist/bold/playful/editorial]
78
+ - Colors: [specify or "your choice"]
79
+ - Typography: [specify or "distinctive choices"]
80
+ - Animations: [describe key moments]
81
+ ```
82
+
83
+ ### Dark Mode
84
+
85
+ ```bash
86
+ @frontend-developer Add dark mode support:
87
+ - Toggle component in navigation
88
+ - Persist preference
89
+ - Smooth transitions
90
+ - Update all components
91
+ ```
92
+
93
+ ### Responsive Design
94
+
95
+ ```bash
96
+ @frontend-developer Make [component] responsive:
97
+ - Mobile: stack vertically
98
+ - Tablet: 2-column grid
99
+ - Desktop: 3-column grid
100
+ - Breakpoints: 640px, 1024px, 1280px
101
+ ```
102
+
103
+ ---
104
+
105
+ ## Performance
106
+
107
+ ### Optimization Audit
108
+
109
+ ```bash
110
+ @frontend-developer Load `frontend-patterns` dan audit:
111
+ - app/pages/dashboard.vue
112
+ - app/components/MarketList.vue
113
+
114
+ Focus pada bundle size dan re-renders.
115
+ ```
116
+
117
+ ### Specific Optimizations
118
+
119
+ ```bash
120
+ # Virtualization
121
+ @frontend-developer Add virtualization ke MarketList untuk 500+ items
122
+
123
+ # Lazy Loading
124
+ @frontend-developer Lazy load semua components di bawah fold
125
+
126
+ # Memoization
127
+ @frontend-developer Add proper memoization ke expensive computations di [component]
128
+
129
+ # Code Splitting
130
+ @frontend-developer Code split routes dan heavy components
131
+ ```
132
+
133
+ ---
134
+
135
+ ## State Management
136
+
137
+ ### Pinia Store
138
+
139
+ ```bash
140
+ @frontend-developer Create Pinia store untuk markets:
141
+ - State: markets, selectedMarket, filters
142
+ - Getters: activeMarkets, filteredMarkets
143
+ - Actions: fetchMarkets, selectMarket, updateFilters
144
+ ```
145
+
146
+ ### Composable
147
+
148
+ ```bash
149
+ @frontend-developer Create composable useMarketData:
150
+ - Fetch market by ID
151
+ - Handle loading/error states
152
+ - Auto-refetch on ID change
153
+ - Return: { market, loading, error, refetch }
154
+ ```
155
+
156
+ ---
157
+
158
+ ## Data Fetching
159
+
160
+ ### useApi (Recommended - Custom Composable)
161
+
162
+ **IMPORTANT**: This project uses a custom `useApi` composable for all API calls.
163
+
164
+ ```bash
165
+ @frontend Setup data fetching untuk users page:
166
+ - useApi untuk fetch users
167
+ - Automatic authentication
168
+ - Error handling dengan retry
169
+ - Loading skeleton
170
+ - Pagination
171
+
172
+ Gunakan app/composables/useApi.ts
173
+ ```
174
+
175
+ **Quick Examples:**
176
+
177
+ ```typescript
178
+ // GET request
179
+ const { data, pending, error } = await useApi<User[]>('/users')
180
+
181
+ // POST request (auto-uses $fetch)
182
+ const { data, error } = await useApi('/users', {
183
+ method: 'POST',
184
+ body: { name: 'John', email: 'john@example.com' },
185
+ })
186
+
187
+ // With query params
188
+ const { data } = await useApi('/users', {
189
+ query: { page: 1, limit: 10 },
190
+ })
191
+
192
+ // Manual trigger (don't execute immediately)
193
+ const { execute } = await useApi('/users/123', {
194
+ immediate: false,
195
+ })
196
+
197
+ // Error message accessible directly
198
+ if (error.value) {
199
+ console.log(error.value.message) // "User not found"
200
+ }
201
+ ```
202
+
203
+ **Benefits**:
204
+
205
+ - ✅ Automatic authentication (cookies)
206
+ - ✅ Smart SSR/CSR handling
207
+ - ✅ Consistent error.value.message
208
+ - ✅ Auto-401 redirect to login
209
+ - ✅ Type-safe with generics
210
+
211
+ ### useFetch (Native - Only for External APIs)
212
+
213
+ ```bash
214
+ @frontend Setup data fetching untuk external API:
215
+ - useFetch untuk third-party API
216
+ - Custom caching strategy
217
+ - Handle loading skeleton
218
+ - Error boundary
219
+
220
+ Prefer useApi for internal APIs.
221
+ ```
222
+
223
+ ### API Integration
224
+
225
+ ```bash
226
+ @frontend Create API integration untuk markets menggunakan useApi:
227
+ - GET /api/markets (with filters)
228
+ - GET /api/markets/:id
229
+ - POST /api/markets (create)
230
+ - PATCH /api/markets/:id (update)
231
+ - DELETE /api/markets/:id (delete)
232
+
233
+ Include TypeScript types dan automatic error handling.
234
+ Use useApi composable untuk semua requests.
235
+ ```
236
+
237
+ ---
238
+
239
+ ## Testing
240
+
241
+ ### Unit Tests
242
+
243
+ ```bash
244
+ @frontend-developer Load `tdd-workflow` dan write tests untuk Button:
245
+ - All variants render correctly
246
+ - Click handler works
247
+ - Disabled state prevents clicks
248
+ - Loading shows spinner
249
+ - Keyboard support works
250
+
251
+ Target: 80%+ coverage
252
+ ```
253
+
254
+ ### Integration Tests
255
+
256
+ ```bash
257
+ @frontend-developer Integration test untuk CreateMarket flow:
258
+ 1. Fill form fields
259
+ 2. Validation works
260
+ 3. Submit triggers API
261
+ 4. Loading state shown
262
+ 5. Success redirects to market page
263
+ 6. Error shows toast
264
+
265
+ Use MSW untuk mock API.
266
+ ```
267
+
268
+ ---
269
+
270
+ ## Accessibility
271
+
272
+ ### Audit
273
+
274
+ ```bash
275
+ @frontend-developer Load `web-design-guidelines` dan audit:
276
+ - app/pages/markets/index.vue
277
+ - app/components/MarketCard.vue
278
+
279
+ Check:
280
+ - Semantic HTML
281
+ - ARIA labels
282
+ - Keyboard navigation
283
+ - Color contrast
284
+ - Screen reader support
285
+ ```
286
+
287
+ ### Fix Issues
288
+
289
+ ```bash
290
+ @frontend-developer Fix accessibility issues:
291
+ - Add proper heading hierarchy
292
+ - ARIA labels untuk icon buttons
293
+ - Focus visible states
294
+ - Keyboard trap in modal
295
+ - Alt text untuk images
296
+ ```
297
+
298
+ ---
299
+
300
+ ## Refactoring
301
+
302
+ ### Component Refactor
303
+
304
+ ```bash
305
+ @frontend-developer Load `vercel-composition-patterns` dan refactor UserProfile:
306
+ - Too many props (15+)
307
+ - Complex conditional rendering
308
+ - Hard to maintain
309
+
310
+ Gunakan compound components pattern.
311
+ ```
312
+
313
+ ### Code Quality
314
+
315
+ ```bash
316
+ @frontend-developer Refactor untuk improve code quality:
317
+ - Extract magic numbers to constants
318
+ - Simplify deep nesting (use early returns)
319
+ - Remove code duplication
320
+ - Add missing types
321
+ - Improve function naming
322
+ ```
323
+
324
+ ---
325
+
326
+ ## Forms & Validation
327
+
328
+ ### Schema
329
+
330
+ ```bash
331
+ @frontend-developer Create Zod schema untuk CreateMarket form:
332
+ - title: string, 5-200 chars
333
+ - description: string, 20-2000 chars
334
+ - endDate: future datetime
335
+ - category: enum
336
+ - tags: array, max 5 items
337
+ ```
338
+
339
+ ### Form Handling
340
+
341
+ ```bash
342
+ @frontend-developer Implement form dengan:
343
+ - Real-time validation
344
+ - Error messages
345
+ - Submit disabled until valid
346
+ - Loading state
347
+ - Success/error handling
348
+ - Optimistic updates
349
+ ```
350
+
351
+ ---
352
+
353
+ ## Animations
354
+
355
+ ### Micro-interactions
356
+
357
+ ```bash
358
+ @frontend-developer Add micro-interactions:
359
+
360
+ Buttons:
361
+ - Hover: scale 1.05
362
+ - Active: scale 0.98
363
+ - Click: ripple effect
364
+
365
+ Cards:
366
+ - Hover: lift + shadow
367
+ - Focus: outline
368
+ ```
369
+
370
+ ### Page Transitions
371
+
372
+ ```bash
373
+ @frontend-developer Add page transitions:
374
+ - Fade in content: opacity 0 → 1
375
+ - Slide in from bottom: y 20px → 0
376
+ - Stagger children: 100ms delay each
377
+ - Duration: 500ms
378
+ - Easing: ease-out
379
+ ```
380
+
381
+ ---
382
+
383
+ ## Error Handling
384
+
385
+ ### Error Boundary
386
+
387
+ ```bash
388
+ @frontend-developer Create ErrorBoundary component:
389
+ - Catch runtime errors
390
+ - Show user-friendly message
391
+ - Log to error tracking
392
+ - Retry button
393
+ - Fallback UI
394
+ ```
395
+
396
+ ### API Errors
397
+
398
+ ```bash
399
+ @frontend-developer Implement error handling untuk API calls:
400
+ - Network errors
401
+ - 4xx client errors
402
+ - 5xx server errors
403
+ - Timeout errors
404
+ - Parse errors
405
+
406
+ Show appropriate toast messages.
407
+ ```
408
+
409
+ ---
410
+
411
+ ## Code Review
412
+
413
+ ### Review Request
414
+
415
+ ```bash
416
+ @frontend-developer Review app/components/MarketCard.vue for:
417
+ - Performance issues
418
+ - Accessibility compliance
419
+ - Code quality
420
+ - Best practices
421
+ - Security concerns
422
+ ```
423
+
424
+ ### Pre-commit Review
425
+
426
+ ```bash
427
+ @frontend-developer Review all changed files sebelum commit:
428
+ - TypeScript errors?
429
+ - Missing error handling?
430
+ - Performance concerns?
431
+ - Accessibility issues?
432
+ - Test coverage adequate?
433
+ ```
434
+
435
+ ---
436
+
437
+ ## Common Patterns
438
+
439
+ ### Loading States
440
+
441
+ ```typescript
442
+ {loading && <Skeleton />}
443
+ {error && <ErrorMessage error={error} retry={refetch} />}
444
+ {!data && !loading && <EmptyState />}
445
+ {data && <DataDisplay data={data} />}
446
+ ```
447
+
448
+ ### Conditional Rendering
449
+
450
+ ```typescript
451
+ // ✅ Use ternary for boolean conditions
452
+ {isLoggedIn ? <Dashboard /> : <Login />}
453
+
454
+ // ✅ Use && for optional rendering
455
+ {showBanner && <Banner />}
456
+
457
+ // ❌ Avoid complex nested ternaries
458
+ {isLoading ? <Spinner /> : error ? <Error /> : data ? <Data /> : null}
459
+ ```
460
+
461
+ ### Event Handlers
462
+
463
+ ```typescript
464
+ // ✅ Use arrow functions for inline handlers
465
+ <button onClick={() => handleClick(id)}>
466
+
467
+ // ✅ Use useCallback for passed callbacks
468
+ const handleSearch = useCallback((query: string) => {
469
+ setSearchQuery(query)
470
+ }, [])
471
+ ```
472
+
473
+ ---
474
+
475
+ ## Debugging
476
+
477
+ ### Component Debug
478
+
479
+ ```bash
480
+ @frontend-developer Debug MarketCard component:
481
+ - Why re-rendering too much?
482
+ - Why props not updating?
483
+ - Why styles not applying?
484
+ - Why event handler not firing?
485
+
486
+ Add console logs dan explain what's happening.
487
+ ```
488
+
489
+ ### Performance Debug
490
+
491
+ ```bash
492
+ @frontend-developer Profile performance di dashboard page:
493
+ - Identify slow renders
494
+ - Find unnecessary re-renders
495
+ - Locate large bundles
496
+ - Detect memory leaks
497
+
498
+ Gunakan Nuxt DevTools + browser Performance panel approach.
499
+ ```
500
+
501
+ ---
502
+
503
+ ## Quick Commands
504
+
505
+ ```bash
506
+ # Session Info
507
+ @frontend-developer What's the current session context?
508
+
509
+ # Skill Info
510
+ @frontend-developer List all available skills untuk frontend development
511
+
512
+ # Best Practices
513
+ @frontend-developer What's the best practice untuk [specific task]?
514
+
515
+ # Alternatives
516
+ @frontend-developer Ada cara lain yang lebih [simple/performant/maintainable]?
517
+
518
+ # Explain
519
+ @frontend-developer Explain kenapa [decision/pattern/choice]?
520
+
521
+ # Documentation
522
+ @frontend-developer Add JSDoc comments dan usage examples
523
+
524
+ # Examples
525
+ @frontend-developer Berikan contoh usage untuk component ini
526
+ ```
527
+
528
+ ---
529
+
530
+ ## Hotkeys (Primary Agent Mode)
531
+
532
+ ```
533
+ Tab - Switch agents
534
+ Ctrl+P - List actions
535
+ /undo - Undo last change
536
+ /redo - Redo change
537
+ /share - Share conversation
538
+ @ - Mention agent/file
539
+ Ctrl+C - Cancel current operation
540
+ ```
541
+
542
+ ---
543
+
544
+ ## Memory Management
545
+
546
+ ### Check Context
547
+
548
+ ```bash
549
+ @frontend-developer What do you remember about this project?
550
+ ```
551
+
552
+ ### Reset Context
553
+
554
+ ```bash
555
+ @frontend-developer Forget temporary debug code, keep architecture decisions
556
+ ```
557
+
558
+ ### Save Important Info
559
+
560
+ ```bash
561
+ @frontend-developer Remember: we use Pinia for state, not Vuex
562
+ ```
563
+
564
+ ---
565
+
566
+ ## Keyboard Shortcuts untuk Nuxt 4
567
+
568
+ ```typescript
569
+ // Auto-imported - no need to import
570
+ const route = useRoute()
571
+ const router = useRouter()
572
+ const { data } = await useFetch('/api/data')
573
+ const config = useRuntimeConfig()
574
+
575
+ // SSR checks
576
+ if (process.client) { /* browser only */ }
577
+ if (process.server) { /* server only */ }
578
+
579
+ // Client-only component
580
+ <ClientOnly><BrowserComponent /></ClientOnly>
581
+ ```
582
+
583
+ ---
584
+
585
+ ## Emergency Commands
586
+
587
+ ```bash
588
+ # Rollback changes
589
+ /undo
590
+
591
+ # Fix TypeScript errors
592
+ @frontend-developer Fix all TypeScript errors di current file
593
+
594
+ # Quick accessibility fix
595
+ @frontend-developer Quick accessibility audit + fixes untuk [component]
596
+
597
+ # Performance emergency
598
+ @frontend-developer Page is slow, quick wins untuk improve performance?
599
+
600
+ # Production blocker
601
+ @frontend-developer URGENT: [describe issue], need fix ASAP
602
+ ```
603
+
604
+ ---
605
+
606
+ ## Template Requests
607
+
608
+ ### New Feature
609
+
610
+ ```bash
611
+ @frontend-developer New feature: [describe]
612
+
613
+ Requirements:
614
+ - [list requirements]
615
+
616
+ Components needed:
617
+ - [list components]
618
+
619
+ Skills to load:
620
+ - [relevant skills]
621
+
622
+ Timeline: [urgent/normal/low priority]
623
+ ```
624
+
625
+ ### Bug Fix
626
+
627
+ ```bash
628
+ @frontend-developer Bug in [component/page]:
629
+
630
+ Issue: [describe what's wrong]
631
+ Expected: [what should happen]
632
+ Actual: [what happens]
633
+ Steps to reproduce: [list steps]
634
+
635
+ Please debug and fix.
636
+ ```
637
+
638
+ ### Refactor Request
639
+
640
+ ```bash
641
+ @frontend-developer Refactor [component/module]:
642
+
643
+ Current issues:
644
+ - [list problems]
645
+
646
+ Goals:
647
+ - [list goals]
648
+
649
+ Constraints:
650
+ - [list constraints]
651
+
652
+ Maintain existing functionality.
653
+ ```
654
+
655
+ ---
656
+
657
+ ## Pro Tips
658
+
659
+ 1. **Be Specific**: More context = better results
660
+ 2. **Iterative**: Start simple, then enhance
661
+ 3. **Review**: Always ask agent to review their work
662
+ 4. **Skills**: Load relevant skills explicitly
663
+ 5. **Context**: Help agent remember important decisions
664
+ 6. **Accessibility**: Always remind about a11y
665
+ 7. **Performance**: Mention performance concerns upfront
666
+ 8. **Tests**: Ask for tests alongside implementation
667
+
668
+ ---
669
+
670
+ **Print this and keep it handy! 📌**
671
+
672
+ Common questions? Check README.md or ask:
673
+
674
+ ```bash
675
+ @frontend-developer How do I [question]?
676
+ ```