{
    "tipo": "arvore-sa",
    "nome": "operador-manual-gc",
    "criadoEm": "2026-08-24T15:02:14Z",
    "atualizadoEm": "2026-08-24T15:02:21Z",
    "filhos": [
        {
            "nome": "INÍCIO — operador decide atualizar o sistema com GC do pp --sa",
            "filhos": [
                {
                    "nome": "Objetivo: concentrar pedido, contexto, itens impactados e execução LLM em um Grupo de Comentário rastreável",
                    "filhos": []
                },
                {
                    "nome": "Regra absoluta: trabalhar dentro do sistema atual: cd /var/www/html/sisc/<sistema>",
                    "filhos": []
                },
                {
                    "nome": "Não editar JSON de árvores manualmente; toda preparação do GC deve usar pp --sa",
                    "filhos": []
                },
                {
                    "nome": "Não usar prompt solto quando houver risco de alteração ampla; organizar pedido em --gc, --mm e --itens",
                    "filhos": []
                },
                {
                    "nome": "Lembrar: cada árvore aceita no máximo um GC ativo; limpe ou conclua o GC anterior antes de abrir outro",
                    "filhos": []
                },
                {
                    "nome": "Próximo: escolher árvore e escopo",
                    "filhos": []
                }
            ]
        },
        {
            "nome": "1 → ESCOLHER ÁRVORE, ESCOPO E ALVOS",
            "filhos": [
                {
                    "nome": "Identificar a árvore de trabalho: arvores/<arvore>.json",
                    "filhos": []
                },
                {
                    "nome": "Visualizar a árvore: pp --sa=<arvore>",
                    "filhos": []
                },
                {
                    "nome": "Procurar itens relacionados: pp --sa=<arvore> --proc=<termo>",
                    "filhos": []
                },
                {
                    "nome": "Listar IDs dos itens que devem receber a diretiva; anotar item principal e itens de referência",
                    "filhos": []
                },
                {
                    "nome": "Se houver arquivos relevantes, associar ou conferir referências --ra nos itens antes de chamar o prompt",
                    "filhos": []
                },
                {
                    "nome": "DECISÃO — existe item principal claro para receber o GC?",
                    "filhos": [
                        {
                            "nome": "SIM: seguir para criação do GC no item principal",
                            "filhos": []
                        },
                        {
                            "nome": "NÃO: criar um galho organizador via pp --sa=<arvore> --ag=<tema> --em=<pai> ou refinar escopo",
                            "filhos": []
                        }
                    ]
                }
            ]
        },
        {
            "nome": "2 → CRIAR O GC NO ITEM PRINCIPAL",
            "filhos": [
                {
                    "nome": "Comando base: pp --sa=<arvore> --gc=<nome-gc> --mm='<pedido objetivo>' --em=<id-principal> --itens=<ids-relacionados>",
                    "filhos": []
                },
                {
                    "nome": "Usar nome de GC curto e sem ambiguidade, por exemplo gc-publicacao-interna ou gc-corrigir-design",
                    "filhos": []
                },
                {
                    "nome": "A mensagem --mm deve conter objetivo, restrições, critérios de aceite e o que não deve ser alterado",
                    "filhos": []
                },
                {
                    "nome": "Em --itens, informar IDs de referência, moldes, dependências e áreas impactadas separados por vírgula",
                    "filhos": []
                },
                {
                    "nome": "Exemplo: pp --sa=siscore --gc=gc-public-agentes --mm='incluir public interno nos agentes 2,3,4 sem alterar pipeline central' --em=1.2 --itens=5.6,6.8",
                    "filhos": []
                },
                {
                    "nome": "Após criar, visualizar a árvore e conferir se o GC aparece no item certo",
                    "filhos": []
                },
                {
                    "nome": "Próximo: enriquecer contexto do GC",
                    "filhos": []
                }
            ]
        },
        {
            "nome": "3 → ENRIQUECER O GC COM MENSAGENS ADICIONAIS",
            "filhos": [
                {
                    "nome": "Adicionar detalhes ao mesmo GC: pp --sa=<arvore> --gc=<nome-gc> --mm='<nova instrução>'",
                    "filhos": []
                },
                {
                    "nome": "Usar mensagens separadas para: objetivo, restrições, arquivos/paths, critérios de aceite, dúvidas conhecidas",
                    "filhos": []
                },
                {
                    "nome": "Quando o escopo envolver múltiplos itens, também é possível aplicar --mm em lista: pp --sa=<arvore> --mm='<nota>' --em=<id1,id2> --gc=<nome-gc> --itens=<ids>",
                    "filhos": []
                },
                {
                    "nome": "Evitar mensagens vagas como 'melhore isso'; preferir comandos verificáveis",
                    "filhos": []
                },
                {
                    "nome": "Se a diretiva depender de arquivos, garantir --ra nos itens correspondentes antes do prompt",
                    "filhos": []
                },
                {
                    "nome": "DECISÃO — o GC está completo e auditável?",
                    "filhos": [
                        {
                            "nome": "SIM: seguir para revisão pré-prompt",
                            "filhos": []
                        },
                        {
                            "nome": "NÃO: continuar adicionando mensagens ou reorganizar itens da árvore",
                            "filhos": []
                        }
                    ]
                }
            ]
        },
        {
            "nome": "4 → REVISÃO PRÉ-PROMPT E SEGURANÇA",
            "filhos": [
                {
                    "nome": "Abrir a árvore completa: pp --sa=<arvore>",
                    "filhos": []
                },
                {
                    "nome": "Conferir: item principal, nome do GC, mensagens, itens relacionados e referências de arquivo",
                    "filhos": []
                },
                {
                    "nome": "Verificar estado Git antes da execução: git status --short",
                    "filhos": []
                },
                {
                    "nome": "Se houver mudanças não relacionadas, commitar ou isolar antes do --prompt",
                    "filhos": []
                },
                {
                    "nome": "Ler ajuda específica quando necessário: pp --sa --ajuda:gc",
                    "filhos": []
                },
                {
                    "nome": "DECISÃO — ambiente está limpo e pedido está seguro?",
                    "filhos": [
                        {
                            "nome": "SIM: executar --prompt",
                            "filhos": []
                        },
                        {
                            "nome": "NÃO: ajustar árvore/arquivos ou cancelar com pp --sa=<arvore> --lgc=<nome-gc>",
                            "filhos": []
                        }
                    ]
                }
            ]
        },
        {
            "nome": "5 → EXECUTAR O PROMPT DO GC",
            "filhos": [
                {
                    "nome": "Comando padrão: pp --sa=<arvore> --prompt=<nome-gc>",
                    "filhos": []
                },
                {
                    "nome": "Para comparação de contexto: pp --sa=<arvore> --prompt=<nome-gc> --rel",
                    "filhos": []
                },
                {
                    "nome": "O --prompt faz checkpoint GitHub antes, monta prompt determinístico do GC, chama --parallm e aciona agente-at",
                    "filhos": []
                },
                {
                    "nome": "O material de reversão fica em arvores/reversao-gc.json",
                    "filhos": []
                },
                {
                    "nome": "O agente-at pode registrar auditoria em tarefas/agente-at/; em sucesso mantém relatório e limpa temporários",
                    "filhos": []
                },
                {
                    "nome": "Durante a execução, não editar manualmente os mesmos arquivos",
                    "filhos": []
                },
                {
                    "nome": "Próximo: verificar resultado",
                    "filhos": []
                }
            ]
        },
        {
            "nome": "6 → VERIFICAR RESULTADO E ARQUIVOS ALTERADOS",
            "filhos": [
                {
                    "nome": "Conferir saída do comando e relatório: tarefas/agente-at/<execucao>/relatorio-execucao.json quando houver",
                    "filhos": []
                },
                {
                    "nome": "Verificar Git: git status --short",
                    "filhos": []
                },
                {
                    "nome": "Reabrir árvore alvo: pp --sa=<arvore>",
                    "filhos": []
                },
                {
                    "nome": "Abrir árvore de reversão: pp --sa=arvores/reversao-gc",
                    "filhos": []
                },
                {
                    "nome": "Conferir no checkpoint: arquivos commitados e arquivos alterados após o checkpoint que podem ser perdidos",
                    "filhos": []
                },
                {
                    "nome": "Executar validações específicas: testes, pp --divergencia-sistema ou comandos pertinentes",
                    "filhos": []
                },
                {
                    "nome": "DECISÃO — atualização ficou correta?",
                    "filhos": [
                        {
                            "nome": "SIM: seguir para fechamento do GC",
                            "filhos": []
                        },
                        {
                            "nome": "NÃO: decidir entre reverter ou abrir nova mensagem de correção no mesmo GC",
                            "filhos": []
                        }
                    ]
                }
            ]
        },
        {
            "nome": "7 → SE PRECISAR REVERTER",
            "filhos": [
                {
                    "nome": "Antes de reverter, revisar arvores/reversao-gc.json e confirmar arquivos que podem ser perdidos",
                    "filhos": []
                },
                {
                    "nome": "Comando de reversão: pp --sa=<arvore> --reverter=<nome-gc>",
                    "filhos": []
                },
                {
                    "nome": "A reversão usa o checkpoint registrado antes do --prompt",
                    "filhos": []
                },
                {
                    "nome": "Após reverter, verificar git status --short e reabrir a árvore alvo",
                    "filhos": []
                },
                {
                    "nome": "Se a falha foi de escopo, ajustar --mm no GC ou limpar e recriar GC menor",
                    "filhos": []
                },
                {
                    "nome": "DECISÃO — reversão resolveu?",
                    "filhos": [
                        {
                            "nome": "SIM: documentar motivo e seguir para fechamento",
                            "filhos": []
                        },
                        {
                            "nome": "NÃO: investigar manualmente antes de novo --prompt",
                            "filhos": []
                        }
                    ]
                }
            ]
        },
        {
            "nome": "8 → FECHAR OU CONTINUAR O GC",
            "filhos": [
                {
                    "nome": "Se aprovado, limpar o GC da árvore: pp --sa=<arvore> --lgc=<nome-gc>",
                    "filhos": []
                },
                {
                    "nome": "Se precisar de nova rodada, adicionar mensagem objetiva: pp --sa=<arvore> --gc=<nome-gc> --mm='<correção específica>'",
                    "filhos": []
                },
                {
                    "nome": "Rodar novo --prompt somente após revisar escopo e git status",
                    "filhos": []
                },
                {
                    "nome": "Registrar decisão humana em documentação do sistema ou item da árvore quando necessário",
                    "filhos": []
                },
                {
                    "nome": "Não apagar arvores/reversao-gc.json enquanto houver possibilidade de reversão",
                    "filhos": []
                },
                {
                    "nome": "Próximo: manutenção de histórico",
                    "filhos": []
                }
            ]
        },
        {
            "nome": "9 → MANUTENÇÃO DO HISTÓRICO DE REVERSÃO E TAREFAS",
            "filhos": [
                {
                    "nome": "Consultar checkpoints: pp --sa=arvores/reversao-gc",
                    "filhos": []
                },
                {
                    "nome": "Quando um checkpoint não for mais necessário, remover seu item: pp --sa=arvores/reversao-gc --dg=<id-checkpoint>",
                    "filhos": []
                },
                {
                    "nome": "Ao remover checkpoint da árvore reversao-gc, o --sa também limpa checkpoints legados análogos em tarefas/sa-checkpoints/ quando existirem",
                    "filhos": []
                },
                {
                    "nome": "Não apagar tarefas/agente-at/ sem política de retenção; ali ficam relatórios de auditoria de execução",
                    "filhos": []
                },
                {
                    "nome": "Sugestão operacional: manter os últimos checkpoints relevantes e limpar material antigo já validado",
                    "filhos": []
                },
                {
                    "nome": "FIM — atualização organizada, auditável e reversível concluída",
                    "filhos": []
                }
            ]
        },
        {
            "nome": "VARREDURA AUTOMÁTICA — assinaturas de comandos e arquivos relacionados a este manual",
            "filhos": [
                {
                    "nome": "Regra: esta seção é recriada a cada execução; se assinatura/alerta mudar, revisar o ramo correspondente antes de operar",
                    "filhos": []
                },
                {
                    "nome": "Critério: fonte .c mais nova que executável indica recompilação pendente; executável/fonte mais novo que ajuda indica ajuda possivelmente desatualizada",
                    "filhos": []
                },
                {
                    "nome": "atualizar-manual-gc — gera esta árvore manual e deve refletir mudanças do roteiro; flags-chave: --atualizar-manual-gc; fonte: ok size=23217 mtime=2026-08-22T11:23:26Z fnv=f2c8bd92689abb3f; executável/script: ok size=51600 mtime=2026-08-24T10:15:45Z fnv=8ab67b5bee03a3d6; ajuda: ok size=4497 mtime=2026-08-24T15:01:07Z fnv=b86af32e4b9187dd",
                    "filhos": []
                },
                {
                    "nome": "sa — base operacional de árvores, GCs, mensagens, prompts e reversão; flags-chave: --sa=<arvore> --gc= --mm= --itens= --prompt= --reverter=; fonte: ok size=5617 mtime=2026-08-22T13:38:02Z fnv=f7150f79cfcded8f; executável/script: ok size=16792 mtime=2026-08-24T10:15:30Z fnv=266b7b48dad2d8af; ajuda: ok size=39672 mtime=2026-08-22T13:38:18Z fnv=ec3e753196fdfe59",
                    "filhos": []
                },
                {
                    "nome": "sa-mapa — apoia visualização/mapeamento de árvores; flags-chave: --sa-mapa; fonte: ok size=48868 mtime=2026-08-24T14:57:41Z fnv=f503552bc026e489; executável/script: ok size=48720 mtime=2026-08-24T14:57:57Z fnv=52c1af65f4f20dec; ajuda: ok size=7318 mtime=2026-08-24T14:57:59Z fnv=be8c296bf2d9c413",
                    "filhos": []
                },
                {
                    "nome": "parallm — executa chamada LLM usada pelo prompt do GC; flags-chave: --parallm; fonte: ok size=106281 mtime=2026-08-22T11:45:48Z fnv=9ba8de8d874238b3; executável/script: ok size=74392 mtime=2026-08-24T10:17:31Z fnv=fe906a8ee3959a95; ajuda: ok size=7649 mtime=2026-08-24T15:01:08Z fnv=dca0cda6347cfd3e",
                    "filhos": []
                },
                {
                    "nome": "agente — roteia agente-at após prompt GC; flags-chave: --agente=agente-at; fonte: ok size=77876 mtime=2026-08-22T13:33:54Z fnv=99dfde8b37b9d37b; executável/script: ok size=61440 mtime=2026-08-24T10:15:35Z fnv=a7db3775ccd8e6a1; ajuda: ok size=5670 mtime=2026-08-24T15:01:09Z fnv=fd9b52822aeeff5b",
                    "filhos": []
                },
                {
                    "nome": "agente-at — executa manutenção/correção disparada pelo GC; flags-chave: --ler-mensagem; fonte: ausente; executável/script: ausente; ajuda: ok size=3168 mtime=2026-08-22T11:40:24Z fnv=3341ef0c7be23cbc",
                    "filhos": []
                },
                {
                    "nome": "push-github — cria checkpoint remoto antes de alterações amplas; flags-chave: --push-github; fonte: ok size=13644 mtime=2026-08-05T07:01:39Z fnv=5f108e331803011d; executável/script: ok size=21936 mtime=2026-08-24T10:03:36Z fnv=5d44615615c825ad; ajuda: ok size=4834 mtime=2026-08-12T09:32:48Z fnv=5b19936ad1793a3d",
                    "filhos": []
                },
                {
                    "nome": "listar-commits — consulta histórico/checkpoints para auditoria; flags-chave: --listar-commits; fonte: ok size=6626 mtime=2026-08-07T20:32:41Z fnv=9f0075bf44b62bed; executável/script: ok size=17288 mtime=2026-08-24T10:16:54Z fnv=66669b978b5bf23b; ajuda: ok size=3796 mtime=2026-08-12T09:32:48Z fnv=5f88849b5ee571ca",
                    "filhos": []
                },
                {
                    "nome": "atualizar-ajuda-comandos — sincroniza ajuda JSON quando comandos mudam; flags-chave: --atualizar-ajuda-comandos=<comando>; fonte: ok size=41519 mtime=2026-08-12T14:54:24Z fnv=4db064c23a812660; executável/script: ok size=44504 mtime=2026-08-24T10:15:37Z fnv=00ad598ef28565d6; ajuda: ok size=2181 mtime=2026-08-24T15:01:10Z fnv=35cecb8212196624",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: pp.c — ok size=23902 mtime=2026-08-12T14:59:16Z fnv=d2ef629cad768e9d",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: core/comandos/sa.c — ok size=5617 mtime=2026-08-22T13:38:02Z fnv=f7150f79cfcded8f",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: core/comandos/sa-mapa.c — ok size=48868 mtime=2026-08-24T14:57:41Z fnv=f503552bc026e489",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: core/comandos/parallm.c — ok size=106281 mtime=2026-08-22T11:45:48Z fnv=9ba8de8d874238b3",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: core/biblioteca-agentes-fixos/agente-at.json — ok size=4253 mtime=2026-08-22T11:17:31Z fnv=3bf8cb44f205111a",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: ajuda/sa.json — ok size=39672 mtime=2026-08-22T13:38:18Z fnv=ec3e753196fdfe59",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: ajuda/agente-at.json — ok size=3168 mtime=2026-08-22T11:40:24Z fnv=3341ef0c7be23cbc",
                    "filhos": []
                },
                {
                    "nome": "Arquivo relacionado: core/config/mapa-comandos.json — ok size=6640 mtime=2026-08-22T13:32:20Z fnv=bf51917007e9aa4b",
                    "filhos": []
                }
            ]
        },
        {
            "nome": "CÓDIGO-FONTE LIDO NESTA GERAÇÃO — manual GC derivado do estado atual dos comandos, ajudas e arquivos",
            "filhos": [
                {
                    "nome": "LEI FONTE-CÓDIGO: estes comandos só podem pesquisar arquivos integrantes do código de funcionamento do SISC: fontes C/H/PHP/scripts, comandos, ajudas JSON, specs JSON, agentes JSON, manifestos, formatos, catálogos, runtimes e configs operacionais. É proibido usar como fonte JSONs de contexto/entendimento/artefatos gerados, como arvores/operador-manual-*.json e arvores/reversao-gc.json.",
                    "filhos": []
                },
                {
                    "nome": "Garantia operacional: esta seção é produzida lendo apenas arquivos classificados pela lei como código-fonte/contrato/configuração operacional no momento da invocação; não é texto fixo do roteiro",
                    "filhos": []
                },
                {
                    "nome": "Código lido: atualizar-manual-gc — fonte/script lido: ok size=23217 mtime=2026-08-22T11:23:26Z fnv=f2c8bd92689abb3f; executável/script: ok size=51600 mtime=2026-08-24T10:15:45Z fnv=8ab67b5bee03a3d6; ajuda: ok size=4497 mtime=2026-08-24T15:01:07Z fnv=b86af32e4b9187dd; manifesto agente: ausente; flags no código/script: --atualizar-manual-gc, --sa, --ajuda:, --gc, --mm, --itens, --prompt, --ajuda, --help, --sa=, --ag=, --em=, --len, --gc=, --mm=, --itens=, --prompt=, --reverter=, --sa-mapa, --parallm, --agente=, --ler-mensagem, --push-github, --listar-commits, --atualizar-ajuda-comandos=, --proc=, --ra, --short, --lgc=, --rel, --divergencia-sistema, --dg=, --sa:; flags na ajuda: --atualizar-manual-gc, --ajuda:, --sa, --gc, --mm, --itens, --prompt, --ajuda, --help, --sa=, --ag=, --em=; funções detectadas: main, uso, mkdir_p, localizar_raiz_sisc, executar_sa, fnv1a_arquivo, iso_mtime, assinatura_path, adicionar_varredura_manual, adicionar_inspecao_codigo_fonte; caminhos literais:   Recria, do zero, a árvore sisc/arvores/operador-manual-gc.json com on,   Remove a árvore operador-manual-gc.json existente e recria o fluxograman,   A geração é direcionada para sisc/arvores, mesmo que o comando seja chamadon,   Lei fonte-código: usa como fonte apenas código/contratos/configs operacionais;n,   não usa árvores/mapas/manuais JSON gerados como fonte de pesquisa.n,   Saída: sisc/arvores/operador-manual-gc.jsonn,   pp --sa=arvores/operador-manual-gcn, /proc/self/exe, /dev/null, apoia visualização/mapeamento de árvores, executa manutenção/correção disparada pelo GC, consulta histórico/checkpoints para auditoria, pp.c, core/comandos/sa.c, core/comandos/sa-mapa.c, core/comandos/parallm.c, core/biblioteca-agentes-fixos/agente-at.json, ajuda/sa.json, ajuda/agente-at.json, core/config/mapa-comandos.json, %s/core/comandos/%s.c, %s/core/comandos/%s, %s/%s, %s/pp; ajuda.nome=atualizar-manual-gc; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "Código lido: sa — fonte/script lido: ok size=5617 mtime=2026-08-22T13:38:02Z fnv=f7150f79cfcded8f; executável/script: ok size=16792 mtime=2026-08-24T10:15:30Z fnv=266b7b48dad2d8af; ajuda: ok size=39672 mtime=2026-08-22T13:38:18Z fnv=ec3e753196fdfe59; manifesto agente: ausente; flags no código/script: --ctx-, --origem=, --max-itens=, --max-bytes=, --include-ra, --sem-ra, --formato=, --ajuda:, --ajuda=, --help:, --help=, --ajuda, --help, --ctx-fontes, --ctx-indice, --ctx-buscar=, --ctx-extrair=, --json, --ctx-item=, --sa=, --ctx-validar, --ctx-atualizar-indice, --sa; flags na ajuda: --sa, --ajuda:, --sa=, --mapa, --conta-llm=, --dg, --rel=, --rel, --prompt, --ajuda=, --ag, --status, --em, --em=, --eg, --cor, --atualizar-manual-funcional, --reverter=, --prompt=, --parallm, --ag=, --json, --legenda, --ajuda, --help, --proc=, --status=, --eg=, --dg=, --decepar-galho=, --podar, --de=, --para=, --reorganizar, --replace=, --ate=, --recolher=, --expandir=, --recolher, --expandir, --drel=, --vlr=, --vld=, --vlt=, --clt=, --cv=, --config-vin=, --dcv=, --vlr, --vld, --cv, --dcv, --gc=, --mm=, --itens=, --lgc, --lgc=, --push-github=, --gc, --mm, --itens, --reverter, --ra=, --dra, --dra=, --ra, --lproc, --sistema=, --atualizar, --exceto=, --max-prof=, --incluir-codigo, --incluir-; funções detectadas: main, arg_exato, arg_prefixo, resolver_dir, eh_ctx_arg, eh_ajuda_ctx, eh_ajuda_geral, imprimir_ajuda_ctx, executar_e_aguardar, exec_comando; caminhos literais: /proc/self/exe, n10) API de contexto para sistema/LLM [contexto ctx llm indice extrair validar]n,     <sistema>/arvores      = árvores SA do sistema alvon,     <sistema>/relspec      = relatórios SA derivados de specsn,     sisc/arvores           = contexto da ferramenta SISCn,   --ctx-buscar=<texto>          Busca/rankeia itens SA para consumo de máquinan,   --ctx-validar                 Valida árvores, relações, itens, ra e integridade; informa atualização, checksum RA e status validado/aprovadon,   --ctx-atualizar-indice        Grava cache .indice-contexto.json para consumo rápido do sisteman,   --max-itens=N --max-bytes=N   Limites para busca/extraçãon, %s/sa-ctx, %s/sa.bin; ajuda.nome=sa; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "Código lido: sa-mapa — fonte/script lido: ok size=48868 mtime=2026-08-24T14:57:41Z fnv=f503552bc026e489; executável/script: ok size=48720 mtime=2026-08-24T14:57:57Z fnv=52c1af65f4f20dec; ajuda: ok size=7318 mtime=2026-08-24T14:57:59Z fnv=be8c296bf2d9c413; manifesto agente: ausente; flags no código/script: --atualizar-manual-funcional, --sa, --exceto=, --sistema=, --fim, --ajuda, --listar-comandos, --max-prof=, --ag=, --em=, --ra=, --mapa, --atualizar, --help, --ajuda:, --sa-mapa, --recriar, --incluir-ocultos, --incluir-ignorados, --incluir-secretos, --incluir-codigo, --gc, --mm, --prompt, --rel, --ra, --dra, --json, --recolher, --expandir, --replace, --gc=, --mm=, --sa=, --prompt=, --incluir-conteudo; flags na ajuda: --atualizar-manual-funcional, --atualizar, --ajuda, --sa, --mapa, --help, --ajuda:, --sa-mapa, --recriar, --incluir-ocultos, --incluir-ignorados, --incluir-secretos, --incluir-codigo, --max-prof=, --exceto=, --sistema=, --gc, --mm, --prompt, --rel, --ra, --dra, --json, --recolher, --expandir, --replace, --gc=, --mm=, --em=, --sa=, --prompt=; funções detectadas: main, str_init, str_reserve, str_add, str_addn, str_addf, xstrdup, no_criar, no_add, no_free, eh_diretorio, eh_arquivo_regular, garantir_dir, termina_com_json, mkdir_p, garantir_dir_pai, base_name, raiz_sisc_por_executavel, pai_dir, mesmo_caminho, path_tem_prefixo_dir, eh_material_de_comando, eh_material_secreto, normalizar_nome, texto_compacto, ler_arquivo_todo, ler_amostra, json_extrair_string_simples, adicionar_campo_json_se_existir, mapa_existente_raiz_sisc, parece_texto, primeiras_linhas_compactas, extensao, tipo_por_ext, papel_dir, papel_arquivo, coletar_simbolos_linha, strstr, extrair_simbolos, formatar_tamanho, formatar_mtime, caminho_igual, ctx_carregar_ignore_unico, cmp_entrada; caminhos literais: .json, /proc/self/exe, %s/core/comandos, %s/ajuda, %s/core/config/mapa-comandos.json, %s/pp, %s/pp.c, %s/secretos, %s/core/biblioteca-secretos, %s/core/biblioteca-contas-llm, /secretos/, /contas-llm/, /secretos, /contas-llm, sem extensão/possível executável ou configuração, cabeçalho C/C++, JSON/configuração, núcleo/infraestrutura do sistema, conectores/integrações, formatos/modelos, segredos/credenciais, arquivo de build/compilação, pp.c, implementação de comando/módulo em C, dados/configuração persistida, texto/índice, %s/.ignorecontexto, .cache, %s/%s, peça funcional %s — função no sistema: %s; contrato/referência: %s, objetivo/contrato operacional, modo de leitura/mensagem, modo de envio/mensagem, agentes/, conectores/, web-api/, escuta/, pontos de entrada/símbolos detectados para entender funcionamento:%s, /dev/null, sisc/%s, %s/%s%s, %s/arvores/%s%s; ajuda.nome=sa-mapa; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "Código lido: parallm — fonte/script lido: ok size=106281 mtime=2026-08-22T11:45:48Z fnv=9ba8de8d874238b3; executável/script: ok size=74392 mtime=2026-08-24T10:17:31Z fnv=fe906a8ee3959a95; ajuda: ok size=7649 mtime=2026-08-24T15:01:08Z fnv=dca0cda6347cfd3e; manifesto agente: ausente; flags no código/script: --parallm=, --conta-llm=, --rel, --sem-contexto, --arvore, --nivel=, --verbose, --executar, --agente-at, --ctx-extrair=, --origem=, --max-bytes=, --max-itens=, --include-ra, --max-time, --data, --dados-arquivo=, --api=, --prioridade=, --once, --lote=, --timeout-ator=, --arvore=, --sem-heb, --heb=, --executar-agente-at, --ajuda, --help, --parallm, --ajuda:, --prompt, --conta-llm; flags na ajuda: --parallm, --ajuda:, --executar, --agente-at, --parallm=, --prompt, --arvore, --arvore=, --sem-contexto, --heb=, --sem-heb, --conta-llm=, --rel, --nivel=, --verbose; funções detectadas: main, json_extrair_string, json_extrair_string_ate, mapa_comandos_primeiro_filho_nome, mapa_comandos_sa_conta, json_extrair_int, ler_arquivo, normalizar_ascii, eh_stopword, tokenizar_palavras, liberar_tokens, similaridade_jaccard, liberar_chunks, eh_inicio_funcao_c, chunk_arquivo, extrair_descricao_projeto, raiz_sisc_por_executavel_contexto, ctx_carregar_ignore, ctx_deve_ignorar_n_modo, ctx_deve_ignorar_n, eh_arquivo, resolver_subdir_sistema, termina_com_str, nome_base_cmd, normalizar_nome_conta_llm, resolver_conta_llm_mapeada, init_mapa_acento, arvore_construir_contexto_unica, cmp_arvore_trecho, arvore_basename, arvore_nome_sem_ext, arvore_nome_casa, arvores_lista_contem, tokens_contem; caminhos literais: ../restricao.h, , \\). */ static char *json_extrair_string(const char *json, const char *chave) {     if (!json || !chave) return NULL;     /* Monta padrão: ,  */     size_t len_chave = strlen(chave);     char *padrao = malloc(len_chave + 4);     if (!padrao) return NULL;     sprintf(padrao, ,  trn,.;:()[]{}<>\"'`/\\|=+-_~!@#$%^&*?, %s/arvores/operador-manual-funcional.json,  */     const char *fim = strchr(pos, ', /proc/self/exe, %s/.ignorecontexto, %s/%s, .json, %s/config/mapa-comandos.json, %s/arvores/%s.json, sisc/, --- %s (score=%.2f, chunk %d/%d) ---n%sn, %s/arvores, sisc/arvores/%s, %s/arvores/%s, === Trechos relevantes de <sistema>/arvores e sisc/arvores (contexto dinamico atualizado) ===n, %s/core/comandos/sa-ctx, === Contexto SA do sistema alvo (<sistema>/arvores + evidencias ra/codigo) ===n%sn, /tmp/sisc_oauth_refresh_payload_XXXXXX, /tmp/sisc_oauth_refresh_resp_XXXXXX, /pp; ajuda.nome=parallm; ajuda.descricao=não extraída; fonte lida parcialmente 96KiB",
                    "filhos": []
                },
                {
                    "nome": "Código lido: agente — fonte/script lido: ok size=77876 mtime=2026-08-22T13:33:54Z fnv=99dfde8b37b9d37b; executável/script: ok size=61440 mtime=2026-08-24T10:15:35Z fnv=a7db3775ccd8e6a1; ajuda: ok size=5670 mtime=2026-08-24T15:01:09Z fnv=fd9b52822aeeff5b; manifesto agente: ausente; flags no código/script: --agente=, --ler-mensagem, --ajuda:, --agente, --ajuda, --help, --sa, --sincronizar-agente=, --ajuda=, --help:, --help=, --parallm, --sa=, --prompt=, --atualizar-manual-funcional, --divergencia-sistema, --api, --rel, --len, --sem-heb, --nivel=, --conta-llm=, --n, --ag=, --em=, --ctx-extrair=, --origem=, --max-itens=, --max-bytes=, --include-ra, --sa:, --ler-mensagem=; flags na ajuda: --agente, --ajuda, --agente=, --ajuda:, --ler-mensagem, --help, --sa, --sincronizar-agente=; funções detectadas: main, uso, arg_ajuda, uso_agente_at, uso_agente_especifico, eh_dir, termina_com, eh_arq, normalizar_nome, ler_arquivo, raiz_sisc_de_sistema, resolver_agente_json, agente_conta_llm_valida, agente_normalizar_conta_llm, json_str_intervalo, json_objeto_fim, agente_llm_arquivo_configuracao, agente_configurar_llm_do_manifesto, json_escape, agente_at_json_str, agente_at_substr, agente_at_limitar_texto, agente_at_nome_arvore_de_token, agente_at_extrair_nome_arvore, agente_at_resolver_path_arvore, agente_at_json_eh_arvore_sa, agente_at_ler_arvore_referenciada, agente_at_extrair_objeto_json, agente_at_mkdir_p, agente_at_parent_mkdir, agente_at_caminho_seguro, agente_at_copiar_arquivo, agstr_init; caminhos literais: ../restricao.h,   para analisar conectores e gerar árvore SA em relspec/.n,   Agentes consultores analisam o conector alvo e constroem relatório via pp --sa em relspec/.n,   Manifesto agente-at: agentes/agente-at.json local ou fallback em core/biblioteca-agentes-fixos/.n,   Manifesto consultor: agentes/<agente>.json criado por pp --sincronizar-agente=<agente>.n,   agente-at              Executor técnico por mensagem do parallm/espacon,   pp --agente=agente-at --ler-mensagem espaco/processando/mensagem.jsonn,   atualiza os mapas SA, gera divergencias e registra relatorio em tarefas/agente-at/.n,   --ler-mensagem <arquivo>       Mensagem agente-at.executar entregue pelo espaco/parallmn,   Obrigatorio: agentes/agente-at.json ou fallback na biblioteca fixan,   Obrigatorio: conta LLM configurada/mapeada quando a execução precisar gerar planon, agentes/, .json, %s/agentes/%s.json, %s/%s; ajuda.nome=agente; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "Código lido: agente-at — fonte/script lido: ausente; executável/script: ausente; ajuda: ok size=3168 mtime=2026-08-22T11:40:24Z fnv=3341ef0c7be23cbc; manifesto agente: ok size=4253 mtime=2026-08-22T11:17:31Z fnv=3bf8cb44f205111a; flags no código/script: nenhuma flag -- detectada no trecho lido; flags na ajuda: --agente=, --ler-mensagem, --ajuda:, --parallm, --atualizar-manual-funcional, --divergencia-sistema, --ajuda, --help, --sa=, --prompt=, --rel; funções detectadas: funções não extraídas do trecho lido; caminhos literais: nenhum caminho literal relevante detectado; ajuda.nome=agente-at; ajuda.descricao=não extraída; /var/www/html/sisc/core/biblioteca-agentes-fixos/agente-at.json — ok size=4253 mtime=2026-08-22T11:17:31Z fnv=3bf8cb44f205111a; nome=agente-at; titulo=Agente AT — Executor Técnico Autônomo; descricao/objetivo=Agente fixo global que recebe contexto do pp --parallm via espaço SISC e executa alterações por bloco nativo em core/comandos/agente.c.",
                    "filhos": []
                },
                {
                    "nome": "Código lido: push-github — fonte/script lido: ok size=13644 mtime=2026-08-05T07:01:39Z fnv=5f108e331803011d; executável/script: ok size=21936 mtime=2026-08-24T10:03:36Z fnv=5d44615615c825ad; ajuda: ok size=4834 mtime=2026-08-12T09:32:48Z fnv=5b19936ad1793a3d; manifesto agente: ausente; flags no código/script: --emitir-ssh, --commit=, --push-github=, --push-github, --ajuda:, --ajuda, --help, --commit, --verify, --cached, --quiet, --exit-code, --allow-empty; flags na ajuda: --push-github=, --emitir-ssh, --commit=, --push-github, --ajuda:, --ajuda, --help, --commit; funções detectadas: main, uso, validar_conta, raiz_execucao, garantir_dir, juntar_path, juntar_sufixo, existe_path, eh_diretorio, existe_git_na_raiz, run_cmd, ler_arquivo, montar_caminhos_chave, emitir_pub_de_priv, garantir_chave_ssh, basename_cwd; caminhos literais:   --emitir-ssh                   Apenas gera/exibe chave SSH públican,     pp --push-github=costarrear --emitir-ssh  # apenas gera/exibe chave SSHn,   secretos/, adiciona origin, roda git add -A, git commit e git push.n, /dev/null, :(exclude)siscore/secretos, %s@users.noreply.github.com, git@github.com:%s/%s.git; ajuda.nome=push-github; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "Código lido: listar-commits — fonte/script lido: ok size=6626 mtime=2026-08-07T20:32:41Z fnv=9f0075bf44b62bed; executável/script: ok size=17288 mtime=2026-08-24T10:16:54Z fnv=66669b978b5bf23b; ajuda: ok size=3796 mtime=2026-08-12T09:32:48Z fnv=5f88849b5ee571ca; manifesto agente: ausente; flags no código/script: --listar-commits, --ajuda:, --ajuda, --help, --is-inside-work-tree, --count, --no-pager, --date=, --pretty=; flags na ajuda: --listar-commits, --ajuda:, --ajuda, --help; funções detectadas: main, uso, ajuda_arg, caminho_sistema_atual, run_wait_silencioso, run_capture_silencioso, parse_long_trim; caminhos literais: ../restricao.h, /dev/null; ajuda.nome=listar-commits; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "Código lido: atualizar-ajuda-comandos — fonte/script lido: ok size=41519 mtime=2026-08-12T14:54:24Z fnv=4db064c23a812660; executável/script: ok size=44504 mtime=2026-08-24T10:15:37Z fnv=00ad598ef28565d6; ajuda: ok size=2181 mtime=2026-08-24T15:01:10Z fnv=35cecb8212196624; manifesto agente: ausente; flags no código/script: --sa, --ajuda, --help, --sa=, --ag=, --em=, --atualizar-ajuda-comandos, --atualizar-ajuda-comandos=, --comando=, --alvo=; flags na ajuda: --atualizar-ajuda-comandos, --comando=, --ajuda, --atualizar-ajuda-comandos=; funções detectadas: main, trim_dup, starts_ci, xstrdup, no_novo, no_add, no_free, no_ensure_filho, lista_add, lista_free, ler_arquivo, arquivo_mtime, shell_quote, executar_comando_capturando, compilar_se_fonte_mais_nova, remover_ansi, linha_secao_numerada, texto_parece_ajuda, arvore_bruta_de_texto_ajuda, pular_ws, consumir, sb_add, parse_string, skip_value, parse_node, parse_array_nodes, skip_object, skip_array, parse_json_arvore, extrair_string_chave, ascii_ci_eq_n, leading_spaces, remover_prefixo_numerico, remover_marcadores_numericos_inline, limpar_item, limpar_titulo_topo, is_flag_line, is_cmd_line, no_anexar_texto, termina_com_incompleto, comeca_com_continuacao, comeca_com_conector_continuacao, no_clone; caminhos literais: %s/core/comandos, make -C %s %s >/dev/null 2>&1, .json, .php, ./pp , %s/core/comandos/%s.c, %s/core/comandos/%s, atualizar-ajuda-comandos: %s.c e mais recente, mas o executavel nao foi recompilado; mantido conteudo atualn, /dev/null, %s/pp,   Padroniza ajuda/*.json para que a estrutura seja hierarquica por assunto.,   Sem valor, atualiza todos os comandos e agentes. Com valor, atualiza só ajuda/<comando>.json.,   Se core/comandos/<comando>.c estiver mais recente que ajuda/<comando>.json,,   Quando nao houver .c correspondente, usa a data do executavel como referencia., /proc/self/exe, %s/ajuda, atualizar-ajuda-comandos: nome de comando/agente invalido: %sn, %s/%s.json, %s/%s; ajuda.nome=atualizar-ajuda-comandos; ajuda.descricao=não extraída",
                    "filhos": []
                },
                {
                    "nome": "pp.c — ok size=23902 mtime=2026-08-12T14:59:16Z fnv=d2ef629cad768e9d; flags=--criar-conta-llm, --ajuda, --help, --ajuda=, --ajuda:, --help=, --help:, --proc=, --ag, --dry-run, --sa=, --sa, --conta-llm=, --agente=; funções=main, ajuda_arg_exato, ajuda_arg_filtro, ajuda_arg_qualquer, proc_arg_filtro, sa_ajuda_arg_permitido, flag_delim, flag_inicio_delim, normalizar_filtro_flag, texto_contem_flag, ascii_lower_char, normalizar_filtro_grupo, texto_contem_ci, bloco_titulo_contem_grupo, bloco_contem_flag, filtrar_ajuda_por_flag, executar_com_ajuda_filtrada, comando_somente_dados_cwd, validar_diretorio_sistema, ler_arquivo_limitado, json_extrair_string_simples, json_extrair_string_ate, mapa_comandos_primeiro_filho_nome; caminhos=pp: comando '%s' não encontrado em '%s/core/comandos/'n, .json, %s/config/mapa-comandos.json, %s/core/config/mapa-comandos.json, %s/ajuda/%s.json, pp: nao foi possivel resolver sisc/ajuda para '%s'n, %s/pp, --sa=%s/ajuda/%s.json, /proc/self/exe, pp: readlink /proc/self/exe, %s/core/comandos/%s",
                    "filhos": []
                },
                {
                    "nome": "core/comandos/sa.c — ok size=5617 mtime=2026-08-22T13:38:02Z fnv=f7150f79cfcded8f; flags=--ctx-, --origem=, --max-itens=, --max-bytes=, --include-ra, --sem-ra, --formato=, --ajuda:, --ajuda=, --help:, --help=, --ajuda, --help, --ctx-fontes, --ctx-indice, --ctx-buscar=, --ctx-extrair=, --json, --ctx-item=, --sa=, --ctx-validar, --ctx-atualizar-indice, --sa; funções=main, arg_exato, arg_prefixo, resolver_dir, eh_ctx_arg, eh_ajuda_ctx, eh_ajuda_geral, imprimir_ajuda_ctx, executar_e_aguardar, exec_comando; caminhos=/proc/self/exe, n10) API de contexto para sistema/LLM [contexto ctx llm indice extrair validar]n,     <sistema>/arvores      = árvores SA do sistema alvon,     <sistema>/relspec      = relatórios SA derivados de specsn,     sisc/arvores           = contexto da ferramenta SISCn,   --ctx-buscar=<texto>          Busca/rankeia itens SA para consumo de máquinan,   --ctx-atualizar-indice        Grava cache .indice-contexto.json para consumo rápido do sisteman, %s/sa-ctx, %s/sa.bin",
                    "filhos": []
                },
                {
                    "nome": "core/comandos/sa-mapa.c — ok size=48868 mtime=2026-08-24T14:57:41Z fnv=f503552bc026e489; flags=--atualizar-manual-funcional, --sa, --exceto=, --sistema=, --fim, --ajuda, --listar-comandos, --max-prof=, --ag=, --em=, --ra=, --mapa, --atualizar, --help, --ajuda:, --sa-mapa, --recriar, --incluir-ocultos, --incluir-ignorados, --incluir-secretos, --incluir-codigo, --gc, --mm, --prompt, --rel, --ra, --dra, --json, --recolher, --expandir, --replace, --gc=, --mm=, --sa=, --prompt=, --incluir-conteudo; funções=main, str_init, str_reserve, str_add, str_addn, str_addf, xstrdup, no_criar, no_add, no_free, eh_diretorio, eh_arquivo_regular, garantir_dir, termina_com_json, mkdir_p, garantir_dir_pai, base_name, raiz_sisc_por_executavel, pai_dir, mesmo_caminho, path_tem_prefixo_dir, eh_material_de_comando, eh_material_secreto, normalizar_nome, texto_compacto, ler_arquivo_todo, ler_amostra, json_extrair_string_simples, adicionar_campo_json_se_existir, mapa_existente_raiz_sisc, parece_texto, extensao, strstr; caminhos=.json, /proc/self/exe, %s/core/comandos, %s/ajuda, %s/core/config/mapa-comandos.json, %s/pp, %s/pp.c, %s/secretos, %s/core/biblioteca-secretos, %s/core/biblioteca-contas-llm, /secretos/, /contas-llm/, /secretos, /contas-llm, sem extensão/possível executável ou configuração, cabeçalho C/C++, JSON/configuração, núcleo/infraestrutura do sistema, conectores/integrações, ",
                    "filhos": []
                },
                {
                    "nome": "core/comandos/parallm.c — ok size=106281 mtime=2026-08-22T11:45:48Z fnv=9ba8de8d874238b3; flags=--parallm=, --conta-llm=, --rel, --sem-contexto, --arvore, --nivel=, --verbose, --executar, --agente-at, --ctx-extrair=, --origem=, --max-bytes=; funções=json_extrair_string, json_extrair_string_ate, mapa_comandos_primeiro_filho_nome, mapa_comandos_sa_conta, json_extrair_int, ler_arquivo, normalizar_ascii, eh_stopword, tokenizar_palavras, liberar_tokens, similaridade_jaccard, liberar_chunks, eh_inicio_funcao_c, chunk_arquivo, extrair_descricao_projeto, raiz_sisc_por_executavel_contexto, ctx_carregar_ignore, ctx_deve_ignorar_n_modo, ctx_deve_ignorar_n, eh_arquivo, resolver_subdir_sistema, termina_com_str, nome_base_cmd, normalizar_nome_conta_llm; caminhos=../restricao.h, , \\). */ static char *json_extrair_string(const char *json, const char *chave) {     if (!json || !chave) return NULL;     /* Monta padrão: ,  */     size_t len_chave = strlen(chave);     char *padrao = malloc(len_chave + 4);     if (!padrao) return NULL;     sprintf(padrao, ,  trn,.;:()[]{}<>\"'`/\\|=+-_~!@#$%^&*?, %s/arvores/operador-manual-funcional.json,  */     const char *fim = strchr(pos, ', /proc/self/exe, %s/.ignorecontexto, %s/%s, .json, %s/config/mapa-comandos.json; trecho lido 48KiB",
                    "filhos": []
                },
                {
                    "nome": "/var/www/html/sisc/core/biblioteca-agentes-fixos/agente-at.json — ok size=4253 mtime=2026-08-22T11:17:31Z fnv=3bf8cb44f205111a; nome=agente-at; titulo=Agente AT — Executor Técnico Autônomo; descricao/objetivo=Agente fixo global que recebe contexto do pp --parallm via espaço SISC e executa alterações por bloco nativo em core/comandos/agente.c.",
                    "filhos": []
                },
                {
                    "nome": "/var/www/html/sisc/ajuda/sa.json — ok size=39672 mtime=2026-08-22T13:38:18Z fnv=ec3e753196fdfe59; nome=sa; titulo=não extraído; descricao/objetivo=não extraído",
                    "filhos": []
                },
                {
                    "nome": "/var/www/html/sisc/ajuda/agente-at.json — ok size=3168 mtime=2026-08-22T11:40:24Z fnv=3341ef0c7be23cbc; nome=agente-at; titulo=não extraído; descricao/objetivo=não extraído",
                    "filhos": []
                },
                {
                    "nome": "/var/www/html/sisc/core/config/mapa-comandos.json — ok size=6640 mtime=2026-08-22T13:32:20Z fnv=bf51917007e9aa4b; nome=mapa-comandos; titulo=não extraído; descricao/objetivo=não extraído",
                    "filhos": []
                }
            ]
        }
    ]
}
