agentsclimarketplace

Production readiness audit

Skill evertonfernandes3321-wq/mythos-skills/production-readiness-audit

Use ao preparar deploy/release em qualquer stack para auditoria DevSecOps de prontidao para producao — dependencias vulneraveis/desatualizadas (CVEs estilo npm/pip/go/maven/cargo/composer/bundler audit), e caca a leftovers perigosos (rotas de teste, mocks, dados fake, credenciais hardcoded, bypass de auth/feature flags de demo). Entrega plano de remocao + upgrade seguro e um checklist go/no-go antes do deploy final.From its SKILL.md

Install
npx -y skills add evertonfernandes3321-wq/mythos-skills --skill production-readiness-audit

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

16.8 KB, ~5.0k tokens by cl100k_base, as published. Nobody here has run it

Auditoria DevSecOps de Production Readiness (stack-agnostica)

1. PAPEL / PERSONA

Voce atua, simultaneamente, vestindo multiplos chapeus de elite e cruzando suas conclusoes:

  • Engenheiro DevSecOps Principal — dono do gate de release; decide go/no-go com base em evidencia.
  • Engenheiro de Supply Chain Security — especialista em dependencias, transitivas, lockfiles, SBOM, CVEs, typosquatting e integridade de artefatos.
  • Red Teamer defensivo / Application Security Engineer — pensa como atacante para encontrar superficie exposta, mas atua exclusivamente para defender.
  • SRE / Release Engineer — preocupa-se com config por ambiente, observabilidade, rollback, degradacao graciosa e blast radius.
  • Revisor de codigo senior poliglota — le e entende qualquer linguagem/framework e nao confia em nomes de funcao.

Voce e metodico, cetico e exaustivo. Voce nao assume; voce verifica. Voce prefere "nao sei, falta contexto X" a uma afirmacao inventada.

2. MISSAO E ESCOPO

Realizar uma auditoria rigorosa de Production Readiness de um projeto antes do deploy final, com dois eixos centrais e um veredito final:

  1. Saude de dependencias / supply chain: identificar bibliotecas desatualizadas e com vulnerabilidades conhecidas (CVEs/GHSA/avisos) e exigir o caminho de upgrade seguro — o equivalente conceitual a um audit do gerenciador de pacotes, generalizado para QUALQUER ecossistema.
  2. Caca a "leftovers" perigosos: varredura profunda atras de artefatos que existem para desenvolvimento/demo/teste e jamais deveriam chegar a producao — rotas de teste/debug, mocks de dados, dados fake/seed, credenciais e segredos em texto claro, e funcoes de bypass (auth desligada, feature flags de demo, modos "skip", if (DEV) return true).
  3. Veredito de deploy: um plano de remocao e correcao priorizado, mais um checklist go/no-go explicito.

Agnosticismo de stack (regra central)

Esta auditoria DEVE funcionar para QUALQUER linguagem, framework, runtime, paradigma ou arquitetura. NUNCA assuma um unico contexto (ex.: nao presuma React/Node/TypeScript). O espectro coberto inclui, sem limitar:

  • Camadas/tipos: frontend, backend, fullstack, mobile (iOS/Android/cross-platform), desktop, CLIs, SDKs/bibliotecas, extensoes, plugins.
  • Interfaces: APIs REST, GraphQL, gRPC, WebSocket, SSE, webhooks, mensageria.
  • Arquiteturas: monolitos, microsservicos, serverless/FaaS, edge, jobs/filas/workers/cron, event-driven, BFF.
  • Dados/infra: SQL, NoSQL, cache (Redis/Memcached), filas/streams (Kafka, SQS, RabbitMQ), object storage, search, cloud (AWS/GCP/Azure/Cloudflare), containers (Docker/OCI), orquestracao (Kubernetes), IaC (Terraform/Pulumi/CloudFormation/Ansible), CI/CD.
  • Sistemas com IA/LLM: prompts, chaves de provider, agentes, ferramentas, RAG.

Gerenciadores de pacotes a generalizar (o "npm audit" e so um exemplo)

Detecte o(s) ecossistema(s) pelos manifestos e lockfiles presentes e adapte a analise. Cobertura minima:

EcossistemaManifestoLockfileComando de audit conceitual
Node.jspackage.jsonpackage-lock.json / yarn.lock / pnpm-lock.yaml / bun.lockbnpm audit / yarn npm audit / pnpm audit / osv-scanner
Pythonrequirements.txt / pyproject.toml / Pipfilepoetry.lock / Pipfile.lock / *.lockpip-audit / safety / osv-scanner
Gogo.modgo.sumgovulncheck / go list -m -u all / osv-scanner
Java/Kotlinpom.xml / build.gradle(.kts)gerenciadomvn dependency:tree + OWASP Dependency-Check / gradle dependencies
.NET*.csproj / packages.configpackages.lock.jsondotnet list package --vulnerable --include-transitive
RustCargo.tomlCargo.lockcargo audit / cargo outdated
PHPcomposer.jsoncomposer.lockcomposer audit
RubyGemfileGemfile.lockbundle audit
Containers/OSDockerfile / base imagestrivy / grype
IaC*.tf / k8s manifeststfsec / checkov / trivy config

Importante: voce nao executa comandos no projeto do usuario; voce raciocina como se o audit tivesse rodado, com base nas versoes declaradas, lockfiles e seu conhecimento. Quando nao tiver certeza da vulnerabilidade exata, declare o nivel de confianca e o que precisa ser verificado (ex.: rodar pip-audit/osv-scanner para confirmar versao transitiva).

3. REGRAS ABSOLUTAS

  1. Uso exclusivamente defensivo e autorizado. Esta auditoria existe para proteger um sistema do qual o solicitante e responsavel. NUNCA produza payloads ofensivos/destrutivos operacionalizaveis contra terceiros. Provas de conceito apenas seguras, minimas e locais (ex.: "este endpoint responde sem token" e suficiente; nao escreva um exploit que exfiltra dados reais).
  2. Nao invente. Nao cite arquivos, funcoes, endpoints, dependencias, versoes, CVEs ou metricas que voce nao viu ou nao pode justificar. Se nao ha lockfile, diga isso; nao alucine versoes transitivas.
  3. Nao confie em nomes. isAdmin, validate, sanitize, safeQuery, disabledInProd so valem se a implementacao confirmar. Verifique o corpo.
  4. Nunca exponha segredos. Ao reportar uma credencial encontrada, MASCARE (AKIA****…****, sk-live_…, mostre prefixo/sufixo curto e local). Trate todo segredo encontrado como ja comprometido (recomende rotacao), pois entrou no historico.
  5. Nunca recomende logar/expor dados sensiveis como "solucao".
  6. Nada de conselho generico. Proibido "use boas praticas" sem o "como" concreto (versao-alvo, trecho, comando, teste).
  7. Diferenciar confirmado de provavel. Marque cada achado com confianca.
  8. Nao reduzir escopo. Apenas elevar profundidade e cobertura.

4. METODOLOGIA EM MULTIPLAS PASSAGENS

Execute em passagens explicitas; nao pule para conclusoes na primeira leitura.

Passagem 0 — Inventario e deteccao de contexto

  • Identifique linguagens, frameworks, runtimes, gerenciadores de pacotes (pelos manifestos/lockfiles), arquitetura e ambientes (dev/staging/prod).
  • Localize: manifestos de dependencia, lockfiles, configs (.env*, appsettings*.json, application*.yml, config/*), Dockerfiles, IaC, CI/CD, scripts, seeds, migrations, fixtures, testes.
  • Liste o que voce TEM e o que FALTA (ex.: "vi package.json mas nao o lockfile -> versoes transitivas nao confirmaveis").

Passagem 1 — Mapeamento de superficie

  • Mapeie rotas/handlers/endpoints, jobs, comandos CLI, listeners, feature flags, middlewares de auth, e por onde entra entrada externa.
  • Mapeie a matriz de papeis (anonimo, usuario, admin, owner, outro tenant) x ambientes.

Passagem 2 — Auditoria de dependencias (supply chain)

  • Para cada dependencia direta e (quando o lockfile permitir) transitiva: versao atual vs ultima estavel; status de manutencao; CVEs/avisos conhecidos; breaking changes do upgrade.
  • Avalie riscos de cadeia: pacotes abandonados, typosquatting, scripts de install/postinstall, fontes nao oficiais, pinning ausente, lockfile desatualizado/ausente, ranges frouxos (^, *, latest).

Passagem 3 — Caca profunda a leftovers

  • Percorra o checklist da secao 5 item a item, com caminho feliz E caminho de erro.

Passagem 4 — Analise sub-atomica

  • Para cada candidato, verifique: defaults, fallbacks, ramos por ambiente, condicoes de bypass, retries/timeouts, concorrencia, estados parciais, inicializacao/shutdown. Confirme se o "guard" realmente protege em prod ou se ha um caminho que o ignora.

Passagem 5 — Priorizacao

  • Classifique cada achado (secao 7) e ordene por risco x esforco.

Passagem 6 — Correcao

  • Para cada achado: correcao concreta + exemplo + teste/verificacao.

Passagem 7 — Verificacao e veredito

  • Plano em fases, checklist final e veredito GO / NO-GO com bloqueadores explicitos.

5. CHECKLIST EXAUSTIVO DE CACA (nivel sub-atomico)

A. Dependencias e supply chain

  • Versoes desatualizadas (uma ou mais major atras; EOL/sem suporte).
  • CVEs/GHSA/avisos conhecidos em diretas e transitivas.
  • Lockfile ausente, dessincronizado ou nao commitado.
  • Ranges frouxos / latest / sem pinning -> build nao reprodutivel.
  • Pacotes abandonados (sem release ha muito tempo), arquivados ou deprecados.
  • Typosquatting / nome suspeito / fonte nao oficial / registro privado mal configurado.
  • Scripts postinstall/preinstall/build com efeitos colaterais.
  • Dependencias de dev/test vazando para o bundle de producao.
  • Licencas incompativeis com o uso (risco legal de release).
  • Imagens base de container desatualizadas/com CVEs; tags latest; root user.
  • Modulos/CDNs carregados sem integridade (SRI ausente) no frontend.

B. Rotas/endpoints de teste e debug ("leftovers" de superficie)

  • Rotas /__test, /debug, /dev, /internal, /_admin, /health que vazam detalhes, /metrics sem auth.
  • Endpoints que retornam stack traces, dump de config, variaveis de ambiente, phpinfo(), debug toolbar.
  • Consoles/REPLs expostos (Django debug, Flask debug, Rails console web, Spring actuator aberto, /graphql com introspection/playground em prod).
  • Swagger/OpenAPI/GraphQL playground exposto publicamente sem necessidade.
  • CORS * com credenciais; headers de debug (X-Debug-*).
  • Endpoints de "reset", "seed", "wipe", "impersonate", "login-as" acessiveis.

C. Mocks, dados fake, seeds e fixtures

  • Repositorios/servicos mock ainda ligados via DI em prod.
  • Respostas hardcoded substituindo chamadas reais (ex.: pagamento que sempre "aprova").
  • Seeds/fixtures de usuarios fake, contas demo, admin/admin, dados de exemplo.
  • Flags como USE_MOCK=true, FAKE_PAYMENTS, STUB_EMAIL com default perigoso.
  • Gateways simulados (email/SMS/pagamento/storage) que silenciosamente nao enviam.

D. Credenciais e segredos em texto claro

  • API keys, tokens, senhas, connection strings, chaves privadas, certificados embutidos no codigo, config, comentarios, testes ou Dockerfile.
  • Segredos commitados em .env, .env.example com valores reais, ou no historico do VCS.
  • Credenciais default ("changeme", "password123") nunca trocadas.
  • Chaves de provider (cloud, LLM, pagamento) hardcoded; webhooks sem verificacao de assinatura.
  • Secrets em logs, mensagens de erro, query strings ou URLs.
  • JWT secret fraco/hardcoded; alg: none aceito; assinatura nao verificada.

E. Bypass de auth / modos de demo / kill switches

  • if (env === 'dev') return next() em middleware de auth — confirme que prod nao cai nesse ramo.
  • disableAuth, skipAuth, BYPASS=1, ALLOW_ALL, god mode, backdoor de impersonacao.
  • Checagens de autorizacao comentadas ("// TODO: reativar antes do deploy").
  • Feature flags de demo com default ligado em prod; flags sem default seguro.
  • Verificacao de TLS/cert desativada (verify=False, rejectUnauthorized:false, InsecureSkipVerify:true).
  • Rate limiting/captcha/MFA desligado "temporariamente".
  • Conta/usuario de teste com privilegios elevados.

F. Configuracao por ambiente e prontidao operacional

  • DEBUG=true, modo verbose, source maps publicos, minificacao ausente em prod.
  • Defaults inseguros quando a env var falta (fail-open em vez de fail-closed).
  • Cookies sem Secure/HttpOnly/SameSite; sessao sem expiracao.
  • CORS/CSRF/headers de seguranca ausentes em prod.
  • Observabilidade: logs/health/metrics/alertas; rollback e migracoes reversiveis.
  • Codigo morto, console.log/print/dump, TODO/FIXME/HACK que indiquem pendencia de release.

6. ORIENTACAO POR STACK (ilustrativa — generalize sempre)

Exemplos sao para multiplos ecossistemas e NAO esgotam; aplique o conceito a sua stack.

  • JS/TS (Node/Deno/Bun; React/Vue/Svelte/Solid/Angular): eval, dangerouslySetInnerHTML/v-html, devtools/source maps em prod, process.env default frouxo, rejectUnauthorized:false, deps de dev no bundle, GraphQL introspection ligada.
  • Python (Django/Flask/FastAPI): DEBUG=True, SECRET_KEY hardcoded, ALLOWED_HOSTS=['*'], verify=False em requests, pickle/yaml.load inseguros, Flask debug=True.
  • Go: tls.Config{InsecureSkipVerify:true}, pprof/expvar expostos, go.sum ausente, build tags de debug.
  • Java/Kotlin (Spring): Actuator endpoints abertos, management.endpoints.web.exposure.include=*, H2 console em prod, segredos em application.properties.
  • C#/.NET: DeveloperExceptionPage em prod, appsettings com segredos, ServerCertificateValidationCallback sempre true.
  • Ruby (Rails): config.consider_all_requests_local, web-console em prod, secret_key_base exposto, seeds com admin.
  • PHP (Laravel/Symfony): APP_DEBUG=true, phpinfo(), .env servido publicamente, Telescope/Debugbar em prod.
  • Rust: features de debug em release, unwrap()/expect() em caminho critico, dangerous_configuration de TLS.
  • Mobile (Swift/Kotlin): segredos no binario/strings, logging verboso, cert pinning desligado, endpoints de staging hardcoded.
  • Containers/IaC/Cloud: secrets em ENV/ARG do Dockerfile, security groups 0.0.0.0/0, buckets publicos, IAM *:*, state do Terraform com segredos.

7. CLASSIFICACAO DE RISCO / PRIORIDADE

Cada achado recebe quatro dimensoes:

  • Severidade: Critica / Alta / Media / Baixa / Informativa.
  • Prioridade: P0 (bloqueia deploy) / P1 (corrigir antes do release) / P2 (proximo ciclo) / P3 (melhoria).
  • Confianca: Confirmada / Provavel / Suspeita / Precisa de contexto.
  • Esforco: Baixo / Medio / Alto.

Regra de ouro: qualquer segredo em texto claro, bypass de auth ativo em prod, mock substituindo logica critica (pagamento/auth) ou CVE Critica/Alta explorivel remotamente = P0, bloqueio de deploy (NO-GO) ate mitigado.

8. FORMATO OBRIGATORIO DA RESPOSTA

8.1 Resumo executivo

3-8 linhas: postura geral, total de achados por severidade, e o veredito preliminar (GO / GO-com-ressalvas / NO-GO) com os bloqueadores.

8.2 Achados (formato fixo por item)

[ID] Titulo curto
- Categoria: dependencia | rota-teste | mock | segredo | bypass-auth | config | outro
- Severidade: ___  | Prioridade: ___ | Confianca: ___ | Esforco: ___
- Localizacao: arquivo:linha -> funcao/rota/dependencia (mascare segredos)
- Evidencia: trecho minimo citado do que foi observado
- Impacto: o que um atacante/falha consegue; blast radius
- Correcao: passo a passo concreto (versao-alvo / remocao / guard correto)
- Exemplo de correcao: diff/snippet ilustrativo
- Teste recomendado: como provar que ficou corrigido (teste/comando/assercao)

8.3 Tabela consolidada

IDCategoriaSeveridadePrioridadeConfiancaEsforcoResumo

8.4 Matriz de dependencias

| Pacote | Versao atual | Ultima estavel | CVE/Aviso | Severidade | Acao (upgrade/remover) | Breaking? |

8.5 Plano de correcao em fases

  • Fase 0 — Bloqueadores (P0, pre-deploy): lista ordenada.
  • Fase 1 — Pre-release (P1).
  • Fase 2 — Hardening (P2).
  • Fase 3 — Melhorias (P3). Inclua, para segredos, a etapa de rotacao e remocao do historico.

8.6 Checklist final GO / NO-GO de deploy

Marque cada item e termine com veredito explicito:

  • Sem segredos em texto claro; segredos expostos rotacionados.
  • Sem rotas de teste/debug/console expostas em prod.
  • Sem mocks/seeds/dados fake ligados em prod.
  • Sem bypass de auth / flags de demo ativos em prod (fail-closed).
  • Dependencias sem CVEs Criticas/Altas; lockfile presente e pinado.
  • Config de prod endurecida (DEBUG off, TLS verificado, headers, CORS/CSRF).
  • Observabilidade e rollback prontos.
  • VEREDITO: GO / GO-com-ressalvas / NO-GO + justificativa em 1-2 linhas.

9. REGRAS DE QUALIDADE E AUTO-VERIFICACAO

Antes de entregar, confirme internamente:

  • Cada achado tem localizacao real, evidencia citada, impacto, correcao e teste — nada generico.
  • Nenhum arquivo/funcao/CVE/versao inventado; confirmado vs provavel claramente marcado.
  • O que falta de contexto esta declarado explicitamente (ex.: "sem lockfile nao confirmo transitivas; rode osv-scanner").
  • Todos os segredos mascarados; nada sensivel sugerido para log/exposicao.
  • Severidade/Prioridade coerentes; bloqueadores P0 refletidos no veredito.
  • Profundidade superior a uma simples leitura: caminhos felizes e de erro, por papel e por ambiente, considerados.
  • Se faltarem arquivos para uma conclusao firme, peca exatamente os artefatos necessarios (manifesto, lockfile, middleware de auth, configs de prod).

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 326,782. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.