☕ Um Café no Bellacosa Mainframe
Gostou do conteúdo? Ajude a manter o café quente, o COBOL compilando e o mainframe acordado. 😄
☕ Pague um café ao Bellacosa

Translate

Mostrar mensagens com a etiqueta cursor. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta cursor. Mostrar todas as mensagens

quarta-feira, 20 de maio de 2026

SKILL.md : O JCL da Inteligência Artificial?




☕ Um Café no Bellacosa Mainframe

SKILL.md

O JCL da Inteligência Artificial?

Como transformar prompts descartáveis em componentes reutilizáveis de IA

"Programadores COBOL nunca escreveram comandos repetidos quando podiam criar uma PROC. O SKILL.md segue exatamente essa filosofia."


O problema do Prompt Engineering

Hoje a maioria das pessoas trabalha assim:

Abre ChatGPT

↓

Escreve um prompt enorme

↓

Recebe resposta

↓

Fecha

↓

No dia seguinte...

Escreve tudo novamente

É praticamente isso.

Imagine um DBA que toda manhã tivesse que escrever novamente o JCL inteiro para executar o RUNSTATS.

Ninguém faria isso.

Criaria uma PROC.

Ou um CLIST.

Ou um REXX.

Ou um Script.

Ou um Pipeline.

Então por que fazemos isso com IA?


O nascimento do SKILL.md

A ideia do SKILL.md é simples.

Em vez de guardar conhecimento na cabeça...

...guardamos conhecimento em arquivos.

Esses arquivos descrevem exatamente:

  • quando executar

  • como executar

  • quais regras seguir

  • quais ferramentas usar

  • qual formato devolver

Ou seja...

não é um prompt.

É um módulo.


Pense como um programador COBOL

No COBOL existe:

COPYBOOK

Você escreve uma vez.

Depois reutiliza em centenas de programas.

O SKILL.md é praticamente o COPYBOOK da IA.


Outro exemplo.

No z/OS temos

PROC JCL

Em vez de copiar:

IEFBR14

DISP

SPACE

DCB

...

criamos

PROC

e chamamos:

//STEP EXEC PROC=BACKUP

O SKILL.md faz exatamente isso.


Em vez de escrever

Analise este código COBOL...

gere documentação...

explique...

crie testes...

faça HTML...

gere JSON...

você apenas chama

/documentar-cobol

E pronto.


O que realmente existe dentro de um SKILL.md?

A imagem resume isso muito bem.

Vamos aprofundar.


1 Nome

name:

É o identificador.

Exemplo

documentar-cobol

ou

analisar-jcl

ou

explicar-vsam

2 Description

Essa talvez seja a parte mais importante.

Ela não serve apenas para humanos.

Serve para a IA descobrir:

"quando devo usar este Skill?"

Exemplo.

Sempre que o usuário enviar um programa COBOL
e pedir documentação.

Observe.

Não é um prompt.

É um gatilho.


3 Instructions

Aqui mora o cérebro.

Exemplo.

1 Leia o código

2 Identifique variáveis

3 Gere fluxograma

4 Explique SQL

5 Explique CICS

6 Gere documentação

7 Gere Markdown

É praticamente um algoritmo.


4 Constraints

Muito importante.

Exemplo.

Nunca invente campos

Nunca altere lógica

Explique apenas o que existe

Sempre preserve comentários

Sem restrições...

a IA improvisa.

Com restrições...

ela fica previsível.


5 Output

Como devolver.

Exemplo.

Markdown

JSON

HTML

Tabela

Mermaid

Ascii Art

PlantUML

Isso elimina enorme parte da inconsistência.


Progressive Disclosure

Essa parte da imagem é excelente.

Ela mostra algo pouco conhecido.

A IA não precisa carregar tudo imediatamente.

Ela faz:

Stage 1

↓

Carrega apenas metadados

Depois

Stage 2

↓

Carrega instruções completas

Depois

Stage 3

↓

Busca scripts externos

Isso reduz consumo de contexto.

É parecido com paginação de memória.

Ou até mesmo:

Demand Paging

no z/OS.

Só carrega quando precisa.


Anatomia

A imagem resume assim:

name

description

instructions

Mas, na prática, um bom Skill costuma ter também:

Examples

References

Templates

Output

Validation

Error Handling

Scripts

Assets

Ou seja...

é quase um pequeno projeto.


Estrutura de diretórios

A imagem mostra algo como

.claude/

skills/

review-pr/

Dentro temos

SKILL.md

scripts/

references/

assets/

Isso é fantástico.

Porque aproxima IA da engenharia de software.

Não existe mais um prompt perdido.

Existe um componente organizado.


Um exemplo para Mainframe

Imagine:

skills/

analisar-cobol/

SKILL.md

copybooks/

templates/

scripts/

Dentro do Skill:

Receba um programa COBOL.

Explique:

Data Division

Working Storage

Linkage

File Section

Procedure Division

CICS

SQL

VSAM

Performance

Sugestões

Checklist

Fluxograma

Sempre igual.

Sempre consistente.


Outro exemplo

Imagine um Skill chamado

JCL Review

Quando alguém envia

//STEP01 EXEC PGM=IDCAMS

automaticamente a IA faz:

✔ verifica DISP

✔ verifica SPACE

✔ verifica UNIT

✔ verifica DCB

✔ verifica GDG

✔ verifica retorno

✔ identifica problemas

✔ sugere melhorias

Sem escrever prompt algum.


Outro exemplo

RACF Auditor

Entrada

Comandos RACF

Saída

Riscos

Boas práticas

Least Privilege

Violação

Explicação

Checklist

Normas IBM

Outro exemplo

Explicar Dump S0C7

Sempre devolvendo

Causa

Registro PSW

Offset

Hex

Instrução COBOL

Correção

Exemplo

Por que isso escala?

Porque agora existe padronização.

Imagine uma empresa.

Hoje.

100 desenvolvedores.

Cada um escreve prompts diferentes.

Resultados diferentes.

Qualidade diferente.

Agora imagine.

Todos usam

review-api

review-cobol

review-java

security

documentation

A empresa inteira produz praticamente no mesmo padrão.


Isso lembra muito...

Quem trabalha em Mainframe provavelmente percebeu.

SKILL.md lembra vários conceitos clássicos:

MainframeMundo IA
PROCSkill
COPYBOOKSkill compartilhado
CLISTSkill
REXXSkill com lógica
ISPF PanelInterface para Skill
JCL ProcedureReutilização
PARMLIBConfiguração
EXITPersonalização
Macro AssemblerTemplate reutilizável

Na verdade...

a filosofia é praticamente a mesma.


Skills × Config × MCP

A imagem também mostra essa diferença.

Skills

São capacidades.

Gerar documentação

Revisar código

Criar testes

Explicar erros

Converter formatos

São executadas sob demanda.


Configs

São comportamentos permanentes.

Exemplo.

Sempre responda em português.

Sempre seja objetivo.

Nunca gere código inseguro.

É equivalente às configurações globais do ambiente.


MCP

É outra camada completamente diferente.

MCP conecta IA a recursos externos.

Por exemplo:

GitHub

Jira

Confluence

PostgreSQL

Oracle

VSCode

Filesystem

AWS

IBM APIs

Enquanto um Skill ensina como pensar, o MCP fornece acesso ao mundo externo.


O futuro: IA Programável

A mensagem mais importante da imagem é esta:

"The shift is happening towards programmable AI systems."

Esse é realmente o movimento que está ganhando força.

A evolução pode ser vista em quatro fases:

2023

Prompt Engineering

2024

Prompt Libraries

2025

AI Agents

2026+

Skills

MCP

Workflows

Memory

Ferramentas

Automação

Cada etapa reduz trabalho manual e aumenta a reutilização e a previsibilidade.


Como isso se aplica ao Bellacosa Mainframe

Esse conceito combina muito com o projeto Bellacosa Mainframe. Em vez de criar prompts longos para cada artigo ou análise, você pode construir uma biblioteca de Skills especializadas, por exemplo:

  • Artigo Bellacosa — gera artigos longos no seu estilo, com curiosidades, história, exemplos, SEO, FAQ e chamadas para ação.

  • Review COBOL — analisa código COBOL com foco em bancos brasileiros, boas práticas, legibilidade e performance.

  • Analisador JCL — valida DISP, SPACE, GDG, retornos, organização dos DDs e oportunidades de melhoria.

  • Explicador CICS — detalha COMMAREA, Channels/Containers, TSQ/TDQ, RESP/RESP2, BMS e tratamento de erros.

  • Gerador de Quiz — cria avaliações com diferentes níveis de dificuldade e gabarito comentado.

  • Criador de Laboratórios — produz exercícios práticos para Hercules, ADCD e ambientes IBM Z.

  • SEO Blogspot — gera meta description, marcadores, slug e estrutura otimizada para mecanismos de busca.

Cada Skill seria reutilizada inúmeras vezes, garantindo consistência em todos os seus conteúdos.


Conclusão

O SKILL.md representa uma mudança importante na forma de trabalhar com IA. O foco deixa de ser escrever prompts elaborados para cada interação e passa a ser a criação de componentes reutilizáveis, documentados e padronizados, muito semelhantes aos princípios que profissionais de mainframe já utilizam há décadas com COPYBOOKs, PROCs, CLISTs, REXX e módulos reutilizáveis.

No fim das contas, a lógica é familiar para qualquer desenvolvedor experiente:

Não copie conhecimento. Encapsule-o. Não repita instruções. Reutilize-as. Não trate a IA como uma calculadora. Trate-a como uma plataforma programável.

Essa mudança aproxima a Inteligência Artificial das boas práticas de engenharia de software e tende a tornar seu uso mais confiável, escalável e sustentável em ambientes corporativos — exatamente como aconteceu com a evolução do desenvolvimento no mundo IBM Z ao longo das últimas décadas.

segunda-feira, 31 de janeiro de 2011

🔥 Aprender COBOL com DB2 — o caminho do programador mainframer de verdade

 

Aprenda COBOL com DB2 ao estilo Bellacosa Mainframe

🔥 Aprender COBOL com DB2 — o caminho do programador mainframer de verdade



🧠 Introdução: por que COBOL + DB2 ainda manda no jogo

Se você quer ser programador mainframe COBOL com DB2, precisa entender uma verdade simples:

COBOL processa.
DB2 guarda.
SQL conecta o cérebro à memória do negócio.

Não estamos falando de tecnologia “antiga”.
Estamos falando da infraestrutura que processa bilhões por dia, com ACID, consistência e auditoria que muita stack moderna ainda tenta copiar.

Esse artigo é um mapa de estrada, do zero até o código profissional, misturando:

  • técnica

  • história

  • prática

  • fofoca de data center

  • e aquela sabedoria que só mainframer velho passa no café ☕


DB2 o banco de dados do Mainframe


🧱 PARTE 1 — Conhecendo o DB2 (o coração dos dados)

📜 Um pouco de história

O DB2 nasce na IBM nos anos 80, baseado no modelo relacional proposto por Edgar F. Codd.

👉 Conceito revolucionário:

  • dados em tabelas

  • relações lógicas

  • SQL como linguagem declarativa

Enquanto o mundo brigava com arquivos VSAM:

“Me diga o que você quer, não como buscar.”


🧩 Modelo Relacional (base de tudo)

  • Tabela → entidade de negócio

  • Linha (row) → registro

  • Coluna (column) → atributo

  • Primary Key → identidade

  • Foreign Key → relacionamento

💬 Bellacosa comenta:

“Se você não entende modelo relacional, não adianta saber COBOL.”


🧾 Tipos de Dados DB2 (o casamento com COBOL)

DB2COBOL
CHAR / VARCHARPIC X
INTEGERPIC S9
DECIMALPIC S9V
DATEPIC X(10)
TIMESTAMPPIC X(26)

🥚 Easter egg:
DB2 guarda DECIMAL melhor do que muito banco moderno guarda FLOAT 😏


Queries SQL no DB2 

🧑‍💻 PARTE 2 — Linguagem SQL no DB2

🗣️ SQL: a língua franca dos dados

SQL não é procedural.
SQL é declarativa.

🔹 DDL — Data Definition Language

CREATE TABLE CLIENTE ( ID_CLIENTE INTEGER NOT NULL, NOME VARCHAR(50), SALDO DECIMAL(9,2), PRIMARY KEY (ID_CLIENTE) );
  • CREATE

  • DROP

  • ALTER


🔹 DCL — Data Control Language

GRANT SELECT ON CLIENTE TO USER01;

Controle de acesso.
Segurança raiz de banco.


🔹 DML — Data Manipulation Language

INSERT INTO CLIENTE VALUES (1, 'JOÃO', 1500.00); SELECT * FROM CLIENTE; UPDATE CLIENTE SET SALDO = SALDO + 100 WHERE ID_CLIENTE = 1; DELETE FROM CLIENTE WHERE ID_CLIENTE = 1;

💬 Bellacosa:

“DELETE sem WHERE é como RM -RF /”


🔍 SELECT, JOIN e afins (onde o bicho pega)

SELECT C.NOME, P.VALOR FROM CLIENTE C JOIN PEDIDO P ON C.ID_CLIENTE = P.ID_CLIENTE;

👉 JOIN mal feito = batch lento = gente te ligando às 3 da manhã.


🛠️ SPUFI e QMF

  • SPUFI → SQL direto no TSO

  • QMF → consultas, relatórios, análise

💡 Dica Bellacosa:

“Todo mundo começa no SPUFI.
Quem fica bom, aprende QMF.”



🧩 PARTE 3 — COBOL com DB2 (onde nasce o profissional)

🏛️ História rápida do COBOL

  • Criado em 1959

  • Foco: negócio

  • Legibilidade

  • Estabilidade

👉 Não é bonito.
👉 É confiável.


🧠 Estrutura de um programa COBOL

  • IDENTIFICATION DIVISION

  • ENVIRONMENT DIVISION

  • DATA DIVISION

  • PROCEDURE DIVISION

📌 Árvore programática é fundamental para não virar macarrão lógico.


🔗 Host Variables (a ponte COBOL ↔ DB2)

EXEC SQL SELECT SALDO INTO :WS-SALDO FROM CLIENTE WHERE ID_CLIENTE = :WS-ID END-EXEC.
  • Sempre com :

  • Tipagem correta

  • Conversão consciente


📊 SQLCA — seu melhor amigo

IF SQLCODE = 0 CONTINUE ELSE DISPLAY 'ERRO DB2 ' SQLCODE END-IF
SQLCODESignificado
0OK
+100NOT FOUND
< 0ERRO

💬 Bellacosa:

“Quem ignora SQLCODE vira operador sem saber.”


📚 DCLGEN — o BOOK sagrado

  • Gera layout da tabela

  • Gera host variables

  • Evita erro humano

//STEP01 EXEC PGM=DSNTEP2

👉 Nunca escreva layout DB2 na mão. Nunca.


Consulta pagina via cursor no DB2

🌀 PARTE 4 — Cursores (nível profissional)

🔄 Cursor para leitura

EXEC SQL DECLARE C1 CURSOR FOR SELECT ID_CLIENTE, NOME FROM CLIENTE END-EXEC.
EXEC SQL FETCH C1 INTO :WS-ID, :WS-NOME END-EXEC.

📌 Sempre:

  • OPEN

  • FETCH

  • CLOSE


✍️ Inserindo, alterando e excluindo via COBOL

  • INSERT → novo registro

  • UPDATE → alteração controlada

  • DELETE → cuidado máximo

💡 Boa prática:

“Nunca DELETE direto sem histórico.”


🧠 PARTE 5 — Boas práticas Bellacosa Mainframe

✔ Use DCLGEN
✔ Sempre trate SQLCODE
✔ Evite SELECT *
✔ Documente regra de negócio
✔ Separe lógica de acesso a dados
✔ Teste com volume real
✔ Pense em performance desde o SELECT

🥚 Easter egg clássico:

“O batch estava lento porque alguém esqueceu o índice.”


🧪 Exercícios de fixação (mentalidade correta)

  1. Criar tabela DB2

  2. Gerar DCLGEN

  3. Programa COBOL com:

    • INSERT

    • SELECT

    • UPDATE

    • DELETE

  4. Programa com CURSOR

  5. Programa com JOIN

  6. Analisar SQLCODE

  7. Ajustar performance

👉 Isso forma programador, não copiador de código.


🧠 Comentário final Bellacosa

Aprender COBOL com DB2 não é aprender uma linguagem.
É aprender:

  • como dados movem o mundo

  • como sistemas críticos pensam

  • como escrever código que não pode falhar

🔥 COBOL + DB2 não é passado.
É o núcleo silencioso do presente.

Enquanto modas passam,
o batch fecha o dia.

 

Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988
GitHub LinkedIn
Inicializando conteúdo...