@kya-os/cli 0.1.0-beta.5 ā 0.1.0-beta.7
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 +210 -34
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +28 -6
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/cli-experience-demo-simple.d.ts +14 -0
- package/dist/commands/cli-experience-demo-simple.d.ts.map +1 -0
- package/dist/commands/cli-experience-demo-simple.js +119 -0
- package/dist/commands/cli-experience-demo-simple.js.map +1 -0
- package/dist/commands/cli-experience-demo.d.ts +14 -0
- package/dist/commands/cli-experience-demo.d.ts.map +1 -0
- package/dist/commands/cli-experience-demo.js +172 -0
- package/dist/commands/cli-experience-demo.js.map +1 -0
- package/dist/commands/effects-demo.d.ts +10 -0
- package/dist/commands/effects-demo.d.ts.map +1 -0
- package/dist/commands/effects-demo.js +292 -0
- package/dist/commands/effects-demo.js.map +1 -0
- package/dist/commands/env.d.ts.map +1 -1
- package/dist/commands/env.js +12 -2
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +407 -73
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/rotate.d.ts.map +1 -1
- package/dist/commands/rotate.js +19 -3
- package/dist/commands/rotate.js.map +1 -1
- package/dist/dev.d.ts +7 -0
- package/dist/dev.d.ts.map +1 -0
- package/dist/dev.js +9 -0
- package/dist/dev.js.map +1 -0
- package/dist/effects/__tests__/effects.test.d.ts +5 -0
- package/dist/effects/__tests__/effects.test.d.ts.map +1 -0
- package/dist/effects/__tests__/effects.test.js +206 -0
- package/dist/effects/__tests__/effects.test.js.map +1 -0
- package/dist/effects/animation-engine.d.ts +173 -0
- package/dist/effects/animation-engine.d.ts.map +1 -0
- package/dist/effects/animation-engine.js +254 -0
- package/dist/effects/animation-engine.js.map +1 -0
- package/dist/effects/cli-integration.d.ts +86 -0
- package/dist/effects/cli-integration.d.ts.map +1 -0
- package/dist/effects/cli-integration.js +309 -0
- package/dist/effects/cli-integration.js.map +1 -0
- package/dist/effects/config.d.ts +95 -0
- package/dist/effects/config.d.ts.map +1 -0
- package/dist/effects/config.js +216 -0
- package/dist/effects/config.js.map +1 -0
- package/dist/effects/effect-runner.d.ts +69 -0
- package/dist/effects/effect-runner.d.ts.map +1 -0
- package/dist/effects/effect-runner.js +255 -0
- package/dist/effects/effect-runner.js.map +1 -0
- package/dist/effects/gradient.d.ts +131 -0
- package/dist/effects/gradient.d.ts.map +1 -0
- package/dist/effects/gradient.js +236 -0
- package/dist/effects/gradient.js.map +1 -0
- package/dist/effects/implementations/beams.d.ts +80 -0
- package/dist/effects/implementations/beams.d.ts.map +1 -0
- package/dist/effects/implementations/beams.js +221 -0
- package/dist/effects/implementations/beams.js.map +1 -0
- package/dist/effects/implementations/binary-path.d.ts +88 -0
- package/dist/effects/implementations/binary-path.d.ts.map +1 -0
- package/dist/effects/implementations/binary-path.js +296 -0
- package/dist/effects/implementations/binary-path.js.map +1 -0
- package/dist/effects/implementations/blackhole.d.ts +98 -0
- package/dist/effects/implementations/blackhole.d.ts.map +1 -0
- package/dist/effects/implementations/blackhole.js +394 -0
- package/dist/effects/implementations/blackhole.js.map +1 -0
- package/dist/effects/implementations/burn.d.ts +74 -0
- package/dist/effects/implementations/burn.d.ts.map +1 -0
- package/dist/effects/implementations/burn.js +234 -0
- package/dist/effects/implementations/burn.js.map +1 -0
- package/dist/effects/implementations/decrypt.d.ts +115 -0
- package/dist/effects/implementations/decrypt.d.ts.map +1 -0
- package/dist/effects/implementations/decrypt.js +394 -0
- package/dist/effects/implementations/decrypt.js.map +1 -0
- package/dist/effects/implementations/test.d.ts +113 -0
- package/dist/effects/implementations/test.d.ts.map +1 -0
- package/dist/effects/implementations/test.js +552 -0
- package/dist/effects/implementations/test.js.map +1 -0
- package/dist/effects/implementations/waves.d.ts +78 -0
- package/dist/effects/implementations/waves.d.ts.map +1 -0
- package/dist/effects/implementations/waves.js +278 -0
- package/dist/effects/implementations/waves.js.map +1 -0
- package/dist/effects/index.d.ts +37 -0
- package/dist/effects/index.d.ts.map +1 -0
- package/dist/effects/index.js +79 -0
- package/dist/effects/index.js.map +1 -0
- package/dist/effects/motion-engine.d.ts +168 -0
- package/dist/effects/motion-engine.d.ts.map +1 -0
- package/dist/effects/motion-engine.js +353 -0
- package/dist/effects/motion-engine.js.map +1 -0
- package/dist/effects/safe-executor.d.ts +55 -0
- package/dist/effects/safe-executor.d.ts.map +1 -0
- package/dist/effects/safe-executor.js +210 -0
- package/dist/effects/safe-executor.js.map +1 -0
- package/dist/effects/template/effect-template.d.ts +97 -0
- package/dist/effects/template/effect-template.d.ts.map +1 -0
- package/dist/effects/template/effect-template.js +208 -0
- package/dist/effects/template/effect-template.js.map +1 -0
- package/dist/effects/types.d.ts +199 -0
- package/dist/effects/types.d.ts.map +1 -0
- package/dist/effects/types.js +80 -0
- package/dist/effects/types.js.map +1 -0
- package/dist/effects/utils.d.ts +104 -0
- package/dist/effects/utils.d.ts.map +1 -0
- package/dist/effects/utils.js +280 -0
- package/dist/effects/utils.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +48 -42
- package/dist/index.js.map +1 -1
- package/package.json +4 -1
package/dist/commands/init.js
CHANGED
|
@@ -1,16 +1,233 @@
|
|
|
1
|
-
import { enableMCPIdentity } from
|
|
2
|
-
import chalk from
|
|
3
|
-
import ora from
|
|
4
|
-
import { detectPlatform, getPlatformSpecificConfig } from
|
|
5
|
-
import { EnvManager } from
|
|
6
|
-
import { promptForInit, showSuccess, showError, showWarning } from
|
|
7
|
-
import { existsSync } from
|
|
8
|
-
import { join } from
|
|
1
|
+
import { enableMCPIdentity } from "@kya-os/mcp-i";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import ora from "ora";
|
|
4
|
+
import { detectPlatform, getPlatformSpecificConfig, } from "../utils/platform-detector.js";
|
|
5
|
+
import { EnvManager } from "../utils/env-manager.js";
|
|
6
|
+
import { promptForInit, showSuccess, showError, showWarning, } from "../utils/prompts.js";
|
|
7
|
+
import { existsSync } from "fs";
|
|
8
|
+
import { join } from "path";
|
|
9
|
+
import { cliEffects } from "../effects/cli-integration.js";
|
|
10
|
+
async function checkRegistryHealth(verbose = false) {
|
|
11
|
+
const healthSpinner = ora("Checking registry status...").start();
|
|
12
|
+
try {
|
|
13
|
+
// Check the new health endpoint
|
|
14
|
+
const healthResponse = await fetch("https://knowthat.ai/api/agents/auto-register/health", {
|
|
15
|
+
method: "GET",
|
|
16
|
+
headers: {
|
|
17
|
+
"User-Agent": "kya-os-cli",
|
|
18
|
+
},
|
|
19
|
+
signal: AbortSignal.timeout(10000), // 10 second timeout
|
|
20
|
+
});
|
|
21
|
+
if (healthResponse.ok) {
|
|
22
|
+
const healthData = await healthResponse.json();
|
|
23
|
+
healthSpinner.succeed("Registry is operational");
|
|
24
|
+
if (verbose && healthData) {
|
|
25
|
+
console.log(chalk.gray(` Service status: ${healthData.status || "healthy"}`));
|
|
26
|
+
}
|
|
27
|
+
return { available: true, shouldProceed: true };
|
|
28
|
+
}
|
|
29
|
+
else if (healthResponse.status === 503) {
|
|
30
|
+
healthSpinner.fail("Registry is temporarily unavailable (maintenance mode)");
|
|
31
|
+
console.log(chalk.yellow("\nā ļø The registry is undergoing maintenance."));
|
|
32
|
+
console.log(chalk.yellow(" This usually takes 5-15 minutes."));
|
|
33
|
+
console.log(chalk.yellow("\nš§ Options:"));
|
|
34
|
+
console.log(" 1. Wait and try again in a few minutes");
|
|
35
|
+
console.log(" 2. Register manually at: https://knowthat.ai/submit-agent");
|
|
36
|
+
console.log(" 3. Create local config only (skip registration for now)");
|
|
37
|
+
return { available: false, shouldProceed: false };
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
healthSpinner.warn("Registry status unknown, proceeding with caution...");
|
|
41
|
+
return { available: false, shouldProceed: true };
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
if (error.name === "TimeoutError") {
|
|
46
|
+
healthSpinner.fail("Registry health check timed out");
|
|
47
|
+
console.log(chalk.yellow("\nā ļø Could not reach the registry (network timeout)."));
|
|
48
|
+
console.log(chalk.yellow(" Check your internet connection."));
|
|
49
|
+
}
|
|
50
|
+
else if (error.code === "ENOTFOUND" || error.code === "ECONNREFUSED") {
|
|
51
|
+
healthSpinner.fail("Registry is unreachable");
|
|
52
|
+
console.log(chalk.yellow("\nā ļø Cannot connect to knowthat.ai registry."));
|
|
53
|
+
console.log(chalk.yellow(" The service may be down or you may have network issues."));
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
healthSpinner.warn("Could not check registry status, proceeding anyway...");
|
|
57
|
+
if (verbose) {
|
|
58
|
+
console.log(chalk.gray(` Error: ${error.message}`));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
console.log(chalk.yellow("\nš§ Alternatives:"));
|
|
62
|
+
console.log(" 1. Try again in a few minutes");
|
|
63
|
+
console.log(" 2. Register manually at: https://knowthat.ai/submit-agent");
|
|
64
|
+
console.log(" 3. Create local config only (we'll attempt registration anyway)");
|
|
65
|
+
return { available: false, shouldProceed: true };
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async function sleep(ms) {
|
|
69
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
70
|
+
}
|
|
71
|
+
async function attemptRegistrationWithRetry(config, verbose = false, maxRetries = 3) {
|
|
72
|
+
const baseDelay = 2000; // Start with 2 seconds
|
|
73
|
+
for (let attempt = 1; attempt <= maxRetries; attempt++) {
|
|
74
|
+
const isLastAttempt = attempt === maxRetries;
|
|
75
|
+
const spinner = ora(`Registering agent with knowthat.ai... (attempt ${attempt}/${maxRetries})`).start();
|
|
76
|
+
try {
|
|
77
|
+
const identity = await enableMCPIdentity(config);
|
|
78
|
+
spinner.succeed("Creating Agent ID");
|
|
79
|
+
return { success: true, identity };
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
spinner.fail(`Registration attempt ${attempt} failed`);
|
|
83
|
+
const errorInfo = categorizeError(error, verbose);
|
|
84
|
+
if (errorInfo.category === "CRITICAL" || isLastAttempt) {
|
|
85
|
+
// Don't retry for critical errors, or if this was the last attempt
|
|
86
|
+
handleRegistrationError(error, errorInfo, verbose, isLastAttempt);
|
|
87
|
+
return { success: false, error };
|
|
88
|
+
}
|
|
89
|
+
else if (errorInfo.category === "RETRYABLE") {
|
|
90
|
+
// Calculate exponential backoff delay
|
|
91
|
+
const delay = baseDelay * Math.pow(2, attempt - 1);
|
|
92
|
+
console.log(chalk.yellow(` ${errorInfo.message}`));
|
|
93
|
+
console.log(chalk.gray(` Retrying in ${delay / 1000} seconds...`));
|
|
94
|
+
if (attempt < maxRetries) {
|
|
95
|
+
await sleep(delay);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// Unknown error - try once more but show the error
|
|
100
|
+
if (verbose) {
|
|
101
|
+
console.log(chalk.gray(` ${errorInfo.debugInfo}`));
|
|
102
|
+
}
|
|
103
|
+
console.log(chalk.yellow(` ${errorInfo.message}`));
|
|
104
|
+
if (attempt < maxRetries) {
|
|
105
|
+
console.log(chalk.gray(` Trying again...`));
|
|
106
|
+
await sleep(baseDelay);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return { success: false };
|
|
112
|
+
}
|
|
113
|
+
function categorizeError(error, verbose = false) {
|
|
114
|
+
const errorMessage = error.message || "";
|
|
115
|
+
const status = error.response?.status || error.status;
|
|
116
|
+
const responseData = error.response?.data;
|
|
117
|
+
// Build debug info
|
|
118
|
+
let debugInfo = "";
|
|
119
|
+
if (verbose) {
|
|
120
|
+
debugInfo = `Error type: ${error.constructor.name}, Status: ${status}`;
|
|
121
|
+
if (responseData) {
|
|
122
|
+
debugInfo += `, Response: ${JSON.stringify(responseData, null, 2)}`;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// Rate limiting
|
|
126
|
+
if (status === 429 ||
|
|
127
|
+
errorMessage.includes("429") ||
|
|
128
|
+
errorMessage.includes("rate limit")) {
|
|
129
|
+
return {
|
|
130
|
+
category: "RETRYABLE",
|
|
131
|
+
message: "Rate limit exceeded. The registry is busy.",
|
|
132
|
+
debugInfo,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
// Service temporarily unavailable
|
|
136
|
+
if (status === 503 || errorMessage.includes("503")) {
|
|
137
|
+
return {
|
|
138
|
+
category: "RETRYABLE",
|
|
139
|
+
message: "Registry is temporarily unavailable (maintenance or overload).",
|
|
140
|
+
debugInfo,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
// Server errors that might be transient
|
|
144
|
+
if (status === 500 ||
|
|
145
|
+
status === 502 ||
|
|
146
|
+
errorMessage.includes("500") ||
|
|
147
|
+
errorMessage.includes("502")) {
|
|
148
|
+
return {
|
|
149
|
+
category: "RETRYABLE",
|
|
150
|
+
message: "Registry server error. This may be temporary.",
|
|
151
|
+
debugInfo,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
// Timeout errors
|
|
155
|
+
if (error.name === "TimeoutError" || errorMessage.includes("timeout")) {
|
|
156
|
+
return {
|
|
157
|
+
category: "RETRYABLE",
|
|
158
|
+
message: "Request timed out. Network or server may be slow.",
|
|
159
|
+
debugInfo,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
// Network errors
|
|
163
|
+
if (error.code === "ENOTFOUND" ||
|
|
164
|
+
error.code === "ECONNREFUSED" ||
|
|
165
|
+
errorMessage.includes("ENOTFOUND")) {
|
|
166
|
+
return {
|
|
167
|
+
category: "RETRYABLE",
|
|
168
|
+
message: "Cannot reach the registry. Check your internet connection.",
|
|
169
|
+
debugInfo,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
// Client errors that shouldn't be retried
|
|
173
|
+
if (status >= 400 && status < 500 && status !== 429) {
|
|
174
|
+
return {
|
|
175
|
+
category: "CRITICAL",
|
|
176
|
+
message: `Registration was rejected by the registry (${status}).`,
|
|
177
|
+
debugInfo,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
// MCP-I specific errors
|
|
181
|
+
if (errorMessage.includes("Failed to auto-register agent")) {
|
|
182
|
+
return {
|
|
183
|
+
category: "CRITICAL",
|
|
184
|
+
message: "The registry rejected the registration request.",
|
|
185
|
+
debugInfo,
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
// Unknown error
|
|
189
|
+
return {
|
|
190
|
+
category: "UNKNOWN",
|
|
191
|
+
message: errorMessage || "An unexpected error occurred during registration.",
|
|
192
|
+
debugInfo,
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
function handleRegistrationError(_error, errorInfo, verbose, isFinalAttempt) {
|
|
196
|
+
// Show main error message
|
|
197
|
+
showError(errorInfo.message);
|
|
198
|
+
// Show debug info if verbose
|
|
199
|
+
if (verbose && errorInfo.debugInfo) {
|
|
200
|
+
console.log(chalk.gray("\nDebug information:"));
|
|
201
|
+
console.log(chalk.gray(errorInfo.debugInfo));
|
|
202
|
+
}
|
|
203
|
+
// Show context-specific help
|
|
204
|
+
if (errorInfo.category === "CRITICAL") {
|
|
205
|
+
console.log(chalk.yellow("\nš§ This error cannot be resolved by retrying."));
|
|
206
|
+
console.log(chalk.yellow(" Possible solutions:"));
|
|
207
|
+
console.log(" 1. Register manually at: https://knowthat.ai/submit-agent");
|
|
208
|
+
console.log(" 2. Check if your agent name is already taken");
|
|
209
|
+
console.log(" 3. Verify your repository URL is accessible");
|
|
210
|
+
console.log(" 4. Contact support if the problem persists");
|
|
211
|
+
}
|
|
212
|
+
else if (isFinalAttempt) {
|
|
213
|
+
console.log(chalk.yellow("\nš§ Registration failed after multiple attempts."));
|
|
214
|
+
console.log(chalk.yellow(" Next steps:"));
|
|
215
|
+
console.log(" 1. Wait 5-10 minutes and try again");
|
|
216
|
+
console.log(" 2. Check knowthat.ai status page (if available)");
|
|
217
|
+
console.log(" 3. Register manually at: https://knowthat.ai/submit-agent");
|
|
218
|
+
console.log(" 4. Create local config only: npx kya-os init --skip-registration");
|
|
219
|
+
}
|
|
220
|
+
// Show alternative registration method
|
|
221
|
+
console.log(chalk.cyan("\nš Manual registration process:"));
|
|
222
|
+
console.log(" 1. Visit: https://knowthat.ai/submit-agent");
|
|
223
|
+
console.log(" 2. Fill in your agent details");
|
|
224
|
+
console.log(" 3. Get your DID and run: npx kya-os claim <your-agent-id>");
|
|
225
|
+
}
|
|
9
226
|
export async function init(options) {
|
|
10
227
|
try {
|
|
11
228
|
// Detect platform
|
|
12
229
|
const platformInfo = detectPlatform();
|
|
13
|
-
console.log(chalk.cyan(
|
|
230
|
+
console.log(chalk.cyan("\nš Detected environment:"));
|
|
14
231
|
console.log(` Platform: ${chalk.bold(platformInfo.platform)}`);
|
|
15
232
|
if (platformInfo.framework) {
|
|
16
233
|
console.log(` Framework: ${chalk.bold(platformInfo.framework)}`);
|
|
@@ -18,11 +235,12 @@ export async function init(options) {
|
|
|
18
235
|
console.log(` Package Manager: ${chalk.bold(platformInfo.packageManager)}`);
|
|
19
236
|
// Check for existing configuration
|
|
20
237
|
const envManager = new EnvManager();
|
|
21
|
-
const existingIdentityFile = existsSync(join(process.cwd(),
|
|
238
|
+
const existingIdentityFile = existsSync(join(process.cwd(), ".mcp-identity.json"));
|
|
22
239
|
const existingEnvVars = envManager.getFromProcess();
|
|
23
|
-
if ((existingIdentityFile || existingEnvVars.MCP_IDENTITY_DID) &&
|
|
24
|
-
|
|
25
|
-
|
|
240
|
+
if ((existingIdentityFile || existingEnvVars.MCP_IDENTITY_DID) &&
|
|
241
|
+
!options.force) {
|
|
242
|
+
showWarning("MCP-I is already configured in this project.");
|
|
243
|
+
console.log("Use --force to reconfigure.");
|
|
26
244
|
// Show current configuration
|
|
27
245
|
if (existingEnvVars.MCP_IDENTITY_DID) {
|
|
28
246
|
console.log(`\nCurrent DID: ${chalk.green(existingEnvVars.MCP_IDENTITY_DID)}`);
|
|
@@ -33,15 +251,15 @@ export async function init(options) {
|
|
|
33
251
|
const answers = await promptForInit({
|
|
34
252
|
name: options.name,
|
|
35
253
|
description: options.description,
|
|
36
|
-
repository: options.repository
|
|
254
|
+
repository: options.repository,
|
|
37
255
|
});
|
|
38
256
|
// Determine directories configuration
|
|
39
257
|
let directories;
|
|
40
|
-
if (answers.directories ===
|
|
41
|
-
directories =
|
|
258
|
+
if (answers.directories === "verified") {
|
|
259
|
+
directories = "verified";
|
|
42
260
|
}
|
|
43
|
-
else if (answers.directories ===
|
|
44
|
-
directories =
|
|
261
|
+
else if (answers.directories === "none") {
|
|
262
|
+
directories = "none";
|
|
45
263
|
}
|
|
46
264
|
else {
|
|
47
265
|
directories = answers.specificDirectories || [];
|
|
@@ -51,76 +269,191 @@ export async function init(options) {
|
|
|
51
269
|
let identity;
|
|
52
270
|
let envVars = null;
|
|
53
271
|
if (!options.skipRegistration && answers.confirmRegistration) {
|
|
54
|
-
//
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
|
|
272
|
+
// Check registry health first
|
|
273
|
+
const healthCheck = await checkRegistryHealth(options.verbose);
|
|
274
|
+
if (!healthCheck.available && !healthCheck.shouldProceed) {
|
|
275
|
+
console.log("\nYou can still create the configuration files and register later.");
|
|
276
|
+
answers.confirmEnvCreation = await promptForInit({
|
|
277
|
+
confirmEnvCreation: true,
|
|
278
|
+
}).then((a) => a.confirmEnvCreation);
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
// Register agent with retry logic
|
|
282
|
+
const registrationResult = await attemptRegistrationWithRetry({
|
|
58
283
|
name: answers.name,
|
|
59
284
|
description: answers.description,
|
|
60
285
|
repository: answers.repository,
|
|
61
286
|
directories: directories,
|
|
62
287
|
storage: platformConfig.storage,
|
|
63
288
|
transport: platformConfig.transport,
|
|
64
|
-
mode:
|
|
65
|
-
logLevel:
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
289
|
+
mode: "production",
|
|
290
|
+
logLevel: "silent",
|
|
291
|
+
}, options.verbose);
|
|
292
|
+
if (registrationResult.success && registrationResult.identity) {
|
|
293
|
+
identity = registrationResult.identity;
|
|
294
|
+
// Extract environment variables
|
|
295
|
+
envVars = {
|
|
296
|
+
MCP_IDENTITY_DID: identity.did,
|
|
297
|
+
MCP_IDENTITY_PUBLIC_KEY: identity.publicKey,
|
|
298
|
+
MCP_IDENTITY_PRIVATE_KEY: identity.privateKey || "",
|
|
299
|
+
MCP_IDENTITY_AGENT_ID: identity.agentId || "",
|
|
300
|
+
MCP_IDENTITY_AGENT_SLUG: identity.agentSlug || "",
|
|
301
|
+
};
|
|
302
|
+
// Clear some space for the effect
|
|
303
|
+
console.log("\n");
|
|
304
|
+
// Show DID generation with Blackhole effect
|
|
305
|
+
const didGenerationText = `š ${chalk.bold("Generating Decentralized Identity")}\n` +
|
|
306
|
+
`\n` +
|
|
307
|
+
`DID: ${chalk.green(identity.did)}`;
|
|
308
|
+
await cliEffects.showCustomEffect("blackhole", didGenerationText, {
|
|
309
|
+
config: {
|
|
310
|
+
duration: 4000,
|
|
311
|
+
blackholeColor: "ffffff",
|
|
312
|
+
starColors: [
|
|
313
|
+
"ffcc0d",
|
|
314
|
+
"ff7326",
|
|
315
|
+
"ff194d",
|
|
316
|
+
"bf2669",
|
|
317
|
+
"702a8c",
|
|
318
|
+
"049dbf",
|
|
319
|
+
],
|
|
320
|
+
finalColor: "00ff00",
|
|
321
|
+
useGradient: true,
|
|
322
|
+
gradientDirection: "diagonal",
|
|
323
|
+
blackholeSize: 0.3,
|
|
324
|
+
},
|
|
325
|
+
persistent: true, // Keep the DID visible after animation
|
|
326
|
+
});
|
|
327
|
+
// Get claim URL if available
|
|
328
|
+
let claimUrl = null;
|
|
329
|
+
try {
|
|
330
|
+
const result = await identity.requestEditAccess();
|
|
331
|
+
claimUrl = result.claimUrl;
|
|
332
|
+
}
|
|
333
|
+
catch (error) {
|
|
334
|
+
// Ignore errors - claim URL is optional
|
|
335
|
+
}
|
|
336
|
+
// Wait a moment for the effect to finish
|
|
337
|
+
await new Promise(resolve => setTimeout(resolve, 500));
|
|
338
|
+
// Clear screen and show elegant agent identity card
|
|
339
|
+
console.clear();
|
|
340
|
+
// Display elegant agent identity card
|
|
341
|
+
console.log("\n");
|
|
342
|
+
console.log(chalk.cyan("āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā"));
|
|
343
|
+
console.log(chalk.cyan("ā") + chalk.bold.white(" š¤ AGENT IDENTITY CREATED ") + chalk.cyan("ā"));
|
|
344
|
+
console.log(chalk.cyan("ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā£"));
|
|
345
|
+
console.log(chalk.cyan("ā ā"));
|
|
346
|
+
console.log(chalk.cyan("ā") + chalk.bold(" Agent Name: ") + chalk.yellow(answers.name.padEnd(57)) + chalk.cyan("ā"));
|
|
347
|
+
console.log(chalk.cyan("ā") + chalk.bold(" Description: ") + chalk.gray((answers.description || "").substring(0, 56).padEnd(56)) + chalk.cyan("ā"));
|
|
348
|
+
if (answers.description && answers.description.length > 56) {
|
|
349
|
+
console.log(chalk.cyan("ā") + " " + chalk.gray(answers.description.substring(56, 112).padEnd(55)) + chalk.cyan("ā"));
|
|
350
|
+
}
|
|
351
|
+
console.log(chalk.cyan("ā ā"));
|
|
352
|
+
console.log(chalk.cyan("ā") + chalk.bold(" DID: ") + chalk.green(identity.did.substring(0, 64).padEnd(64)) + chalk.cyan("ā"));
|
|
353
|
+
if (identity.did.length > 64) {
|
|
354
|
+
console.log(chalk.cyan("ā") + " " + chalk.green(identity.did.substring(64).padEnd(63)) + chalk.cyan("ā"));
|
|
355
|
+
}
|
|
356
|
+
console.log(chalk.cyan("ā ā"));
|
|
357
|
+
console.log(chalk.cyan("ā") + chalk.bold(" Profile: ") + chalk.blue(`https://knowthat.ai/agents/${envVars.MCP_IDENTITY_AGENT_SLUG}`.padEnd(60)) + chalk.cyan("ā"));
|
|
358
|
+
console.log(chalk.cyan("ā ā"));
|
|
82
359
|
if (claimUrl) {
|
|
83
|
-
console.log(
|
|
84
|
-
console.log(
|
|
85
|
-
console.log(
|
|
360
|
+
console.log(chalk.cyan("ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā£"));
|
|
361
|
+
console.log(chalk.cyan("ā ā"));
|
|
362
|
+
console.log(chalk.cyan("ā") + chalk.bold.yellow(" šÆ CLAIM YOUR AGENT NOW: ") + chalk.cyan("ā"));
|
|
363
|
+
console.log(chalk.cyan("ā ā"));
|
|
364
|
+
console.log(chalk.cyan("ā") + " " + chalk.cyan.underline(claimUrl.substring(0, 68)) + " " + chalk.cyan("ā"));
|
|
365
|
+
if (claimUrl.length > 68) {
|
|
366
|
+
console.log(chalk.cyan("ā") + " " + chalk.cyan.underline(claimUrl.substring(68).padEnd(68)) + " " + chalk.cyan("ā"));
|
|
367
|
+
}
|
|
368
|
+
console.log(chalk.cyan("ā ā"));
|
|
369
|
+
console.log(chalk.cyan("ā") + chalk.gray(" This link lets you manage your agent and add capabilities. ") + chalk.cyan("ā"));
|
|
370
|
+
console.log(chalk.cyan("ā ā"));
|
|
371
|
+
}
|
|
372
|
+
console.log(chalk.cyan("ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā£"));
|
|
373
|
+
console.log(chalk.cyan("ā ā"));
|
|
374
|
+
console.log(chalk.cyan("ā") + chalk.bold.green(" ā
Agent successfully registered on the KYA-OS network ") + chalk.cyan("ā"));
|
|
375
|
+
console.log(chalk.cyan("ā") + chalk.gray(" Your AI agent now has a verifiable decentralized identity ") + chalk.cyan("ā"));
|
|
376
|
+
console.log(chalk.cyan("ā ā"));
|
|
377
|
+
console.log(chalk.cyan("āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā"));
|
|
378
|
+
console.log("\n");
|
|
379
|
+
// Interactive prompt
|
|
380
|
+
if (claimUrl) {
|
|
381
|
+
console.log(chalk.yellow(" Press ENTER to open claim URL in browser, or 'x' to skip and continue..."));
|
|
382
|
+
// Wait for user input
|
|
383
|
+
const keypress = await new Promise((resolve) => {
|
|
384
|
+
const readline = require('readline');
|
|
385
|
+
readline.emitKeypressEvents(process.stdin);
|
|
386
|
+
if (process.stdin.isTTY) {
|
|
387
|
+
process.stdin.setRawMode(true);
|
|
388
|
+
}
|
|
389
|
+
const handleKeypress = (str, key) => {
|
|
390
|
+
if (key && key.name === 'return') {
|
|
391
|
+
resolve('enter');
|
|
392
|
+
}
|
|
393
|
+
else if (str === 'x' || str === 'X') {
|
|
394
|
+
resolve('x');
|
|
395
|
+
}
|
|
396
|
+
};
|
|
397
|
+
process.stdin.once('keypress', handleKeypress);
|
|
398
|
+
process.stdin.resume();
|
|
399
|
+
});
|
|
400
|
+
if (process.stdin.isTTY) {
|
|
401
|
+
process.stdin.setRawMode(false);
|
|
402
|
+
}
|
|
403
|
+
if (keypress === 'enter') {
|
|
404
|
+
// Try to open URL in browser
|
|
405
|
+
try {
|
|
406
|
+
const open = (await import('open')).default;
|
|
407
|
+
await open(claimUrl);
|
|
408
|
+
console.log(chalk.green("\n ā Opening claim URL in your browser...\n"));
|
|
409
|
+
}
|
|
410
|
+
catch (err) {
|
|
411
|
+
console.log(chalk.gray("\n Could not open browser. Please visit the URL manually.\n"));
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
else {
|
|
415
|
+
console.log(chalk.gray("\n You can claim your agent later using the URL above.\n"));
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
else {
|
|
419
|
+
// If no claim URL, just wait for any key
|
|
420
|
+
console.log(chalk.gray(" Press any key to continue..."));
|
|
421
|
+
await new Promise((resolve) => {
|
|
422
|
+
process.stdin.once('data', () => resolve(undefined));
|
|
423
|
+
process.stdin.resume();
|
|
424
|
+
});
|
|
86
425
|
}
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
// Claim URL might fail due to rate limiting
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
catch (error) {
|
|
93
|
-
spinner.fail('Registration failed');
|
|
94
|
-
if (error.message?.includes('429')) {
|
|
95
|
-
showError('Rate limit exceeded. Please wait a few minutes and try again.');
|
|
96
|
-
}
|
|
97
|
-
else if (error.message?.includes('500')) {
|
|
98
|
-
showError('Server error. The registry might be temporarily down.');
|
|
99
426
|
}
|
|
100
427
|
else {
|
|
101
|
-
|
|
428
|
+
console.log("\nYou can still create the configuration files and register later.");
|
|
429
|
+
answers.confirmEnvCreation = await promptForInit({
|
|
430
|
+
confirmEnvCreation: true,
|
|
431
|
+
}).then((a) => a.confirmEnvCreation);
|
|
102
432
|
}
|
|
103
|
-
console.log('\nYou can still create the configuration files and register later.');
|
|
104
|
-
answers.confirmEnvCreation = await promptForInit({ confirmEnvCreation: true }).then(a => a.confirmEnvCreation);
|
|
105
433
|
}
|
|
106
434
|
}
|
|
107
435
|
// Create environment files
|
|
108
436
|
if (answers.confirmEnvCreation && envVars) {
|
|
109
|
-
console.log(`\nš ${chalk.bold(
|
|
437
|
+
console.log(`\nš ${chalk.bold("Creating environment files...")}`);
|
|
110
438
|
try {
|
|
111
439
|
// Create actual env file
|
|
112
440
|
const envFile = platformConfig.envFile;
|
|
113
|
-
await envManager.createEnvFile(envFile, envVars, {
|
|
441
|
+
await envManager.createEnvFile(envFile, envVars, {
|
|
442
|
+
force: options.force,
|
|
443
|
+
});
|
|
114
444
|
console.log(` ā Created ${chalk.green(envFile)}`);
|
|
115
445
|
// Create example file
|
|
116
446
|
const exampleFile = `${envFile}.example`;
|
|
117
447
|
await envManager.createEnvFile(exampleFile, envVars, { example: true });
|
|
118
448
|
console.log(` ā Created ${chalk.green(exampleFile)}`);
|
|
119
449
|
// Check gitignore
|
|
120
|
-
const { missing } = envManager.checkGitignore([
|
|
450
|
+
const { missing } = envManager.checkGitignore([
|
|
451
|
+
envFile,
|
|
452
|
+
".mcp-identity.json",
|
|
453
|
+
]);
|
|
121
454
|
if (missing.length > 0) {
|
|
122
455
|
envManager.addToGitignore(missing);
|
|
123
|
-
console.log(` ā Added to ${chalk.green(
|
|
456
|
+
console.log(` ā Added to ${chalk.green(".gitignore")}: ${missing.join(", ")}`);
|
|
124
457
|
}
|
|
125
458
|
}
|
|
126
459
|
catch (error) {
|
|
@@ -128,25 +461,26 @@ export async function init(options) {
|
|
|
128
461
|
}
|
|
129
462
|
}
|
|
130
463
|
// Show next steps
|
|
131
|
-
console.log(`\nš ${chalk.bold(
|
|
132
|
-
console.log(
|
|
464
|
+
console.log(`\nš ${chalk.bold("Next Steps:")}`);
|
|
465
|
+
console.log("\n1. Install the MCP-I package:");
|
|
133
466
|
console.log(` ${chalk.cyan(`${platformInfo.packageManager} install @kya-os/mcp-i`)}`);
|
|
134
|
-
console.log(
|
|
467
|
+
console.log("\n2. Add to your code:");
|
|
135
468
|
console.log(` ${chalk.cyan('import "@kya-os/mcp-i/auto"')}`);
|
|
136
|
-
if (platformInfo.platform ===
|
|
137
|
-
|
|
138
|
-
console.log(
|
|
139
|
-
console.log(
|
|
140
|
-
console.log(
|
|
469
|
+
if (platformInfo.platform === "vercel" ||
|
|
470
|
+
platformInfo.platform === "nextjs") {
|
|
471
|
+
console.log("\n3. For production deployment:");
|
|
472
|
+
console.log(" - Go to Vercel Dashboard ā Settings ā Environment Variables");
|
|
473
|
+
console.log(" - Add all MCP_IDENTITY_* variables from .env.local");
|
|
474
|
+
console.log(` - Run: ${chalk.cyan("npx kya-os env copy")} to copy them to clipboard`);
|
|
141
475
|
}
|
|
142
|
-
console.log(`\n${chalk.bold(
|
|
476
|
+
console.log(`\n${chalk.bold("Platform-specific notes:")}`);
|
|
143
477
|
platformConfig.instructions.forEach((instruction, i) => {
|
|
144
478
|
console.log(`${i + 1}. ${instruction}`);
|
|
145
479
|
});
|
|
146
|
-
showSuccess(
|
|
480
|
+
showSuccess("MCP-I initialization complete!");
|
|
147
481
|
}
|
|
148
482
|
catch (error) {
|
|
149
|
-
showError(error.message ||
|
|
483
|
+
showError(error.message || "Initialization failed");
|
|
150
484
|
process.exit(1);
|
|
151
485
|
}
|
|
152
486
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rotate.d.ts","sourceRoot":"","sources":["../../src/commands/rotate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rotate.d.ts","sourceRoot":"","sources":["../../src/commands/rotate.ts"],"names":[],"mappings":"AASA,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,iBA8HlD"}
|