@mytechtoday/augment-extensions 1.5.0 → 1.5.2
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/cli/dist/__test_rule-install-hooks.d.ts +2 -0
- package/cli/dist/__test_rule-install-hooks.d.ts.map +1 -0
- package/cli/dist/__test_rule-install-hooks.js +4 -0
- package/cli/dist/__test_rule-install-hooks.js.map +1 -0
- package/cli/dist/commands/show.d.ts +4 -0
- package/cli/dist/commands/show.d.ts.map +1 -1
- package/cli/dist/commands/show.js +72 -2
- package/cli/dist/commands/show.js.map +1 -1
- package/cli/dist/parsers/php-parser.d.ts +127 -0
- package/cli/dist/parsers/php-parser.d.ts.map +1 -0
- package/cli/dist/parsers/php-parser.js +290 -0
- package/cli/dist/parsers/php-parser.js.map +1 -0
- package/cli/dist/utils/ai-prompts.d.ts +32 -0
- package/cli/dist/utils/ai-prompts.d.ts.map +1 -0
- package/cli/dist/utils/ai-prompts.js +192 -0
- package/cli/dist/utils/ai-prompts.js.map +1 -0
- package/cli/dist/utils/ai-summary.d.ts +42 -0
- package/cli/dist/utils/ai-summary.d.ts.map +1 -0
- package/cli/dist/utils/ai-summary.js +177 -0
- package/cli/dist/utils/ai-summary.js.map +1 -0
- package/cli/dist/utils/config-loader.d.ts +90 -0
- package/cli/dist/utils/config-loader.d.ts.map +1 -0
- package/cli/dist/utils/config-loader.js +223 -0
- package/cli/dist/utils/config-loader.js.map +1 -0
- package/cli/dist/webview/inspection-webview-provider.d.ts +49 -0
- package/cli/dist/webview/inspection-webview-provider.d.ts.map +1 -0
- package/cli/dist/webview/inspection-webview-provider.js +386 -0
- package/cli/dist/webview/inspection-webview-provider.js.map +1 -0
- package/package.json +4 -1
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* AI Summary Generation Utilities
|
|
4
|
+
*
|
|
5
|
+
* Generates concise summaries of modules for AI context
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.generateModuleSummary = generateModuleSummary;
|
|
42
|
+
exports.generateDetailedSummary = generateDetailedSummary;
|
|
43
|
+
exports.generateJSONSummary = generateJSONSummary;
|
|
44
|
+
exports.generateCompactSummary = generateCompactSummary;
|
|
45
|
+
exports.generateAIContext = generateAIContext;
|
|
46
|
+
exports.generateSummaryWithSuggestions = generateSummaryWithSuggestions;
|
|
47
|
+
const fs = __importStar(require("fs"));
|
|
48
|
+
const path = __importStar(require("path"));
|
|
49
|
+
/**
|
|
50
|
+
* Generate a concise summary of a module
|
|
51
|
+
*/
|
|
52
|
+
function generateModuleSummary(module) {
|
|
53
|
+
const keyRules = module.rules?.slice(0, 10) || [];
|
|
54
|
+
const exampleCount = module.examples?.length || 0;
|
|
55
|
+
const characterCount = module.metadata.augment?.characterCount || 0;
|
|
56
|
+
const tags = module.metadata.tags || [];
|
|
57
|
+
const summary = `${module.fullName} (v${module.metadata.version}) provides ${module.metadata.type} guidelines. ` +
|
|
58
|
+
`Includes ${keyRules.length} key rules and ${exampleCount} examples. ` +
|
|
59
|
+
`Total content: ~${characterCount} characters.`;
|
|
60
|
+
return {
|
|
61
|
+
name: module.fullName,
|
|
62
|
+
version: module.metadata.version,
|
|
63
|
+
type: module.metadata.type,
|
|
64
|
+
description: module.metadata.description,
|
|
65
|
+
keyRules,
|
|
66
|
+
exampleCount,
|
|
67
|
+
characterCount,
|
|
68
|
+
tags,
|
|
69
|
+
summary
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Generate a detailed AI-friendly summary
|
|
74
|
+
*/
|
|
75
|
+
function generateDetailedSummary(module, includeContent = false) {
|
|
76
|
+
const summary = generateModuleSummary(module);
|
|
77
|
+
let output = `# ${summary.name}\n\n`;
|
|
78
|
+
output += `**Version**: ${summary.version}\n`;
|
|
79
|
+
output += `**Type**: ${summary.type}\n`;
|
|
80
|
+
output += `**Description**: ${summary.description}\n\n`;
|
|
81
|
+
output += `## Quick Summary\n${summary.summary}\n\n`;
|
|
82
|
+
if (summary.tags.length > 0) {
|
|
83
|
+
output += `## Tags\n${summary.tags.map(tag => `- ${tag}`).join('\n')}\n\n`;
|
|
84
|
+
}
|
|
85
|
+
if (summary.keyRules.length > 0) {
|
|
86
|
+
output += `## Key Rules\n`;
|
|
87
|
+
summary.keyRules.forEach((rule, i) => {
|
|
88
|
+
output += `${i + 1}. ${rule}\n`;
|
|
89
|
+
});
|
|
90
|
+
output += '\n';
|
|
91
|
+
}
|
|
92
|
+
if (summary.exampleCount > 0) {
|
|
93
|
+
output += `## Examples\n`;
|
|
94
|
+
output += `This module includes ${summary.exampleCount} example(s).\n\n`;
|
|
95
|
+
}
|
|
96
|
+
output += `## Metrics\n`;
|
|
97
|
+
output += `- Character Count: ${summary.characterCount.toLocaleString()}\n`;
|
|
98
|
+
output += `- Rules: ${summary.keyRules.length}\n`;
|
|
99
|
+
output += `- Examples: ${summary.exampleCount}\n\n`;
|
|
100
|
+
if (includeContent && module.path) {
|
|
101
|
+
output += `## Content Preview\n`;
|
|
102
|
+
output += generateContentPreview(module);
|
|
103
|
+
}
|
|
104
|
+
return output;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Generate a content preview from module files
|
|
108
|
+
*/
|
|
109
|
+
function generateContentPreview(module) {
|
|
110
|
+
let preview = '';
|
|
111
|
+
// Try to read README
|
|
112
|
+
const readmePath = path.join(module.path, 'README.md');
|
|
113
|
+
if (fs.existsSync(readmePath)) {
|
|
114
|
+
const content = fs.readFileSync(readmePath, 'utf-8');
|
|
115
|
+
const lines = content.split('\n').slice(0, 20);
|
|
116
|
+
preview += '### README.md (first 20 lines)\n```markdown\n';
|
|
117
|
+
preview += lines.join('\n');
|
|
118
|
+
preview += '\n```\n\n';
|
|
119
|
+
}
|
|
120
|
+
// Try to read first rule file
|
|
121
|
+
if (module.rules && module.rules.length > 0) {
|
|
122
|
+
const firstRule = module.rules[0];
|
|
123
|
+
const rulePath = path.join(module.path, 'rules', firstRule);
|
|
124
|
+
if (fs.existsSync(rulePath)) {
|
|
125
|
+
const content = fs.readFileSync(rulePath, 'utf-8');
|
|
126
|
+
const lines = content.split('\n').slice(0, 15);
|
|
127
|
+
preview += `### ${firstRule} (first 15 lines)\n\`\`\`markdown\n`;
|
|
128
|
+
preview += lines.join('\n');
|
|
129
|
+
preview += '\n```\n\n';
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return preview || 'No content preview available.\n';
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Generate a JSON summary for programmatic use
|
|
136
|
+
*/
|
|
137
|
+
function generateJSONSummary(module) {
|
|
138
|
+
const summary = generateModuleSummary(module);
|
|
139
|
+
return JSON.stringify(summary, null, 2);
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Generate a compact one-line summary
|
|
143
|
+
*/
|
|
144
|
+
function generateCompactSummary(module) {
|
|
145
|
+
const summary = generateModuleSummary(module);
|
|
146
|
+
return `${summary.name} v${summary.version}: ${summary.description} (${summary.keyRules.length} rules, ${summary.exampleCount} examples)`;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Generate AI context string for injection
|
|
150
|
+
*/
|
|
151
|
+
function generateAIContext(module) {
|
|
152
|
+
const summary = generateModuleSummary(module);
|
|
153
|
+
let context = `Module: ${summary.name}\n`;
|
|
154
|
+
context += `Type: ${summary.type}\n`;
|
|
155
|
+
context += `Description: ${summary.description}\n\n`;
|
|
156
|
+
context += `Key Standards:\n`;
|
|
157
|
+
summary.keyRules.forEach((rule, i) => {
|
|
158
|
+
context += `${i + 1}. ${rule}\n`;
|
|
159
|
+
});
|
|
160
|
+
context += `\nWhen generating code, follow these ${summary.type} standards from ${summary.name}.\n`;
|
|
161
|
+
return context;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Generate a summary with optimization suggestions
|
|
165
|
+
*/
|
|
166
|
+
function generateSummaryWithSuggestions(module) {
|
|
167
|
+
const summary = generateDetailedSummary(module, false);
|
|
168
|
+
let suggestions = '\n## AI Usage Suggestions\n\n';
|
|
169
|
+
suggestions += `### For Code Generation\n`;
|
|
170
|
+
suggestions += `Use this module when generating ${module.metadata.type} code to ensure compliance with standards.\n\n`;
|
|
171
|
+
suggestions += `### For Code Review\n`;
|
|
172
|
+
suggestions += `Reference these rules when reviewing code for ${module.metadata.type} best practices.\n\n`;
|
|
173
|
+
suggestions += `### For Refactoring\n`;
|
|
174
|
+
suggestions += `Apply these standards when refactoring existing code to improve quality and maintainability.\n\n`;
|
|
175
|
+
return summary + suggestions;
|
|
176
|
+
}
|
|
177
|
+
//# sourceMappingURL=ai-summary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-summary.js","sourceRoot":"","sources":["../../src/utils/ai-summary.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Augment configuration interface
|
|
3
|
+
*/
|
|
4
|
+
export interface AugmentConfig {
|
|
5
|
+
version: string;
|
|
6
|
+
plugins?: {
|
|
7
|
+
enabled?: boolean;
|
|
8
|
+
directory?: string;
|
|
9
|
+
autoLoad?: boolean;
|
|
10
|
+
};
|
|
11
|
+
inspection?: {
|
|
12
|
+
defaultFormat?: 'text' | 'json' | 'markdown';
|
|
13
|
+
cache?: boolean;
|
|
14
|
+
cacheTTL?: number;
|
|
15
|
+
maxDepth?: number;
|
|
16
|
+
pageSize?: number;
|
|
17
|
+
secureMode?: boolean;
|
|
18
|
+
syntaxHighlighting?: boolean;
|
|
19
|
+
};
|
|
20
|
+
modules?: {
|
|
21
|
+
searchPaths?: string[];
|
|
22
|
+
autoDiscover?: boolean;
|
|
23
|
+
linkedModulesFile?: string;
|
|
24
|
+
};
|
|
25
|
+
hooks?: {
|
|
26
|
+
enabled?: boolean;
|
|
27
|
+
timeout?: number;
|
|
28
|
+
};
|
|
29
|
+
vscode?: {
|
|
30
|
+
enableFileLinks?: boolean;
|
|
31
|
+
openInPreview?: boolean;
|
|
32
|
+
webviewEnabled?: boolean;
|
|
33
|
+
};
|
|
34
|
+
ai?: {
|
|
35
|
+
enablePromptGeneration?: boolean;
|
|
36
|
+
enableSummaries?: boolean;
|
|
37
|
+
defaultPromptTemplate?: 'code-review' | 'module-summary' | 'optimization' | 'refactoring';
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Configuration loader class
|
|
42
|
+
*/
|
|
43
|
+
export declare class ConfigLoader {
|
|
44
|
+
private static instance;
|
|
45
|
+
private config;
|
|
46
|
+
private configPath;
|
|
47
|
+
private lastModified;
|
|
48
|
+
private constructor();
|
|
49
|
+
/**
|
|
50
|
+
* Get singleton instance
|
|
51
|
+
*/
|
|
52
|
+
static getInstance(): ConfigLoader;
|
|
53
|
+
/**
|
|
54
|
+
* Load configuration from file
|
|
55
|
+
*/
|
|
56
|
+
loadConfig(customPath?: string): AugmentConfig;
|
|
57
|
+
/**
|
|
58
|
+
* Find configuration file in standard locations
|
|
59
|
+
*/
|
|
60
|
+
private findConfigFile;
|
|
61
|
+
/**
|
|
62
|
+
* Load default configuration
|
|
63
|
+
*/
|
|
64
|
+
private loadDefaultConfig;
|
|
65
|
+
/**
|
|
66
|
+
* Validate configuration against JSON schema
|
|
67
|
+
*/
|
|
68
|
+
private validateConfig;
|
|
69
|
+
/**
|
|
70
|
+
* Merge user configuration with defaults
|
|
71
|
+
*/
|
|
72
|
+
private mergeConfigs;
|
|
73
|
+
/**
|
|
74
|
+
* Get current configuration
|
|
75
|
+
*/
|
|
76
|
+
getConfig(): AugmentConfig;
|
|
77
|
+
/**
|
|
78
|
+
* Reload configuration from disk
|
|
79
|
+
*/
|
|
80
|
+
reloadConfig(): AugmentConfig;
|
|
81
|
+
/**
|
|
82
|
+
* Get specific configuration value
|
|
83
|
+
*/
|
|
84
|
+
get<K extends keyof AugmentConfig>(key: K): AugmentConfig[K];
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Export singleton instance
|
|
88
|
+
*/
|
|
89
|
+
export declare const configLoader: ConfigLoader;
|
|
90
|
+
//# sourceMappingURL=config-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,UAAU,CAAC,EAAE;QACX,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;QAC7C,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B,CAAC;IACF,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;IACF,EAAE,CAAC,EAAE;QACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,qBAAqB,CAAC,EAAE,aAAa,GAAG,gBAAgB,GAAG,cAAc,GAAG,aAAa,CAAC;KAC3F,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAe;IACtC,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,YAAY,CAAa;IAEjC,OAAO;IAEP;;OAEG;WACW,WAAW,IAAI,YAAY;IAOzC;;OAEG;IACI,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,aAAa;IA0CrD;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoCzB;;OAEG;IACH,OAAO,CAAC,cAAc;IAsBtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;OAEG;IACI,SAAS,IAAI,aAAa;IAOjC;;OAEG;IACI,YAAY,IAAI,aAAa;IAMpC;;OAEG;IACI,GAAG,CAAC,CAAC,SAAS,MAAM,aAAa,EAAE,GAAG,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC;CAIpE;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,cAA6B,CAAC"}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.configLoader = exports.ConfigLoader = void 0;
|
|
40
|
+
const fs = __importStar(require("fs"));
|
|
41
|
+
const path = __importStar(require("path"));
|
|
42
|
+
const ajv_1 = __importDefault(require("ajv"));
|
|
43
|
+
/**
|
|
44
|
+
* Configuration loader class
|
|
45
|
+
*/
|
|
46
|
+
class ConfigLoader {
|
|
47
|
+
constructor() {
|
|
48
|
+
this.config = null;
|
|
49
|
+
this.configPath = null;
|
|
50
|
+
this.lastModified = 0;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get singleton instance
|
|
54
|
+
*/
|
|
55
|
+
static getInstance() {
|
|
56
|
+
if (!ConfigLoader.instance) {
|
|
57
|
+
ConfigLoader.instance = new ConfigLoader();
|
|
58
|
+
}
|
|
59
|
+
return ConfigLoader.instance;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Load configuration from file
|
|
63
|
+
*/
|
|
64
|
+
loadConfig(customPath) {
|
|
65
|
+
// Determine config file path
|
|
66
|
+
const configPath = customPath || this.findConfigFile();
|
|
67
|
+
if (!configPath) {
|
|
68
|
+
// Return default configuration
|
|
69
|
+
return this.loadDefaultConfig();
|
|
70
|
+
}
|
|
71
|
+
// Check if config file has been modified
|
|
72
|
+
const stats = fs.statSync(configPath);
|
|
73
|
+
const modified = stats.mtimeMs;
|
|
74
|
+
if (this.config && this.configPath === configPath && this.lastModified === modified) {
|
|
75
|
+
// Return cached config
|
|
76
|
+
return this.config;
|
|
77
|
+
}
|
|
78
|
+
// Load and parse config file
|
|
79
|
+
try {
|
|
80
|
+
const configContent = fs.readFileSync(configPath, 'utf-8');
|
|
81
|
+
const userConfig = JSON.parse(configContent);
|
|
82
|
+
// Validate config against schema
|
|
83
|
+
if (!this.validateConfig(userConfig)) {
|
|
84
|
+
console.warn('Invalid configuration file. Using defaults.');
|
|
85
|
+
return this.loadDefaultConfig();
|
|
86
|
+
}
|
|
87
|
+
// Merge with defaults
|
|
88
|
+
const defaultConfig = this.loadDefaultConfig();
|
|
89
|
+
this.config = this.mergeConfigs(defaultConfig, userConfig);
|
|
90
|
+
this.configPath = configPath;
|
|
91
|
+
this.lastModified = modified;
|
|
92
|
+
return this.config;
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
console.error('Error loading configuration:', error);
|
|
96
|
+
return this.loadDefaultConfig();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Find configuration file in standard locations
|
|
101
|
+
*/
|
|
102
|
+
findConfigFile() {
|
|
103
|
+
const searchPaths = [
|
|
104
|
+
path.join(process.cwd(), '.augment', 'augment.json'),
|
|
105
|
+
path.join(process.cwd(), 'augment.json'),
|
|
106
|
+
path.join(process.env.HOME || process.env.USERPROFILE || '', '.augment', 'augment.json')
|
|
107
|
+
];
|
|
108
|
+
for (const searchPath of searchPaths) {
|
|
109
|
+
if (fs.existsSync(searchPath)) {
|
|
110
|
+
return searchPath;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return null;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Load default configuration
|
|
117
|
+
*/
|
|
118
|
+
loadDefaultConfig() {
|
|
119
|
+
const defaultConfigPath = path.join(__dirname, '..', '..', 'config', 'augment-default.json');
|
|
120
|
+
try {
|
|
121
|
+
const configContent = fs.readFileSync(defaultConfigPath, 'utf-8');
|
|
122
|
+
return JSON.parse(configContent);
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
// Fallback to hardcoded defaults
|
|
126
|
+
return {
|
|
127
|
+
version: '1.0.0',
|
|
128
|
+
plugins: { enabled: true, directory: '.augment/plugins', autoLoad: true },
|
|
129
|
+
inspection: {
|
|
130
|
+
defaultFormat: 'text',
|
|
131
|
+
cache: true,
|
|
132
|
+
cacheTTL: 3600,
|
|
133
|
+
maxDepth: 5,
|
|
134
|
+
pageSize: 10,
|
|
135
|
+
secureMode: false,
|
|
136
|
+
syntaxHighlighting: true
|
|
137
|
+
},
|
|
138
|
+
modules: {
|
|
139
|
+
searchPaths: ['augment-extensions'],
|
|
140
|
+
autoDiscover: true,
|
|
141
|
+
linkedModulesFile: '.augment/extensions.json'
|
|
142
|
+
},
|
|
143
|
+
hooks: { enabled: true, timeout: 5000 },
|
|
144
|
+
vscode: { enableFileLinks: true, openInPreview: false, webviewEnabled: true },
|
|
145
|
+
ai: {
|
|
146
|
+
enablePromptGeneration: true,
|
|
147
|
+
enableSummaries: true,
|
|
148
|
+
defaultPromptTemplate: 'module-summary'
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Validate configuration against JSON schema
|
|
155
|
+
*/
|
|
156
|
+
validateConfig(config) {
|
|
157
|
+
try {
|
|
158
|
+
const schemaPath = path.join(__dirname, '..', '..', 'config', 'augment-schema.json');
|
|
159
|
+
const schemaContent = fs.readFileSync(schemaPath, 'utf-8');
|
|
160
|
+
const schema = JSON.parse(schemaContent);
|
|
161
|
+
const ajv = new ajv_1.default();
|
|
162
|
+
const validate = ajv.compile(schema);
|
|
163
|
+
const valid = validate(config);
|
|
164
|
+
if (!valid) {
|
|
165
|
+
console.error('Configuration validation errors:', validate.errors);
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
return true;
|
|
169
|
+
}
|
|
170
|
+
catch (error) {
|
|
171
|
+
console.error('Error validating configuration:', error);
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Merge user configuration with defaults
|
|
177
|
+
*/
|
|
178
|
+
mergeConfigs(defaultConfig, userConfig) {
|
|
179
|
+
return {
|
|
180
|
+
version: userConfig.version || defaultConfig.version,
|
|
181
|
+
plugins: { ...defaultConfig.plugins, ...userConfig.plugins },
|
|
182
|
+
inspection: { ...defaultConfig.inspection, ...userConfig.inspection },
|
|
183
|
+
modules: {
|
|
184
|
+
...defaultConfig.modules,
|
|
185
|
+
...userConfig.modules,
|
|
186
|
+
searchPaths: userConfig.modules?.searchPaths || defaultConfig.modules?.searchPaths
|
|
187
|
+
},
|
|
188
|
+
hooks: { ...defaultConfig.hooks, ...userConfig.hooks },
|
|
189
|
+
vscode: { ...defaultConfig.vscode, ...userConfig.vscode },
|
|
190
|
+
ai: { ...defaultConfig.ai, ...userConfig.ai }
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Get current configuration
|
|
195
|
+
*/
|
|
196
|
+
getConfig() {
|
|
197
|
+
if (!this.config) {
|
|
198
|
+
return this.loadConfig();
|
|
199
|
+
}
|
|
200
|
+
return this.config;
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Reload configuration from disk
|
|
204
|
+
*/
|
|
205
|
+
reloadConfig() {
|
|
206
|
+
this.config = null;
|
|
207
|
+
this.lastModified = 0;
|
|
208
|
+
return this.loadConfig();
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Get specific configuration value
|
|
212
|
+
*/
|
|
213
|
+
get(key) {
|
|
214
|
+
const config = this.getConfig();
|
|
215
|
+
return config[key];
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
exports.ConfigLoader = ConfigLoader;
|
|
219
|
+
/**
|
|
220
|
+
* Export singleton instance
|
|
221
|
+
*/
|
|
222
|
+
exports.configLoader = ConfigLoader.getInstance();
|
|
223
|
+
//# sourceMappingURL=config-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import * as vscode from 'vscode';
|
|
2
|
+
import { Module } from '../utils/module-system';
|
|
3
|
+
/**
|
|
4
|
+
* Webview provider for module inspection reports
|
|
5
|
+
*/
|
|
6
|
+
export declare class InspectionWebviewProvider implements vscode.WebviewViewProvider {
|
|
7
|
+
private readonly _extensionUri;
|
|
8
|
+
static readonly viewType = "augmentExtensions.inspectionView";
|
|
9
|
+
private _view?;
|
|
10
|
+
private _currentModule?;
|
|
11
|
+
constructor(_extensionUri: vscode.Uri);
|
|
12
|
+
/**
|
|
13
|
+
* Resolve webview view
|
|
14
|
+
*/
|
|
15
|
+
resolveWebviewView(webviewView: vscode.WebviewView, context: vscode.WebviewViewResolveContext, _token: vscode.CancellationToken): void;
|
|
16
|
+
/**
|
|
17
|
+
* Show module inspection in webview
|
|
18
|
+
*/
|
|
19
|
+
showModule(module: Module): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Refresh current module
|
|
22
|
+
*/
|
|
23
|
+
refresh(): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Export to file
|
|
26
|
+
*/
|
|
27
|
+
exportToFile(format: 'json' | 'markdown' | 'html'): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Navigate to section
|
|
30
|
+
*/
|
|
31
|
+
private navigateToSection;
|
|
32
|
+
/**
|
|
33
|
+
* Generate HTML for webview
|
|
34
|
+
*/
|
|
35
|
+
private _getHtmlForWebview;
|
|
36
|
+
/**
|
|
37
|
+
* Generate HTML for module inspection
|
|
38
|
+
*/
|
|
39
|
+
private _getModuleHtml;
|
|
40
|
+
/**
|
|
41
|
+
* Generate export content
|
|
42
|
+
*/
|
|
43
|
+
private _generateExportContent;
|
|
44
|
+
/**
|
|
45
|
+
* Format bytes to human-readable string
|
|
46
|
+
*/
|
|
47
|
+
private _formatBytes;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=inspection-webview-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspection-webview-provider.d.ts","sourceRoot":"","sources":["../../src/webview/inspection-webview-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAGjC,OAAO,EAAE,MAAM,EAAyB,MAAM,wBAAwB,CAAC;AAEvE;;GAEG;AACH,qBAAa,yBAA0B,YAAW,MAAM,CAAC,mBAAmB;IAM9D,OAAO,CAAC,QAAQ,CAAC,aAAa;IAL1C,gBAAuB,QAAQ,sCAAsC;IAErE,OAAO,CAAC,KAAK,CAAC,CAAqB;IACnC,OAAO,CAAC,cAAc,CAAC,CAAS;gBAEH,aAAa,EAAE,MAAM,CAAC,GAAG;IAEtD;;OAEG;IACI,kBAAkB,CACvB,WAAW,EAAE,MAAM,CAAC,WAAW,EAC/B,OAAO,EAAE,MAAM,CAAC,yBAAyB,EACzC,MAAM,EAAE,MAAM,CAAC,iBAAiB,GAC/B,IAAI;IA0BP;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrC;;OAEG;IACU,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B9E;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAuC1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAqKtB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4C9B;;OAEG;IACH,OAAO,CAAC,YAAY;CAOrB"}
|