Install AI Tools

B2C Commerce tools, documentation, and skills for your assistant.

Claude

Install the plugin Recommended

bash
claude plugin marketplace add SalesforceCommerceCloud/b2c-developer-tooling
claude plugin install b2c-dx-mcp@b2c-developer-tooling

Start a new Claude Code session. To install for the current project only, run it from your project directory with --scope project.

Manual MCP setup
bash
claude mcp add --transport stdio --scope user b2c-dx-mcp -- npx -y @salesforce/b2c-dx-mcp@latest

Start a new session. To configure the current project only, run it from your project directory with --scope project. See Claude Code MCP setup.

Claude Desktop setup

Codex

Install the plugin Recommended

bash
codex plugin marketplace add SalesforceCommerceCloud/b2c-developer-tooling
codex plugin add b2c-dx-mcp@b2c-developer-tooling

Start a new Codex session in your project. This setup also works with the Codex IDE extension and the ChatGPT Work desktop app.

Manual MCP setup
bash
codex mcp add b2c-dx-mcp -- npx -y @salesforce/b2c-dx-mcp@latest

Or add this to ~/.codex/config.toml (or $CODEX_HOME/config.toml if customized):

toml
[mcp_servers.b2c-dx-mcp]
command = "npx"
args = ["-y", "@salesforce/b2c-dx-mcp@latest"]

Start a new session. See Codex MCP configuration.

ChatGPT online setup

VS Code

Install the plugin Recommended

  1. Open the Command Palette (Cmd/Ctrl+Shift+P) and run Chat: Install Plugin from Source.
  2. Enter SalesforceCommerceCloud/b2c-developer-tooling.
  3. Select b2c-dx-mcp and follow the installation prompts.
  4. Start a new chat in GitHub Copilot.
Manual MCP setup

Add this to .vscode/mcp.json in your workspace:

json
{
  "servers": {
    "b2c-dx-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@salesforce/b2c-dx-mcp@latest"]
    }
  }
}

See VS Code MCP setup.

Copilot CLI setup

Cursor

Reload the MCP server in Cursor after installation.

Manual MCP setup

Add this to .cursor/mcp.json in your project:

json
{
  "mcpServers": {
    "b2c-dx-mcp": {
      "command": "npx",
      "args": ["-y", "@salesforce/b2c-dx-mcp@latest"]
    }
  }
}

For all projects, use ~/.cursor/mcp.json instead.

See Cursor's MCP documentation.

OpenCode

Add this to opencode.json in your project:

json
{
  "mcp": {
    "b2c-dx-mcp": {
      "type": "local",
      "command": ["npx", "-y", "@salesforce/b2c-dx-mcp@latest"],
      "enabled": true
    }
  }
}

Restart OpenCode. For all projects, use ~/.config/opencode/opencode.json. See OpenCode MCP setup.

Gemini

Run:

bash
gemini mcp add --scope user b2c-dx-mcp -- npx -y @salesforce/b2c-dx-mcp@latest

Start a new Gemini CLI session. To configure the current project only, run it from your project directory with --scope project. See Gemini CLI MCP setup.

No separate skills plugins needed.

Other clients and manual setup →
Skip to content
View as Markdown
View as Markdown

@salesforce/b2c-tooling-sdk / cli / CartridgeCommand

Abstract Class: CartridgeCommand<T> ​

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-command.ts:33

Base command for cartridge operations (deploy, watch, etc.).

Extends InstanceCommand with:

  • cartridgePath argument for specifying cartridge directory
  • cartridge include/exclude flags for filtering

Example ​

ts
export default class MyCartridgeCommand extends CartridgeCommand<typeof MyCartridgeCommand> {
  async run(): Promise<void> {
    const cartridges = findCartridges(this.cartridgePath, this.cartridgeOptions);
    // ...
  }
}

Extends ​

Type Parameters ​

T ​

T extends typeof Command

Constructors ​

Constructor ​

new CartridgeCommand<T>(argv, config): CartridgeCommand<T>

Defined in: packages/b2c-tooling-sdk/src/cli/oauth-command.ts:52

Parameters ​

argv ​

string[]

config ​

Config

Returns ​

CartridgeCommand<T>

Inherited from ​

InstanceCommand.constructor

Properties ​

argv ​

argv: string[]

Defined in: node_modules/@oclif/core/lib/command.d.ts:12

Inherited from ​

InstanceCommand.argv


config ​

config: Config

Defined in: node_modules/@oclif/core/lib/command.d.ts:13

Inherited from ​

InstanceCommand.config


id ​

id: string | undefined

Defined in: node_modules/@oclif/core/lib/command.d.ts:75

Inherited from ​

InstanceCommand.id


parsed ​

parsed: boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:76

Inherited from ​

InstanceCommand.parsed


aliases ​

static aliases: string[]

Defined in: node_modules/@oclif/core/lib/command.d.ts:16

An array of aliases for this command.

Inherited from ​

InstanceCommand.aliases


args ​

static args: ArgInput

Defined in: node_modules/@oclif/core/lib/command.d.ts:18

An order-dependent object of arguments for the command

Inherited from ​

InstanceCommand.args


baseArgs ​

static baseArgs: object

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-command.ts:34

cartridgePath ​

cartridgePath: Arg<string, Record<string, unknown>>


baseFlags ​

static baseFlags: object

Defined in: packages/b2c-tooling-sdk/src/cli/instance-command.ts:54

account-manager-host ​

account-manager-host: OptionFlag<string, CustomOptions>

api-backend ​

api-backend: OptionFlag<"ocapi" | "scapi" | "auto" | undefined, CustomOptions>

auth-methods ​

auth-methods: OptionFlag<string[], CustomOptions>

auth-scope ​

auth-scope: OptionFlag<string[], CustomOptions>

certificate ​

certificate: OptionFlag<string | undefined, CustomOptions>

client-auth-method ​

client-auth-method: OptionFlag<"basic" | "basic-unencoded" | "body" | undefined, CustomOptions>

client-id ​

client-id: OptionFlag<string, CustomOptions>

client-secret ​

client-secret: OptionFlag<string, CustomOptions>

code-version ​

code-version: OptionFlag<string | undefined, CustomOptions>

config ​

config: OptionFlag<string | undefined, CustomOptions>

debug ​

debug: BooleanFlag<boolean>

dotenv-file ​

dotenv-file: OptionFlag<string | undefined, CustomOptions>

extra-body ​

extra-body: OptionFlag<string | undefined, CustomOptions>

extra-headers ​

extra-headers: OptionFlag<string | undefined, CustomOptions>

extra-query ​

extra-query: OptionFlag<string | undefined, CustomOptions>

instance ​

instance: OptionFlag<string | undefined, CustomOptions>

json ​

json: BooleanFlag<boolean>

jsonl ​

jsonl: BooleanFlag<boolean>

jwt-cert ​

jwt-cert: OptionFlag<string | undefined, CustomOptions>

jwt-key ​

jwt-key: OptionFlag<string | undefined, CustomOptions>

jwt-passphrase ​

jwt-passphrase: OptionFlag<string | undefined, CustomOptions>

lang ​

lang: OptionFlag<string | undefined, CustomOptions>

log-level ​

log-level: OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, CustomOptions>

passphrase ​

passphrase: OptionFlag<string | undefined, CustomOptions>

password ​

password: OptionFlag<string | undefined, CustomOptions>

project-directory ​

project-directory: OptionFlag<string, CustomOptions>

selfsigned ​

selfsigned: BooleanFlag<boolean>

server ​

server: OptionFlag<string | undefined, CustomOptions>

short-code ​

short-code: OptionFlag<string, CustomOptions>

tenant-id ​

tenant-id: OptionFlag<string | undefined, CustomOptions>

user-auth ​

user-auth: BooleanFlag<boolean>

username ​

username: OptionFlag<string | undefined, CustomOptions>

verify ​

verify: BooleanFlag<boolean>

webdav-server ​

webdav-server: OptionFlag<string | undefined, CustomOptions>

Inherited from ​

InstanceCommand.baseFlags


cartridgeFlags ​

static cartridgeFlags: object

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-command.ts:41

cartridge ​

cartridge: OptionFlag<string[] | undefined, CustomOptions>

exclude-cartridge ​

exclude-cartridge: OptionFlag<string[] | undefined, CustomOptions>


deprecateAliases? ​

static optional deprecateAliases: boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:23

Emit deprecation warning when a command alias is used

Inherited from ​

InstanceCommand.deprecateAliases


deprecationOptions? ​

static optional deprecationOptions: Deprecation

Defined in: node_modules/@oclif/core/lib/command.d.ts:24

Inherited from ​

InstanceCommand.deprecationOptions


description ​

static description: string | undefined

Defined in: node_modules/@oclif/core/lib/command.d.ts:30

A full description of how to use the command.

If no summary, the first line of the description will be used as the summary.

Inherited from ​

InstanceCommand.description


enableJsonFlag ​

static enableJsonFlag: boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:31

Inherited from ​

InstanceCommand.enableJsonFlag


examples ​

static examples: Example[]

Defined in: node_modules/@oclif/core/lib/command.d.ts:46

An array of examples to show at the end of the command's help.

IF only a string is provided, it will try to look for a line that starts with the cmd.bin as the example command and the rest as the description. If found, the command will be formatted appropriately.

EXAMPLES:
  A description of a particular use case.

    $ <%= config.bin => command flags

Inherited from ​

InstanceCommand.examples


flags ​

static flags: FlagInput

Defined in: node_modules/@oclif/core/lib/command.d.ts:48

A hash of flags for the command

Inherited from ​

InstanceCommand.flags


hasDynamicHelp ​

static hasDynamicHelp: boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:49

Inherited from ​

InstanceCommand.hasDynamicHelp


help ​

static help: string | undefined

Defined in: node_modules/@oclif/core/lib/command.d.ts:50

Inherited from ​

InstanceCommand.help


hidden ​

static hidden: boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:52

Hide the command from help

Inherited from ​

InstanceCommand.hidden


hiddenAliases ​

static hiddenAliases: string[]

Defined in: node_modules/@oclif/core/lib/command.d.ts:54

An array of aliases for this command that are hidden from help.

Inherited from ​

InstanceCommand.hiddenAliases


id ​

static id: string

Defined in: node_modules/@oclif/core/lib/command.d.ts:56

A command ID, used mostly in error or verbose reporting.

Inherited from ​

InstanceCommand.id


plugin ​

static plugin: Plugin | undefined

Defined in: node_modules/@oclif/core/lib/command.d.ts:57

Inherited from ​

InstanceCommand.plugin


pluginAlias? ​

readonly static optional pluginAlias: string

Defined in: node_modules/@oclif/core/lib/command.d.ts:58

Inherited from ​

InstanceCommand.pluginAlias


pluginName? ​

readonly static optional pluginName: string

Defined in: node_modules/@oclif/core/lib/command.d.ts:59

Inherited from ​

InstanceCommand.pluginName


pluginType? ​

readonly static optional pluginType: string

Defined in: node_modules/@oclif/core/lib/command.d.ts:60

Inherited from ​

InstanceCommand.pluginType


state? ​

static optional state: string

Defined in: node_modules/@oclif/core/lib/command.d.ts:62

Mark the command as a given state (e.g. beta or deprecated) in help

Inherited from ​

InstanceCommand.state


strict ​

static strict: boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:64

When set to false, allows a variable amount of arguments

Inherited from ​

InstanceCommand.strict


summary? ​

static optional summary: string

Defined in: node_modules/@oclif/core/lib/command.d.ts:69

The tweet-sized description for your class, used in a parent-commands sub-command listing and as the header for the command help.

Inherited from ​

InstanceCommand.summary


usage ​

static usage: string | string[] | undefined

Defined in: node_modules/@oclif/core/lib/command.d.ts:73

An override string (or strings) for the default usage documentation.

Inherited from ​

InstanceCommand.usage

Methods ​

baseCommandTest() ​

baseCommandTest(): void

Defined in: packages/b2c-tooling-sdk/src/cli/base-command.ts:793

Returns ​

void

Inherited from ​

InstanceCommand.baseCommandTest


error() ​

Call Signature ​

error(input, options): void

Defined in: node_modules/@oclif/core/lib/command.d.ts:90

Parameters ​
input ​

string | Error

options ​

object & PrettyPrintableError

Returns ​

void

Inherited from ​

InstanceCommand.error

Call Signature ​

error(input, options?): never

Defined in: node_modules/@oclif/core/lib/command.d.ts:94

Parameters ​
input ​

string | Error

options? ​

object & PrettyPrintableError

Returns ​

never

Inherited from ​

InstanceCommand.error


exit() ​

exit(code?): never

Defined in: node_modules/@oclif/core/lib/command.d.ts:98

Parameters ​

code? ​

number

Returns ​

never

Inherited from ​

InstanceCommand.exit


init() ​

init(): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-command.ts:64

Override init to collect cartridge providers from plugins.

Returns ​

Promise<void>

Overrides ​

InstanceCommand.init


jsonEnabled() ​

jsonEnabled(): boolean

Defined in: node_modules/@oclif/core/lib/command.d.ts:106

Determine if the command is being run with the --json flag in a command that supports it.

Returns ​

boolean

true if the command supports json and the --json flag is present

Inherited from ​

InstanceCommand.jsonEnabled


log() ​

log(message?, ...args?): void

Defined in: packages/b2c-tooling-sdk/src/cli/base-command.ts:430

Override oclif's log() to use pino.

Parameters ​

message? ​

string

args? ​

...unknown[]

Returns ​

void

Inherited from ​

InstanceCommand.log


logToStderr() ​

logToStderr(message?, ...args?): void

Defined in: node_modules/@oclif/core/lib/command.d.ts:109

Parameters ​

message? ​

string

args? ​

...any[]

Returns ​

void

Inherited from ​

InstanceCommand.logToStderr


run() ​

abstract run(): Promise<any>

Defined in: node_modules/@oclif/core/lib/command.d.ts:114

actual command run code goes here

Returns ​

Promise<any>

Inherited from ​

InstanceCommand.run


warn() ​

warn(input): string | Error

Defined in: packages/b2c-tooling-sdk/src/cli/base-command.ts:439

Override oclif's warn() to use pino.

Parameters ​

input ​

string | Error

Returns ​

string | Error

Inherited from ​

InstanceCommand.warn


run() ​

static run<T>(this, argv?, opts?): Promise<ReturnType<T["run"]>>

Defined in: node_modules/@oclif/core/lib/command.d.ts:86

instantiate and run the command

Type Parameters ​

T ​

T extends Command

Parameters ​

this ​

(argv, config) => T

the command class

argv? ​

string[]

argv

opts? ​

LoadOptions

options

Returns ​

Promise<ReturnType<T["run"]>>

result

Inherited from ​

InstanceCommand.run