From e982dd50b143c39829ffa7d95a5f33365d2a777e Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 11 Sep 2026 21:01:51 +0530
Subject: [PATCH 01/13] docs(cli): re-add CometChat CLI page (CLI-only
re-application of #470)
PR #470 merged into docs/skills-v5-temp, not main, and the CLI page was
later dropped from that branch. This re-applies only the CLI part on top
of current main:
- cli.mdx: CometChat CLI reference (@cometchat/skills-cli credentials CLI
+ @cometchat/skills pack CLI), content identical to #470
- docs.json: add "cli" to the hidden Developer Tools group
- index.mdx: add the CLI card next to the existing Agent Skills card
- agent-skills.mdx: link "run the CLI yourself" to /cli so the page is
reachable from where the CLI is mentioned
The agent part of #470 (agent-skills page, Developer Tools tab with
agent-skills + mcp-server, Agent Skills index card) is already on main.
Co-Authored-By: Claude Opus 5 (1M context)
Claude-Session: https://claude.ai/code/session_016PKoDnjiUuSaNFfuKLMJFs
---
agent-skills.mdx | 2 +-
cli.mdx | 211 +++++++++++++++++++++++++++++++++++++++++++++++
docs.json | 1 +
index.mdx | 5 ++
4 files changed, 218 insertions(+), 1 deletion(-)
create mode 100644 cli.mdx
diff --git a/agent-skills.mdx b/agent-skills.mdx
index 7d73d9870..e271852b6 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -116,7 +116,7 @@ fetching them from your dashboard:
- **Fetch from your dashboard (recommended)** — the skill runs the standalone
CometChat CLI for you, on demand: it opens the dashboard login in your
browser, lets you pick one of your **existing** apps, pulls the credentials,
- and writes a neutral `.cometchat/config.json`. You can also run the CLI yourself
+ and writes a neutral `.cometchat/config.json`. You can also [run the CLI yourself](/cli)
— it works on its own, in a script, or in CI.
- **Paste manually** — copy App ID, Region, and Auth Key from **Dashboard → Your
App → Credentials** if you'd rather not log in.
diff --git a/cli.mdx b/cli.mdx
new file mode 100644
index 000000000..85f7d8c24
--- /dev/null
+++ b/cli.mdx
@@ -0,0 +1,211 @@
+---
+title: "CometChat CLI"
+sidebarTitle: "CLI"
+description: "Authenticate against the CometChat dashboard, provision app credentials, toggle features, and manage the AI agent skills — all from your terminal, with JSON output for scripting and CI."
+canonical: "https://www.cometchat.com/docs/cli"
+---
+
+CometChat ships two complementary command-line tools:
+
+| CLI | Package | What it does |
+| --- | --- | --- |
+| **Credentials CLI** | `@cometchat/skills-cli` | Dashboard authentication + app-credential provisioning + feature toggles |
+| **Skills CLI** | `@cometchat/skills` | Install, list, and verify the [AI Agent Skills](/agent-skills) |
+
+
+The credentials CLI is **standalone** — use it on its own, in a script, or in CI.
+It's a pure dashboard/API client: it authenticates, fetches your app credentials
+(App ID / Region / Auth Key), and writes a neutral `.cometchat/config.json`. By
+design it does **not** detect your framework, write env files, or generate code,
+so it stays framework-agnostic and works with any stack. The
+[agent skills](/agent-skills) are one consumer that can run it for you — but the
+CLI doesn't require them.
+
+
+Both run through `npx` with no global install, and most commands accept `--json`
+for machine-readable output (the exceptions are `config set` and `config path`,
+which print plain text).
+
+## Prerequisites
+
+- **Node.js 18+** — both CLIs run through `npx`.
+- A **CometChat account** — [sign up free](https://app.cometchat.com). `auth login` opens the dashboard in your browser to authenticate.
+
+---
+
+## Credentials CLI — `@cometchat/skills-cli`
+
+Its only job is authenticating against the CometChat dashboard and fetching your
+**App ID / Region / Auth Key**, then writing a neutral `.cometchat/config.json`
+that any tool — your own scripts, a CI job, or the agent skills — can read.
+
+### Quick start
+
+```bash
+# 1. Authenticate against the dashboard (opens your browser)
+npx @cometchat/skills-cli auth login
+
+# 2. List the apps on your account
+npx @cometchat/skills-cli provision list --json
+
+# 3. Pick or create an app, fetch creds, write .cometchat/config.json
+npx @cometchat/skills-cli provision run
+
+# 4. Inspect the local config you just wrote
+npx @cometchat/skills-cli config show --json
+```
+
+### Authenticate
+
+```bash
+npx @cometchat/skills-cli auth login
+```
+
+Opens your browser at the CometChat dashboard for device authentication and
+stores the bearer token in your OS keychain (falling back to a `chmod 600` file).
+
+| Command | Purpose |
+| --- | --- |
+| `auth login` | Sign in via the dashboard (device auth) |
+| `auth status` | Show whether you're signed in |
+| `auth me` | Print the authenticated account |
+| `auth logout` | Clear the stored token |
+| `auth signup` | Create a CometChat account |
+
+### Provision credentials
+
+```bash
+npx @cometchat/skills-cli provision run
+```
+
+Fetches your **App ID / Region / Auth Key**, prints them as JSON, and writes a
+neutral `.cometchat/config.json`. It writes **no** framework env file — read
+`config.json` and set your framework's env vars (`.env` / `VITE_` /
+`NEXT_PUBLIC_` …) yourself, or let the agent skills do it.
+
+| Command | Purpose |
+| --- | --- |
+| `provision run` | Interactive: pick or create an app, fetch creds, write config |
+| `provision list` | List the apps on your account |
+| `provision create --name ` | Create a new app (`--name` required) |
+| `provision use --app-id ` | Select a specific app by id |
+
+Create a new app non-interactively — `--name` is required, `--region` and
+`--industry` are optional:
+
+```bash
+npx @cometchat/skills-cli provision create --name "My Chat" --region us
+```
+
+The config file `provision` writes:
+
+```json
+{
+ "$schema": "https://cometchat.com/schemas/config.json",
+ "version": 1,
+ "appId": "…",
+ "region": "us",
+ "authKey": "…",
+ "appName": "My Chat",
+ "plan": "…",
+ "industry": "…"
+}
+```
+
+
+`.cometchat/config.json` contains your **Auth Key** — add it to `.gitignore`. The
+Auth Key is for **development only**; in production, mint a per-user **auth
+token** on your backend and log in with `loginWithAuthToken()` instead of
+shipping the Auth Key to a client.
+
+
+### Manage config
+
+Read and edit the local `.cometchat/config.json` (credential/app state only):
+
+| Command | Purpose |
+| --- | --- |
+| `config init` | Create an empty config |
+| `config get ` | Read a single value |
+| `config set ` | Write a single value |
+| `config show` | Print the full config |
+| `config path` | Print the config file location |
+
+### Toggle features
+
+Enable or disable app features from the terminal:
+
+| Command | Purpose |
+| --- | --- |
+| `features list` | List available features and their state |
+| `features enable ` | Turn a feature on |
+| `features disable ` | Turn a feature off |
+| `features ai-key ` | Set the app's OpenAI key that AI features need |
+
+Set the OpenAI key AI features require before they can run — the key is a
+required argument:
+
+```bash
+npx @cometchat/skills-cli features ai-key
+```
+
+---
+
+## Skills CLI — `@cometchat/skills`
+
+Installs and manages the [AI Agent Skills](/agent-skills) that let your coding
+agent build with CometChat.
+
+```bash
+npx @cometchat/skills add
+```
+
+| Command | Purpose |
+| --- | --- |
+| `detect` | Probe the current project (framework, UI Kit, version conflicts) |
+| `add [--ide ]` | Install the skills for an AI agent (default: Claude Code) |
+| `list` | List the skills this pack ships |
+| `info ` | Show a skill's triggers + compatibility |
+| `verify [tier]` | Run the skill quality gates |
+| `catalog` | Refresh the component catalog from the installed UI Kit |
+| `doctor` | Environment health check |
+
+See [Agent Skills](/agent-skills) for the install picker, supported agents, and
+the prompt-driven workflow.
+
+---
+
+## Scripting and CI
+
+Most commands support `--json` (the exceptions are `config set` and
+`config path`, which print plain text), and `add` can be pinned to one agent with
+`--ide`, so the whole flow runs non-interactively:
+
+```bash
+# Authenticate, select a known app, and install the skills for Claude Code
+npx @cometchat/skills-cli auth login
+npx @cometchat/skills-cli provision use --app-id "$COMETCHAT_APP_ID" --json
+npx @cometchat/skills add --ide claude
+```
+
+Commands **exit non-zero on failure** and surface dashboard errors verbatim (for
+example `ACCESS_DENIED`, `EXPIRED`, `TIMEOUT`, `ABORTED`), so a broken auth or
+provisioning step fails the CI job loudly instead of continuing with empty
+credentials.
+
+## Next steps
+
+
+
+ Install the skills and build CometChat from natural-language prompts
+
+
+ Connect CometChat to any Model Context Protocol–compatible agent
+
+
+ The manual React UI Kit setup, credentials and all
+
+
+ Open the CometChat dashboard
+
+
diff --git a/docs.json b/docs.json
index 035cebab9..8882cabdf 100644
--- a/docs.json
+++ b/docs.json
@@ -98,6 +98,7 @@
"group": "Developer Tools",
"pages": [
"agent-skills",
+ "cli",
"mcp-server"
]
}
diff --git a/index.mdx b/index.mdx
index 66a7c14d6..2ae62f464 100644
--- a/index.mdx
+++ b/index.mdx
@@ -144,6 +144,11 @@ canonical: "https://cometchat.com/docs"
Let your AI coding agent add CometChat chat & calling to your React app.
+
+
+ Authenticate, provision credentials, and manage the skills from your terminal.
+
+
From 2b6dcdd3cc6c5fe2fe2dec0533a8e837be3e8bfe Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 11 Sep 2026 21:28:10 +0530
Subject: [PATCH 02/13] docs(cli): fix CI flow and CLI/agent-skills accuracy
issues from review
- cli.mdx: replace the Scripting and CI example. auth login needs a browser
approval and times out on CI runners; use config init with pipeline
secrets instead, and warn against --json there (it echoes the Auth Key).
- cli.mdx: config init creates/updates the config from --app-id, --region
and --auth-key; it isn't an "empty config".
- cli.mdx: add is non-interactive (defaults to Claude Code), not a picker.
- cli.mdx: the CLI already chmods config.json to 600, gitignores it, and
warns when it's tracked; say so instead of asking readers to do it.
- cli.mdx: document features --app-id, pass the OpenAI key from an env
var, note add connects the Docs MCP (--no-mcp), explain the
skills-cli package / `cometchat` command naming, add Angular next step.
- agent-skills.mdx: add has no picker and connects the Docs MCP; --global
is Claude Code only; list shows the skills the pack ships.
- index.mdx: 2-column "More" group so the 4 cards form a 2x2 grid;
Agent Skills card mentions Angular.
Co-Authored-By: Claude Opus 5 (1M context)
Claude-Session: https://claude.ai/code/session_016PKoDnjiUuSaNFfuKLMJFs
---
agent-skills.mdx | 12 ++++----
cli.mdx | 78 +++++++++++++++++++++++++++++++++++-------------
index.mdx | 4 +--
3 files changed, 65 insertions(+), 29 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index e271852b6..675815904 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -45,9 +45,9 @@ Run the installer in your project root:
npx @cometchat/skills add
```
-It detects your React or Angular setup and opens a picker to install the skills for
-the AI agent(s) you use. To pin a single agent — useful in CI or a Dockerfile — pass
-`--ide`:
+It detects your React or Angular setup and installs the skills for **Claude Code**
+by default. It also connects the CometChat Docs MCP server for that agent; pass
+`--no-mcp` to skip it. To install for a different agent, pass `--ide`:
```bash
npx @cometchat/skills add --ide claude # Claude Code → .claude/skills/
@@ -76,8 +76,8 @@ npx @cometchat/skills add --ide all # every supported agent
Claude Code, Kiro, and Replit get a native `SKILL.md` tree. The other agents get
an orienting router plus a `./.cometchat/skills` tree. Add `--global` (Claude
-Code, Kiro, and Replit only) to install into your user-level directory instead of
-the project.
+Code only) to install into your user-level `~/.claude/skills` instead of the
+project.
## Use it
@@ -222,7 +222,7 @@ existing files — you don't have to know the component or prop names.
## Manage the skills
- **Update** — re-run `npx @cometchat/skills add` to pull the latest skills; it overwrites the installed skill tree in place.
-- **Inspect** — `npx @cometchat/skills list` shows the installed skills, and `npx @cometchat/skills doctor` runs an environment health check.
+- **Inspect** — `npx @cometchat/skills list` lists the skills the pack ships, and `npx @cometchat/skills doctor` runs an environment health check.
- **Uninstall** — delete the installed skill directory for your agent (for example `.claude/skills/cometchat*`, `.agents/skills/`, or `./.cometchat/skills`).
- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key.
diff --git a/cli.mdx b/cli.mdx
index 85f7d8c24..3bb4459b6 100644
--- a/cli.mdx
+++ b/cli.mdx
@@ -7,10 +7,19 @@ canonical: "https://www.cometchat.com/docs/cli"
CometChat ships two complementary command-line tools:
-| CLI | Package | What it does |
+| Tool | Package | What it does |
| --- | --- | --- |
-| **Credentials CLI** | `@cometchat/skills-cli` | Dashboard authentication + app-credential provisioning + feature toggles |
-| **Skills CLI** | `@cometchat/skills` | Install, list, and verify the [AI Agent Skills](/agent-skills) |
+| **Credentials CLI** (`cometchat`) | `@cometchat/skills-cli` | Dashboard authentication + app-credential provisioning + feature toggles |
+| **Skills installer** | `@cometchat/skills` | Install, list, and verify the [AI Agent Skills](/agent-skills) |
+
+
+Despite its package name, `@cometchat/skills-cli` is the **credentials** tool —
+it doesn't install skills. It provides a `cometchat` command, so the CLI's own
+messages (for example *"Run `cometchat auth login`"*) use that short form. This
+page runs it through `npx`; `cometchat auth login` and
+`npx @cometchat/skills-cli auth login` are the same command. The skills
+themselves are installed by `@cometchat/skills`.
+
The credentials CLI is **standalone** — use it on its own, in a script, or in CI.
@@ -113,10 +122,13 @@ The config file `provision` writes:
```
-`.cometchat/config.json` contains your **Auth Key** — add it to `.gitignore`. The
-Auth Key is for **development only**; in production, mint a per-user **auth
-token** on your backend and log in with `loginWithAuthToken()` instead of
-shipping the Auth Key to a client.
+`.cometchat/config.json` contains your **Auth Key**. The CLI writes it readable
+by your user only (`chmod 600`) and adds it to `.gitignore` for you. If the file
+is **already tracked** by git, the CLI warns you — a `.gitignore` entry doesn't
+untrack it, so run `git rm --cached .cometchat/config.json` and commit. The Auth
+Key is for **development only**; in production, mint a per-user **auth token** on
+your backend and log in with `loginWithAuthToken()` instead of shipping the Auth
+Key to a client.
### Manage config
@@ -125,7 +137,7 @@ Read and edit the local `.cometchat/config.json` (credential/app state only):
| Command | Purpose |
| --- | --- |
-| `config init` | Create an empty config |
+| `config init [--app-id ] [--region ] [--auth-key ]` | Create or update the config from the given values — no dashboard login needed |
| `config get ` | Read a single value |
| `config set ` | Write a single value |
| `config show` | Print the full config |
@@ -133,7 +145,8 @@ Read and edit the local `.cometchat/config.json` (credential/app state only):
### Toggle features
-Enable or disable app features from the terminal:
+Enable or disable app features from the terminal. These commands call the
+dashboard, so run `auth login` first:
| Command | Purpose |
| --- | --- |
@@ -142,11 +155,19 @@ Enable or disable app features from the terminal:
| `features disable ` | Turn a feature off |
| `features ai-key ` | Set the app's OpenAI key that AI features need |
-Set the OpenAI key AI features require before they can run — the key is a
-required argument:
+Every `features` command targets the app in `.cometchat/config.json`. Pass
+`--app-id ` to target a different app:
+
+```bash
+npx @cometchat/skills-cli features list --app-id "$COMETCHAT_APP_ID" --json
+```
+
+AI features need an OpenAI key before they can run. The key is a required
+argument — pass it from an environment variable so it doesn't land in your shell
+history:
```bash
-npx @cometchat/skills-cli features ai-key
+npx @cometchat/skills-cli features ai-key "$OPENAI_API_KEY"
```
---
@@ -163,31 +184,43 @@ npx @cometchat/skills add
| Command | Purpose |
| --- | --- |
| `detect` | Probe the current project (framework, UI Kit, version conflicts) |
-| `add [--ide ]` | Install the skills for an AI agent (default: Claude Code) |
+| `add [--ide ] [--no-mcp]` | Install the skills for an AI agent (default: Claude Code) and connect the CometChat Docs MCP (`--no-mcp` skips it) |
| `list` | List the skills this pack ships |
| `info ` | Show a skill's triggers + compatibility |
| `verify [tier]` | Run the skill quality gates |
| `catalog` | Refresh the component catalog from the installed UI Kit |
| `doctor` | Environment health check |
-See [Agent Skills](/agent-skills) for the install picker, supported agents, and
-the prompt-driven workflow.
+`add` doesn't prompt: with no `--ide` it installs for Claude Code. See
+[Agent Skills](/agent-skills) for the supported agents and their `--ide` values,
+`--global`, and the prompt-driven workflow.
---
## Scripting and CI
-Most commands support `--json` (the exceptions are `config set` and
-`config path`, which print plain text), and `add` can be pinned to one agent with
-`--ide`, so the whole flow runs non-interactively:
+`auth login` is interactive: it opens a browser and waits for you to approve the
+sign-in, so on a CI runner it times out (`TIMEOUT`). In CI, skip the dashboard
+login and write the config straight from your pipeline secrets with
+`config init`, which needs no login:
```bash
-# Authenticate, select a known app, and install the skills for Claude Code
-npx @cometchat/skills-cli auth login
-npx @cometchat/skills-cli provision use --app-id "$COMETCHAT_APP_ID" --json
+# Write .cometchat/config.json from CI secrets, then install the skills for Claude Code
+npx @cometchat/skills-cli config init --app-id "$COMETCHAT_APP_ID" --region "$COMETCHAT_REGION" --auth-key "$COMETCHAT_AUTH_KEY"
npx @cometchat/skills add --ide claude
```
+
+Don't add `--json` to `config init` in CI — its JSON output includes the Auth
+Key, which would end up in your build logs. Store the App ID, Region, and Auth
+Key as masked CI secrets.
+
+
+The commands that call the dashboard — `provision` and `features` — need
+`auth login`, so run them from your own machine rather than in CI. Everywhere
+else, most commands support `--json` (the exceptions are `config set` and
+`config path`, which print plain text).
+
Commands **exit non-zero on failure** and surface dashboard errors verbatim (for
example `ACCESS_DENIED`, `EXPIRED`, `TIMEOUT`, `ABORTED`), so a broken auth or
provisioning step fails the CI job loudly instead of continuing with empty
@@ -205,6 +238,9 @@ credentials.
The manual React UI Kit setup, credentials and all
+
+ The manual Angular UI Kit setup, credentials and all
+
Open the CometChat dashboard
diff --git a/index.mdx b/index.mdx
index 2ae62f464..009a8659d 100644
--- a/index.mdx
+++ b/index.mdx
@@ -124,7 +124,7 @@ canonical: "https://cometchat.com/docs"
Additional solutions to customize your CometChat experience.
-
+
- Let your AI coding agent add CometChat chat & calling to your React app.
+ Let your AI coding agent add CometChat chat & calling to your React or Angular app.
From 1915fe5195d22278a5e5d286471ef868d347f7cb Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 11 Sep 2026 22:25:58 +0530
Subject: [PATCH 03/13] docs(cli): correct provision run behavior, Auth Key
output, MCP approval, uninstall
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- cli.mdx: provision run doesn't "pick or create" in general. It uses the
only app, prompts when there are several (entering `n` there creates
one; needs a TTY), and exits when there are none. Without --json it
prints "✓ App ()", not JSON.
- cli.mdx: note that config show (with or without --json), config get
authKey and provision run --json print the Auth Key in clear.
- agent-skills.mdx: Claude Code must approve the cometchat-docs MCP on
first start ("Pending approval" until then).
- agent-skills.mdx: full uninstall list, covering skill folders, the
managed router block in the agent's instruction file, and the
cometchat-docs MCP entry (Claude Code, Cursor, Gemini, Codex only).
Co-Authored-By: Claude Opus 5 (1M context)
Claude-Session: https://claude.ai/code/session_016PKoDnjiUuSaNFfuKLMJFs
---
agent-skills.mdx | 12 +++++++++---
cli.mdx | 29 +++++++++++++++++++++++------
2 files changed, 32 insertions(+), 9 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index 675815904..0012ae7ad 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -46,8 +46,11 @@ npx @cometchat/skills add
```
It detects your React or Angular setup and installs the skills for **Claude Code**
-by default. It also connects the CometChat Docs MCP server for that agent; pass
-`--no-mcp` to skip it. To install for a different agent, pass `--ide`:
+by default. It also connects the CometChat Docs MCP server (`cometchat-docs`) for
+that agent; pass `--no-mcp` to skip it. In Claude Code, approve `cometchat-docs`
+when `claude` asks on first start in the project — until then `claude mcp list`
+shows it as *Pending approval*, and the skills fall back to the docs site. To
+install for a different agent, pass `--ide`:
```bash
npx @cometchat/skills add --ide claude # Claude Code → .claude/skills/
@@ -223,7 +226,10 @@ existing files — you don't have to know the component or prop names.
- **Update** — re-run `npx @cometchat/skills add` to pull the latest skills; it overwrites the installed skill tree in place.
- **Inspect** — `npx @cometchat/skills list` lists the skills the pack ships, and `npx @cometchat/skills doctor` runs an environment health check.
-- **Uninstall** — delete the installed skill directory for your agent (for example `.claude/skills/cometchat*`, `.agents/skills/`, or `./.cometchat/skills`).
+- **Uninstall** — there's no uninstall command. Remove what `add` wrote for your agent:
+ - **The skill files** — `.claude/skills/cometchat*` (Claude Code), `.kiro/skills/cometchat*` (Kiro), `.agents/skills/cometchat*` (Replit), or `./.cometchat/skills` (every other agent).
+ - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.windsurfrules`, `.github/copilot-instructions.md`, `.clinerules/cometchat.md`, `GEMINI.md`, or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
+ - **The Docs MCP entry** — remove the `cometchat-docs` server from `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), `.gemini/settings.json` (Gemini), or `.codex/config.toml` (Codex). Other agents get no MCP entry.
- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key.
## Troubleshooting
diff --git a/cli.mdx b/cli.mdx
index 3bb4459b6..a12be6a4c 100644
--- a/cli.mdx
+++ b/cli.mdx
@@ -57,7 +57,7 @@ npx @cometchat/skills-cli auth login
# 2. List the apps on your account
npx @cometchat/skills-cli provision list --json
-# 3. Pick or create an app, fetch creds, write .cometchat/config.json
+# 3. Select an app, fetch its creds, write .cometchat/config.json
npx @cometchat/skills-cli provision run
# 4. Inspect the local config you just wrote
@@ -87,14 +87,25 @@ stores the bearer token in your OS keychain (falling back to a `chmod 600` file)
npx @cometchat/skills-cli provision run
```
-Fetches your **App ID / Region / Auth Key**, prints them as JSON, and writes a
-neutral `.cometchat/config.json`. It writes **no** framework env file — read
-`config.json` and set your framework's env vars (`.env` / `VITE_` /
-`NEXT_PUBLIC_` …) yourself, or let the agent skills do it.
+Fetches the app's **App ID / Region / Auth Key** and writes a neutral
+`.cometchat/config.json`, then prints the selected app (`✓ App ()`)
+and the config path. Add `--json` to get the credentials as JSON instead. It
+writes **no** framework env file — read `config.json` and set your framework's
+env vars (`.env` / `VITE_` / `NEXT_PUBLIC_` …) yourself, or let the agent skills
+do it.
+
+Which app it uses depends on how many your account has:
+
+- **One app** — it uses that app.
+- **Several apps** — it lists them and asks you to pick one, or to enter `n` to
+ create a new app. This needs an interactive terminal; in a script, use
+ `provision list` and then `provision use --app-id `.
+- **No apps** — it exits with an error. Create one first with
+ `provision create --name `.
| Command | Purpose |
| --- | --- |
-| `provision run` | Interactive: pick or create an app, fetch creds, write config |
+| `provision run` | Select an app (see above), fetch its creds, write config |
| `provision list` | List the apps on your account |
| `provision create --name ` | Create a new app (`--name` required) |
| `provision use --app-id ` | Select a specific app by id |
@@ -143,6 +154,12 @@ Read and edit the local `.cometchat/config.json` (credential/app state only):
| `config show` | Print the full config |
| `config path` | Print the config file location |
+
+`config show` prints the **Auth Key** in clear text, with or without `--json`,
+and so do `config get authKey` and `provision run --json`. Avoid running them
+while screen-sharing or anywhere the output is logged.
+
+
### Toggle features
Enable or disable app features from the terminal. These commands call the
From 8b9bc95c0dbdb2a2e853be905de1224e805c14e2 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Thu, 17 Sep 2026 20:51:34 +0530
Subject: [PATCH 04/13] docs(cli): cover all skill platforms, complete Auth Key
note and uninstall steps
- agent-skills: document every platform the pack ships (React, Angular,
React Native, iOS, Android, Flutter + headless Calls/Chat SDK skills),
--family, per-platform credential files, skills and compatibility
- agent-skills: uninstall covers top-level shared files, --global, and
single-file .clinerules
- cli: Auth Key note lists provision create/use and config set authKey;
warn that provision use prints the key in scripts; document --family
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 216 +++++++++++++++++++++++++++++------------------
cli.mdx | 28 +++---
index.mdx | 2 +-
3 files changed, 149 insertions(+), 97 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index 0012ae7ad..df5a7ad0d 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -1,7 +1,7 @@
---
title: "Build CometChat with AI Agent Skills"
sidebarTitle: "Agent Skills"
-description: "Install the CometChat agent skills and let your AI coding agent — Claude Code, Cursor, GitHub Copilot, Replit, and more — add production-grade chat and calling to your React or Angular app from natural-language prompts."
+description: "Install the CometChat agent skills and let your AI coding agent — Claude Code, Cursor, GitHub Copilot, Replit, and more — add production-grade chat and calling to your web or mobile app — React, Angular, React Native, iOS, Android, or Flutter — from natural-language prompts."
canonical: "https://www.cometchat.com/docs/agent-skills"
---
@@ -11,9 +11,11 @@ the agent has a short conversation with you (framework, intent, placement,
credentials), then writes production-grade integration code directly into the
files you already have.
-The skills author against the official **React UI Kit v7** and **Angular UI Kit v5**
-task guides and verify their output against them, so what the agent writes builds and
-runs against the current published UI Kit — not a hallucinated API.
+The skills cover six UI Kits — **React v7**, **Angular v5**, **React Native v5**,
+**iOS v5**, **Android v6**, and **Flutter v6** — plus headless **Calls SDK** skills for
+calling without a UI Kit. They author against the official CometChat task guides and
+verify their output against them, so what the agent writes builds and runs against the
+current published UI Kit or SDK — not a hallucinated API.
The skills work **inside your existing project** with your existing agent. They
@@ -25,16 +27,37 @@ into the app you're already building.
- **Node.js 18+** — the installer runs through `npx`, so there's nothing to install globally.
- A **CometChat account** — [sign up free](https://app.cometchat.com) to get an app's App ID, Region, and Auth Key.
-- An **existing React or Angular app**:
- - **React** 18+ — **Vite**, **Create React App**, **Next.js**, **React Router**, or **Astro**.
- - **Angular** 17–21 — **Angular CLI** or **Nx**. (Angular 22 is not yet installable: the UI Kit's peer range is `<22.0.0`.)
+- An **existing app** on one of the [supported platforms](#supported-platforms).
- One of the [supported AI coding agents](#supported-agents) below.
+### Supported platforms
+
+| Platform | UI Kit | Detected from | `--family` |
+| --- | --- | --- | --- |
+| **React** 18+ — Vite, Create React App, Next.js, React Router, Astro | React UI Kit v7 | `package.json` with `react` | `react` |
+| **Angular** 17–21 — Angular CLI or Nx | Angular UI Kit v5 | `package.json` with `@angular/core` | `angular` |
+| **React Native** — bare or Expo | React Native UI Kit v5 | `package.json` with `react-native` or `expo` | `react-native` |
+| **iOS** — Swift, Swift Package Manager | iOS UI Kit v5 | an Xcode project | `ios` |
+| **Android** — Jetpack Compose or Kotlin (Views) | Android UI Kit v6 | `settings.gradle` / `settings.gradle.kts` | `android` |
+| **Flutter** | Flutter UI Kit v6 | `pubspec.yaml` | `flutter` |
+
+Building your own UI instead of using a UI Kit? These headless skills are
+installed only when you ask for them with `--family`:
+
+| Headless skills | `--family` |
+| --- | --- |
+| Calls SDK v5 — JavaScript | `js-calls` |
+| Calls SDK v5 — React Native | `react-native-calls` |
+| Calls SDK v5 — iOS | `ios-calls` |
+| Calls SDK v5 — Android | `android-calls` |
+| Calls SDK v5 — Flutter | `flutter-calls` |
+| Chat SDK v5 — Android | `android-sdk` |
+
-The skills target the **React UI Kit v7** and the **Angular UI Kit v5** today. The
-installer tells you if it can't detect a supported setup — it never guesses or
-scaffolds a throwaway project. In an empty or ambiguous project the agent asks which
-framework you're building rather than assuming one.
+The installer tells you if it can't detect a supported setup — it never guesses or
+scaffolds a throwaway project. From a monorepo root, where no single framework is
+detected, run `add` inside the app folder or pass `--family`. Angular 22 isn't
+installable yet: the Angular UI Kit's peer range is `<22.0.0`.
## Install
@@ -45,8 +68,8 @@ Run the installer in your project root:
npx @cometchat/skills add
```
-It detects your React or Angular setup and installs the skills for **Claude Code**
-by default. It also connects the CometChat Docs MCP server (`cometchat-docs`) for
+It detects your platform, installs that platform's skills, and installs them for
+**Claude Code** by default. It also connects the CometChat Docs MCP server (`cometchat-docs`) for
that agent; pass `--no-mcp` to skip it. In Claude Code, approve `cometchat-docs`
when `claude` asks on first start in the project — until then `claude mcp list`
shows it as *Pending approval*, and the skills fall back to the docs site. To
@@ -59,6 +82,15 @@ npx @cometchat/skills add --ide replit # Replit Agent → .agents/skills/
npx @cometchat/skills add --ide all # every supported agent
```
+To pick the platform yourself — from a monorepo root, or to add headless SDK skills
+next to a UI Kit — pass `--family`. A second `add` keeps the skills the first one
+installed:
+
+```bash
+npx @cometchat/skills add --family flutter # force the Flutter UI Kit skills
+npx @cometchat/skills add --family js-calls # add the headless JS Calls SDK skills
+```
+
### Supported agents
| Agent | Install with |
@@ -97,11 +129,12 @@ or type the dispatcher directly:
/cometchat
```
-The `cometchat` dispatcher detects your framework and routes to `cometchat-onboarding`,
+The `cometchat` dispatcher detects your platform and routes to `cometchat-onboarding`,
which walks a short **discover → understand → plan → approve** flow. Once you
-approve the plan, it hands a scoped build directive to that family's `core` skill
-(`cometchat-react-v7-core` or `cometchat-angular-v5-core`) and pulls in the other
-skills as the plan needs them (components, placement, theming, features, calls, push).
+approve the plan, it hands a scoped build directive to your platform's `core` skill
+(for example `cometchat-react-v7-core`, `cometchat-ios-core`, or
+`cometchat-flutter-v6-core`) and pulls in the other skills as the plan needs them
+(components, placement, theming, features, calls, push).
Keep iterating in plain language afterward:
@@ -124,55 +157,74 @@ fetching them from your dashboard:
- **Paste manually** — copy App ID, Region, and Auth Key from **Dashboard → Your
App → Credentials** if you'd rather not log in.
-Either way, the **skill** then writes the framework env file (`.env` / `VITE_` /
-`NEXT_PUBLIC_` …) from those credentials — the CLI only fetches them and never
-touches your framework code.
+Either way, the **skill** then writes your platform's config from those
+credentials — the CLI only fetches them and never touches your app code:
+
+| Platform | Where the credentials go |
+| --- | --- |
+| React | `.env` with your bundler's prefix (`VITE_` / `NEXT_PUBLIC_` / `PUBLIC_` …) |
+| Angular | `src/environments/environment.ts` |
+| React Native | `.env` |
+| iOS | `Secrets.xcconfig` |
+| Android | `app/src/main/assets/cometchat-settings.json` |
+| Flutter | `cometchat-settings.json` (a registered asset) |
**Keep credentials out of version control.** Both `.cometchat/config.json` and
-the generated env file contain your **Auth Key**. Make sure they're in
-`.gitignore` — Vite, CRA, and Astro ignore only `*.local` (not `.env`), so add
-`.env` yourself; Next.js ignores `.env.local` by default. The Auth Key is for
-**development only**: in production, mint a short-lived per-user **auth token** on
-your backend and log in with `loginWithAuthToken()` — never ship the Auth Key to
-a production client.
+the generated credentials file contain your **Auth Key**. Make sure they're in
+`.gitignore` — for example, Vite, CRA, and Astro ignore only `*.local` (not
+`.env`), so add `.env` yourself. The Auth Key is for **development only**: in
+production, mint a short-lived per-user **auth token** on your backend and log in
+with it (`loginWithAuthToken()` on web) — never ship the Auth Key to a production
+client.
## What's in the pack
-Task-shaped skills the agent loads on demand — two shared, then one set per framework:
+Task-shaped skills the agent loads on demand. `add` installs the shared skills plus
+the skill set for **your** platform only, so one platform's skills never answer
+another platform's prompts.
+
+**Shared skills** (installed for every platform)
| Skill | Purpose |
| --- | --- |
-| `cometchat` | Thin dispatcher — detect the framework and route |
+| `cometchat` | Thin dispatcher — detect the platform and route |
| `cometchat-onboarding` | Discover → understand → plan → approve (the front door) |
-| `cometchat-react-v7-core` | Install · credentials · init → login → render · the golden-path chat surface |
-| `cometchat-react-v7-components` | The v7 component catalog + props / slots |
-| `cometchat-react-v7-placement` | Where chat lives — full app / sidebar / popup / embed |
-| `cometchat-react-v7-customization` | Theming · brand · light/dark · view slots |
-| `cometchat-react-v7-patterns` | Vite / Next.js / React Router / Astro glue (env · SSR · routing) |
-| `cometchat-react-v7-features` | Enable a feature — reactions · polls · AI · moderation · … |
-| `cometchat-react-v7-calls` | Voice / video calling |
-| `cometchat-react-v7-push` | Web push (Notifications product) |
-| `cometchat-react-v7-migration` | Upgrade a v6 UI Kit → v7 |
-
-**Angular UI Kit v5**
+| `cometchat-migrate-from-sendbird` · `-twilio` · `-getstream` | Migrate an app from Sendbird, Twilio Conversations, or Stream in one prompt |
+| `cometchat-security` · `cometchat-compliance` · `cometchat-self-host` · `cometchat-moderation` | Enterprise auth, data governance, self-hosting, and trust & safety |
+| `cometchat-a11y` · `cometchat-i18n` · `cometchat-audit` · `cometchat-analytics` | Accessibility, localization, integration review, and usage metrics |
+
+**Platform skills**
+
+Every UI Kit platform ships a `core` skill (install · credentials · init → login →
+render · the golden-path chat surface) plus the task skills below:
+
+| Platform | Skill prefix | Skills |
+| --- | --- | --- |
+| React v7 | `cometchat-react-v7-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` |
+| Angular v5 | `cometchat-angular-v5-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` |
+| React Native v5 | `cometchat-react-native-` | `core` · `components` · `placement` · `customization` · `expo-patterns` · `bare-patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` · `sdk` |
+| iOS v5 | `cometchat-ios-` | `core` · `components` · `placement` · `customization` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` |
+| Android v6 | `cometchat-android-v6-` | `core` · `compose-components` · `compose-placement` · `compose-customization` · `kotlin-components` · `kotlin-placement` · `kotlin-customization` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `builder-settings` · `events` · `extensions` · `migration` |
+| Flutter v6 | `cometchat-flutter-v6-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `events` · `migration` |
+
+What the task skills do:
| Skill | Purpose |
| --- | --- |
-| `cometchat-angular-v5-core` | Install · credentials · init → login → render · the golden-path chat surface |
-| `cometchat-angular-v5-components` | The v5 component catalog + inputs / outputs / view slots |
-| `cometchat-angular-v5-placement` | Where chat lives — chat shell · thread and details panels · routing |
-| `cometchat-angular-v5-customization` | Theming · brand · light/dark · view slots |
-| `cometchat-angular-v5-patterns` | Angular CLI / Nx glue (environments · SSR · lazy routes · RxJS) |
-| `cometchat-angular-v5-features` | Enable a feature — reactions · polls · AI · moderation · … |
-| `cometchat-angular-v5-calls` | Voice / video calling |
-| `cometchat-angular-v5-push` | Web push (Notifications product) |
-| `cometchat-angular-v5-production` | Server-minted auth tokens · hardening before you ship |
-| `cometchat-angular-v5-testing` | Testing an app that embeds CometChat |
-| `cometchat-angular-v5-troubleshooting` | Diagnosing a broken integration |
+| `components` | The UI Kit component catalog + props / inputs / slots |
+| `placement` | Where chat lives — full screen, sidebar, popup, embedded panel, navigation |
+| `customization` | Theming · brand · light/dark · view slots |
+| `patterns` | Framework glue — e.g. Vite / Next.js / React Router / Astro, Angular CLI / Nx, Expo vs bare React Native |
+| `features` | Enable a feature — reactions · polls · AI · moderation · … |
+| `calls` | Voice / video calling with the UI Kit |
+| `push` | Push notifications (Notifications product) |
+| `production` | Server-minted auth tokens · hardening before you ship |
+| `testing` · `troubleshooting` | Test an app that embeds CometChat · diagnose a broken integration |
+| `migration` | Upgrade from the previous UI Kit major |
## Example prompts
@@ -217,7 +269,7 @@ plain language. Example prompts, grouped by goal:
- *"Set up production authentication with auth tokens."*
- *"Add web push notifications."*
-- *"Migrate my v6 UI Kit to v7."*
+- *"Upgrade my app to the latest UI Kit version."*
The agent plans each change with you, then writes the integration into your
existing files — you don't have to know the component or prop names.
@@ -227,9 +279,9 @@ existing files — you don't have to know the component or prop names.
- **Update** — re-run `npx @cometchat/skills add` to pull the latest skills; it overwrites the installed skill tree in place.
- **Inspect** — `npx @cometchat/skills list` lists the skills the pack ships, and `npx @cometchat/skills doctor` runs an environment health check.
- **Uninstall** — there's no uninstall command. Remove what `add` wrote for your agent:
- - **The skill files** — `.claude/skills/cometchat*` (Claude Code), `.kiro/skills/cometchat*` (Kiro), `.agents/skills/cometchat*` (Replit), or `./.cometchat/skills` (every other agent).
- - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.windsurfrules`, `.github/copilot-instructions.md`, `.clinerules/cometchat.md`, `GEMINI.md`, or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
- - **The Docs MCP entry** — remove the `cometchat-docs` server from `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), `.gemini/settings.json` (Gemini), or `.codex/config.toml` (Codex). Other agents get no MCP entry.
+ - **The skill files** — `.claude/skills/cometchat*` (Claude Code), `.kiro/skills/cometchat*` (Kiro), `.agents/skills/cometchat*` (Replit), or `./.cometchat/skills` (every other agent). For Claude Code, Kiro, and Replit, also delete the shared files `add` puts at the top of that folder: `RULES.md`, `peers.yaml`, `catalogs/`, and the `features*.json` / `contracts*.json` files. For a `--global` install, use `~/.claude/skills` instead.
+ - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.windsurfrules`, `.github/copilot-instructions.md`, `.clinerules/cometchat.md` (or the `.clinerules` file itself, if yours is a single file), `GEMINI.md`, or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
+ - **The Docs MCP entry** — remove the `cometchat-docs` server from `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), `.gemini/settings.json` (Gemini), or `.codex/config.toml` (Codex). For a `--global` Claude Code install, run `claude mcp remove --scope user cometchat-docs`. Other agents get no MCP entry.
- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key.
## Troubleshooting
@@ -237,33 +289,22 @@ existing files — you don't have to know the component or prop names.
| Symptom | Likely cause | Fix |
| --- | --- | --- |
| The agent doesn't pick up the skills | Installed for a different agent, or a router-based agent needs pointing at the tree | Re-run `npx @cometchat/skills add --ide `. For router agents (Cursor, Copilot, …) open `.cometchat/skills/cometchat/SKILL.md` to orient it. |
-| Blank screen, no errors | A UI Kit component rendered before `init()` + `login()` resolved, or the wrong Region / env prefix | The `init → login → render` order is required. Check that the Region matches your dashboard app and the env prefix matches your bundler (`VITE_` / `NEXT_PUBLIC_` / `PUBLIC_`). |
+| Blank screen, no errors | A UI Kit component rendered before `init` + `login` resolved, or the credentials weren't picked up | The `init → login → render` order is required. Check that the Region matches your dashboard app and that the app reads the [credentials file](#connect-your-credentials) for your platform (on web, the env prefix must match your bundler: `VITE_` / `NEXT_PUBLIC_` / `PUBLIC_`). |
| `login()` fails — "user not found" | Logging in a UID that doesn't exist in the app | Use a UID that exists (Dashboard → your app → **Users**; fresh apps seed `cometchat-uid-1`). |
| Auth error on init / login | Region mismatch between your code and the dashboard app | Re-check the Region (`us` / `eu` / `in`) in both the dashboard and your env file. |
-| `ERROR_API_KEY_NOT_FOUND` | An env var is empty or not picked up by the bundler | Confirm the env file uses the right prefix for your bundler, then restart the dev server. |
-| Version conflict during install | An older **v6** UI Kit is already installed | Ask the agent to migrate — the `cometchat-react-v7-migration` skill upgrades v6 → v7. |
+| `ERROR_API_KEY_NOT_FOUND` | A credential is empty or not picked up by the build | Confirm the credentials file for your platform is filled in (on web, with the right env prefix for your bundler), then rebuild or restart the dev server. |
+| Version conflict during install | An older UI Kit major is already installed (for example React v6 or Android v5) | Ask the agent to migrate — your platform's `migration` skill upgrades it to the version the skills target. |
## Compatibility
-**React**
-
-| Dependency | Version |
+| Platform | Packages |
| --- | --- |
-| `@cometchat/chat-uikit-react` | `7.x` (verified 7.1.x) |
-| `@cometchat/chat-sdk-javascript` | `4.x` |
-| `@cometchat/calls-sdk-javascript` | `5.x` (calling) |
-| React | `≥ 18` |
-
-**Angular**
-
-| Dependency | Version |
-| --- | --- |
-| `@cometchat/chat-uikit-angular` | `5.x` (verified 5.1.0) |
-| `@cometchat/chat-sdk-javascript` | `^4.1.13` |
-| `@cometchat/cards-angular` | `^1.0.0` |
-| `@cometchat/calls-sdk-javascript` | `^5.0.3` (calling) |
-| `dompurify` | `^3.0.0` |
-| Angular | `≥ 17` and `< 22` |
+| React v7 | `@cometchat/chat-uikit-react` `7.x` (verified 7.1.x) · `@cometchat/chat-sdk-javascript` `4.x` · `@cometchat/calls-sdk-javascript` `5.x` (calling) · React `≥ 18` |
+| Angular v5 | `@cometchat/chat-uikit-angular` `5.x` (verified 5.1.0) · `@cometchat/chat-sdk-javascript` `^4.1.13` · `@cometchat/cards-angular` `^1.0.0` · `@cometchat/calls-sdk-javascript` `^5.0.3` (calling) · `dompurify` `^3.0.0` · Angular `≥ 17` and `< 22` |
+| React Native v5 | `@cometchat/chat-uikit-react-native` `5.x` · `@cometchat/chat-sdk-react-native` `4.x` · `@cometchat/calls-sdk-react-native` `5.x` (calling) |
+| iOS v5 | `CometChatUIKitSwift` `5.1.x` · `CometChatSDK` `4.1.x` · `CometChatCallsSDK` `5.0.x` (calling) — Swift Package Manager |
+| Android v6 | `com.cometchat:chatuikit-compose-android` or `chatuikit-kotlin-android` `6.0.x` · `chat-sdk-android` `5.0.x` · `calls-sdk-android` `5.0.x` (calling) |
+| Flutter v6 | `cometchat_chat_uikit` `^6` (verified 6.1.x) · `cometchat_calls_sdk` `^5` (calling) |
Angular 22 is not yet installable — the UI Kit's peer range is `>=17.0.0 <22.0.0`, so
@@ -277,16 +318,25 @@ a kit release widens the range.
Connect CometChat to any Model Context Protocol–compatible agent
-
- The manual React UI Kit setup the skills automate
+
+ Fetch credentials and manage the skills from your terminal
+
+
+ The manual React setup the skills automate
+
+
+ The manual Angular setup the skills automate
+
+
+ The manual React Native setup the skills automate
-
- The manual Angular UI Kit setup the skills automate
+
+ The manual iOS setup the skills automate
-
- Browse all prebuilt React components
+
+ The manual Android setup the skills automate
-
- Browse all prebuilt Angular components
+
+ The manual Flutter setup the skills automate
diff --git a/cli.mdx b/cli.mdx
index a12be6a4c..cfa994b00 100644
--- a/cli.mdx
+++ b/cli.mdx
@@ -99,7 +99,8 @@ Which app it uses depends on how many your account has:
- **One app** — it uses that app.
- **Several apps** — it lists them and asks you to pick one, or to enter `n` to
create a new app. This needs an interactive terminal; in a script, use
- `provision list` and then `provision use --app-id `.
+ `provision list` and then `provision use --app-id ` (it prints the Auth
+ Key, so keep its output out of logs).
- **No apps** — it exits with an error. Create one first with
`provision create --name `.
@@ -155,9 +156,11 @@ Read and edit the local `.cometchat/config.json` (credential/app state only):
| `config path` | Print the config file location |
-`config show` prints the **Auth Key** in clear text, with or without `--json`,
-and so do `config get authKey` and `provision run --json`. Avoid running them
-while screen-sharing or anywhere the output is logged.
+These commands print the **Auth Key** in clear text: `provision create` and
+`provision use` (with or without `--json`), `config show` (with or without
+`--json`), `config get authKey`, `config set authKey`, and `provision run --json`.
+Avoid running them while screen-sharing, and in scripts or CI, where the output
+is logged.
### Toggle features
@@ -201,16 +204,18 @@ npx @cometchat/skills add
| Command | Purpose |
| --- | --- |
| `detect` | Probe the current project (framework, UI Kit, version conflicts) |
-| `add [--ide ] [--no-mcp]` | Install the skills for an AI agent (default: Claude Code) and connect the CometChat Docs MCP (`--no-mcp` skips it) |
+| `add [--ide ] [--family ] [--no-mcp]` | Install the skills for your project's platform and an AI agent (default: Claude Code), and connect the CometChat Docs MCP (`--no-mcp` skips it) |
| `list` | List the skills this pack ships |
| `info ` | Show a skill's triggers + compatibility |
| `verify [tier]` | Run the skill quality gates |
| `catalog` | Refresh the component catalog from the installed UI Kit |
| `doctor` | Environment health check |
-`add` doesn't prompt: with no `--ide` it installs for Claude Code. See
-[Agent Skills](/agent-skills) for the supported agents and their `--ide` values,
-`--global`, and the prompt-driven workflow.
+`add` doesn't prompt: with no `--ide` it installs for Claude Code, and with no
+`--family` it installs the skills for the platform it detects in the current
+project. See [Agent Skills](/agent-skills) for the supported platforms and
+agents, their `--family` and `--ide` values, `--global`, and the prompt-driven
+workflow.
---
@@ -252,11 +257,8 @@ credentials.
Connect CometChat to any Model Context Protocol–compatible agent
-
- The manual React UI Kit setup, credentials and all
-
-
- The manual Angular UI Kit setup, credentials and all
+
+ Pick a UI Kit or SDK for your platform and set it up by hand
Open the CometChat dashboard
diff --git a/index.mdx b/index.mdx
index 009a8659d..a1e37605c 100644
--- a/index.mdx
+++ b/index.mdx
@@ -142,7 +142,7 @@ canonical: "https://cometchat.com/docs"
- Let your AI coding agent add CometChat chat & calling to your React or Angular app.
+ Let your AI coding agent add CometChat chat & calling to your web or mobile app — React, Angular, React Native, iOS, Android, or Flutter.
From 912fd55aa2b8aa1f6fbab5391a90ee937f621094 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Thu, 17 Sep 2026 20:54:22 +0530
Subject: [PATCH 05/13] =?UTF-8?q?docs(cli):=20drop=20--family=20from=20ski?=
=?UTF-8?q?lls=20docs=20=E2=80=94=20the=20installer=20detects=20the=20plat?=
=?UTF-8?q?form?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 48 +++++++++++++-----------------------------------
cli.mdx | 11 +++++------
2 files changed, 18 insertions(+), 41 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index df5a7ad0d..bfea6b2c4 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -12,10 +12,9 @@ credentials), then writes production-grade integration code directly into the
files you already have.
The skills cover six UI Kits — **React v7**, **Angular v5**, **React Native v5**,
-**iOS v5**, **Android v6**, and **Flutter v6** — plus headless **Calls SDK** skills for
-calling without a UI Kit. They author against the official CometChat task guides and
+**iOS v5**, **Android v6**, and **Flutter v6**. They author against the official CometChat task guides and
verify their output against them, so what the agent writes builds and runs against the
-current published UI Kit or SDK — not a hallucinated API.
+current published UI Kit — not a hallucinated API.
The skills work **inside your existing project** with your existing agent. They
@@ -32,32 +31,20 @@ into the app you're already building.
### Supported platforms
-| Platform | UI Kit | Detected from | `--family` |
-| --- | --- | --- | --- |
-| **React** 18+ — Vite, Create React App, Next.js, React Router, Astro | React UI Kit v7 | `package.json` with `react` | `react` |
-| **Angular** 17–21 — Angular CLI or Nx | Angular UI Kit v5 | `package.json` with `@angular/core` | `angular` |
-| **React Native** — bare or Expo | React Native UI Kit v5 | `package.json` with `react-native` or `expo` | `react-native` |
-| **iOS** — Swift, Swift Package Manager | iOS UI Kit v5 | an Xcode project | `ios` |
-| **Android** — Jetpack Compose or Kotlin (Views) | Android UI Kit v6 | `settings.gradle` / `settings.gradle.kts` | `android` |
-| **Flutter** | Flutter UI Kit v6 | `pubspec.yaml` | `flutter` |
-
-Building your own UI instead of using a UI Kit? These headless skills are
-installed only when you ask for them with `--family`:
-
-| Headless skills | `--family` |
+| Platform | UI Kit |
| --- | --- |
-| Calls SDK v5 — JavaScript | `js-calls` |
-| Calls SDK v5 — React Native | `react-native-calls` |
-| Calls SDK v5 — iOS | `ios-calls` |
-| Calls SDK v5 — Android | `android-calls` |
-| Calls SDK v5 — Flutter | `flutter-calls` |
-| Chat SDK v5 — Android | `android-sdk` |
+| **React** 18+ — Vite, Create React App, Next.js, React Router, Astro | React UI Kit v7 |
+| **Angular** 17–21 — Angular CLI or Nx | Angular UI Kit v5 |
+| **React Native** — bare or Expo | React Native UI Kit v5 |
+| **iOS** — Swift, Swift Package Manager | iOS UI Kit v5 |
+| **Android** — Jetpack Compose or Kotlin (Views) | Android UI Kit v6 |
+| **Flutter** | Flutter UI Kit v6 |
-The installer tells you if it can't detect a supported setup — it never guesses or
-scaffolds a throwaway project. From a monorepo root, where no single framework is
-detected, run `add` inside the app folder or pass `--family`. Angular 22 isn't
-installable yet: the Angular UI Kit's peer range is `<22.0.0`.
+The installer detects your platform from the project — you don't tell it which one.
+If it can't detect a supported setup (for example at a monorepo root), it tells you
+instead of guessing; run `add` inside the app's folder. Angular 22 isn't installable
+yet: the Angular UI Kit's peer range is `<22.0.0`.
## Install
@@ -82,15 +69,6 @@ npx @cometchat/skills add --ide replit # Replit Agent → .agents/skills/
npx @cometchat/skills add --ide all # every supported agent
```
-To pick the platform yourself — from a monorepo root, or to add headless SDK skills
-next to a UI Kit — pass `--family`. A second `add` keeps the skills the first one
-installed:
-
-```bash
-npx @cometchat/skills add --family flutter # force the Flutter UI Kit skills
-npx @cometchat/skills add --family js-calls # add the headless JS Calls SDK skills
-```
-
### Supported agents
| Agent | Install with |
diff --git a/cli.mdx b/cli.mdx
index cfa994b00..ff7e4f315 100644
--- a/cli.mdx
+++ b/cli.mdx
@@ -204,18 +204,17 @@ npx @cometchat/skills add
| Command | Purpose |
| --- | --- |
| `detect` | Probe the current project (framework, UI Kit, version conflicts) |
-| `add [--ide ] [--family ] [--no-mcp]` | Install the skills for your project's platform and an AI agent (default: Claude Code), and connect the CometChat Docs MCP (`--no-mcp` skips it) |
+| `add [--ide ] [--no-mcp]` | Install the skills for your project's platform and an AI agent (default: Claude Code), and connect the CometChat Docs MCP (`--no-mcp` skips it) |
| `list` | List the skills this pack ships |
| `info ` | Show a skill's triggers + compatibility |
| `verify [tier]` | Run the skill quality gates |
| `catalog` | Refresh the component catalog from the installed UI Kit |
| `doctor` | Environment health check |
-`add` doesn't prompt: with no `--ide` it installs for Claude Code, and with no
-`--family` it installs the skills for the platform it detects in the current
-project. See [Agent Skills](/agent-skills) for the supported platforms and
-agents, their `--family` and `--ide` values, `--global`, and the prompt-driven
-workflow.
+`add` doesn't prompt: it installs the skills for the platform it detects in the
+current project, for Claude Code unless you pass `--ide`. See
+[Agent Skills](/agent-skills) for the supported platforms and agents, their
+`--ide` values, `--global`, and the prompt-driven workflow.
---
From fa7aa11cff3ba5576622069789bd9d133a7b7030 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Thu, 17 Sep 2026 21:00:33 +0530
Subject: [PATCH 06/13] docs(agent-skills): fix React env files/prefixes,
simplify description, soften credentials intro
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index bfea6b2c4..8917ad380 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -1,7 +1,7 @@
---
title: "Build CometChat with AI Agent Skills"
sidebarTitle: "Agent Skills"
-description: "Install the CometChat agent skills and let your AI coding agent — Claude Code, Cursor, GitHub Copilot, Replit, and more — add production-grade chat and calling to your web or mobile app — React, Angular, React Native, iOS, Android, or Flutter — from natural-language prompts."
+description: "Install the CometChat agent skills so your AI coding agent (Claude Code, Cursor, GitHub Copilot, Replit, and more) can add production-grade chat and calling to your React, Angular, React Native, iOS, Android, or Flutter app from natural-language prompts."
canonical: "https://www.cometchat.com/docs/agent-skills"
---
@@ -123,7 +123,7 @@ Keep iterating in plain language afterward:
## Connect your credentials
-You don't paste your **App ID / Region / Auth Key** by hand. During the build,
+You usually don't have to paste your **App ID / Region / Auth Key** by hand. During the build,
when the skill notices they're missing, it offers two paths and defaults to
fetching them from your dashboard:
@@ -140,7 +140,7 @@ credentials — the CLI only fetches them and never touches your app code:
| Platform | Where the credentials go |
| --- | --- |
-| React | `.env` with your bundler's prefix (`VITE_` / `NEXT_PUBLIC_` / `PUBLIC_` …) |
+| React | `.env` (`.env.local` for Next.js) with your bundler's prefix: `VITE_` / `REACT_APP_` / `NEXT_PUBLIC_` / `PUBLIC_` |
| Angular | `src/environments/environment.ts` |
| React Native | `.env` |
| iOS | `Secrets.xcconfig` |
@@ -267,7 +267,7 @@ existing files — you don't have to know the component or prop names.
| Symptom | Likely cause | Fix |
| --- | --- | --- |
| The agent doesn't pick up the skills | Installed for a different agent, or a router-based agent needs pointing at the tree | Re-run `npx @cometchat/skills add --ide `. For router agents (Cursor, Copilot, …) open `.cometchat/skills/cometchat/SKILL.md` to orient it. |
-| Blank screen, no errors | A UI Kit component rendered before `init` + `login` resolved, or the credentials weren't picked up | The `init → login → render` order is required. Check that the Region matches your dashboard app and that the app reads the [credentials file](#connect-your-credentials) for your platform (on web, the env prefix must match your bundler: `VITE_` / `NEXT_PUBLIC_` / `PUBLIC_`). |
+| Blank screen, no errors | A UI Kit component rendered before `init` + `login` resolved, or the credentials weren't picked up | The `init → login → render` order is required. Check that the Region matches your dashboard app and that the app reads the [credentials file](#connect-your-credentials) for your platform (on React, the env prefix must match your bundler: `VITE_` / `REACT_APP_` / `NEXT_PUBLIC_` / `PUBLIC_`). |
| `login()` fails — "user not found" | Logging in a UID that doesn't exist in the app | Use a UID that exists (Dashboard → your app → **Users**; fresh apps seed `cometchat-uid-1`). |
| Auth error on init / login | Region mismatch between your code and the dashboard app | Re-check the Region (`us` / `eu` / `in`) in both the dashboard and your env file. |
| `ERROR_API_KEY_NOT_FOUND` | A credential is empty or not picked up by the build | Confirm the credentials file for your platform is filled in (on web, with the right env prefix for your bundler), then rebuild or restart the dev server. |
From 62e76d9ed97e5376f8e8ba036897b90a7d4d9d2c Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 18 Sep 2026 11:56:48 +0530
Subject: [PATCH 07/13] =?UTF-8?q?docs(agent-skills):=20match=20the=20publi?=
=?UTF-8?q?shed=20pack=20=E2=80=94=20real=20skill=20lists,=20headless=20SD?=
=?UTF-8?q?K=20skills,=20Flutter=20asset=20exception?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- shared skills are only the dispatcher and onboarding; drop the migration,
enterprise and cross-family skills that @cometchat/skills@5.0.0 doesn't ship
- React v7 and iOS don't ship production/testing/troubleshooting
- document the headless Calls/Chat SDK skills and the --family flag they need
- Flutter's cometchat-settings.json is a registered asset: commit a placeholder
instead of gitignoring it
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 46 ++++++++++++++++++++++++++++++++++++----------
1 file changed, 36 insertions(+), 10 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index 8917ad380..df543b3d5 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -43,8 +43,9 @@ into the app you're already building.
The installer detects your platform from the project — you don't tell it which one.
If it can't detect a supported setup (for example at a monorepo root), it tells you
-instead of guessing; run `add` inside the app's folder. Angular 22 isn't installable
-yet: the Angular UI Kit's peer range is `<22.0.0`.
+instead of guessing; run `add` inside the app's folder. (The one time you name a
+platform yourself is the [headless SDK skills](#building-your-own-ui).) Angular 22
+isn't installable yet: the Angular UI Kit's peer range is `<22.0.0`.
## Install
@@ -155,6 +156,11 @@ the generated credentials file contain your **Auth Key**. Make sure they're in
production, mint a short-lived per-user **auth token** on your backend and log in
with it (`loginWithAuthToken()` on web) — never ship the Auth Key to a production
client.
+
+**Flutter is the exception:** `cometchat-settings.json` is a registered asset, so a
+missing file breaks `flutter build` on a fresh clone. Don't gitignore it — commit a
+**placeholder** with an empty `authKey`, and fill in the real credentials locally and
+at build time.
@@ -171,24 +177,44 @@ another platform's prompts.
| --- | --- |
| `cometchat` | Thin dispatcher — detect the platform and route |
| `cometchat-onboarding` | Discover → understand → plan → approve (the front door) |
-| `cometchat-migrate-from-sendbird` · `-twilio` · `-getstream` | Migrate an app from Sendbird, Twilio Conversations, or Stream in one prompt |
-| `cometchat-security` · `cometchat-compliance` · `cometchat-self-host` · `cometchat-moderation` | Enterprise auth, data governance, self-hosting, and trust & safety |
-| `cometchat-a11y` · `cometchat-i18n` · `cometchat-audit` · `cometchat-analytics` | Accessibility, localization, integration review, and usage metrics |
**Platform skills**
Every UI Kit platform ships a `core` skill (install · credentials · init → login →
-render · the golden-path chat surface) plus the task skills below:
+render · the golden-path chat surface) plus the task skills below. The set differs
+per platform:
| Platform | Skill prefix | Skills |
| --- | --- | --- |
-| React v7 | `cometchat-react-v7-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` |
+| React v7 | `cometchat-react-v7-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `migration` |
| Angular v5 | `cometchat-angular-v5-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` |
| React Native v5 | `cometchat-react-native-` | `core` · `components` · `placement` · `customization` · `expo-patterns` · `bare-patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` · `sdk` |
-| iOS v5 | `cometchat-ios-` | `core` · `components` · `placement` · `customization` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `migration` |
+| iOS v5 | `cometchat-ios-` | `core` · `components` · `placement` · `customization` · `features` · `calls` · `push` · `migration` |
| Android v6 | `cometchat-android-v6-` | `core` · `compose-components` · `compose-placement` · `compose-customization` · `kotlin-components` · `kotlin-placement` · `kotlin-customization` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `builder-settings` · `events` · `extensions` · `migration` |
| Flutter v6 | `cometchat-flutter-v6-` | `core` · `components` · `placement` · `customization` · `patterns` · `features` · `calls` · `push` · `production` · `testing` · `troubleshooting` · `events` · `migration` |
+### Building your own UI
+
+Want voice/video calling without a UI Kit? The headless **Calls SDK v5** skills — and
+the headless Android **Chat SDK v5** skill — aren't installed by `add` on its own.
+Ask for them with `--family`, which adds them next to your platform's UI Kit skills:
+
+```bash
+npx @cometchat/skills add --family js-calls # headless JS Calls SDK skills
+```
+
+| Headless skill | Install with |
+| --- | --- |
+| `cometchat-js-v5-sdk` — Calls SDK, JavaScript | `--family js-calls` |
+| `cometchat-react-native-v5-sdk` — Calls SDK, React Native | `--family react-native-calls` |
+| `cometchat-ios-v5-sdk` — Calls SDK, iOS | `--family ios-calls` |
+| `cometchat-android-v5-calls-sdk` — Calls SDK, Android | `--family android-calls` |
+| `cometchat-flutter-v5-sdk` — Calls SDK, Flutter | `--family flutter-calls` |
+| `cometchat-android-v5-sdk` — Chat SDK, Android | `--family android-sdk` |
+
+If you ask for calling-only in a project without a UI Kit, onboarding walks you
+through the choice and tells you which of these to install.
+
What the task skills do:
| Skill | Purpose |
@@ -200,8 +226,8 @@ What the task skills do:
| `features` | Enable a feature — reactions · polls · AI · moderation · … |
| `calls` | Voice / video calling with the UI Kit |
| `push` | Push notifications (Notifications product) |
-| `production` | Server-minted auth tokens · hardening before you ship |
-| `testing` · `troubleshooting` | Test an app that embeds CometChat · diagnose a broken integration |
+| `production` | Server-minted auth tokens · hardening before you ship (Angular, React Native, Android, Flutter) |
+| `testing` · `troubleshooting` | Test an app that embeds CometChat · diagnose a broken integration (Angular, React Native, Android, Flutter) |
| `migration` | Upgrade from the previous UI Kit major |
## Example prompts
From 0ce580d50d3065143d84833de59f2dae754b52b5 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 18 Sep 2026 12:06:08 +0530
Subject: [PATCH 08/13] docs(agent-skills): drop the Angular 22 ERESOLVE note
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index df543b3d5..d9b0d6103 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -44,8 +44,7 @@ into the app you're already building.
The installer detects your platform from the project — you don't tell it which one.
If it can't detect a supported setup (for example at a monorepo root), it tells you
instead of guessing; run `add` inside the app's folder. (The one time you name a
-platform yourself is the [headless SDK skills](#building-your-own-ui).) Angular 22
-isn't installable yet: the Angular UI Kit's peer range is `<22.0.0`.
+platform yourself is the [headless SDK skills](#building-your-own-ui).)
## Install
@@ -310,12 +309,6 @@ existing files — you don't have to know the component or prop names.
| Android v6 | `com.cometchat:chatuikit-compose-android` or `chatuikit-kotlin-android` `6.0.x` · `chat-sdk-android` `5.0.x` · `calls-sdk-android` `5.0.x` (calling) |
| Flutter v6 | `cometchat_chat_uikit` `^6` (verified 6.1.x) · `cometchat_calls_sdk` `^5` (calling) |
-
-Angular 22 is not yet installable — the UI Kit's peer range is `>=17.0.0 <22.0.0`, so
-`npm install` fails with `ERESOLVE` on Angular 22. Scaffold with `@angular/cli@21` until
-a kit release widens the range.
-
-
## Next steps
From 82aa9ec075b70384087b088f293e73d9ac0c78d4 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 18 Sep 2026 12:06:43 +0530
Subject: [PATCH 09/13] docs(cli): drop the skills-cli naming note
Co-Authored-By: Claude Opus 5 (1M context)
---
cli.mdx | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/cli.mdx b/cli.mdx
index ff7e4f315..92f1ac8f9 100644
--- a/cli.mdx
+++ b/cli.mdx
@@ -12,15 +12,6 @@ CometChat ships two complementary command-line tools:
| **Credentials CLI** (`cometchat`) | `@cometchat/skills-cli` | Dashboard authentication + app-credential provisioning + feature toggles |
| **Skills installer** | `@cometchat/skills` | Install, list, and verify the [AI Agent Skills](/agent-skills) |
-
-Despite its package name, `@cometchat/skills-cli` is the **credentials** tool —
-it doesn't install skills. It provides a `cometchat` command, so the CLI's own
-messages (for example *"Run `cometchat auth login`"*) use that short form. This
-page runs it through `npx`; `cometchat auth login` and
-`npx @cometchat/skills-cli auth login` are the same command. The skills
-themselves are installed by `@cometchat/skills`.
-
-
The credentials CLI is **standalone** — use it on its own, in a script, or in CI.
It's a pure dashboard/API client: it authenticates, fetches your app credentials
From 8760bb404035dc972c9029db5fb67e6e7f7a70c2 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 18 Sep 2026 12:08:00 +0530
Subject: [PATCH 10/13] docs(agent-skills): drop the Angular version range
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index d9b0d6103..393ceb171 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -34,7 +34,7 @@ into the app you're already building.
| Platform | UI Kit |
| --- | --- |
| **React** 18+ — Vite, Create React App, Next.js, React Router, Astro | React UI Kit v7 |
-| **Angular** 17–21 — Angular CLI or Nx | Angular UI Kit v5 |
+| **Angular** — Angular CLI or Nx | Angular UI Kit v5 |
| **React Native** — bare or Expo | React Native UI Kit v5 |
| **iOS** — Swift, Swift Package Manager | iOS UI Kit v5 |
| **Android** — Jetpack Compose or Kotlin (Views) | Android UI Kit v6 |
@@ -303,7 +303,7 @@ existing files — you don't have to know the component or prop names.
| Platform | Packages |
| --- | --- |
| React v7 | `@cometchat/chat-uikit-react` `7.x` (verified 7.1.x) · `@cometchat/chat-sdk-javascript` `4.x` · `@cometchat/calls-sdk-javascript` `5.x` (calling) · React `≥ 18` |
-| Angular v5 | `@cometchat/chat-uikit-angular` `5.x` (verified 5.1.0) · `@cometchat/chat-sdk-javascript` `^4.1.13` · `@cometchat/cards-angular` `^1.0.0` · `@cometchat/calls-sdk-javascript` `^5.0.3` (calling) · `dompurify` `^3.0.0` · Angular `≥ 17` and `< 22` |
+| Angular v5 | `@cometchat/chat-uikit-angular` `5.x` (verified 5.1.0) · `@cometchat/chat-sdk-javascript` `^4.1.13` · `@cometchat/cards-angular` `^1.0.0` · `@cometchat/calls-sdk-javascript` `^5.0.3` (calling) · `dompurify` `^3.0.0` |
| React Native v5 | `@cometchat/chat-uikit-react-native` `5.x` · `@cometchat/chat-sdk-react-native` `4.x` · `@cometchat/calls-sdk-react-native` `5.x` (calling) |
| iOS v5 | `CometChatUIKitSwift` `5.1.x` · `CometChatSDK` `4.1.x` · `CometChatCallsSDK` `5.0.x` (calling) — Swift Package Manager |
| Android v6 | `com.cometchat:chatuikit-compose-android` or `chatuikit-kotlin-android` `6.0.x` · `chat-sdk-android` `5.0.x` · `calls-sdk-android` `5.0.x` (calling) |
From db4f4c2f863c853eb1ae5389606c9a9b545c7fd5 Mon Sep 17 00:00:00 2001
From: rajdubey
Date: Fri, 18 Sep 2026 12:18:42 +0530
Subject: [PATCH 11/13] docs(agent-skills): list only the supported agents
Co-Authored-By: Claude Opus 5 (1M context)
---
agent-skills.mdx | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index 393ceb171..588c7af9e 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -75,16 +75,12 @@ npx @cometchat/skills add --ide all # every supported agent
| --- | --- |
| Claude Code | `--ide claude` |
| Cursor | `--ide cursor` |
+| Kiro | `--ide kiro` |
+| Antigravity | `--ide antigravity` |
| GitHub Copilot | `--ide copilot` |
-| Windsurf | `--ide windsurf` |
| Replit Agent | `--ide replit` |
-| Cline | `--ide cline` |
| Codex | `--ide codex` |
| Gemini | `--ide gemini` |
-| Continue | `--ide continue` |
-| Aider | `--ide aider` |
-| Kiro | `--ide kiro` |
-| Antigravity | `--ide antigravity` |
Claude Code, Kiro, and Replit get a native `SKILL.md` tree. The other agents get
@@ -283,7 +279,7 @@ existing files — you don't have to know the component or prop names.
- **Inspect** — `npx @cometchat/skills list` lists the skills the pack ships, and `npx @cometchat/skills doctor` runs an environment health check.
- **Uninstall** — there's no uninstall command. Remove what `add` wrote for your agent:
- **The skill files** — `.claude/skills/cometchat*` (Claude Code), `.kiro/skills/cometchat*` (Kiro), `.agents/skills/cometchat*` (Replit), or `./.cometchat/skills` (every other agent). For Claude Code, Kiro, and Replit, also delete the shared files `add` puts at the top of that folder: `RULES.md`, `peers.yaml`, `catalogs/`, and the `features*.json` / `contracts*.json` files. For a `--global` install, use `~/.claude/skills` instead.
- - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.windsurfrules`, `.github/copilot-instructions.md`, `.clinerules/cometchat.md` (or the `.clinerules` file itself, if yours is a single file), `GEMINI.md`, or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
+ - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity), `.github/copilot-instructions.md`, or `GEMINI.md`. Delete that block and keep the rest of the file.
- **The Docs MCP entry** — remove the `cometchat-docs` server from `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), `.gemini/settings.json` (Gemini), or `.codex/config.toml` (Codex). For a `--global` Claude Code install, run `claude mcp remove --scope user cometchat-docs`. Other agents get no MCP entry.
- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key.
From 2764a57b585d801a6b2d3ed96fd51bda8e3270c6 Mon Sep 17 00:00:00 2001
From: "raj.CometChat" <92921875+raj-dubey1@users.noreply.github.com>
Date: Fri, 18 Sep 2026 17:18:01 +0530
Subject: [PATCH 12/13] =?UTF-8?q?docs(cli):=20address=20review=20nits=20?=
=?UTF-8?q?=E2=80=94=20full=20agent=20list=20+=20uninstall=20coverage,=20F?=
=?UTF-8?q?lutter=20version-control=20carve-out,=20cometchat=20command=20n?=
=?UTF-8?q?ote,=20Android/router=20--family=20caveats?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-Authored-By: Claude Opus 4.8
Claude-Session: https://claude.ai/code/session_01PT9pMg3MSZEW3gsb6jPc3E
---
agent-skills.mdx | 21 +++++++++++++++++++--
cli.mdx | 6 ++++++
2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index 588c7af9e..c21e26e03 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -81,6 +81,10 @@ npx @cometchat/skills add --ide all # every supported agent
| Replit Agent | `--ide replit` |
| Codex | `--ide codex` |
| Gemini | `--ide gemini` |
+| Windsurf | `--ide windsurf` |
+| Cline | `--ide cline` |
+| Continue | `--ide continue` |
+| Aider | `--ide aider` |
Claude Code, Kiro, and Replit get a native `SKILL.md` tree. The other agents get
@@ -210,6 +214,19 @@ npx @cometchat/skills add --family js-calls # headless JS Calls SDK skills
If you ask for calling-only in a project without a UI Kit, onboarding walks you
through the choice and tells you which of these to install.
+
+Two things to know about the Android rows: `--family android-sdk` and `--family
+android-calls` share the `cometchat-android-v5-` folder, so installing **either**
+brings in both the Android Chat SDK and Calls SDK skills.
+
+And for the router-file agents (Cursor, Codex, Copilot, Gemini, Antigravity,
+Continue), a later `--family` run **rewrites** the managed router block in
+`AGENTS.md` (and the equivalent files) to the requested family — so pass your
+platform and `--family` in the same command, or the UI Kit router block is
+replaced by the calls one. The skill **folders** in `.cometchat/skills` are
+additive; only the router block is rewritten.
+
+
What the task skills do:
| Skill | Purpose |
@@ -279,9 +296,9 @@ existing files — you don't have to know the component or prop names.
- **Inspect** — `npx @cometchat/skills list` lists the skills the pack ships, and `npx @cometchat/skills doctor` runs an environment health check.
- **Uninstall** — there's no uninstall command. Remove what `add` wrote for your agent:
- **The skill files** — `.claude/skills/cometchat*` (Claude Code), `.kiro/skills/cometchat*` (Kiro), `.agents/skills/cometchat*` (Replit), or `./.cometchat/skills` (every other agent). For Claude Code, Kiro, and Replit, also delete the shared files `add` puts at the top of that folder: `RULES.md`, `peers.yaml`, `catalogs/`, and the `features*.json` / `contracts*.json` files. For a `--global` install, use `~/.claude/skills` instead.
- - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity), `.github/copilot-instructions.md`, or `GEMINI.md`. Delete that block and keep the rest of the file.
+ - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.github/copilot-instructions.md` (Copilot), `GEMINI.md` (Gemini), `.windsurfrules` (Windsurf), `.clinerules/cometchat.md` (Cline), or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
- **The Docs MCP entry** — remove the `cometchat-docs` server from `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), `.gemini/settings.json` (Gemini), or `.codex/config.toml` (Codex). For a `--global` Claude Code install, run `claude mcp remove --scope user cometchat-docs`. Other agents get no MCP entry.
-- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key.
+- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key. (Flutter is the exception: commit the `cometchat-settings.json` **placeholder** with an empty `authKey`, as noted above — a missing asset breaks `flutter build` — and keep the real credentials local.)
## Troubleshooting
diff --git a/cli.mdx b/cli.mdx
index 92f1ac8f9..afd853064 100644
--- a/cli.mdx
+++ b/cli.mdx
@@ -26,6 +26,12 @@ Both run through `npx` with no global install, and most commands accept `--json`
for machine-readable output (the exceptions are `config set` and `config path`,
which print plain text).
+The credentials CLI's binary is named `cometchat`, so its own prompts refer to it
+that way (for example, "Run `cometchat auth login`"). It's the same tool: run it as
+`npx @cometchat/skills-cli ` (as shown throughout this page), or
+`npm install -g @cometchat/skills-cli` once to use the shorter `cometchat` command
+directly.
+
## Prerequisites
- **Node.js 18+** — both CLIs run through `npx`.
From 9ac71fc5ff6985d8d1513e120aa15e9b9b2bbd36 Mon Sep 17 00:00:00 2001
From: "raj.CometChat" <92921875+raj-dubey1@users.noreply.github.com>
Date: Fri, 18 Sep 2026 17:47:16 +0530
Subject: [PATCH 13/13] docs(agent-skills): fix impossible --family advice
(re-run without --family to restore UI Kit block), complete router-file agent
list, restore single-file .clinerules uninstall case
Co-Authored-By: Claude Opus 4.8
Claude-Session: https://claude.ai/code/session_01PT9pMg3MSZEW3gsb6jPc3E
---
agent-skills.mdx | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/agent-skills.mdx b/agent-skills.mdx
index c21e26e03..5a1f9c8e6 100644
--- a/agent-skills.mdx
+++ b/agent-skills.mdx
@@ -219,12 +219,13 @@ Two things to know about the Android rows: `--family android-sdk` and `--family
android-calls` share the `cometchat-android-v5-` folder, so installing **either**
brings in both the Android Chat SDK and Calls SDK skills.
-And for the router-file agents (Cursor, Codex, Copilot, Gemini, Antigravity,
-Continue), a later `--family` run **rewrites** the managed router block in
-`AGENTS.md` (and the equivalent files) to the requested family — so pass your
-platform and `--family` in the same command, or the UI Kit router block is
-replaced by the calls one. The skill **folders** in `.cometchat/skills` are
-additive; only the router block is rewritten.
+And for the router-file agents (every agent other than Claude Code, Kiro and
+Replit), the managed router block in `AGENTS.md` (and the equivalent files) always
+points to the **last** family you installed. `--family` takes a single value and
+replaces detection, so it can't be combined with your platform in one run — after a
+`--family` run, re-run `npx @cometchat/skills add --ide ` **without**
+`--family` to point the block back at your UI Kit skills. The skill **folders** in
+`.cometchat/skills` are additive, so the calls skills stay installed either way.
What the task skills do:
@@ -296,7 +297,7 @@ existing files — you don't have to know the component or prop names.
- **Inspect** — `npx @cometchat/skills list` lists the skills the pack ships, and `npx @cometchat/skills doctor` runs an environment health check.
- **Uninstall** — there's no uninstall command. Remove what `add` wrote for your agent:
- **The skill files** — `.claude/skills/cometchat*` (Claude Code), `.kiro/skills/cometchat*` (Kiro), `.agents/skills/cometchat*` (Replit), or `./.cometchat/skills` (every other agent). For Claude Code, Kiro, and Replit, also delete the shared files `add` puts at the top of that folder: `RULES.md`, `peers.yaml`, `catalogs/`, and the `features*.json` / `contracts*.json` files. For a `--global` install, use `~/.claude/skills` instead.
- - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.github/copilot-instructions.md` (Copilot), `GEMINI.md` (Gemini), `.windsurfrules` (Windsurf), `.clinerules/cometchat.md` (Cline), or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
+ - **The router block** — for the other agents, `add` also writes a block between `` and `` into the agent's instruction file: `AGENTS.md` (Cursor, Codex, Antigravity, Continue), `.github/copilot-instructions.md` (Copilot), `GEMINI.md` (Gemini), `.windsurfrules` (Windsurf), `.clinerules/cometchat.md` — or `.clinerules` itself when you already have that as a file — (Cline), or `CONVENTIONS.md` (Aider). Delete that block and keep the rest of the file.
- **The Docs MCP entry** — remove the `cometchat-docs` server from `.mcp.json` (Claude Code), `.cursor/mcp.json` (Cursor), `.gemini/settings.json` (Gemini), or `.codex/config.toml` (Codex). For a `--global` Claude Code install, run `claude mcp remove --scope user cometchat-docs`. Other agents get no MCP entry.
- **Version control** — commit the skill files so your whole team shares the same setup. Do **not** commit `.cometchat/config.json` or the generated env file — they hold your Auth Key. (Flutter is the exception: commit the `cometchat-settings.json` **placeholder** with an empty `authKey`, as noted above — a missing asset breaks `flutter build` — and keep the real credentials local.)