@corbat-tech/coding-standards-mcp 1.0.3 → 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.
Files changed (91) hide show
  1. package/README.md +153 -341
  2. package/dist/agent.d.ts +5 -6
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +95 -217
  5. package/dist/agent.js.map +1 -1
  6. package/dist/errors.d.ts +58 -0
  7. package/dist/errors.d.ts.map +1 -0
  8. package/dist/errors.js +112 -0
  9. package/dist/errors.js.map +1 -0
  10. package/dist/guardrails.d.ts +35 -0
  11. package/dist/guardrails.d.ts.map +1 -0
  12. package/dist/guardrails.js +303 -0
  13. package/dist/guardrails.js.map +1 -0
  14. package/dist/index.js +1 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/logger.d.ts +36 -0
  17. package/dist/logger.d.ts.map +1 -0
  18. package/dist/logger.js +63 -0
  19. package/dist/logger.js.map +1 -0
  20. package/dist/metrics.d.ts +40 -0
  21. package/dist/metrics.d.ts.map +1 -0
  22. package/dist/metrics.js +97 -0
  23. package/dist/metrics.js.map +1 -0
  24. package/dist/profiles.d.ts +1 -1
  25. package/dist/profiles.d.ts.map +1 -1
  26. package/dist/profiles.js +239 -108
  27. package/dist/profiles.js.map +1 -1
  28. package/dist/prompts.js +1 -1
  29. package/dist/prompts.js.map +1 -1
  30. package/dist/tools/definitions.d.ts +104 -0
  31. package/dist/tools/definitions.d.ts.map +1 -0
  32. package/dist/tools/definitions.js +171 -0
  33. package/dist/tools/definitions.js.map +1 -0
  34. package/dist/tools/handlers/get-context.d.ts +12 -0
  35. package/dist/tools/handlers/get-context.d.ts.map +1 -0
  36. package/dist/tools/handlers/get-context.js +118 -0
  37. package/dist/tools/handlers/get-context.js.map +1 -0
  38. package/dist/tools/handlers/health.d.ts +11 -0
  39. package/dist/tools/handlers/health.d.ts.map +1 -0
  40. package/dist/tools/handlers/health.js +57 -0
  41. package/dist/tools/handlers/health.js.map +1 -0
  42. package/dist/tools/handlers/index.d.ts +11 -0
  43. package/dist/tools/handlers/index.d.ts.map +1 -0
  44. package/dist/tools/handlers/index.js +11 -0
  45. package/dist/tools/handlers/index.js.map +1 -0
  46. package/dist/tools/handlers/init.d.ts +12 -0
  47. package/dist/tools/handlers/init.d.ts.map +1 -0
  48. package/dist/tools/handlers/init.js +102 -0
  49. package/dist/tools/handlers/init.js.map +1 -0
  50. package/dist/tools/handlers/profiles.d.ts +11 -0
  51. package/dist/tools/handlers/profiles.d.ts.map +1 -0
  52. package/dist/tools/handlers/profiles.js +25 -0
  53. package/dist/tools/handlers/profiles.js.map +1 -0
  54. package/dist/tools/handlers/search.d.ts +12 -0
  55. package/dist/tools/handlers/search.d.ts.map +1 -0
  56. package/dist/tools/handlers/search.js +58 -0
  57. package/dist/tools/handlers/search.js.map +1 -0
  58. package/dist/tools/handlers/validate.d.ts +12 -0
  59. package/dist/tools/handlers/validate.d.ts.map +1 -0
  60. package/dist/tools/handlers/validate.js +76 -0
  61. package/dist/tools/handlers/validate.js.map +1 -0
  62. package/dist/tools/index.d.ts +22 -0
  63. package/dist/tools/index.d.ts.map +1 -0
  64. package/dist/tools/index.js +72 -0
  65. package/dist/tools/index.js.map +1 -0
  66. package/dist/tools/schemas.d.ts +29 -0
  67. package/dist/tools/schemas.d.ts.map +1 -0
  68. package/dist/tools/schemas.js +20 -0
  69. package/dist/tools/schemas.js.map +1 -0
  70. package/dist/tools.js +2 -2
  71. package/dist/tools.js.map +1 -1
  72. package/dist/types.d.ts +141 -71
  73. package/dist/types.d.ts.map +1 -1
  74. package/dist/types.js +92 -40
  75. package/dist/types.js.map +1 -1
  76. package/package.json +2 -2
  77. package/profiles/examples/microservice-kafka.yaml +122 -0
  78. package/profiles/examples/startup-fast.yaml +67 -0
  79. package/profiles/examples/strict-enterprise.yaml +62 -0
  80. package/profiles/templates/angular.yaml +614 -0
  81. package/profiles/templates/csharp-dotnet.yaml +529 -0
  82. package/profiles/templates/flutter.yaml +547 -0
  83. package/profiles/templates/go.yaml +1276 -0
  84. package/profiles/templates/java-spring-backend.yaml +326 -0
  85. package/profiles/templates/kotlin-spring.yaml +417 -0
  86. package/profiles/templates/nextjs.yaml +536 -0
  87. package/profiles/templates/nodejs.yaml +594 -0
  88. package/profiles/templates/python.yaml +546 -0
  89. package/profiles/templates/react.yaml +456 -0
  90. package/profiles/templates/rust.yaml +508 -0
  91. package/profiles/templates/vue.yaml +483 -0
package/dist/agent.js CHANGED
@@ -1,187 +1,11 @@
1
1
  import { access, readFile } from 'node:fs/promises';
2
2
  import { join } from 'node:path';
3
- import { ProjectConfigSchema, } from './types.js';
4
- /**
5
- * Default guardrails by task type.
6
- */
7
- const DEFAULT_GUARDRAILS = {
8
- feature: {
9
- taskType: 'feature',
10
- mandatory: [
11
- 'Follow TDD: write tests before implementation',
12
- 'Ensure 80%+ unit test coverage for new code',
13
- 'Apply SOLID principles',
14
- 'Follow project naming conventions',
15
- 'Document public APIs',
16
- 'Validate inputs at boundaries',
17
- ],
18
- recommended: [
19
- 'Keep methods under 20 lines',
20
- 'Keep classes under 200 lines',
21
- 'Use dependency injection',
22
- 'Apply single responsibility principle',
23
- 'Write integration tests for critical paths',
24
- ],
25
- avoid: [
26
- 'God classes or methods',
27
- 'Hard-coded configuration',
28
- 'Mixing business logic with infrastructure',
29
- 'Circular dependencies',
30
- 'Over-engineering for hypothetical futures',
31
- ],
32
- },
33
- bugfix: {
34
- taskType: 'bugfix',
35
- mandatory: [
36
- 'First write a failing test that reproduces the bug',
37
- 'Make the minimum change necessary to fix',
38
- 'Verify fix does not break existing tests',
39
- 'Document root cause in commit message',
40
- ],
41
- recommended: [
42
- 'Add regression test if not already covered',
43
- 'Consider if bug exists elsewhere (same pattern)',
44
- 'Update documentation if behavior changed',
45
- ],
46
- avoid: [
47
- 'Refactoring unrelated code',
48
- 'Adding features while fixing bugs',
49
- 'Changing APIs without necessity',
50
- 'Fixing symptoms instead of root cause',
51
- ],
52
- },
53
- refactor: {
54
- taskType: 'refactor',
55
- mandatory: [
56
- 'All existing tests must pass before AND after',
57
- 'No behavior changes (only structure)',
58
- 'Commit in small, reviewable increments',
59
- 'Extract one concept at a time',
60
- ],
61
- recommended: [
62
- 'Increase test coverage if below threshold',
63
- 'Apply design patterns where appropriate',
64
- 'Improve naming and readability',
65
- 'Remove dead code',
66
- ],
67
- avoid: [
68
- 'Changing behavior during refactor',
69
- 'Big bang refactoring',
70
- 'Refactoring without tests',
71
- 'Premature abstraction',
72
- ],
73
- },
74
- test: {
75
- taskType: 'test',
76
- mandatory: [
77
- 'Follow Arrange-Act-Assert pattern',
78
- 'One logical assertion per test',
79
- 'Test names describe behavior (should_X_when_Y)',
80
- 'Tests must be independent and repeatable',
81
- ],
82
- recommended: [
83
- 'Use test fixtures for complex setup',
84
- 'Mock external dependencies',
85
- 'Test edge cases and error conditions',
86
- 'Use parameterized tests for variations',
87
- ],
88
- avoid: [
89
- 'Testing implementation details',
90
- 'Flaky tests',
91
- 'Tests that depend on order',
92
- 'Assertions without clear purpose',
93
- ],
94
- },
95
- documentation: {
96
- taskType: 'documentation',
97
- mandatory: [
98
- 'Use clear, concise language',
99
- 'Include code examples where applicable',
100
- 'Keep documentation close to code',
101
- 'Document the WHY, not just the WHAT',
102
- ],
103
- recommended: [
104
- 'Use consistent formatting',
105
- 'Include diagrams for complex flows',
106
- 'Document assumptions and constraints',
107
- 'Keep README updated',
108
- ],
109
- avoid: [
110
- 'Outdated documentation',
111
- 'Duplicating code in comments',
112
- 'Over-documenting obvious code',
113
- 'Documentation without context',
114
- ],
115
- },
116
- performance: {
117
- taskType: 'performance',
118
- mandatory: [
119
- 'Measure before optimizing (baseline metrics)',
120
- 'Profile to identify actual bottlenecks',
121
- 'Document performance requirements',
122
- 'Add performance tests/benchmarks',
123
- ],
124
- recommended: [
125
- 'Consider caching strategies',
126
- 'Optimize database queries',
127
- 'Use async/non-blocking where appropriate',
128
- 'Consider lazy loading',
129
- ],
130
- avoid: [
131
- 'Premature optimization',
132
- 'Optimizing without measurements',
133
- 'Sacrificing readability without significant gain',
134
- 'Micro-optimizations in non-critical paths',
135
- ],
136
- },
137
- security: {
138
- taskType: 'security',
139
- mandatory: [
140
- 'Validate ALL user inputs',
141
- 'Use parameterized queries (prevent SQL injection)',
142
- 'Escape output (prevent XSS)',
143
- 'Apply principle of least privilege',
144
- 'Never log sensitive data',
145
- ],
146
- recommended: [
147
- 'Use established security libraries',
148
- 'Implement rate limiting',
149
- 'Add security headers',
150
- 'Use HTTPS everywhere',
151
- 'Implement proper authentication/authorization',
152
- ],
153
- avoid: [
154
- 'Rolling your own crypto',
155
- 'Hardcoded secrets',
156
- 'Trusting client-side validation alone',
157
- 'Exposing stack traces to users',
158
- 'Using deprecated crypto algorithms',
159
- ],
160
- },
161
- infrastructure: {
162
- taskType: 'infrastructure',
163
- mandatory: [
164
- 'Infrastructure as Code (no manual changes)',
165
- 'Version control all configurations',
166
- 'Test in staging before production',
167
- 'Document deployment procedures',
168
- ],
169
- recommended: [
170
- 'Use immutable infrastructure',
171
- 'Implement health checks',
172
- 'Set up proper monitoring/alerting',
173
- 'Plan for rollback',
174
- ],
175
- avoid: [
176
- 'Manual server configuration',
177
- 'Snowflake servers',
178
- 'Deploying directly to production',
179
- 'Ignoring resource limits',
180
- ],
181
- },
182
- };
3
+ import { formatGuardrailsAsMarkdown, getGuardrails as getGuardrailsFromFiles, loadGuardrails, } from './guardrails.js';
4
+ import { ProjectConfigSchema } from './types.js';
5
+ // Re-export guardrails utilities for external use
6
+ export { loadGuardrails, formatGuardrailsAsMarkdown };
183
7
  const STACK_PATTERNS = [
184
- // Java Spring
8
+ // Java Spring (check for Spring-specific files)
185
9
  {
186
10
  files: ['pom.xml', 'build.gradle', 'build.gradle.kts'],
187
11
  language: 'Java',
@@ -191,6 +15,64 @@ const STACK_PATTERNS = [
191
15
  profile: 'java-spring-backend',
192
16
  confidence: 'high',
193
17
  },
18
+ // Kotlin Spring (check for Kotlin + Spring)
19
+ {
20
+ files: ['build.gradle.kts', 'settings.gradle.kts'],
21
+ language: 'Kotlin',
22
+ framework: 'Spring Boot',
23
+ buildTool: 'Gradle',
24
+ testFramework: 'JUnit5/Kotest',
25
+ profile: 'kotlin-spring',
26
+ confidence: 'medium',
27
+ },
28
+ // Go
29
+ {
30
+ files: ['go.mod', 'go.sum'],
31
+ language: 'Go',
32
+ buildTool: 'go',
33
+ testFramework: 'testing',
34
+ profile: 'go',
35
+ confidence: 'high',
36
+ },
37
+ // Rust
38
+ {
39
+ files: ['Cargo.toml', 'Cargo.lock'],
40
+ language: 'Rust',
41
+ buildTool: 'cargo',
42
+ testFramework: 'built-in',
43
+ profile: 'rust',
44
+ confidence: 'high',
45
+ },
46
+ // C# / .NET
47
+ {
48
+ files: ['*.csproj', '*.sln'],
49
+ language: 'C#',
50
+ framework: 'ASP.NET Core',
51
+ buildTool: 'dotnet',
52
+ testFramework: 'xUnit',
53
+ profile: 'csharp-dotnet',
54
+ confidence: 'high',
55
+ },
56
+ // Flutter / Dart
57
+ {
58
+ files: ['pubspec.yaml', 'pubspec.lock'],
59
+ language: 'Dart',
60
+ framework: 'Flutter',
61
+ buildTool: 'flutter',
62
+ testFramework: 'flutter_test',
63
+ profile: 'flutter',
64
+ confidence: 'high',
65
+ },
66
+ // Next.js (must come before generic React)
67
+ {
68
+ files: ['next.config.js', 'next.config.mjs', 'next.config.ts'],
69
+ language: 'TypeScript',
70
+ framework: 'Next.js',
71
+ buildTool: 'npm/pnpm',
72
+ testFramework: 'Vitest/Jest',
73
+ profile: 'nextjs',
74
+ confidence: 'high',
75
+ },
194
76
  // Angular (must come before generic Node.js)
195
77
  {
196
78
  files: ['angular.json'],
@@ -201,6 +83,26 @@ const STACK_PATTERNS = [
201
83
  profile: 'angular',
202
84
  confidence: 'high',
203
85
  },
86
+ // Vue.js
87
+ {
88
+ files: ['vue.config.js', 'vite.config.ts', 'nuxt.config.ts'],
89
+ language: 'TypeScript',
90
+ framework: 'Vue',
91
+ buildTool: 'Vite',
92
+ testFramework: 'Vitest',
93
+ profile: 'vue',
94
+ confidence: 'medium',
95
+ },
96
+ // React (Vite)
97
+ {
98
+ files: ['package.json', 'vite.config.ts', 'vite.config.js'],
99
+ language: 'TypeScript',
100
+ framework: 'React',
101
+ buildTool: 'Vite',
102
+ testFramework: 'Vitest',
103
+ profile: 'react',
104
+ confidence: 'medium',
105
+ },
204
106
  // Node.js/TypeScript
205
107
  {
206
108
  files: ['package.json', 'tsconfig.json'],
@@ -221,16 +123,6 @@ const STACK_PATTERNS = [
221
123
  profile: 'python',
222
124
  confidence: 'high',
223
125
  },
224
- // React (Vite)
225
- {
226
- files: ['package.json', 'vite.config.ts', 'vite.config.js'],
227
- language: 'TypeScript',
228
- framework: 'React',
229
- buildTool: 'Vite',
230
- testFramework: 'Vitest',
231
- profile: 'react',
232
- confidence: 'medium',
233
- },
234
126
  // Generic JavaScript
235
127
  {
236
128
  files: ['package.json'],
@@ -341,10 +233,18 @@ export async function detectProjectStack(projectDir) {
341
233
  }
342
234
  /**
343
235
  * Get guardrails for a specific task type.
236
+ * Loads from YAML files and merges with project-specific overrides.
344
237
  */
345
- export function getGuardrails(taskType, projectConfig) {
346
- // Start with defaults
347
- const guardrails = { ...DEFAULT_GUARDRAILS[taskType] };
238
+ export async function getGuardrails(taskType, projectConfig) {
239
+ // Load from YAML files
240
+ const baseGuardrails = await getGuardrailsFromFiles(taskType);
241
+ // Create a copy to avoid mutating the cached version
242
+ const guardrails = {
243
+ ...baseGuardrails,
244
+ mandatory: [...baseGuardrails.mandatory],
245
+ recommended: [...baseGuardrails.recommended],
246
+ avoid: [...baseGuardrails.avoid],
247
+ };
348
248
  // Override with project-specific guardrails if available
349
249
  if (projectConfig?.guardrails?.[taskType]) {
350
250
  const projectGuardrails = projectConfig.guardrails[taskType];
@@ -603,27 +503,5 @@ export function getTechnicalDecision(category, _context, projectConfig) {
603
503
  reasoning: `${decision.defaultRecommendation} is recommended as the default choice for ${category} based on industry best practices and versatility.`,
604
504
  };
605
505
  }
606
- /**
607
- * Format guardrails as markdown.
608
- */
609
- export function formatGuardrailsAsMarkdown(guardrails) {
610
- const lines = [
611
- `# Guardrails for ${guardrails.taskType.toUpperCase()} task`,
612
- '',
613
- '## MANDATORY (must follow)',
614
- '',
615
- ];
616
- for (const rule of guardrails.mandatory) {
617
- lines.push(`- ✅ ${rule}`);
618
- }
619
- lines.push('', '## RECOMMENDED (should follow)', '');
620
- for (const rule of guardrails.recommended) {
621
- lines.push(`- 💡 ${rule}`);
622
- }
623
- lines.push('', '## AVOID (do not do)', '');
624
- for (const rule of guardrails.avoid) {
625
- lines.push(`- ❌ ${rule}`);
626
- }
627
- return lines.join('\n');
628
- }
506
+ // formatGuardrailsAsMarkdown is now exported from guardrails.ts
629
507
  //# sourceMappingURL=agent.js.map
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Base error class for Corbat MCP errors.
3
+ * All custom errors should extend this class.
4
+ */
5
+ export declare class CorbatError extends Error {
6
+ readonly code: string;
7
+ readonly details?: Record<string, unknown> | undefined;
8
+ constructor(message: string, code: string, details?: Record<string, unknown> | undefined);
9
+ /**
10
+ * Convert to a plain object for serialization.
11
+ */
12
+ toJSON(): Record<string, unknown>;
13
+ }
14
+ /**
15
+ * Error when a profile is not found.
16
+ */
17
+ export declare class ProfileNotFoundError extends CorbatError {
18
+ constructor(profileId: string, availableProfiles?: string[]);
19
+ }
20
+ /**
21
+ * Error when configuration is invalid.
22
+ */
23
+ export declare class InvalidConfigError extends CorbatError {
24
+ constructor(path: string, validationErrors: string[]);
25
+ }
26
+ /**
27
+ * Error when project stack detection fails.
28
+ */
29
+ export declare class StackDetectionError extends CorbatError {
30
+ constructor(projectDir: string, reason: string);
31
+ }
32
+ /**
33
+ * Error when a guardrail file is invalid.
34
+ */
35
+ export declare class InvalidGuardrailError extends CorbatError {
36
+ constructor(taskType: string, reason: string);
37
+ }
38
+ /**
39
+ * Error when a tool receives invalid input.
40
+ */
41
+ export declare class ToolInputError extends CorbatError {
42
+ constructor(toolName: string, reason: string, input?: unknown);
43
+ }
44
+ /**
45
+ * Error when a resource is not found.
46
+ */
47
+ export declare class ResourceNotFoundError extends CorbatError {
48
+ constructor(resourceUri: string);
49
+ }
50
+ /**
51
+ * Check if an error is a CorbatError.
52
+ */
53
+ export declare function isCorbatError(error: unknown): error is CorbatError;
54
+ /**
55
+ * Format an error for MCP response.
56
+ */
57
+ export declare function formatErrorForResponse(error: unknown): string;
58
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAGlB,IAAI,EAAE,MAAM;aACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjD,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;IAWnD;;OAEG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAQlC;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;gBACvC,SAAS,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAM,EAAO;CAIhE;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;gBACrC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE;CAIrD;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;gBACtC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAI/C;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;gBACxC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAI7C;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;gBACjC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAI9D;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;gBACxC,WAAW,EAAE,MAAM;CAIhC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAElE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAoB7D"}
package/dist/errors.js ADDED
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Base error class for Corbat MCP errors.
3
+ * All custom errors should extend this class.
4
+ */
5
+ export class CorbatError extends Error {
6
+ code;
7
+ details;
8
+ constructor(message, code, details) {
9
+ super(message);
10
+ this.code = code;
11
+ this.details = details;
12
+ this.name = 'CorbatError';
13
+ // Maintains proper stack trace for V8
14
+ if (Error.captureStackTrace) {
15
+ Error.captureStackTrace(this, this.constructor);
16
+ }
17
+ }
18
+ /**
19
+ * Convert to a plain object for serialization.
20
+ */
21
+ toJSON() {
22
+ return {
23
+ name: this.name,
24
+ code: this.code,
25
+ message: this.message,
26
+ details: this.details,
27
+ };
28
+ }
29
+ }
30
+ /**
31
+ * Error when a profile is not found.
32
+ */
33
+ export class ProfileNotFoundError extends CorbatError {
34
+ constructor(profileId, availableProfiles = []) {
35
+ super(`Profile "${profileId}" not found`, 'PROFILE_NOT_FOUND', { profileId, availableProfiles });
36
+ this.name = 'ProfileNotFoundError';
37
+ }
38
+ }
39
+ /**
40
+ * Error when configuration is invalid.
41
+ */
42
+ export class InvalidConfigError extends CorbatError {
43
+ constructor(path, validationErrors) {
44
+ super(`Invalid configuration at ${path}`, 'INVALID_CONFIG', { path, validationErrors });
45
+ this.name = 'InvalidConfigError';
46
+ }
47
+ }
48
+ /**
49
+ * Error when project stack detection fails.
50
+ */
51
+ export class StackDetectionError extends CorbatError {
52
+ constructor(projectDir, reason) {
53
+ super(`Could not detect stack in ${projectDir}: ${reason}`, 'STACK_DETECTION_FAILED', { projectDir, reason });
54
+ this.name = 'StackDetectionError';
55
+ }
56
+ }
57
+ /**
58
+ * Error when a guardrail file is invalid.
59
+ */
60
+ export class InvalidGuardrailError extends CorbatError {
61
+ constructor(taskType, reason) {
62
+ super(`Invalid guardrail for task type "${taskType}": ${reason}`, 'INVALID_GUARDRAIL', { taskType, reason });
63
+ this.name = 'InvalidGuardrailError';
64
+ }
65
+ }
66
+ /**
67
+ * Error when a tool receives invalid input.
68
+ */
69
+ export class ToolInputError extends CorbatError {
70
+ constructor(toolName, reason, input) {
71
+ super(`Invalid input for tool "${toolName}": ${reason}`, 'TOOL_INPUT_ERROR', { toolName, reason, input });
72
+ this.name = 'ToolInputError';
73
+ }
74
+ }
75
+ /**
76
+ * Error when a resource is not found.
77
+ */
78
+ export class ResourceNotFoundError extends CorbatError {
79
+ constructor(resourceUri) {
80
+ super(`Resource not found: ${resourceUri}`, 'RESOURCE_NOT_FOUND', { resourceUri });
81
+ this.name = 'ResourceNotFoundError';
82
+ }
83
+ }
84
+ /**
85
+ * Check if an error is a CorbatError.
86
+ */
87
+ export function isCorbatError(error) {
88
+ return error instanceof CorbatError;
89
+ }
90
+ /**
91
+ * Format an error for MCP response.
92
+ */
93
+ export function formatErrorForResponse(error) {
94
+ if (isCorbatError(error)) {
95
+ let message = `[${error.code}] ${error.message}`;
96
+ if (error.details) {
97
+ const detailsStr = Object.entries(error.details)
98
+ .filter(([key]) => key !== 'input') // Don't include potentially large input
99
+ .map(([key, value]) => `${key}: ${JSON.stringify(value)}`)
100
+ .join(', ');
101
+ if (detailsStr) {
102
+ message += `\n\nDetails: ${detailsStr}`;
103
+ }
104
+ }
105
+ return message;
106
+ }
107
+ if (error instanceof Error) {
108
+ return error.message;
109
+ }
110
+ return String(error);
111
+ }
112
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import type { Guardrails, TaskType } from './types.js';
2
+ /**
3
+ * Extended guardrails with workflow guidance.
4
+ */
5
+ export interface ExtendedGuardrails extends Guardrails {
6
+ workflow?: {
7
+ steps: Array<{
8
+ name: string;
9
+ description: string;
10
+ actions: string[];
11
+ }>;
12
+ };
13
+ patterns?: Record<string, unknown>;
14
+ antiPatterns?: Record<string, unknown>;
15
+ commonPatterns?: Record<string, unknown>;
16
+ codeSmells?: Record<string, unknown>;
17
+ }
18
+ /**
19
+ * Loads all guardrails from the guardrails directory.
20
+ * Uses caching to avoid repeated file system reads.
21
+ */
22
+ export declare function loadGuardrails(guardrailsDir?: string): Promise<Record<TaskType, ExtendedGuardrails>>;
23
+ /**
24
+ * Gets guardrails for a specific task type.
25
+ */
26
+ export declare function getGuardrails(taskType: TaskType, guardrailsDir?: string): Promise<ExtendedGuardrails>;
27
+ /**
28
+ * Clears the guardrails cache.
29
+ */
30
+ export declare function clearGuardrailsCache(): void;
31
+ /**
32
+ * Formats guardrails as markdown with workflow guidance.
33
+ */
34
+ export declare function formatGuardrailsAsMarkdown(guardrails: ExtendedGuardrails): string;
35
+ //# sourceMappingURL=guardrails.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guardrails.d.ts","sourceRoot":"","sources":["../src/guardrails.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKvD;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,EAAE,CAAC;SACnB,CAAC,CAAC;KACJ,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAyBD;;;GAGG;AACH,wBAAsB,cAAc,CAClC,aAAa,GAAE,MAA+B,GAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CA4C/C;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAG3G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAG3C;AAwLD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,kBAAkB,GAAG,MAAM,CAqCjF"}