c2f-documentation
Skill5 starsChanged 2 months agoMITView on GitHub
LEIA ANTES de escrever, corrigir, migrar ou publicar documentação do Conn2Flow (\"faça a documentação de X\", \"rode a rotina de docs\"). Se não ler: a doc nasce do texto antigo e não do código, fora do contrato de frontmatter, sem par pt-br/en, e não chega ao site /docs/.
Files
Documentação do Conn2Flow: código → Markdown → site (c2f-documentation)
⚡ Gatilho Obrigatório
- TRIGGER: Pedido para documentar, corrigir ou migrar documentação (biblioteca, módulo, API, CLI, hook, guia); rodar a rotina periódica de docs; publicar as docs no site
/docs/; criar ou alterardocs.config.jsonde um projeto. - SKIP APENAS SE: Edição de artefatos SDD (
sdd/), README de repositório ou docblocks de código sem relação comai-workspace/<idioma>/docs/. - CONSEQUÊNCIA DE IGNORAR: Documentação defasada ou alucinada (escrita a partir do texto antigo), docs sem
verified_atinvisíveis ao ranking, tradução divergente, e páginas editadas no painel sobrescritas no próximo build.
Complementa a c2f-documentation-governance (princípio da autoridade do código). Esta skill é o procedimento.
1. Onde a documentação mora (fonte única)
- Fonte:
conn2flow/ai-workspace/<idioma>/docs/no repositório do Core. Idiomas:pt-breen. - Árvore:
guides/,concepts/,reference/{libraries,modules,api,cli,hooks}/,whats-new/e oindex.mdda raiz. - Espelhamento: pastas e nomes de arquivo são iguais nos dois idiomas. O caminho relativo define o par de tradução e a URL pública (
/docs/<caminho>/). - Legado: arquivos em MAIÚSCULAS na raiz de
docs/(e subpastas antigas comobibliotecas/,modulos/,manual/). Ao migrar um assunto, a doc nova nasce na árvore e o legado correspondente é removido na mesma passagem. - Contrato completo:
ai-workspace/pt-br/docs/guides/documentation.md, que é ele mesmo uma doc do sistema.
2. Frontmatter obrigatório
---
title: "Biblioteca modelo.php"
description: "Uma frase — índices, compartilhamento e llms.txt."
section: reference # guides | concepts | reference | whats-new (= pasta); home só no index.md raiz
order: 20 # opcional (padrão 100)
visibility: public # public (padrão) | restricted (reservado: o build não publica)
module: menus # opcional
sources: # obrigatório em reference/
- gestor/bibliotecas/modelo.php
verified_at: 5b4348ab # git rev-parse --short HEAD do Core no momento da conferência
---3. Procedimento por passagem (a rotina)
- Ranking:
php cli/c2f.php docs:audit(no Core). Pegue os N itens do topo.missing:significa que a doc não existe. - Esqueleto (só para biblioteca nova):
php cli/c2f.php docs:extract <lib> --create. Isso cria pt-br e en com o bloco de funções. - Leitura profunda do código, ANTES de qualquer texto antigo:
- Biblioteca: o arquivo inteiro, os chamadores (
grep -rn "funcao(" gestor), os testes emtests/. - Módulo:
<id>.php(switch de opções e AJAX),<id>.json(tabela, resources, hooks), JS,<id>.widget.php/.widget.js,resources/<idioma>/(pages, templates,ai_modes), migrations da tabela,hooks/api. - Sistema/CLI/API: o controlador ou comando e o fluxo de chamada real.
- Biblioteca: o arquivo inteiro, os chamadores (
- Escrever o comportamento real:
- caixa de letras;
- primeira ocorrência;
- padrões e defaults;
- o que acontece quando falta algo;
- riscos de segurança. Se o código contradiz o próprio docblock, a doc segue o código e aponta a divergência. Marque o legado (função sem chamadores, chamada a função inexistente). Use exemplos tirados de usos reais do core.
- Bilíngue na mesma passagem: escreva pt-br e en juntos. Nada de "traduzir depois".
- Fechar a doc:
- preencha
sourceseverified_at; - rode
php cli/c2f.php docs:extract --all; - rode de novo
php cli/c2f.php docs:auditaté o item sair do ranking (score 0).
- preencha
- Publicar (local):
php cli/c2f.php docs:build --project=conn2flow-site-local, depoisphp cli/c2f.php project:update-all conn2flow-site-local;- confira as páginas (HTTP 200,
c2f page:inspect ... --screenshot). - O deploy de produção é do operador.
- Registre no SDD do lote e atualize a memória de execução.
4. Escrita
- Callouts:
> [!NOTE],> [!TIP],> [!IMPORTANT],> [!WARNING],> [!CAUTION](primeira linha sozinha). - Links entre docs: relativos para o
.md(../modules/menus.md). Link quebrado aborta o build. - Links para o código: relativos à doc (
../../../../../gestor/bibliotecas/x.php#L10). O build converte para o GitHub. - Marcadores do Gestor (
@[[grupo#var]]@,<!-- widgets#... -->,<!-- item < -->) podem ser mostrados em código ou texto. O build neutraliza a arroba; não "corrija" isso na doc. - Não edite dentro de
<!-- c2f:extract:start -->…<!-- c2f:extract:end -->. Odocs:auditavisa quando uma função do código não é citada fora do bloco.
5. Publicação num projeto (docs:build)
- Configuração:
<gestor do projeto>/docs.config.jsondefine:languages,base_path,layout;article_template(templatetarget=publisher);menu(id + templatetarget=menus);publishers(seções → publisher,index_patheindex_widgetda página de entrada compublisher-index);repository/branch,site_urlelabelspor idioma.
- Requisito:
resources/project_tables_config.jsoncomsync_resourcesparapublisher,publisher_pages,publisher_indexemenus. - O que é gerado (ids
docsedocs-*, gerenciados pelo build, que nunca devem ser editados à mão nem no painel):pages/;publisher_pages/;menus/<menu>/;- as entradas em
pages.json,publisher-pages.jsonemenus.json; assets/docs/llms*.txt.
- O build é idempotente. Rodar duas vezes sem mudar o Markdown não altera arquivo.
- Referência de implementação:
conn2flow-site(REQ-057 / BATCH-050) e Corecli/src/Support/Docs/.
⛔ Proibições
- Documentar a partir de memória, do texto legado ou de outra doc sem abrir o código.
- Publicar só um idioma, ou deixar
verified_atvazio. - Editar páginas
docs*pelo painel ou direto emresources/do projeto (o próximo build sobrescreve). - Publicar informação sensível (hosts, IPs, credenciais, caminhos de VPS, tokens). Na dúvida,
visibility: restricted. - Deploy de produção pelo agente.
Como usar: termos literais da interface para RAG (BL-028)
Cada tela documentada recebe uma seção padronizada "Como usar" ("How to use" no par inglês). Confira os rótulos reais em resources/ e os handlers atuais antes de escrever. Descreva entrada/rota e permissão, campos obrigatórios/opcionais com seus nomes literais, sequência de botões com seus nomes literais, resultado esperado e recuperação de erro. Mantenha o par de idiomas alinhado e use os termos exibidos naquele idioma.
Não substitua nome visível por coluna SQL nem invente fluxo a partir de manual antigo. O assistente consulta essa seção via RAG: comportamento não documentado não pode ser prometido. Preserve referência técnica separadamente e confira o uso contra a tela real quando o fluxo mudar.
In this repository102 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- cli/CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- .cursor/rules/sdd.mdcCursor rule
- c2f-database-testingSkill
- c2f-gd-image-safetySkill
- c2f-json-resources-syncSkill
- c2f-mdd-indexing-and-handoffsSkill
- c2f-mysql-utf8-emoji-encodingSkill
- c2f-tailwind-css-architectureSkill
- c2f-tailwind-module-migrationSkill
- c2f-widget-developmentSkill
- c2f-agent-visual-inspectionSkill
- c2f-ai-featuresSkill
- c2f-architect-masterSkill
- c2f-database-operationsSkill
- c2f-database-testingSkill
- c2f-dev-scriptsSkill
- c2f-docker-environmentSkill
- c2f-documentation-governanceSkill
- c2f-environment-configurationSkill
- c2f-executor-agentSkill
- c2f-gd-image-safetySkill
- c2f-gestor-functionsSkill
- c2f-global-variablesSkill
- c2f-hooks-systemSkill
- c2f-html-css-pages-and-componentsSkill
- c2f-interface-v2-architectureSkill
- c2f-javascript-ajaxSkill
- c2f-json-resources-syncSkill
- c2f-mdd-indexing-and-handoffsSkill
- c2f-modelo-templatesSkill
- c2f-module-crud-scaffoldingSkill
- c2f-module-visual-assetsSkill
- c2f-multilingual-systemSkill
- c2f-mysql-utf8-emoji-encodingSkill
- c2f-payment-gatewaysSkill
- c2f-plugin-architectureSkill
- c2f-preview-modals-systemSkill
- c2f-project-pipeline-and-tasksSkill
- c2f-projects-systemSkill
- c2f-resources-systemSkill
- c2f-reviewer-agentSkill
- c2f-shell-and-windows-trapsSkill
- c2f-system-tasksSkill
- c2f-tailwind-css-architectureSkill
- c2f-tailwind-module-migrationSkill
- c2f-variables-systemSkill
- c2f-widget-developmentSkill
- continue-mdd-batchSkill
- mdd-memory-gardeningSkill
- mdd-workflowSkill
- project-validationSkill
- raise-spec-changeSkill
- review-current-batchSkill
- start-mdd-sliceSkill
- c2f-agent-visual-inspectionSkill
- c2f-ai-featuresSkill
- c2f-architect-masterSkill
- The first 60 shown.
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
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.

