advpl-specialist
by thalysjuvenalv1.0.1
Especialista em ADVPL e TLPP para desenvolvimento TOTVS Protheus - geracao de codigo, migracao, debug e documentacao
Commands
diagnoseDiagnose errors and problems in ADVPL/TLPP code - compilation errors, runtime errors, performance issues, and log analysis
docsLook up Protheus documentation - native functions, SX data dictionary, REST APIs, MV parameters, and framework reference
generateGenerate ADVPL/TLPP code - functions, classes, MVC structures, REST APIs, Web Services, and entry points for TOTVS Protheus
migrateMigrate ADVPL procedural code to TLPP object-oriented code with classes, namespaces, and modern patterns
Documentation
# advpl-specialist      Plugin para Claude Code especializado em **ADVPL** e **TLPP** para desenvolvimento no ecossistema **TOTVS Protheus**. ## Indice - [Quick Start](#quick-start) - [Funcionalidades](#funcionalidades) - [Instalacao](#instalacao) - [Commands](#commands) - [Agents](#agents) - [Skills](#skills) - [Estrutura do Projeto](#estrutura-do-projeto) - [Referencia Embutida](#referencia-embutida) - [Contribuindo](#contribuindo) - [Changelog](#changelog) - [Licenca](#licenca) ## Quick Start ```bash # 1. Instale o plugin /plugin marketplace add thalysjuvenal/advpl-specialist /plugin install advpl-specialist@thalysjuvenal-advpl-specialist # 2. Abra um projeto Protheus e use os comandos /advpl-specialist:generate function FATA050 --module FAT /advpl-specialist:diagnose "Variable does not exist: cCodCli" /advpl-specialist:docs FWExecView ``` ## Funcionalidades - **Geracao de codigo** - Funcoes, classes TLPP, MVC, REST APIs, Web Services, pontos de entrada - **Migracao ADVPL -> TLPP** - Conversao de codigo procedural para orientado a objetos - **Diagnostico de erros** - Analise de erros de compilacao, runtime, performance e locks - **Referencia de documentacao** - Funcoes nativas, dicionario SX, APIs REST, parametros MV_* ## Instalacao ### Opcao 1: Via Marketplace (recomendado) Adicione o marketplace e instale o plugin: ```bash # Dentro do Claude Code, adicione o marketplace /plugin marketplace add thalysjuvenal/advpl-specialist # Instale o plugin /plugin install advpl-specialist@thalysjuvenal-advpl-specialist ``` ### Opcao 2: Direto do diretorio local (para teste/desenvolvimento) Clone o repositorio e inicie o Claude Code com a flag `--plugin-dir`: ```bash git clone https://github.com/thalysjuvenal/advpl-specialist.git claude --plugin-dir ./advpl-specialist ``` O plugin detecta automaticamente projetos Protheus (`.prw`, `.tlpp`, `.prx`, `.ch`) ao iniciar uma sessao. ### Plugin recomendado: superpowers Para uma experiencia completa, recomendamos instalar o plugin oficial **superpowers** que adiciona skills de planejamento, brainstorming, debugging sistematico e code review: ```bash /plugin marketplace add anthropics/claude-code-plugins /plugin install superpowers@anthropics-claude-code-plugins ``` ## Commands | Comando | Descricao | |---------|-----------| | `/advpl-specialist:generate` | Gerar codigo ADVPL/TLPP (funcoes, classes, MVC, REST, pontos de entrada) | | `/advpl-specialist:migrate` | Migrar codigo ADVPL procedural para TLPP orientado a objetos | | `/advpl-specialist:diagnose` | Diagnosticar erros e problemas em codigo ADVPL/TLPP | | `/advpl-specialist:docs` | Consultar documentacao de funcoes, APIs e dicionario Protheus | ### Exemplos ```bash # Gerar uma User Function para o modulo de faturamento /advpl-specialist:generate function FATA050 --module FAT # Gerar uma classe TLPP /advpl-specialist:generate class PedidoService # Gerar estrutura MVC completa /advpl-specialist:generate mvc CadProduto --module EST # Migrar arquivo ADVPL para TLPP /advpl-specialist:migrate src/FATA001.prw # Diagnosticar um erro /advpl-specialist:diagnose "Variable does not exist: cCodCli" # Consultar documentacao de funcao /advpl-specialist:docs FWExecView ``` ## Agents | Agent | Descricao | |-------|-----------| | `code-generator` | Gera codigo ADVPL/TLPP seguindo convencoes e boas praticas | | `migrator` | Converte codigo procedural ADVPL para TLPP com classes e namespaces | | `debugger` | Diagnostica erros de compilacao, runtime, performance e locks | | `docs-reference` | Consulta referencia local + TDN para funcoes, tabelas SX e APIs | ## Skills | Skill | Descricao | |-------|-----------| | `advpl-code-generation` | Padroes e templates para geracao de codigo (MVC, REST, pontos de entrada, classes) | | `advpl-to-tlpp-migration` | Regras de conversao, checklist e exemplos before/after | | `advpl-debugging` | Top 50 erros comuns, metodologia de debug, dicas de performance | | `protheus-reference` | 165+ funcoes nativas, dicionario SX, referencia REST API | | `embedded-sql` | BeginSQL/EndSQL, macros %table%, %notDel%, %xfilial%, %exp%, column types | ## Estrutura do Projeto ``` advpl-specialist/ ├── .claude-plugin/ │ ├── plugin.json # Metadata do plugin │ └── marketplace.json # Catalogo do marketplace ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md # Template para reportar bugs │ │ └── feature_request.md # Template para sugestoes │ └── pull_request_template.md # Template para PRs ├── agents/ # 4 agents especializados │ ├── code-generator.md │ ├── migrator.md │ ├── debugger.md │ └── docs-reference.md ├── commands/ # 4 commands invocaveis │ ├── generate.md │ ├── migrate.md │ ├── diagnose.md │ └── docs.md ├── skills/ # 5 skills com supporting files │ ├── advpl-code-generation/ # Padroes MVC, REST, SOAP, PE, classes │ ├── advpl-to-tlpp-migration/ # Regras e checklist de migracao │ ├── advpl-debugging/ # Erros comuns e performance │ ├── embedded-sql/ # BeginSQL/EndSQL, macros, patterns │ └── protheus-reference/ # Funcoes nativas, SX, REST API ├── hooks/ # SessionStart hook │ ├── hooks.json │ └── session-start ├── CHANGELOG.md # Historico de versoes ├── CODE_OF_CONDUCT.md # Codigo de conduta ├── CONTRIBUTING.md # Guia de contribuicao ├── LICENSE # Licenca MIT ├── SECURITY.md # Politica de seguranca └── README.md ``` ## Referencia Embutida O plugin inclui referencia local para consulta rapida: - **165+ funcoes nativas** documentadas com sintaxe, parametros e exemplos - **9 tabelas SX** (SX1-SX9, SIX) com campos e uso programatico - **REST API patterns** completos para WsRestFul e TLPP annotations - **50 erros comuns** com causa e solucao - **10 categorias de otimizacao** de performance com before/after - **16 pontos de entrada** mais usados por modulo - **Templates de classes TLPP** (Service, Repository, DTO) - **MVC completo** com MenuDef, ModelDef, ViewDef e FWMVCRotAuto - **Embedded SQL** completo com BeginSQL/EndSQL, macros, JOINs, aggregations Para casos nao cobertos localmente, o plugin busca no TDN (TOTVS Developer Network) automaticamente. ## Contribuindo Contribuicoes sao bem-vindas! Leia o [CONTRIBUTING.md](CONTRIBUTING.md) para saber como participar. ## Changelog Veja o [CHANGELOG.md](CHANGELOG.md) para o historico completo de versoes. ## Licenca [MIT](LICENSE)