@corbat-tech/coding-standards-mcp 1.0.2 → 1.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/README.md +170 -269
- package/assets/demo.gif +0 -0
- package/assets/demo.tape +63 -0
- package/dist/agent.d.ts +5 -6
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +95 -217
- package/dist/agent.js.map +1 -1
- package/dist/cli/init.js +1 -1
- package/dist/cli/init.js.map +1 -1
- package/dist/config.d.ts +15 -26
- package/dist/config.d.ts.map +1 -1
- package/dist/errors.d.ts +58 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +112 -0
- package/dist/errors.js.map +1 -0
- package/dist/guardrails.d.ts +35 -0
- package/dist/guardrails.d.ts.map +1 -0
- package/dist/guardrails.js +303 -0
- package/dist/guardrails.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +36 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +63 -0
- package/dist/logger.js.map +1 -0
- package/dist/metrics.d.ts +40 -0
- package/dist/metrics.d.ts.map +1 -0
- package/dist/metrics.js +97 -0
- package/dist/metrics.js.map +1 -0
- package/dist/profiles.d.ts +1 -1
- package/dist/profiles.d.ts.map +1 -1
- package/dist/profiles.js +240 -109
- package/dist/profiles.js.map +1 -1
- package/dist/prompts.js +1 -1
- package/dist/prompts.js.map +1 -1
- package/dist/tools/definitions.d.ts +104 -0
- package/dist/tools/definitions.d.ts.map +1 -0
- package/dist/tools/definitions.js +171 -0
- package/dist/tools/definitions.js.map +1 -0
- package/dist/tools/handlers/get-context.d.ts +12 -0
- package/dist/tools/handlers/get-context.d.ts.map +1 -0
- package/dist/tools/handlers/get-context.js +118 -0
- package/dist/tools/handlers/get-context.js.map +1 -0
- package/dist/tools/handlers/health.d.ts +11 -0
- package/dist/tools/handlers/health.d.ts.map +1 -0
- package/dist/tools/handlers/health.js +57 -0
- package/dist/tools/handlers/health.js.map +1 -0
- package/dist/tools/handlers/index.d.ts +11 -0
- package/dist/tools/handlers/index.d.ts.map +1 -0
- package/dist/tools/handlers/index.js +11 -0
- package/dist/tools/handlers/index.js.map +1 -0
- package/dist/tools/handlers/init.d.ts +12 -0
- package/dist/tools/handlers/init.d.ts.map +1 -0
- package/dist/tools/handlers/init.js +102 -0
- package/dist/tools/handlers/init.js.map +1 -0
- package/dist/tools/handlers/profiles.d.ts +11 -0
- package/dist/tools/handlers/profiles.d.ts.map +1 -0
- package/dist/tools/handlers/profiles.js +25 -0
- package/dist/tools/handlers/profiles.js.map +1 -0
- package/dist/tools/handlers/search.d.ts +12 -0
- package/dist/tools/handlers/search.d.ts.map +1 -0
- package/dist/tools/handlers/search.js +58 -0
- package/dist/tools/handlers/search.js.map +1 -0
- package/dist/tools/handlers/validate.d.ts +12 -0
- package/dist/tools/handlers/validate.d.ts.map +1 -0
- package/dist/tools/handlers/validate.js +76 -0
- package/dist/tools/handlers/validate.js.map +1 -0
- package/dist/tools/index.d.ts +22 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +72 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/schemas.d.ts +29 -0
- package/dist/tools/schemas.d.ts.map +1 -0
- package/dist/tools/schemas.js +20 -0
- package/dist/tools/schemas.js.map +1 -0
- package/dist/tools.js +2 -2
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +417 -2588
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +99 -47
- package/dist/types.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/retry.d.ts.map +1 -1
- package/dist/utils/retry.js +3 -2
- package/dist/utils/retry.js.map +1 -1
- package/package.json +10 -9
- package/profiles/examples/microservice-kafka.yaml +122 -0
- package/profiles/examples/startup-fast.yaml +67 -0
- package/profiles/examples/strict-enterprise.yaml +62 -0
- package/profiles/templates/angular.yaml +614 -0
- package/profiles/templates/csharp-dotnet.yaml +529 -0
- package/profiles/templates/flutter.yaml +547 -0
- package/profiles/templates/go.yaml +1276 -0
- package/profiles/templates/java-spring-backend.yaml +326 -0
- package/profiles/templates/kotlin-spring.yaml +417 -0
- package/profiles/templates/nextjs.yaml +536 -0
- package/profiles/templates/nodejs.yaml +594 -0
- package/profiles/templates/python.yaml +546 -0
- package/profiles/templates/react.yaml +456 -0
- package/profiles/templates/rust.yaml +508 -0
- package/profiles/templates/vue.yaml +483 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# ============================================================================
|
|
2
|
+
# CORBAT MCP - Startup Fast Profile (Example)
|
|
3
|
+
# ============================================================================
|
|
4
|
+
# For startups and MVPs that prioritize speed over perfection.
|
|
5
|
+
# Relaxed rules while still maintaining basic quality.
|
|
6
|
+
#
|
|
7
|
+
# Usage:
|
|
8
|
+
# 1. Copy this file to profiles/custom/startup-fast.yaml
|
|
9
|
+
# 2. Or reference in .corbat.json: { "profile": "startup-fast" }
|
|
10
|
+
# ============================================================================
|
|
11
|
+
|
|
12
|
+
name: "Startup Fast"
|
|
13
|
+
description: "Pragmatic standards for startups - ship fast while maintaining basic quality"
|
|
14
|
+
extends: "nodejs"
|
|
15
|
+
|
|
16
|
+
# Relaxed code quality for faster iteration
|
|
17
|
+
codeQuality:
|
|
18
|
+
maxMethodLines: 30 # More lenient (default: 20)
|
|
19
|
+
maxClassLines: 300 # More lenient (default: 200)
|
|
20
|
+
maxFileLines: 500 # More lenient (default: 400)
|
|
21
|
+
maxMethodParameters: 5 # More lenient (default: 4)
|
|
22
|
+
maxCyclomaticComplexity: 15 # More lenient (default: 10)
|
|
23
|
+
minimumTestCoverage: 60 # More lenient (default: 80)
|
|
24
|
+
requireDocumentation: false # Don't require docs on everything
|
|
25
|
+
requireTests: true # Still require tests
|
|
26
|
+
principles:
|
|
27
|
+
- "Working code > perfect code"
|
|
28
|
+
- "Test critical paths thoroughly"
|
|
29
|
+
- "Document only complex logic"
|
|
30
|
+
- "Refactor when it hurts, not before"
|
|
31
|
+
|
|
32
|
+
# Simpler testing requirements
|
|
33
|
+
testing:
|
|
34
|
+
framework: "Vitest"
|
|
35
|
+
assertionLibrary: "Vitest"
|
|
36
|
+
mockingLibrary: "Vitest"
|
|
37
|
+
types:
|
|
38
|
+
unit:
|
|
39
|
+
suffix: "test"
|
|
40
|
+
coverage: 60
|
|
41
|
+
fastExecution: true
|
|
42
|
+
integration:
|
|
43
|
+
suffix: "integration.test"
|
|
44
|
+
useTestcontainers: false # Keep it simple initially
|
|
45
|
+
e2e:
|
|
46
|
+
framework: "Playwright"
|
|
47
|
+
|
|
48
|
+
# Simpler architecture - avoid over-engineering
|
|
49
|
+
architecture:
|
|
50
|
+
type: "feature-based"
|
|
51
|
+
enforceLayerDependencies: false # Allow flexibility
|
|
52
|
+
|
|
53
|
+
# No strict DDD/CQRS requirements
|
|
54
|
+
ddd:
|
|
55
|
+
enabled: false
|
|
56
|
+
|
|
57
|
+
cqrs:
|
|
58
|
+
enabled: false
|
|
59
|
+
|
|
60
|
+
# Basic security only
|
|
61
|
+
security:
|
|
62
|
+
authentication:
|
|
63
|
+
method: "JWT"
|
|
64
|
+
practices:
|
|
65
|
+
- "Validate user input"
|
|
66
|
+
- "Use HTTPS in production"
|
|
67
|
+
- "Don't log sensitive data"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# ============================================================================
|
|
2
|
+
# CORBAT MCP - Strict Enterprise Profile (Example)
|
|
3
|
+
# ============================================================================
|
|
4
|
+
# For enterprise projects with strict quality requirements.
|
|
5
|
+
# Copy to profiles/custom/ and modify as needed.
|
|
6
|
+
#
|
|
7
|
+
# Usage:
|
|
8
|
+
# 1. Copy this file to profiles/custom/strict-enterprise.yaml
|
|
9
|
+
# 2. Or reference in .corbat.json: { "profile": "strict-enterprise" }
|
|
10
|
+
# ============================================================================
|
|
11
|
+
|
|
12
|
+
name: "Strict Enterprise"
|
|
13
|
+
description: "Enterprise-grade standards with strict quality gates for mission-critical systems"
|
|
14
|
+
extends: "java-spring-backend"
|
|
15
|
+
|
|
16
|
+
# Override code quality with stricter limits
|
|
17
|
+
codeQuality:
|
|
18
|
+
maxMethodLines: 15 # Stricter than default (20)
|
|
19
|
+
maxClassLines: 150 # Stricter than default (200)
|
|
20
|
+
maxFileLines: 300 # Stricter than default (400)
|
|
21
|
+
maxMethodParameters: 3 # Stricter than default (4)
|
|
22
|
+
maxCyclomaticComplexity: 8 # Stricter than default (10)
|
|
23
|
+
minimumTestCoverage: 90 # Stricter than default (80)
|
|
24
|
+
requireDocumentation: true
|
|
25
|
+
requireTests: true
|
|
26
|
+
principles:
|
|
27
|
+
- "SOLID principles are mandatory"
|
|
28
|
+
- "All public APIs must have JavaDoc"
|
|
29
|
+
- "No @SuppressWarnings without justification comment"
|
|
30
|
+
- "All TODOs must have JIRA ticket reference"
|
|
31
|
+
|
|
32
|
+
# Enhanced testing requirements
|
|
33
|
+
testing:
|
|
34
|
+
framework: "JUnit5"
|
|
35
|
+
assertionLibrary: "AssertJ"
|
|
36
|
+
mockingLibrary: "Mockito"
|
|
37
|
+
types:
|
|
38
|
+
unit:
|
|
39
|
+
suffix: "Test"
|
|
40
|
+
coverage: 90
|
|
41
|
+
fastExecution: true
|
|
42
|
+
integration:
|
|
43
|
+
suffix: "IT"
|
|
44
|
+
useTestcontainers: true
|
|
45
|
+
architecture:
|
|
46
|
+
tool: "ArchUnit"
|
|
47
|
+
recommended: true
|
|
48
|
+
|
|
49
|
+
# Stricter security requirements
|
|
50
|
+
security:
|
|
51
|
+
authentication:
|
|
52
|
+
method: "OAuth2/OIDC"
|
|
53
|
+
authorization:
|
|
54
|
+
method: "RBAC with fine-grained permissions"
|
|
55
|
+
framework: "Spring Security"
|
|
56
|
+
practices:
|
|
57
|
+
- "All endpoints require authentication except health checks"
|
|
58
|
+
- "Sensitive data must be encrypted at rest and in transit"
|
|
59
|
+
- "Input validation on all external boundaries"
|
|
60
|
+
- "Security headers on all HTTP responses"
|
|
61
|
+
- "Rate limiting on public endpoints"
|
|
62
|
+
- "Audit logging for all data modifications"
|