المهارات codebase-design
📦

codebase-design

آمن ⚙️ الأوامر الخارجية

Projete módulos profundos com interfaces claras

A maioria das bases de código sofre com módulos rasos com interfaces grandes e implementações finas. Esta skill fornece um vocabulário compartilhado e uma metodologia para projetar módulos profundos, decidir onde colocar as costuras e tornar o código mais testável e manutenível.

يدعم: Claude Codex Code(CC)
🥉 74 برونزي
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "codebase-design". Revise a função processOrder. Ela é um módulo profundo?

النتيجة المتوقعة:

  • Atualmente é rasa: processOrder(order) cria seu próprio StripeGateway internamente.
  • Versão profunda: processOrder(order, paymentGateway) aceita o gateway como dependência.
  • Os chamadores podem substituir gateways de teste ou mock sem alterar a função.
  • A interface ganha um parâmetro extra, mas o módulo se torna testável.

استخدام "codebase-design". Como devo classificar uma dependência de cache Redis?

النتيجة المتوقعة:

  • Redis é local-substituível: ioredis-mock ou testcontainers-redis podem rodar em testes.
  • Aprofundável se o substituto existir.
  • Teste com o substituto rodando na suíte de testes.
  • Sem porta na interface externa, apenas uma costura interna.

التدقيق الأمني

آمن
v1 • 6/24/2026

The codebase-design skill is a pure documentation skill providing vocabulary and methodology for designing deep modules. All 35 static findings are false positives: 'Weak cryptographic algorithm' detections are triggered by the word 'deep' (confused with DES cipher references in unrelated codebases), 'Ruby/shell backtick execution' matches markdown backtick formatting for code blocks, and 'System reconnaissance' is a misidentification of architectural vocabulary. No executable code, scripts, or data flows exist in any file.

3
الملفات التي تم فحصها
198
الأسطر التي تم تحليلها
1
النتائج
1
إجمالي عمليات التدقيق
تم تدقيقه بواسطة: claude

درجة الجودة

38
الهندسة المعمارية
100
قابلية الصيانة
87
المحتوى
50
المجتمع
100
الأمان
91
الامتثال للمواصفات

ماذا يمكنك بناءه

Projetando a interface de um novo módulo

Um desenvolvedor deseja projetar uma interface limpa para uma nova funcionalidade, com máxima alavancagem para os chamadores e área de superfície mínima para testes.

Refatorando módulos rasos em módulos profundos

Uma equipe de engenharia acumulou módulos rasos com implementações finas e deseja consolidá-los em unidades mais profundas e testáveis.

Estabelecendo um vocabulário arquitetônico compartilhado

Uma equipe precisa de uma linguagem consistente para discutir limites de módulos, costuras e adaptadores em revisões de código e discussões de design.

جرّب هذه الموجهات

Revisar a profundidade da interface de um módulo
Revise a interface do [nome do módulo]. Ela é profunda ou rasa? Posso reduzir o número de métodos ou simplificar os parâmetros? Que complexidade poderia ser escondida dentro da implementação?
Encontrar oportunidades de aprofundamento
Observe estes [N] módulos rasos relacionados. Mesclá-los poderia criar um módulo mais profundo? Classifique suas dependências como in-process, local-substituível, remoto-mas-próprio ou externa verdadeira.
Decidir onde colocar uma costura
Preciso decidir onde a costura deve ficar para [funcionalidade]. Aplique o teste de exclusão: se eu apagar este módulo, a complexidade desaparece ou se espalha? Deve haver uma porta ou apenas uma costura interna?
Explorar interfaces alternativas em paralelo
Inicie 3 subagentes para projetar interfaces radicalmente diferentes para [módulo]. O Agente 1 deve minimizar a interface, o Agente 2 deve maximizar a flexibilidade e o Agente 3 deve otimizar para o chamador mais comum.

أفضل الممارسات

  • Use o vocabulário exato desta skill de forma consistente em sua equipe e documentação
  • Aplique o teste de exclusão para verificar se um módulo está cumprindo seu papel
  • Introduza uma porta somente quando pelo menos dois adaptadores forem justificados
  • Escreva testes na interface do módulo, não além dela
  • Projete para dois adaptadores (produção e teste) antes de adicionar mais

تجنب

  • Substituir 'componente', 'serviço', 'API' ou 'boundary' pelos termos precisos desta skill
  • Introduzir costuras com apenas um adaptador
  • Testar além da interface, acessando estado interno
  • Tratar profundidade como uma razão entre linhas de implementação e linhas de interface
  • Manter testes unitários antigos em módulos rasos após a consolidação

الأسئلة المتكررة

O que é um módulo profundo?
Um módulo profundo tem uma interface pequena, mas uma implementação grande. Os chamadores obtêm mais capacidade por unidade de interface que precisam aprender.
O que é uma costura?
Uma costura é um lugar onde você pode alterar o comportamento sem editar nesse lugar. É a localização na qual a interface de um módulo vive.
Quando devo introduzir uma porta?
Somente quando pelo menos dois adaptadores forem justificados, tipicamente um para produção e outro para teste. Uma costura com um único adaptador é apenas indireção.
Como sei se um módulo é raso?
Aplique o teste de exclusão: imagine apagar o módulo. Se a complexidade desaparecer, era um pass-through. Se a complexidade reaparecer em muitos chamadores, ele estava cumprindo seu papel.
Qual é a diferença entre uma interface e um adaptador?
Uma interface é tudo o que um chamador precisa saber para usar um módulo. Um adaptador é uma coisa concreta que satisfaz uma interface em uma costura.
Esta skill funciona com Claude Code, Codex e Claude?
Sim. O vocabulário e a metodologia são agnósticos de ferramenta e podem ser aplicados em qualquer assistente de codificação de IA ou fluxo de trabalho de desenvolvedor humano.

تفاصيل المطور

المؤلف

mattpocock

الترخيص

MIT

مرجع

main

بنية الملفات