diff --git a/src/data/nav/platform.ts b/src/data/nav/platform.ts
index f2c7642301..a152b9ad08 100644
--- a/src/data/nav/platform.ts
+++ b/src/data/nav/platform.ts
@@ -360,6 +360,7 @@ export default {
link: '/docs/cli',
index: true,
},
+ { name: 'Init', link: '/docs/cli/init' },
{ name: 'Login', link: '/docs/cli/login' },
{
name: 'Accounts',
diff --git a/src/pages/docs/chat/getting-started/android.mdx b/src/pages/docs/chat/getting-started/android.mdx
index a5632c5b72..955e2873bb 100644
--- a/src/pages/docs/chat/getting-started/android.mdx
+++ b/src/pages/docs/chat/getting-started/android.mdx
@@ -42,21 +42,13 @@ implementation("com.ably.chat:chat-extensions-compose:1.2.0")
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/javascript.mdx b/src/pages/docs/chat/getting-started/javascript.mdx
index 454e154838..9fb298ee8e 100644
--- a/src/pages/docs/chat/getting-started/javascript.mdx
+++ b/src/pages/docs/chat/getting-started/javascript.mdx
@@ -60,21 +60,13 @@ echo "ABLY_API_KEY={{API_KEY}}" > .env
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/jvm.mdx b/src/pages/docs/chat/getting-started/jvm.mdx
index 475c54bc5e..c968521f02 100644
--- a/src/pages/docs/chat/getting-started/jvm.mdx
+++ b/src/pages/docs/chat/getting-started/jvm.mdx
@@ -57,21 +57,13 @@ implementation("org.slf4j:slf4j-nop:2.0.17")
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/react-native.mdx b/src/pages/docs/chat/getting-started/react-native.mdx
index b417816ba5..5b7f7932f0 100644
--- a/src/pages/docs/chat/getting-started/react-native.mdx
+++ b/src/pages/docs/chat/getting-started/react-native.mdx
@@ -51,21 +51,13 @@ cd ios && pod install && cd ..
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/react-ui-kit.mdx b/src/pages/docs/chat/getting-started/react-ui-kit.mdx
index b66f28af30..1c0c7f735a 100644
--- a/src/pages/docs/chat/getting-started/react-ui-kit.mdx
+++ b/src/pages/docs/chat/getting-started/react-ui-kit.mdx
@@ -65,21 +65,13 @@ That's all the setup you need—the kit's CSS is automatically bundled by Vite a
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/react.mdx b/src/pages/docs/chat/getting-started/react.mdx
index 348634a977..4715a235d1 100644
--- a/src/pages/docs/chat/getting-started/react.mdx
+++ b/src/pages/docs/chat/getting-started/react.mdx
@@ -58,21 +58,13 @@ echo "VITE_ABLY_API_KEY={{API_KEY}}" > .env
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/swift-async-sequence.mdx b/src/pages/docs/chat/getting-started/swift-async-sequence.mdx
index 24c21756a5..73552e0d28 100644
--- a/src/pages/docs/chat/getting-started/swift-async-sequence.mdx
+++ b/src/pages/docs/chat/getting-started/swift-async-sequence.mdx
@@ -23,21 +23,13 @@ Using an AI coding assistant? [Teach it Ably](/docs/platform/ai-llms#agent-skill
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/chat/getting-started/swift.mdx b/src/pages/docs/chat/getting-started/swift.mdx
index b9f46db09a..b66811ce61 100644
--- a/src/pages/docs/chat/getting-started/swift.mdx
+++ b/src/pages/docs/chat/getting-started/swift.mdx
@@ -23,21 +23,13 @@ Using an AI coding assistant? [Teach it Ably](/docs/platform/ai-llms#agent-skill
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test chat features. It can simulate other users by sending messages, entering presence, and acting as another user typing a message.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/cli/index.mdx b/src/pages/docs/cli/index.mdx
index 0466338270..f744f87086 100644
--- a/src/pages/docs/cli/index.mdx
+++ b/src/pages/docs/cli/index.mdx
@@ -28,6 +28,7 @@ The following top-level commands are available in the Ably CLI:
| Command | Description |
| ------- | ----------- |
+| [`ably init`](/docs/cli/init) | Install the CLI, authenticate, and install [Agent Skills](https://github.com/ably/agent-skills) |
| [`ably login`](/docs/cli/login) | Log in to your Ably account (alias for "ably accounts login") |
| [`ably accounts`](/docs/cli/accounts) | Manage Ably accounts and your configured access tokens |
| [`ably apps`](/docs/cli/apps) | Manage Ably apps |
diff --git a/src/pages/docs/cli/init.mdx b/src/pages/docs/cli/init.mdx
new file mode 100644
index 0000000000..c44169d305
--- /dev/null
+++ b/src/pages/docs/cli/init.mdx
@@ -0,0 +1,108 @@
+---
+title: "Init"
+meta_description: "Set up the Ably CLI in a single command: install, authenticate, and install Agent Skills into AI coding tools."
+meta_keywords: "ably cli, cli, init, ably init, onboarding, agent skills, claude code, cursor, vs code, windsurf"
+---
+
+Use the `ably init` command to set up the Ably CLI in a single step. It installs the CLI, authenticates you with [OAuth Device Authorization](https://datatracker.ietf.org/doc/html/rfc8628), and installs the Ably [Agent Skills](https://github.com/ably/agent-skills) into any AI coding tools detected on your machine.
+
+Supported AI coding tools:
+
+* [Claude Code](https://www.anthropic.com/claude-code) - installed via the `@ably/agent-skills` Claude Code plugin.
+* [Cursor](https://cursor.com)
+* [VS Code](https://code.visualstudio.com) (GitHub Copilot)
+* [Windsurf](https://windsurf.com)
+
+For tools other than Claude Code, the skill files are copied directly into the tool's user skills directory.
+
+## Synopsis
+
+
+```shell
+ably init [options]
+```
+
+
+You can also run `init` without installing the CLI first:
+
+
+```shell
+npx -p @ably/cli ably init
+```
+
+
+## Options
+
+### `--target | -t`
+
+Target AI coding tools to install Agent Skills for. Defaults to `auto`, which detects installed tools and prompts you to choose. Repeat the flag to specify multiple tools.
+
+Supported values:
+
+* `auto` - Auto-detect installed tools (default).
+* `claude-code` - Claude Code.
+* `cursor` - Cursor.
+* `vscode` - VS Code (GitHub Copilot).
+* `windsurf` - Windsurf.
+
+`auto` cannot be combined with explicit targets.
+
+### `--json`
+
+Output results as compact JSON. Mutually exclusive with `--pretty-json`.
+
+### `--pretty-json`
+
+Output results in formatted, colorized JSON. Mutually exclusive with `--json`.
+
+### `--verbose | -v`
+
+Enable verbose logging. Can be combined with `--json` or `--pretty-json`.
+
+## Examples
+
+Set up the CLI with auto-detected AI coding tools:
+
+
+```shell
+ably init
+```
+
+
+Install Agent Skills for Claude Code only:
+
+
+```shell
+ably init --target claude-code
+```
+
+
+Install Agent Skills for Cursor and Windsurf:
+
+
+```shell
+ably init --target cursor --target windsurf
+```
+
+
+Set up the CLI without installing it first:
+
+
+```shell
+npx -p @ably/cli ably init
+```
+
+
+Run `init` in JSON mode for use in scripts:
+
+
+```shell
+ably init --json
+```
+
+
+## See also
+
+* [Login](/docs/cli/login) - Authenticate without installing Agent Skills.
+* [Environment variables](/docs/cli/env) - Authenticate via environment variables instead of OAuth.
+* [CLI reference](/docs/cli) - Full list of available commands.
diff --git a/src/pages/docs/getting-started/dotnet.mdx b/src/pages/docs/getting-started/dotnet.mdx
index 554f0aaafc..a07f904f00 100644
--- a/src/pages/docs/getting-started/dotnet.mdx
+++ b/src/pages/docs/getting-started/dotnet.mdx
@@ -39,21 +39,13 @@ dotnet add package ably.io
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/flutter.mdx b/src/pages/docs/getting-started/flutter.mdx
index 7ab9a5e581..76cd7b6469 100644
--- a/src/pages/docs/getting-started/flutter.mdx
+++ b/src/pages/docs/getting-started/flutter.mdx
@@ -165,21 +165,13 @@ Initialize the Ably service at the application level to prevent it from being re
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/go.mdx b/src/pages/docs/getting-started/go.mdx
index c887b45ce0..7cc82e520e 100644
--- a/src/pages/docs/getting-started/go.mdx
+++ b/src/pages/docs/getting-started/go.mdx
@@ -32,21 +32,13 @@ go get -u github.com/ably/ably-go/ably
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/java.mdx b/src/pages/docs/getting-started/java.mdx
index ddf606bdb0..9347cf7351 100644
--- a/src/pages/docs/getting-started/java.mdx
+++ b/src/pages/docs/getting-started/java.mdx
@@ -50,21 +50,13 @@ Using an AI coding assistant? [Teach it Ably](/docs/platform/ai-llms#agent-skill
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/javascript.mdx b/src/pages/docs/getting-started/javascript.mdx
index aa85086707..0848729f76 100644
--- a/src/pages/docs/getting-started/javascript.mdx
+++ b/src/pages/docs/getting-started/javascript.mdx
@@ -24,21 +24,13 @@ Using an AI coding assistant? [Teach it Ably](/docs/platform/ai-llms#agent-skill
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/kotlin.mdx b/src/pages/docs/getting-started/kotlin.mdx
index f787682a3c..bdf969c865 100644
--- a/src/pages/docs/getting-started/kotlin.mdx
+++ b/src/pages/docs/getting-started/kotlin.mdx
@@ -29,21 +29,13 @@ implementation("io.ably:ably-java:")
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/laravel.mdx b/src/pages/docs/getting-started/laravel.mdx
index ed90ca073f..ec759f0661 100644
--- a/src/pages/docs/getting-started/laravel.mdx
+++ b/src/pages/docs/getting-started/laravel.mdx
@@ -48,21 +48,13 @@ npm run dev
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/nextjs.mdx b/src/pages/docs/getting-started/nextjs.mdx
index 4991984908..851aa2b2cc 100644
--- a/src/pages/docs/getting-started/nextjs.mdx
+++ b/src/pages/docs/getting-started/nextjs.mdx
@@ -84,21 +84,13 @@ npm install ably
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/node.mdx b/src/pages/docs/getting-started/node.mdx
index ea8805daca..0271265f71 100644
--- a/src/pages/docs/getting-started/node.mdx
+++ b/src/pages/docs/getting-started/node.mdx
@@ -42,21 +42,13 @@ echo "ABLY_API_KEY={{API_KEY}}" > .env
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/objective-c.mdx b/src/pages/docs/getting-started/objective-c.mdx
index 807dede3ec..fd9f87adf0 100644
--- a/src/pages/docs/getting-started/objective-c.mdx
+++ b/src/pages/docs/getting-started/objective-c.mdx
@@ -44,21 +44,13 @@ https://github.com/ably/ably-cocoa
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/php.mdx b/src/pages/docs/getting-started/php.mdx
index 3320f828e2..8e0f6536cf 100644
--- a/src/pages/docs/getting-started/php.mdx
+++ b/src/pages/docs/getting-started/php.mdx
@@ -42,21 +42,13 @@ composer require ably/ably-php
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/python.mdx b/src/pages/docs/getting-started/python.mdx
index ea025bf405..8786ca389d 100644
--- a/src/pages/docs/getting-started/python.mdx
+++ b/src/pages/docs/getting-started/python.mdx
@@ -39,21 +39,13 @@ pip install ably
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/react-native.mdx b/src/pages/docs/getting-started/react-native.mdx
index 32cea903f7..b16403e283 100644
--- a/src/pages/docs/getting-started/react-native.mdx
+++ b/src/pages/docs/getting-started/react-native.mdx
@@ -143,21 +143,13 @@ Keep the Realtime client initialization outside of any React component to preven
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/react.mdx b/src/pages/docs/getting-started/react.mdx
index 8a21aa8829..67980f5582 100644
--- a/src/pages/docs/getting-started/react.mdx
+++ b/src/pages/docs/getting-started/react.mdx
@@ -151,21 +151,13 @@ Keep the Realtime client initialization outside of any React component to preven
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/ruby.mdx b/src/pages/docs/getting-started/ruby.mdx
index 780e11288a..6825fab279 100644
--- a/src/pages/docs/getting-started/ruby.mdx
+++ b/src/pages/docs/getting-started/ruby.mdx
@@ -37,21 +37,13 @@ The realtime interface of the Ruby SDK must be run within an [EventMachine](http
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/getting-started/swift.mdx b/src/pages/docs/getting-started/swift.mdx
index de347a4b9a..da997b887e 100644
--- a/src/pages/docs/getting-started/swift.mdx
+++ b/src/pages/docs/getting-started/swift.mdx
@@ -35,21 +35,13 @@ dependencies: [
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features. It can simulate other clients by publishing messages, subscribing to channels, and managing presence states.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/platform/tools/cli.mdx b/src/pages/docs/platform/tools/cli.mdx
index 03f3ca0cc3..af98ef723d 100644
--- a/src/pages/docs/platform/tools/cli.mdx
+++ b/src/pages/docs/platform/tools/cli.mdx
@@ -17,34 +17,38 @@ The Ably CLI interacts with:
## Installation
-The Ably CLI is available as an NPM package. Install it using:
+Get started in a single command:
```shell
-npm install -g @ably/cli
+npx -p @ably/cli ably init
```
-## Usage
+[`ably init`](/docs/cli/init) installs the Ably CLI globally, authenticates you, and installs the Ably [Agent Skills](https://github.com/ably/agent-skills) into any AI coding tools it detects on your machine, such as Claude Code, Cursor, VS Code, and Windsurf.
-Run the following to log in to your Ably account:
+To install the CLI manually first, use npm and then run `ably init`:
```shell
-ably login
+npm install -g @ably/cli
+ably init
```
+
-This initiates an [OAuth Device Authorization](https://datatracker.ietf.org/doc/html/rfc8628) flow: the CLI displays an authorization code and opens your browser to approve it. Once approved, the CLI receives an [access token](/docs/platform/account/access-tokens) that is stored locally and refreshed automatically — no manual token management required.
+## Usage
+
+During `ably init`, the CLI authenticates using an [OAuth Device Authorization](https://datatracker.ietf.org/doc/html/rfc8628) flow: it displays an authorization code and opens your browser to approve it. Once approved, the CLI receives an [access token](/docs/platform/account/access-tokens) that is stored locally and refreshed automatically, so there is no manual token management.
-After you have successfully authenticated and chosen your app and API key, you're ready to interact with Ably resources directly from your terminal.
+If you only need to authenticate, without installing Agent Skills, run [`ably login`](/docs/cli/login) instead.
-For example, open two terminal instances and subscribe to one, and publish messages in the other:
+After authenticating and selecting your app and API key, you can interact with Ably resources directly from your terminal.
-To subscribe:
+For example, open two terminal windows. In the first, subscribe to a channel:
```shell
@@ -53,7 +57,7 @@ ably channels subscribe channel-1
```
-To publish:
+In the second, publish messages to the same channel:
```shell
@@ -69,7 +73,7 @@ ably channels publish --count 5 channel-1 "Message number {{.Count}}"
```
-For a list of all available commands, run:
+To list all available commands, run:
```shell
diff --git a/src/pages/docs/push/getting-started/apns.mdx b/src/pages/docs/push/getting-started/apns.mdx
index cce663c4b0..3a0f707c3c 100644
--- a/src/pages/docs/push/getting-started/apns.mdx
+++ b/src/pages/docs/push/getting-started/apns.mdx
@@ -25,21 +25,13 @@ then enable the Push notifications option. See [rules](/docs/channels#rules) for
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features and push notifications.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features and push notifications.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/push/getting-started/fcm.mdx b/src/pages/docs/push/getting-started/fcm.mdx
index bea7cd82be..7f9ccfafe9 100644
--- a/src/pages/docs/push/getting-started/fcm.mdx
+++ b/src/pages/docs/push/getting-started/fcm.mdx
@@ -23,21 +23,13 @@ Using an AI coding assistant? [Teach it Ably](/docs/platform/ai-llms#agent-skill
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features and push notifications.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features and push notifications.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/push/getting-started/flutter.mdx b/src/pages/docs/push/getting-started/flutter.mdx
index 286a2a1ad1..1a1a48c96a 100644
--- a/src/pages/docs/push/getting-started/flutter.mdx
+++ b/src/pages/docs/push/getting-started/flutter.mdx
@@ -20,21 +20,13 @@ You'll learn how to configure Firebase Cloud Messaging (FCM) for Android and APN
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features and push notifications.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features and push notifications.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/push/getting-started/react-native.mdx b/src/pages/docs/push/getting-started/react-native.mdx
index 625c5c877e..ebf64fa12a 100644
--- a/src/pages/docs/push/getting-started/react-native.mdx
+++ b/src/pages/docs/push/getting-started/react-native.mdx
@@ -22,21 +22,13 @@ You'll learn how to set up your application with Firebase Cloud Messaging (FCM),
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features and push notifications.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features and push notifications.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```
diff --git a/src/pages/docs/push/getting-started/web.mdx b/src/pages/docs/push/getting-started/web.mdx
index 74dd7da117..00b284f5d7 100644
--- a/src/pages/docs/push/getting-started/web.mdx
+++ b/src/pages/docs/push/getting-started/web.mdx
@@ -24,21 +24,13 @@ then enable the Push notifications option. See [rules](/docs/channels#rules) for
### (Optional) Install Ably CLI
-Use the [Ably CLI](https://github.com/ably/cli) as an additional client to quickly test Pub/Sub features and push notifications.
+Use the [Ably CLI](/docs/platform/tools/cli) as an additional client to quickly test Pub/Sub features and push notifications.
-1. Install the Ably CLI:
+[`ably init`](/docs/cli/init) installs the Ably CLI, authenticates, and sets the default app and API key in a single command:
```shell
-npm install -g @ably/cli
-```
-
-
-2. Run the following to log in to your Ably account and set the default app and API key:
-
-
-```shell
-ably login
+npx -p @ably/cli ably init
```