sales-app-extensibility — Claude Code skill: setup and use
Guides the creation, styling, and deployment of VTEX Sales App extensions. Works through a seven-stage sequence from project checks to final delivery.
npx skills add vtex/skills --skill sales-app-extensibility -a claude-codeWhat sales-app-extensibility does
This skill guides the scaffolding of user interface widgets for VTEX Sales App. It supports insertion points inside shopping carts, product detail views, and navigation drawers. Work proceeds through fixed phases. First comes project validation, followed by scoping, planning, asset generation, documentation, and production builds. Styles must stay in basic .css files rather than CSS modules.
Strict architectural constraints apply throughout the workflow. Registered extension components must always output a JSX.Element rather than null. If data is absent, the code returns an empty fragment <></> to prevent TypeScript compile errors. Handlers for hooks like useCartItem must guard every optional field before reading values.
Without a configured FastStore setup and a Sales App workspace, code generation halts immediately.
What it helps with
- scaffold UI widgets for VTEX Sales App cart and PDP slots
- bind React hooks like useCart and usePDP to supported extension points
- connect external endpoints through the VTEX IO server proxy
- prevent TypeScript compile crashes caused by null returns in extensions
Example prompts for the agent
- Create a promotional banner extension for cart.order-summary.after
- Add a custom warranty block to the product page via pdp.sidebar.before
- Generate a menu item extension linked to external customer data
How to install sales-app-extensibility
1Skills CLI (Vercel)
npx skills add vtex/skills --skill sales-app-extensibility -a claude-code2Manually: put the files in place
~/.claude/skills/sales-app-extensibility/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/sales-app-extensibility/
1Skills CLI (Vercel)
npx skills add vtex/skills --skill sales-app-extensibility -a codex2Manually: put the files in place
.agents/skills/sales-app-extensibility/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add vtex/skills --skill sales-app-extensibility -a cursor2Manually: put the files in place
.cursor/skills/sales-app-extensibility/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install vtex/skills sales-app-extensibility2Manually: put the files in place
.github/skills/sales-app-extensibility/SKILL.md1Skills CLI (Vercel)
npx skills add vtex/skills --skill sales-app-extensibility -a gemini-cli2Platform CLI
gemini skills install https://github.com/vtex/skills --path skills/sales-app-extensibilityManually: put the files in place
.devin/skills/sales-app-extensibility/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add vtex/skills --skill sales-app-extensibility -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about sales-app-extensibility
How do I install sales-app-extensibility in Claude Code?
Run npx skills add vtex/skills --skill sales-app-extensibility -a claude-code. The file will be placed in ~/.claude/skills/sales-app-extensibility/SKILL.md.
What does sales-app-extensibility do?
It automates extension development for VTEX Sales App. The skill handles TypeScript component generation, validates hook usage, and creates markdown documentation for each module.
What prerequisites are required before generating code?
The repository root needs a FastStore configuration including faststore.json and turbo.json. An active Sales App workspace must be declared in root workspace dependencies.