Agent skill
b2c-sites
List and manage storefront sites and cartridge paths on B2C Commerce (SFCC/Demandware) instances with the b2c cli. Always reference when using the CLI to list storefront sites, find site IDs, check site status, view storefront configuration, site settings, channel IDs, or get a site list, or manage the ordered list of active cartridges on a site or Business Manager.
Install this agent skill to your Project
npx add-skill https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/tree/main/skills/b2c-cli/skills/b2c-sites
SKILL.md
B2C Sites Skill
Use the b2c CLI plugin to list and manage storefront sites on Salesforce B2C Commerce instances.
Tip: If
b2cis not installed globally, usenpx @salesforce/b2c-cliinstead (e.g.,npx @salesforce/b2c-cli sites list).
Commands
b2c sites list
Lists all sites on a B2C Commerce instance, showing site ID, display name, and storefront status.
# list all sites on the configured instance
b2c sites list
# list sites on a specific server
b2c sites list --server my-sandbox.demandware.net
# list sites with JSON output (useful for parsing/automation)
b2c sites list --json
# use a specific instance from config
b2c sites list --instance production
# enable debug logging
b2c sites list --debug
Cartridge Path Management
Manage the ordered list of active cartridges on a site. The singular alias sites cartridge also works.
# list the cartridge path for a storefront site
b2c sites cartridges list --site-id RefArch
# list the Business Manager cartridge path
b2c sites cartridges list --bm
# add a cartridge to the beginning of a site's path (default)
b2c sites cartridges add plugin_applepay --site-id RefArch
# add a cartridge to the end
b2c sites cartridges add plugin_applepay --site-id RefArch --position last
# add a cartridge after a specific cartridge
b2c sites cartridges add plugin_applepay --site-id RefArch --position after --target app_storefront_base
# add a cartridge to Business Manager
b2c sites cartridges add bm_extension --bm --position first
# remove a cartridge from a site
b2c sites cartridges remove old_cartridge --site-id RefArch
# replace the entire cartridge path
b2c sites cartridges set "app_storefront_base:plugin_applepay:plugin_wishlists" --site-id RefArch
# JSON output for automation
b2c sites cartridges list --site-id RefArch --json
When OCAPI direct permissions for /sites/*/cartridges are unavailable, cartridge commands automatically fall back to site archive import/export. Business Manager (--bm) updates always use site archive import.
Key flags (inherited from InstanceCommand):
| Flag | Short | Description |
|---|---|---|
--server |
-s |
B2C instance hostname (env: SFCC_SERVER) |
--json |
Output full site data as JSON | |
--instance |
Named instance from config | |
--debug |
Enable debug logging |
Output columns: ID, Display Name, Status (storefront_status).
JSON output returns the full OCAPI sites response including all site properties (useful for extracting channel IDs, custom preferences, and other site metadata not shown in the table).
Common Use Cases
Finding site IDs for other commands: Many commands (e.g., site import/export) require a site ID. Use sites list to discover valid IDs:
b2c sites list
# then use the ID in other commands
b2c site-import upload --site RefArch ...
Checking site status: The status column shows the storefront status (online/offline) for each site, useful for verifying deployment state.
Scripting and automation: Use --json to get machine-readable output for CI/CD pipelines:
b2c sites list --json | jq '.data[].id'
Related Skills
- b2c-config -- configure instances, credentials, and debug connection issues
- b2c-site-import-export -- import/export site archives and metadata XML
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
api-client-development
Creating typed API clients with OpenAPI specs, authentication, and OAuth scopes for SCAPI and similar APIs. Use when adding a new SCAPI client, generating types from an OpenAPI spec, setting up OAuth middleware, or integrating a new Commerce API endpoint.
testing
Writing tests for the B2C CLI project using Mocha, Chai, and MSW. Use when writing unit or integration tests, mocking HTTP requests with MSW, testing CLI commands with oclif, isolating config in tests, setting up test coverage, using sinon stubs, c8 coverage, capturing or silencing stdout, or creating MSW handlers.
documentation
Updating user guides, CLI reference, and API documentation for the B2C CLI project. Use when adding or changing CLI command docs, writing JSDoc for TypeDoc generation, updating Vitepress sidebar config, or creating new guide pages.
cli-command-development
Creating new CLI commands and topics for the B2C CLI using oclif. Use when adding a new command, creating a topic, adding flags or arguments, implementing table output, or extending BaseCommand/OAuthCommand/InstanceCommand.
sdk-module-development
Adding new modules and exports to the @salesforce/b2c-tooling-sdk package. Use when creating a new SDK module, adding barrel file exports, configuring package.json exports, or building client factory functions.
b2c-code
Deploy and manage code versions/cartridges on B2C Commerce instances/sandboxes with the b2c cli. Always reference when using the CLI to upload cartridges, deploy code, activate code versions, manage code versions, or watch for file changes during development.
Didn't find tool you were looking for?