cometchat-android-v5-features
SkillFiles & storageAdd features (calls, reactions, polls, file sharing, AI, etc.) to an already-integrated CometChat project. Routes to the right sub-flow based on feature type.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the cometchat-android-v5-features skill
What this skill tells your AI
The instructions your AI receives, as published by cometchat/cometchat-skills in skills/cometchat-android-v5-features/SKILL.md and read by ahel’s review.
Ground truth:
com.cometchat:chat-uikit-android:5.x(legacy/maintenance-only; +calls-sdk-android:5.x) — resolved AAR (javap) +ui-kit/android. 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.
Companion skills:
cometchat-android-v5-corecovers initialization;cometchat-android-v5-customizationcovers deeper component customization;cometchat-android-v5-extensionscovers the extension architecture.
Purpose
This skill teaches how CometChat features are structured and what work is required to enable each one. Most features require zero code — they are either already built into the UI Kit, toggled via the cometchat apply-feature CLI (extensions + AI features), or activated by adding a dependency (calls).
Use this skill when
- "Add reactions to my chat"
- "Add video calling"
- "Enable polls"
- "Add file sharing"
- "Enable smart replies"
Do not use this skill when
- Customizing how a feature looks → use
cometchat-android-v5-customization - Setting up the initial integration → use
cometchat-android-v5-core
1. Feature types
| Type | What it means | Action required |
|---|---|---|
| Type 1 — Default | Built into the UI Kit at compile time | None — already there |
| Type 2a — Extension | Backend extension, pure boolean toggle | cometchat apply-feature <id> --app-id <X> (CLI hits dashboard API) |
| Type 2b — AI feature | Backend AI feature requiring an OpenAI key | cometchat apply-feature <id> --app-id <X> --openai-key sk-... |
| Type 2c — Dashboard-only | Third-party API key / multi-field config (Giphy, Stipop, Tenor, Chatwoot, Intercom) | Open https://app.cometchat.com → Chat & Messaging → Features → configure |
| Type 3 — Package-install | Requires a separate SDK dependency | Add Gradle dependency |
| Type 4 — Component-toggle | Hide/show via setHide* / disable* methods on the relevant component | Call the setter on the component instance (see catalog) |
2. Type 1 — Default features (already enabled)
| Feature | Component | Notes |
|---|---|---|
| Text messaging | CometChatMessageComposer + CometChatMessageList | Core feature |
| Media sharing (image/video/audio/file) | CometChatMessageComposer | Attachment button |
| Read receipts | CometChatMessageList | setReceiptsVisibility() |
| Typing indicators | CometChatMessageList + CometChatConversations | Auto-enabled |
| User presence (online/offline) | CometChatConversations, CometChatUsers | Requires subscribePresenceForAllUsers() in init |
| Reactions | CometChatMessageList | Long-press message → react |
| Mentions (@user, @all) | CometChatMessageComposer | Type @ to trigger |
| Threaded conversations | CometChatMessageList | setReplyInThreadOptionVisibility() |
| Quoted replies | CometChatMessageList | Swipe to reply |
| Edit/delete messages | CometChatMessageList | Long-press options |
| Group chat | All components | Use setGroup() instead of setUser() |
| Report message | CometChatMessageList | Long-press → Report |
| Search | CometChatSearch | Standalone component |
3. Type 2 — Backend toggle features (no code needed)
Android projects don't run cometchat apply, so call the CLI in stateless mode with --app-id:
# Pure boolean extensions:
cometchat apply-feature polls --app-id <your-app-id>
cometchat apply-feature stickers --app-id <your-app-id>
# AI features (require OpenAI key):
cometchat apply-feature smart-replies --app-id <your-app-id> --openai-key sk-...
cometchat apply-feature conversation-summary --app-id <your-app-id>
cometchat apply-feature conversation-starter --app-id <your-app-id>
Requires cometchat auth login once per machine.
Extensions (CLI-toggleable — pure boolean):
- User Engagement: Polls, Message Translation, Reminders
- Collaboration: Collaborative Document, Collaborative Whiteboard
- Security: Disappearing Messages, E2E Encryption (Enterprise)
- Moderation: Profanity Filter, Image Moderation, Data Masking, Sentiment Analysis, XSS Filter
AI Features (CLI-toggleable — needs --openai-key):
Conversation Starter, Conversation Summary, Smart Reply
Dashboard-only (third-party config — open https://app.cometchat.com → Chat & Messaging → Features): Stickers (Stipop), Giphy, Tenor, Chatwoot, Intercom — these require API keys / webhooks the user must enter manually.
4. Type 3 — Package-install features
Voice/Video Calling
Add the calling SDK:
implementation 'com.cometchat:calls-sdk-android:5.+'
The UI Kit auto-detects the calling SDK and enables call buttons in CometChatMessageHeader. No additional code needed — CometChatIncomingCall, CometChatOutgoingCall, and CometChatOngoingCall activate automatically.
Configure call buttons visibility:
CometChatMessageHeader header = findViewById(R.id.header);
header.setVoiceCallButtonVisibility(View.VISIBLE);
header.setVideoCallButtonVisibility(View.VISIBLE);
Hard rules
- Don't write code for Type 1 features. They're already there. Tell the user where to find them.
- Don't write code for Type 2a/2b features. Run
cometchat apply-feature <id> --app-id <X>(extension) or... --openai-key sk-...(ai-feature). The CLI flips the dashboard toggle via API. Never tell the user to "open the dashboard and toggle X" for an extension or ai-feature — that's what the CLI does. - For Type 2c (dashboard-only) features, the CLI cannot automate (third-party keys / multi-field config). Walk the user through the dashboard path returned by
cometchat apply-feature <id>'smanual-action-requiredresponse. - For Type 3 (calls), just add the Gradle dependency. The UI Kit handles the rest.
- Always run
cometchat apply-feature <id>first for extensions and AI features. If the user reports a "missing feature," it's almost always an unflipped toggle the CLI can fix in one call.
Signals
- GitHub stars
- 105
- Forks
- 2
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
cometchat-android-v5-features- Source
- github.com/cometchat/cometchat-skills