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.
Files changed (55) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +336 -0
  3. package/dist/index.d.ts +10 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +307 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/prompts/index.d.ts +21 -0
  8. package/dist/prompts/index.d.ts.map +1 -0
  9. package/dist/prompts/index.js +504 -0
  10. package/dist/prompts/index.js.map +1 -0
  11. package/dist/resources/index.d.ts +14 -0
  12. package/dist/resources/index.d.ts.map +1 -0
  13. package/dist/resources/index.js +92 -0
  14. package/dist/resources/index.js.map +1 -0
  15. package/dist/resources/structured.d.ts +47 -0
  16. package/dist/resources/structured.d.ts.map +1 -0
  17. package/dist/resources/structured.js +857 -0
  18. package/dist/resources/structured.js.map +1 -0
  19. package/dist/tools/code-hygiene-analyzer.d.ts +7 -0
  20. package/dist/tools/code-hygiene-analyzer.d.ts.map +1 -0
  21. package/dist/tools/code-hygiene-analyzer.js +176 -0
  22. package/dist/tools/code-hygiene-analyzer.js.map +1 -0
  23. package/dist/tools/config/guidelines-config.d.ts +16 -0
  24. package/dist/tools/config/guidelines-config.d.ts.map +1 -0
  25. package/dist/tools/config/guidelines-config.js +236 -0
  26. package/dist/tools/config/guidelines-config.js.map +1 -0
  27. package/dist/tools/config/model-config.d.ts +33 -0
  28. package/dist/tools/config/model-config.d.ts.map +1 -0
  29. package/dist/tools/config/model-config.js +206 -0
  30. package/dist/tools/config/model-config.js.map +1 -0
  31. package/dist/tools/guidelines-validator.d.ts +7 -0
  32. package/dist/tools/guidelines-validator.d.ts.map +1 -0
  33. package/dist/tools/guidelines-validator.js +178 -0
  34. package/dist/tools/guidelines-validator.js.map +1 -0
  35. package/dist/tools/hierarchical-prompt-builder.d.ts +7 -0
  36. package/dist/tools/hierarchical-prompt-builder.d.ts.map +1 -0
  37. package/dist/tools/hierarchical-prompt-builder.js +147 -0
  38. package/dist/tools/hierarchical-prompt-builder.js.map +1 -0
  39. package/dist/tools/memory-context-optimizer.d.ts +7 -0
  40. package/dist/tools/memory-context-optimizer.d.ts.map +1 -0
  41. package/dist/tools/memory-context-optimizer.js +256 -0
  42. package/dist/tools/memory-context-optimizer.js.map +1 -0
  43. package/dist/tools/mermaid-diagram-generator.d.ts +7 -0
  44. package/dist/tools/mermaid-diagram-generator.d.ts.map +1 -0
  45. package/dist/tools/mermaid-diagram-generator.js +312 -0
  46. package/dist/tools/mermaid-diagram-generator.js.map +1 -0
  47. package/dist/tools/model-compatibility-checker.d.ts +7 -0
  48. package/dist/tools/model-compatibility-checker.d.ts.map +1 -0
  49. package/dist/tools/model-compatibility-checker.js +204 -0
  50. package/dist/tools/model-compatibility-checker.js.map +1 -0
  51. package/dist/tools/sprint-timeline-calculator.d.ts +7 -0
  52. package/dist/tools/sprint-timeline-calculator.d.ts.map +1 -0
  53. package/dist/tools/sprint-timeline-calculator.js +240 -0
  54. package/dist/tools/sprint-timeline-calculator.js.map +1 -0
  55. package/package.json +75 -0
@@ -0,0 +1,206 @@
1
+ // See also: https://docs.github.com/en/copilot/reference/ai-models/model-comparison#recommended-models-by-task
2
+ export const MODELS = [
3
+ {
4
+ name: "GPT-4.1",
5
+ provider: "OpenAI",
6
+ pricingTier: "mid-tier",
7
+ contextTokens: 128_000,
8
+ baseScore: 52,
9
+ capabilities: ["reasoning", "code", "speed", "multimodal"],
10
+ strengths: [
11
+ "Fast, accurate code completions",
12
+ "General-purpose coding",
13
+ "Writing tasks",
14
+ "Wide ecosystem",
15
+ ],
16
+ limitations: ["Context window limitations"],
17
+ specialFeatures: ["Agent mode", "Vision capabilities", "Function calling"],
18
+ pricing: "Mid-tier ($5-10/1M tokens)",
19
+ },
20
+ {
21
+ name: "GPT-5",
22
+ provider: "OpenAI",
23
+ pricingTier: "premium",
24
+ contextTokens: 128_000,
25
+ baseScore: 54,
26
+ capabilities: ["reasoning", "code", "multimodal"],
27
+ strengths: [
28
+ "Multi-step problem solving",
29
+ "Architecture-level code analysis",
30
+ "Deep reasoning",
31
+ ],
32
+ limitations: ["Higher cost", "Context limitations"],
33
+ specialFeatures: ["Advanced reasoning", "Complex debugging"],
34
+ pricing: "Premium ($10-20/1M tokens)",
35
+ },
36
+ {
37
+ name: "o3",
38
+ provider: "OpenAI",
39
+ pricingTier: "premium",
40
+ contextTokens: 128_000,
41
+ baseScore: 55,
42
+ capabilities: ["reasoning", "code"],
43
+ strengths: [
44
+ "Multi-step problem solving",
45
+ "Architecture-level code analysis",
46
+ "Deep reasoning",
47
+ ],
48
+ limitations: ["Higher cost", "Slower inference"],
49
+ specialFeatures: ["Advanced reasoning chains", "Complex problem solving"],
50
+ pricing: "Premium ($15-30/1M tokens)",
51
+ },
52
+ {
53
+ name: "o4-mini",
54
+ provider: "OpenAI",
55
+ pricingTier: "budget",
56
+ contextTokens: 128_000,
57
+ baseScore: 48,
58
+ capabilities: ["speed", "cost"],
59
+ strengths: [
60
+ "Fast, reliable answers",
61
+ "Lightweight coding questions",
62
+ "Lower latency",
63
+ ],
64
+ limitations: ["Limited reasoning", "Simple tasks only"],
65
+ specialFeatures: ["Ultra-fast responses", "Cost efficient"],
66
+ pricing: "Budget ($0.25-1.25/1M tokens)",
67
+ },
68
+ {
69
+ name: "Claude Opus 4.1",
70
+ provider: "Anthropic",
71
+ pricingTier: "premium",
72
+ contextTokens: 200_000,
73
+ baseScore: 55,
74
+ capabilities: ["reasoning", "large-context", "multimodal", "code"],
75
+ strengths: [
76
+ "Complex problem-solving",
77
+ "Sophisticated reasoning",
78
+ "Vision capabilities",
79
+ ],
80
+ limitations: ["Higher cost", "Slower inference"],
81
+ specialFeatures: ["Constitutional AI", "Vision support", "Deep reasoning"],
82
+ pricing: "Premium ($15-30/1M tokens)",
83
+ },
84
+ {
85
+ name: "Claude Opus 4",
86
+ provider: "Anthropic",
87
+ pricingTier: "premium",
88
+ contextTokens: 200_000,
89
+ baseScore: 54,
90
+ capabilities: ["reasoning", "large-context", "multimodal", "code"],
91
+ strengths: [
92
+ "Complex problem-solving",
93
+ "Sophisticated reasoning",
94
+ "Vision capabilities",
95
+ ],
96
+ limitations: ["Higher cost", "Slower inference"],
97
+ specialFeatures: ["Constitutional AI", "Vision support", "Deep reasoning"],
98
+ pricing: "Premium ($15-30/1M tokens)",
99
+ },
100
+ {
101
+ name: "Claude Sonnet 3.5",
102
+ provider: "Anthropic",
103
+ pricingTier: "budget",
104
+ contextTokens: 200_000,
105
+ baseScore: 49,
106
+ capabilities: ["speed", "cost", "multimodal"],
107
+ strengths: ["Quick responses for code", "Syntax help", "Documentation"],
108
+ limitations: ["Limited reasoning"],
109
+ specialFeatures: ["Agent mode", "Vision support", "Fast responses"],
110
+ pricing: "Budget ($0.25-1.25/1M tokens)",
111
+ },
112
+ {
113
+ name: "Claude Sonnet 3.7",
114
+ provider: "Anthropic",
115
+ pricingTier: "mid-tier",
116
+ contextTokens: 200_000,
117
+ baseScore: 52,
118
+ capabilities: ["reasoning", "multimodal", "large-context", "code"],
119
+ strengths: [
120
+ "Structured reasoning",
121
+ "Large, complex codebases",
122
+ "Clear output",
123
+ ],
124
+ limitations: ["Moderate cost"],
125
+ specialFeatures: ["Agent mode", "Vision support", "Structured output"],
126
+ pricing: "Mid-tier ($3-6/1M tokens)",
127
+ },
128
+ {
129
+ name: "Claude Sonnet 4",
130
+ provider: "Anthropic",
131
+ pricingTier: "mid-tier",
132
+ contextTokens: 200_000,
133
+ baseScore: 53,
134
+ capabilities: ["reasoning", "speed", "multimodal", "code"],
135
+ strengths: [
136
+ "Performance and practicality",
137
+ "Balanced for coding workflows",
138
+ ],
139
+ limitations: ["Moderate cost"],
140
+ specialFeatures: ["Agent mode", "Vision support", "Balanced speed/quality"],
141
+ pricing: "Mid-tier ($3-6/1M tokens)",
142
+ },
143
+ {
144
+ name: "Gemini 2.5 Pro",
145
+ provider: "Google",
146
+ pricingTier: "mid-tier",
147
+ contextTokens: 2_000_000,
148
+ baseScore: 54,
149
+ capabilities: ["reasoning", "multimodal", "large-context", "code"],
150
+ strengths: [
151
+ "Complex code generation",
152
+ "Debugging",
153
+ "Research workflows",
154
+ "Massive context",
155
+ ],
156
+ limitations: ["Limited third-party integration"],
157
+ specialFeatures: [
158
+ "2M token context",
159
+ "Vision support",
160
+ "Google integration",
161
+ ],
162
+ pricing: "Competitive ($1-3/1M tokens)",
163
+ },
164
+ {
165
+ name: "Gemini 2.0 Flash",
166
+ provider: "Google",
167
+ pricingTier: "budget",
168
+ contextTokens: 1_000_000,
169
+ baseScore: 50,
170
+ capabilities: ["speed", "multimodal", "cost"],
171
+ strengths: [
172
+ "Real-time responses",
173
+ "Visual reasoning",
174
+ "UI and diagram tasks",
175
+ ],
176
+ limitations: ["Limited reasoning depth"],
177
+ specialFeatures: ["Vision capabilities", "Fast inference", "Low latency"],
178
+ pricing: "Budget ($0.25-1/1M tokens)",
179
+ },
180
+ ];
181
+ export const REQUIREMENT_KEYWORDS = {
182
+ reasoning: ["analysis", "reasoning", "complex", "chain-of-thought", "logic"],
183
+ code: ["code", "programming", "development", "refactor", "api"],
184
+ "large-context": ["large", "document", "context", "long", "200k", "2m"],
185
+ speed: ["fast", "real-time", "quick", "low-latency", "interactive"],
186
+ multimodal: ["image", "visual", "multimodal", "audio", "video"],
187
+ safety: ["safety", "reliable", "production", "alignment", "guardrail"],
188
+ cost: ["cheap", "cost", "budget", "economical", "low-cost"],
189
+ };
190
+ export const CAPABILITY_WEIGHTS = {
191
+ reasoning: 18,
192
+ code: 14,
193
+ "large-context": 22,
194
+ speed: 16,
195
+ multimodal: 18,
196
+ safety: 15,
197
+ cost: 15,
198
+ };
199
+ export const BUDGET_ADJUSTMENTS = {
200
+ low: { bonus: ["budget", "mid-tier"], penalty: ["premium"] },
201
+ medium: { bonus: ["mid-tier"], penalty: [] },
202
+ high: { bonus: ["premium"], penalty: [] },
203
+ };
204
+ export const BUDGET_BONUS = 12;
205
+ export const BUDGET_PENALTY = 14;
206
+ //# sourceMappingURL=model-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-config.js","sourceRoot":"","sources":["../../../src/tools/config/model-config.ts"],"names":[],"mappings":"AAaA,+GAA+G;AAC/G,MAAM,CAAC,MAAM,MAAM,GAAsB;IACxC;QACC,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;QAC1D,SAAS,EAAE;YACV,iCAAiC;YACjC,wBAAwB;YACxB,eAAe;YACf,gBAAgB;SAChB;QACD,WAAW,EAAE,CAAC,4BAA4B,CAAC;QAC3C,eAAe,EAAE,CAAC,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,CAAC;QAC1E,OAAO,EAAE,4BAA4B;KACrC;IACD;QACC,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC;QACjD,SAAS,EAAE;YACV,4BAA4B;YAC5B,kCAAkC;YAClC,gBAAgB;SAChB;QACD,WAAW,EAAE,CAAC,aAAa,EAAE,qBAAqB,CAAC;QACnD,eAAe,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,CAAC;QAC5D,OAAO,EAAE,4BAA4B;KACrC;IACD;QACC,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;QACnC,SAAS,EAAE;YACV,4BAA4B;YAC5B,kCAAkC;YAClC,gBAAgB;SAChB;QACD,WAAW,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;QAChD,eAAe,EAAE,CAAC,2BAA2B,EAAE,yBAAyB,CAAC;QACzE,OAAO,EAAE,4BAA4B;KACrC;IACD;QACC,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC/B,SAAS,EAAE;YACV,wBAAwB;YACxB,8BAA8B;YAC9B,eAAe;SACf;QACD,WAAW,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;QACvD,eAAe,EAAE,CAAC,sBAAsB,EAAE,gBAAgB,CAAC;QAC3D,OAAO,EAAE,+BAA+B;KACxC;IACD;QACC,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,CAAC;QAClE,SAAS,EAAE;YACV,yBAAyB;YACzB,yBAAyB;YACzB,qBAAqB;SACrB;QACD,WAAW,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;QAChD,eAAe,EAAE,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;QAC1E,OAAO,EAAE,4BAA4B;KACrC;IACD;QACC,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,CAAC;QAClE,SAAS,EAAE;YACV,yBAAyB;YACzB,yBAAyB;YACzB,qBAAqB;SACrB;QACD,WAAW,EAAE,CAAC,aAAa,EAAE,kBAAkB,CAAC;QAChD,eAAe,EAAE,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;QAC1E,OAAO,EAAE,4BAA4B;KACrC;IACD;QACC,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC;QAC7C,SAAS,EAAE,CAAC,0BAA0B,EAAE,aAAa,EAAE,eAAe,CAAC;QACvE,WAAW,EAAE,CAAC,mBAAmB,CAAC;QAClC,eAAe,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;QACnE,OAAO,EAAE,+BAA+B;KACxC;IACD;QACC,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC;QAClE,SAAS,EAAE;YACV,sBAAsB;YACtB,0BAA0B;YAC1B,cAAc;SACd;QACD,WAAW,EAAE,CAAC,eAAe,CAAC;QAC9B,eAAe,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,CAAC;QACtE,OAAO,EAAE,2BAA2B;KACpC;IACD;QACC,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,OAAO;QACtB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC;QAC1D,SAAS,EAAE;YACV,8BAA8B;YAC9B,+BAA+B;SAC/B;QACD,WAAW,EAAE,CAAC,eAAe,CAAC;QAC9B,eAAe,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,CAAC;QAC3E,OAAO,EAAE,2BAA2B;KACpC;IACD;QACC,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC;QAClE,SAAS,EAAE;YACV,yBAAyB;YACzB,WAAW;YACX,oBAAoB;YACpB,iBAAiB;SACjB;QACD,WAAW,EAAE,CAAC,iCAAiC,CAAC;QAChD,eAAe,EAAE;YAChB,kBAAkB;YAClB,gBAAgB;YAChB,oBAAoB;SACpB;QACD,OAAO,EAAE,8BAA8B;KACvC;IACD;QACC,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC;QAC7C,SAAS,EAAE;YACV,qBAAqB;YACrB,kBAAkB;YAClB,sBAAsB;SACtB;QACD,WAAW,EAAE,CAAC,yBAAyB,CAAC;QACxC,eAAe,EAAE,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,aAAa,CAAC;QACzE,OAAO,EAAE,4BAA4B;KACrC;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAA6B;IAC7D,SAAS,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,CAAC;IAC5E,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC;IAC/D,eAAe,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;IACvE,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC;IACnE,UAAU,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC;IAC/D,MAAM,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC;IACtE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC;CAC3D,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAA2B;IACzD,SAAS,EAAE,EAAE;IACb,IAAI,EAAE,EAAE;IACR,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE,EAAE;IACT,UAAU,EAAE,EAAE;IACd,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE;CACR,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAG3B;IACH,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE;IAC5D,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC5C,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;CACzC,CAAC;AACF,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAC/B,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare function guidelinesValidator(args: unknown): Promise<{
2
+ content: {
3
+ type: string;
4
+ text: string;
5
+ }[];
6
+ }>;
7
+ //# sourceMappingURL=guidelines-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guidelines-validator.d.ts","sourceRoot":"","sources":["../../src/tools/guidelines-validator.ts"],"names":[],"mappings":"AAgCA,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,OAAO;;;;;GAwFtD"}
@@ -0,0 +1,178 @@
1
+ import { z } from "zod";
2
+ import { CATEGORY_CONFIG, } from "./config/guidelines-config.js";
3
+ const GuidelinesValidationSchema = z.object({
4
+ practiceDescription: z.string(),
5
+ category: z.enum([
6
+ "prompting",
7
+ "code-management",
8
+ "architecture",
9
+ "visualization",
10
+ "memory",
11
+ "workflow",
12
+ ]),
13
+ includeReferences: z.boolean().optional().default(true),
14
+ includeMetadata: z.boolean().optional().default(true),
15
+ inputFile: z.string().optional(),
16
+ });
17
+ export async function guidelinesValidator(args) {
18
+ const input = GuidelinesValidationSchema.parse(args);
19
+ const validation = validateAgainstGuidelines(input);
20
+ const references = input.includeReferences
21
+ ? buildCategoryReferences(input.category)
22
+ : undefined;
23
+ const metadata = input.includeMetadata
24
+ ? [
25
+ "### Metadata",
26
+ `- Updated: ${new Date().toISOString().slice(0, 10)}`,
27
+ "- Source tool: mcp_ai-agent-guid_guidelines-validator",
28
+ input.inputFile ? `- Input file: ${input.inputFile}` : undefined,
29
+ `- Category: ${input.category}`,
30
+ "",
31
+ ]
32
+ .filter(Boolean)
33
+ .join("\n")
34
+ : "";
35
+ return {
36
+ content: [
37
+ {
38
+ type: "text",
39
+ text: `## ✅ AI Agent Development Guidelines Validation
40
+
41
+ ${metadata}
42
+
43
+ ### 📋 Practice Analysis
44
+ | Field | Value |
45
+ |---|---|
46
+ | Category | ${input.category} |
47
+ | Description | ${input.practiceDescription} |
48
+
49
+ ### 📊 Compliance Assessment
50
+ | Metric | Value |
51
+ |---|---|
52
+ | Overall Score | ${validation.score}/100 |
53
+ | Compliance Level | ${validation.compliance.toUpperCase()} |
54
+
55
+ ${validation.compliance === "excellent"
56
+ ? "🟢 **Excellent compliance** - Your practice aligns very well with established guidelines"
57
+ : validation.compliance === "good"
58
+ ? "🟡 **Good compliance** - Minor improvements recommended"
59
+ : validation.compliance === "fair"
60
+ ? "🟠 **Fair compliance** - Several areas need attention"
61
+ : "🔴 **Poor compliance** - Significant improvements needed"}
62
+
63
+ ### ⭐ Strengths Identified
64
+ ${validation.strengths.map((strength, index) => `${index + 1}. ✅ ${strength}`).join("\n")}
65
+
66
+ ### 🐞 Issues Found
67
+ ${validation.issues.length > 0
68
+ ? validation.issues
69
+ .map((issue, index) => `${index + 1}. ❌ ${issue}`)
70
+ .join("\n")
71
+ : "*No significant issues identified*"}
72
+
73
+ ### 🔧 Recommendations
74
+ ${validation.recommendations.map((rec, index) => `${index + 1}. 🔧 ${rec}`).join("\n")}
75
+
76
+ ### 📚 Best Practices for ${input.category.charAt(0).toUpperCase() + input.category.slice(1)}
77
+ ${validation.bestPractices.map((practice, index) => `${index + 1}. 📋 ${practice}`).join("\n")}
78
+
79
+ ### 🔗 Guidelines Reference
80
+ For detailed information on AI agent development best practices, refer to:
81
+ - **Hierarchical Prompting**: Structure prompts in layers of increasing specificity
82
+ - **Code Hygiene**: Maintain clean, well-documented, and regularly refactored code
83
+ - **Memory Optimization**: Implement efficient context management and caching
84
+ - **Visualization**: Use Mermaid diagrams for clear system documentation
85
+ - **Sprint Planning**: Apply data-driven timeline estimation and risk assessment
86
+ - **Model Selection**: Choose appropriate models based on task requirements and constraints
87
+
88
+ ### ♻️ Continuous Improvement
89
+ - Regular validation against updated guidelines
90
+ - Peer review of development practices
91
+ - Monitoring of industry best practices evolution
92
+ - Iterative refinement based on project outcomes
93
+ ${references ? `\n### 🔗 References\n${references}\n` : ""}
94
+ \n### ⚠️ Disclaimer\n- These are recommendations, not guarantees. Validate with your context and current provider documentation.
95
+ `,
96
+ },
97
+ ],
98
+ };
99
+ }
100
+ function validateAgainstGuidelines(input) {
101
+ const { practiceDescription, category } = input;
102
+ const config = CATEGORY_CONFIG[category];
103
+ if (!config) {
104
+ return {
105
+ compliance: "poor",
106
+ score: 0,
107
+ strengths: [],
108
+ issues: ["Unknown category"],
109
+ recommendations: ["Use a supported category"],
110
+ bestPractices: [],
111
+ };
112
+ }
113
+ const text = practiceDescription.toLowerCase();
114
+ let score = config.base;
115
+ const strengths = [];
116
+ const issues = [];
117
+ const recommendations = [];
118
+ for (const criterion of config.criteria) {
119
+ const hit = criterion.keywords.some((k) => text.includes(k));
120
+ if (hit) {
121
+ score += criterion.weight;
122
+ strengths.push(criterion.strength);
123
+ }
124
+ else if (!criterion.optional) {
125
+ issues.push(criterion.issue);
126
+ recommendations.push(criterion.recommendation);
127
+ }
128
+ }
129
+ score = Math.min(100, score);
130
+ let compliance;
131
+ if (score >= 85)
132
+ compliance = "excellent";
133
+ else if (score >= 70)
134
+ compliance = "good";
135
+ else if (score >= 50)
136
+ compliance = "fair";
137
+ else
138
+ compliance = "poor";
139
+ return {
140
+ compliance,
141
+ score,
142
+ strengths,
143
+ issues,
144
+ recommendations,
145
+ bestPractices: config.bestPractices,
146
+ };
147
+ }
148
+ function buildCategoryReferences(category) {
149
+ const common = [
150
+ "- Prompt caching (Anthropic): https://www.anthropic.com/news/prompt-caching",
151
+ "- Mermaid.js: https://github.com/mermaid-js/mermaid",
152
+ ];
153
+ const byCat = {
154
+ prompting: [
155
+ "- Hierarchical Prompting: https://relevanceai.com/prompt-engineering/master-hierarchical-prompting-for-better-ai-interactions",
156
+ "- Best Practices (2025): https://www.dataunboxed.io/blog/the-complete-guide-to-prompt-engineering-15-essential-techniques-for-2025",
157
+ ],
158
+ "code-management": [
159
+ "- Refactoring legacy code: https://graphite.dev/guides/refactoring-legacy-code-best-practices-techniques",
160
+ ],
161
+ architecture: [
162
+ "- Event-driven, microservices patterns (general references)",
163
+ ],
164
+ visualization: [
165
+ "- Kubernetes diagram guide: https://kubernetes.io/docs/contribute/style/diagram-guide/",
166
+ ],
167
+ memory: [
168
+ "- Prompt caching docs: https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching",
169
+ ],
170
+ workflow: [
171
+ "- Sprint planning tools overview (ZenHub 2025): https://www.zenhub.com/blog-posts/the-7-best-ai-assisted-sprint-planning-tools-for-agile-teams-in-2025",
172
+ ],
173
+ };
174
+ const set = [...(byCat[category] || []), ...common];
175
+ return set.join("\n");
176
+ }
177
+ // Legacy per-category validators replaced by config-driven approach above.
178
+ //# sourceMappingURL=guidelines-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guidelines-validator.js","sourceRoot":"","sources":["../../src/tools/guidelines-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare function hierarchicalPromptBuilder(args: unknown): Promise<{
2
+ content: {
3
+ type: string;
4
+ text: string;
5
+ }[];
6
+ }>;
7
+ //# sourceMappingURL=hierarchical-prompt-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hierarchical-prompt-builder.d.ts","sourceRoot":"","sources":["../../src/tools/hierarchical-prompt-builder.ts"],"names":[],"mappings":"AAkDA,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,OAAO;;;;;GAoC5D"}
@@ -0,0 +1,147 @@
1
+ import { z } from "zod";
2
+ const HierarchicalPromptSchema = z.object({
3
+ context: z.string(),
4
+ goal: z.string(),
5
+ requirements: z.array(z.string()).optional(),
6
+ outputFormat: z.string().optional(),
7
+ audience: z.string().optional(),
8
+ // YAML prompt frontmatter (experimental prompt file support)
9
+ mode: z.string().optional().default("agent"),
10
+ model: z.string().optional().default("GPT-4.1"),
11
+ tools: z
12
+ .array(z.string())
13
+ .optional()
14
+ .default(["githubRepo", "codebase", "editFiles"]),
15
+ description: z.string().optional(),
16
+ includeFrontmatter: z.boolean().optional().default(true),
17
+ includeDisclaimer: z.boolean().optional().default(true),
18
+ includeReferences: z.boolean().optional().default(false),
19
+ issues: z.array(z.string()).optional(),
20
+ includeExplanation: z.boolean().optional().default(false),
21
+ includeMetadata: z.boolean().optional().default(true),
22
+ inputFile: z.string().optional(),
23
+ // Enforce *.prompt.md file style (frontmatter + markdown prompt body)
24
+ forcePromptMdStyle: z.boolean().optional().default(true),
25
+ });
26
+ function slugify(text) {
27
+ return text
28
+ .toLowerCase()
29
+ .replace(/[^a-z0-9\s-]/g, "")
30
+ .replace(/\s+/g, "-")
31
+ .replace(/-+/g, "-")
32
+ .replace(/^-|-$/g, "");
33
+ }
34
+ function buildFrontmatter(input) {
35
+ const lines = ["---"];
36
+ if (input.mode)
37
+ lines.push(`mode: '${input.mode}'`);
38
+ if (input.model)
39
+ lines.push(`model: ${input.model}`);
40
+ if (input.tools?.length)
41
+ lines.push(`tools: [${input.tools.map((t) => `'${t}'`).join(", ")}]`);
42
+ const desc = input.description || input.goal || "Hierarchical task prompt";
43
+ lines.push(`description: '${desc.replace(/'/g, "''")}'`);
44
+ lines.push("---");
45
+ return lines.join("\n");
46
+ }
47
+ export async function hierarchicalPromptBuilder(args) {
48
+ const input = HierarchicalPromptSchema.parse(args);
49
+ // If enforcing *.prompt.md style, ensure frontmatter + metadata are on
50
+ const enforce = input.forcePromptMdStyle ?? true;
51
+ const effectiveIncludeFrontmatter = enforce ? true : input.includeFrontmatter;
52
+ const effectiveIncludeMetadata = enforce ? true : input.includeMetadata;
53
+ const prompt = buildHierarchicalPrompt(input);
54
+ const frontmatter = effectiveIncludeFrontmatter
55
+ ? `${buildFrontmatter(input)}\n`
56
+ : "";
57
+ const disclaimer = input.includeDisclaimer ? buildDisclaimer() : "";
58
+ const references = input.includeReferences ? buildGeneralReferences() : "";
59
+ const filenameHint = `${slugify(input.goal || input.description || "prompt")}.prompt.md`;
60
+ const metadata = effectiveIncludeMetadata
61
+ ? [
62
+ "### Metadata",
63
+ `- Updated: ${new Date().toISOString().slice(0, 10)}`,
64
+ "- Source tool: mcp_ai-agent-guid_hierarchical-prompt-builder",
65
+ input.inputFile ? `- Input file: ${input.inputFile}` : undefined,
66
+ `- Suggested filename: ${filenameHint}`,
67
+ "",
68
+ ]
69
+ .filter(Boolean)
70
+ .join("\n")
71
+ : "";
72
+ return {
73
+ content: [
74
+ {
75
+ type: "text",
76
+ text: `${frontmatter}## 🧭 Hierarchical Prompt Structure\n\n${metadata}\n${prompt}\n\n${input.includeExplanation ? `## Explanation\nThis prompt follows hierarchical structuring principles (context → goal → requirements → format → audience) to reduce ambiguity and align responses with constraints.\n\n` : ""}${references ? `## References\n${references}\n\n` : ""}${disclaimer}`,
77
+ },
78
+ ],
79
+ };
80
+ }
81
+ function buildHierarchicalPrompt(input) {
82
+ let prompt = "";
83
+ // Layer 1: Context
84
+ prompt += `# Context\n${input.context}\n\n`;
85
+ // Layer 2: Goal
86
+ prompt += `# Goal\n${input.goal}\n\n`;
87
+ // Layer 3: Requirements (if provided)
88
+ if (input.requirements && input.requirements.length > 0) {
89
+ prompt += `# Requirements\n`;
90
+ input.requirements.forEach((req, index) => {
91
+ prompt += `${index + 1}. ${req}\n`;
92
+ });
93
+ prompt += "\n";
94
+ }
95
+ // Layer 3b: Problem Indicators (if provided)
96
+ if (input.issues && input.issues.length > 0) {
97
+ prompt += `# Problem Indicators\n`;
98
+ input.issues.forEach((iss, index) => {
99
+ prompt += `${index + 1}. ${iss}\n`;
100
+ });
101
+ prompt += "\n";
102
+ }
103
+ // Layer 4: Output Format (if provided)
104
+ if (input.outputFormat) {
105
+ // Normalize list numbering and layout: convert "1) Item" -> "1. Item"
106
+ // and transform inline comma-separated enumerations into multi-line ordered lists.
107
+ const normalizedOutputFormat = normalizeOutputFormat(input.outputFormat);
108
+ prompt += `# Output Format\n${normalizedOutputFormat}\n\n`;
109
+ }
110
+ // Layer 5: Audience (if provided)
111
+ if (input.audience) {
112
+ prompt += `# Target Audience\n${input.audience}\n\n`;
113
+ }
114
+ // Final instruction
115
+ prompt += `# Instructions\nFollow the structure above. If you detect additional issues in the codebase, explicitly add them under Problem Indicators, propose minimal diffs, and flag risky changes. Treat tools/models as recommendations to validate against current provider documentation.`;
116
+ return prompt;
117
+ }
118
+ /**
119
+ * Normalize enumerated list styles in free-form text:
120
+ * - Converts patterns like "1) Item" to "1. Item" to align with Markdown ordered lists.
121
+ * This is intentionally limited to simple numeric list markers to avoid unintended changes.
122
+ */
123
+ function normalizeOutputFormat(text) {
124
+ // First, convert list markers like "1) " to "1. "
125
+ let t = text.replace(/(\d+)\)\s/g, "$1. ");
126
+ // If content is a single line with inline enumerations separated by commas,
127
+ // split them into lines when they look like "1. ... , 2. ... , 3. ..."
128
+ // This keeps any existing line breaks intact otherwise.
129
+ if (!t.includes("\n") && /(\d+)\.\s/.test(t) && /,\s*\d+\.\s/.test(t)) {
130
+ // Split on comma followed by a list index pattern
131
+ const parts = t.split(/,\s*(?=\d+\.\s)/);
132
+ // Ensure they are trimmed and each on its own line
133
+ t = parts.map((p) => p.trim()).join("\n");
134
+ }
135
+ return t;
136
+ }
137
+ function buildDisclaimer() {
138
+ return `## Disclaimer\n- References to third-party tools, models, pricing, and limits are indicative and may change.\n- Validate choices with official docs and run a quick benchmark before production use.`;
139
+ }
140
+ function buildGeneralReferences() {
141
+ return [
142
+ "- Hierarchical Prompting overview: https://relevanceai.com/prompt-engineering/master-hierarchical-prompting-for-better-ai-interactions",
143
+ "- Prompt engineering best practices: https://kanerika.com/blogs/ai-prompt-engineering-best-practices/",
144
+ "- Techniques round-up (2025): https://www.dataunboxed.io/blog/the-complete-guide-to-prompt-engineering-15-essential-techniques-for-2025",
145
+ ].join("\n");
146
+ }
147
+ //# sourceMappingURL=hierarchical-prompt-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hierarchical-prompt-builder.js","sourceRoot":"","sources":["../../src/tools/hierarchical-prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC5C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,6DAA6D;IAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAC/C,KAAK,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,OAAO,CAAC,CAAC,YAAY,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IAClD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACxD,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACvD,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACxD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACtC,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzD,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACrD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,sEAAsE;IACtE,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACxD,CAAC,CAAC;AAIH,SAAS,OAAO,CAAC,IAAY;IAC5B,OAAO,IAAI;SACT,WAAW,EAAE;SACb,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;SAC5B,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA8B;IACvD,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,KAAK,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IACpD,IAAI,KAAK,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM;QACtB,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,IAAI,0BAA0B,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAAa;IAC5D,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnD,uEAAuE;IACvE,MAAM,OAAO,GAAG,KAAK,CAAC,kBAAkB,IAAI,IAAI,CAAC;IACjD,MAAM,2BAA2B,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAC9E,MAAM,wBAAwB,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IAExE,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,2BAA2B;QAC9C,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI;QAChC,CAAC,CAAC,EAAE,CAAC;IACN,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,MAAM,YAAY,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,IAAI,QAAQ,CAAC,YAAY,CAAC;IACzF,MAAM,QAAQ,GAAG,wBAAwB;QACxC,CAAC,CAAC;YACA,cAAc;YACd,cAAc,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;YACrD,8DAA8D;YAC9D,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS;YAChE,yBAAyB,YAAY,EAAE;YACvC,EAAE;SACF;aACC,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC;QACb,CAAC,CAAC,EAAE,CAAC;IAEN,OAAO;QACN,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,GAAG,WAAW,0CAA0C,QAAQ,KAAK,MAAM,OAAO,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,2LAA2L,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,kBAAkB,UAAU,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE;aACzX;SACD;KACD,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,KAA8B;IAC9D,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,mBAAmB;IACnB,MAAM,IAAI,cAAc,KAAK,CAAC,OAAO,MAAM,CAAC;IAE5C,gBAAgB;IAChB,MAAM,IAAI,WAAW,KAAK,CAAC,IAAI,MAAM,CAAC;IAEtC,sCAAsC;IACtC,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,kBAAkB,CAAC;QAC7B,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACzC,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,IAAI,CAAC;IAChB,CAAC;IAED,6CAA6C;IAC7C,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,wBAAwB,CAAC;QACnC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,IAAI,CAAC;IAChB,CAAC;IAED,uCAAuC;IACvC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACxB,sEAAsE;QACtE,mFAAmF;QACnF,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACzE,MAAM,IAAI,oBAAoB,sBAAsB,MAAM,CAAC;IAC5D,CAAC;IAED,kCAAkC;IAClC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,IAAI,sBAAsB,KAAK,CAAC,QAAQ,MAAM,CAAC;IACtD,CAAC;IAED,oBAAoB;IACpB,MAAM,IAAI,qRAAqR,CAAC;IAEhS,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,IAAY;IAC1C,kDAAkD;IAClD,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,uEAAuE;IACvE,wDAAwD;IACxD,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,kDAAkD;QAClD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACzC,mDAAmD;QACnD,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC;AAED,SAAS,eAAe;IACvB,OAAO,sMAAsM,CAAC;AAC/M,CAAC;AAED,SAAS,sBAAsB;IAC9B,OAAO;QACN,wIAAwI;QACxI,uGAAuG;QACvG,yIAAyI;KACzI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare function memoryContextOptimizer(args: unknown): Promise<{
2
+ content: {
3
+ type: string;
4
+ text: string;
5
+ }[];
6
+ }>;
7
+ //# sourceMappingURL=memory-context-optimizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-context-optimizer.d.ts","sourceRoot":"","sources":["../../src/tools/memory-context-optimizer.ts"],"names":[],"mappings":"AAoBA,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,OAAO;;;;;GAmIzD"}