generator-agent 1.0.2 → 1.0.3
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/.vscode/agents.json +1 -1
- package/main.js +16 -1
- package/package.json +9 -1
- package/post-install.js +39 -1
package/.vscode/agents.json
CHANGED
package/main.js
CHANGED
|
@@ -38,7 +38,22 @@ function activate(context) {
|
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
//
|
|
41
|
+
// Register chat participant for Copilot
|
|
42
|
+
if (vscode.chat && vscode.chat.createChatParticipant) {
|
|
43
|
+
const participant = vscode.chat.createChatParticipant('generators', (request, context, stream, token) => {
|
|
44
|
+
stream.markdown('👋 Generator Agent activated! Use me to generate API data generators.\n\n');
|
|
45
|
+
stream.markdown('Available commands:\n');
|
|
46
|
+
stream.markdown('- Create a new generator\n');
|
|
47
|
+
stream.markdown('- Analyze OpenAPI specification\n');
|
|
48
|
+
stream.markdown('- Generate based on patterns\n');
|
|
49
|
+
return {};
|
|
50
|
+
});
|
|
51
|
+
participant.iconPath = vscode.Uri.file(__dirname + '/.agents/generators.json');
|
|
52
|
+
context.subscriptions.push(participant);
|
|
53
|
+
console.log('✅ Chat participant registered: @generators');
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Export agents for Copilot discovery (fallback)
|
|
42
57
|
if (vscode.window && vscode.window.registerChatAgents) {
|
|
43
58
|
try {
|
|
44
59
|
agents.forEach(agent => {
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "generator-agent",
|
|
3
3
|
"displayName": "GeneratorAgent",
|
|
4
4
|
"description": "A VS Code extension for conditional rule-based data generation",
|
|
5
|
-
"version": "1.0.
|
|
5
|
+
"version": "1.0.3",
|
|
6
6
|
"publisher": "zohodesk",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.80.0"
|
|
@@ -26,6 +26,14 @@
|
|
|
26
26
|
"command": "generator.start",
|
|
27
27
|
"title": "Start Generator Agent"
|
|
28
28
|
}
|
|
29
|
+
],
|
|
30
|
+
"chatParticipants": [
|
|
31
|
+
{
|
|
32
|
+
"id": "generators",
|
|
33
|
+
"name": "Generators",
|
|
34
|
+
"description": "Generator Agent responsible for generating generators",
|
|
35
|
+
"isSticky": true
|
|
36
|
+
}
|
|
29
37
|
]
|
|
30
38
|
},
|
|
31
39
|
"repository": {
|
package/post-install.js
CHANGED
|
@@ -59,6 +59,44 @@ try {
|
|
|
59
59
|
|
|
60
60
|
fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2));
|
|
61
61
|
|
|
62
|
+
// Create extension symlink for VS Code to discover
|
|
63
|
+
const extensionsDir = path.join(cwd, '.vscode', 'extensions');
|
|
64
|
+
const extensionLink = path.join(extensionsDir, 'generator-agent');
|
|
65
|
+
const packagePath = path.join(cwd, 'node_modules', 'generator-agent');
|
|
66
|
+
|
|
67
|
+
if (!fs.existsSync(extensionsDir)) {
|
|
68
|
+
fs.mkdirSync(extensionsDir, { recursive: true });
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Remove old symlink if exists
|
|
72
|
+
if (fs.existsSync(extensionLink)) {
|
|
73
|
+
fs.unlinkSync(extensionLink);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// Create symlink to make extension discoverable
|
|
77
|
+
try {
|
|
78
|
+
fs.symlinkSync(packagePath, extensionLink, 'dir');
|
|
79
|
+
console.log('🔗 Extension linked to .vscode/extensions/');
|
|
80
|
+
} catch (e) {
|
|
81
|
+
console.log('⚠️ Could not create symlink, copying files instead...');
|
|
82
|
+
// Fallback: copy instead of symlink
|
|
83
|
+
const copyDir = (src, dest) => {
|
|
84
|
+
if (!fs.existsSync(dest)) fs.mkdirSync(dest, { recursive: true });
|
|
85
|
+
const entries = fs.readdirSync(src, { withFileTypes: true });
|
|
86
|
+
for (let entry of entries) {
|
|
87
|
+
const srcPath = path.join(src, entry.name);
|
|
88
|
+
const destPath = path.join(dest, entry.name);
|
|
89
|
+
if (entry.isDirectory()) {
|
|
90
|
+
copyDir(srcPath, destPath);
|
|
91
|
+
} else {
|
|
92
|
+
fs.copyFileSync(srcPath, destPath);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
copyDir(packagePath, extensionLink);
|
|
97
|
+
console.log('📁 Extension files copied to .vscode/extensions/');
|
|
98
|
+
}
|
|
99
|
+
|
|
62
100
|
console.log('✅ Agent registered in:', cwd);
|
|
63
101
|
console.log('📍 Config saved to:', configPath);
|
|
64
102
|
console.log('⚙️ VS Code settings updated');
|
|
@@ -67,7 +105,7 @@ try {
|
|
|
67
105
|
console.log(' Press Ctrl+Shift+P (or Cmd+Shift+P on Mac)');
|
|
68
106
|
console.log(' Type "Developer: Reload Window" and press Enter');
|
|
69
107
|
console.log('');
|
|
70
|
-
console.log('💡
|
|
108
|
+
console.log('💡 Agent will appear in agent list (@ dropdown)');
|
|
71
109
|
console.log('✨ Post-install complete!');
|
|
72
110
|
process.exit(0);
|
|
73
111
|
} catch (error) {
|