O que sap-commerce-skill faz?
Habilidade SAP Commerce Cloud (Hybris) para Claude Code - sistema de tipos, camada de serviço, ImpEx, FlexibleSearch, API OCC, aceleradores
Visão Geral
Esta habilidade capacita o Claude Code a entender e trabalhar com o ecossistema SAP Commerce Cloud (anteriormente Hybris). Ela fornece assistência especializada para:
- Sistema de Tipos: Criação e modificação de
items.xml, extensões de tipos, e geração automática - Camada de Serviço: Desenvolvimento de
services,daos,models, e lógica de negócios - ImpEx: Scripts de importação/exportação, manipulação de dados e migrações
- FlexibleSearch: Consultas SQL-like otimizadas para o SAP Commerce Cloud
- API OCC: Integração RESTful com Omni Commerce Connect
- Aceleradores: Desenvolvimento com storefront e backoffice
Pré-requisitos
- Claude Code instalado e configurado
- Conhecimento básico de SAP Commerce Cloud (Hybris)
- Acesso ao código-fonte do projeto SAP Commerce Cloud
Como Usar
Comandos de Exemplo
# Criar um novo tipo (items.xml)
claude add:type --name "MyProduct" --extends "Product"
# Gerar um service com DAO
claude generate:service --name "CustomOrder" --fields "orderId, status"
# Criar um script ImpEx para importar dados
claude impex:import --file "data/products.impex"
# Executar uma consulta FlexibleSearch
claude flex:search --query "SELECT {p:code} FROM {Product AS p} WHERE {p:catalogVersion} = ?"
# Gerar endpoint OCC REST
claude occ:endpoint --resource "Orders" --methods "GET, POST"
Funcionalidades
Sistema de Tipos
- Geração automática de
items.xmlpara novos tipos - Validação de hierarquia e atributos
- Suporte a coleções, mapas e referências
Camada de Serviço
- Criação de interfaces e implementações de
servicesedaos - Integração com Spring Framework
- Boas práticas de injeção de dependência e transações
ImpEx
- Suporte a sintaxe ImpEx completa
- Geração de scripts para migração de dados
- Importação/exportação de catálogos, produtos, usuários, etc.
FlexibleSearch
- Consultas com parâmetros dinâmicos
- Otimização de performance com índices e joins
- Exemplos de consultas avançadas
API OCC
- Criação e consumo de endpoints RESTful
- Suporte a autenticação OAuth 2.0
- Documentação automática com OpenAPI/Swagger
Aceleradores
- Templates para storefront (b2c, b2b)
- Configuração de backoffice com personalizações
- Boas práticas para aceleradores de módulos
Configuração
Não é necessária configuração adicional. A habilidade integra-se diretamente ao Claude Code e reconhece automaticamente o contexto do projeto SAP Commerce Cloud.
Exemplos Práticos
Exemplo 1: Adicionar um novo tipo
claude add:type --extends "AbstractOrder" --name "CustomOrder" --attributes "discount:Double:optional"
Isso gera um fragmento de items.xml com o tipo CustomOrder estendendo AbstractOrder, incluindo o atributo discount.
Exemplo 2: Criar um service
claude generate:service --name "CustomOrderService" --methods "findByCode, createOrder, updateStatus"
Gera um service com DAO correspondente, incluindo métodos CRUD básicos.
Exemplo 3: Consulta FlexibleSearch avançada
claude flex:search --query "SELECT {o:code}, {u:uid} FROM {Order AS o JOIN User AS u ON {o:user} = {u:pk}} WHERE {o:total} > ?limit" --params "limit:1000"
Retorna pedidos com total superior ao limite especificado, incluindo código do pedido e UID do usuário.
Solução de Problemas
- Erro "Habilidade não reconhecida": Verifique se o nome da habilidade está correto e foi registrado no Claude Code.
- Falha ao gerar código: Certifique-se de que o diretório do projeto é reconhecido como SAP Commerce Cloud.
- Problemas com ImpEx: Valide a sintaxe do arquivo ImpEx e os caminhos dos arquivos de dados.
Contribuição
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou enviar pull requests no repositório oficial: Emenowicz/sap-commerce-skill
Licença
MIT