Scaffolding do metodo FACIN_IA para GitHub Copilot, plugin local e template de projetos.
Project description
FACIN_IA
Modelo de maturidade e governança aplicada à inteligência artificial para organizações públicas e ambientes de desenvolvimento intensivos em IA.
O projeto adapta o Framework de Arquitetura Corporativa para Interoperabilidade no apoio à Governança (FACIN), Modelo de Responsabilidade Organizacional (MRO) e Spec-Driven Development (SDD) para avaliar como estratégia, dados, operação, risco, transparência e valor público são governados ao longo do ciclo de vida da IA.
Autor: Guttenberg Ferreira Passos
Modelo LLM utilizado: GPT-5.4
Ambiente validado: figmm
O que o FACIN_IA entrega
O repositório combina duas frentes complementares:
- um modelo institucional de avaliação de maturidade em governança de IA, com artefatos executivos, analíticos e operacionais;
- uma forma reutilizável de levar o método para outros repositórios por customização do GitHub Copilot, plugin de agente e preparação para distribuição como pacote PyPI ou GitHub Template.
Na prática, o FACIN_IA pode ser usado tanto como referencial metodológico quanto como camada operacional para apoiar diagnóstico, especificação antes de código, definição de indicadores, evidências, controles e adaptação do método para outros contextos institucionais.
Formas de adoção do FACIN_IA
O projeto passa a documentar três opções distintas de uso.
Opção 1. Customização direta do repositório
Esta é a forma mais simples para equipes que já possuem um repositório e querem incorporar o método manualmente, sem depender de empacotamento adicional.
Estrutura disponível hoje:
.github/agents/FACIN_IA.agent.md.github/skills/facin-ia/SKILL.md.github/prompts/facin-ia-diagnostico.prompt.md.github/skills/facin-ia/template-especificacao.md.github/skills/facin-ia/metodo-facin-ia.md.github/skills/facin-ia/checklist-avaliacao.md
Como instalar em outro projeto:
- copie as pastas
.github/agents/,.github/skills/facin-ia/e.github/prompts/para o repositório de destino; - abra o projeto no VS Code com GitHub Copilot habilitado;
- selecione o agente
FACIN_IAno chat; - use a skill
/facin-iapara carregar o método; - use o prompt
/facin-ia-diagnosticopara diagnósticos baseados em evidências.
Quando usar esta opção:
- quando a equipe quer controle total sobre os arquivos de customização;
- quando a adoção será feita em poucos repositórios;
- quando a organização prefere distribuir o método sem depender de plugin em preview.
Opção 2. Plugin de agente para o GitHub Copilot
Esta opção já está materializada no repositório e foi pensada para reduzir a cópia manual de arquivos entre equipes.
Estrutura disponível hoje:
plugins/facin-ia/.github/plugin/marketplace.json
O plugin inclui:
- agente especializado
FACIN_IA; - skill
facin-ia; - comando de slash
facin-ia-diagnostico.
Instalação como plugin local
Use esta modalidade quando a equipe possui o repositório clonado localmente.
No settings.json do VS Code:
{
"chat.plugins.enabled": true,
"chat.pluginLocations": {
"C:/Programas/Prodemge/FACIN_IA/plugins/facin-ia": true
}
}
Depois:
- abra o chat do GitHub Copilot;
- localize o plugin entre os plugins de agente;
- habilite o plugin
facin-ia; - selecione o agente
FACIN_IAou execute o comando/facin-ia:facin-ia-diagnostico.
Instalação via marketplace Git
Use esta modalidade quando a organização quiser distribuição centralizada.
No settings.json do VS Code:
{
"chat.plugins.enabled": true,
"chat.plugins.marketplaces": [
"https://github.com/gutpassos/FACIN_IA.git"
]
}
Depois:
- abra a interface de plugins do chat;
- localize o plugin
facin-iaa partir do marketplace; - instale e habilite o plugin;
- use o agente, a skill e o comando disponibilizados pelo pacote.
Quando usar esta opção:
- quando a equipe quer padronização com menor esforço de replicação;
- quando há interesse em versionar a distribuição do método;
- quando o ambiente aceita uso de agent plugins em preview.
Opção 3. Pacote PyPI e GitHub Template
Esta é uma terceira forma de distribuição do FACIN_IA, separada do plugin, indicada para ampliar adoção em larga escala e reduzir atrito para usuários que precisam iniciar projetos novos ou habilitar rapidamente o método em repositórios existentes.
Esta opção agora possui base estrutural no repositório. A publicação no PyPI e a marcação formal do repositório como template no GitHub ainda dependem do processo de publicação, mas o empacotamento inicial, a CLI e os arquivos-base de template já foram preparados.
Como funciona a opção PyPI
O repositório agora inclui uma base de pacote Python em pyproject.toml e src/facin_ia/, com uma CLI própria para instalar ou injetar a estrutura metodológica no projeto do usuário.
Estrutura preparada:
pyproject.toml;src/facin_ia/__init__.py;src/facin_ia/cli.py;src/facin_ia/scaffold.py..github/workflows/publish-python-package.yml.
Perfis disponíveis na CLI:
customizacao: gera a estrutura.githubcom agente, skill e prompt;plugin: gera a customização e também o pacote do plugin local;template-base: gera customização, plugin e arquivos auxiliares para uso como template.
Instalação atual a partir do código-fonte:
pip install .
facin-ia init --profile customizacao
Instalação prevista após publicação no PyPI:
pip install facin-ia
facin-ia init --profile customizacao
Fluxo de instalação:
- o usuário instala o pacote Python no ambiente desejado;
- executa a CLI dentro do repositório de destino;
- escolhe o perfil desejado, como
customizacao,pluginoutemplate-base; - a CLI materializa os arquivos
.github, prompts, skills, agentes e, quando aplicável, a estrutura do plugin e dos arquivos de template; - o usuário abre o projeto no VS Code e passa a utilizar o FACIN_IA com a configuração pronta.
Fluxo de publicação preparado no GitHub Actions:
- abrir a aba
Actionsdo repositório; - executar o workflow
Publish Python Packagemanualmente; - escolher
testpypioupypicomo destino; - deixar o workflow construir, validar e publicar os artefatos.
Para esse fluxo funcionar com segurança, o repositório deve registrar trusted publishers no PyPI e no TestPyPI e manter os environments testpypi e pypi configurados no GitHub.
Benefícios desta abordagem:
- instalação rápida em repositórios já existentes;
- menor chance de erro manual na cópia da estrutura;
- possibilidade de atualização versionada do método;
- boa aderência para times que já trabalham com distribuição interna de pacotes Python.
Como funciona a opção GitHub Template
O repositório também foi preparado para operar como GitHub Template, com arquivos-base de onboarding e colaboração que podem seguir automaticamente para novos repositórios gerados a partir dele.
Estrutura preparada:
TEMPLATE_SETUP.md;.github/PULL_REQUEST_TEMPLATE.md;.github/ISSUE_TEMPLATE/facin-ia-adocao.md;.github/ISSUE_TEMPLATE/config.yml.
Experiência esperada do usuário:
- o usuário clica em
Use this templateno GitHub; - cria um novo repositório a partir do template;
- clona o repositório gerado;
- abre o projeto no VS Code com GitHub Copilot habilitado;
- começa a usar o agente
FACIN_IAe os artefatos já pré-carregados.
O template pode entregar, desde a criação do repositório:
- estrutura
.githubpronta; - documentação inicial do método;
- pasta de plugin opcional;
- exemplos de prompts e checklist de avaliação;
- arquivos-base para especificação, governança e evidências.
Quando usar PyPI ou Template:
- PyPI é mais adequado para injetar o FACIN_IA em repositórios já existentes;
- GitHub Template é mais adequado para iniciar novos projetos já padronizados;
- as duas modalidades podem coexistir com o plugin, atendendo públicos e cenários diferentes.
Instalação do usuário nesta terceira opção
O fluxo agora fica assim:
- para projetos existentes, instalar localmente a base do pacote com
pip install .ou, após publicação,pip install facin-ia, e executarfacin-ia init; - para projetos novos, marcar este repositório como template no GitHub e então criar o novo repositório a partir dele;
- em ambos os casos, abrir o projeto no VS Code e usar o agente
FACIN_IAconforme o perfil provisionado.
O que este repositório entrega hoje
- um modelo de avaliação de maturidade em seis dimensões de governança de IA;
- uma versão executiva para apresentação institucional;
- uma síntese institucional do trabalho e de seus fundamentos conceituais;
- uma especificação de planilha com cálculo automático de pontuação;
- uma customização reutilizável do GitHub Copilot;
- um plugin de agente para distribuição entre equipes;
- artefatos prontos em Markdown, HTML, PDF e XLSX para consulta e uso direto.
Leitura recomendada
- docs/FACIN_IA_Versao_Executiva.md: visão rápida para apresentação e alinhamento institucional.
- docs/FACIN_IA_Sintese.md: síntese do trabalho, dos conceitos-base e da aplicação prática com IA assistida.
- docs/FACIN_IA_Modelo_Avaliacao.md: modelo completo de avaliação, pesos, fórmulas e faixas de maturidade.
- docs/FACIN_IA_Customizacao_Copilot.md: documentação da customização reutilizável do FACIN_IA para GitHub Copilot.
- docs/FACIN_IA_Plugin_Agente.md: documentação do plugin de agente FACIN_IA e das formas de instalação.
- docs/FACIN_IA_Distribuicao_PyPI_Template.md: empacotamento inicial do FACIN_IA como pacote Python e preparação do repositório para GitHub Template.
- docs/FACIN_IA_Planilha_Avaliacao.md: especificação funcional da planilha de avaliação.
Estrutura principal do repositório
.github/agents/FACIN_IA.agent.md: definição do agente customizado FACIN_IA..github/skills/facin-ia/SKILL.md: skill portátil do método FACIN_IA..github/prompts/facin-ia-diagnostico.prompt.md: prompt reutilizável para diagnóstico baseado em evidências..github/plugin/marketplace.json: marketplace Git para distribuição do plugin FACIN_IA.plugins/facin-ia/: pacote do plugin FACIN_IA com agente, comando, skill e instruções de uso.- spec/FACIN_IA_Customizacao_Copilot.md: documentação-fonte da customização FACIN_IA para GitHub Copilot.
- spec/FACIN_IA_Plugin_Agente.md: documentação-fonte do plugin de agente FACIN_IA.
- spec/FACIN_IA_Distribuicao_PyPI_Template.md: documentação-fonte do empacotamento PyPI e da preparação do GitHub Template.
- spec/FACIN_IA_Modelo_Avaliacao.md: documentação-fonte do modelo de avaliação.
- spec/FACIN_IA_Planilha_Avaliacao.md: especificação funcional da planilha de avaliação.
- spec/FACIN_IA_Sintese.md: documentação-fonte da síntese institucional do trabalho.
- spec/FACIN_IA_Versao_Executiva.md: versão executiva em Markdown.
pyproject.toml: metadados do pacote Pythonfacin-ia.src/facin_ia/: pacote Python com CLI e motor de scaffolding para distribuição do FACIN_IA..github/workflows/publish-python-package.yml: workflow manual de build e publicação para TestPyPI ou PyPI.- TEMPLATE_SETUP.md: roteiro de parametrização para repositórios criados a partir do template.
- scripts/generate_artifacts.py: gerador dos artefatos Markdown, HTML, PDF e XLSX.
- errors/erro_weasyprint_pdf.txt: registro do erro inicial de geração de PDF com WeasyPrint no Windows.
- Diretrizes FACIN_IA.txt: diretrizes obrigatórias do projeto.
- FACIN_IA_Projeto.md: documento consolidado da elaboração do projeto.
Escopo metodológico
O modelo organiza a maturidade em seis dimensões obrigatórias:
- Estratégia e Governança de IA
- Dados e Infraestrutura
- Talento e Cultura
- Desenvolvimento e Operação de IA
- Ética, Transparência e Gestão de Risco
- Impacto Social e Valor
Cada dimensão é avaliada por indicadores com fórmula, evidência mínima, periodicidade e regra de leitura em cinco níveis de maturidade.
Contexto adotado
A parametrização foi ajustada para a PRODEMGE, considerando o contexto de empresa pública estadual de tecnologia que opera serviços digitais críticos, infraestrutura corporativa e plataformas de governo. O modelo pode ser recalibrado para outros órgãos, preservando a mesma estrutura metodológica.
Escala de maturidade
- Nível 1 - Inicial
- Nível 2 - Em Desenvolvimento
- Nível 3 - Otimizado
- Nível 4 - Consolidado
- Nível 5 - Estabelecido
Como regenerar os artefatos
O gerador está em scripts/generate_artifacts.py. Ele produz:
- cópias em Markdown dos arquivos em
spec/na pastadocs/; - HTML a partir dos arquivos em
spec/; - PDF a partir dos arquivos em
spec/; - planilha XLSX de avaliação automática em
docs/.
Dependências Python utilizadas no script:
- markdown
- openpyxl
- reportlab
Execução:
python scripts/generate_artifacts.py
Premissas de governança do projeto
- IA executa especificações governadas.
- Prompt, modelo, dado e decisão são artefatos rastreáveis.
- Observabilidade e segregação entre ideação e produção são obrigatórias.
- Casos de maior risco exigem avaliação ética e controles formais.
- Instalações, quando necessárias, devem ocorrer somente no ambiente figmm.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file facin_ia-0.1.0.tar.gz.
File metadata
- Download URL: facin_ia-0.1.0.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5079ee3265e8464e5fab57d1d4b78363dd9742c436d04b14245efe330c7bb7e
|
|
| MD5 |
1a98e19a78aa9bf1244b724902a7e99e
|
|
| BLAKE2b-256 |
72b1d1bc566bf10e4e016ea8c8955ca2e6201816411e0dee57c1040c782951bb
|
Provenance
The following attestation bundles were made for facin_ia-0.1.0.tar.gz:
Publisher:
publish-python-package.yml on gutpassos/FACIN_IA
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facin_ia-0.1.0.tar.gz -
Subject digest:
e5079ee3265e8464e5fab57d1d4b78363dd9742c436d04b14245efe330c7bb7e - Sigstore transparency entry: 1195687531
- Sigstore integration time:
-
Permalink:
gutpassos/FACIN_IA@e489b634a45a1dc9faa17ac78e4e83920c0f32ca -
Branch / Tag:
refs/heads/main - Owner: https://github.com/gutpassos
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python-package.yml@e489b634a45a1dc9faa17ac78e4e83920c0f32ca -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file facin_ia-0.1.0-py3-none-any.whl.
File metadata
- Download URL: facin_ia-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c9a6d3cb87cab6173249a3b1437a7b4d13e962a4994e9e892d74b8846672a87
|
|
| MD5 |
e1a78e709adaf03df7eea4fb16f2acaa
|
|
| BLAKE2b-256 |
6253f20ac69a2698de0817ab111a0c07d67017fc84c6f598a58567138fb66d40
|
Provenance
The following attestation bundles were made for facin_ia-0.1.0-py3-none-any.whl:
Publisher:
publish-python-package.yml on gutpassos/FACIN_IA
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facin_ia-0.1.0-py3-none-any.whl -
Subject digest:
1c9a6d3cb87cab6173249a3b1437a7b4d13e962a4994e9e892d74b8846672a87 - Sigstore transparency entry: 1195687535
- Sigstore integration time:
-
Permalink:
gutpassos/FACIN_IA@e489b634a45a1dc9faa17ac78e4e83920c0f32ca -
Branch / Tag:
refs/heads/main - Owner: https://github.com/gutpassos
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python-package.yml@e489b634a45a1dc9faa17ac78e4e83920c0f32ca -
Trigger Event:
workflow_dispatch
-
Statement type: