@ryuenn3123/agentic-senior-core 6.6.0 → 6.6.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/.agents/plugins/agentic-senior-core/plugin.json +1 -1
- package/gemini-extension.json +1 -1
- package/lib/cli/commands/adapter.mjs +21 -1
- package/lib/cli/commands/global.mjs +24 -7
- package/package.json +1 -1
- package/plugin.yaml +1 -1
- /package/{.agents/plugins/agentic-senior-core → lib}/kilo-plugin/agentic-senior-core.js +0 -0
package/gemini-extension.json
CHANGED
|
@@ -64,7 +64,7 @@ const ADAPTER_TARGETS = {
|
|
|
64
64
|
legacyTargetPath: '.kilocode/rules/agentic-senior-core.md',
|
|
65
65
|
pluginTargetPath: '.kilo/plugin/agentic-senior-core.js',
|
|
66
66
|
sourcePath: '.agents/plugins/agentic-senior-core/rules/agentic-senior-core.md',
|
|
67
|
-
pluginSourcePath: '
|
|
67
|
+
pluginSourcePath: 'lib/kilo-plugin/agentic-senior-core.js',
|
|
68
68
|
},
|
|
69
69
|
roo: {
|
|
70
70
|
label: 'Roo Code',
|
|
@@ -87,6 +87,21 @@ async function pathExists(filePath) {
|
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
+
async function copyDirRecursive(src, dest, ignoreNames = []) {
|
|
91
|
+
await fs.mkdir(dest, { recursive: true });
|
|
92
|
+
const entries = await fs.readdir(src, { withFileTypes: true });
|
|
93
|
+
for (const entry of entries) {
|
|
94
|
+
if (ignoreNames.includes(entry.name)) continue;
|
|
95
|
+
const srcPath = path.join(src, entry.name);
|
|
96
|
+
const destPath = path.join(dest, entry.name);
|
|
97
|
+
if (entry.isDirectory()) {
|
|
98
|
+
await copyDirRecursive(srcPath, destPath, ignoreNames);
|
|
99
|
+
} else {
|
|
100
|
+
await fs.copyFile(srcPath, destPath);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
90
105
|
async function generateAdapter(targetDirectory, adapterKey) {
|
|
91
106
|
const adapter = ADAPTER_TARGETS[adapterKey];
|
|
92
107
|
if (!adapter) {
|
|
@@ -130,6 +145,11 @@ async function generateAdapter(targetDirectory, adapterKey) {
|
|
|
130
145
|
await fs.copyFile(pluginSource, pluginTarget);
|
|
131
146
|
}
|
|
132
147
|
}
|
|
148
|
+
const skillsSource = path.join(REPOSITORY_ROOT, '.agents', 'plugins', 'agentic-senior-core', 'skills');
|
|
149
|
+
const localSkillsTarget = path.join(targetDirectory, '.kilo', 'skills');
|
|
150
|
+
if (await pathExists(skillsSource)) {
|
|
151
|
+
await copyDirRecursive(skillsSource, localSkillsTarget);
|
|
152
|
+
}
|
|
133
153
|
if (adapter.legacyTargetPath) {
|
|
134
154
|
const legacyTarget = path.join(targetDirectory, adapter.legacyTargetPath);
|
|
135
155
|
await fs.mkdir(path.dirname(legacyTarget), { recursive: true });
|
|
@@ -58,7 +58,7 @@ const GLOBAL_TARGETS = {
|
|
|
58
58
|
label: 'Kilo Code',
|
|
59
59
|
kind: 'kilo-global',
|
|
60
60
|
rulesSourcePath: '.agents/plugins/agentic-senior-core/rules/agentic-senior-core.md',
|
|
61
|
-
pluginSourcePath: '
|
|
61
|
+
pluginSourcePath: 'lib/kilo-plugin/agentic-senior-core.js',
|
|
62
62
|
targetPath: () => path.join(HOME, '.config', 'kilo', 'rules', 'agentic-senior-core.md'),
|
|
63
63
|
legacyTargetPath: () => path.join(HOME, '.kilocode', 'rules', 'agentic-senior-core.md'),
|
|
64
64
|
pluginTargetPath: () => path.join(HOME, '.config', 'kilo', 'plugin', 'agentic-senior-core.js'),
|
|
@@ -181,11 +181,17 @@ async function installCodexGlobal(target) {
|
|
|
181
181
|
|
|
182
182
|
// Copy plugin bundle & marketplace catalog (~/.agents/plugins/)
|
|
183
183
|
await fs.mkdir(pluginTarget, { recursive: true });
|
|
184
|
-
await copyDirRecursive(pluginSource, pluginTarget);
|
|
184
|
+
await copyDirRecursive(pluginSource, pluginTarget, ['kilo-plugin']);
|
|
185
185
|
|
|
186
186
|
// Copy direct plugin bundle to ~/.codex/plugins/agentic-senior-core/ for instant Codex discovery
|
|
187
187
|
await fs.mkdir(codexDirectPluginTarget, { recursive: true });
|
|
188
|
-
await copyDirRecursive(singlePluginSource, codexDirectPluginTarget);
|
|
188
|
+
await copyDirRecursive(singlePluginSource, codexDirectPluginTarget, ['kilo-plugin']);
|
|
189
|
+
|
|
190
|
+
// Clean up legacy kilo-plugin folder if present in Codex targets
|
|
191
|
+
const legacyKiloCodex1 = path.join(pluginTarget, 'agentic-senior-core', 'kilo-plugin');
|
|
192
|
+
const legacyKiloCodex2 = path.join(codexDirectPluginTarget, 'kilo-plugin');
|
|
193
|
+
if (await pathExists(legacyKiloCodex1)) await fs.rm(legacyKiloCodex1, { recursive: true, force: true });
|
|
194
|
+
if (await pathExists(legacyKiloCodex2)) await fs.rm(legacyKiloCodex2, { recursive: true, force: true });
|
|
189
195
|
|
|
190
196
|
// Clean up standalone skill directories so skills remain 100% unified inside the plugin bundle
|
|
191
197
|
const agentsSkillsTarget = path.join(HOME, '.agents', 'skills');
|
|
@@ -227,6 +233,12 @@ async function installKiloGlobal(target) {
|
|
|
227
233
|
await fs.copyFile(pluginSource, pluginTarget);
|
|
228
234
|
}
|
|
229
235
|
|
|
236
|
+
const skillsSource = path.join(REPOSITORY_ROOT, '.agents', 'plugins', 'agentic-senior-core', 'skills');
|
|
237
|
+
const globalSkillsTarget = path.join(HOME, '.kilo', 'skills');
|
|
238
|
+
if (await pathExists(skillsSource)) {
|
|
239
|
+
await copyDirRecursive(skillsSource, globalSkillsTarget);
|
|
240
|
+
}
|
|
241
|
+
|
|
230
242
|
if (process.env.APPDATA) {
|
|
231
243
|
const appDataKiloPlugin = path.join(process.env.APPDATA, 'kilo', 'plugin', 'agentic-senior-core.js');
|
|
232
244
|
const appDataKiloRules = path.join(process.env.APPDATA, 'kilo', 'rules', 'agentic-senior-core.md');
|
|
@@ -240,7 +252,7 @@ async function installKiloGlobal(target) {
|
|
|
240
252
|
} catch (_) {}
|
|
241
253
|
}
|
|
242
254
|
|
|
243
|
-
console.log(` ${target.label}: ${rulesTarget} & ${
|
|
255
|
+
console.log(` ${target.label}: ${rulesTarget}, ${pluginTarget} & ${globalSkillsTarget} ... OK`);
|
|
244
256
|
return true;
|
|
245
257
|
}
|
|
246
258
|
|
|
@@ -255,12 +267,17 @@ async function installAntigravityIde(target) {
|
|
|
255
267
|
return false;
|
|
256
268
|
}
|
|
257
269
|
|
|
258
|
-
// Filter out .codex-plugin and .app.json so ~/.gemini/ remains 100% clean without Codex-specific files/folders
|
|
270
|
+
// Filter out .codex-plugin, kilo-plugin, and .app.json so ~/.gemini/ remains 100% clean without Codex/Kilo-specific files/folders
|
|
259
271
|
await fs.mkdir(path.dirname(pluginTargetPath), { recursive: true });
|
|
260
|
-
await copyDirRecursive(pluginSource, pluginTargetPath, ['.codex-plugin', '.app.json']);
|
|
272
|
+
await copyDirRecursive(pluginSource, pluginTargetPath, ['.codex-plugin', '.app.json', 'kilo-plugin']);
|
|
261
273
|
|
|
262
274
|
await fs.mkdir(path.dirname(cliTargetPath), { recursive: true });
|
|
263
|
-
await copyDirRecursive(pluginSource, cliTargetPath, ['.codex-plugin', '.app.json']);
|
|
275
|
+
await copyDirRecursive(pluginSource, cliTargetPath, ['.codex-plugin', '.app.json', 'kilo-plugin']);
|
|
276
|
+
|
|
277
|
+
const legacyKilo1 = path.join(pluginTargetPath, 'kilo-plugin');
|
|
278
|
+
const legacyKilo2 = path.join(cliTargetPath, 'kilo-plugin');
|
|
279
|
+
if (await pathExists(legacyKilo1)) await fs.rm(legacyKilo1, { recursive: true, force: true });
|
|
280
|
+
if (await pathExists(legacyKilo2)) await fs.rm(legacyKilo2, { recursive: true, force: true });
|
|
264
281
|
|
|
265
282
|
// Antigravity CLI enforces strict plugin.json schema (additionalProperties: false).
|
|
266
283
|
// Only name, description, $schema are valid. Extra fields (version, rules, skills, hooks)
|
package/package.json
CHANGED
package/plugin.yaml
CHANGED
|
File without changes
|