@cometchat/skills 4.4.2 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (518) hide show
  1. package/.claude-plugin/marketplace.json +55 -0
  2. package/.claude-plugin/plugin.json +14 -0
  3. package/CHANGELOG.md +44 -0
  4. package/LICENSE +21 -0
  5. package/MIGRATING.md +187 -0
  6. package/README.md +52 -156
  7. package/RULES.md +125 -0
  8. package/bin/cometchat-skills.mjs +1280 -0
  9. package/bin/legacy-skills.json +95 -0
  10. package/catalogs/android-v6.json +1646 -0
  11. package/catalogs/flutter-v6.json +651 -0
  12. package/catalogs/ios-v5.json +1383 -0
  13. package/catalogs/rn-calls-v5.json +134 -0
  14. package/catalogs/rn-calls-v5.symbols.txt +58 -0
  15. package/catalogs/rn-sdk-v4.json +672 -0
  16. package/catalogs/rn-v5.json +449 -0
  17. package/catalogs/rn-v5.symbols.txt +216 -0
  18. package/catalogs/sdk-android-v5.json +514 -0
  19. package/contracts.android-calls-v5.json +122 -0
  20. package/contracts.android-v6.json +135 -0
  21. package/contracts.angular-v5.json +694 -0
  22. package/contracts.flutter-calls-v5.json +77 -0
  23. package/contracts.flutter-v6.json +126 -0
  24. package/contracts.ios-calls-v5.json +67 -0
  25. package/contracts.ios-v5.json +436 -0
  26. package/contracts.json +82 -0
  27. package/contracts.rn-calls-v5.json +77 -0
  28. package/contracts.rn-v5.json +727 -0
  29. package/contracts.sdk-android-v5.json +15 -0
  30. package/contracts.web-calls-v5.json +45 -0
  31. package/features.android-calls-v5.json +246 -0
  32. package/features.android-v6.json +65 -0
  33. package/features.angular-v5.json +521 -0
  34. package/features.flutter-calls-v5.json +286 -0
  35. package/features.flutter-v6.json +484 -0
  36. package/features.ios-calls-v5.json +236 -0
  37. package/features.ios-v5.json +573 -0
  38. package/features.json +61 -0
  39. package/features.rn-calls-v5.json +187 -0
  40. package/features.rn-v5.json +614 -0
  41. package/features.sdk-android-v5.json +40 -0
  42. package/features.sdk-jsv4.json +24 -0
  43. package/features.web-calls-v5.json +108 -0
  44. package/package.json +156 -74
  45. package/peers.yaml +355 -0
  46. package/registry/README.md +31 -0
  47. package/registry/android-calls-v5.json +94 -0
  48. package/registry/android-v6.json +177 -0
  49. package/registry/angular-v5.json +154 -0
  50. package/registry/flutter-calls-v5.json +94 -0
  51. package/registry/flutter-v6.json +159 -0
  52. package/registry/ios-calls-v5.json +99 -0
  53. package/registry/ios-v5.json +152 -0
  54. package/registry/rn-calls-v5.json +99 -0
  55. package/registry/rn-v5.json +169 -0
  56. package/registry/sdk-android-v5.json +93 -0
  57. package/registry/sdk-jsv4.json +93 -0
  58. package/registry/web-calls-v5.json +94 -0
  59. package/registry/web-v7.json +154 -0
  60. package/skills/cometchat/SKILL.md +47 -2096
  61. package/skills/cometchat-a11y/SKILL.md +44 -472
  62. package/skills/cometchat-analytics/SKILL.md +61 -0
  63. package/skills/cometchat-android-v5-calls-sdk/SKILL.md +206 -0
  64. package/skills/cometchat-android-v5-calls-sdk/references/build-truth.md +63 -0
  65. package/skills/cometchat-android-v5-calls-sdk/references/docs-map.md +119 -0
  66. package/skills/cometchat-android-v5-calls-sdk/references/method-map.md +53 -0
  67. package/skills/cometchat-android-v5-calls-sdk/references/pitfalls.md +72 -0
  68. package/skills/cometchat-android-v5-calls-sdk/references/ringing.md +92 -0
  69. package/skills/cometchat-android-v5-calls-sdk/references/user-switch.md +90 -0
  70. package/skills/cometchat-android-v5-sdk/SKILL.md +127 -0
  71. package/skills/cometchat-android-v5-sdk/references/app-surface.md +88 -0
  72. package/skills/cometchat-android-v5-sdk/references/docs-map.md +91 -0
  73. package/skills/cometchat-android-v6-builder-settings/SKILL.md +51 -137
  74. package/skills/cometchat-android-v6-calls/SKILL.md +128 -413
  75. package/skills/cometchat-android-v6-compose-components/SKILL.md +84 -194
  76. package/skills/cometchat-android-v6-compose-customization/SKILL.md +66 -411
  77. package/skills/cometchat-android-v6-compose-placement/SKILL.md +154 -237
  78. package/skills/cometchat-android-v6-core/SKILL.md +236 -672
  79. package/skills/cometchat-android-v6-core/references/anti-patterns.md +31 -0
  80. package/skills/cometchat-android-v6-core/references/component-props.md +168 -0
  81. package/skills/cometchat-android-v6-core/references/docs-map.md +153 -0
  82. package/skills/cometchat-android-v6-core/references/layout.md +112 -0
  83. package/skills/cometchat-android-v6-core/references/lifecycle.md +75 -0
  84. package/skills/cometchat-android-v6-core/references/setup-credentials.md +105 -0
  85. package/skills/cometchat-android-v6-core/references/troubleshooting.md +36 -0
  86. package/skills/cometchat-android-v6-events/SKILL.md +46 -184
  87. package/skills/cometchat-android-v6-extensions/SKILL.md +39 -179
  88. package/skills/cometchat-android-v6-features/SKILL.md +74 -143
  89. package/skills/cometchat-android-v6-kotlin-components/SKILL.md +75 -193
  90. package/skills/cometchat-android-v6-kotlin-customization/SKILL.md +67 -419
  91. package/skills/cometchat-android-v6-kotlin-placement/SKILL.md +77 -223
  92. package/skills/cometchat-android-v6-migration/SKILL.md +67 -378
  93. package/skills/cometchat-android-v6-production/SKILL.md +41 -179
  94. package/skills/cometchat-android-v6-push/SKILL.md +39 -289
  95. package/skills/cometchat-android-v6-testing/SKILL.md +50 -265
  96. package/skills/cometchat-android-v6-troubleshooting/SKILL.md +70 -254
  97. package/skills/cometchat-angular-v5-calls/SKILL.md +193 -0
  98. package/skills/cometchat-angular-v5-components/SKILL.md +131 -0
  99. package/skills/cometchat-angular-v5-components/references/catalog.md +111 -0
  100. package/skills/cometchat-angular-v5-components/references/host-composed.md +46 -0
  101. package/skills/cometchat-angular-v5-core/SKILL.md +300 -0
  102. package/skills/cometchat-angular-v5-core/references/anti-patterns.md +49 -0
  103. package/skills/cometchat-angular-v5-core/references/component-props.md +55 -0
  104. package/skills/cometchat-angular-v5-core/references/dependencies.md +66 -0
  105. package/skills/cometchat-angular-v5-core/references/docs-map.md +132 -0
  106. package/skills/cometchat-angular-v5-core/references/layout.md +64 -0
  107. package/skills/cometchat-angular-v5-core/references/lifecycle.md +202 -0
  108. package/skills/cometchat-angular-v5-core/references/setup-credentials.md +137 -0
  109. package/skills/cometchat-angular-v5-core/references/theming.md +70 -0
  110. package/skills/cometchat-angular-v5-core/references/troubleshooting.md +27 -0
  111. package/skills/cometchat-angular-v5-customization/SKILL.md +94 -0
  112. package/skills/cometchat-angular-v5-features/SKILL.md +107 -0
  113. package/skills/cometchat-angular-v5-features/references/custom-messages.md +133 -0
  114. package/skills/cometchat-angular-v5-features/references/formatters.md +28 -0
  115. package/skills/cometchat-angular-v5-features/references/host-composed-extensions.md +85 -0
  116. package/skills/cometchat-angular-v5-migration/SKILL.md +40 -0
  117. package/skills/cometchat-angular-v5-migration/references/migration-guide.md +165 -0
  118. package/skills/cometchat-angular-v5-patterns/SKILL.md +107 -0
  119. package/skills/cometchat-angular-v5-placement/SKILL.md +133 -0
  120. package/skills/cometchat-angular-v5-placement/references/combined-app.md +174 -0
  121. package/skills/cometchat-angular-v5-placement/references/core-surface.md +199 -0
  122. package/skills/cometchat-angular-v5-production/SKILL.md +102 -0
  123. package/skills/cometchat-angular-v5-push/SKILL.md +61 -0
  124. package/skills/cometchat-angular-v5-testing/SKILL.md +112 -0
  125. package/skills/cometchat-angular-v5-troubleshooting/SKILL.md +96 -0
  126. package/skills/cometchat-audit/SKILL.md +61 -0
  127. package/skills/cometchat-compliance/SKILL.md +63 -0
  128. package/skills/cometchat-flutter-v5-sdk/SKILL.md +188 -0
  129. package/skills/cometchat-flutter-v5-sdk/references/doc-corrections.md +55 -0
  130. package/skills/cometchat-flutter-v5-sdk/references/docs-map.md +211 -0
  131. package/skills/cometchat-flutter-v5-sdk/references/platform-notes.md +48 -0
  132. package/skills/cometchat-flutter-v5-sdk/references/transcription.md +87 -0
  133. package/skills/cometchat-flutter-v6-calls/SKILL.md +75 -389
  134. package/skills/cometchat-flutter-v6-components/SKILL.md +88 -361
  135. package/skills/cometchat-flutter-v6-core/SKILL.md +154 -593
  136. package/skills/cometchat-flutter-v6-core/references/anti-patterns.md +55 -0
  137. package/skills/cometchat-flutter-v6-core/references/docs-map.md +143 -0
  138. package/skills/cometchat-flutter-v6-core/references/layout.md +45 -0
  139. package/skills/cometchat-flutter-v6-core/references/lifecycle.md +87 -0
  140. package/skills/cometchat-flutter-v6-core/references/setup-credentials.md +84 -0
  141. package/skills/cometchat-flutter-v6-core/references/troubleshooting.md +26 -0
  142. package/skills/cometchat-flutter-v6-customization/SKILL.md +70 -712
  143. package/skills/cometchat-flutter-v6-events/SKILL.md +79 -174
  144. package/skills/cometchat-flutter-v6-features/SKILL.md +55 -394
  145. package/skills/cometchat-flutter-v6-migration/SKILL.md +68 -367
  146. package/skills/cometchat-flutter-v6-migration/references/migration-guide.md +132 -0
  147. package/skills/cometchat-flutter-v6-patterns/SKILL.md +61 -0
  148. package/skills/cometchat-flutter-v6-placement/SKILL.md +94 -381
  149. package/skills/cometchat-flutter-v6-production/SKILL.md +59 -615
  150. package/skills/cometchat-flutter-v6-push/SKILL.md +46 -455
  151. package/skills/cometchat-flutter-v6-testing/SKILL.md +68 -299
  152. package/skills/cometchat-flutter-v6-troubleshooting/SKILL.md +54 -878
  153. package/skills/cometchat-i18n/SKILL.md +35 -404
  154. package/skills/cometchat-ios-calls/SKILL.md +112 -563
  155. package/skills/cometchat-ios-components/SKILL.md +44 -834
  156. package/skills/cometchat-ios-core/SKILL.md +182 -1068
  157. package/skills/cometchat-ios-core/references/anti-patterns.md +113 -0
  158. package/skills/cometchat-ios-core/references/docs-map.md +124 -0
  159. package/skills/cometchat-ios-core/references/install.md +23 -0
  160. package/skills/cometchat-ios-core/references/layout.md +219 -0
  161. package/skills/cometchat-ios-core/references/setup-credentials.md +197 -0
  162. package/skills/cometchat-ios-core/references/swiftui.md +91 -0
  163. package/skills/cometchat-ios-core/references/troubleshooting.md +100 -0
  164. package/skills/cometchat-ios-customization/SKILL.md +33 -968
  165. package/skills/cometchat-ios-features/SKILL.md +29 -738
  166. package/skills/cometchat-ios-migration/SKILL.md +39 -0
  167. package/skills/cometchat-ios-placement/SKILL.md +51 -729
  168. package/skills/cometchat-ios-production/SKILL.md +67 -723
  169. package/skills/cometchat-ios-push/SKILL.md +24 -602
  170. package/skills/cometchat-ios-testing/SKILL.md +36 -355
  171. package/skills/cometchat-ios-troubleshooting/SKILL.md +31 -989
  172. package/skills/cometchat-ios-v5-sdk/SKILL.md +161 -0
  173. package/skills/cometchat-ios-v5-sdk/references/docs-map.md +326 -0
  174. package/skills/cometchat-js-v5-sdk/SKILL.md +95 -0
  175. package/skills/cometchat-js-v5-sdk/references/docs-map.md +114 -0
  176. package/skills/cometchat-migrate-from-getstream/SKILL.md +65 -0
  177. package/skills/cometchat-migrate-from-getstream/references/concept-map.md +98 -0
  178. package/skills/cometchat-migrate-from-getstream/references/data-migration.md +74 -0
  179. package/skills/cometchat-migrate-from-getstream/references/feature-map.md +108 -0
  180. package/skills/cometchat-migrate-from-getstream/references/inventory.md +82 -0
  181. package/skills/cometchat-migrate-from-getstream/references/native-build.md +9 -0
  182. package/skills/cometchat-migrate-from-getstream/references/report-template.md +59 -0
  183. package/skills/cometchat-migrate-from-sendbird/SKILL.md +64 -0
  184. package/skills/cometchat-migrate-from-sendbird/references/concept-map.md +99 -0
  185. package/skills/cometchat-migrate-from-sendbird/references/data-migration.md +74 -0
  186. package/skills/cometchat-migrate-from-sendbird/references/feature-map.md +104 -0
  187. package/skills/cometchat-migrate-from-sendbird/references/inventory.md +86 -0
  188. package/skills/cometchat-migrate-from-sendbird/references/native-build.md +10 -0
  189. package/skills/cometchat-migrate-from-sendbird/references/report-template.md +59 -0
  190. package/skills/cometchat-migrate-from-twilio/SKILL.md +52 -0
  191. package/skills/cometchat-migrate-from-twilio/references/concept-map.md +49 -0
  192. package/skills/cometchat-migrate-from-twilio/references/data-migration.md +50 -0
  193. package/skills/cometchat-migrate-from-twilio/references/feature-map.md +27 -0
  194. package/skills/cometchat-migrate-from-twilio/references/inventory.md +53 -0
  195. package/skills/cometchat-migrate-from-twilio/references/report-template.md +52 -0
  196. package/skills/cometchat-moderation/SKILL.md +58 -0
  197. package/skills/cometchat-onboarding/SKILL.md +92 -0
  198. package/skills/cometchat-onboarding/references/archetypes.md +51 -0
  199. package/skills/cometchat-onboarding/references/calling-first.md +77 -0
  200. package/skills/cometchat-onboarding/references/not-in-this-pack.md +8 -0
  201. package/skills/cometchat-onboarding/references/plan-artifact.md +133 -0
  202. package/skills/cometchat-onboarding/references/platforms.md +105 -0
  203. package/skills/cometchat-react-native-bare-patterns/SKILL.md +120 -0
  204. package/skills/cometchat-react-native-calls/SKILL.md +200 -0
  205. package/skills/cometchat-react-native-components/SKILL.md +142 -0
  206. package/skills/cometchat-react-native-core/SKILL.md +335 -0
  207. package/skills/cometchat-react-native-core/references/anti-patterns.md +79 -0
  208. package/skills/cometchat-react-native-core/references/component-props.md +105 -0
  209. package/skills/cometchat-react-native-core/references/dependencies.md +62 -0
  210. package/skills/cometchat-react-native-core/references/docs-map.md +127 -0
  211. package/skills/cometchat-react-native-core/references/layout.md +61 -0
  212. package/skills/cometchat-react-native-core/references/lifecycle.md +64 -0
  213. package/skills/cometchat-react-native-core/references/setup-credentials.md +39 -0
  214. package/skills/cometchat-react-native-customization/SKILL.md +198 -0
  215. package/skills/cometchat-react-native-expo-patterns/SKILL.md +116 -0
  216. package/skills/cometchat-react-native-features/SKILL.md +122 -0
  217. package/skills/cometchat-react-native-migration/SKILL.md +103 -0
  218. package/skills/cometchat-react-native-placement/SKILL.md +158 -0
  219. package/skills/cometchat-react-native-production/SKILL.md +79 -0
  220. package/skills/cometchat-react-native-push/SKILL.md +88 -0
  221. package/skills/cometchat-react-native-sdk/SKILL.md +133 -0
  222. package/skills/cometchat-react-native-sdk/references/method-map.md +239 -0
  223. package/skills/cometchat-react-native-sdk/references/page-map.md +96 -0
  224. package/skills/cometchat-react-native-testing/SKILL.md +94 -0
  225. package/skills/cometchat-react-native-troubleshooting/SKILL.md +174 -0
  226. package/skills/cometchat-react-native-v5-sdk/SKILL.md +150 -0
  227. package/skills/cometchat-react-native-v5-sdk/references/docs-map.md +127 -0
  228. package/skills/cometchat-react-native-v5-sdk/references/ringing-voip.md +369 -0
  229. package/skills/cometchat-react-v7-calls/SKILL.md +75 -0
  230. package/skills/cometchat-react-v7-components/SKILL.md +72 -0
  231. package/skills/cometchat-react-v7-core/SKILL.md +101 -0
  232. package/skills/cometchat-react-v7-core/references/anti-patterns.md +19 -0
  233. package/skills/cometchat-react-v7-core/references/component-props.md +82 -0
  234. package/skills/cometchat-react-v7-core/references/dependencies.md +23 -0
  235. package/skills/cometchat-react-v7-core/references/docs-map.md +117 -0
  236. package/skills/cometchat-react-v7-core/references/layout.md +150 -0
  237. package/skills/cometchat-react-v7-core/references/lifecycle.md +74 -0
  238. package/skills/cometchat-react-v7-core/references/setup-credentials.md +58 -0
  239. package/skills/cometchat-react-v7-core/references/ssr.md +11 -0
  240. package/skills/cometchat-react-v7-core/references/theming.md +52 -0
  241. package/skills/cometchat-react-v7-customization/SKILL.md +84 -0
  242. package/skills/cometchat-react-v7-features/SKILL.md +92 -0
  243. package/skills/cometchat-react-v7-migration/SKILL.md +39 -0
  244. package/skills/cometchat-react-v7-migration/references/migration-guide.md +119 -0
  245. package/skills/cometchat-react-v7-patterns/SKILL.md +43 -0
  246. package/skills/cometchat-react-v7-placement/SKILL.md +106 -0
  247. package/skills/cometchat-react-v7-placement/references/recipes.md +354 -0
  248. package/skills/cometchat-react-v7-production/SKILL.md +84 -0
  249. package/skills/cometchat-react-v7-push/SKILL.md +53 -0
  250. package/skills/cometchat-react-v7-testing/SKILL.md +60 -0
  251. package/skills/cometchat-react-v7-troubleshooting/SKILL.md +47 -0
  252. package/skills/cometchat-security/SKILL.md +80 -0
  253. package/skills/cometchat-self-host/SKILL.md +56 -0
  254. package/test-suite/README.md +70 -0
  255. package/test-suite/catalogs/android-calls-v5.json +830 -0
  256. package/test-suite/catalogs/android-calls-v5.symbols.txt +499 -0
  257. package/test-suite/catalogs/android-v6.json +1646 -0
  258. package/test-suite/catalogs/android-v6.symbols.txt +298 -0
  259. package/test-suite/catalogs/angular-v5.json +7587 -0
  260. package/test-suite/catalogs/flutter-calls-v5.json +196 -0
  261. package/test-suite/catalogs/flutter-calls-v5.symbols.txt +59 -0
  262. package/test-suite/catalogs/flutter-v6.json +651 -0
  263. package/test-suite/catalogs/ios-calls-v5.json +158 -0
  264. package/test-suite/catalogs/ios-calls-v5.symbols.txt +70 -0
  265. package/test-suite/catalogs/ios-v5.json +1383 -0
  266. package/test-suite/catalogs/ios-v5.symbols.txt +699 -0
  267. package/test-suite/catalogs/rn-calls-v5.json +134 -0
  268. package/test-suite/catalogs/rn-sdk-v4.json +672 -0
  269. package/test-suite/catalogs/rn-v5.json +449 -0
  270. package/test-suite/catalogs/sdk-android-v5.json +514 -0
  271. package/test-suite/catalogs/sdk-android-v5.symbols.txt +254 -0
  272. package/test-suite/catalogs/sdk-jsv4.json +800 -0
  273. package/test-suite/catalogs/web-calls-v5.json +195 -0
  274. package/test-suite/catalogs/web-v7.json +1243 -0
  275. package/test-suite/scripts/build-registry.mjs +113 -0
  276. package/test-suite/scripts/catalog-refresh-dart.mjs +151 -0
  277. package/test-suite/scripts/catalog-refresh.mjs +100 -0
  278. package/test-suite/scripts/lint-skills.mjs +932 -0
  279. package/test-suite/scripts/measure-tokens.mjs +169 -0
  280. package/test-suite/scripts/typecheck-fences-dart.mjs +437 -0
  281. package/test-suite/scripts/typecheck-fences-kotlin.mjs +269 -0
  282. package/test-suite/scripts/typecheck-fences.mjs +206 -0
  283. package/test-suite/scripts/verify-catalog.mjs +242 -0
  284. package/test-suite/scripts/verify-contract-fences.mjs +94 -0
  285. package/test-suite/scripts/verify-detection.mjs +178 -0
  286. package/test-suite/scripts/verify-docs-base.mjs +91 -0
  287. package/test-suite/scripts/verify-family-agnostic.mjs +134 -0
  288. package/test-suite/scripts/verify-golden-path.mjs +138 -0
  289. package/test-suite/scripts/verify-oracle-components.mjs +133 -0
  290. package/test-suite/scripts/verify-template-bindings.mjs +148 -0
  291. package/test-suite/typecheck/angular-v5/package.json +21 -0
  292. package/test-suite/typecheck/angular-v5/tsconfig.json +21 -0
  293. package/test-suite/typecheck/flutter-v6/analysis_options.yaml +25 -0
  294. package/test-suite/typecheck/flutter-v6/pubspec.yaml +21 -0
  295. package/test-suite/typecheck/web-v7/package.json +18 -0
  296. package/test-suite/typecheck/web-v7/tsconfig.json +19 -0
  297. package/bin/install.js +0 -1003
  298. package/skills/.claude-plugin/marketplace.json +0 -86
  299. package/skills/cometchat/references/asking-questions.md +0 -48
  300. package/skills/cometchat-android-v5/SKILL.md +0 -121
  301. package/skills/cometchat-android-v5-calls/SKILL.md +0 -429
  302. package/skills/cometchat-android-v5-calls/references/README.md +0 -53
  303. package/skills/cometchat-android-v5-calls/references/add-calls-to-existing-chat.md +0 -197
  304. package/skills/cometchat-android-v5-calls/references/audio-controls.md +0 -91
  305. package/skills/cometchat-android-v5-calls/references/background-handling.md +0 -168
  306. package/skills/cometchat-android-v5-calls/references/call-layouts.md +0 -131
  307. package/skills/cometchat-android-v5-calls/references/call-logs.md +0 -113
  308. package/skills/cometchat-android-v5-calls/references/call-session.md +0 -274
  309. package/skills/cometchat-android-v5-calls/references/custom-ui.md +0 -150
  310. package/skills/cometchat-android-v5-calls/references/event-listeners.md +0 -123
  311. package/skills/cometchat-android-v5-calls/references/group-calls.md +0 -205
  312. package/skills/cometchat-android-v5-calls/references/idle-timeout.md +0 -117
  313. package/skills/cometchat-android-v5-calls/references/in-call-chat.md +0 -134
  314. package/skills/cometchat-android-v5-calls/references/join-session.md +0 -120
  315. package/skills/cometchat-android-v5-calls/references/migration-v4-to-v5.md +0 -222
  316. package/skills/cometchat-android-v5-calls/references/participant-management.md +0 -110
  317. package/skills/cometchat-android-v5-calls/references/picture-in-picture.md +0 -106
  318. package/skills/cometchat-android-v5-calls/references/raise-hand.md +0 -248
  319. package/skills/cometchat-android-v5-calls/references/recording.md +0 -101
  320. package/skills/cometchat-android-v5-calls/references/ringing-integration.md +0 -152
  321. package/skills/cometchat-android-v5-calls/references/screen-sharing.md +0 -78
  322. package/skills/cometchat-android-v5-calls/references/server-fcm-voip.md +0 -215
  323. package/skills/cometchat-android-v5-calls/references/session-settings.md +0 -121
  324. package/skills/cometchat-android-v5-calls/references/setup.md +0 -137
  325. package/skills/cometchat-android-v5-calls/references/share-invite.md +0 -156
  326. package/skills/cometchat-android-v5-calls/references/video-controls.md +0 -87
  327. package/skills/cometchat-android-v5-calls/references/voip-calling.md +0 -526
  328. package/skills/cometchat-android-v5-components/SKILL.md +0 -431
  329. package/skills/cometchat-android-v5-core/SKILL.md +0 -486
  330. package/skills/cometchat-android-v5-customization/SKILL.md +0 -469
  331. package/skills/cometchat-android-v5-extensions/SKILL.md +0 -127
  332. package/skills/cometchat-android-v5-features/SKILL.md +0 -131
  333. package/skills/cometchat-android-v5-placement/SKILL.md +0 -277
  334. package/skills/cometchat-android-v5-production/SKILL.md +0 -95
  335. package/skills/cometchat-android-v5-push/SKILL.md +0 -619
  336. package/skills/cometchat-android-v5-testing/SKILL.md +0 -188
  337. package/skills/cometchat-android-v5-theming/SKILL.md +0 -167
  338. package/skills/cometchat-android-v5-troubleshooting/SKILL.md +0 -74
  339. package/skills/cometchat-android-v6/SKILL.md +0 -108
  340. package/skills/cometchat-android-v6-calls/references/add-calls-to-existing-chat.md +0 -97
  341. package/skills/cometchat-android-v6-calls/references/advanced-features.md +0 -87
  342. package/skills/cometchat-android-v6-calls/references/call-layouts.md +0 -100
  343. package/skills/cometchat-android-v6-calls/references/call-session.md +0 -163
  344. package/skills/cometchat-android-v6-calls/references/device-management.md +0 -172
  345. package/skills/cometchat-android-v6-calls/references/group-calls.md +0 -191
  346. package/skills/cometchat-android-v6-calls/references/idle-timeout.md +0 -110
  347. package/skills/cometchat-android-v6-calls/references/in-call-chat.md +0 -141
  348. package/skills/cometchat-android-v6-calls/references/raise-hand.md +0 -188
  349. package/skills/cometchat-android-v6-calls/references/ringing-integration.md +0 -176
  350. package/skills/cometchat-android-v6-calls/references/server-fcm-voip.md +0 -127
  351. package/skills/cometchat-android-v6-calls/references/share-invite.md +0 -105
  352. package/skills/cometchat-android-v6-compose-theming/SKILL.md +0 -250
  353. package/skills/cometchat-android-v6-kotlin-theming/SKILL.md +0 -233
  354. package/skills/cometchat-angular-calls/SKILL.md +0 -380
  355. package/skills/cometchat-angular-calls/references/add-calls-to-existing-chat.md +0 -96
  356. package/skills/cometchat-angular-calls/references/call-layouts.md +0 -123
  357. package/skills/cometchat-angular-calls/references/call-session.md +0 -167
  358. package/skills/cometchat-angular-calls/references/custom-ui.md +0 -239
  359. package/skills/cometchat-angular-calls/references/device-management.md +0 -154
  360. package/skills/cometchat-angular-calls/references/group-calls.md +0 -433
  361. package/skills/cometchat-angular-calls/references/idle-timeout.md +0 -161
  362. package/skills/cometchat-angular-calls/references/in-call-chat.md +0 -148
  363. package/skills/cometchat-angular-calls/references/lazy-loading-pitfalls.md +0 -205
  364. package/skills/cometchat-angular-calls/references/migration-v4-to-v5.md +0 -53
  365. package/skills/cometchat-angular-calls/references/ngzone-and-async-callbacks.md +0 -184
  366. package/skills/cometchat-angular-calls/references/picture-in-picture.md +0 -285
  367. package/skills/cometchat-angular-calls/references/raise-hand.md +0 -172
  368. package/skills/cometchat-angular-calls/references/recording-screen-share.md +0 -260
  369. package/skills/cometchat-angular-calls/references/ringing-integration.md +0 -133
  370. package/skills/cometchat-angular-calls/references/server-web-push-vapid.md +0 -100
  371. package/skills/cometchat-angular-calls/references/share-invite.md +0 -122
  372. package/skills/cometchat-angular-calls/references/virtual-background.md +0 -29
  373. package/skills/cometchat-angular-components/SKILL.md +0 -235
  374. package/skills/cometchat-angular-core/SKILL.md +0 -386
  375. package/skills/cometchat-angular-customization/SKILL.md +0 -616
  376. package/skills/cometchat-angular-features/SKILL.md +0 -329
  377. package/skills/cometchat-angular-patterns/SKILL.md +0 -256
  378. package/skills/cometchat-angular-placement/SKILL.md +0 -314
  379. package/skills/cometchat-angular-production/SKILL.md +0 -564
  380. package/skills/cometchat-angular-push/SKILL.md +0 -389
  381. package/skills/cometchat-angular-testing/SKILL.md +0 -605
  382. package/skills/cometchat-angular-theming/SKILL.md +0 -290
  383. package/skills/cometchat-angular-troubleshooting/SKILL.md +0 -364
  384. package/skills/cometchat-astro-patterns/SKILL.md +0 -708
  385. package/skills/cometchat-calls/SKILL.md +0 -364
  386. package/skills/cometchat-calls/references/use-case-broadcast.md +0 -199
  387. package/skills/cometchat-calls/references/use-case-marketplace.md +0 -157
  388. package/skills/cometchat-calls/references/use-case-support.md +0 -189
  389. package/skills/cometchat-calls/references/use-case-team.md +0 -180
  390. package/skills/cometchat-calls/references/use-case-telehealth.md +0 -153
  391. package/skills/cometchat-components/SKILL.md +0 -1142
  392. package/skills/cometchat-core/SKILL.md +0 -1048
  393. package/skills/cometchat-customization/SKILL.md +0 -580
  394. package/skills/cometchat-customization/references/component-catalog.md +0 -236
  395. package/skills/cometchat-features/SKILL.md +0 -861
  396. package/skills/cometchat-flutter-v5/SKILL.md +0 -173
  397. package/skills/cometchat-flutter-v5-calls/SKILL.md +0 -455
  398. package/skills/cometchat-flutter-v5-calls/references/add-calls-to-existing-chat.md +0 -193
  399. package/skills/cometchat-flutter-v5-calls/references/call-layouts.md +0 -103
  400. package/skills/cometchat-flutter-v5-calls/references/call-session.md +0 -285
  401. package/skills/cometchat-flutter-v5-calls/references/device-management.md +0 -124
  402. package/skills/cometchat-flutter-v5-calls/references/group-calls.md +0 -181
  403. package/skills/cometchat-flutter-v5-calls/references/idle-timeout.md +0 -99
  404. package/skills/cometchat-flutter-v5-calls/references/in-call-chat.md +0 -135
  405. package/skills/cometchat-flutter-v5-calls/references/migration-v4-to-v5.md +0 -210
  406. package/skills/cometchat-flutter-v5-calls/references/raise-hand.md +0 -255
  407. package/skills/cometchat-flutter-v5-calls/references/ringing-integration.md +0 -196
  408. package/skills/cometchat-flutter-v5-calls/references/server-push-bridge.md +0 -101
  409. package/skills/cometchat-flutter-v5-calls/references/share-invite.md +0 -148
  410. package/skills/cometchat-flutter-v5-conversations/SKILL.md +0 -118
  411. package/skills/cometchat-flutter-v5-core/SKILL.md +0 -239
  412. package/skills/cometchat-flutter-v5-customization/SKILL.md +0 -358
  413. package/skills/cometchat-flutter-v5-events/SKILL.md +0 -156
  414. package/skills/cometchat-flutter-v5-messages/SKILL.md +0 -259
  415. package/skills/cometchat-flutter-v5-production/SKILL.md +0 -216
  416. package/skills/cometchat-flutter-v5-push/SKILL.md +0 -285
  417. package/skills/cometchat-flutter-v5-testing/SKILL.md +0 -401
  418. package/skills/cometchat-flutter-v5-theming/SKILL.md +0 -161
  419. package/skills/cometchat-flutter-v5-troubleshooting/SKILL.md +0 -130
  420. package/skills/cometchat-flutter-v5-users-groups/SKILL.md +0 -152
  421. package/skills/cometchat-flutter-v6/SKILL.md +0 -446
  422. package/skills/cometchat-flutter-v6-calls/references/add-calls-to-existing-chat.md +0 -136
  423. package/skills/cometchat-flutter-v6-calls/references/advanced-features.md +0 -89
  424. package/skills/cometchat-flutter-v6-calls/references/call-layouts.md +0 -105
  425. package/skills/cometchat-flutter-v6-calls/references/call-session.md +0 -229
  426. package/skills/cometchat-flutter-v6-calls/references/device-management.md +0 -105
  427. package/skills/cometchat-flutter-v6-calls/references/group-calls.md +0 -190
  428. package/skills/cometchat-flutter-v6-calls/references/idle-timeout.md +0 -88
  429. package/skills/cometchat-flutter-v6-calls/references/in-call-chat.md +0 -125
  430. package/skills/cometchat-flutter-v6-calls/references/raise-hand.md +0 -275
  431. package/skills/cometchat-flutter-v6-calls/references/ringing-integration.md +0 -171
  432. package/skills/cometchat-flutter-v6-calls/references/server-push-bridge.md +0 -93
  433. package/skills/cometchat-flutter-v6-calls/references/share-invite.md +0 -102
  434. package/skills/cometchat-flutter-v6-conversations/SKILL.md +0 -238
  435. package/skills/cometchat-flutter-v6-messages/SKILL.md +0 -384
  436. package/skills/cometchat-flutter-v6-theming/SKILL.md +0 -293
  437. package/skills/cometchat-flutter-v6-users-groups/SKILL.md +0 -224
  438. package/skills/cometchat-ios/SKILL.md +0 -325
  439. package/skills/cometchat-ios-calls/references/add-calls-to-existing-chat.md +0 -181
  440. package/skills/cometchat-ios-calls/references/audio-modes-and-controls.md +0 -45
  441. package/skills/cometchat-ios-calls/references/avaudiosession-routing.md +0 -188
  442. package/skills/cometchat-ios-calls/references/call-layouts.md +0 -76
  443. package/skills/cometchat-ios-calls/references/call-session.md +0 -218
  444. package/skills/cometchat-ios-calls/references/callkit-and-pushkit.md +0 -357
  445. package/skills/cometchat-ios-calls/references/custom-ui.md +0 -322
  446. package/skills/cometchat-ios-calls/references/device-management.md +0 -171
  447. package/skills/cometchat-ios-calls/references/group-calls.md +0 -359
  448. package/skills/cometchat-ios-calls/references/idle-timeout.md +0 -184
  449. package/skills/cometchat-ios-calls/references/in-call-chat.md +0 -179
  450. package/skills/cometchat-ios-calls/references/migration-v4-to-v5.md +0 -196
  451. package/skills/cometchat-ios-calls/references/picture-in-picture.md +0 -246
  452. package/skills/cometchat-ios-calls/references/raise-hand.md +0 -26
  453. package/skills/cometchat-ios-calls/references/recording-screen-share.md +0 -252
  454. package/skills/cometchat-ios-calls/references/ringing-integration.md +0 -143
  455. package/skills/cometchat-ios-calls/references/server-apns-pushkit.md +0 -267
  456. package/skills/cometchat-ios-calls/references/share-invite.md +0 -148
  457. package/skills/cometchat-ios-calls/references/swiftui-uikit-hosting.md +0 -246
  458. package/skills/cometchat-ios-calls/references/voip-cert-setup.md +0 -166
  459. package/skills/cometchat-ios-theming/SKILL.md +0 -667
  460. package/skills/cometchat-native-bare-patterns/SKILL.md +0 -550
  461. package/skills/cometchat-native-calls/SKILL.md +0 -671
  462. package/skills/cometchat-native-calls/references/add-calls-to-existing-chat.md +0 -203
  463. package/skills/cometchat-native-calls/references/call-layouts.md +0 -125
  464. package/skills/cometchat-native-calls/references/call-session.md +0 -182
  465. package/skills/cometchat-native-calls/references/custom-ui.md +0 -254
  466. package/skills/cometchat-native-calls/references/device-management.md +0 -158
  467. package/skills/cometchat-native-calls/references/expo-vs-bare.md +0 -179
  468. package/skills/cometchat-native-calls/references/group-calls.md +0 -296
  469. package/skills/cometchat-native-calls/references/idle-timeout.md +0 -128
  470. package/skills/cometchat-native-calls/references/in-call-chat.md +0 -145
  471. package/skills/cometchat-native-calls/references/migration-v4-to-v5.md +0 -72
  472. package/skills/cometchat-native-calls/references/picture-in-picture.md +0 -276
  473. package/skills/cometchat-native-calls/references/raise-hand.md +0 -205
  474. package/skills/cometchat-native-calls/references/recording-screen-share.md +0 -169
  475. package/skills/cometchat-native-calls/references/ringing-integration.md +0 -118
  476. package/skills/cometchat-native-calls/references/server-push-bridge.md +0 -135
  477. package/skills/cometchat-native-calls/references/server-push-payloads.md +0 -193
  478. package/skills/cometchat-native-calls/references/share-invite.md +0 -146
  479. package/skills/cometchat-native-calls/references/voip-push-end-to-end.md +0 -319
  480. package/skills/cometchat-native-components/SKILL.md +0 -628
  481. package/skills/cometchat-native-core/SKILL.md +0 -679
  482. package/skills/cometchat-native-customization/SKILL.md +0 -716
  483. package/skills/cometchat-native-expo-patterns/SKILL.md +0 -552
  484. package/skills/cometchat-native-features/SKILL.md +0 -638
  485. package/skills/cometchat-native-placement/SKILL.md +0 -509
  486. package/skills/cometchat-native-production/SKILL.md +0 -700
  487. package/skills/cometchat-native-push/SKILL.md +0 -594
  488. package/skills/cometchat-native-testing/SKILL.md +0 -582
  489. package/skills/cometchat-native-theming/SKILL.md +0 -681
  490. package/skills/cometchat-native-troubleshooting/SKILL.md +0 -501
  491. package/skills/cometchat-nextjs-patterns/SKILL.md +0 -899
  492. package/skills/cometchat-placement/SKILL.md +0 -1360
  493. package/skills/cometchat-production/SKILL.md +0 -1027
  494. package/skills/cometchat-react-calls/SKILL.md +0 -752
  495. package/skills/cometchat-react-calls/references/add-calls-to-existing-chat.md +0 -146
  496. package/skills/cometchat-react-calls/references/call-layouts.md +0 -160
  497. package/skills/cometchat-react-calls/references/call-session.md +0 -235
  498. package/skills/cometchat-react-calls/references/custom-ui.md +0 -247
  499. package/skills/cometchat-react-calls/references/device-management.md +0 -210
  500. package/skills/cometchat-react-calls/references/group-calls.md +0 -257
  501. package/skills/cometchat-react-calls/references/idle-timeout.md +0 -188
  502. package/skills/cometchat-react-calls/references/in-call-chat.md +0 -212
  503. package/skills/cometchat-react-calls/references/migration-v4-to-v5.md +0 -170
  504. package/skills/cometchat-react-calls/references/picture-in-picture.md +0 -245
  505. package/skills/cometchat-react-calls/references/raise-hand.md +0 -238
  506. package/skills/cometchat-react-calls/references/recording-screen-share.md +0 -144
  507. package/skills/cometchat-react-calls/references/ringing-integration.md +0 -255
  508. package/skills/cometchat-react-calls/references/server-web-push-vapid.md +0 -241
  509. package/skills/cometchat-react-calls/references/share-invite.md +0 -175
  510. package/skills/cometchat-react-calls/references/testing-calls-on-web.md +0 -216
  511. package/skills/cometchat-react-calls/references/virtual-background.md +0 -32
  512. package/skills/cometchat-react-calls/references/voip-and-web-push.md +0 -165
  513. package/skills/cometchat-react-patterns/SKILL.md +0 -628
  514. package/skills/cometchat-react-push/SKILL.md +0 -634
  515. package/skills/cometchat-react-router-patterns/SKILL.md +0 -758
  516. package/skills/cometchat-react-testing/SKILL.md +0 -413
  517. package/skills/cometchat-theming/SKILL.md +0 -498
  518. package/skills/cometchat-troubleshooting/SKILL.md +0 -294
@@ -1,192 +1,52 @@
1
1
  ---
2
2
  name: cometchat-android-v6-extensions
3
- description: "CometChat Android UIKit v6 extension architecture DataSource/Repository pattern, custom message types, and data-layer overrides"
3
+ description: "Turn on CometChat Dashboard extensions in an Android v6 appstickers, polls, collaborative whiteboard and document, message translation, link preview, thumbnail generation, message shortcuts — and know exactly where each one appears in the UI once enabled (mostly zero client code). Triggers: 'enable stickers android', 'add polls to my android chat', 'message translation android cometchat', 'link previews not showing', 'what extensions does the android ui kit support'."
4
4
  license: "MIT"
5
- compatibility: "Android 9.0+ (API 28); Kotlin 1.9+; com.cometchat:chatuikit-core-android:6.x"
5
+ compatibility: "Android minSdk >=28; compileSdk >=36; Kotlin >=2.1; AGP >=8.9.1; JVM target 11; com.cometchat:chatuikit-kotlin-android ^6 OR com.cometchat:chatuikit-compose-android ^6 (6.0.x, verified 6.0.5); com.cometchat:chat-sdk-android ^5"
6
6
  metadata:
7
7
  author: "CometChat"
8
- version: "3.0.0"
9
- tags: "cometchat, android, extensions, datasource, repository, clean-architecture"
8
+ version: "1.0.0"
9
+ tags: "cometchat android extensions v6 stickers polls translation dashboard"
10
10
  ---
11
11
 
12
- > **Ground truth:** `com.cometchat:chatuikit-{compose,kotlin}-android:6.x` (+ `calls-sdk-android:5.x`) resolved AAR (javap) + `ui-kit/android/v6`. **Official docs:** https://www.cometchat.com/docs/fundamentals/extensions-overview · **Docs MCP:** `claude mcp add --transport http cometchat-docs https://www.cometchat.com/docs/mcp` (or fetch the URL directly without MCP). Verify symbols against the installed package/source before relying on them.
12
+ > **Ground truth:** `features.android-v6.json` (the extension entries + their `enablement`) + catalog `android-v6.json` + the live page `/ui-kit/android/extensions` (the manual 8 built-ins) and each extension's `/fundamentals/*` page. Verify symbols against the catalog; fetch details from docs; never invent an extension.
13
13
 
14
- > **Companion skills:** cometchat-android-v6-features (feature catalog), cometchat-android-v6-kotlin-customization, cometchat-android-v6-compose-customization
15
-
16
- ## Purpose
17
-
18
- Extend the CometChat UIKit v6 data layer using the clean architecture DataSource/Repository pattern. Create custom DataSource implementations, override repository behavior, and register custom message types.
14
+ ## Companion skills (read first)
15
+ - `cometchat-android-v6-core` — install, credentials, `initFromSettings → login → render`, the fetch map. Assumed here, never repeated.
16
+ - `cometchat-android-v6-features` — the general feature-lookup skill; come here for the Dashboard-extension slice specifically.
19
17
 
20
18
  ## Use this skill when
19
+ "enable stickers/polls/whiteboard/document/translation/link preview/thumbnails", "add message shortcuts", "which extensions work with the Android UI Kit?", "I enabled it in the Dashboard but nothing shows up".
21
20
 
22
- - Creating a custom DataSource implementation to change how data is fetched
23
- - Overriding default repository behavior
24
- - Registering custom message types
25
- - Understanding the data flow from DataSource → Repository → ViewModel
26
-
27
- ## Do not use this skill when
28
-
29
- - Customizing UI/bubble rendering (use `cometchat-*-customization` — that's the BubbleFactory layer)
30
- - Working with component APIs (use `cometchat-*-components`)
31
-
32
- ## 1. Clean Architecture Overview
33
-
34
- The `chatuikit-core` module follows clean architecture with three layers:
35
-
36
- ```
37
- ┌─────────────────────────────────────────┐
38
- │ UI Layer (chatuikit-kotlin / compose) │
39
- │ Components observe ViewModel state │
40
- ├─────────────────────────────────────────┤
41
- │ ViewModel Layer (core/viewmodel/) │
42
- │ Calls use cases / repositories │
43
- ├─────────────────────────────────────────┤
44
- │ Domain Layer (core/domain/) │
45
- │ Repository interfaces, Use cases │
46
- ├─────────────────────────────────────────┤
47
- │ Data Layer (core/data/) │
48
- │ DataSource interfaces + impls │
49
- │ Repository implementations │
50
- └─────────────────────────────────────────┘
51
- ```
52
-
53
- ## 2. DataSource Pattern
21
+ ## Prerequisites & install
22
+ Same kit + `initFromSettings → login` as `core`. **No Gradle dependency and (for the 7 auto-rendered ones) no client code** — the UI Kit detects an enabled extension after init+login and renders it in the right component.
54
23
 
55
- Each feature area has a DataSource interface and default implementation:
56
-
57
- ```
58
- core/data/datasource/
59
- ├── ConversationListDataSource.kt (interface)
60
- ├── ConversationListDataSourceImpl.kt (default implementation)
61
- ├── MessageListDataSource.kt
62
- ├── MessageListDataSourceImpl.kt
63
- ├── ...
64
- ```
65
-
66
- ### 2.1 All DataSource Types
67
-
68
- | DataSource | Implementation | What it provides |
24
+ ## The 8 built-ins enable in Dashboard, appears here
25
+ | Extension | Enable | Where it appears once enabled |
69
26
  |---|---|---|
70
- | `CallButtonsDataSource` | `CallButtonsDataSourceImpl` | Call button actions |
71
- | `CallLogsDataSource` | `CallLogsDataSourceImpl` | Call history fetching |
72
- | `CollaborativeDataSource` | `CollaborativeDataSourceImpl` | Document/whiteboard data |
73
- | `ConversationListDataSource` | `ConversationListDataSourceImpl` | Conversation list fetching |
74
- | `GroupMembersDataSource` | `GroupMembersDataSourceImpl` | Group member operations |
75
- | `GroupsDataSource` | `GroupsDataSourceImpl` | Group list fetching |
76
- | `MessageComposerDataSource` | `MessageComposerDataSourceImpl` | Composer actions/attachments |
77
- | `MessageHeaderDataSource` | `MessageHeaderDataSourceImpl` | Header data (name, status) |
78
- | `MessageInformationDataSource` | `MessageInformationDataSourceImpl` | Read receipts, delivery info |
79
- | `MessageListDataSource` | `MessageListDataSourceImpl` | Message fetching/pagination |
80
- | `PollDataSource` | `PollDataSourceImpl` | Poll creation/voting |
81
- | `ReactionListDataSource` | `ReactionListDataSourceImpl` | Reaction data |
82
- | `SearchDataSource` | `SearchDataSourceImpl` | Global search |
83
- | `StickerDataSource` | `StickerDataSourceImpl` | Sticker fetching |
84
- | `UsersDataSource` | `UsersDataSourceImpl` | User list fetching |
85
-
86
- ### 2.2 Additional DataSource
87
-
88
- | File | Purpose |
89
- |---|---|
90
- | `MessageReceiptEventListener.kt` | Listens for receipt events at the data layer |
91
-
92
- ## 3. Repository Pattern
93
-
94
- Repositories in `core/data/repository/` implement domain interfaces from `core/domain/repository/`:
95
-
96
- ```
97
- core/data/repository/
98
- ├── CallButtonsRepositoryImpl.kt
99
- ├── CallLogsRepositoryImpl.kt
100
- ├── ConversationListRepositoryImpl.kt
101
- ├── GroupMembersRepositoryImpl.kt
102
- ├── GroupsRepositoryImpl.kt
103
- ├── MessageComposerRepositoryImpl.kt
104
- ├── MessageHeaderRepositoryImpl.kt
105
- ├── MessageInformationRepositoryImpl.kt
106
- ├── MessageListRepositoryImpl.kt
107
- ├── PollRepositoryImpl.kt
108
- ├── ReactionListRepositoryImpl.kt
109
- ├── SearchRepositoryImpl.kt
110
- ├── StickerRepositoryImpl.kt
111
- ├── UsersRepositoryImpl.kt
112
- ```
113
-
114
- Each repository wraps a DataSource and adds business logic, caching, or transformation.
115
-
116
- ## 4. ViewModel Layer
117
-
118
- ViewModels in `core/viewmodel/` consume repositories and expose UI state:
119
-
120
- ```kotlin
121
- // Example: CometChatConversationsViewModel
122
- // - Injected via CometChatConversationsViewModelFactory
123
- // - Exposes StateFlow<ConversationListUIState>
124
- // - Calls ConversationListRepositoryImpl internally
125
- ```
126
-
127
- ViewModel factories in `core/factory/` handle dependency injection:
128
-
129
- | Factory | ViewModel |
130
- |---|---|
131
- | `CometChatConversationsViewModelFactory` | `CometChatConversationsViewModel` |
132
- | `CometChatMessageListViewModelFactory` | `CometChatMessageListViewModel` |
133
- | `CometChatGroupsViewModelFactory` | `CometChatGroupsViewModel` |
134
- | `CometChatUsersViewModelFactory` | `CometChatUsersViewModel` |
135
- | `CometChatCallLogsViewModelFactory` | `CometChatCallLogsViewModel` |
136
- | `CometChatMessageComposerViewModelFactory` | `CometChatMessageComposerViewModel` |
137
- | `CometChatMessageHeaderViewModelFactory` | `CometChatMessageHeaderViewModel` |
138
- | `CometChatGroupMembersViewModelFactory` | `CometChatGroupMembersViewModel` |
139
- | `CometChatMessageInformationViewModelFactory` | `CometChatMessageInformationViewModel` |
140
- | `CometChatReactionListViewModelFactory` | `CometChatReactionListViewModel` |
141
- | `CometChatSearchViewModelFactory` | `CometChatSearchViewModel` |
142
- | `CometChatCallButtonsViewModelFactory` | `CometChatCallButtonsViewModel` |
143
- | `CometChatCreatePollViewModelFactory` | `CometChatCreatePollViewModel` |
144
- | `CometChatThreadHeaderViewModelFactory` | `CometChatThreadHeaderViewModel` |
145
- | `CometChatStickerKeyboardViewModelFactory` | `CometChatStickerKeyboardViewModel` |
146
- | `CometChatIncomingCallViewModelFactory` | `CometChatIncomingCallViewModel` |
147
- | `CometChatOutgoingCallViewModelFactory` | `CometChatOutgoingCallViewModel` |
148
- | `CometChatAIAssistantChatHistoryViewModelFactory` | `CometChatAIAssistantChatHistoryViewModel` |
149
-
150
- ## 5. UI State Classes
151
-
152
- Each ViewModel exposes a sealed UI state from `core/state/`:
153
-
154
- | State Class | Used By |
155
- |---|---|
156
- | `CallLogsUIState` | Call logs |
157
- | `MessageListUIState` | Message list |
158
- | `GroupsUIState` | Groups list |
159
- | `UsersUIState` | Users list |
160
- | `GroupMembersUIState` | Group members |
161
- | `MessageComposerUIState` | Composer |
162
- | `MessageHeaderUIState` | Header |
163
- | `MessageInformationUIState` | Message info |
164
- | `ReactionListUIState` | Reactions |
165
- | `SearchUIState` | Search |
166
- | `CallButtonsUIState` | Call buttons |
167
- | `CreatePollUIState` | Poll creation |
168
- | `ThreadHeaderUIState` | Thread header |
169
- | `StickerKeyboardUIState` | Sticker keyboard |
170
- | `IncomingCallUIState` | Incoming call |
171
- | `OutgoingCallUIState` | Outgoing call |
172
- | `ChatHistoryUIState` | AI chat history |
173
- | `ConversationStarterUIState` | AI conversation starter |
174
- | `ConversationSummaryUIState` | AI conversation summary |
175
- | `SmartRepliesUIState` | AI smart replies |
176
- | `DeleteState` | Delete operations |
177
- | `UIState` | Base UI state |
178
-
179
- ## 6. Data Flow
180
-
181
- ```
182
- User Action → Component → ViewModel → Repository → DataSource → CometChat SDK
183
-
184
- UI Update ← Component ← ViewModel ← StateFlow ← Repository ← SDK Response
185
- ```
186
-
187
- ## Hard rules
188
-
189
- - DataSources are the DATA layer — they fetch and mutate data. Do NOT confuse with BubbleFactory which is the UI rendering layer
190
- - The v5 `DataSource` decorator / `ChatConfigurator` pattern for bubble customization does NOT exist in v6 — use BubbleFactory instead (see `cometchat-*-customization`)
191
- - ViewModels are shared across both UI stacks (Kotlin Views and Compose) — they live in `chatuikit-core`
192
- - Always use the provided ViewModel factories — do not instantiate ViewModels directly
27
+ | **Stickers** | Dashboard → Extensions | Composer (sticker keyboard → `CometChatStickerKeyboard`; sent as `CometChatStickerBubble`) |
28
+ | **Polls** | Dashboard → Extensions | Composer action sheet (`CometChatCreatePoll`; rendered as `CometChatPollBubble`) |
29
+ | **Collaborative Whiteboard** | Dashboard → Extensions | Composer action sheet; opens as a collaborative bubble in the list |
30
+ | **Collaborative Document** | Dashboard → Extensions | Composer action sheet; opens as a collaborative bubble in the list |
31
+ | **Message Translation** | Dashboard → Extensions | Message long-press/action sheet in `CometChatMessageList` |
32
+ | **Link Preview** | Dashboard → Extensions | Automatically inside message bubbles for URLs |
33
+ | **Thumbnail Generation** | Dashboard → Extensions | Automatically on image/video bubbles (smaller previews) |
34
+ | **Profanity Filter** | Dashboard → Extensions | Message bubbles (censored text) — ⚠️ **LEGACY** |
35
+
36
+ **Message Shortcuts** is the one extension that is NOT zero-code: enable it in the Dashboard, then implement a shortcut formatter extending `CometChatTextFormatter` build it from the docs recipe `/ui-kit/android/shortcut-formatter-guide` (→ `cometchat-android-v6-{kotlin,compose}-customization` for the formatter mechanism).
37
+
38
+ ## Enablement the whole flow
39
+ 1. **Ask which are already enabled** per-app Dashboard state is not readable from code; never assume OFF (and never re-suggest one that's already on).
40
+ 2. **Enable in the CometChat Dashboard** your app → Extensions → the extension. That's the actual "installation".
41
+ 3. **Re-login / restart the app** the kit picks extensions up at init+login; a session started before you toggled won't show it.
42
+ 4. **Verify in the right place** (table above). No code change, no rebuild, for the 7 auto-rendered ones.
43
+ 5. Only if the ask is *styling* the extension's UI → `cometchat-android-v6-{kotlin,compose}-customization`.
44
+
45
+ ## Deprecated / superseded — don't offer these
46
+ **Profanity Filter is LEGACY**: the extensions page still lists it, but its guide points at the legacy-docs archive. For new work steer to the **Moderation** product (`features.android-v6.json` → `moderation`, dashboard-configured rules + AI moderation) — say this plainly rather than wiring the legacy path. Anything not in the table above and not in `features.android-v6.json` does not exist for this kit: don't invent extensions (no "reactions extension" — reactions are core in v6; same for mentions).
47
+
48
+ ## Common pitfalls
49
+ Writing client code for an auto-rendered extension (never needed) · hand-rolling polls/stickers UI that the kit already renders · enabling in the Dashboard but not re-logging in · expecting an extension before `init`+`login` succeed · offering Profanity Filter for new work · treating reactions/mentions as extensions (they're core in v6) · assuming an extension enabled on one app applies to another (per-app setting).
50
+
51
+ ## Verify it works
52
+ No catalog/compile change is expected for the auto-rendered ones (nothing was emitted); for Message Shortcuts, compile (`./gradlew :app:assembleDebug # in YOUR app (npm run verify:fences:android-v6 is a pack-repo gate)`) and confirm the formatter is registered. On device, after enabling + re-login: the extension's entry point is present where the table says (composer action sheet / sticker keyboard / message action sheet / inside the bubble) and a sent artifact renders as its bubble type. Nothing showing ⇒ check init/login succeeded, then the Dashboard toggle for THIS app, then re-login — in that order.
@@ -1,154 +1,85 @@
1
1
  ---
2
2
  name: cometchat-android-v6-features
3
- description: "CometChat Android UIKit v6 feature catalog AI features, reactions, polls, stickers, moderation, collaborative, and media features"
3
+ description: "Add or enable a specific CometChat feature in an Android v6 appreceipts, typing, reactions, mentions, threads, search, polls, stickers, translation, link previews, AI smart replies / conversation starter / summary, AI agents, moderation, notification feed, campaigns — by resolving the ask to the feature oracle and taking the right enablement path (already-on vs Dashboard toggle vs Gradle package vs code wiring). Triggers: 'add search to my android chat', 'enable polls android', 'turn on smart replies android', 'add reactions android', 'is X supported in the android ui kit'."
4
4
  license: "MIT"
5
- compatibility: "Android 9.0+ (API 28); Kotlin 1.9+; com.cometchat:chatuikit-compose-android:6.x / com.cometchat:chatuikit-kotlin-android:6.x"
5
+ compatibility: "Android minSdk >=28; compileSdk >=36; Kotlin >=2.1; AGP >=8.9.1; JVM target 11; com.cometchat:chatuikit-kotlin-android ^6 (XML Views) OR com.cometchat:chatuikit-compose-android ^6 (Compose) — 6.0.x, verified 6.0.5; com.cometchat:chat-sdk-android ^5"
6
6
  metadata:
7
7
  author: "CometChat"
8
- version: "3.0.0"
9
- tags: "cometchat, android, features, ai, reactions, polls, stickers, moderation"
8
+ version: "1.0.0"
9
+ tags: "cometchat android features v6 enablement extensions ai search compose views"
10
10
  ---
11
11
 
12
- > **Ground truth:** `com.cometchat:chatuikit-{compose,kotlin}-android:6.x` + `packages/registry/v6/features/catalog.json`. (Official docs linked below.) Verify symbols against the installed package/source before relying on them.
12
+ > **Ground truth:** `features.android-v6.json` (the feature-existence + enablement oracle) + catalog `android-v6.json` + the live feature pages (`core-features`, `extensions`, `ai-features`, `call-features`, the `guide-*` recipes). A feature not in the oracle does NOT exist for this kit — say so; never invent one. Fetch component params from docs (`core` → `references/docs-map.md`).
13
13
 
14
- > **Companion skills:** cometchat-android-v6-kotlin-components, cometchat-android-v6-compose-components, cometchat-android-v6-extensions (DataSource pattern), cometchat-android-v6-events, **cometchat-android-v6-calls** (voice/video calling enablement — recording is a paid add-on)
15
-
16
- ## Purpose
17
-
18
- Catalog of all features available in CometChat UIKit v6, how they map to components and DataSources, and how to enable/disable them.
14
+ ## Companion skills (read first)
15
+ - `cometchat-android-v6-core` — install, credentials, `initFromSettings → login → render`, hot-path callbacks, the fetch map. Assumed here, never repeated.
16
+ - Deeper slices: `cometchat-android-v6-extensions` (the 8 Dashboard extensions in detail) · `cometchat-android-v6-calls` (voice/video) · `cometchat-android-v6-push` (FCM) · `cometchat-android-v6-{kotlin,compose}-customization` (styling a feature's UI).
19
17
 
20
18
  ## Use this skill when
21
-
22
- - Enabling or disabling specific features (AI, reactions, polls, stickers)
23
- - Understanding what features are available out of the box
24
- - Mapping a feature to its component and DataSource
25
-
26
- ## Do not use this skill when
27
-
28
- - Working with component APIs directly (use `cometchat-*-components`)
29
- - Customizing bubble rendering (use `cometchat-*-customization`)
30
-
31
- ## 0. Feature categories what work each needs
32
-
33
- > **Canonical public feature-availability matrix:** [Features & Extensions Guide](https://www.cometchat.com/docs/fundamentals/features-and-extensions-guide)the authoritative source for which integration method (UI Kit / UI Kit Builder / Widget Builder / SDK) supports each feature + dashboard setup + whether code is required. It **outranks the local `catalog.json` snapshot on conflict**; consult it (WebFetch or docs MCP) for any availability decision.
34
-
35
-
36
- Before enabling anything, classify the feature by the product's 5-category "work needed" model:
37
-
38
- | Category | Work needed | Example |
39
- |---|---|---|
40
- | **Core (zero-setup)** | Nothing — renders out of the box | Typing indicators, reactions |
41
- | **Builder-enabled** | Dashboard API + toggle in the UI Kit Builder | Polls |
42
- | **Config-only** | Dashboard API enable; works automatically | Link preview |
43
- | **Config + settings** | Dashboard API + extra settings (API keys, thresholds) — no code | Smart replies (OpenAI key) |
44
- | **SDK-integrated** | Dashboard API + **custom client code** | Bitly |
45
-
46
- **Key rule:** only **SDK-integrated** features need client code — and **the implementation lives in the docs** (`cometchat features info <id> --json` shows what's needed; fetch + adapt the doc code, don't hand-roll). Everything else is enable-and-done.
47
-
48
- **Honest-automation boundary (what the CLI can vs can't do):**
49
- - **Extensions** (polls, link-preview, message-translation, reactions, etc.) → `cometchat apply-feature <id> --app-id <your-app-id>` makes the **real dashboard API call** to flip the toggle. No browser visit, no code. Never tell the user to "open the dashboard and toggle it" for an extension.
50
- - **AI features** → `cometchat apply-feature <id> --app-id <X> --openai-key sk-...` (sets the key, then enables) — see §1.
51
- - **Third-party dashboard-only features** (Giphy, Stipop, Tenor, Chatwoot, Intercom, Disappearing Messages, Message Shortcuts) → the CLI returns `manual-action-required` and prints the dashboard path. These need **your** third-party credentials and **cannot be automated** — state that honestly.
52
- - **Calls** → see `cometchat-android-v6-calls`. **Call recording is a paid plan add-on** — there is no dashboard toggle / CLI call to enable it; the user must contact CometChat support. Never claim recording was "enabled."
53
-
54
- ## 1. AI Features
55
-
56
- AI features need an OpenAI API key on the app's AI settings. Enable each one with the CLI in stateless mode (Android projects don't write `.cometchat/state.json`):
57
-
58
- ```bash
59
- cometchat apply-feature smart-replies --app-id <your-app-id> --openai-key sk-...
60
- cometchat apply-feature conversation-summary --app-id <your-app-id>
61
- cometchat apply-feature conversation-starter --app-id <your-app-id>
62
- ```
63
-
64
- The OpenAI key is stored on the app once, so subsequent ai-feature applies don't need `--openai-key` repeated. Requires `cometchat auth login` once per machine.
65
-
66
- | Feature | Compose Component | Core DataSource | Description |
67
- |---|---|---|---|
68
- | AI Assistant Chat History | `CometChatAIAssistantChatHistory` | — | Shows AI bot conversation history |
69
- | AI Conversation Starter | Shared element in `presentation/shared/aiconversationstarter/` | — | Suggests conversation starters |
70
- | AI Conversation Summary | Shared element in `presentation/shared/aiconversationsummary/` | — | Summarizes long conversations |
71
- | AI Smart Replies | Shared element in `presentation/shared/aismartreplies/` | — | Suggests contextual replies |
72
-
73
- AI features integrate with `CometChatMessageList` via the `smartRepliesView` slot and AI-specific parameters.
74
-
75
- The `CometChatAIStreamService` in `chatuikit-core` handles streaming AI responses.
76
-
77
- ## 2. Reactions
78
-
79
- | Feature | Component | DataSource | Description |
80
- |---|---|---|---|
81
- | Reaction List | `CometChatReactionList` | `ReactionListDataSource` | Shows who reacted with what |
82
- | Add Reaction | Shared element in `presentation/shared/reaction/` | — | Emoji picker for adding reactions |
83
-
84
- Reactions appear in the **footer slot** of message bubbles. Reaction events flow through `CometChatEvents.messageEvents`.
85
-
86
- ## 3. Polls
87
-
88
- | Feature | Component | DataSource | Description |
89
- |---|---|---|---|
90
- | Create Poll | `CometChatCreatePoll` (Compose) | `PollDataSource` | Create a new poll |
91
- | Poll Bubble | Shared element in `presentation/shared/` | `PollDataSourceImpl` | Renders poll in message list |
92
-
93
- Polls are custom messages with type `extension_poll`. The `PollRepositoryImpl` handles vote submission.
94
-
95
- ## 4. Stickers
96
-
97
- | Feature | Component | DataSource | Description |
98
- |---|---|---|---|
99
- | Sticker Keyboard | `CometChatStickerKeyboard` | `StickerDataSource` | Browse and send stickers |
100
- | Sticker Bubble | `stickerbubble/` (Kotlin Views) | `StickerDataSourceImpl` | Renders sticker in message list |
101
-
102
- Stickers integrate with `CometChatMessageComposer` as an auxiliary input.
103
-
104
- ## 5. Moderation
105
-
106
- | Feature | Component | Description |
107
- |---|---|---|
108
- | Report/Flag Message | `CometChatFlagMessageDialog` (Views) / `CometChatFlagMessageDialog` (Compose) | Report inappropriate messages |
109
-
110
- Moderation views appear in the **bottom slot** of message bubbles when moderation is enabled.
111
-
112
- ## 6. Collaborative Features
113
-
114
- | Feature | DataSource | Description |
115
- |---|---|---|
116
- | Collaborative Document | `CollaborativeDataSource` | Real-time document editing |
117
- | Collaborative Whiteboard | `CollaborativeDataSourceImpl` | Real-time whiteboard |
118
-
119
- ## 7. Media Features
120
-
121
- | Feature | Component | Description |
19
+ "add `<feature>` to my Android chat", "enable `<feature>`", "does the Android UI Kit support `<X>`?", "why isn't `<feature>` showing up?". The job: resolve the ask against the oracle, take the right enablement branch, wire only what needs wiring, and tell the user honestly what it needs (Dashboard? package? code?).
20
+
21
+ ## Prerequisites & install
22
+ Same kit + `initFromSettings → login` gate as `core`. Some features add a Gradle artifact (calls, push) or need a Dashboard toggle — the branch below says which.
23
+
24
+ ## Feature lookup resolve the ask, then branch
25
+ 1. **Find the id** in `features.android-v6.json` (table below). No match ⇒ the kit has no built-in for it: check whether the **Chat SDK** covers it (`core/references/docs-map.md` → SDK section) and say plainly that there's no UI-Kit component.
26
+ 2. **Read `enablement`** and take exactly one branch:
27
+ - **`auto`** already ON in v6. Do NOT "add" it; confirm it's there and offer to *customize* it (`cometchat-android-v6-{kotlin,compose}-customization`). Applies to reactions, mentions, receipts, typing, presence, quoted replies, rich text, media, mark-as-unread, report.
28
+ - **`dashboard-toggle` / `dashboard-extension`** — enable it in the **CometChat Dashboard**; the kit auto-integrates it after `init`+`login`, **no client code**. Your job: tell the user exactly where it will appear (composer action sheet, message list, bubble) and how to verify. Ask which are already enabled — you cannot read per-app Dashboard state.
29
+ - **`gradle-package`** — add the artifact, then wire (calls: `com.cometchat:calls-sdk-android` + `uiKit.enableCalling` in `assets/cometchat-settings.json`; push: `com.cometchat:push-notifications-android` + Firebase). Route to the dedicated skill.
30
+ - **`code-prop`** — the kit ships the component/affordance but the HOST wires it (a screen, a callback, a formatter). This is real work: build it, wire the round-trip, verify.
31
+ - **`dashboard-only`**no client code at all (moderation, campaigns); explain the effect users will see.
32
+ 3. **Check `needs_stitching` (⚙ below)** — a default-ON affordance that dead-ends until you wire a destination (or hide it). Wire it or hide it; never leave it inert.
33
+ 4. **Guide-first**: if the docs ship a `guide-*` recipe for this feature (see `core/references/docs-map.md` → "Task guides"), BUILD FROM the guide, then DIFF your implementation against it, then apply the hardening deltas (credentials via the settings file, init→login gate, thread targets, IME/insets sizing, listener teardown).
34
+ 5. **Wire the feature's `ui_components`** — fetch exact params for YOUR cohort from the component page's `.md` twin.
35
+
36
+ ## Feature table (BAKED from `features.android-v6.json` ⚙ = needs stitching)
37
+ | Feature id | Enablement | Components |
122
38
  |---|---|---|
123
- | Image Viewer | `CometChatImageViewerScreen` (Compose) | Full-screen image viewing with zoom |
124
- | Media Recorder | Shared element in `presentation/shared/mediarecorder/` | Audio/video recording |
125
- | Inline Audio Recorder | Shared element in `presentation/shared/inlineaudiorecorder/` | In-composer audio recording |
126
- | Media Selection | Shared element in `presentation/shared/mediaselection/` | Photo/video picker |
127
-
128
- ## 8. Feature-to-DataSource Mapping
129
-
130
- All DataSources live in `chatuikit-core/data/datasource/`:
131
-
132
- | DataSource Interface | Implementation | Feature Area |
133
- |---|---|---|
134
- | `CallButtonsDataSource` | `CallButtonsDataSourceImpl` | Audio/video call buttons |
135
- | `CallLogsDataSource` | `CallLogsDataSourceImpl` | Call history |
136
- | `CollaborativeDataSource` | `CollaborativeDataSourceImpl` | Documents/whiteboards |
137
- | `ConversationListDataSource` | `ConversationListDataSourceImpl` | Conversation list |
138
- | `GroupMembersDataSource` | `GroupMembersDataSourceImpl` | Group member management |
139
- | `GroupsDataSource` | `GroupsDataSourceImpl` | Group list |
140
- | `MessageComposerDataSource` | `MessageComposerDataSourceImpl` | Message input |
141
- | `MessageHeaderDataSource` | `MessageHeaderDataSourceImpl` | Chat header |
142
- | `MessageInformationDataSource` | `MessageInformationDataSourceImpl` | Message info/receipts |
143
- | `MessageListDataSource` | `MessageListDataSourceImpl` | Message list |
144
- | `PollDataSource` | `PollDataSourceImpl` | Polls |
145
- | `ReactionListDataSource` | `ReactionListDataSourceImpl` | Reactions |
146
- | `SearchDataSource` | `SearchDataSourceImpl` | Global search |
147
- | `StickerDataSource` | `StickerDataSourceImpl` | Stickers |
148
- | `UsersDataSource` | `UsersDataSourceImpl` | User list |
149
-
150
- ## Hard rules
151
-
152
- - AI features require dashboard configuration they cannot be enabled purely from client code
153
- - Polls and stickers are custom message types they require the corresponding extensions enabled on the dashboard
154
- - Do NOT confuse DataSources (data layer in core) with BubbleFactory (UI layer in kotlin/compose) — DataSources fetch data, BubbleFactories render bubbles
39
+ | `text-messaging` | auto | CometChatMessageList, CometChatMessageComposer |
40
+ | `media-file-attachments` | auto | CometChatMessageComposer, CometChatMessageList |
41
+ | `delivery-read-receipts` | auto | CometChatMessageList, CometChatReceipts, CometChatConversations |
42
+ | `mark-as-unread` | auto | CometChatConversations |
43
+ | `typing-indicators` | auto | CometChatMessageList, CometChatConversations |
44
+ | `user-presence` | auto | CometChatConversations, CometChatMessageHeader, CometChatStatusIndicator |
45
+ | `reactions` | auto | CometChatMessageList |
46
+ | `mentions` | auto | CometChatMessageComposer, CometChatMessageList, CometChatMentionsFormatter |
47
+ | `rich-text-formatting` | auto | CometChatMessageComposer, CometChatRichTextFormatter |
48
+ | `quoted-replies` | auto | CometChatMessageList, CometChatMessageComposer |
49
+ | `users-groups` | auto | CometChatUsers, CometChatGroups, CometChatGroupMembers |
50
+ | `report-message` | auto | CometChatMessageList |
51
+ | `threaded-replies` | code-prop | CometChatMessageList, CometChatThreadHeader, CometChatMessageComposer |
52
+ | `message-search` | code-prop | CometChatSearch |
53
+ | `custom-message-types` | code-prop | CometChatMessageList |
54
+ | `text-formatters` | code-prop | CometChatTextFormatter, CometChatMentionsFormatter, CometChatRichTextFormatter |
55
+ | `notification-feed` | code-prop | CometChatNotificationFeed |
56
+ | `stickers` | dashboard-extension | CometChatMessageComposer, CometChatStickerBubble, CometChatStickerKeyboard |
57
+ | `polls` | dashboard-extension | CometChatMessageComposer, CometChatCreatePoll, CometChatPollBubble |
58
+ | `collaborative-whiteboard` | dashboard-extension | CometChatMessageComposer, CometChatMessageList |
59
+ | `collaborative-document` | dashboard-extension | CometChatMessageComposer, CometChatMessageList |
60
+ | `message-translation` | dashboard-extension | CometChatMessageList |
61
+ | `link-preview` | dashboard-extension | CometChatMessageList |
62
+ | `thumbnail-generation` | dashboard-extension | CometChatMessageList |
63
+ | `message-shortcuts` | dashboard-extension | CometChatTextFormatter |
64
+ | `profanity-filter` | dashboard-extension **LEGACY** | CometChatMessageList |
65
+ | `smart-reply` | dashboard-toggle | CometChatMessageComposer |
66
+ | `conversation-starter` | dashboard-toggle | CometChatMessageList |
67
+ | `conversation-summary` | dashboard-toggle | CometChatMessageComposer |
68
+ | `ai-assistant` | dashboard-toggle | CometChatAIAssistantChatHistory, CometChatAIAssistantBubble, CometChatMessageList, CometChatMessageComposer |
69
+ | `moderation` | dashboard-only |(dashboard rules; no client code) |
70
+ | `campaigns` | dashboard-only | (authored in Dashboard) |
71
+ | `voice-video-calls` | gradle-package ⚙ | CometChatCallButtons, CometChatIncomingCall, CometChatOutgoingCall, CometChatCallLogs, CometChatCallActivity |
72
+ | `push-notifications` | gradle-package ⚙ | — (SDK token registration + FCM) |
73
+
74
+ ## Enablement rules that trip people up
75
+ - **`reactions` and `mentions` are ON BY DEFAULT in v6** (core messaging). Never offer to "add" or "enable" them — if asked, say they're already on and offer to customize them.
76
+ - **`profanity-filter` is LEGACY** — its guide points at legacy docs; steer to **`moderation`** instead. Never suggest it as a new feature.
77
+ - **Dashboard-gated ≠ broken**: if a toggled feature doesn't appear, the usual cause is the Dashboard toggle or a stale session — re-login after enabling.
78
+ - **Pinned messages / saved messages / thread subscription** are NOT in the current v6 docs set (they're pending on a docs branch). Don't claim them; say they're not documented for v6 yet and offer the SDK path if one exists.
79
+ - A feature's UI appears **only after `init` + `login` succeed** — a "missing feature" is often an init/login failure (`core/references/troubleshooting.md`).
80
+
81
+ ## Common pitfalls
82
+ Suggesting an `auto` feature as new work · hand-rolling a feature the kit auto-renders (translation, previews, stickers) · wiring a `code-prop` feature's entry point but no way back (dead-end) · a thread screen missing the `user`/`group` target (replies silently don't send) · assuming Dashboard state instead of asking · adding the calls/push artifact without the Dashboard side · guessing component params instead of fetching.
83
+
84
+ ## Verify it works
85
+ Every symbol you emitted is in the catalog (Tier-1) and the app compiles (`./gradlew :app:assembleDebug # in YOUR app (npm run verify:fences:android-v6 is a pack-repo gate)`). On device: the feature's UI appears where the docs say (composer action sheet / message list / bubble / its own screen); a stitched feature round-trips (open AND back); an `auto` feature was left alone; anything requiring the Dashboard was called out explicitly to the user with where-to-click. If it doesn't show, check init/login, then the Dashboard toggle, then re-login — in that order.