mcp-ai-agent-guidelines 0.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/LICENSE +21 -0
- package/README.md +336 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +307 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/index.d.ts +21 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +504 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/resources/index.d.ts +14 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +92 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/structured.d.ts +47 -0
- package/dist/resources/structured.d.ts.map +1 -0
- package/dist/resources/structured.js +857 -0
- package/dist/resources/structured.js.map +1 -0
- package/dist/tools/code-hygiene-analyzer.d.ts +7 -0
- package/dist/tools/code-hygiene-analyzer.d.ts.map +1 -0
- package/dist/tools/code-hygiene-analyzer.js +176 -0
- package/dist/tools/code-hygiene-analyzer.js.map +1 -0
- package/dist/tools/config/guidelines-config.d.ts +16 -0
- package/dist/tools/config/guidelines-config.d.ts.map +1 -0
- package/dist/tools/config/guidelines-config.js +236 -0
- package/dist/tools/config/guidelines-config.js.map +1 -0
- package/dist/tools/config/model-config.d.ts +33 -0
- package/dist/tools/config/model-config.d.ts.map +1 -0
- package/dist/tools/config/model-config.js +206 -0
- package/dist/tools/config/model-config.js.map +1 -0
- package/dist/tools/guidelines-validator.d.ts +7 -0
- package/dist/tools/guidelines-validator.d.ts.map +1 -0
- package/dist/tools/guidelines-validator.js +178 -0
- package/dist/tools/guidelines-validator.js.map +1 -0
- package/dist/tools/hierarchical-prompt-builder.d.ts +7 -0
- package/dist/tools/hierarchical-prompt-builder.d.ts.map +1 -0
- package/dist/tools/hierarchical-prompt-builder.js +147 -0
- package/dist/tools/hierarchical-prompt-builder.js.map +1 -0
- package/dist/tools/memory-context-optimizer.d.ts +7 -0
- package/dist/tools/memory-context-optimizer.d.ts.map +1 -0
- package/dist/tools/memory-context-optimizer.js +256 -0
- package/dist/tools/memory-context-optimizer.js.map +1 -0
- package/dist/tools/mermaid-diagram-generator.d.ts +7 -0
- package/dist/tools/mermaid-diagram-generator.d.ts.map +1 -0
- package/dist/tools/mermaid-diagram-generator.js +312 -0
- package/dist/tools/mermaid-diagram-generator.js.map +1 -0
- package/dist/tools/model-compatibility-checker.d.ts +7 -0
- package/dist/tools/model-compatibility-checker.d.ts.map +1 -0
- package/dist/tools/model-compatibility-checker.js +204 -0
- package/dist/tools/model-compatibility-checker.js.map +1 -0
- package/dist/tools/sprint-timeline-calculator.d.ts +7 -0
- package/dist/tools/sprint-timeline-calculator.d.ts.map +1 -0
- package/dist/tools/sprint-timeline-calculator.js +240 -0
- package/dist/tools/sprint-timeline-calculator.js.map +1 -0
- package/package.json +75 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structured.js","sourceRoot":"","sources":["../../src/resources/structured.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-hygiene-analyzer.d.ts","sourceRoot":"","sources":["../../src/tools/code-hygiene-analyzer.ts"],"names":[],"mappings":"AAaA,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,OAAO;;;;;GAgEtD"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
const CodeHygieneSchema = z.object({
|
|
3
|
+
codeContent: z.string(),
|
|
4
|
+
language: z.string(),
|
|
5
|
+
framework: z.string().optional(),
|
|
6
|
+
includeReferences: z.boolean().optional().default(true),
|
|
7
|
+
includeMetadata: z.boolean().optional().default(true),
|
|
8
|
+
inputFile: z.string().optional(),
|
|
9
|
+
});
|
|
10
|
+
export async function codeHygieneAnalyzer(args) {
|
|
11
|
+
const input = CodeHygieneSchema.parse(args);
|
|
12
|
+
const analysis = analyzeCodeHygiene(input);
|
|
13
|
+
const references = input.includeReferences
|
|
14
|
+
? [
|
|
15
|
+
"- Refactoring legacy code best practices: https://graphite.dev/guides/refactoring-legacy-code-best-practices-techniques",
|
|
16
|
+
"- General code hygiene checklist (community resources)",
|
|
17
|
+
].join("\n")
|
|
18
|
+
: undefined;
|
|
19
|
+
const metadata = input.includeMetadata
|
|
20
|
+
? [
|
|
21
|
+
"### Metadata",
|
|
22
|
+
`- Updated: ${new Date().toISOString().slice(0, 10)}`,
|
|
23
|
+
"- Source tool: mcp_ai-agent-guid_code-hygiene-analyzer",
|
|
24
|
+
input.inputFile ? `- Input file: ${input.inputFile}` : undefined,
|
|
25
|
+
"",
|
|
26
|
+
]
|
|
27
|
+
.filter(Boolean)
|
|
28
|
+
.join("\n")
|
|
29
|
+
: "";
|
|
30
|
+
return {
|
|
31
|
+
content: [
|
|
32
|
+
{
|
|
33
|
+
type: "text",
|
|
34
|
+
text: `## 🧹 Code Hygiene Analysis Report
|
|
35
|
+
|
|
36
|
+
${metadata}
|
|
37
|
+
|
|
38
|
+
### 📋 Summary
|
|
39
|
+
| Key | Value |
|
|
40
|
+
|---|---|
|
|
41
|
+
| Language | ${input.language} |
|
|
42
|
+
| Framework | ${input.framework || "Not specified"} |
|
|
43
|
+
| Issues Found | ${analysis.issues.length} |
|
|
44
|
+
| Recommendations | ${analysis.recommendations.length} |
|
|
45
|
+
|
|
46
|
+
### ❗ Issues Detected
|
|
47
|
+
${analysis.issues.map((issue, index) => `${index + 1}. **${issue.type}**: ${issue.description}`).join("\n")}
|
|
48
|
+
|
|
49
|
+
${analysis.issues.length > 0
|
|
50
|
+
? `### 🗂️ Issues Table\n| Type | Description |\n|---|---|\n${analysis.issues
|
|
51
|
+
.map((issue) => `| ${issue.type} | ${issue.description} |`)
|
|
52
|
+
.join("\n")}\n`
|
|
53
|
+
: ""}
|
|
54
|
+
|
|
55
|
+
### ✅ Recommendations
|
|
56
|
+
${analysis.recommendations.map((rec, index) => `${index + 1}. ${rec}`).join("\n")}
|
|
57
|
+
|
|
58
|
+
### 🧮 Hygiene Score
|
|
59
|
+
**${analysis.score}/100** - ${analysis.scoreDescription}
|
|
60
|
+
|
|
61
|
+
### ▶️ Next Steps
|
|
62
|
+
${analysis.nextSteps.map((step, index) => `${index + 1}. ${step}`).join("\n")}
|
|
63
|
+
${references ? `\n### 🔗 References\n${references}\n` : ""}
|
|
64
|
+
\n### ⚠️ Disclaimer\n- Findings are heuristic and may not capture project-specific conventions. Validate changes via code review and tests.
|
|
65
|
+
`,
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function analyzeCodeHygiene(input) {
|
|
71
|
+
const issues = [];
|
|
72
|
+
const recommendations = [];
|
|
73
|
+
const nextSteps = [];
|
|
74
|
+
const code = input.codeContent;
|
|
75
|
+
const language = input.language.toLowerCase();
|
|
76
|
+
// Common code hygiene checks
|
|
77
|
+
if (code.includes("TODO") || code.includes("FIXME")) {
|
|
78
|
+
issues.push({
|
|
79
|
+
type: "Technical Debt",
|
|
80
|
+
description: "Found TODO or FIXME comments indicating incomplete work",
|
|
81
|
+
});
|
|
82
|
+
recommendations.push("Address pending TODO and FIXME items before production");
|
|
83
|
+
}
|
|
84
|
+
if (code.includes("console.log") &&
|
|
85
|
+
(language === "javascript" || language === "typescript")) {
|
|
86
|
+
issues.push({
|
|
87
|
+
type: "Debug Code",
|
|
88
|
+
description: "Found console.log statements that should be removed in production",
|
|
89
|
+
});
|
|
90
|
+
recommendations.push("Remove debug console.log statements");
|
|
91
|
+
}
|
|
92
|
+
if (code.includes("print(") && language === "python") {
|
|
93
|
+
issues.push({
|
|
94
|
+
type: "Debug Code",
|
|
95
|
+
description: "Found print statements that should use proper logging",
|
|
96
|
+
});
|
|
97
|
+
recommendations.push("Replace print statements with proper logging");
|
|
98
|
+
}
|
|
99
|
+
// Check for long functions (simple heuristic)
|
|
100
|
+
const lines = code.split("\n");
|
|
101
|
+
let functionLines = 0;
|
|
102
|
+
let inFunction = false;
|
|
103
|
+
for (const line of lines) {
|
|
104
|
+
if (line.includes("function") ||
|
|
105
|
+
line.includes("def ") ||
|
|
106
|
+
(line.includes("const ") && line.includes("=>"))) {
|
|
107
|
+
inFunction = true;
|
|
108
|
+
functionLines = 1;
|
|
109
|
+
}
|
|
110
|
+
else if (inFunction) {
|
|
111
|
+
functionLines++;
|
|
112
|
+
if (line.trim() === "}" ||
|
|
113
|
+
(language === "python" && line.match(/^[a-zA-Z]/) && functionLines > 1)) {
|
|
114
|
+
if (functionLines > 50) {
|
|
115
|
+
issues.push({
|
|
116
|
+
type: "Code Complexity",
|
|
117
|
+
description: `Found function with ${functionLines} lines - consider breaking into smaller functions`,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
inFunction = false;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Check for outdated patterns
|
|
125
|
+
if (language === "javascript" || language === "typescript") {
|
|
126
|
+
if (code.includes("var ")) {
|
|
127
|
+
issues.push({
|
|
128
|
+
type: "Outdated Pattern",
|
|
129
|
+
description: "Using var instead of let/const",
|
|
130
|
+
});
|
|
131
|
+
recommendations.push("Replace var declarations with let or const");
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// Check for missing error handling
|
|
135
|
+
if (code.includes("await ") &&
|
|
136
|
+
!code.includes("try") &&
|
|
137
|
+
!code.includes("catch")) {
|
|
138
|
+
issues.push({
|
|
139
|
+
type: "Error Handling",
|
|
140
|
+
description: "Async code without proper error handling",
|
|
141
|
+
});
|
|
142
|
+
recommendations.push("Add try-catch blocks around async operations");
|
|
143
|
+
}
|
|
144
|
+
// Calculate score
|
|
145
|
+
let score = 100;
|
|
146
|
+
score -= issues.length * 10;
|
|
147
|
+
score = Math.max(0, score);
|
|
148
|
+
let scoreDescription = "";
|
|
149
|
+
if (score >= 90)
|
|
150
|
+
scoreDescription = "Excellent";
|
|
151
|
+
else if (score >= 80)
|
|
152
|
+
scoreDescription = "Good";
|
|
153
|
+
else if (score >= 70)
|
|
154
|
+
scoreDescription = "Fair";
|
|
155
|
+
else if (score >= 60)
|
|
156
|
+
scoreDescription = "Needs Improvement";
|
|
157
|
+
else
|
|
158
|
+
scoreDescription = "Poor";
|
|
159
|
+
// Generate next steps
|
|
160
|
+
if (issues.length === 0) {
|
|
161
|
+
nextSteps.push("Code hygiene looks good! Consider adding automated linting if not already present.");
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
nextSteps.push("Address the identified issues in order of priority");
|
|
165
|
+
nextSteps.push("Set up automated code quality checks (ESLint, Prettier, Biome, etc.)");
|
|
166
|
+
nextSteps.push("Consider implementing pre-commit hooks");
|
|
167
|
+
}
|
|
168
|
+
return {
|
|
169
|
+
issues,
|
|
170
|
+
recommendations,
|
|
171
|
+
score,
|
|
172
|
+
scoreDescription,
|
|
173
|
+
nextSteps,
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=code-hygiene-analyzer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-hygiene-analyzer.js","sourceRoot":"","sources":["../../src/tools/code-hygiene-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface Criterion {
|
|
2
|
+
id: string;
|
|
3
|
+
keywords: string[];
|
|
4
|
+
weight: number;
|
|
5
|
+
strength: string;
|
|
6
|
+
issue: string;
|
|
7
|
+
recommendation: string;
|
|
8
|
+
optional?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface CategoryConfig {
|
|
11
|
+
base: number;
|
|
12
|
+
criteria: Criterion[];
|
|
13
|
+
bestPractices: string[];
|
|
14
|
+
}
|
|
15
|
+
export declare const CATEGORY_CONFIG: Record<string, CategoryConfig>;
|
|
16
|
+
//# sourceMappingURL=guidelines-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guidelines-config.d.ts","sourceRoot":"","sources":["../../../src/tools/config/guidelines-config.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,SAAS;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AACD,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CA6O1D,CAAC"}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
export const CATEGORY_CONFIG = {
|
|
2
|
+
prompting: {
|
|
3
|
+
base: 50,
|
|
4
|
+
criteria: [
|
|
5
|
+
{
|
|
6
|
+
id: "hierarchy",
|
|
7
|
+
keywords: ["hierarchy", "layer", "structure"],
|
|
8
|
+
weight: 15,
|
|
9
|
+
strength: "Uses hierarchical prompt structuring approach",
|
|
10
|
+
issue: "Missing hierarchical prompt structure",
|
|
11
|
+
recommendation: "Implement layered prompt architecture (context → goal → requirements → format)",
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
id: "context",
|
|
15
|
+
keywords: ["context", "background"],
|
|
16
|
+
weight: 10,
|
|
17
|
+
strength: "Provides clear contextual information",
|
|
18
|
+
issue: "Lacks clear context establishment",
|
|
19
|
+
recommendation: "Establish comprehensive context before instructions",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
id: "specificity",
|
|
23
|
+
keywords: ["specific", "detail", "precise"],
|
|
24
|
+
weight: 10,
|
|
25
|
+
strength: "Emphasizes specificity in instructions",
|
|
26
|
+
issue: "May lack sufficient specificity",
|
|
27
|
+
recommendation: "Be more specific in requirements and constraints",
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
id: "iteration",
|
|
31
|
+
keywords: ["iterative", "refine", "improve"],
|
|
32
|
+
weight: 10,
|
|
33
|
+
strength: "Includes iterative refinement process",
|
|
34
|
+
issue: "Missing iterative refinement loop",
|
|
35
|
+
recommendation: "Implement iterative prompt refinement based on results",
|
|
36
|
+
optional: true,
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
bestPractices: [
|
|
40
|
+
"Use hierarchical prompt structure with clear layers",
|
|
41
|
+
"Establish comprehensive context before specific instructions",
|
|
42
|
+
"Be specific about requirements and constraints",
|
|
43
|
+
"Implement iterative refinement based on results",
|
|
44
|
+
"Test prompts across different models and scenarios",
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
"code-management": {
|
|
48
|
+
base: 50,
|
|
49
|
+
criteria: [
|
|
50
|
+
{
|
|
51
|
+
id: "hygiene",
|
|
52
|
+
keywords: ["hygiene", "clean", "maintain"],
|
|
53
|
+
weight: 15,
|
|
54
|
+
strength: "Emphasizes code hygiene and maintenance",
|
|
55
|
+
issue: "Missing code hygiene practices",
|
|
56
|
+
recommendation: "Implement regular code hygiene analysis and cleanup",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
id: "refactor",
|
|
60
|
+
keywords: ["refactor", "legacy"],
|
|
61
|
+
weight: 10,
|
|
62
|
+
strength: "Includes legacy code refactoring",
|
|
63
|
+
issue: "No plan for legacy code refactoring",
|
|
64
|
+
recommendation: "Establish systematic refactoring for legacy code",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
id: "dependencies",
|
|
68
|
+
keywords: ["dependency", "outdated"],
|
|
69
|
+
weight: 10,
|
|
70
|
+
strength: "Manages dependencies and outdated components",
|
|
71
|
+
issue: "Missing dependency management",
|
|
72
|
+
recommendation: "Implement dependency and outdated pattern detection",
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
id: "docs",
|
|
76
|
+
keywords: ["documentation", "comment"],
|
|
77
|
+
weight: 10,
|
|
78
|
+
strength: "Maintains proper documentation",
|
|
79
|
+
issue: "Documentation practices not evident",
|
|
80
|
+
recommendation: "Improve code documentation and inline comments",
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
bestPractices: [
|
|
84
|
+
"Maintain aggressive code hygiene with regular cleanup",
|
|
85
|
+
"Refactor legacy code patterns systematically",
|
|
86
|
+
"Remove outdated dependencies and unused imports",
|
|
87
|
+
"Keep documentation up-to-date with code changes",
|
|
88
|
+
"Use automated tools for code quality assurance",
|
|
89
|
+
],
|
|
90
|
+
},
|
|
91
|
+
architecture: {
|
|
92
|
+
base: 50,
|
|
93
|
+
criteria: [
|
|
94
|
+
{
|
|
95
|
+
id: "modular",
|
|
96
|
+
keywords: ["modular", "component"],
|
|
97
|
+
weight: 15,
|
|
98
|
+
strength: "Uses modular architecture approach",
|
|
99
|
+
issue: "Missing modular component approach",
|
|
100
|
+
recommendation: "Implement modular component architecture",
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
id: "soc",
|
|
104
|
+
keywords: ["separation", "concern"],
|
|
105
|
+
weight: 10,
|
|
106
|
+
strength: "Applies separation of concerns",
|
|
107
|
+
issue: "Separation of concerns not addressed",
|
|
108
|
+
recommendation: "Separate distinct architectural concerns",
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
id: "scalability",
|
|
112
|
+
keywords: ["scalable", "maintainable"],
|
|
113
|
+
weight: 10,
|
|
114
|
+
strength: "Considers scalability and maintainability",
|
|
115
|
+
issue: "Scalability/maintainability considerations absent",
|
|
116
|
+
recommendation: "Design for scalability and long-term maintainability",
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
bestPractices: [
|
|
120
|
+
"Design modular, loosely-coupled components",
|
|
121
|
+
"Apply separation of concerns consistently",
|
|
122
|
+
"Build for scalability and maintainability",
|
|
123
|
+
"Use established architectural patterns",
|
|
124
|
+
"Document architectural decisions and rationale",
|
|
125
|
+
],
|
|
126
|
+
},
|
|
127
|
+
visualization: {
|
|
128
|
+
base: 50,
|
|
129
|
+
criteria: [
|
|
130
|
+
{
|
|
131
|
+
id: "tooling",
|
|
132
|
+
keywords: ["mermaid", "diagram"],
|
|
133
|
+
weight: 15,
|
|
134
|
+
strength: "Uses appropriate diagramming tools",
|
|
135
|
+
issue: "Diagramming tools not mentioned",
|
|
136
|
+
recommendation: "Use Mermaid.js for inline markdown diagrams",
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
id: "svg",
|
|
140
|
+
keywords: ["svg", "vector"],
|
|
141
|
+
weight: 10,
|
|
142
|
+
strength: "Prefers SVG over raster formats",
|
|
143
|
+
issue: "Vector/SVG preference not indicated",
|
|
144
|
+
recommendation: "Use SVG format for better scalability and accuracy",
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
id: "versionable",
|
|
148
|
+
keywords: ["version control", "text-based"],
|
|
149
|
+
weight: 10,
|
|
150
|
+
strength: "Uses version control friendly formats",
|
|
151
|
+
issue: "Version-control-friendly diagram format not referenced",
|
|
152
|
+
recommendation: "Adopt text-based diagram formats for VCS compatibility",
|
|
153
|
+
},
|
|
154
|
+
],
|
|
155
|
+
bestPractices: [
|
|
156
|
+
"Use Mermaid.js for inline markdown diagrams",
|
|
157
|
+
"Prefer SVG over raster images for scalability",
|
|
158
|
+
"Keep diagrams simple and focused",
|
|
159
|
+
"Use consistent naming and styling conventions",
|
|
160
|
+
"Make diagrams version control friendly",
|
|
161
|
+
],
|
|
162
|
+
},
|
|
163
|
+
memory: {
|
|
164
|
+
base: 50,
|
|
165
|
+
criteria: [
|
|
166
|
+
{
|
|
167
|
+
id: "cache",
|
|
168
|
+
keywords: ["cache", "caching"],
|
|
169
|
+
weight: 15,
|
|
170
|
+
strength: "Implements prompt caching strategies",
|
|
171
|
+
issue: "Caching strategy not described",
|
|
172
|
+
recommendation: "Implement prompt caching for frequent content",
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
id: "context",
|
|
176
|
+
keywords: ["context", "window"],
|
|
177
|
+
weight: 10,
|
|
178
|
+
strength: "Manages context window efficiently",
|
|
179
|
+
issue: "Context window management absent",
|
|
180
|
+
recommendation: "Optimize context window usage and management",
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
id: "optimization",
|
|
184
|
+
keywords: ["optimization", "compress", "summarize"],
|
|
185
|
+
weight: 10,
|
|
186
|
+
strength: "Applies memory optimization techniques",
|
|
187
|
+
issue: "Memory optimization techniques not identified",
|
|
188
|
+
recommendation: "Use context compression and summarization techniques",
|
|
189
|
+
},
|
|
190
|
+
],
|
|
191
|
+
bestPractices: [
|
|
192
|
+
"Implement intelligent prompt caching strategies",
|
|
193
|
+
"Optimize context window usage efficiently",
|
|
194
|
+
"Use conversation summarization for long sessions",
|
|
195
|
+
"Clear unnecessary context periodically",
|
|
196
|
+
"Monitor and optimize token usage",
|
|
197
|
+
],
|
|
198
|
+
},
|
|
199
|
+
workflow: {
|
|
200
|
+
base: 50,
|
|
201
|
+
criteria: [
|
|
202
|
+
{
|
|
203
|
+
id: "agile",
|
|
204
|
+
keywords: ["sprint", "agile"],
|
|
205
|
+
weight: 15,
|
|
206
|
+
strength: "Uses agile development methodologies",
|
|
207
|
+
issue: "Agile/sprint methodology not mentioned",
|
|
208
|
+
recommendation: "Implement agile sprint planning and execution",
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
id: "timeline",
|
|
212
|
+
keywords: ["timeline", "planning"],
|
|
213
|
+
weight: 10,
|
|
214
|
+
strength: "Includes systematic timeline planning",
|
|
215
|
+
issue: "Timeline planning absent",
|
|
216
|
+
recommendation: "Use data-driven timeline estimation and planning",
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
id: "feedback",
|
|
220
|
+
keywords: ["feedback", "iteration"],
|
|
221
|
+
weight: 10,
|
|
222
|
+
strength: "Incorporates feedback and iteration cycles",
|
|
223
|
+
issue: "Feedback/iteration cycles not referenced",
|
|
224
|
+
recommendation: "Build in regular feedback and iteration cycles",
|
|
225
|
+
},
|
|
226
|
+
],
|
|
227
|
+
bestPractices: [
|
|
228
|
+
"Use data-driven sprint planning and estimation",
|
|
229
|
+
"Implement regular feedback and iteration cycles",
|
|
230
|
+
"Plan for 80% capacity utilization",
|
|
231
|
+
"Track velocity and adjust estimates accordingly",
|
|
232
|
+
"Build in buffer time for unexpected issues",
|
|
233
|
+
],
|
|
234
|
+
},
|
|
235
|
+
};
|
|
236
|
+
//# sourceMappingURL=guidelines-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guidelines-config.js","sourceRoot":"","sources":["../../../src/tools/config/guidelines-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface ModelDefinition {
|
|
2
|
+
name: string;
|
|
3
|
+
provider: string;
|
|
4
|
+
pricingTier: "premium" | "mid-tier" | "budget";
|
|
5
|
+
contextTokens: number;
|
|
6
|
+
baseScore: number;
|
|
7
|
+
capabilities: string[];
|
|
8
|
+
strengths: string[];
|
|
9
|
+
limitations: string[];
|
|
10
|
+
specialFeatures: string[];
|
|
11
|
+
pricing: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const MODELS: ModelDefinition[];
|
|
14
|
+
export declare const REQUIREMENT_KEYWORDS: Record<string, string[]>;
|
|
15
|
+
export declare const CAPABILITY_WEIGHTS: Record<string, number>;
|
|
16
|
+
export declare const BUDGET_ADJUSTMENTS: Record<"low" | "medium" | "high", {
|
|
17
|
+
bonus: string[];
|
|
18
|
+
penalty: string[];
|
|
19
|
+
}>;
|
|
20
|
+
export declare const BUDGET_BONUS = 12;
|
|
21
|
+
export declare const BUDGET_PENALTY = 14;
|
|
22
|
+
export interface ScoredModel {
|
|
23
|
+
name: string;
|
|
24
|
+
provider: string;
|
|
25
|
+
score: number;
|
|
26
|
+
strengths: string[];
|
|
27
|
+
limitations: string[];
|
|
28
|
+
pricing: string;
|
|
29
|
+
contextWindow: string;
|
|
30
|
+
specialFeatures: string[];
|
|
31
|
+
breakdown: string[];
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=model-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-config.d.ts","sourceRoot":"","sources":["../../../src/tools/config/model-config.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,MAAM,EAAE,eAAe,EAkLnC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAQzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQrD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CACtC,KAAK,GAAG,QAAQ,GAAG,MAAM,EACzB;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAKtC,CAAC;AACF,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;CACpB"}
|