Agent skill
code-explanation
Use when explaining ADVPL/TLPP code in plain language for developers and functional consultants
Install this agent skill to your Project
npx add-skill https://github.com/thalysjuvenal/advpl-specialist/tree/main/skills/code-explanation
SKILL.md
Code Explanation
Overview
Methodology for explaining ADVPL/TLPP code in plain language. Adapts the explanation depth based on the audience level: junior developer, senior developer, or functional consultant.
When to Use
- User asks to explain what a piece of code does
- User wants to understand legacy code
- Functional consultant needs to understand a customization
- Junior developer needs line-by-line explanation
- Code documentation is missing or unclear
Explanation Levels
| Level | Audience | Depth | Focus |
|---|---|---|---|
junior |
Dev iniciante | Linha por linha | Sintaxe, funcoes, fluxo de execucao |
senior |
Dev experiente | Resumido | Logica de negocio, decisoes de design, riscos |
funcional |
Consultor funcional | Sem termos tecnicos | O que a rotina faz do ponto de vista do negocio |
Explanation Structure
For --level junior
- Objetivo — O que essa rotina faz em uma frase
- Includes e dependencias — O que cada include traz
- Variaveis — Lista de variaveis com tipo e proposito
- Fluxo passo a passo — O que cada bloco de codigo faz, na ordem
- Funcoes nativas usadas — Breve explicacao de cada funcao do Protheus usada
- Tabelas acessadas — Quais tabelas sao lidas/gravadas e por que
- Pontos de atencao — Armadilhas, erros comuns, trechos criticos
For --level senior
- Objetivo — O que essa rotina faz em uma frase
- Logica de negocio — Regras implementadas e decisoes de design
- Tabelas e campos — Resumo das operacoes de banco
- Dependencias externas — Funcoes chamadas, includes, pontos de entrada
- Riscos e debitos tecnicos — Problemas potenciais, melhorias sugeridas
For --level funcional
- O que essa rotina faz — Em linguagem de negocio, sem codigo
- Quando ela e executada — Contexto de uso (menu, schedule, trigger)
- Quais dados ela consulta — Tabelas e informacoes lidas (em linguagem de negocio)
- Quais dados ela altera — O que muda no sistema quando ela roda
- Regras de negocio — Validacoes, calculos, condicoes
- Impacto em outros modulos — Se altera dados usados por outros processos
Process
- Read the target file or code snippet completely
- Determine the explanation level (--level flag or ask)
- Load
protheus-referenceskill if native functions need lookup - Load
protheus-businessskill if business context is needed - Load
embedded-sqlskill if SQL queries are present - Analyze the code structure, identify functions, variables, DB operations
- Generate explanation following the level-appropriate structure
- Use the user's language (Portuguese or English)
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
advpl-to-tlpp-migration
Use when migrating ADVPL procedural code to TLPP object-oriented code, converting functions to classes, or modernizing legacy Protheus code
protheus-reference
Use when looking up Protheus native functions, SX data dictionary tables, REST API endpoints, MV parameters, or TOTVS framework documentation
documentation-patterns
Use when generating technical documentation for ADVPL/TLPP code - Protheus.doc headers, routine docs, API docs
embedded-sql
Use when writing SQL queries in ADVPL/TLPP using BeginSQL/EndSQL blocks, %table%, %notDel%, %xfilial%, %exp% macros, or when choosing between Embedded SQL and TCQuery string concatenation
protheus-business
Use when consulting Protheus ERP business processes, module workflows, routines, integrations, or understanding how business operations work in TOTVS Protheus
advpl-refactoring
Use when refactoring ADVPL/TLPP code - extract functions, simplify logic, remove dead code, improve naming
Didn't find tool you were looking for?