Agent skill

Cometchat Flutter V6 Calls

by cometchat in cometchat/cometchat-skills

Add voice & video calling to a Flutter app with the CometChat v6 UI Kit — turn calling on in settings, wire the native config and the root navigatorKey (the kit presents incoming/outgoing call…

MITAuto-check passedMobile

Install Cometchat Flutter V6 Calls

skills CLI
$ npx skills add cometchat/cometchat-skills --skill cometchat-flutter-v6-calls -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install cometchat/cometchat-skills cometchat-flutter-v6-calls --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/cometchat/cometchat-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cometchat-flutter-v6-calls .claude/skills/cometchat-flutter-v6-calls && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
cometchat-flutter-v6-calls
GitHub stars
129
Token cost
~2.2k tokens
SKILL.md length
887 words
Files
1
Skills in repo
97
Repo updated
First seen
Licence
MIT

At a glance

Add voice & video calling to a Flutter app with the CometChat v6 UI Kit — turn calling on in settings, wire the native config and the root navigatorKey (the kit presents incoming/outgoing call…

  • Works in 4 steps: cometchat_calls_sdk (transitive via the… → Android android/app/build.gradle.kts:… → iOS ios/Podfile: platform :ios, '15.1',… → …
  • Tasks that involve Cross-platform mobile apps
  • SKILL.md covers Companion skills (read first), Use this skill when, Prerequisites & install and THE BARREL TRAP (read before…, plus 4 more sections
  • Calls flutter; needs AUTH_KEY

What it does

Cometchat Flutter V6 Calls is an agent skill from cometchat/cometchat-skills. Add voice & video calling to a Flutter app with the CometChat v6 UI Kit — turn calling on in settings, wire the native config and the root navigatorKey (the kit presents incoming/outgoing call screens itself), and add call-log surfaces. Triggers: 'add voice and video calls in flutter', 'add calling to my flutter chat', 'enable video call flutter', 'add call buttons flutter', 'show call logs flutter'.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Flutter =3.38.9; cometchatchatuikit ^6 (6.1.x, verified 6.1.0); cometchatcallssdk ^5 (5.0.x — separate package)

It sits in Mobile, covering Cross-platform mobile apps and Design systems. It works with Flutter, CometChat, Android and iOS. The repository describes itself as: Add CometChat chat & messaging and voice & video calls to any React, Next.js, React Native, Angular, Android, iOS, or Flutter project through your AI coding agent. Works with… The licence is MIT.

When your agent uses it

  • Tasks that involve Cross-platform mobile apps
  • Tasks that involve Design systems

Example prompts

  • “add voice and video calls in flutter”
  • “add calling to my flutter chat”
  • “enable video call flutter”
  • “/cometchat-flutter-v6-calls”

Requirements

  • A credential in AUTH_KEY
  • Compatibility (from SKILL.md): Flutter >=3.38.9; cometchat_chat_uikit ^6 (6.1.x, verified 6.1.0); cometchat_calls_sdk ^5 (5.0.x — separate package)

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. cometchat_calls_sdk (transitive via the kit; pin ^5.0.4 in pubspec.yaml only if you added it directly).
  2. Android android/app/build.gradle.kts: minSdk = 26.
  3. iOS ios/Podfile: platform :ios, '15.1', then pod install.
  4. Permissions — camera + microphone (AndroidManifest.xml; NSCameraUsageDescription / NSMicrophoneUsageDescription in Info.plist). Without…

What it can do on your machine

Read from SKILL.md and the folder at commit 911b108. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • flutter

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • AUTH_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Flutter >=3.38.9; cometchat_chat_uikit ^6 (6.1.x, verified 6.1.0); cometchat_calls_sdk ^5 (5.0.x — separate package)

    From compatibility in the SKILL.md frontmatter.

Context cost

Cometchat Flutter V6 Calls loads about 2.2k tokens when it runs. Until then it costs about 108 tokens; SKILL.md has 887 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~108
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from cometchat/cometchat-skills at commit 911b108, republished under its MIT licence (© cometchat). 887 words, ~2,232 tokens.

Download SKILL.mdSave it as .claude/skills/cometchat-flutter-v6-calls/SKILL.md (or your agent's skills folder).
name
cometchat-flutter-v6-calls
description
Add voice & video calling to a Flutter app with the CometChat v6 UI Kit — turn calling on in settings, wire the native config and the root navigatorKey (the kit presents incoming/outgoing call screens itself), and add call-log surfaces. Triggers: 'add voice and video calls in flutter', 'add calling to my flutter chat', 'enable video call flutter', 'add call buttons flutter', 'show call logs flutter'.
compatibility
Flutter >=3.38.9; cometchat_chat_uikit ^6 (6.1.x, verified 6.1.0); cometchat_calls_sdk ^5 (5.0.x — separate package)
license
MIT
metadata.author
CometChat
metadata.version
1.0.0
metadata.tags
cometchat flutter calls voice video calling webrtc v6

Ground truth: the call UI ships INSIDE cometchat_chat_uikit, but in a second barrel, and the WebRTC engine is a separate package (cometchat_calls_sdk). Every symbol below is catalog-verified against 6.1.0. Exhaustive props: FETCH the twin via ../cometchat-flutter-v6-core/references/docs-map.md (call-features · incoming-call · outgoing-call · call-logs · call-buttons). APPEND to the user's app — additive wiring only.

Companion skills (read first)

  • cometchat-flutter-v6-core — install, credentials, the settings asset, init→login→render. This skill ASSUMES it (calling rides the SAME init).
  • cometchat-flutter-v6-components — the widget catalog.
  • cometchat-flutter-v6-placement — where call surfaces sit in the app shell (incoming calls need only the root navigatorKey — no widget).

Use this skill when

"add voice & video calls", "enable video call", "add call buttons", "show call logs". Precondition: chat already works (core done).

Prerequisites & install

cometchat_chat_uikit already depends on cometchat_calls_sdk (^5.0.4, in the kit's own dependencies: — verified in the 6.1.x pubspec), so the WebRTC engine is pulled in transitively; you do not need to add it. Add an explicit direct dependency only if you import cometchat_calls_sdk symbols directly (then pin it to keep resolution predictable):

bash
flutter pub add cometchat_calls_sdk   # optional — only if you import the package directly

Then the native config the docs require — all four steps, or calling silently never rings:

  1. cometchat_calls_sdk (transitive via the kit; pin ^5.0.4 in pubspec.yaml only if you added it directly).
  2. Android android/app/build.gradle.kts: minSdk = 26.
  3. iOS ios/Podfile: platform :ios, '15.1', then pod install.
  4. Permissions — camera + microphone (AndroidManifest.xml; NSCameraUsageDescription / NSMicrophoneUsageDescription in Info.plist). Without them the call surface opens black.

⚠️ The docs' floors are too low and these are compiler-verified instead. cometchat_calls_sdk pins minSdkVersion 26 in its android/build.gradle and platform :ios, '15.1' in its podspec (5.0.7; it was 13.0 through 5.0.6). Gradle and CocoaPods take the MAXIMUM across the dependency graph, so a lower app-level value is a build error, not a warning. Docs say 24 / 13.0 — DOCS-BACKLOG D7. Platform floors do move: re-verify against the installed package, not the page.

THE BARREL TRAP (read before writing a line)

Every call widget resolves only from the calls barrel, and that barrel does not re-export the chat widgets. A calls screen imports both:

dart
import 'package:cometchat_chat_uikit/cometchat_chat_uikit.dart';        // chat widgets + SDK types
import 'package:cometchat_chat_uikit/cometchat_calls_uikit.dart';       // ALL call widgets

Importing only the chat barrel and then emitting CometChatIncomingCall fails to compile with "Undefined name" — the single most common calls mistake.

Enable calling (BAKED — the #1 gotcha: TWO things must be true)

Calling is off until (a) the Calls SDK is installed and (b) calling is enabled in settings. Core inits via initFromSettings, which reads cometchat-settings.json — so flip it in the file:

json
{
  "appId": "APP_ID",
  "region": "REGION",
  "credentials": { "authKey": "AUTH_KEY" },
  "uiKit": { "subscribePresenceForAllUsers": true, "enableCalling": true },
  "chatSDK": { "autoEstablishSocketConnection": true }
}

uiKit.enableCalling is the only way to enable calling on the initFromSettings path — UIKitSettings defaults it to false. (If the project uses the classic builder instead, the equivalent is ..enableCalls = true plus ..callingConfiguration = CallingConfiguration().)

Wire it (BAKED)

1. A navigator key at the app root so the kit can present call screens from anywhere:

dart
import 'package:cometchat_chat_uikit/cometchat_calls_uikit.dart';
import 'package:flutter/material.dart';

Widget app(Widget home) => MaterialApp(
      navigatorKey: CallNavigationContext.navigatorKey,   // REQUIRED for call routing
      home: home,
    );

2. That's it for incoming calls — the kit does the rest. Do NOT add your own root CallListener or present CometChatIncomingCall yourself. When uiKit.enableCalling is true, the kit's CallEventService registers its own CometChat.addCallListener(...) on login and shows the incoming-call overlay automatically via IncomingCallOverlay (verified in cometchat_chat_uikit 6.1.x). Adding a second listener + a manual overlay produces a DOUBLE incoming-call screen. All you owe it is the navigatorKey from step 1 (that is how the overlay finds a context to present — without it the kit logs "Incoming call overlay cannot be shown").

To customize the incoming/outgoing/call-button surfaces, pass a CallingConfiguration — not a hand-rolled listener. On the classic builder path: ..callingConfiguration = CallingConfiguration(incomingCallConfiguration: ..., outgoingCallConfiguration: ..., callButtonsConfiguration: ...). CallingConfiguration (with incomingCallConfiguration / outgoingCallConfiguration / callButtonsConfiguration) is the kit's supported entry point; fetch its fields via the twin (call-features).

3. Extra surfaces you place yourself — call logs, and the incoming/outgoing widgets only when you build a fully custom flow — from the CALLS barrel:

dart
import 'package:cometchat_chat_uikit/cometchat_calls_uikit.dart';
import 'package:flutter/material.dart';

Widget logs() => const CometChatCallLogs();
// Only when replacing the built-in overlay with a fully custom flow — otherwise the kit
// already presents these for you:
Widget incoming(Call call, User user) => CometChatIncomingCall(call: call, user: user);
Widget outgoing(Call call, User user) => CometChatOutgoingCall(call: call, user: user);

Call buttons are already in CometChatMessageHeader — do NOT hand-roll them. They appear once calling is enabled; hide with hideVoiceCallButton / hideVideoCallButton. CometChatCallButtons is for placing them somewhere else (e.g. a profile screen).

Show full SKILL.md (259 more words)Show less

Common pitfalls (BAKED — the ones that actually bite)

  • Enabled in only one place — SDK installed but enableCalling false (or vice-versa) ⇒ every call affordance stays hidden, with no error.
  • Missing camera/mic permissions ⇒ the call surface opens black. Test on a real device; simulators have no camera.
  • Adding your own root CallListener + CometChatIncomingCall ⇒ a DOUBLE incoming-call screen. The kit's CallEventService already listens and shows the overlay when calling is enabled — don't duplicate it; customize via CallingConfiguration.
  • No navigatorKey (CallNavigationContext.navigatorKey on your MaterialApp) ⇒ the kit's overlay has no context to present from and logs "Incoming call overlay cannot be shown".
  • A call surface with no bounded height ⇒ zero-dimension video (../cometchat-flutter-v6-core/references/layout.md).
  • Group calls do not ring the way 1:1 does — group calling is join-based. Verify the behaviour you promise against call-features.
  • Details screens are host-composed — there is no CometChatCallLogDetails widget; build it from guide-call-log-details.

Verify it works

On TWO real devices (not simulators): calling enabled in the settings file and the Calls SDK installed → the header shows call buttons → placing a call rings the other device → accept shows the ongoing surface with real video → decline/end returns both sides cleanly → the call appears in CometChatCallLogs. A black surface means permissions; no ring means the enable pair or a missing navigatorKey; two incoming screens means a hand-added listener/CometChatIncomingCall.

Build the feature; do not write tests unless asked (RULES.md) — the above is an advisory human pass.

Close (after it builds): end with the shared 3-option selectable menu and WAIT — ① add another feature · ② customize theming · ③ test it manually (same contract as core, RULES.md §19).

© cometchat, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/cometchat-flutter-v6-calls of cometchat/cometchat-skills.

Open the folder on GitHubat commit 911b108

Compare with similar skills

Cometchat Flutter V6 Calls next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Cometchat Flutter V6 Calls compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Cometchat Flutter V6 Calls this skillcometchat/cometchat-skills129—~2.2kAutomated safety check: PassMIT
Liquid Glass Widgetssdegenaar/liquid_glass_widgets711—~3.8kAutomated safety check: PassMIT
SimdeckNativeScript/SimDeck152—~3.6kAutomated safety check: PassMIT
Detour Onboardingsoftware-mansion-labs/skills291—~2.8kAutomated safety check: PassNone
flutter_soloud Setupalnitak/flutter_soloud424—~3.6kAutomated safety check: NotesMIT
AI App Bridge UsemobileAiDev/ai-app-bridge227—~1.4kAutomated safety check: PassApache-2.0

Similar skills

  • Liquid Glass Widgets

    sdegenaar/liquid_glass_widgets

    Mastery guide and architectural rules for liquidglasswidgets.

    711 GitHub stars~3.8k tokensUpdated yesterday
    MobileAuto-check passed
  • Simdeck

    NativeScript/SimDeck

    A skill your agent uses for simulator lifecycle, app install/launch, live viewing, UI inspection, touch/keyboard automation, screenshots, recordings, logs, pasteboard, hardware controls, and…

    152 GitHub stars~3.6k tokensUpdated 25 days ago
    MobileAuto-check passed
  • Detour Onboarding

    software-mansion-labs/skills

    Complete onboarding guide for developers who are new to Detour, the open-source deferred deep linking SDK by Software Mansion.

    291 GitHub stars~2.8k tokensUpdated 9 days ago
    MobileAuto-check passed
  • flutter_soloud Setup

    alnitak/flutter_soloud

    Walks through adding the flutter_soloud audio engine to a Flutter app, with per-platform setup, initialization, binary-size and logging options, and output device switching.

    424 GitHub stars~3.6k tokensUpdated today
    MobileAuto-check: notes
  • AI App Bridge Use

    mobileAiDev/ai-app-bridge

    使用 AI App Bridge 观察、操作和验证 Android、iOS、Flutter、WebView 或 Web App;适用于真实交互、流程自动化和设备诊断。

    227 GitHub stars~1.4k tokensUpdated today
    MobileAuto-check passed
  • Flutter App

    ccplugins/awesome-claude-code-plugins

    Bootstrap a new Flutter mobile app with clean architecture, Riverpod, FVM-pinned SDK, current packages, and no deprecated APIs.

    967 GitHub stars~1.1k tokensUpdated 1 mo ago
    MobileAuto-check: notes

More from cometchat/cometchat-skills

All 97 skills in this repo
  • CometChat Android Calls SDK v5

    cometchat/cometchat-skills

    Adds voice and video calling to an Android app in Kotlin with the headless CometChat Calls SDK v5, covering meeting-style rooms, 1:1 ringing calls, call logs and recording.

    129 GitHub stars~5.2k tokensUpdated 2 days ago
    Auto-check passed
  • CometChat Android v5 Headless SDK

    cometchat/cometchat-skills

    Builds chat on Android with your own UI against the headless CometChat Chat SDK v5, covering install, Jetifier conflicts, credentials and init-before-login ordering.

    129 GitHub stars~4k tokensUpdated 2 days ago
    Auto-check passed
  • CometChat Angular Component Picker

    cometchat/cometchat-skills

    Picks and customizes CometChat's Angular UI Kit components by their verified component list, exact input and output event names, and the surfaces that have no kit component at all.

    129 GitHub stars~2.6k tokensUpdated 2 days ago
    Auto-check passed
  • CometChat Angular Features

    cometchat/cometchat-skills

    Enables or builds CometChat features such as polls, reactions, smart replies and pinned messages in an Angular app, first classifying how much client code each one needs.

    129 GitHub stars~2.6k tokensUpdated 2 days ago
    Auto-check passed
  • CometChat Angular Chat Placement

    cometchat/cometchat-skills

    Decides where CometChat chat UI goes in an Angular app: a dedicated route, a dashboard panel, a support widget or the full multi-pane app, with thread and search panels.

    129 GitHub stars~2.2k tokensUpdated 2 days ago
    Auto-check passed
  • Cometchat iOS V5 SDK

    cometchat/cometchat-skills

    Add voice & video calling to any iOS app FROM SCRATCH with the headless CometChat Calls SDK v5 (CometChatCallsSDK, via Swift Package Manager) — no UI Kit.

    129 GitHub stars~5.2k tokensUpdated 2 days ago
    Auto-check passed

Categories

Questions about Cometchat Flutter V6 Calls

What does Cometchat Flutter V6 Calls do?

Add voice & video calling to a Flutter app with the CometChat v6 UI Kit — turn calling on in settings, wire the native config and the root navigatorKey (the kit presents incoming/outgoing call…. Cometchat Flutter V6 Calls is an agent skill from cometchat/cometchat-skills. Add voice & video calling to a Flutter app with the CometChat v6 UI Kit — turn calling on in settings, wire the native config and the root navigatorKey (the kit presents incoming/outgoing call screens itself), and add call-log surfaces.

When should I use Cometchat Flutter V6 Calls?

Cometchat Flutter V6 Calls fits situations like: tasks that involve Cross-platform mobile apps; tasks that involve Design systems.

How do I install Cometchat Flutter V6 Calls in Claude Code?

Run `npx skills add cometchat/cometchat-skills --skill cometchat-flutter-v6-calls -a claude-code`. Or copy the skill folder (skills/cometchat-flutter-v6-calls in cometchat/cometchat-skills) into .claude/skills/cometchat-flutter-v6-calls in your project. Claude Code loads it when a task matches its description.

How do I install Cometchat Flutter V6 Calls in Codex?

Run `npx skills add cometchat/cometchat-skills --skill cometchat-flutter-v6-calls -a codex`. Or copy the skill folder (skills/cometchat-flutter-v6-calls in cometchat/cometchat-skills) into .agents/skills/cometchat-flutter-v6-calls in your project. Codex loads it when a task matches its description.

Can I use Cometchat Flutter V6 Calls in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cometchat/cometchat-skills --skill cometchat-flutter-v6-calls -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cometchat-flutter-v6-calls, .gemini/skills/cometchat-flutter-v6-calls, .github/skills/cometchat-flutter-v6-calls and .opencode/skills/cometchat-flutter-v6-calls in your project.

What does Cometchat Flutter V6 Calls need to run?

Going by SKILL.md and its folder, Cometchat Flutter V6 Calls needs the command-line tools its instructions call (flutter) and credentials named AUTH_KEY. Our summary lists: A credential in AUTH_KEY. Compatibility (from SKILL.md): Flutter >=3.38.9; cometchat_chat_uikit ^6 (6.1.x, verified 6.1.0); cometchat_calls_sdk ^5 (5.0.x — separate package).

Does Cometchat Flutter V6 Calls access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Cometchat Flutter V6 Calls safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Cometchat Flutter V6 Calls use?

Cometchat Flutter V6 Calls is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Cometchat Flutter V6 Calls use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Cometchat Flutter V6 Calls?

Skills that share tags, products or a category with Cometchat Flutter V6 Calls: Liquid Glass Widgets (sdegenaar/liquid_glass_widgets, 711 stars), Simdeck (NativeScript/SimDeck, 152 stars), Detour Onboarding (software-mansion-labs/skills, 291 stars) and flutter_soloud Setup (alnitak/flutter_soloud, 424 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Cometchat Flutter V6 Calls?

cometchat (a GitHub organization) maintains it in cometchat/cometchat-skills, which has 129 GitHub stars. The repository holds 97 skills in this directory. The repository was last updated on October 5, 2026.

Source: cometchat/cometchat-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.