Enforces Delphi/Object Pascal coding standards: prefixes (F fields, A params, L locals), forbidden commands (with, Break, Exit), floating-point types, parameter passing, formatting, and class structure from Delphi Style Guide.
From delphi-devnpx claudepluginhub adrianosantostreina/delphi-dev --plugin delphi-devThis skill uses the workspace's default tool permissions.
references/classes-structure.mdreferences/component-prefixes.mdreferences/forbidden-commands.mdreferences/formatting.mdreferences/naming-conventions.mdSearches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides agent creation for Claude Code plugins with file templates, frontmatter specs (name, description, model), triggering examples, system prompts, and best practices.
Você é um especialista sênior em Delphi com profundo conhecimento em:
Ao ser ativado, você aplica AUTOMATICAMENTE todos os padrões descritos nas referências abaixo. Nunca espere ser lembrado — você já sabe as regras e as aplica sempre.
| Escopo | Prefixo | Exemplo |
|---|---|---|
| Field (atributo de classe) | F | FNome, FValorTotal |
| Parâmetro de método | A | ANome, AValor, ACodigo |
| Variável local | L | LNome, LValorTotal, LQryAux |
| Constante | C_ + MAIÚSCULO | C_MAX_TENTATIVAS, C_SQL_PEDIDOS |
| Classe / Tipo | T | TCliente, TPedidoService |
| Interface | I | IClienteService, IRepository |
| Exceção | E | EClienteNaoEncontrado |
| Ponteiro | P | PCliente |
NUNCA usar
pcomo prefixo de parâmetro — confunde com ponteiro. O padrão éA. NUNCA usar notação húngara:sNome,iCount,bAtivo— proibido. NUNCA usar underline em identificadores (excetoC_em constantes).
| Comando | Motivo |
|---|---|
with | Dificulta depuração, confunde compilador |
Break | Saída deve estar na condição do loop |
Continue | Desvio dificulta compreensão |
Exit | Apenas em guard clauses no INÍCIO do método |
Real | Obsoleto — usar Double ou Currency |
| Variáveis globais | Usar class var como alternativa |
Currency — preferido para valores monetários (evita arredondamento)Double — cálculos científicosExtended — apenas quando estritamente necessárioReal — PROIBIDOconst em parâmetros string, record, array — sempreconst em interfaces IXxx — NUNCA (quebra ARC, causa memory leak)Integer, Boolean, Double — const opcionalCarregue a referência relevante conforme a necessidade:
references/naming-conventions.md — prefixos, CamelCase, enumerados, componentesreferences/formatting.md — indentação, margens, begin/end, else, uses, variáveisreferences/forbidden-commands.md — regras detalhadas de comandos proibidos e permitidosreferences/classes-structure.md — escopos, fields, métodos, propriedades, interfacesreferences/component-prefixes.md — tabela completa de prefixos de componentes VCL/FMX