pikakit 3.7.4 → 3.7.6
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/bin/lib/commands/install.js +37 -12
- package/bin/lib/ui.js +14 -7
- package/package.json +78 -76
|
@@ -652,27 +652,52 @@ export async function run(spec) {
|
|
|
652
652
|
// VS Code not available, continue
|
|
653
653
|
}
|
|
654
654
|
|
|
655
|
-
// Also install to Antigravity extensions folder
|
|
655
|
+
// Also install to Antigravity extensions folder by extracting VSIX
|
|
656
656
|
const antigravityExt = path.join(os.homedir(), ".antigravity", "extensions");
|
|
657
657
|
if (fs.existsSync(path.join(os.homedir(), ".antigravity"))) {
|
|
658
658
|
try {
|
|
659
659
|
fs.mkdirSync(antigravityExt, { recursive: true });
|
|
660
660
|
const extDest = path.join(antigravityExt, "pikakit.pikakit-skill-generator-1.0.0");
|
|
661
661
|
|
|
662
|
-
//
|
|
663
|
-
|
|
664
|
-
|
|
662
|
+
// Remove old extension if exists
|
|
663
|
+
if (fs.existsSync(extDest)) {
|
|
664
|
+
fs.rmSync(extDest, { recursive: true, force: true });
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
// VSIX is a ZIP file, extract it using PowerShell/tar
|
|
668
|
+
const isWindows = process.platform === "win32";
|
|
669
|
+
if (isWindows) {
|
|
670
|
+
// Use PowerShell to extract VSIX (it's a ZIP)
|
|
671
|
+
await execAsync(`powershell -Command "Expand-Archive -Path '${vsixPath}' -DestinationPath '${extDest}' -Force"`, { timeout: 30000 });
|
|
672
|
+
} else {
|
|
673
|
+
// Use unzip on Unix
|
|
665
674
|
fs.mkdirSync(extDest, { recursive: true });
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
675
|
+
await execAsync(`unzip -o "${vsixPath}" -d "${extDest}"`, { timeout: 30000 });
|
|
676
|
+
}
|
|
677
|
+
|
|
678
|
+
// Move extension contents from extension/ subfolder to root if needed
|
|
679
|
+
const extSubfolder = path.join(extDest, "extension");
|
|
680
|
+
if (fs.existsSync(extSubfolder)) {
|
|
681
|
+
for (const item of fs.readdirSync(extSubfolder)) {
|
|
682
|
+
fs.renameSync(path.join(extSubfolder, item), path.join(extDest, item));
|
|
683
|
+
}
|
|
684
|
+
fs.rmdirSync(extSubfolder);
|
|
685
|
+
}
|
|
686
|
+
|
|
687
|
+
installedTo.push("Antigravity");
|
|
688
|
+
} catch (extractErr) {
|
|
689
|
+
// Antigravity install failed, try fallback to source copy
|
|
690
|
+
try {
|
|
691
|
+
const outDir = path.join(vsixDir, "out");
|
|
692
|
+
if (fs.existsSync(outDir)) {
|
|
693
|
+
fs.mkdirSync(extDest, { recursive: true });
|
|
694
|
+
fs.cpSync(path.join(vsixDir, "package.json"), path.join(extDest, "package.json"));
|
|
695
|
+
fs.cpSync(outDir, path.join(extDest, "out"), { recursive: true });
|
|
696
|
+
installedTo.push("Antigravity");
|
|
671
697
|
}
|
|
672
|
-
|
|
698
|
+
} catch {
|
|
699
|
+
// Both methods failed
|
|
673
700
|
}
|
|
674
|
-
} catch {
|
|
675
|
-
// Antigravity install failed, continue
|
|
676
701
|
}
|
|
677
702
|
}
|
|
678
703
|
|
package/bin/lib/ui.js
CHANGED
|
@@ -196,19 +196,19 @@ export async function selectAgentsPrompt(detectedAgents) {
|
|
|
196
196
|
return null;
|
|
197
197
|
}
|
|
198
198
|
|
|
199
|
-
// First ask:
|
|
199
|
+
// First ask: Select specific or all detected?
|
|
200
200
|
const installChoice = await select({
|
|
201
201
|
message: "Install to",
|
|
202
202
|
options: [
|
|
203
|
-
{
|
|
204
|
-
value: "all",
|
|
205
|
-
label: `All detected agents (Recommended)`,
|
|
206
|
-
hint: `Install to all ${detectedAgents.length} detected agents`
|
|
207
|
-
},
|
|
208
203
|
{
|
|
209
204
|
value: "select",
|
|
210
205
|
label: "Select specific agents",
|
|
211
206
|
hint: "Choose which agents to install to"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
value: "all",
|
|
210
|
+
label: `All detected agents`,
|
|
211
|
+
hint: `Install to all ${detectedAgents.length} detected agents`
|
|
212
212
|
}
|
|
213
213
|
]
|
|
214
214
|
});
|
|
@@ -222,7 +222,13 @@ export async function selectAgentsPrompt(detectedAgents) {
|
|
|
222
222
|
return detectedAgents;
|
|
223
223
|
}
|
|
224
224
|
|
|
225
|
-
//
|
|
225
|
+
// Find Antigravity index for pre-selection
|
|
226
|
+
const antigravityAgent = detectedAgents.find(a =>
|
|
227
|
+
a.name.toLowerCase().includes('antigravity') ||
|
|
228
|
+
a.displayName.toLowerCase().includes('antigravity')
|
|
229
|
+
);
|
|
230
|
+
|
|
231
|
+
// Let user select specific agents (Antigravity pre-selected if found)
|
|
226
232
|
const selectedAgents = await multiselect({
|
|
227
233
|
message: "Select agents to install skills to",
|
|
228
234
|
options: detectedAgents.map(agent => ({
|
|
@@ -230,6 +236,7 @@ export async function selectAgentsPrompt(detectedAgents) {
|
|
|
230
236
|
label: agent.displayName,
|
|
231
237
|
hint: agent.skillsDir
|
|
232
238
|
})),
|
|
239
|
+
initialValues: antigravityAgent ? [antigravityAgent.name] : [],
|
|
233
240
|
required: true
|
|
234
241
|
});
|
|
235
242
|
|
package/package.json
CHANGED
|
@@ -1,76 +1,78 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "pikakit",
|
|
3
|
-
"version": "3.7.
|
|
4
|
-
"description": "Enterprise-grade Agent Skill Manager with Antigravity Skills support, Progressive Disclosure detection, and semantic routing validation",
|
|
5
|
-
"license": "MIT",
|
|
6
|
-
"author": "pikakit <pikakit@gmail.com>",
|
|
7
|
-
"homepage": "https://github.com/pikakit/pikakit",
|
|
8
|
-
"repository": {
|
|
9
|
-
"type": "git",
|
|
10
|
-
"url": "git+https://github.com/pikakit/pikakit.git"
|
|
11
|
-
},
|
|
12
|
-
"bugs": {
|
|
13
|
-
"url": "https://github.com/pikakit/pikakit/issues"
|
|
14
|
-
},
|
|
15
|
-
"type": "module",
|
|
16
|
-
"bin": {
|
|
17
|
-
"pikakit": "bin/cli.mjs",
|
|
18
|
-
"kit": "bin/kit.js"
|
|
19
|
-
},
|
|
20
|
-
"files": [
|
|
21
|
-
"bin/",
|
|
22
|
-
"lib/",
|
|
23
|
-
"specs/",
|
|
24
|
-
"README.md",
|
|
25
|
-
"LICENSE"
|
|
26
|
-
],
|
|
27
|
-
"engines": {
|
|
28
|
-
"node": ">=18.0.0"
|
|
29
|
-
},
|
|
30
|
-
"keywords": [
|
|
31
|
-
"agent",
|
|
32
|
-
"ai",
|
|
33
|
-
"skills",
|
|
34
|
-
"cli",
|
|
35
|
-
"tooling",
|
|
36
|
-
"registry",
|
|
37
|
-
"security",
|
|
38
|
-
"devops",
|
|
39
|
-
"automation",
|
|
40
|
-
"antigravity"
|
|
41
|
-
],
|
|
42
|
-
"scripts": {
|
|
43
|
-
"lint": "eslint bin/",
|
|
44
|
-
"lint:fix": "eslint bin/ --fix",
|
|
45
|
-
"format": "prettier --write bin/",
|
|
46
|
-
"test": "vitest run",
|
|
47
|
-
"test:watch": "vitest",
|
|
48
|
-
"ci": "npm run lint && npm test && node bin/kit.js verify --strict && node bin/kit.js doctor --strict",
|
|
49
|
-
"agent": "agent"
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"@clack/
|
|
57
|
-
"@
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
|
|
76
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "pikakit",
|
|
3
|
+
"version": "3.7.6",
|
|
4
|
+
"description": "Enterprise-grade Agent Skill Manager with Antigravity Skills support, Progressive Disclosure detection, and semantic routing validation",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "pikakit <pikakit@gmail.com>",
|
|
7
|
+
"homepage": "https://github.com/pikakit/pikakit",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/pikakit/pikakit.git"
|
|
11
|
+
},
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/pikakit/pikakit/issues"
|
|
14
|
+
},
|
|
15
|
+
"type": "module",
|
|
16
|
+
"bin": {
|
|
17
|
+
"pikakit": "bin/cli.mjs",
|
|
18
|
+
"kit": "bin/kit.js"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"bin/",
|
|
22
|
+
"lib/",
|
|
23
|
+
"specs/",
|
|
24
|
+
"README.md",
|
|
25
|
+
"LICENSE"
|
|
26
|
+
],
|
|
27
|
+
"engines": {
|
|
28
|
+
"node": ">=18.0.0"
|
|
29
|
+
},
|
|
30
|
+
"keywords": [
|
|
31
|
+
"agent",
|
|
32
|
+
"ai",
|
|
33
|
+
"skills",
|
|
34
|
+
"cli",
|
|
35
|
+
"tooling",
|
|
36
|
+
"registry",
|
|
37
|
+
"security",
|
|
38
|
+
"devops",
|
|
39
|
+
"automation",
|
|
40
|
+
"antigravity"
|
|
41
|
+
],
|
|
42
|
+
"scripts": {
|
|
43
|
+
"lint": "eslint bin/",
|
|
44
|
+
"lint:fix": "eslint bin/ --fix",
|
|
45
|
+
"format": "prettier --write bin/",
|
|
46
|
+
"test": "vitest run",
|
|
47
|
+
"test:watch": "vitest",
|
|
48
|
+
"ci": "npm run lint && npm test && node bin/kit.js verify --strict && node bin/kit.js doctor --strict",
|
|
49
|
+
"agent": "agent",
|
|
50
|
+
"kit": "kit"
|
|
51
|
+
},
|
|
52
|
+
"publishConfig": {
|
|
53
|
+
"access": "public"
|
|
54
|
+
},
|
|
55
|
+
"dependencies": {
|
|
56
|
+
"@clack/core": "^0.5.0",
|
|
57
|
+
"@clack/prompts": "^0.11.0",
|
|
58
|
+
"@google/generative-ai": "^0.21.0",
|
|
59
|
+
"boxen": "^8.0.1",
|
|
60
|
+
"chalk": "^5.4.1",
|
|
61
|
+
"clipboardy": "^5.1.0",
|
|
62
|
+
"css-tree": "^3.1.0",
|
|
63
|
+
"csv-parse": "^6.1.0",
|
|
64
|
+
"dotenv": "^16.4.5",
|
|
65
|
+
"gradient-string": "^2.0.2",
|
|
66
|
+
"js-yaml": "^4.1.0",
|
|
67
|
+
"kleur": "^4.1.5",
|
|
68
|
+
"ora": "^9.1.0",
|
|
69
|
+
"picocolors": "^1.1.1",
|
|
70
|
+
"prompts": "^2.4.2"
|
|
71
|
+
},
|
|
72
|
+
"devDependencies": {
|
|
73
|
+
"eslint": "^8.57.0",
|
|
74
|
+
"pikakit": "^3.7.5",
|
|
75
|
+
"prettier": "^3.2.5",
|
|
76
|
+
"vitest": "^4.0.18"
|
|
77
|
+
}
|
|
78
|
+
}
|