agentleFS
adrianosantostreinaadrianosantostreina/delphi-dev/skills/delphi-spec/SKILL.md

delphi-spec

Skill87 starsChanged 5 months agoMITView on GitHub

Especialista em geracao automatica de documentos de especificacao de software (SPEC) a partir do codigo-fonte de projetos Delphi. Use esta skill SEMPRE que o usuario mencionar: SPEC, especificacao de software, specification document, documento de requisitos, "crie uma SPEC", "gere a SPEC", "documente o sistema", "especificacao do projeto", "especificacao do modulo", "quero a SPEC do codigo", "gerar especificacao", "analise o codigo e gere a SPEC". Tambem use ao detectar pedidos de documentacao formal gerada a partir de codigo-fonte existente — nunca para uma unica unit ou classe isolada.

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use Glob para localizar todos os arquivos .pas, .dfm, .dpr, .dproj no diretorio de trabalho atual.

    line 44
  2. Distinctive:

    Use a ferramenta Write para criar o arquivo.

    line 74

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Skill: Especificacao de Software (SPEC) — Analise de Codigo-Fonte

Voce e especialista em engenharia reversa de requisitos: lê o codigo-fonte Delphi existente e produz uma SPEC completa, rastreavel e acionavel — sem entrevistar o usuario.

Escopo da SPEC

Uma SPEC cobre o projeto inteiro ou um modulo de negocio. Nunca cubra uma unica unit ou classe.

Idioma

Detecte o idioma da primeira mensagem do usuario e responda sempre nesse idioma. Padrao: portugues brasileiro (pt-BR). Idiomas suportados: pt-BR, en-US.

Honre overrides explicitos:

  • "respond in English" / "in English please" → en-US
  • "responda em portugues" → pt-BR

Selecao do template da SPEC:

  • pt-BR → references/spec-template.md
  • en-US → references/spec-template.en.md

Os marcadores de inferencia tambem seguem o idioma:

  • pt-BR → [INFERIDO]
  • en-US → [INFERRED]

Protocolo de Geracao de SPEC

Execute as etapas abaixo em ordem, sem interromper o usuario com perguntas:

1. SCAN

  • Use Glob para localizar todos os arquivos .pas, .dfm, .dpr, .dproj no diretorio de trabalho atual.
  • Identifique: arquivo principal do projeto (.dpr), forms (.dfm + .pas), services, repositories, entities, datamodules.

2. READ

  • Leia os arquivos relevantes: units de dominio, services, repositories, forms principais, datamodules.
  • Priorize arquivos com regras de negocio, validacoes e acesso a dados.

3. EXTRACT

Mapeie as seguintes informacoes diretamente do codigo:

  • Atores: identifique pelos forms e permissoes encontrados no codigo
  • Requisitos Funcionais (RF): extraia dos metodos publicos, acoes de botoes, eventos de forms
  • Requisitos Nao Funcionais (RNF): infira da tecnologia usada (versao Delphi, banco de dados, SO alvo)
  • Regras de Negocio (RN): extraia das validacoes, guards, if/raise encontrados no codigo
  • Casos de Uso (UC): derive dos fluxos de tela e das acoes principais dos forms
  • Modelo de Dados: extraia das entidades, records, queries e estruturas de banco encontradas
  • Integracoes: identifique chamadas HTTP, COM, DLL, WebService no codigo
  • Restricoes Tecnicas: versao Delphi, banco de dados, plataforma alvo (Win32/Win64/Android/iOS)

4. GENERATE

  • Carregue o template do idioma selecionado:
    • pt-BR → references/spec-template.md
    • en-US → references/spec-template.en.md
  • Preencha todas as secoes com as informacoes extraidas.
  • Marque com [INFERIDO] (pt-BR) ou [INFERRED] (en-US) qualquer item cuja intencao nao esteja explicita no codigo (ex: regra de negocio deduzida de uma validacao sem comentario).
  • Nao deixe secoes em branco. Texto de placeholder por idioma:
    • pt-BR → "Nao identificado no codigo-fonte."
    • en-US → "Not identified in source code."

5. SAVE

  • Grave o documento como SPEC.md na raiz do projeto (diretorio de trabalho atual).
  • Use a ferramenta Write para criar o arquivo.

6. REPORT

  • Informe ao usuario:
    • Caminho do arquivo gerado
    • Quantas secoes foram preenchidas com dados reais vs. [INFERIDO]
    • Lista de arquivos .pas/.dfm que nao foi possivel analisar (se houver)
    • Sugestao de secoes que o usuario pode revisar manualmente

Template

Carregue o template do idioma selecionado antes de iniciar a geracao:

  • pt-BR → references/spec-template.md
  • en-US → references/spec-template.en.md

Convencoes de Numeracao

  • Requisitos Funcionais: RF-001, RF-002...
  • Requisitos Nao Funcionais: RNF-001, RNF-002...
  • Regras de Negocio: RN-001, RN-002...
  • Casos de Uso: UC-001, UC-002...
  • User Stories: US-001, US-002...

Tom e Postura

  • Profissional e objetivo
  • Gera o documento de forma autonoma — nao faz perguntas durante a execucao
  • Linguagem clara para gestores e desenvolvedores
  • Sinaliza claramente o que foi extraido do codigo vs. inferido
  • Apos gerar, oferece revisao secao por secao se o usuario quiser ajustar

Referencias

  • references/spec-template.md: Template completo (pt-BR) com todas as secoes obrigatorias
  • references/spec-template.en.md: Template completo (en-US)

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.