cokit-cli 1.0.0 → 1.0.2

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 (599) hide show
  1. package/AGENTS.md +103 -0
  2. package/FAQ.md +5 -5
  3. package/QUICK-START.md +4 -4
  4. package/README.FLOW.md +237 -0
  5. package/README.md +153 -92
  6. package/agents/brainstormer.agent.md +71 -0
  7. package/agents/code-reviewer.agent.md +128 -0
  8. package/agents/database-admin.agent.md +91 -0
  9. package/agents/debugger.agent.md +128 -0
  10. package/agents/docs-manager.agent.md +121 -0
  11. package/agents/fullstack-developer.agent.md +96 -0
  12. package/agents/git-manager.agent.md +392 -0
  13. package/agents/mcp-manager.agent.md +93 -0
  14. package/agents/planner.agent.md +94 -0
  15. package/agents/project-manager.agent.md +124 -0
  16. package/agents/researcher.agent.md +32 -0
  17. package/agents/scout-external.agent.md +141 -0
  18. package/agents/scout.agent.md +107 -0
  19. package/agents/tester.agent.md +106 -0
  20. package/agents/ui-ux-designer.agent.md +225 -0
  21. package/collections/ck-core.collection.yml +30 -0
  22. package/collections/ck-development-rules.collection.yml +18 -0
  23. package/collections/ck-documentation.collection.yml +18 -0
  24. package/collections/ck-git-workflow.collection.yml +18 -0
  25. package/collections/ck-orchestration.collection.yml +22 -0
  26. package/collections/ck-ui-design.collection.yml +18 -0
  27. package/docs/README.md +85 -0
  28. package/docs/copilot-processing-flow.md +128 -0
  29. package/docs/migration-guide.md +12 -12
  30. package/instructions/ck-backend.instructions.md +48 -0
  31. package/instructions/ck-development.instructions.md +40 -0
  32. package/instructions/ck-frontend-design-pro.instructions.md +58 -0
  33. package/instructions/ck-frontend.instructions.md +44 -0
  34. package/instructions/ck-google-adk-python.instructions.md +242 -0
  35. package/instructions/ck-research.instructions.md +167 -0
  36. package/instructions/ck-testing.instructions.md +36 -0
  37. package/package.json +9 -2
  38. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-01-restructure-folders.md +183 -0
  39. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-02-convert-agents.md +206 -0
  40. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-03-convert-commands-to-prompts.md +284 -0
  41. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-04-convert-skills-to-instructions.md +349 -0
  42. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-05-create-collections.md +320 -0
  43. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-06-update-cli-build-scripts.md +450 -0
  44. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/phase-07-update-documentation.md +407 -0
  45. package/plans/260108-0924-rebuild-cokit-awesome-copilot-format/plan.md +136 -0
  46. package/prompts/ck-ask.prompt.md +57 -0
  47. package/prompts/ck-bootstrap-auto-fast.prompt.md +108 -0
  48. package/prompts/ck-bootstrap-auto-parallel.prompt.md +66 -0
  49. package/prompts/ck-bootstrap-auto.prompt.md +114 -0
  50. package/prompts/ck-bootstrap.prompt.md +136 -0
  51. package/prompts/ck-brainstorm.prompt.md +68 -0
  52. package/prompts/ck-ck-help.prompt.md +114 -0
  53. package/prompts/ck-code-auto.prompt.md +171 -0
  54. package/prompts/ck-code-no-test.prompt.md +159 -0
  55. package/prompts/ck-code-parallel.prompt.md +56 -0
  56. package/prompts/ck-code.prompt.md +177 -0
  57. package/prompts/ck-coding-level.prompt.md +54 -0
  58. package/prompts/ck-cook-auto-fast.prompt.md +26 -0
  59. package/prompts/ck-cook-auto-parallel.prompt.md +49 -0
  60. package/prompts/ck-cook-auto.prompt.md +15 -0
  61. package/prompts/ck-cook.prompt.md +96 -0
  62. package/prompts/ck-debug.prompt.md +14 -0
  63. package/prompts/ck-design-3d.prompt.md +84 -0
  64. package/prompts/ck-design-describe.prompt.md +24 -0
  65. package/prompts/ck-design-fast.prompt.md +32 -0
  66. package/prompts/ck-design-good.prompt.md +36 -0
  67. package/prompts/ck-design-screenshot.prompt.md +35 -0
  68. package/prompts/ck-design-video.prompt.md +35 -0
  69. package/prompts/ck-docs-init.prompt.md +27 -0
  70. package/prompts/ck-docs-summarize.prompt.md +23 -0
  71. package/prompts/ck-docs-update.prompt.md +36 -0
  72. package/prompts/ck-fix-ci.prompt.md +18 -0
  73. package/prompts/ck-fix-fast.prompt.md +18 -0
  74. package/prompts/ck-fix-hard.prompt.md +36 -0
  75. package/prompts/ck-fix-logs.prompt.md +27 -0
  76. package/prompts/ck-fix-parallel.prompt.md +54 -0
  77. package/prompts/ck-fix-test.prompt.md +19 -0
  78. package/prompts/ck-fix-types.prompt.md +11 -0
  79. package/prompts/ck-fix-ui.prompt.md +49 -0
  80. package/prompts/ck-fix.prompt.md +44 -0
  81. package/prompts/ck-git-cm.prompt.md +8 -0
  82. package/prompts/ck-git-cp.prompt.md +7 -0
  83. package/prompts/ck-git-merge.prompt.md +41 -0
  84. package/prompts/ck-git-pr.prompt.md +49 -0
  85. package/prompts/ck-kanban.prompt.md +77 -0
  86. package/prompts/ck-plan-archive.prompt.md +58 -0
  87. package/prompts/ck-plan-ci.prompt.md +34 -0
  88. package/prompts/ck-plan-cro.prompt.md +66 -0
  89. package/prompts/ck-plan-fast.prompt.md +67 -0
  90. package/prompts/ck-plan-hard.prompt.md +89 -0
  91. package/prompts/ck-plan-parallel.prompt.md +126 -0
  92. package/prompts/ck-plan-two.prompt.md +43 -0
  93. package/prompts/ck-plan-validate.prompt.md +118 -0
  94. package/prompts/ck-plan.prompt.md +29 -1
  95. package/prompts/ck-preview.prompt.md +65 -0
  96. package/prompts/ck-review-codebase.prompt.md +44 -0
  97. package/prompts/ck-scout-ext.prompt.md +35 -0
  98. package/prompts/ck-scout.prompt.md +25 -0
  99. package/prompts/ck-skill-add.prompt.md +36 -0
  100. package/prompts/ck-skill-create.prompt.md +29 -0
  101. package/prompts/ck-skill-fix-logs.prompt.md +22 -0
  102. package/prompts/ck-skill-optimize-auto.prompt.md +25 -0
  103. package/prompts/ck-skill-optimize.prompt.md +34 -0
  104. package/prompts/ck-skill-plan.prompt.md +46 -0
  105. package/prompts/ck-test-ui.prompt.md +92 -0
  106. package/prompts/ck-test.prompt.md +10 -0
  107. package/prompts/ck-use-mcp.prompt.md +27 -0
  108. package/prompts/ck-watzup.prompt.md +11 -0
  109. package/prompts/ck-worktree.prompt.md +127 -0
  110. package/rules/README.agents.md +55 -0
  111. package/rules/README.collections.md +78 -0
  112. package/rules/README.copilot-instructions.md +66 -0
  113. package/rules/README.instructions.md +73 -0
  114. package/rules/README.md +39 -0
  115. package/rules/README.prompts.md +76 -0
  116. package/rules/README.skills.md +71 -0
  117. package/skills/ck-ai-artist/SKILL.md +73 -0
  118. package/skills/ck-ai-artist/references/advanced-techniques.md +184 -0
  119. package/skills/ck-ai-artist/references/domain-code.md +66 -0
  120. package/skills/ck-ai-artist/references/domain-data.md +72 -0
  121. package/skills/ck-ai-artist/references/domain-marketing.md +66 -0
  122. package/skills/ck-ai-artist/references/domain-patterns.md +33 -0
  123. package/skills/ck-ai-artist/references/domain-writing.md +68 -0
  124. package/skills/ck-ai-artist/references/image-prompting.md +141 -0
  125. package/skills/ck-ai-artist/references/llm-prompting.md +165 -0
  126. package/skills/ck-ai-artist/references/nano-banana.md +59 -0
  127. package/skills/ck-ai-artist/references/reasoning-techniques.md +201 -0
  128. package/skills/ck-backend-development/SKILL.md +93 -0
  129. package/skills/ck-backend-development/references/backend-api-design.md +495 -0
  130. package/skills/ck-backend-development/references/backend-architecture.md +454 -0
  131. package/skills/ck-backend-development/references/backend-authentication.md +338 -0
  132. package/skills/ck-backend-development/references/backend-code-quality.md +659 -0
  133. package/skills/ck-backend-development/references/backend-debugging.md +904 -0
  134. package/skills/ck-backend-development/references/backend-devops.md +494 -0
  135. package/skills/ck-backend-development/references/backend-mindset.md +387 -0
  136. package/skills/ck-backend-development/references/backend-performance.md +397 -0
  137. package/skills/ck-backend-development/references/backend-security.md +290 -0
  138. package/skills/ck-backend-development/references/backend-technologies.md +256 -0
  139. package/skills/ck-backend-development/references/backend-testing.md +429 -0
  140. package/skills/ck-better-auth/SKILL.md +202 -0
  141. package/skills/ck-better-auth/references/advanced-features.md +553 -0
  142. package/skills/ck-better-auth/references/database-integration.md +577 -0
  143. package/skills/ck-better-auth/references/email-password-auth.md +416 -0
  144. package/skills/ck-better-auth/references/oauth-providers.md +430 -0
  145. package/skills/ck-better-auth/scripts/.coverage +0 -0
  146. package/skills/ck-better-auth/scripts/better_auth_init.py +521 -0
  147. package/skills/ck-better-auth/scripts/requirements.txt +15 -0
  148. package/skills/ck-better-auth/scripts/tests/.coverage +0 -0
  149. package/skills/ck-better-auth/scripts/tests/test_better_auth_init.py +421 -0
  150. package/skills/ck-chrome-devtools/SKILL.md +470 -0
  151. package/skills/ck-chrome-devtools/references/cdp-domains.md +694 -0
  152. package/skills/ck-chrome-devtools/references/performance-guide.md +940 -0
  153. package/skills/ck-chrome-devtools/references/puppeteer-reference.md +953 -0
  154. package/skills/ck-chrome-devtools/scripts/README.md +272 -0
  155. package/skills/ck-chrome-devtools/scripts/__tests__/selector.test.js +210 -0
  156. package/skills/ck-chrome-devtools/scripts/aria-snapshot.js +362 -0
  157. package/skills/ck-chrome-devtools/scripts/click.js +83 -0
  158. package/skills/ck-chrome-devtools/scripts/console.js +79 -0
  159. package/skills/ck-chrome-devtools/scripts/evaluate.js +53 -0
  160. package/skills/ck-chrome-devtools/scripts/fill.js +76 -0
  161. package/skills/ck-chrome-devtools/scripts/inject-auth.js +229 -0
  162. package/skills/ck-chrome-devtools/scripts/install-deps.sh +181 -0
  163. package/skills/ck-chrome-devtools/scripts/install.sh +83 -0
  164. package/skills/ck-chrome-devtools/scripts/lib/browser.js +318 -0
  165. package/skills/ck-chrome-devtools/scripts/lib/selector.js +178 -0
  166. package/skills/ck-chrome-devtools/scripts/navigate.js +54 -0
  167. package/skills/ck-chrome-devtools/scripts/network.js +106 -0
  168. package/skills/ck-chrome-devtools/scripts/package-lock.json +1589 -0
  169. package/skills/ck-chrome-devtools/scripts/package.json +16 -0
  170. package/skills/ck-chrome-devtools/scripts/performance.js +149 -0
  171. package/skills/ck-chrome-devtools/scripts/screenshot.js +198 -0
  172. package/skills/ck-chrome-devtools/scripts/select-ref.js +131 -0
  173. package/skills/ck-chrome-devtools/scripts/snapshot.js +135 -0
  174. package/skills/ck-code-review/SKILL.md +143 -0
  175. package/skills/ck-code-review/references/code-review-reception.md +209 -0
  176. package/skills/ck-code-review/references/requesting-code-review.md +105 -0
  177. package/skills/ck-code-review/references/verification-before-completion.md +139 -0
  178. package/skills/ck-databases/SKILL.md +231 -0
  179. package/skills/ck-databases/references/mongodb-aggregation.md +447 -0
  180. package/skills/ck-databases/references/mongodb-atlas.md +465 -0
  181. package/skills/ck-databases/references/mongodb-crud.md +408 -0
  182. package/skills/ck-databases/references/mongodb-indexing.md +442 -0
  183. package/skills/ck-databases/references/postgresql-administration.md +594 -0
  184. package/skills/ck-databases/references/postgresql-performance.md +527 -0
  185. package/skills/ck-databases/references/postgresql-psql-cli.md +467 -0
  186. package/skills/ck-databases/references/postgresql-queries.md +475 -0
  187. package/skills/ck-databases/scripts/.coverage +0 -0
  188. package/skills/ck-databases/scripts/db_backup.py +502 -0
  189. package/skills/ck-databases/scripts/db_migrate.py +425 -0
  190. package/skills/ck-databases/scripts/db_performance_check.py +456 -0
  191. package/skills/ck-databases/scripts/requirements.txt +20 -0
  192. package/skills/ck-databases/scripts/tests/coverage-db.json +1 -0
  193. package/skills/ck-databases/scripts/tests/requirements.txt +4 -0
  194. package/skills/ck-databases/scripts/tests/test_db_backup.py +340 -0
  195. package/skills/ck-databases/scripts/tests/test_db_migrate.py +277 -0
  196. package/skills/ck-databases/scripts/tests/test_db_performance_check.py +370 -0
  197. package/skills/ck-debugging/SKILL.md +82 -0
  198. package/skills/ck-debugging/references/defense-in-depth.md +124 -0
  199. package/skills/ck-debugging/references/root-cause-tracing.md +122 -0
  200. package/skills/ck-debugging/references/systematic-debugging.md +102 -0
  201. package/skills/ck-debugging/references/verification.md +123 -0
  202. package/skills/ck-debugging/scripts/find-polluter.sh +63 -0
  203. package/skills/ck-debugging/scripts/find-polluter.test.md +102 -0
  204. package/skills/ck-devops/.env.example +76 -0
  205. package/skills/ck-devops/SKILL.md +283 -0
  206. package/skills/ck-devops/references/browser-rendering.md +305 -0
  207. package/skills/ck-devops/references/cloudflare-d1-kv.md +123 -0
  208. package/skills/ck-devops/references/cloudflare-platform.md +271 -0
  209. package/skills/ck-devops/references/cloudflare-r2-storage.md +280 -0
  210. package/skills/ck-devops/references/cloudflare-workers-advanced.md +312 -0
  211. package/skills/ck-devops/references/cloudflare-workers-apis.md +309 -0
  212. package/skills/ck-devops/references/cloudflare-workers-basics.md +418 -0
  213. package/skills/ck-devops/references/docker-basics.md +297 -0
  214. package/skills/ck-devops/references/docker-compose.md +292 -0
  215. package/skills/ck-devops/references/gcloud-platform.md +297 -0
  216. package/skills/ck-devops/references/gcloud-services.md +304 -0
  217. package/skills/ck-devops/scripts/cloudflare_deploy.py +269 -0
  218. package/skills/ck-devops/scripts/docker_optimize.py +331 -0
  219. package/skills/ck-devops/scripts/requirements.txt +20 -0
  220. package/skills/ck-devops/scripts/tests/requirements.txt +3 -0
  221. package/skills/ck-devops/scripts/tests/test_cloudflare_deploy.py +285 -0
  222. package/skills/ck-devops/scripts/tests/test_docker_optimize.py +436 -0
  223. package/skills/ck-docs-seeker/.env.example +15 -0
  224. package/skills/ck-docs-seeker/SKILL.md +96 -0
  225. package/skills/ck-docs-seeker/package.json +25 -0
  226. package/skills/ck-docs-seeker/references/advanced.md +79 -0
  227. package/skills/ck-docs-seeker/references/context7-patterns.md +68 -0
  228. package/skills/ck-docs-seeker/references/errors.md +68 -0
  229. package/skills/ck-docs-seeker/scripts/analyze-llms-txt.js +211 -0
  230. package/skills/ck-docs-seeker/scripts/detect-topic.js +172 -0
  231. package/skills/ck-docs-seeker/scripts/fetch-docs.js +213 -0
  232. package/skills/ck-docs-seeker/scripts/tests/run-tests.js +72 -0
  233. package/skills/ck-docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
  234. package/skills/ck-docs-seeker/scripts/tests/test-detect-topic.js +112 -0
  235. package/skills/ck-docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
  236. package/skills/ck-docs-seeker/scripts/utils/env-loader.js +94 -0
  237. package/skills/ck-docs-seeker/workflows/library-search.md +87 -0
  238. package/skills/ck-docs-seeker/workflows/repo-analysis.md +91 -0
  239. package/skills/ck-docs-seeker/workflows/topic-search.md +77 -0
  240. package/skills/ck-frontend-design/SKILL.md +79 -0
  241. package/skills/ck-frontend-design/references/analysis-best-practices.md +80 -0
  242. package/skills/ck-frontend-design/references/analysis-prompts.md +141 -0
  243. package/skills/ck-frontend-design/references/analysis-techniques.md +118 -0
  244. package/skills/ck-frontend-design/references/animejs.md +396 -0
  245. package/skills/ck-frontend-design/references/design-extraction-overview.md +71 -0
  246. package/skills/ck-frontend-design/references/extraction-best-practices.md +141 -0
  247. package/skills/ck-frontend-design/references/extraction-output-templates.md +162 -0
  248. package/skills/ck-frontend-design/references/extraction-prompts.md +127 -0
  249. package/skills/ck-frontend-design/references/technical-accessibility.md +119 -0
  250. package/skills/ck-frontend-design/references/technical-best-practices.md +97 -0
  251. package/skills/ck-frontend-design/references/technical-optimization.md +44 -0
  252. package/skills/ck-frontend-design/references/technical-overview.md +90 -0
  253. package/skills/ck-frontend-design/references/technical-workflows.md +150 -0
  254. package/skills/ck-frontend-design/references/visual-analysis-overview.md +95 -0
  255. package/skills/ck-frontend-development/SKILL.md +399 -0
  256. package/skills/ck-frontend-development/resources/common-patterns.md +331 -0
  257. package/skills/ck-frontend-development/resources/complete-examples.md +872 -0
  258. package/skills/ck-frontend-development/resources/component-patterns.md +502 -0
  259. package/skills/ck-frontend-development/resources/data-fetching.md +767 -0
  260. package/skills/ck-frontend-development/resources/file-organization.md +502 -0
  261. package/skills/ck-frontend-development/resources/loading-and-error-states.md +501 -0
  262. package/skills/ck-frontend-development/resources/performance.md +406 -0
  263. package/skills/ck-frontend-development/resources/routing-guide.md +364 -0
  264. package/skills/ck-frontend-development/resources/styling-guide.md +428 -0
  265. package/skills/ck-frontend-development/resources/typescript-standards.md +418 -0
  266. package/skills/ck-markdown-novel-viewer/SKILL.md +190 -0
  267. package/skills/ck-markdown-novel-viewer/assets/directory-browser.css +215 -0
  268. package/skills/ck-markdown-novel-viewer/assets/favicon.png +0 -0
  269. package/skills/ck-markdown-novel-viewer/assets/novel-theme.css +818 -0
  270. package/skills/ck-markdown-novel-viewer/assets/reader.js +262 -0
  271. package/skills/ck-markdown-novel-viewer/assets/template.html +80 -0
  272. package/skills/ck-markdown-novel-viewer/package.json +15 -0
  273. package/skills/ck-markdown-novel-viewer/scripts/lib/http-server.cjs +434 -0
  274. package/skills/ck-markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +272 -0
  275. package/skills/ck-markdown-novel-viewer/scripts/lib/plan-navigator.cjs +509 -0
  276. package/skills/ck-markdown-novel-viewer/scripts/lib/port-finder.cjs +48 -0
  277. package/skills/ck-markdown-novel-viewer/scripts/lib/process-mgr.cjs +150 -0
  278. package/skills/ck-markdown-novel-viewer/scripts/server.cjs +411 -0
  279. package/skills/ck-markdown-novel-viewer/scripts/tests/server.test.cjs +283 -0
  280. package/skills/ck-markdown-novel-viewer/tests/dashboard-assets.test.cjs +340 -0
  281. package/skills/ck-markdown-novel-viewer/tests/dashboard-renderer.test.cjs +404 -0
  282. package/skills/ck-markdown-novel-viewer/tests/http-server.test.cjs +271 -0
  283. package/skills/ck-markdown-novel-viewer/tests/run-tests.cjs +51 -0
  284. package/skills/ck-markdown-novel-viewer/tests/test-framework.cjs +154 -0
  285. package/skills/ck-markdown-novel-viewer/tests/verify-xss.cjs +90 -0
  286. package/skills/ck-mcp-builder/LICENSE.txt +202 -0
  287. package/skills/ck-mcp-builder/SKILL.md +327 -0
  288. package/skills/ck-mcp-builder/reference/evaluation.md +602 -0
  289. package/skills/ck-mcp-builder/reference/mcp_best_practices.md +915 -0
  290. package/skills/ck-mcp-builder/reference/node_mcp_server.md +916 -0
  291. package/skills/ck-mcp-builder/reference/python_mcp_server.md +752 -0
  292. package/skills/ck-mcp-builder/scripts/connections.py +151 -0
  293. package/skills/ck-mcp-builder/scripts/evaluation.py +373 -0
  294. package/skills/ck-mcp-builder/scripts/example_evaluation.xml +22 -0
  295. package/skills/ck-mcp-builder/scripts/requirements.txt +2 -0
  296. package/skills/ck-mcp-management/README.md +219 -0
  297. package/skills/ck-mcp-management/SKILL.md +209 -0
  298. package/skills/ck-mcp-management/assets/tools.json +3146 -0
  299. package/skills/ck-mcp-management/references/configuration.md +114 -0
  300. package/skills/ck-mcp-management/references/gemini-cli-integration.md +215 -0
  301. package/skills/ck-mcp-management/references/mcp-protocol.md +116 -0
  302. package/skills/ck-mcp-management/scripts/.env.example +10 -0
  303. package/skills/ck-mcp-management/scripts/cli.ts +195 -0
  304. package/skills/ck-mcp-management/scripts/dist/analyze-tools.js +70 -0
  305. package/skills/ck-mcp-management/scripts/dist/cli.js +160 -0
  306. package/skills/ck-mcp-management/scripts/dist/mcp-client.js +183 -0
  307. package/skills/ck-mcp-management/scripts/mcp-client.ts +230 -0
  308. package/skills/ck-mcp-management/scripts/package.json +20 -0
  309. package/skills/ck-mcp-management/scripts/tsconfig.json +15 -0
  310. package/skills/ck-media-processing/SKILL.md +90 -0
  311. package/skills/ck-media-processing/references/common-workflows.md +132 -0
  312. package/skills/ck-media-processing/references/ffmpeg-encoding.md +358 -0
  313. package/skills/ck-media-processing/references/ffmpeg-filters.md +503 -0
  314. package/skills/ck-media-processing/references/ffmpeg-streaming.md +403 -0
  315. package/skills/ck-media-processing/references/format-compatibility.md +375 -0
  316. package/skills/ck-media-processing/references/imagemagick-batch.md +612 -0
  317. package/skills/ck-media-processing/references/imagemagick-editing.md +623 -0
  318. package/skills/ck-media-processing/references/rmbg-background-removal.md +66 -0
  319. package/skills/ck-media-processing/references/troubleshooting.md +109 -0
  320. package/skills/ck-media-processing/scripts/README.md +111 -0
  321. package/skills/ck-media-processing/scripts/batch-remove-background.sh +124 -0
  322. package/skills/ck-media-processing/scripts/batch_resize.py +342 -0
  323. package/skills/ck-media-processing/scripts/media_convert.py +311 -0
  324. package/skills/ck-media-processing/scripts/remove-background.sh +96 -0
  325. package/skills/ck-media-processing/scripts/remove-bg-node.js +158 -0
  326. package/skills/ck-media-processing/scripts/requirements.txt +24 -0
  327. package/skills/ck-media-processing/scripts/tests/.coverage +0 -0
  328. package/skills/ck-media-processing/scripts/tests/requirements.txt +2 -0
  329. package/skills/ck-media-processing/scripts/tests/test_batch_resize.py +372 -0
  330. package/skills/ck-media-processing/scripts/tests/test_media_convert.py +259 -0
  331. package/skills/ck-media-processing/scripts/tests/test_video_optimize.py +397 -0
  332. package/skills/ck-media-processing/scripts/video_optimize.py +414 -0
  333. package/skills/ck-mobile-development/SKILL.md +210 -0
  334. package/skills/ck-mobile-development/references/mobile-android.md +604 -0
  335. package/skills/ck-mobile-development/references/mobile-best-practices.md +545 -0
  336. package/skills/ck-mobile-development/references/mobile-debugging.md +1089 -0
  337. package/skills/ck-mobile-development/references/mobile-frameworks.md +465 -0
  338. package/skills/ck-mobile-development/references/mobile-ios.md +496 -0
  339. package/skills/ck-mobile-development/references/mobile-mindset.md +544 -0
  340. package/skills/ck-payment-integration/README.md +185 -0
  341. package/skills/ck-payment-integration/SKILL.md +116 -0
  342. package/skills/ck-payment-integration/references/polar/benefits.md +396 -0
  343. package/skills/ck-payment-integration/references/polar/best-practices.md +482 -0
  344. package/skills/ck-payment-integration/references/polar/checkouts.md +266 -0
  345. package/skills/ck-payment-integration/references/polar/overview.md +184 -0
  346. package/skills/ck-payment-integration/references/polar/products.md +244 -0
  347. package/skills/ck-payment-integration/references/polar/sdk.md +436 -0
  348. package/skills/ck-payment-integration/references/polar/subscriptions.md +340 -0
  349. package/skills/ck-payment-integration/references/polar/webhooks.md +405 -0
  350. package/skills/ck-payment-integration/references/sepay/api.md +140 -0
  351. package/skills/ck-payment-integration/references/sepay/best-practices.md +337 -0
  352. package/skills/ck-payment-integration/references/sepay/overview.md +138 -0
  353. package/skills/ck-payment-integration/references/sepay/qr-codes.md +228 -0
  354. package/skills/ck-payment-integration/references/sepay/sdk.md +213 -0
  355. package/skills/ck-payment-integration/references/sepay/webhooks.md +208 -0
  356. package/skills/ck-payment-integration/scripts/.env.example +20 -0
  357. package/skills/ck-payment-integration/scripts/checkout-helper.js +244 -0
  358. package/skills/ck-payment-integration/scripts/package.json +17 -0
  359. package/skills/ck-payment-integration/scripts/polar-webhook-verify.js +202 -0
  360. package/skills/ck-payment-integration/scripts/sepay-webhook-verify.js +193 -0
  361. package/skills/ck-payment-integration/scripts/test-scripts.js +237 -0
  362. package/skills/ck-planning/SKILL.md +112 -0
  363. package/skills/ck-planning/references/codebase-understanding.md +62 -0
  364. package/skills/ck-planning/references/output-standards.md +127 -0
  365. package/skills/ck-planning/references/plan-organization.md +150 -0
  366. package/skills/ck-planning/references/research-phase.md +49 -0
  367. package/skills/ck-planning/references/solution-design.md +63 -0
  368. package/skills/ck-problem-solving/SKILL.md +95 -0
  369. package/skills/ck-problem-solving/references/attribution.md +69 -0
  370. package/skills/ck-problem-solving/references/collision-zone-thinking.md +79 -0
  371. package/skills/ck-problem-solving/references/inversion-exercise.md +91 -0
  372. package/skills/ck-problem-solving/references/meta-pattern-recognition.md +87 -0
  373. package/skills/ck-problem-solving/references/scale-game.md +95 -0
  374. package/skills/ck-problem-solving/references/simplification-cascades.md +80 -0
  375. package/skills/ck-problem-solving/references/when-stuck.md +72 -0
  376. package/skills/ck-repomix/SKILL.md +247 -0
  377. package/skills/ck-repomix/references/configuration.md +211 -0
  378. package/skills/ck-repomix/references/usage-patterns.md +232 -0
  379. package/skills/ck-repomix/scripts/.coverage +0 -0
  380. package/skills/ck-repomix/scripts/README.md +179 -0
  381. package/skills/ck-repomix/scripts/repomix_batch.py +455 -0
  382. package/skills/ck-repomix/scripts/repos.example.json +15 -0
  383. package/skills/ck-repomix/scripts/requirements.txt +15 -0
  384. package/skills/ck-repomix/scripts/tests/test_repomix_batch.py +531 -0
  385. package/skills/ck-sequential-thinking/.env.example +8 -0
  386. package/skills/ck-sequential-thinking/README.md +183 -0
  387. package/skills/{sequential-thinking → ck-sequential-thinking}/SKILL.md +14 -2
  388. package/skills/ck-sequential-thinking/package.json +31 -0
  389. package/skills/ck-sequential-thinking/references/advanced-strategies.md +79 -0
  390. package/skills/{sequential-thinking → ck-sequential-thinking}/references/advanced-techniques.md +2 -14
  391. package/skills/{sequential-thinking → ck-sequential-thinking}/references/core-patterns.md +8 -0
  392. package/skills/ck-sequential-thinking/references/examples-api.md +88 -0
  393. package/skills/ck-sequential-thinking/references/examples-architecture.md +94 -0
  394. package/skills/ck-sequential-thinking/references/examples-debug.md +90 -0
  395. package/skills/ck-sequential-thinking/scripts/format-thought.js +159 -0
  396. package/skills/ck-sequential-thinking/scripts/process-thought.js +236 -0
  397. package/skills/ck-sequential-thinking/tests/format-thought.test.js +133 -0
  398. package/skills/ck-sequential-thinking/tests/process-thought.test.js +215 -0
  399. package/skills/ck-shopify/README.md +66 -0
  400. package/skills/ck-shopify/SKILL.md +319 -0
  401. package/skills/ck-shopify/references/app-development.md +470 -0
  402. package/skills/ck-shopify/references/extensions.md +493 -0
  403. package/skills/ck-shopify/references/themes.md +498 -0
  404. package/skills/ck-shopify/scripts/.coverage +0 -0
  405. package/skills/ck-shopify/scripts/requirements.txt +19 -0
  406. package/skills/ck-shopify/scripts/shopify_init.py +423 -0
  407. package/skills/ck-shopify/scripts/tests/.coverage +0 -0
  408. package/skills/ck-shopify/scripts/tests/test_shopify_init.py +385 -0
  409. package/skills/ck-skill-creator/LICENSE.txt +202 -0
  410. package/skills/ck-skill-creator/SKILL.md +265 -0
  411. package/skills/ck-skill-creator/scripts/init_skill.py +303 -0
  412. package/skills/ck-skill-creator/scripts/package_skill.py +110 -0
  413. package/skills/ck-skill-creator/scripts/quick_validate.py +65 -0
  414. package/skills/ck-threejs/SKILL.md +87 -0
  415. package/skills/ck-threejs/references/01-getting-started.md +177 -0
  416. package/skills/ck-threejs/references/02-loaders.md +169 -0
  417. package/skills/ck-threejs/references/03-textures.md +170 -0
  418. package/skills/ck-threejs/references/04-cameras.md +195 -0
  419. package/skills/ck-threejs/references/05-lights.md +183 -0
  420. package/skills/ck-threejs/references/06-animations.md +214 -0
  421. package/skills/ck-threejs/references/07-math.md +260 -0
  422. package/skills/ck-threejs/references/08-interaction.md +267 -0
  423. package/skills/ck-threejs/references/09-postprocessing.md +240 -0
  424. package/skills/ck-threejs/references/10-controls.md +259 -0
  425. package/skills/ck-threejs/references/11-materials-advanced.md +270 -0
  426. package/skills/ck-threejs/references/12-performance.md +269 -0
  427. package/skills/ck-threejs/references/13-node-materials.md +298 -0
  428. package/skills/ck-threejs/references/14-physics-vr.md +304 -0
  429. package/skills/ck-threejs/references/15-specialized-loaders.md +333 -0
  430. package/skills/ck-threejs/references/16-webgpu.md +302 -0
  431. package/skills/ck-ui-styling/LICENSE.txt +202 -0
  432. package/skills/ck-ui-styling/SKILL.md +319 -0
  433. package/skills/ck-ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  434. package/skills/ck-ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  435. package/skills/ck-ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  436. package/skills/ck-ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
  437. package/skills/ck-ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  438. package/skills/ck-ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
  439. package/skills/ck-ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
  440. package/skills/ck-ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  441. package/skills/ck-ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  442. package/skills/ck-ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  443. package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  444. package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  445. package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  446. package/skills/ck-ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  447. package/skills/ck-ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
  448. package/skills/ck-ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
  449. package/skills/ck-ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
  450. package/skills/ck-ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
  451. package/skills/ck-ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
  452. package/skills/ck-ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
  453. package/skills/ck-ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
  454. package/skills/ck-ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
  455. package/skills/ck-ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
  456. package/skills/ck-ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  457. package/skills/ck-ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  458. package/skills/ck-ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  459. package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  460. package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  461. package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  462. package/skills/ck-ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  463. package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  464. package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  465. package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  466. package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  467. package/skills/ck-ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  468. package/skills/ck-ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  469. package/skills/ck-ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  470. package/skills/ck-ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
  471. package/skills/ck-ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
  472. package/skills/ck-ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  473. package/skills/ck-ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  474. package/skills/ck-ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  475. package/skills/ck-ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
  476. package/skills/ck-ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
  477. package/skills/ck-ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
  478. package/skills/ck-ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  479. package/skills/ck-ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  480. package/skills/ck-ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
  481. package/skills/ck-ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  482. package/skills/ck-ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
  483. package/skills/ck-ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
  484. package/skills/ck-ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
  485. package/skills/ck-ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
  486. package/skills/ck-ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
  487. package/skills/ck-ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
  488. package/skills/ck-ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  489. package/skills/ck-ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  490. package/skills/ck-ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
  491. package/skills/ck-ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
  492. package/skills/ck-ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
  493. package/skills/ck-ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  494. package/skills/ck-ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
  495. package/skills/ck-ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
  496. package/skills/ck-ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  497. package/skills/ck-ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  498. package/skills/ck-ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
  499. package/skills/ck-ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  500. package/skills/ck-ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
  501. package/skills/ck-ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  502. package/skills/ck-ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  503. package/skills/ck-ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
  504. package/skills/ck-ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
  505. package/skills/ck-ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
  506. package/skills/ck-ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
  507. package/skills/ck-ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
  508. package/skills/ck-ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  509. package/skills/ck-ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
  510. package/skills/ck-ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
  511. package/skills/ck-ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
  512. package/skills/ck-ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
  513. package/skills/ck-ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  514. package/skills/ck-ui-styling/references/canvas-design-system.md +320 -0
  515. package/skills/ck-ui-styling/references/shadcn-accessibility.md +471 -0
  516. package/skills/ck-ui-styling/references/shadcn-components.md +424 -0
  517. package/skills/ck-ui-styling/references/shadcn-theming.md +373 -0
  518. package/skills/ck-ui-styling/references/tailwind-customization.md +483 -0
  519. package/skills/ck-ui-styling/references/tailwind-responsive.md +382 -0
  520. package/skills/ck-ui-styling/references/tailwind-utilities.md +455 -0
  521. package/skills/ck-ui-styling/scripts/.coverage +0 -0
  522. package/skills/ck-ui-styling/scripts/requirements.txt +17 -0
  523. package/skills/ck-ui-styling/scripts/shadcn_add.py +292 -0
  524. package/skills/ck-ui-styling/scripts/tailwind_config_gen.py +456 -0
  525. package/skills/ck-ui-styling/scripts/tests/coverage-ui.json +1 -0
  526. package/skills/ck-ui-styling/scripts/tests/requirements.txt +3 -0
  527. package/skills/ck-ui-styling/scripts/tests/test_shadcn_add.py +266 -0
  528. package/skills/ck-ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -0
  529. package/skills/ck-ui-ux-pro-max/SKILL.md +227 -0
  530. package/skills/ck-ui-ux-pro-max/data/charts.csv +26 -0
  531. package/skills/ck-ui-ux-pro-max/data/colors.csv +97 -0
  532. package/skills/ck-ui-ux-pro-max/data/landing.csv +31 -0
  533. package/skills/ck-ui-ux-pro-max/data/products.csv +97 -0
  534. package/skills/ck-ui-ux-pro-max/data/prompts.csv +24 -0
  535. package/skills/ck-ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  536. package/skills/ck-ui-ux-pro-max/data/stacks/html-tailwind.csv +51 -0
  537. package/skills/ck-ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  538. package/skills/ck-ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  539. package/skills/ck-ui-ux-pro-max/data/stacks/react.csv +54 -0
  540. package/skills/ck-ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  541. package/skills/ck-ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  542. package/skills/ck-ui-ux-pro-max/data/stacks/vue.csv +50 -0
  543. package/skills/ck-ui-ux-pro-max/data/styles.csv +59 -0
  544. package/skills/ck-ui-ux-pro-max/data/typography.csv +58 -0
  545. package/skills/ck-ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  546. package/skills/ck-ui-ux-pro-max/scripts/core.py +236 -0
  547. package/skills/ck-ui-ux-pro-max/scripts/search.py +76 -0
  548. package/skills/ck-web-frameworks/SKILL.md +322 -0
  549. package/skills/ck-web-frameworks/references/nextjs-app-router.md +465 -0
  550. package/skills/ck-web-frameworks/references/nextjs-data-fetching.md +459 -0
  551. package/skills/ck-web-frameworks/references/nextjs-optimization.md +511 -0
  552. package/skills/ck-web-frameworks/references/nextjs-server-components.md +495 -0
  553. package/skills/ck-web-frameworks/references/remix-icon-integration.md +603 -0
  554. package/skills/ck-web-frameworks/references/turborepo-caching.md +551 -0
  555. package/skills/ck-web-frameworks/references/turborepo-pipelines.md +517 -0
  556. package/skills/ck-web-frameworks/references/turborepo-setup.md +542 -0
  557. package/skills/ck-web-frameworks/scripts/.coverage +0 -0
  558. package/skills/ck-web-frameworks/scripts/__init__.py +0 -0
  559. package/skills/ck-web-frameworks/scripts/nextjs_init.py +547 -0
  560. package/skills/ck-web-frameworks/scripts/requirements.txt +16 -0
  561. package/skills/ck-web-frameworks/scripts/tests/coverage-web.json +1 -0
  562. package/skills/ck-web-frameworks/scripts/tests/requirements.txt +3 -0
  563. package/skills/ck-web-frameworks/scripts/tests/test_nextjs_init.py +319 -0
  564. package/skills/ck-web-frameworks/scripts/tests/test_turborepo_migrate.py +374 -0
  565. package/skills/ck-web-frameworks/scripts/turborepo_migrate.py +394 -0
  566. package/src/commands/init.js +62 -31
  567. package/src/utils/paths.js +35 -4
  568. package/skills/code-review/SKILL.md +0 -86
  569. package/skills/code-review/references/code-review-reception.md +0 -76
  570. package/skills/code-review/references/verification-before-completion.md +0 -86
  571. package/skills/debugging/SKILL.md +0 -70
  572. package/skills/debugging/references/root-cause-tracing.md +0 -65
  573. package/skills/debugging/references/systematic-debugging.md +0 -74
  574. package/skills/debugging/references/verification.md +0 -74
  575. package/skills/docs-seeker/SKILL.md +0 -91
  576. package/skills/planning/SKILL.md +0 -82
  577. package/skills/planning/references/plan-organization.md +0 -88
  578. package/skills/planning/references/research-phase.md +0 -56
  579. package/skills/planning/references/solution-design.md +0 -65
  580. package/templates/repo/prompts/code.prompt.md +0 -40
  581. package/templates/repo/prompts/docs.prompt.md +0 -29
  582. package/templates/repo/prompts/fix.prompt.md +0 -35
  583. package/templates/repo/prompts/plan.prompt.md +0 -41
  584. package/templates/repo/prompts/review.prompt.md +0 -38
  585. package/templates/repo/prompts/test.prompt.md +0 -29
  586. /package/skills/{docs-seeker → ck-docs-seeker}/references/search-patterns.md +0 -0
  587. /package/skills/{docs-seeker → ck-docs-seeker}/references/source-evaluation.md +0 -0
  588. /package/templates/repo/.github/instructions/{backend.instructions.md → ck-backend.instructions.md} +0 -0
  589. /package/templates/repo/.github/instructions/{development.instructions.md → ck-development.instructions.md} +0 -0
  590. /package/templates/repo/.github/instructions/{frontend.instructions.md → ck-frontend.instructions.md} +0 -0
  591. /package/templates/repo/.github/instructions/{testing.instructions.md → ck-testing.instructions.md} +0 -0
  592. /package/templates/repo/.github/prompts/{code.prompt.md → ck-code.prompt.md} +0 -0
  593. /package/templates/repo/.github/prompts/{docs.prompt.md → ck-docs.prompt.md} +0 -0
  594. /package/templates/repo/.github/prompts/{fix.prompt.md → ck-fix.prompt.md} +0 -0
  595. /package/templates/repo/.github/prompts/{plan.prompt.md → ck-plan.prompt.md} +0 -0
  596. /package/templates/repo/.github/prompts/{review.prompt.md → ck-review.prompt.md} +0 -0
  597. /package/templates/repo/.github/prompts/{test.prompt.md → ck-test.prompt.md} +0 -0
  598. /package/templates/repo/.github/skills/{code-review → ck-code-review}/SKILL.md +0 -0
  599. /package/templates/repo/.github/skills/{debugging → ck-debugging}/SKILL.md +0 -0
@@ -0,0 +1,185 @@
1
+ # Payment Integration Skill
2
+
3
+ Comprehensive payment integration skill for SePay (Vietnamese payment gateway) and Polar (global SaaS monetization platform).
4
+
5
+ ## Features
6
+
7
+ ### SePay Integration
8
+ - Vietnamese payment gateway with VietQR, NAPAS, bank transfers, and cards
9
+ - 44+ supported banks
10
+ - Webhook verification with API Key/OAuth2 authentication
11
+ - QR code generation API
12
+ - Order-based virtual accounts
13
+ - SDK support for Node.js, PHP, and Laravel
14
+
15
+ ### Polar Integration
16
+ - Global SaaS monetization platform
17
+ - Merchant of Record (handles global tax compliance)
18
+ - Subscription management with trials, upgrades, downgrades
19
+ - Usage-based billing with events and meters
20
+ - Automated benefit delivery (GitHub repos, Discord roles, license keys, files)
21
+ - Customer self-service portal
22
+ - Multi-language SDKs (TypeScript, Python, PHP, Go)
23
+ - Framework adapters (Next.js, Laravel, Remix, etc.)
24
+
25
+ ## Structure
26
+
27
+ ```
28
+ payment-integration/
29
+ ├── SKILL.md # Main skill definition
30
+ ├── README.md # This file
31
+ ├── references/ # Progressive disclosure documentation
32
+ │ ├── sepay/ # SePay integration guides
33
+ │ │ ├── overview.md # Auth, capabilities, environments
34
+ │ │ ├── api.md # API endpoints and operations
35
+ │ │ ├── webhooks.md # Webhook setup and handling
36
+ │ │ ├── sdk.md # SDK usage (Node.js, PHP, Laravel)
37
+ │ │ ├── qr-codes.md # VietQR generation
38
+ │ │ └── best-practices.md # Security, patterns, monitoring
39
+ │ └── polar/ # Polar integration guides
40
+ │ ├── overview.md # Auth, MoR concept, environments
41
+ │ ├── products.md # Products, pricing, usage-based billing
42
+ │ ├── checkouts.md # Checkout flows and embedded checkout
43
+ │ ├── subscriptions.md # Lifecycle, upgrades, trials
44
+ │ ├── webhooks.md # Event handling and verification
45
+ │ ├── benefits.md # Automated benefit delivery
46
+ │ ├── sdk.md # Multi-language SDK usage
47
+ │ └── best-practices.md # Security, patterns, monitoring
48
+ └── scripts/ # Integration helper scripts
49
+ ├── sepay-webhook-verify.js # SePay webhook verification
50
+ ├── polar-webhook-verify.js # Polar webhook verification
51
+ ├── checkout-helper.js # Checkout session generation
52
+ ├── test-scripts.js # Test suite for all scripts
53
+ ├── package.json # Node.js package configuration
54
+ └── .env.example # Environment variable template
55
+ ```
56
+
57
+ ## Usage
58
+
59
+ ### Activate the Skill
60
+
61
+ Claude Code will automatically activate this skill when you mention payment integration, subscriptions, webhooks, or platform-specific terms (SePay, Polar).
62
+
63
+ ### Manual Activation
64
+
65
+ In conversations, simply reference the platforms:
66
+ - "Implement SePay payment integration"
67
+ - "Set up Polar subscriptions with usage-based billing"
68
+ - "Create webhook handler for payment notifications"
69
+
70
+ ### Using Scripts
71
+
72
+ **SePay Webhook Verification:**
73
+ ```bash
74
+ cd %USERPROFILE%/.claude/skills/payment-integration/scripts
75
+ node sepay-webhook-verify.js '{"id":12345,"gateway":"Vietcombank",...}'
76
+ ```
77
+
78
+ **Polar Webhook Verification:**
79
+ ```bash
80
+ node polar-webhook-verify.js '{"type":"order.paid","data":{...}}' base64secret
81
+ ```
82
+
83
+ **Checkout Helper:**
84
+ ```bash
85
+ # SePay
86
+ node checkout-helper.js sepay '{"orderInvoiceNumber":"ORD001","orderAmount":100000,...}'
87
+
88
+ # Polar
89
+ node checkout-helper.js polar '{"productPriceId":"price_xxx","successUrl":"https://..."}'
90
+ ```
91
+
92
+ **Run Tests:**
93
+ ```bash
94
+ npm test
95
+ ```
96
+
97
+ ## Environment Variables
98
+
99
+ Copy `.env.example` to `.env` and configure:
100
+
101
+ ```env
102
+ # SePay
103
+ SEPAY_MERCHANT_ID=SP-TEST-XXXXXXX
104
+ SEPAY_SECRET_KEY=spsk_test_xxxxxxxxxxxxx
105
+ SEPAY_ENV=sandbox
106
+ SEPAY_WEBHOOK_API_KEY=your_key
107
+
108
+ # Polar
109
+ POLAR_ACCESS_TOKEN=polar_xxxxxxxxxxxxxxxx
110
+ POLAR_SERVER=sandbox
111
+ POLAR_WEBHOOK_SECRET=base64_secret
112
+ ```
113
+
114
+ ## Progressive Disclosure
115
+
116
+ The skill uses progressive disclosure to minimize context usage:
117
+ 1. **SKILL.md** - Overview and quick reference (~99 lines)
118
+ 2. **references/** - Detailed guides loaded as needed (<100 lines each)
119
+ 3. **scripts/** - Executable helpers with embedded examples
120
+
121
+ Load only the references you need for your current task.
122
+
123
+ ## Platform Selection Guide
124
+
125
+ **Choose SePay for:**
126
+ - Vietnamese market targeting
127
+ - Bank transfer automation
128
+ - Local payment methods
129
+ - QR code payments (VietQR/NAPAS)
130
+ - Direct bank monitoring
131
+
132
+ **Choose Polar for:**
133
+ - Global market
134
+ - SaaS/subscription business
135
+ - Usage-based billing
136
+ - Automated benefit delivery
137
+ - Tax compliance (Merchant of Record)
138
+ - Customer self-service
139
+
140
+ ## Examples
141
+
142
+ ### SePay Payment Flow
143
+ 1. Load `references/sepay/overview.md` for authentication
144
+ 2. Load `references/sepay/sdk.md` for integration
145
+ 3. Use `checkout-helper.js` to generate payment form
146
+ 4. Load `references/sepay/webhooks.md` for notifications
147
+ 5. Use `sepay-webhook-verify.js` to verify authenticity
148
+
149
+ ### Polar Subscription Flow
150
+ 1. Load `references/polar/overview.md` for setup
151
+ 2. Load `references/polar/products.md` for pricing
152
+ 3. Load `references/polar/checkouts.md` for payment
153
+ 4. Load `references/polar/subscriptions.md` for lifecycle
154
+ 5. Load `references/polar/webhooks.md` for events
155
+ 6. Load `references/polar/benefits.md` for automation
156
+
157
+ ## Testing
158
+
159
+ All scripts include comprehensive test coverage:
160
+ - SePay webhook verification (with/without authentication)
161
+ - Polar webhook signature validation
162
+ - Checkout configuration generation
163
+ - Error handling and edge cases
164
+
165
+ Run `npm test` in the scripts directory to verify functionality.
166
+
167
+ ## Support
168
+
169
+ ### SePay
170
+ - Docs: https://developer.sepay.vn/en
171
+ - Email: info@sepay.vn
172
+ - Hotline: 02873059589
173
+
174
+ ### Polar
175
+ - Docs: https://polar.sh/docs
176
+ - API Reference: https://polar.sh/docs/api-reference
177
+ - GitHub: https://github.com/polarsource/polar
178
+
179
+ ## License
180
+
181
+ MIT
182
+
183
+ ## Version
184
+
185
+ 1.0.0
@@ -0,0 +1,116 @@
1
+ ---
2
+ name: 'ck-payment-integration'
3
+ description: 'Implement payment integrations with SePay (Vietnamese payment gateway with VietQR, bank transfers, cards) and Polar (global SaaS monetization platform with subscriptions, usage-based billing, automated benefits). Use when integrating payment processing, implementing checkout flows, managing subscriptions, handling webhooks, processing bank transfers, generating QR codes, automating benefit delivery, or building billing systems. Supports authentication (API keys, OAuth2), product management, customer portals, tax compliance (Polar as MoR), and comprehensive SDK integrations (Node.js, PHP, Python, Go, Laravel, Next.js).'
4
+ ---
5
+
6
+ # Payment Integration
7
+
8
+ Implement payment processing with SePay (Vietnamese payments) and Polar (global SaaS monetization).
9
+
10
+ ## When to Use
11
+
12
+ Use when implementing:
13
+ - Payment gateway integration (checkout, processing)
14
+ - Subscription management (trials, upgrades, billing)
15
+ - Webhook handling (payment notifications)
16
+ - QR code payments (VietQR, NAPAS)
17
+ - Usage-based billing (metering, credits)
18
+ - Automated benefit delivery (licenses, GitHub access, Discord roles)
19
+ - Customer portals (self-service management)
20
+ - Bank transfer automation (Vietnamese banks)
21
+ - Product catalogs with pricing
22
+
23
+ ## Platform Selection
24
+
25
+ **Choose SePay for:**
26
+ - Vietnamese market (VND currency)
27
+ - Bank transfer automation
28
+ - VietQR/NAPAS payments
29
+ - Local payment methods
30
+ - Direct bank account monitoring
31
+
32
+ **Choose Polar for:**
33
+ - Global SaaS products
34
+ - Subscription management
35
+ - Usage-based billing
36
+ - Automated benefits (GitHub, Discord, licenses)
37
+ - Merchant of Record (tax compliance)
38
+ - Digital product sales
39
+
40
+ ## Quick Reference
41
+
42
+ ### SePay Integration
43
+ - **Overview & Auth**: `references/sepay/overview.md` - Platform capabilities, API/OAuth2 auth, supported banks
44
+ - **API Reference**: `references/sepay/api.md` - Endpoints, transactions, bank accounts, virtual accounts
45
+ - **Webhooks**: `references/sepay/webhooks.md` - Setup, payload structure, verification, retry logic
46
+ - **SDK Usage**: `references/sepay/sdk.md` - Node.js, PHP, Laravel implementations
47
+ - **QR Codes**: `references/sepay/qr-codes.md` - VietQR generation, templates, integration
48
+ - **Best Practices**: `references/sepay/best-practices.md` - Security, patterns, monitoring
49
+
50
+ ### Polar Integration
51
+ - **Overview & Auth**: `references/polar/overview.md` - Platform capabilities, authentication methods, MoR concept
52
+ - **Products & Pricing**: `references/polar/products.md` - Product types, pricing models, usage-based billing
53
+ - **Checkouts**: `references/polar/checkouts.md` - Checkout flows, embedded checkout, links
54
+ - **Subscriptions**: `references/polar/subscriptions.md` - Lifecycle, upgrades, downgrades, trials
55
+ - **Webhooks**: `references/polar/webhooks.md` - Event types, signature verification, monitoring
56
+ - **Benefits**: `references/polar/benefits.md` - Automated delivery (GitHub, Discord, licenses, files)
57
+ - **SDK Usage**: `references/polar/sdk.md` - TypeScript, Python, PHP, Go, framework adapters
58
+ - **Best Practices**: `references/polar/best-practices.md` - Security, patterns, monitoring
59
+
60
+ ### Integration Scripts
61
+ - **SePay Webhook Verification**: `scripts/sepay-webhook-verify.js` - Verify SePay webhook authenticity
62
+ - **Polar Webhook Verification**: `scripts/polar-webhook-verify.js` - Verify Polar webhook signatures
63
+ - **Checkout Helper**: `scripts/checkout-helper.js` - Generate checkout sessions for both platforms
64
+
65
+ ## Implementation Workflow
66
+
67
+ ### SePay Implementation
68
+ 1. Load `references/sepay/overview.md` for auth setup
69
+ 2. Load `references/sepay/api.md` or `references/sepay/sdk.md` for integration
70
+ 3. Load `references/sepay/webhooks.md` for payment notifications
71
+ 4. Use `scripts/sepay-webhook-verify.js` for webhook verification
72
+ 5. Load `references/sepay/best-practices.md` for production readiness
73
+
74
+ ### Polar Implementation
75
+ 1. Load `references/polar/overview.md` for auth and concepts
76
+ 2. Load `references/polar/products.md` for product setup
77
+ 3. Load `references/polar/checkouts.md` for payment flows
78
+ 4. Load `references/polar/webhooks.md` for event handling
79
+ 5. Use `scripts/polar-webhook-verify.js` for webhook verification
80
+ 6. Load `references/polar/benefits.md` if automating delivery
81
+ 7. Load `references/polar/best-practices.md` for production readiness
82
+
83
+ ## Key Capabilities
84
+
85
+ **SePay:**
86
+ - Payment gateway (QR, bank transfer, cards)
87
+ - Bank account monitoring with webhooks
88
+ - Order-based virtual accounts
89
+ - VietQR generation API
90
+ - 44+ Vietnamese banks supported
91
+ - Rate limit: 2 calls/second
92
+
93
+ **Polar:**
94
+ - Merchant of Record (global tax compliance)
95
+ - Subscription lifecycle management
96
+ - Usage-based billing (events, meters)
97
+ - Automated benefits (GitHub, Discord, licenses)
98
+ - Customer portal (self-service)
99
+ - Multi-language SDKs
100
+ - Rate limit: 300 req/min
101
+
102
+ ## Instructions
103
+
104
+ When implementing payment integration:
105
+
106
+ 1. **Identify platform** based on requirements (Vietnamese vs global, payment types)
107
+ 2. **Load relevant references** progressively as needed
108
+ 3. **Implement authentication** using platform-specific methods
109
+ 4. **Set up products/pricing** according to business model
110
+ 5. **Implement checkout flow** (hosted, embedded, or API-driven)
111
+ 6. **Configure webhooks** with proper verification
112
+ 7. **Handle payment events** (success, failure, refund)
113
+ 8. **Test thoroughly** in sandbox before production
114
+ 9. **Monitor and optimize** using platform analytics
115
+
116
+ Load only the references needed for current implementation step to maintain context efficiency.
@@ -0,0 +1,396 @@
1
+ # Polar Benefits
2
+
3
+ Automated benefit delivery system for digital products.
4
+
5
+ ## Philosophy
6
+
7
+ Configure once, automatic delivery. Polar handles granting and revoking based on subscription state.
8
+
9
+ ## Benefit Types
10
+
11
+ ### 1. License Keys
12
+
13
+ **Auto-generate unique keys with customizable branding.**
14
+
15
+ **Create:**
16
+ ```typescript
17
+ const benefit = await polar.benefits.create({
18
+ type: "license_keys",
19
+ organization_id: "org_xxx",
20
+ description: "Software License",
21
+ properties: {
22
+ prefix: "MYAPP",
23
+ expires: false,
24
+ activations: 1,
25
+ limit_usage: false
26
+ }
27
+ });
28
+ ```
29
+
30
+ **Validation API (unauthenticated):**
31
+ ```typescript
32
+ const validation = await polar.licenses.validate({
33
+ key: "MYAPP-XXXX-XXXX-XXXX",
34
+ organization_id: "org_xxx"
35
+ });
36
+
37
+ if (validation.valid) {
38
+ // Grant access
39
+ }
40
+ ```
41
+
42
+ **Activation/Deactivation:**
43
+ ```typescript
44
+ await polar.licenses.activate(licenseKey, {
45
+ label: "User's MacBook Pro"
46
+ });
47
+
48
+ await polar.licenses.deactivate(activationId);
49
+ ```
50
+
51
+ **Auto-revoke:** On subscription cancellation or refund
52
+
53
+ ### 2. GitHub Repository Access
54
+
55
+ **Auto-invite to private repos with permission management.**
56
+
57
+ **Create:**
58
+ ```typescript
59
+ const benefit = await polar.benefits.create({
60
+ type: "github_repository",
61
+ organization_id: "org_xxx",
62
+ description: "Access to private repo",
63
+ properties: {
64
+ repository_owner: "myorg",
65
+ repository_name: "private-repo",
66
+ permission: "pull" // or "push", "admin"
67
+ }
68
+ });
69
+ ```
70
+
71
+ **Multiple Repos:**
72
+ ```typescript
73
+ {
74
+ properties: {
75
+ repositories: [
76
+ { owner: "myorg", name: "repo1", permission: "pull" },
77
+ { owner: "myorg", name: "repo2", permission: "push" }
78
+ ]
79
+ }
80
+ }
81
+ ```
82
+
83
+ **Behavior:**
84
+ - Auto-invite on subscription activation
85
+ - Permission managed by Polar
86
+ - Auto-revoke on cancellation
87
+
88
+ ### 3. Discord Access
89
+
90
+ **Server invites and role assignment.**
91
+
92
+ **Create:**
93
+ ```typescript
94
+ const benefit = await polar.benefits.create({
95
+ type: "discord",
96
+ organization_id: "org_xxx",
97
+ description: "Premium Discord role",
98
+ properties: {
99
+ guild_id: "123456789",
100
+ role_id: "987654321"
101
+ }
102
+ });
103
+ ```
104
+
105
+ **Multiple Roles:**
106
+ ```typescript
107
+ {
108
+ properties: {
109
+ guild_id: "123456789",
110
+ roles: [
111
+ { role_id: "role1", name: "Premium" },
112
+ { role_id: "role2", name: "Supporter" }
113
+ ]
114
+ }
115
+ }
116
+ ```
117
+
118
+ **Requirements:**
119
+ - Polar Discord app must be added to server
120
+ - Configure in Polar dashboard
121
+
122
+ **Behavior:**
123
+ - Auto-invite to server
124
+ - Assign roles automatically
125
+ - Remove roles on cancellation
126
+
127
+ ### 4. Downloadable Files
128
+
129
+ **Secure file delivery up to 10GB each.**
130
+
131
+ **Create:**
132
+ ```typescript
133
+ const benefit = await polar.benefits.create({
134
+ type: "downloadable",
135
+ organization_id: "org_xxx",
136
+ description: "Premium templates",
137
+ properties: {
138
+ files: [
139
+ { name: "template1.zip", size: 5000000 },
140
+ { name: "template2.psd", size: 10000000 }
141
+ ]
142
+ }
143
+ });
144
+ ```
145
+
146
+ **Upload Files:**
147
+ - Via Polar dashboard
148
+ - Secure storage
149
+ - Access control
150
+
151
+ **Customer Access:**
152
+ - Download links in customer portal
153
+ - Secure, time-limited URLs
154
+ - Multiple files supported
155
+
156
+ ### 5. Meter Credits
157
+
158
+ **Pre-purchased usage for usage-based billing.**
159
+
160
+ **Create:**
161
+ ```typescript
162
+ const benefit = await polar.benefits.create({
163
+ type: "custom",
164
+ organization_id: "org_xxx",
165
+ description: "10,000 API credits",
166
+ properties: {
167
+ meter_id: "meter_xxx",
168
+ credits: 10000
169
+ }
170
+ });
171
+ ```
172
+
173
+ **Automatic Application:**
174
+ - Credits added on subscription start
175
+ - Balance tracked via API
176
+ - Depletes with usage
177
+
178
+ **Balance Check:**
179
+ ```typescript
180
+ const balance = await polar.meters.getBalance({
181
+ customer_id: "cust_xxx",
182
+ meter_id: "meter_xxx"
183
+ });
184
+ ```
185
+
186
+ ### 6. Custom Benefits
187
+
188
+ **Flexible placeholder for manual fulfillment.**
189
+
190
+ **Create:**
191
+ ```typescript
192
+ const benefit = await polar.benefits.create({
193
+ type: "custom",
194
+ organization_id: "org_xxx",
195
+ description: "Priority support via email",
196
+ properties: {
197
+ note: "Email support@example.com with your order ID for priority support"
198
+ }
199
+ });
200
+ ```
201
+
202
+ **Use Cases:**
203
+ - Cal.com booking links
204
+ - Email support access
205
+ - Community forum access
206
+ - Manual onboarding
207
+
208
+ ## Benefit Grants
209
+
210
+ **Link between customer and benefit.**
211
+
212
+ ### States
213
+ - `created` - Grant created
214
+ - `active` - Benefit delivered
215
+ - `revoked` - Access removed
216
+
217
+ ### Webhooks
218
+ - `benefit_grant.created` - Grant created
219
+ - `benefit_grant.updated` - Status changed
220
+ - `benefit_grant.revoked` - Access revoked
221
+
222
+ ### Auto-revoke Triggers
223
+ - Subscription canceled
224
+ - Subscription revoked
225
+ - Refund processed
226
+ - Product changed (if benefit not on new product)
227
+
228
+ ### Querying Grants
229
+ ```typescript
230
+ const grants = await polar.benefitGrants.list({
231
+ customer_id: "cust_xxx",
232
+ benefit_id: "benefit_xxx",
233
+ is_granted: true
234
+ });
235
+ ```
236
+
237
+ ## Attaching Benefits to Products
238
+
239
+ ### Via API
240
+ ```typescript
241
+ await polar.products.updateBenefits(productId, {
242
+ benefits: [benefitId1, benefitId2, benefitId3]
243
+ });
244
+ ```
245
+
246
+ ### Via Dashboard
247
+ 1. Navigate to product
248
+ 2. Benefits tab
249
+ 3. Select benefits to attach
250
+ 4. Save
251
+
252
+ ### Order
253
+ - Benefits granted in order attached
254
+ - Customers see in that order
255
+ - Reorder via dashboard or API
256
+
257
+ ## Customer Experience
258
+
259
+ ### Viewing Benefits
260
+ - Customer portal shows all active benefits
261
+ - Clear instructions for each type
262
+ - Download links for files
263
+ - License keys displayed
264
+
265
+ ### Accessing Benefits
266
+ ```typescript
267
+ // Generate customer portal link
268
+ const session = await polar.customerSessions.create({
269
+ external_customer_id: userId
270
+ });
271
+
272
+ // Customer sees:
273
+ // - Active subscriptions
274
+ // - Granted benefits
275
+ // - Download links
276
+ // - License keys
277
+ // - Instructions
278
+ ```
279
+
280
+ ## Implementation Patterns
281
+
282
+ ### License Key Validation
283
+ ```typescript
284
+ // In your application
285
+ async function validateLicense(key) {
286
+ try {
287
+ const result = await polar.licenses.validate({
288
+ key: key,
289
+ organization_id: process.env.POLAR_ORG_ID
290
+ });
291
+
292
+ if (!result.valid) {
293
+ return { valid: false, reason: 'Invalid license' };
294
+ }
295
+
296
+ if (result.limit_usage && result.usage >= result.limit_usage) {
297
+ return { valid: false, reason: 'Usage limit exceeded' };
298
+ }
299
+
300
+ return { valid: true, customer: result.customer };
301
+ } catch (error) {
302
+ console.error('License validation failed:', error);
303
+ return { valid: false, reason: 'Validation error' };
304
+ }
305
+ }
306
+ ```
307
+
308
+ ### GitHub Access Check
309
+ ```typescript
310
+ // Listen to benefit grant webhook
311
+ app.post('/webhook/polar', async (req, res) => {
312
+ const event = validateEvent(req.body, req.headers, secret);
313
+
314
+ if (event.type === 'benefit_grant.created') {
315
+ const grant = event.data;
316
+
317
+ if (grant.benefit.type === 'github_repository') {
318
+ // Update user's GitHub access in your system
319
+ await updateGitHubAccess(grant.customer.external_id, true);
320
+ }
321
+ }
322
+
323
+ res.json({ received: true });
324
+ });
325
+ ```
326
+
327
+ ### Discord Role Sync
328
+ ```typescript
329
+ // Monitor benefit grants
330
+ if (event.type === 'benefit_grant.created') {
331
+ const grant = event.data;
332
+
333
+ if (grant.benefit.type === 'discord') {
334
+ // Notify user to connect Discord
335
+ await sendDiscordInvite(grant.customer.email);
336
+ }
337
+ }
338
+
339
+ if (event.type === 'benefit_grant.revoked') {
340
+ const grant = event.data;
341
+
342
+ if (grant.benefit.type === 'discord') {
343
+ // Roles removed automatically by Polar
344
+ await notifyRoleRemoval(grant.customer.external_id);
345
+ }
346
+ }
347
+ ```
348
+
349
+ ## Best Practices
350
+
351
+ 1. **Benefit Selection:**
352
+ - Choose appropriate benefit types
353
+ - Consider automation capabilities
354
+ - Plan for revocation scenarios
355
+
356
+ 2. **License Keys:**
357
+ - Set appropriate activation limits
358
+ - Monitor usage patterns
359
+ - Provide clear validation errors
360
+ - Allow customers to manage activations
361
+
362
+ 3. **GitHub Access:**
363
+ - Set minimum required permissions
364
+ - Use separate repos for different tiers
365
+ - Monitor repository access
366
+ - Communicate access removal
367
+
368
+ 4. **Discord Roles:**
369
+ - Clear role hierarchy
370
+ - Meaningful role names
371
+ - Separate roles per product tier
372
+ - Welcome messages for new members
373
+
374
+ 5. **Files:**
375
+ - Organize files clearly
376
+ - Provide README/instructions
377
+ - Keep files updated
378
+ - Version control important files
379
+
380
+ 6. **Credits:**
381
+ - Clear credit value communication
382
+ - Usage tracking and display
383
+ - Alerts near depletion
384
+ - Easy credit top-up
385
+
386
+ 7. **Custom Benefits:**
387
+ - Clear, actionable instructions
388
+ - Provide contact information
389
+ - Set expectations for timing
390
+ - Track manual fulfillment
391
+
392
+ 8. **Customer Communication:**
393
+ - Welcome email with benefit access info
394
+ - Instructions for each benefit type
395
+ - Support contact for issues
396
+ - Revocation warnings before cancellation