From e982dd50b143c39829ffa7d95a5f33365d2a777e Mon Sep 17 00:00:00 2001 From: rajdubey Date: Fri, 11 Sep 2026 21:01:51 +0530 Subject: [PATCH 1/3] 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 2/3] 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 3/3] 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