@kya-os/cli 0.1.0-beta.7 → 1.0.0-beta
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/README.md +24 -26
- package/dist/commands/claim.d.ts.map +1 -1
- package/dist/commands/claim.js +29 -29
- package/dist/commands/claim.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +241 -180
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/rotate.d.ts.map +1 -1
- package/dist/commands/rotate.js +63 -52
- package/dist/commands/rotate.js.map +1 -1
- package/dist/components/agent-card.d.ts +14 -0
- package/dist/components/agent-card.d.ts.map +1 -0
- package/dist/components/agent-card.js +170 -0
- package/dist/components/agent-card.js.map +1 -0
- package/dist/components/agent-table.d.ts +20 -0
- package/dist/components/agent-table.d.ts.map +1 -0
- package/dist/components/agent-table.js +201 -0
- package/dist/components/agent-table.js.map +1 -0
- package/dist/components/box.d.ts +14 -0
- package/dist/components/box.d.ts.map +1 -0
- package/dist/components/box.js +222 -0
- package/dist/components/box.js.map +1 -0
- package/dist/components/index.d.ts +16 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +17 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/messages.d.ts +62 -0
- package/dist/components/messages.d.ts.map +1 -0
- package/dist/components/messages.js +146 -0
- package/dist/components/messages.js.map +1 -0
- package/dist/components/types.d.ts +51 -0
- package/dist/components/types.d.ts.map +1 -0
- package/dist/components/types.js +5 -0
- package/dist/components/types.js.map +1 -0
- package/dist/components/welcome.d.ts +34 -0
- package/dist/components/welcome.d.ts.map +1 -0
- package/dist/components/welcome.js +115 -0
- package/dist/components/welcome.js.map +1 -0
- package/dist/effects/cli-integration.js +3 -3
- package/dist/effects/cli-integration.js.map +1 -1
- package/dist/effects/index.d.ts +9 -12
- package/dist/effects/index.d.ts.map +1 -1
- package/dist/effects/index.js +69 -34
- package/dist/effects/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +12 -19
- package/dist/utils/env-manager.d.ts +66 -2
- package/dist/utils/env-manager.d.ts.map +1 -1
- package/dist/utils/env-manager.js +381 -56
- package/dist/utils/env-manager.js.map +1 -1
- package/dist/utils/screen-manager.d.ts +10 -0
- package/dist/utils/screen-manager.d.ts.map +1 -0
- package/dist/utils/screen-manager.js +50 -0
- package/dist/utils/screen-manager.js.map +1 -0
- package/dist/utils/validation.d.ts +92 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +102 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +25 -9
- package/dist/commands/cli-experience-demo-simple.d.ts +0 -14
- package/dist/commands/cli-experience-demo-simple.d.ts.map +0 -1
- package/dist/commands/cli-experience-demo-simple.js +0 -119
- package/dist/commands/cli-experience-demo-simple.js.map +0 -1
- package/dist/commands/cli-experience-demo.d.ts +0 -14
- package/dist/commands/cli-experience-demo.d.ts.map +0 -1
- package/dist/commands/cli-experience-demo.js +0 -172
- package/dist/commands/cli-experience-demo.js.map +0 -1
- package/dist/commands/effects-demo.d.ts +0 -10
- package/dist/commands/effects-demo.d.ts.map +0 -1
- package/dist/commands/effects-demo.js +0 -292
- package/dist/commands/effects-demo.js.map +0 -1
- package/dist/dev.d.ts +0 -7
- package/dist/dev.d.ts.map +0 -1
- package/dist/dev.js +0 -9
- package/dist/dev.js.map +0 -1
- package/dist/effects/__tests__/effects.test.d.ts +0 -5
- package/dist/effects/__tests__/effects.test.d.ts.map +0 -1
- package/dist/effects/__tests__/effects.test.js +0 -206
- package/dist/effects/__tests__/effects.test.js.map +0 -1
- package/dist/effects/implementations/binary-path.d.ts +0 -88
- package/dist/effects/implementations/binary-path.d.ts.map +0 -1
- package/dist/effects/implementations/binary-path.js +0 -296
- package/dist/effects/implementations/binary-path.js.map +0 -1
- package/dist/effects/implementations/test.d.ts +0 -113
- package/dist/effects/implementations/test.d.ts.map +0 -1
- package/dist/effects/implementations/test.js +0 -552
- package/dist/effects/implementations/test.js.map +0 -1
- package/dist/effects/template/effect-template.d.ts +0 -97
- package/dist/effects/template/effect-template.d.ts.map +0 -1
- package/dist/effects/template/effect-template.js +0 -208
- package/dist/effects/template/effect-template.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Welcome Component
|
|
3
|
+
* Beautiful welcome messages using figlet and gradient-string
|
|
4
|
+
*/
|
|
5
|
+
import figlet from "figlet";
|
|
6
|
+
import gradient from "gradient-string";
|
|
7
|
+
import boxen from "boxen";
|
|
8
|
+
import chalk from "chalk";
|
|
9
|
+
/**
|
|
10
|
+
* Create a gradient welcome banner
|
|
11
|
+
*/
|
|
12
|
+
export async function createWelcomeBanner(text = "KYA-OS") {
|
|
13
|
+
return new Promise((resolve, reject) => {
|
|
14
|
+
figlet.text(text, {
|
|
15
|
+
font: "Big",
|
|
16
|
+
horizontalLayout: "default",
|
|
17
|
+
verticalLayout: "default",
|
|
18
|
+
width: 80,
|
|
19
|
+
whitespaceBreak: true
|
|
20
|
+
}, (err, data) => {
|
|
21
|
+
if (err) {
|
|
22
|
+
reject(err);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
// Apply gradient
|
|
26
|
+
const gradientText = gradient.rainbow.multiline(data || "");
|
|
27
|
+
// Wrap in a box
|
|
28
|
+
const boxed = boxen(gradientText, {
|
|
29
|
+
padding: 1,
|
|
30
|
+
margin: 1,
|
|
31
|
+
borderStyle: "round",
|
|
32
|
+
borderColor: "cyan",
|
|
33
|
+
title: "Model Context Protocol - Identity",
|
|
34
|
+
titleAlignment: "center"
|
|
35
|
+
});
|
|
36
|
+
resolve(boxed);
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Create a simple gradient text
|
|
42
|
+
*/
|
|
43
|
+
export function createGradientText(text, style = "cool") {
|
|
44
|
+
const gradients = {
|
|
45
|
+
rainbow: gradient.rainbow,
|
|
46
|
+
cool: gradient.cristal,
|
|
47
|
+
warm: gradient.passion,
|
|
48
|
+
pastel: gradient.pastel
|
|
49
|
+
};
|
|
50
|
+
return gradients[style](text);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Create a boxed message with gradient
|
|
54
|
+
*/
|
|
55
|
+
export function createGradientBox(content, options) {
|
|
56
|
+
const { title = "", borderColor = "cyan", padding = 1, gradientStyle = "cool" } = options || {};
|
|
57
|
+
const text = Array.isArray(content) ? content.join("\n") : content;
|
|
58
|
+
const gradientText = createGradientText(text, gradientStyle);
|
|
59
|
+
return boxen(gradientText, {
|
|
60
|
+
padding,
|
|
61
|
+
borderStyle: "round",
|
|
62
|
+
borderColor,
|
|
63
|
+
title,
|
|
64
|
+
titleAlignment: "center"
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Create a stylized error box
|
|
69
|
+
*/
|
|
70
|
+
export function createErrorBox(message, details) {
|
|
71
|
+
let content = chalk.bold.red(`✖ ${message}`);
|
|
72
|
+
if (details) {
|
|
73
|
+
content += "\n\n" + chalk.gray(details);
|
|
74
|
+
}
|
|
75
|
+
return boxen(content, {
|
|
76
|
+
padding: 1,
|
|
77
|
+
borderStyle: "round",
|
|
78
|
+
borderColor: "red",
|
|
79
|
+
title: "Error",
|
|
80
|
+
titleAlignment: "center"
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Create a stylized success box
|
|
85
|
+
*/
|
|
86
|
+
export function createSuccessBox(message, details) {
|
|
87
|
+
let content = chalk.bold.green(`✓ ${message}`);
|
|
88
|
+
if (details) {
|
|
89
|
+
content += "\n\n" + chalk.gray(details);
|
|
90
|
+
}
|
|
91
|
+
return boxen(content, {
|
|
92
|
+
padding: 1,
|
|
93
|
+
borderStyle: "round",
|
|
94
|
+
borderColor: "green",
|
|
95
|
+
title: "Success",
|
|
96
|
+
titleAlignment: "center"
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Create a stylized info box
|
|
101
|
+
*/
|
|
102
|
+
export function createInfoBox(message, details) {
|
|
103
|
+
let content = chalk.bold.cyan(`ℹ ${message}`);
|
|
104
|
+
if (details) {
|
|
105
|
+
content += "\n\n" + chalk.gray(details);
|
|
106
|
+
}
|
|
107
|
+
return boxen(content, {
|
|
108
|
+
padding: 1,
|
|
109
|
+
borderStyle: "round",
|
|
110
|
+
borderColor: "cyan",
|
|
111
|
+
title: "Information",
|
|
112
|
+
titleAlignment: "center"
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=welcome.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"welcome.js","sourceRoot":"","sources":["../../src/components/welcome.ts"],"names":[],"mappings":"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"}
|
|
@@ -130,7 +130,7 @@ export class CLIEffects {
|
|
|
130
130
|
options?.onComplete?.();
|
|
131
131
|
return;
|
|
132
132
|
}
|
|
133
|
-
const effect = getEffect(triggerConfig.effect);
|
|
133
|
+
const effect = await getEffect(triggerConfig.effect);
|
|
134
134
|
if (!effect) {
|
|
135
135
|
console.log(text);
|
|
136
136
|
options?.onComplete?.();
|
|
@@ -173,7 +173,7 @@ export class CLIEffects {
|
|
|
173
173
|
options?.onComplete?.();
|
|
174
174
|
return;
|
|
175
175
|
}
|
|
176
|
-
const effect = getEffect(effectName);
|
|
176
|
+
const effect = await getEffect(effectName);
|
|
177
177
|
if (!effect) {
|
|
178
178
|
console.log(text);
|
|
179
179
|
options?.onComplete?.();
|
|
@@ -215,7 +215,7 @@ export class CLIEffects {
|
|
|
215
215
|
console.log(text);
|
|
216
216
|
return promise;
|
|
217
217
|
}
|
|
218
|
-
const effect = getEffect("waves");
|
|
218
|
+
const effect = await getEffect("waves");
|
|
219
219
|
if (!effect) {
|
|
220
220
|
console.log(text);
|
|
221
221
|
return promise;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-integration.js","sourceRoot":"","sources":["../../src/effects/cli-integration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,CAAN,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,sBAAsB;IACtB,0DAAyC,CAAA;IACzC,gEAA+C,CAAA;IAC/C,8CAA6B,CAAA;IAE7B,sBAAsB;IACtB,gEAA+C,CAAA;IAC/C,kDAAiC,CAAA;IACjC,4DAA2C,CAAA;IAE3C,qBAAqB;IACrB,wDAAuC,CAAA;IACvC,wDAAuC,CAAA;IACvC,oCAAmB,CAAA;AACrB,CAAC,EAfW,aAAa,KAAb,aAAa,QAexB;AAED;;GAEG;AACH,MAAM,eAAe,GAGjB;IACF,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE;QAClC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC/D;KACF;IACD,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE;QACrC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC/D;KACF;IACD,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;QAC5B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC/D;KACF;IACD,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE;QACrC,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,gBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACpE,UAAU,EAAE,QAAQ;YACpB,WAAW,EAAE,CAAC;SACf;KACF;IACD,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE;QAC9B,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YAC1C,SAAS,EAAE,QAAQ;SACpB;KACF;IACD,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE;QACnC,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC3C;KACF;IACD,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE;QACjC,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YAC1C,SAAS,EAAE,CAAC;SACb;KACF;IACD,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE;QACjC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;SAC3C;KACF;IACD,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;QACvB,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACpD,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,GAAG;SACf;KACF;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,UAAU;IAIrB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YACzB,UAAU,CAAC,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;QACzC,CAAC;QACD,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACd,OAAsB,EACtB,IAAY,EACZ,OAMC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QAEjC,+BAA+B;QAC/B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-integration.js","sourceRoot":"","sources":["../../src/effects/cli-integration.ts"],"names":[],"mappings":"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"}
|
package/dist/effects/index.d.ts
CHANGED
|
@@ -1,28 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Effect Registry and Exports
|
|
3
|
+
* Uses lazy loading to reduce initial bundle size
|
|
3
4
|
*/
|
|
4
5
|
import { Effect, EffectRegistryEntry } from "./types.js";
|
|
5
6
|
/**
|
|
6
|
-
*
|
|
7
|
+
* Get an effect by name (async with lazy loading)
|
|
7
8
|
*/
|
|
8
|
-
export declare
|
|
9
|
+
export declare function getEffect(name: string): Promise<Effect | null>;
|
|
9
10
|
/**
|
|
10
|
-
*
|
|
11
|
+
* Get an effect synchronously if already cached
|
|
12
|
+
* For backward compatibility with sync code
|
|
11
13
|
*/
|
|
12
|
-
export declare function
|
|
14
|
+
export declare function getEffectSync(name: string): Effect | null;
|
|
13
15
|
/**
|
|
14
|
-
*
|
|
16
|
+
* Preload specific effects for performance
|
|
15
17
|
*/
|
|
16
|
-
export declare function
|
|
18
|
+
export declare function preloadEffects(...names: string[]): Promise<void>;
|
|
17
19
|
/**
|
|
18
|
-
* Get all available effects
|
|
20
|
+
* Get all available effects (returns basic info without loading)
|
|
19
21
|
*/
|
|
20
22
|
export declare function getAllEffects(): EffectRegistryEntry[];
|
|
21
|
-
export { BurnEffect } from "./implementations/burn.js";
|
|
22
|
-
export { BeamsEffect } from "./implementations/beams.js";
|
|
23
|
-
export { DecryptEffect } from "./implementations/decrypt.js";
|
|
24
|
-
export { BlackholeEffect } from "./implementations/blackhole.js";
|
|
25
|
-
export { WavesEffect } from "./implementations/waves.js";
|
|
26
23
|
export * from "./types.js";
|
|
27
24
|
export * from "./utils.js";
|
|
28
25
|
export * from "./config.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effects/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effects/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AA4BzD;;GAEG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAmBpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGzD;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,mBAAmB,EAAE,CAarD;AAwCD,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AAGrC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG/E,OAAO,EACL,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,cAAc,EACd,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGlE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/effects/index.js
CHANGED
|
@@ -1,68 +1,103 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Effect Registry and Exports
|
|
3
|
+
* Uses lazy loading to reduce initial bundle size
|
|
3
4
|
*/
|
|
4
|
-
import { BurnEffect } from "./implementations/burn.js";
|
|
5
|
-
import { BeamsEffect } from "./implementations/beams.js";
|
|
6
|
-
import { DecryptEffect } from "./implementations/decrypt.js";
|
|
7
|
-
import { BlackholeEffect } from "./implementations/blackhole.js";
|
|
8
|
-
import { WavesEffect } from "./implementations/waves.js";
|
|
9
5
|
/**
|
|
10
|
-
* Registry of all available effects
|
|
6
|
+
* Registry of all available effects (lazy loaded)
|
|
11
7
|
*/
|
|
12
|
-
|
|
8
|
+
const lazyEffectRegistry = new Map();
|
|
13
9
|
/**
|
|
14
|
-
*
|
|
10
|
+
* Cache for loaded effect classes
|
|
15
11
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
const effectClassCache = new Map();
|
|
13
|
+
/**
|
|
14
|
+
* Register a lazy-loaded effect
|
|
15
|
+
*/
|
|
16
|
+
function registerLazyEffect(entry) {
|
|
17
|
+
lazyEffectRegistry.set(entry.name.toLowerCase(), entry);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get an effect by name (async with lazy loading)
|
|
21
|
+
*/
|
|
22
|
+
export async function getEffect(name) {
|
|
23
|
+
const entry = lazyEffectRegistry.get(name.toLowerCase());
|
|
24
|
+
if (!entry)
|
|
25
|
+
return null;
|
|
26
|
+
try {
|
|
27
|
+
// Check cache first
|
|
28
|
+
let EffectClass = effectClassCache.get(name.toLowerCase());
|
|
29
|
+
if (!EffectClass) {
|
|
30
|
+
// Load the effect class
|
|
31
|
+
EffectClass = await entry.loader();
|
|
32
|
+
effectClassCache.set(name.toLowerCase(), EffectClass);
|
|
33
|
+
}
|
|
34
|
+
return new EffectClass();
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
console.error(`Failed to load effect '${name}':`, error);
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Get an effect synchronously if already cached
|
|
43
|
+
* For backward compatibility with sync code
|
|
44
|
+
*/
|
|
45
|
+
export function getEffectSync(name) {
|
|
46
|
+
const EffectClass = effectClassCache.get(name.toLowerCase());
|
|
47
|
+
return EffectClass ? new EffectClass() : null;
|
|
18
48
|
}
|
|
19
49
|
/**
|
|
20
|
-
*
|
|
50
|
+
* Preload specific effects for performance
|
|
21
51
|
*/
|
|
22
|
-
export function
|
|
23
|
-
|
|
24
|
-
return entry ? entry.factory() : null;
|
|
52
|
+
export async function preloadEffects(...names) {
|
|
53
|
+
await Promise.all(names.map(name => getEffect(name)));
|
|
25
54
|
}
|
|
26
55
|
/**
|
|
27
|
-
* Get all available effects
|
|
56
|
+
* Get all available effects (returns basic info without loading)
|
|
28
57
|
*/
|
|
29
58
|
export function getAllEffects() {
|
|
30
|
-
return Array.from(
|
|
59
|
+
return Array.from(lazyEffectRegistry.values()).map(entry => ({
|
|
60
|
+
name: entry.name,
|
|
61
|
+
description: entry.description,
|
|
62
|
+
factory: () => {
|
|
63
|
+
// This is a sync factory that throws if effect not loaded
|
|
64
|
+
const EffectClass = effectClassCache.get(entry.name.toLowerCase());
|
|
65
|
+
if (!EffectClass) {
|
|
66
|
+
throw new Error(`Effect '${entry.name}' not loaded. Use getEffect() instead.`);
|
|
67
|
+
}
|
|
68
|
+
return new EffectClass();
|
|
69
|
+
}
|
|
70
|
+
}));
|
|
31
71
|
}
|
|
32
|
-
// Register built-in effects
|
|
33
|
-
|
|
72
|
+
// Register built-in effects with lazy loading
|
|
73
|
+
registerLazyEffect({
|
|
34
74
|
name: "burn",
|
|
35
75
|
description: "Characters are ignited and burn up the screen",
|
|
36
|
-
|
|
76
|
+
loader: async () => (await import("./implementations/burn.js")).BurnEffect,
|
|
37
77
|
});
|
|
38
|
-
|
|
78
|
+
registerLazyEffect({
|
|
39
79
|
name: "beams",
|
|
40
80
|
description: "Creates beams which travel over the canvas illuminating the characters",
|
|
41
|
-
|
|
81
|
+
loader: async () => (await import("./implementations/beams.js")).BeamsEffect,
|
|
42
82
|
});
|
|
43
83
|
// Binary Path effect removed - was causing issues and blocking demo
|
|
44
|
-
|
|
84
|
+
registerLazyEffect({
|
|
45
85
|
name: "decrypt",
|
|
46
86
|
description: "Movie-style text decryption effect with typing animation",
|
|
47
|
-
|
|
87
|
+
loader: async () => (await import("./implementations/decrypt.js")).DecryptEffect,
|
|
48
88
|
});
|
|
49
|
-
|
|
89
|
+
registerLazyEffect({
|
|
50
90
|
name: "blackhole",
|
|
51
91
|
description: "Characters are consumed by a black hole and explode outwards",
|
|
52
|
-
|
|
92
|
+
loader: async () => (await import("./implementations/blackhole.js")).BlackholeEffect,
|
|
53
93
|
});
|
|
54
|
-
|
|
94
|
+
registerLazyEffect({
|
|
55
95
|
name: "waves",
|
|
56
96
|
description: "Creates wave patterns that travel across the text",
|
|
57
|
-
|
|
97
|
+
loader: async () => (await import("./implementations/waves.js")).WavesEffect,
|
|
58
98
|
});
|
|
59
|
-
//
|
|
60
|
-
|
|
61
|
-
export { BeamsEffect } from "./implementations/beams.js";
|
|
62
|
-
// BinaryPathEffect removed - was causing issues
|
|
63
|
-
export { DecryptEffect } from "./implementations/decrypt.js";
|
|
64
|
-
export { BlackholeEffect } from "./implementations/blackhole.js";
|
|
65
|
-
export { WavesEffect } from "./implementations/waves.js";
|
|
99
|
+
// Individual effect classes are now lazy-loaded
|
|
100
|
+
// Use getEffect() to access them
|
|
66
101
|
// Export types
|
|
67
102
|
export * from "./types.js";
|
|
68
103
|
export * from "./utils.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effects/index.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effects/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -6,9 +6,6 @@ import { check } from "./commands/check.js";
|
|
|
6
6
|
import { env } from "./commands/env.js";
|
|
7
7
|
import { rotate } from "./commands/rotate.js";
|
|
8
8
|
import { claim } from "./commands/claim.js";
|
|
9
|
-
import { createEffectsDemoCommand } from "./commands/effects-demo.js";
|
|
10
|
-
import { createCLIExperienceDemoCommand } from "./commands/cli-experience-demo.js";
|
|
11
|
-
import { createSimpleCLIDemoCommand } from "./commands/cli-experience-demo-simple.js";
|
|
12
9
|
export const program = new Command();
|
|
13
10
|
// ASCII art logo
|
|
14
11
|
const logo = chalk.cyan(`
|
|
@@ -24,18 +21,17 @@ program
|
|
|
24
21
|
// Init command
|
|
25
22
|
program
|
|
26
23
|
.command("init")
|
|
27
|
-
.description("Initialize MCP-I
|
|
24
|
+
.description("Initialize MCP-I for your AI agent")
|
|
28
25
|
.option("-n, --name <name>", "Agent name")
|
|
29
26
|
.option("-d, --description <description>", "Agent description")
|
|
30
|
-
.option("-r, --repository <
|
|
31
|
-
.option("-
|
|
32
|
-
.option("--
|
|
33
|
-
.option("--force", "Overwrite existing configuration")
|
|
27
|
+
.option("-r, --repository <repository>", "Repository URL")
|
|
28
|
+
.option("--skip-registration", "Skip agent registration with knowthat.ai")
|
|
29
|
+
.option("--force", "Force overwrite existing configuration")
|
|
34
30
|
.action(init);
|
|
35
31
|
// Check command
|
|
36
32
|
program
|
|
37
33
|
.command("check")
|
|
38
|
-
.description("Check MCP-I
|
|
34
|
+
.description("Check if MCP-I is configured for this project")
|
|
39
35
|
.option("-v, --verbose", "Show detailed information")
|
|
40
36
|
.action(check);
|
|
41
37
|
// Env command with subcommands
|
|
@@ -57,22 +53,19 @@ envCommand
|
|
|
57
53
|
// Rotate command
|
|
58
54
|
program
|
|
59
55
|
.command("rotate")
|
|
60
|
-
.description("Rotate identity keys")
|
|
56
|
+
.description("Rotate your agent's identity keys")
|
|
61
57
|
.option("-f, --force", "Force rotation without confirmation")
|
|
62
58
|
.option("-r, --reason <reason>", "Reason for rotation")
|
|
63
59
|
.action(rotate);
|
|
64
60
|
// Claim command
|
|
65
|
-
program
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
// Simple CLI demo command
|
|
71
|
-
program.addCommand(createSimpleCLIDemoCommand());
|
|
72
|
-
// Parse arguments
|
|
61
|
+
program
|
|
62
|
+
.command("claim")
|
|
63
|
+
.description("Get your agent's claim URL for the registry")
|
|
64
|
+
.action(claim);
|
|
65
|
+
// Parse command line arguments
|
|
73
66
|
program.parse();
|
|
74
67
|
// Show help if no command specified
|
|
75
68
|
if (!process.argv.slice(2).length) {
|
|
76
69
|
program.outputHelp();
|
|
77
70
|
}
|
|
78
|
-
//# sourceMappingURL=index.js.map
|
|
71
|
+
//# sourceMappingURL=index.prod.js.map
|
|
@@ -5,13 +5,77 @@ export interface EnvVariables {
|
|
|
5
5
|
MCP_IDENTITY_AGENT_ID: string;
|
|
6
6
|
MCP_IDENTITY_AGENT_SLUG: string;
|
|
7
7
|
}
|
|
8
|
+
export interface EnvFile {
|
|
9
|
+
path: string;
|
|
10
|
+
filename: string;
|
|
11
|
+
exists: boolean;
|
|
12
|
+
writable: boolean;
|
|
13
|
+
hasMcpIdentity: boolean;
|
|
14
|
+
mcpVariables: Partial<EnvVariables>;
|
|
15
|
+
}
|
|
16
|
+
export interface EnvInsertionResult {
|
|
17
|
+
success: boolean;
|
|
18
|
+
targetFile: string;
|
|
19
|
+
operation: "created" | "updated" | "replaced";
|
|
20
|
+
warnings: string[];
|
|
21
|
+
conflicts?: {
|
|
22
|
+
file: string;
|
|
23
|
+
variable: string;
|
|
24
|
+
value: string;
|
|
25
|
+
}[];
|
|
26
|
+
}
|
|
8
27
|
export declare class EnvManager {
|
|
9
28
|
private projectRoot;
|
|
10
29
|
constructor(projectRoot?: string);
|
|
11
30
|
/**
|
|
12
|
-
*
|
|
31
|
+
* Scan for all .env files with detailed analysis
|
|
32
|
+
*/
|
|
33
|
+
scanEnvFiles(): EnvFile[];
|
|
34
|
+
/**
|
|
35
|
+
* Determine the best target file using precedence rules
|
|
36
|
+
*/
|
|
37
|
+
selectTargetEnvFile(envFiles: EnvFile[]): {
|
|
38
|
+
target: EnvFile | null;
|
|
39
|
+
warnings: string[];
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Check for conflicts across multiple .env files
|
|
43
|
+
*/
|
|
44
|
+
detectConflicts(envFiles: EnvFile[], newVariables: EnvVariables): {
|
|
45
|
+
file: string;
|
|
46
|
+
variable: string;
|
|
47
|
+
value: string;
|
|
48
|
+
}[];
|
|
49
|
+
/**
|
|
50
|
+
* Smart insertion/update of MCP-I variables
|
|
51
|
+
*/
|
|
52
|
+
smartInsertMcpVariables(variables: EnvVariables, options?: {
|
|
53
|
+
force?: boolean;
|
|
54
|
+
}): Promise<EnvInsertionResult>;
|
|
55
|
+
/**
|
|
56
|
+
* Parse .env file and extract MCP-I variables
|
|
57
|
+
*/
|
|
58
|
+
private parseEnvFile;
|
|
59
|
+
/**
|
|
60
|
+
* Create a new .env file
|
|
61
|
+
*/
|
|
62
|
+
private createEnvFile;
|
|
63
|
+
/**
|
|
64
|
+
* Update existing .env file by replacing MCP-I variables
|
|
65
|
+
*/
|
|
66
|
+
private updateExistingEnvFile;
|
|
67
|
+
/**
|
|
68
|
+
* Append MCP-I variables to existing .env file
|
|
69
|
+
*/
|
|
70
|
+
private appendToEnvFile;
|
|
71
|
+
/**
|
|
72
|
+
* Find existing .env files in the project
|
|
73
|
+
*/
|
|
74
|
+
findExistingEnvFiles(): string[];
|
|
75
|
+
/**
|
|
76
|
+
* Update or create environment file, merging with existing content
|
|
13
77
|
*/
|
|
14
|
-
|
|
78
|
+
updateEnvFile(filename: string, variables: EnvVariables, options?: {
|
|
15
79
|
force?: boolean;
|
|
16
80
|
example?: boolean;
|
|
17
81
|
}): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-manager.d.ts","sourceRoot":"","sources":["../../src/utils/env-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env-manager.d.ts","sourceRoot":"","sources":["../../src/utils/env-manager.ts"],"names":[],"mappings":"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"}
|