@girardelli/architect-agents 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/core/agent-generator/context-enricher.d.ts +17 -0
- package/dist/src/core/agent-generator/context-enricher.js +51 -0
- package/dist/src/core/agent-generator/context-enricher.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/base-detector.d.ts +8 -0
- package/dist/src/core/agent-generator/detectors/base-detector.js +12 -0
- package/dist/src/core/agent-generator/detectors/base-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/dart-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/dart-detector.js +16 -0
- package/dist/src/core/agent-generator/detectors/dart-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/framework-registry.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/framework-registry.js +81 -0
- package/dist/src/core/agent-generator/detectors/framework-registry.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/go-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/go-detector.js +25 -0
- package/dist/src/core/agent-generator/detectors/go-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/java-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/java-detector.js +44 -0
- package/dist/src/core/agent-generator/detectors/java-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/node-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/node-detector.js +28 -0
- package/dist/src/core/agent-generator/detectors/node-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/php-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/php-detector.js +28 -0
- package/dist/src/core/agent-generator/detectors/php-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/python-detector.d.ts +7 -0
- package/dist/src/core/agent-generator/detectors/python-detector.js +116 -0
- package/dist/src/core/agent-generator/detectors/python-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/ruby-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/ruby-detector.js +23 -0
- package/dist/src/core/agent-generator/detectors/ruby-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/rust-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/rust-detector.js +18 -0
- package/dist/src/core/agent-generator/detectors/rust-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/structure-detector.d.ts +4 -0
- package/dist/src/core/agent-generator/detectors/structure-detector.js +35 -0
- package/dist/src/core/agent-generator/detectors/structure-detector.js.map +1 -0
- package/dist/src/core/agent-generator/detectors/toolchain-detector.d.ts +5 -0
- package/dist/src/core/agent-generator/detectors/toolchain-detector.js +164 -0
- package/dist/src/core/agent-generator/detectors/toolchain-detector.js.map +1 -0
- package/dist/src/core/agent-generator/domain-inferrer.d.ts +51 -0
- package/dist/src/core/agent-generator/domain-inferrer.js +585 -0
- package/dist/src/core/agent-generator/domain-inferrer.js.map +1 -0
- package/dist/src/core/agent-generator/engines/audit-engine.d.ts +8 -0
- package/dist/src/core/agent-generator/engines/audit-engine.js +84 -0
- package/dist/src/core/agent-generator/engines/audit-engine.js.map +1 -0
- package/dist/src/core/agent-generator/engines/context-builder.d.ts +12 -0
- package/dist/src/core/agent-generator/engines/context-builder.js +84 -0
- package/dist/src/core/agent-generator/engines/context-builder.js.map +1 -0
- package/dist/src/core/agent-generator/engines/generation-engine.d.ts +7 -0
- package/dist/src/core/agent-generator/engines/generation-engine.js +160 -0
- package/dist/src/core/agent-generator/engines/generation-engine.js.map +1 -0
- package/dist/src/core/agent-generator/engines/generation-engine_deps.d.ts +21 -0
- package/dist/src/core/agent-generator/engines/generation-engine_deps.js +17 -0
- package/dist/src/core/agent-generator/engines/generation-engine_deps.js.map +1 -0
- package/dist/src/core/agent-generator/engines/suggestion-engine.d.ts +13 -0
- package/dist/src/core/agent-generator/engines/suggestion-engine.js +171 -0
- package/dist/src/core/agent-generator/engines/suggestion-engine.js.map +1 -0
- package/dist/src/core/agent-generator/engines/suggestion-engine_deps.d.ts +8 -0
- package/dist/src/core/agent-generator/engines/suggestion-engine_deps.js +5 -0
- package/dist/src/core/agent-generator/engines/suggestion-engine_deps.js.map +1 -0
- package/dist/src/core/agent-generator/enrichers/analysis-helpers.d.ts +9 -0
- package/dist/src/core/agent-generator/enrichers/analysis-helpers.js +51 -0
- package/dist/src/core/agent-generator/enrichers/analysis-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/enrichers/description-generator.d.ts +4 -0
- package/dist/src/core/agent-generator/enrichers/description-generator.js +82 -0
- package/dist/src/core/agent-generator/enrichers/description-generator.js.map +1 -0
- package/dist/src/core/agent-generator/enrichers/endpoint-extractor.d.ts +7 -0
- package/dist/src/core/agent-generator/enrichers/endpoint-extractor.js +90 -0
- package/dist/src/core/agent-generator/enrichers/endpoint-extractor.js.map +1 -0
- package/dist/src/core/agent-generator/enrichers/layer-classifier.d.ts +12 -0
- package/dist/src/core/agent-generator/enrichers/layer-classifier.js +152 -0
- package/dist/src/core/agent-generator/enrichers/layer-classifier.js.map +1 -0
- package/dist/src/core/agent-generator/enrichers/module-extractor.d.ts +10 -0
- package/dist/src/core/agent-generator/enrichers/module-extractor.js +173 -0
- package/dist/src/core/agent-generator/enrichers/module-extractor.js.map +1 -0
- package/dist/src/core/agent-generator/framework-detector.d.ts +17 -0
- package/dist/src/core/agent-generator/framework-detector.js +56 -0
- package/dist/src/core/agent-generator/framework-detector.js.map +1 -0
- package/dist/src/core/agent-generator/index.d.ts +25 -0
- package/dist/src/core/agent-generator/index.js +37 -0
- package/dist/src/core/agent-generator/index.js.map +1 -0
- package/dist/src/core/agent-generator/stack-detector.d.ts +13 -0
- package/dist/src/core/agent-generator/stack-detector.js +124 -0
- package/dist/src/core/agent-generator/stack-detector.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/agents.d.ts +9 -0
- package/dist/src/core/agent-generator/templates/core/agents.js +1127 -0
- package/dist/src/core/agent-generator/templates/core/agents.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/architecture-rules.d.ts +6 -0
- package/dist/src/core/agent-generator/templates/core/architecture-rules.js +275 -0
- package/dist/src/core/agent-generator/templates/core/architecture-rules.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/general-rules.d.ts +7 -0
- package/dist/src/core/agent-generator/templates/core/general-rules.js +301 -0
- package/dist/src/core/agent-generator/templates/core/general-rules.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/hooks-generator.d.ts +20 -0
- package/dist/src/core/agent-generator/templates/core/hooks-generator.js +235 -0
- package/dist/src/core/agent-generator/templates/core/hooks-generator.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/index-md.d.ts +6 -0
- package/dist/src/core/agent-generator/templates/core/index-md.js +247 -0
- package/dist/src/core/agent-generator/templates/core/index-md.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/orchestrator.d.ts +7 -0
- package/dist/src/core/agent-generator/templates/core/orchestrator.js +423 -0
- package/dist/src/core/agent-generator/templates/core/orchestrator.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/preflight.d.ts +7 -0
- package/dist/src/core/agent-generator/templates/core/preflight.js +213 -0
- package/dist/src/core/agent-generator/templates/core/preflight.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/quality-gates.d.ts +10 -0
- package/dist/src/core/agent-generator/templates/core/quality-gates.js +255 -0
- package/dist/src/core/agent-generator/templates/core/quality-gates.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/security-rules.d.ts +6 -0
- package/dist/src/core/agent-generator/templates/core/security-rules.js +529 -0
- package/dist/src/core/agent-generator/templates/core/security-rules.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/skills-generator.d.ts +18 -0
- package/dist/src/core/agent-generator/templates/core/skills-generator.js +547 -0
- package/dist/src/core/agent-generator/templates/core/skills-generator.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/workflow-fix-bug.d.ts +6 -0
- package/dist/src/core/agent-generator/templates/core/workflow-fix-bug.js +238 -0
- package/dist/src/core/agent-generator/templates/core/workflow-fix-bug.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/workflow-new-feature.d.ts +7 -0
- package/dist/src/core/agent-generator/templates/core/workflow-new-feature.js +321 -0
- package/dist/src/core/agent-generator/templates/core/workflow-new-feature.js.map +1 -0
- package/dist/src/core/agent-generator/templates/core/workflow-review.d.ts +6 -0
- package/dist/src/core/agent-generator/templates/core/workflow-review.js +105 -0
- package/dist/src/core/agent-generator/templates/core/workflow-review.js.map +1 -0
- package/dist/src/core/agent-generator/templates/domain/index.d.ts +21 -0
- package/dist/src/core/agent-generator/templates/domain/index.js +1179 -0
- package/dist/src/core/agent-generator/templates/domain/index.js.map +1 -0
- package/dist/src/core/agent-generator/templates/helpers/base-helpers.d.ts +10 -0
- package/dist/src/core/agent-generator/templates/helpers/base-helpers.js +20 -0
- package/dist/src/core/agent-generator/templates/helpers/base-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/templates/helpers/cross-ref-helpers.d.ts +2 -0
- package/dist/src/core/agent-generator/templates/helpers/cross-ref-helpers.js +77 -0
- package/dist/src/core/agent-generator/templates/helpers/cross-ref-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/templates/helpers/security-helpers.d.ts +2 -0
- package/dist/src/core/agent-generator/templates/helpers/security-helpers.js +182 -0
- package/dist/src/core/agent-generator/templates/helpers/security-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/templates/helpers/stack-helpers.d.ts +4 -0
- package/dist/src/core/agent-generator/templates/helpers/stack-helpers.js +69 -0
- package/dist/src/core/agent-generator/templates/helpers/stack-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/templates/helpers/structure-helpers.d.ts +2 -0
- package/dist/src/core/agent-generator/templates/helpers/structure-helpers.js +275 -0
- package/dist/src/core/agent-generator/templates/helpers/structure-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/templates/helpers/summary-helpers.d.ts +6 -0
- package/dist/src/core/agent-generator/templates/helpers/summary-helpers.js +56 -0
- package/dist/src/core/agent-generator/templates/helpers/summary-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/templates/stack/index.d.ts +7 -0
- package/dist/src/core/agent-generator/templates/stack/index.js +695 -0
- package/dist/src/core/agent-generator/templates/stack/index.js.map +1 -0
- package/dist/src/core/agent-generator/templates/template-helpers.d.ts +11 -0
- package/dist/src/core/agent-generator/templates/template-helpers.js +12 -0
- package/dist/src/core/agent-generator/templates/template-helpers.js.map +1 -0
- package/dist/src/core/agent-generator/types/agent.d.ts +39 -0
- package/dist/src/core/agent-generator/types/agent.js +27 -0
- package/dist/src/core/agent-generator/types/agent.js.map +1 -0
- package/dist/src/core/agent-generator/types/domain.d.ts +58 -0
- package/dist/src/core/agent-generator/types/domain.js +2 -0
- package/dist/src/core/agent-generator/types/domain.js.map +1 -0
- package/dist/src/core/agent-generator/types/stack.d.ts +36 -0
- package/dist/src/core/agent-generator/types/stack.js +2 -0
- package/dist/src/core/agent-generator/types/stack.js.map +1 -0
- package/dist/src/core/agent-generator/types/template.d.ts +29 -0
- package/dist/src/core/agent-generator/types/template.js +2 -0
- package/dist/src/core/agent-generator/types/template.js.map +1 -0
- package/dist/src/core/agent-runtime/ai-provider.d.ts +33 -0
- package/dist/src/core/agent-runtime/ai-provider.js +146 -0
- package/dist/src/core/agent-runtime/ai-provider.js.map +1 -0
- package/dist/src/core/agent-runtime/executor.d.ts +13 -0
- package/dist/src/core/agent-runtime/executor.js +138 -0
- package/dist/src/core/agent-runtime/executor.js.map +1 -0
- package/dist/src/core/agent-runtime/human-gate.d.ts +16 -0
- package/dist/src/core/agent-runtime/human-gate.js +70 -0
- package/dist/src/core/agent-runtime/human-gate.js.map +1 -0
- package/dist/tests/agent-generator.test.d.ts +1 -0
- package/dist/tests/agent-generator.test.js +349 -0
- package/dist/tests/agent-generator.test.js.map +1 -0
- package/dist/tests/agent-runtime.test.d.ts +1 -0
- package/dist/tests/agent-runtime.test.js +107 -0
- package/dist/tests/agent-runtime.test.js.map +1 -0
- package/dist/tests/context-enricher.test.d.ts +1 -0
- package/dist/tests/context-enricher.test.js +875 -0
- package/dist/tests/context-enricher.test.js.map +1 -0
- package/dist/tests/framework-detector.test.d.ts +1 -0
- package/dist/tests/framework-detector.test.js +882 -0
- package/dist/tests/framework-detector.test.js.map +1 -0
- package/dist/tests/stack-detector.test.d.ts +1 -0
- package/dist/tests/stack-detector.test.js +183 -0
- package/dist/tests/stack-detector.test.js.map +1 -0
- package/dist/tests/template-generation.test.d.ts +1 -0
- package/dist/tests/template-generation.test.js +571 -0
- package/dist/tests/template-generation.test.js.map +1 -0
- package/dist/tests/template-helpers.test.d.ts +1 -0
- package/dist/tests/template-helpers.test.js +967 -0
- package/dist/tests/template-helpers.test.js.map +1 -0
- package/package.json +24 -0
- package/src/core/agent-generator/context-enricher.ts +67 -0
- package/src/core/agent-generator/detectors/base-detector.ts +18 -0
- package/src/core/agent-generator/detectors/dart-detector.ts +17 -0
- package/src/core/agent-generator/detectors/framework-registry.ts +82 -0
- package/src/core/agent-generator/detectors/go-detector.ts +26 -0
- package/src/core/agent-generator/detectors/java-detector.ts +46 -0
- package/src/core/agent-generator/detectors/node-detector.ts +28 -0
- package/src/core/agent-generator/detectors/php-detector.ts +28 -0
- package/src/core/agent-generator/detectors/python-detector.ts +125 -0
- package/src/core/agent-generator/detectors/ruby-detector.ts +24 -0
- package/src/core/agent-generator/detectors/rust-detector.ts +19 -0
- package/src/core/agent-generator/detectors/structure-detector.ts +38 -0
- package/src/core/agent-generator/detectors/toolchain-detector.ts +181 -0
- package/src/core/agent-generator/domain-inferrer.ts +630 -0
- package/src/core/agent-generator/engines/audit-engine.ts +98 -0
- package/src/core/agent-generator/engines/context-builder.ts +96 -0
- package/src/core/agent-generator/engines/generation-engine.ts +184 -0
- package/src/core/agent-generator/engines/generation-engine_deps.ts +21 -0
- package/src/core/agent-generator/engines/suggestion-engine.ts +202 -0
- package/src/core/agent-generator/engines/suggestion-engine_deps.ts +8 -0
- package/src/core/agent-generator/enrichers/analysis-helpers.ts +58 -0
- package/src/core/agent-generator/enrichers/description-generator.ts +91 -0
- package/src/core/agent-generator/enrichers/endpoint-extractor.ts +114 -0
- package/src/core/agent-generator/enrichers/layer-classifier.ts +156 -0
- package/src/core/agent-generator/enrichers/module-extractor.ts +203 -0
- package/src/core/agent-generator/framework-detector.ts +66 -0
- package/src/core/agent-generator/index.ts +55 -0
- package/src/core/agent-generator/stack-detector.ts +115 -0
- package/src/core/agent-generator/templates/core/agents.ts +1168 -0
- package/src/core/agent-generator/templates/core/architecture-rules.ts +288 -0
- package/src/core/agent-generator/templates/core/general-rules.ts +306 -0
- package/src/core/agent-generator/templates/core/hooks-generator.ts +244 -0
- package/src/core/agent-generator/templates/core/index-md.ts +261 -0
- package/src/core/agent-generator/templates/core/orchestrator.ts +462 -0
- package/src/core/agent-generator/templates/core/preflight.ts +216 -0
- package/src/core/agent-generator/templates/core/quality-gates.ts +257 -0
- package/src/core/agent-generator/templates/core/security-rules.ts +544 -0
- package/src/core/agent-generator/templates/core/skills-generator.ts +586 -0
- package/src/core/agent-generator/templates/core/workflow-fix-bug.ts +240 -0
- package/src/core/agent-generator/templates/core/workflow-new-feature.ts +323 -0
- package/src/core/agent-generator/templates/core/workflow-review.ts +107 -0
- package/src/core/agent-generator/templates/domain/index.ts +1204 -0
- package/src/core/agent-generator/templates/helpers/base-helpers.ts +33 -0
- package/src/core/agent-generator/templates/helpers/cross-ref-helpers.ts +79 -0
- package/src/core/agent-generator/templates/helpers/security-helpers.ts +198 -0
- package/src/core/agent-generator/templates/helpers/stack-helpers.ts +80 -0
- package/src/core/agent-generator/templates/helpers/structure-helpers.ts +293 -0
- package/src/core/agent-generator/templates/helpers/summary-helpers.ts +67 -0
- package/src/core/agent-generator/templates/stack/index.ts +705 -0
- package/src/core/agent-generator/templates/template-helpers.ts +12 -0
- package/src/core/agent-generator/types/agent.ts +65 -0
- package/src/core/agent-generator/types/domain.ts +63 -0
- package/src/core/agent-generator/types/stack.ts +38 -0
- package/src/core/agent-generator/types/template.ts +31 -0
- package/src/core/agent-runtime/ai-provider.ts +178 -0
- package/src/core/agent-runtime/executor.ts +148 -0
- package/src/core/agent-runtime/human-gate.ts +69 -0
- package/tests/agent-generator.test.ts +428 -0
- package/tests/agent-runtime.test.ts +125 -0
- package/tests/context-enricher.test.ts +972 -0
- package/tests/framework-detector.test.ts +1172 -0
- package/tests/stack-detector.test.ts +241 -0
- package/tests/template-generation.test.ts +709 -0
- package/tests/template-helpers.test.ts +1130 -0
- package/tsconfig.json +14 -0
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
import { getEnriched } from './base-helpers.js';
|
|
2
|
+
export function frameworkModuleStructure(ctx) {
|
|
3
|
+
const enriched = getEnriched(ctx);
|
|
4
|
+
const fw = enriched.primaryFramework?.name || '';
|
|
5
|
+
const structure = enriched.projectStructure || 'unknown';
|
|
6
|
+
const lang = ctx.stack.primary;
|
|
7
|
+
// Clean Architecture (Python, any framework)
|
|
8
|
+
if (structure === 'clean-architecture') {
|
|
9
|
+
if (lang === 'Python') {
|
|
10
|
+
return `
|
|
11
|
+
\`\`\`
|
|
12
|
+
src/[projeto]/
|
|
13
|
+
├── domain/ → Regras de negócio puras
|
|
14
|
+
│ ├── entities/ → Entidades com identidade
|
|
15
|
+
│ ├── value_objects/ → Objetos de valor (imutáveis)
|
|
16
|
+
│ ├── services/ → Serviços de domínio
|
|
17
|
+
│ ├── events/ → Eventos de domínio
|
|
18
|
+
│ ├── enums/ → Enumerações
|
|
19
|
+
│ └── exceptions/ → Exceções customizadas
|
|
20
|
+
├── application/ → Casos de uso
|
|
21
|
+
│ ├── services/ → Application services
|
|
22
|
+
│ └── interfaces/ → Contratos (ports)
|
|
23
|
+
├── infrastructure/ → Implementações externas
|
|
24
|
+
│ ├── persistence/ → Repositórios concretos
|
|
25
|
+
│ ├── storage/ → MinIO, S3, filesystem
|
|
26
|
+
│ ├── extraction/ → Extração de dados
|
|
27
|
+
│ │ ├── extractors/ → Extractors por tipo
|
|
28
|
+
│ │ ├── ocr/ → OCR engine
|
|
29
|
+
│ │ └── guards/ → Validadores
|
|
30
|
+
│ └── agents/ → Agentes de automação
|
|
31
|
+
├── presentation/ → Interface com o mundo
|
|
32
|
+
│ ├── api/ → REST API
|
|
33
|
+
│ │ ├── routes/ → Endpoints${fw === 'FastAPI' ? ' (FastAPI routers)' : ''}
|
|
34
|
+
│ │ └── dependencies/ → ${fw === 'FastAPI' ? 'FastAPI Depends()' : 'Injeção de deps'}
|
|
35
|
+
│ └── workers/ → Background workers
|
|
36
|
+
└── tests/
|
|
37
|
+
├── unit/ → Testes unitários
|
|
38
|
+
├── integration/ → Testes de integração
|
|
39
|
+
└── fixtures/ → Dados de teste
|
|
40
|
+
\`\`\``;
|
|
41
|
+
}
|
|
42
|
+
// TypeScript Clean Architecture
|
|
43
|
+
return `
|
|
44
|
+
\`\`\`
|
|
45
|
+
src/
|
|
46
|
+
├── domain/ → Regras de negócio puras
|
|
47
|
+
│ ├── entities/ → Entidades com identidade
|
|
48
|
+
│ ├── value-objects/ → Objetos de valor
|
|
49
|
+
│ ├── services/ → Serviços de domínio
|
|
50
|
+
│ └── events/ → Eventos de domínio
|
|
51
|
+
├── application/ → Casos de uso
|
|
52
|
+
│ ├── use-cases/ → Casos de uso
|
|
53
|
+
│ └── ports/ → Interfaces (contratos)
|
|
54
|
+
├── infrastructure/ → Implementações externas
|
|
55
|
+
│ ├── repositories/ → Repositórios concretos
|
|
56
|
+
│ ├── adapters/ → Adaptadores externos
|
|
57
|
+
│ └── config/ → Configuração
|
|
58
|
+
├── presentation/ → Interface com o mundo
|
|
59
|
+
│ ├── controllers/ → Endpoints da API
|
|
60
|
+
│ ├── dto/ → Data Transfer Objects
|
|
61
|
+
│ └── middleware/ → Middleware
|
|
62
|
+
└── tests/
|
|
63
|
+
\`\`\``;
|
|
64
|
+
}
|
|
65
|
+
// FastAPI (non-clean-arch)
|
|
66
|
+
if (fw === 'FastAPI') {
|
|
67
|
+
return `
|
|
68
|
+
\`\`\`
|
|
69
|
+
app/
|
|
70
|
+
├── main.py → Entrypoint (FastAPI app)
|
|
71
|
+
├── api/
|
|
72
|
+
│ ├── routes/ → APIRouter por recurso
|
|
73
|
+
│ │ ├── __init__.py
|
|
74
|
+
│ │ ├── users.py → @router.get("/users")
|
|
75
|
+
│ │ └── items.py → @router.get("/items")
|
|
76
|
+
│ └── dependencies.py → Depends() compartilhados
|
|
77
|
+
├── core/
|
|
78
|
+
│ ├── config.py → Settings (pydantic BaseSettings)
|
|
79
|
+
│ └── security.py → JWT, OAuth2
|
|
80
|
+
├── models/ → SQLAlchemy / Pydantic models
|
|
81
|
+
├── schemas/ → Pydantic schemas (request/response)
|
|
82
|
+
├── services/ → Lógica de negócio
|
|
83
|
+
├── db/ → Database session, migrations
|
|
84
|
+
└── tests/
|
|
85
|
+
├── conftest.py → Fixtures (TestClient, db session)
|
|
86
|
+
├── test_users.py
|
|
87
|
+
└── test_items.py
|
|
88
|
+
\`\`\``;
|
|
89
|
+
}
|
|
90
|
+
// Django
|
|
91
|
+
if (fw === 'Django' || fw === 'DRF') {
|
|
92
|
+
return `
|
|
93
|
+
\`\`\`
|
|
94
|
+
project/
|
|
95
|
+
├── manage.py
|
|
96
|
+
├── config/ → Settings, URLs, WSGI
|
|
97
|
+
│ ├── settings/
|
|
98
|
+
│ │ ├── base.py
|
|
99
|
+
│ │ ├── local.py
|
|
100
|
+
│ │ └── production.py
|
|
101
|
+
│ └── urls.py → Root URL config
|
|
102
|
+
├── apps/
|
|
103
|
+
│ └── [app_name]/ → Django app
|
|
104
|
+
│ ├── models.py → Django ORM models
|
|
105
|
+
│ ├── views.py → ViewSets / APIViews
|
|
106
|
+
│ ├── serializers.py → DRF serializers
|
|
107
|
+
│ ├── urls.py → App URLs
|
|
108
|
+
│ ├── admin.py → Django admin
|
|
109
|
+
│ ├── forms.py → Forms
|
|
110
|
+
│ ├── signals.py → Django signals
|
|
111
|
+
│ └── tests/
|
|
112
|
+
│ ├── test_models.py
|
|
113
|
+
│ └── test_views.py
|
|
114
|
+
└── requirements/
|
|
115
|
+
\`\`\``;
|
|
116
|
+
}
|
|
117
|
+
// Flask
|
|
118
|
+
if (fw === 'Flask') {
|
|
119
|
+
return `
|
|
120
|
+
\`\`\`
|
|
121
|
+
app/
|
|
122
|
+
├── __init__.py → create_app() factory
|
|
123
|
+
├── blueprints/ → Flask Blueprints
|
|
124
|
+
│ ├── auth/
|
|
125
|
+
│ │ ├── __init__.py → Blueprint registration
|
|
126
|
+
│ │ ├── routes.py → @bp.route()
|
|
127
|
+
│ │ └── models.py
|
|
128
|
+
│ └── api/
|
|
129
|
+
├── models/ → SQLAlchemy models
|
|
130
|
+
├── services/ → Lógica de negócio
|
|
131
|
+
├── extensions.py → db, migrate, login_manager
|
|
132
|
+
├── config.py → Configuração
|
|
133
|
+
└── tests/
|
|
134
|
+
\`\`\``;
|
|
135
|
+
}
|
|
136
|
+
// NestJS
|
|
137
|
+
if (fw === 'NestJS') {
|
|
138
|
+
return `
|
|
139
|
+
\`\`\`
|
|
140
|
+
src/
|
|
141
|
+
├── main.ts → Bootstrap (NestFactory)
|
|
142
|
+
├── app.module.ts → Root module
|
|
143
|
+
├── modules/
|
|
144
|
+
│ └── [module-name]/
|
|
145
|
+
│ ├── [name].module.ts → @Module()
|
|
146
|
+
│ ├── [name].controller.ts → @Controller() endpoints
|
|
147
|
+
│ ├── [name].service.ts → @Injectable() lógica
|
|
148
|
+
│ ├── dto/
|
|
149
|
+
│ │ ├── create-[name].dto.ts → class-validator DTOs
|
|
150
|
+
│ │ └── update-[name].dto.ts
|
|
151
|
+
│ ├── entities/
|
|
152
|
+
│ │ └── [name].entity.ts → TypeORM/Prisma entity
|
|
153
|
+
│ └── __tests__/
|
|
154
|
+
│ ├── [name].service.spec.ts
|
|
155
|
+
│ └── [name].controller.spec.ts
|
|
156
|
+
├── common/ → Guards, pipes, interceptors
|
|
157
|
+
└── config/ → ConfigModule
|
|
158
|
+
\`\`\``;
|
|
159
|
+
}
|
|
160
|
+
// Express
|
|
161
|
+
if (fw === 'Express' || fw === 'Fastify') {
|
|
162
|
+
return `
|
|
163
|
+
\`\`\`
|
|
164
|
+
src/
|
|
165
|
+
├── index.ts → Entrypoint
|
|
166
|
+
├── routes/ → Route handlers
|
|
167
|
+
│ ├── users.router.ts
|
|
168
|
+
│ └── items.router.ts
|
|
169
|
+
├── controllers/ → Request handlers
|
|
170
|
+
├── services/ → Business logic
|
|
171
|
+
├── models/ → Data models
|
|
172
|
+
├── middleware/ → Auth, validation, error handler
|
|
173
|
+
├── config/ → Environment config
|
|
174
|
+
└── tests/
|
|
175
|
+
\`\`\``;
|
|
176
|
+
}
|
|
177
|
+
// Spring Boot
|
|
178
|
+
if (fw === 'Spring Boot') {
|
|
179
|
+
return `
|
|
180
|
+
\`\`\`
|
|
181
|
+
src/main/java/com/company/project/
|
|
182
|
+
├── Application.java → @SpringBootApplication
|
|
183
|
+
├── controller/ → @RestController
|
|
184
|
+
│ └── UserController.java
|
|
185
|
+
├── service/ → @Service
|
|
186
|
+
│ └── UserService.java
|
|
187
|
+
├── repository/ → @Repository (Spring Data JPA)
|
|
188
|
+
│ └── UserRepository.java
|
|
189
|
+
├── model/ → @Entity
|
|
190
|
+
│ └── User.java
|
|
191
|
+
├── dto/ → Request/Response DTOs
|
|
192
|
+
├── config/ → @Configuration
|
|
193
|
+
├── exception/ → @ControllerAdvice
|
|
194
|
+
└── security/ → Spring Security config
|
|
195
|
+
\`\`\``;
|
|
196
|
+
}
|
|
197
|
+
// Laravel
|
|
198
|
+
if (fw === 'Laravel') {
|
|
199
|
+
return `
|
|
200
|
+
\`\`\`
|
|
201
|
+
app/
|
|
202
|
+
├── Http/
|
|
203
|
+
│ ├── Controllers/ → Controllers
|
|
204
|
+
│ ├── Middleware/ → Middleware
|
|
205
|
+
│ └── Requests/ → Form Requests (validation)
|
|
206
|
+
├── Models/ → Eloquent Models
|
|
207
|
+
├── Services/ → Business Logic
|
|
208
|
+
├── Repositories/ → Data Access
|
|
209
|
+
├── Providers/ → Service Providers
|
|
210
|
+
├── Events/ → Event classes
|
|
211
|
+
├── Listeners/ → Event listeners
|
|
212
|
+
├── Policies/ → Authorization policies
|
|
213
|
+
database/
|
|
214
|
+
├── migrations/ → Database migrations
|
|
215
|
+
├── seeders/ → Database seeders
|
|
216
|
+
└── factories/ → Model factories
|
|
217
|
+
\`\`\``;
|
|
218
|
+
}
|
|
219
|
+
// Go
|
|
220
|
+
if (fw === 'Gin' || fw === 'Echo' || fw === 'Fiber' || fw === 'Chi') {
|
|
221
|
+
return `
|
|
222
|
+
\`\`\`
|
|
223
|
+
.
|
|
224
|
+
├── cmd/
|
|
225
|
+
│ └── server/
|
|
226
|
+
│ └── main.go → Entrypoint
|
|
227
|
+
├── internal/
|
|
228
|
+
│ ├── handler/ → HTTP handlers
|
|
229
|
+
│ ├── service/ → Business logic
|
|
230
|
+
│ ├── repository/ → Data access
|
|
231
|
+
│ ├── model/ → Domain models
|
|
232
|
+
│ ├── middleware/ → HTTP middleware
|
|
233
|
+
│ └── config/ → Configuration
|
|
234
|
+
├── pkg/ → Public packages
|
|
235
|
+
├── go.mod
|
|
236
|
+
└── go.sum
|
|
237
|
+
\`\`\``;
|
|
238
|
+
}
|
|
239
|
+
// Ruby on Rails
|
|
240
|
+
if (fw === 'Ruby on Rails') {
|
|
241
|
+
return `
|
|
242
|
+
\`\`\`
|
|
243
|
+
app/
|
|
244
|
+
├── controllers/ → ActionController
|
|
245
|
+
├── models/ → ActiveRecord models
|
|
246
|
+
├── views/ → ERB/HAML templates
|
|
247
|
+
├── services/ → Service objects
|
|
248
|
+
├── jobs/ → ActiveJob
|
|
249
|
+
├── mailers/ → ActionMailer
|
|
250
|
+
├── serializers/ → JSON serializers
|
|
251
|
+
config/
|
|
252
|
+
├── routes.rb → Route definitions
|
|
253
|
+
├── database.yml → Database config
|
|
254
|
+
db/
|
|
255
|
+
├── migrate/ → Migrations
|
|
256
|
+
├── seeds.rb → Seed data
|
|
257
|
+
spec/ (ou test/)
|
|
258
|
+
\`\`\``;
|
|
259
|
+
}
|
|
260
|
+
// Generic fallback
|
|
261
|
+
const ext = lang === 'Python' ? 'py' : lang === 'Go' ? 'go' : lang === 'PHP' ? 'php' : lang === 'Ruby' ? 'rb' : 'ts';
|
|
262
|
+
return `
|
|
263
|
+
\`\`\`
|
|
264
|
+
src/
|
|
265
|
+
├── controllers/ → Endpoints / HTTP handlers
|
|
266
|
+
├── services/ → Lógica de negócio
|
|
267
|
+
├── models/ → Modelos de dados
|
|
268
|
+
├── repositories/ → Acesso a dados
|
|
269
|
+
├── dto/ → Data Transfer Objects
|
|
270
|
+
├── middleware/ → Middleware
|
|
271
|
+
├── config/ → Configuração
|
|
272
|
+
└── tests/ → Testes (.${ext})
|
|
273
|
+
\`\`\``;
|
|
274
|
+
}
|
|
275
|
+
//# sourceMappingURL=structure-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structure-helpers.js","sourceRoot":"","sources":["../../../../../../src/core/agent-generator/templates/helpers/structure-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,UAAU,wBAAwB,CAAC,GAAoB;IAC3D,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,QAAQ,CAAC,gBAAgB,EAAE,IAAI,IAAI,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,gBAAgB,IAAI,SAAS,CAAC;IACzD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;IAE/B,6CAA6C;IAC7C,IAAI,SAAS,KAAK,oBAAoB,EAAE,CAAC;QACvC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO;;;;;;;;;;;;;;;;;;;;;;;kDAuBqC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;yCACrD,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,iBAAiB;;;;;;OAM5F,CAAC;QACJ,CAAC;QAED,gCAAgC;QAChC,OAAO;;;;;;;;;;;;;;;;;;;;OAoBJ,CAAC;IACN,CAAC;IAED,2BAA2B;IAC3B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,OAAO;;;;;;;;;;;;;;;;;;;;;OAqBJ,CAAC;IACN,CAAC;IAED,SAAS;IACT,IAAI,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QACpC,OAAO;;;;;;;;;;;;;;;;;;;;;;;OAuBJ,CAAC;IACN,CAAC;IAED,QAAQ;IACR,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;QACnB,OAAO;;;;;;;;;;;;;;;OAeJ,CAAC;IACN,CAAC;IAED,SAAS;IACT,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,OAAO;;;;;;;;;;;;;;;;;;;;OAoBJ,CAAC;IACN,CAAC;IAED,UAAU;IACV,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO;;;;;;;;;;;;;OAaJ,CAAC;IACN,CAAC;IAED,cAAc;IACd,IAAI,EAAE,KAAK,aAAa,EAAE,CAAC;QACzB,OAAO;;;;;;;;;;;;;;;;OAgBJ,CAAC;IACN,CAAC;IAED,UAAU;IACV,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,OAAO;;;;;;;;;;;;;;;;;;OAkBJ,CAAC;IACN,CAAC;IAED,KAAK;IACL,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QACpE,OAAO;;;;;;;;;;;;;;;;OAgBJ,CAAC;IACN,CAAC;IAED,gBAAgB;IAChB,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;QAC3B,OAAO;;;;;;;;;;;;;;;;;OAiBJ,CAAC;IACN,CAAC;IAED,mBAAmB;IACnB,MAAM,GAAG,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACrH,OAAO;;;;;;;;;;kDAUyC,GAAG;OAC9C,CAAC;AACR,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TemplateContext } from '@girardelli/architect-agents/src/core/agent-generator/types/template.js';
|
|
2
|
+
export declare function domainBadge(ctx: TemplateContext): string;
|
|
3
|
+
export declare function complianceBadges(ctx: TemplateContext): string;
|
|
4
|
+
export declare function depthIndicator(ctx: TemplateContext): string;
|
|
5
|
+
export declare function modulesSummaryTable(ctx: TemplateContext): string;
|
|
6
|
+
export declare function integrationsSummary(ctx: TemplateContext): string;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { getEnriched, depthScale } from './base-helpers.js';
|
|
2
|
+
export function domainBadge(ctx) {
|
|
3
|
+
const enriched = getEnriched(ctx);
|
|
4
|
+
if (!enriched.domain)
|
|
5
|
+
return '';
|
|
6
|
+
const { domain } = enriched;
|
|
7
|
+
return `
|
|
8
|
+
> 📌 **Domínio:** ${domain.domain} · **Sub-domínio:** ${domain.subDomain} · **Confiança:** ${Math.round(domain.confidence * 100)}%
|
|
9
|
+
`;
|
|
10
|
+
}
|
|
11
|
+
export function complianceBadges(ctx) {
|
|
12
|
+
const enriched = getEnriched(ctx);
|
|
13
|
+
if (!enriched.domain?.compliance?.length)
|
|
14
|
+
return '';
|
|
15
|
+
return `
|
|
16
|
+
### ⚖️ Compliance Obrigatório
|
|
17
|
+
|
|
18
|
+
${enriched.domain.compliance.map((c) => `- **${c.name}** — ${c.reason}
|
|
19
|
+
- Checks: ${c.mandatoryChecks.join(', ')}`).join('\n')}
|
|
20
|
+
`;
|
|
21
|
+
}
|
|
22
|
+
export function depthIndicator(ctx) {
|
|
23
|
+
const enriched = getEnriched(ctx);
|
|
24
|
+
const depth = enriched.projectDepth || 'medium';
|
|
25
|
+
const labels = {
|
|
26
|
+
small: '🟢 Projeto Pequeno (< 50 arquivos)',
|
|
27
|
+
medium: '🟡 Projeto Médio (50-200 arquivos)',
|
|
28
|
+
large: '🟠 Projeto Grande (200-500 arquivos)',
|
|
29
|
+
enterprise: '🔴 Enterprise (500+ arquivos)',
|
|
30
|
+
};
|
|
31
|
+
return labels[depth];
|
|
32
|
+
}
|
|
33
|
+
export function modulesSummaryTable(ctx) {
|
|
34
|
+
const enriched = getEnriched(ctx);
|
|
35
|
+
if (!enriched.modules?.length)
|
|
36
|
+
return '';
|
|
37
|
+
const maxModules = depthScale(ctx, { small: 5, medium: 10, large: 20, enterprise: 50 });
|
|
38
|
+
const modules = enriched.modules.slice(0, maxModules);
|
|
39
|
+
return `
|
|
40
|
+
| Módulo | Arquivos | Linhas | Testes | Camada |
|
|
41
|
+
|--------|----------|--------|--------|--------|
|
|
42
|
+
${modules.map((m) => `| ${m.name} | ${m.fileCount} | ${m.lineCount > 0 ? m.lineCount.toLocaleString() : '—'} | ${m.hasTests ? '✅' : '❌'} | ${m.layer} |`).join('\n')}
|
|
43
|
+
${enriched.modules.length > maxModules ? `\n> ... e mais ${enriched.modules.length - maxModules} módulos.` : ''}
|
|
44
|
+
`;
|
|
45
|
+
}
|
|
46
|
+
export function integrationsSummary(ctx) {
|
|
47
|
+
const enriched = getEnriched(ctx);
|
|
48
|
+
if (!enriched.domain?.integrations?.length)
|
|
49
|
+
return '';
|
|
50
|
+
return `
|
|
51
|
+
### Integrações Externas Detectadas
|
|
52
|
+
|
|
53
|
+
${enriched.domain.integrations.map((i) => `- **${i.name}** (${i.type}) — detectado em \`${i.detectedFrom}\``).join('\n')}
|
|
54
|
+
`;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=summary-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"summary-helpers.js","sourceRoot":"","sources":["../../../../../../src/core/agent-generator/templates/helpers/summary-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TemplateContext } from '@girardelli/architect-agents/src/core/agent-generator/types/template.js';
|
|
2
|
+
/**
|
|
3
|
+
* Stack-specific rule generators.
|
|
4
|
+
* Each generates a 03-[framework].md rule file tailored to the detected stack.
|
|
5
|
+
*/
|
|
6
|
+
export declare function generateStackRules(ctx: TemplateContext): string | null;
|
|
7
|
+
export declare function getStackRuleFileName(ctx: TemplateContext): string | null;
|