@kya-os/cli 1.1.0 → 1.2.1

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.
Files changed (139) hide show
  1. package/dist/commands/build.d.ts +5 -0
  2. package/dist/commands/build.d.ts.map +1 -0
  3. package/dist/commands/build.js +173 -0
  4. package/dist/commands/build.js.map +1 -0
  5. package/dist/commands/check.d.ts.map +1 -1
  6. package/dist/commands/check.js +9 -31
  7. package/dist/commands/check.js.map +1 -1
  8. package/dist/commands/claim.d.ts +7 -1
  9. package/dist/commands/claim.d.ts.map +1 -1
  10. package/dist/commands/claim.js +196 -44
  11. package/dist/commands/claim.js.map +1 -1
  12. package/dist/commands/demo.d.ts +10 -0
  13. package/dist/commands/demo.d.ts.map +1 -0
  14. package/dist/commands/demo.js +584 -0
  15. package/dist/commands/demo.js.map +1 -0
  16. package/dist/commands/dev.d.ts +5 -0
  17. package/dist/commands/dev.d.ts.map +1 -0
  18. package/dist/commands/dev.js +111 -0
  19. package/dist/commands/dev.js.map +1 -0
  20. package/dist/commands/doctor.d.ts +11 -0
  21. package/dist/commands/doctor.d.ts.map +1 -0
  22. package/dist/commands/doctor.js +530 -0
  23. package/dist/commands/doctor.js.map +1 -0
  24. package/dist/commands/env.d.ts +1 -1
  25. package/dist/commands/env.d.ts.map +1 -1
  26. package/dist/commands/env.js +113 -15
  27. package/dist/commands/env.js.map +1 -1
  28. package/dist/commands/identity.d.ts +14 -0
  29. package/dist/commands/identity.d.ts.map +1 -0
  30. package/dist/commands/identity.js +204 -0
  31. package/dist/commands/identity.js.map +1 -0
  32. package/dist/commands/init.d.ts +6 -2
  33. package/dist/commands/init.d.ts.map +1 -1
  34. package/dist/commands/init.js +86 -670
  35. package/dist/commands/init.js.map +1 -1
  36. package/dist/commands/receipts.d.ts +11 -0
  37. package/dist/commands/receipts.d.ts.map +1 -0
  38. package/dist/commands/receipts.js +179 -0
  39. package/dist/commands/receipts.js.map +1 -0
  40. package/dist/commands/register.d.ts +15 -0
  41. package/dist/commands/register.d.ts.map +1 -0
  42. package/dist/commands/register.js +220 -0
  43. package/dist/commands/register.js.map +1 -0
  44. package/dist/commands/rotate.d.ts +7 -1
  45. package/dist/commands/rotate.d.ts.map +1 -1
  46. package/dist/commands/rotate.js +149 -109
  47. package/dist/commands/rotate.js.map +1 -1
  48. package/dist/commands/start.d.ts +5 -0
  49. package/dist/commands/start.d.ts.map +1 -0
  50. package/dist/commands/start.js +129 -0
  51. package/dist/commands/start.js.map +1 -0
  52. package/dist/commands/status.d.ts +9 -0
  53. package/dist/commands/status.d.ts.map +1 -0
  54. package/dist/commands/status.js +177 -0
  55. package/dist/commands/status.js.map +1 -0
  56. package/dist/commands/verify.d.ts +22 -0
  57. package/dist/commands/verify.d.ts.map +1 -0
  58. package/dist/commands/verify.js +491 -0
  59. package/dist/commands/verify.js.map +1 -0
  60. package/dist/components/claim-experience.d.ts +21 -0
  61. package/dist/components/claim-experience.d.ts.map +1 -0
  62. package/dist/components/claim-experience.js +138 -0
  63. package/dist/components/claim-experience.js.map +1 -0
  64. package/dist/effects/animation-engine.d.ts +173 -0
  65. package/dist/effects/animation-engine.d.ts.map +1 -0
  66. package/dist/effects/animation-engine.js +254 -0
  67. package/dist/effects/animation-engine.js.map +1 -0
  68. package/dist/effects/cli-integration.js +8 -8
  69. package/dist/effects/cli-integration.js.map +1 -1
  70. package/dist/effects/config.d.ts +86 -10
  71. package/dist/effects/config.d.ts.map +1 -1
  72. package/dist/effects/config.js +201 -18
  73. package/dist/effects/config.js.map +1 -1
  74. package/dist/effects/effect-runner.d.ts +69 -0
  75. package/dist/effects/effect-runner.d.ts.map +1 -0
  76. package/dist/effects/effect-runner.js +255 -0
  77. package/dist/effects/effect-runner.js.map +1 -0
  78. package/dist/effects/gradient.d.ts +131 -0
  79. package/dist/effects/gradient.d.ts.map +1 -0
  80. package/dist/effects/gradient.js +236 -0
  81. package/dist/effects/gradient.js.map +1 -0
  82. package/dist/effects/implementations/beams.d.ts +80 -0
  83. package/dist/effects/implementations/beams.d.ts.map +1 -0
  84. package/dist/effects/implementations/beams.js +221 -0
  85. package/dist/effects/implementations/beams.js.map +1 -0
  86. package/dist/effects/implementations/blackhole.d.ts +98 -0
  87. package/dist/effects/implementations/blackhole.d.ts.map +1 -0
  88. package/dist/effects/implementations/blackhole.js +421 -0
  89. package/dist/effects/implementations/blackhole.js.map +1 -0
  90. package/dist/effects/implementations/burn.d.ts +74 -0
  91. package/dist/effects/implementations/burn.d.ts.map +1 -0
  92. package/dist/effects/implementations/burn.js +234 -0
  93. package/dist/effects/implementations/burn.js.map +1 -0
  94. package/dist/effects/implementations/decrypt.d.ts +115 -0
  95. package/dist/effects/implementations/decrypt.d.ts.map +1 -0
  96. package/dist/effects/implementations/decrypt.js +394 -0
  97. package/dist/effects/implementations/decrypt.js.map +1 -0
  98. package/dist/effects/implementations/waves.d.ts +78 -0
  99. package/dist/effects/implementations/waves.d.ts.map +1 -0
  100. package/dist/effects/implementations/waves.js +278 -0
  101. package/dist/effects/implementations/waves.js.map +1 -0
  102. package/dist/effects/index.d.ts +34 -0
  103. package/dist/effects/index.d.ts.map +1 -0
  104. package/dist/effects/index.js +114 -0
  105. package/dist/effects/index.js.map +1 -0
  106. package/dist/effects/motion-engine.d.ts +168 -0
  107. package/dist/effects/motion-engine.d.ts.map +1 -0
  108. package/dist/effects/motion-engine.js +353 -0
  109. package/dist/effects/motion-engine.js.map +1 -0
  110. package/dist/effects/safe-executor.d.ts +55 -0
  111. package/dist/effects/safe-executor.d.ts.map +1 -0
  112. package/dist/effects/safe-executor.js +210 -0
  113. package/dist/effects/safe-executor.js.map +1 -0
  114. package/dist/effects/types.d.ts +199 -0
  115. package/dist/effects/types.d.ts.map +1 -0
  116. package/dist/effects/types.js +80 -0
  117. package/dist/effects/types.js.map +1 -0
  118. package/dist/effects/utils.d.ts +104 -0
  119. package/dist/effects/utils.d.ts.map +1 -0
  120. package/dist/effects/utils.js +280 -0
  121. package/dist/effects/utils.js.map +1 -0
  122. package/dist/index.js +154 -19
  123. package/dist/utils/env-manager.d.ts +6 -7
  124. package/dist/utils/env-manager.d.ts.map +1 -1
  125. package/dist/utils/env-manager.js +52 -40
  126. package/dist/utils/env-manager.js.map +1 -1
  127. package/dist/utils/identity-manager.d.ts +41 -0
  128. package/dist/utils/identity-manager.d.ts.map +1 -0
  129. package/dist/utils/identity-manager.js +159 -0
  130. package/dist/utils/identity-manager.js.map +1 -0
  131. package/dist/utils/kta-api.d.ts +67 -0
  132. package/dist/utils/kta-api.d.ts.map +1 -0
  133. package/dist/utils/kta-api.js +137 -0
  134. package/dist/utils/kta-api.js.map +1 -0
  135. package/package.json +8 -7
  136. package/dist/utils/validation.d.ts +0 -101
  137. package/dist/utils/validation.d.ts.map +0 -1
  138. package/dist/utils/validation.js +0 -109
  139. package/dist/utils/validation.js.map +0 -1
@@ -0,0 +1,177 @@
1
+ import chalk from "chalk";
2
+ import ora from "ora";
3
+ import { EnvManager } from "../utils/env-manager.js";
4
+ import { showSuccess, showError, showInfo } from "../utils/prompts.js";
5
+ import { ktaApi } from "../utils/kta-api.js";
6
+ /**
7
+ * Display agent status including DID, key ID, KTA URL, mirror status, and last handshake
8
+ */
9
+ export async function status(options = {}) {
10
+ const { json = false } = options;
11
+ // Check for existing identity first
12
+ const envManager = new EnvManager();
13
+ const processVars = envManager.getFromProcess();
14
+ if (!processVars.AGENT_DID) {
15
+ const error = 'No XMCP-I identity found. Run "mcpi init" first.';
16
+ if (json) {
17
+ console.log(JSON.stringify({ success: false, error }, null, 2));
18
+ }
19
+ else {
20
+ showError(error);
21
+ }
22
+ return;
23
+ }
24
+ if (!json) {
25
+ console.log(chalk.cyan("\n📊 Agent Status\n"));
26
+ }
27
+ const spinner = json
28
+ ? null
29
+ : ora("Fetching agent status from KTA...").start();
30
+ try {
31
+ // Implement exponential backoff: 1s → 2s → 5s, cap 30s (R2.5, R8.4)
32
+ const delays = [0, 1000, 2000, 5000]; // First attempt immediate, then backoff
33
+ let agentStatus = null;
34
+ let lastError = null;
35
+ for (let i = 0; i < delays.length; i++) {
36
+ if (i > 0) {
37
+ if (spinner) {
38
+ spinner.text = `Fetching agent status... (attempt ${i + 1}/${delays.length})`;
39
+ }
40
+ await new Promise((resolve) => setTimeout(resolve, delays[i]));
41
+ }
42
+ try {
43
+ // Fetch agent status from KTA
44
+ agentStatus = await ktaApi.getAgentStatus(processVars.AGENT_DID);
45
+ break; // Success, exit retry loop
46
+ }
47
+ catch (error) {
48
+ lastError = error instanceof Error ? error : new Error(String(error));
49
+ // If this is the last attempt or a non-retryable error, break
50
+ if (i === delays.length - 1 ||
51
+ (error instanceof Error && error.message.includes("404"))) {
52
+ break;
53
+ }
54
+ if (spinner) {
55
+ spinner.text = `Retrying... (${lastError.message})`;
56
+ }
57
+ }
58
+ }
59
+ // If we couldn't fetch from KTA, create a fallback status
60
+ if (!agentStatus) {
61
+ if (spinner) {
62
+ spinner.warn("Could not fetch status from KTA, showing local information");
63
+ }
64
+ agentStatus = {
65
+ did: processVars.AGENT_DID,
66
+ keyId: processVars.AGENT_KEY_ID || "key-1",
67
+ ktaURL: `https://knowthat.ai/agents/by-did/${encodeURIComponent(processVars.AGENT_DID)}`,
68
+ mirrorStatus: {
69
+ status: "error",
70
+ lastUpdated: Math.floor(Date.now() / 1000),
71
+ errorMessage: lastError?.message || "Unable to connect to KTA",
72
+ },
73
+ };
74
+ }
75
+ if (spinner && !lastError) {
76
+ spinner.succeed("Status retrieved successfully!");
77
+ }
78
+ else if (spinner && lastError) {
79
+ spinner.warn("Status retrieved with warnings");
80
+ }
81
+ if (json) {
82
+ const output = {
83
+ success: true,
84
+ status: agentStatus,
85
+ schemaId: "https://schemas.kya-os.ai/mcpi/agent-status/v1.0.0.json",
86
+ warning: lastError
87
+ ? `KTA connection issue: ${lastError.message}`
88
+ : undefined,
89
+ };
90
+ console.log(JSON.stringify(output, null, 2));
91
+ }
92
+ else {
93
+ console.log(`\n${chalk.bold("🔑 Identity Information:")}`);
94
+ console.log(` DID: ${chalk.gray(agentStatus.did)}`);
95
+ console.log(` Key ID: ${chalk.gray(agentStatus.keyId)}`);
96
+ console.log(` KTA URL: ${chalk.cyan(agentStatus.ktaURL)}`);
97
+ console.log(`\n${chalk.bold("🔄 MCP Registry Mirror:")}`);
98
+ const statusColor = agentStatus.mirrorStatus.status === "success"
99
+ ? chalk.green
100
+ : agentStatus.mirrorStatus.status === "error"
101
+ ? chalk.red
102
+ : chalk.yellow;
103
+ console.log(` Status: ${statusColor(agentStatus.mirrorStatus.status)}`);
104
+ console.log(` Last Updated: ${chalk.gray(new Date(agentStatus.mirrorStatus.lastUpdated * 1000).toISOString())}`);
105
+ if (agentStatus.mirrorStatus.registryURL) {
106
+ console.log(` Registry URL: ${chalk.cyan(agentStatus.mirrorStatus.registryURL)}`);
107
+ }
108
+ if (agentStatus.mirrorStatus.errorMessage) {
109
+ console.log(` Error: ${chalk.red(agentStatus.mirrorStatus.errorMessage)}`);
110
+ }
111
+ if (agentStatus.lastHandshake) {
112
+ console.log(`\n${chalk.bold("🤝 Last Handshake:")}`);
113
+ const handshakeTime = new Date(agentStatus.lastHandshake * 1000);
114
+ const timeDiff = Math.floor((Date.now() - handshakeTime.getTime()) / 1000);
115
+ const timeAgo = timeDiff < 60
116
+ ? `${timeDiff}s ago`
117
+ : timeDiff < 3600
118
+ ? `${Math.floor(timeDiff / 60)}m ago`
119
+ : `${Math.floor(timeDiff / 3600)}h ago`;
120
+ console.log(` Timestamp: ${chalk.gray(handshakeTime.toISOString())} ${chalk.dim(`(${timeAgo})`)}`);
121
+ }
122
+ // Status-specific messages - handle mirror status without failing on pending (R8.8)
123
+ if (agentStatus.mirrorStatus.status === "pending") {
124
+ showInfo("Mirror status is pending. This is normal for new registrations and will be processed automatically.");
125
+ }
126
+ else if (agentStatus.mirrorStatus.status === "success") {
127
+ showSuccess("Agent is successfully mirrored to MCP Registry!");
128
+ }
129
+ else if (agentStatus.mirrorStatus.status === "error") {
130
+ showError("Mirror status shows an error. The system will retry automatically.");
131
+ }
132
+ // KTA connection warning
133
+ if (lastError) {
134
+ showInfo(`Warning: Could not connect to KTA (${lastError.message}). Showing cached/local information.`);
135
+ }
136
+ // Development agent notice
137
+ if (agentStatus.did.includes("localhost")) {
138
+ showInfo("This is a development agent. It won't appear in public directories.");
139
+ }
140
+ }
141
+ }
142
+ catch (error) {
143
+ spinner?.fail("Failed to fetch status");
144
+ const errorMessage = error.message || "Failed to get agent status";
145
+ if (json) {
146
+ console.log(JSON.stringify({
147
+ success: false,
148
+ error: errorMessage,
149
+ code: error.code || "XMCP_I_ESTATUS",
150
+ }, null, 2));
151
+ }
152
+ else {
153
+ if (error.message?.includes("429")) {
154
+ showError("Rate limit exceeded. Please try again in a few minutes.");
155
+ }
156
+ else if (error.message?.includes("Network")) {
157
+ showError("Network error. Check your internet connection.");
158
+ }
159
+ else {
160
+ showError(errorMessage);
161
+ }
162
+ // Provide fallback information
163
+ console.log(`\n${chalk.gray("Local identity information:")}`);
164
+ console.log(` DID: ${chalk.gray(processVars.AGENT_DID)}`);
165
+ if (processVars.AGENT_KEY_ID) {
166
+ console.log(` Key ID: ${chalk.gray(processVars.AGENT_KEY_ID)}`);
167
+ }
168
+ console.log(` KTA URL: ${chalk.cyan(`https://knowthat.ai/agents/by-did/${encodeURIComponent(processVars.AGENT_DID)}`)}`);
169
+ }
170
+ // Important: Don't exit with non-zero status for mirror pending or KTA connection issues (R8.8)
171
+ // Only exit with error for critical failures like missing identity
172
+ if (!processVars.AGENT_DID && process.env.NODE_ENV !== "test") {
173
+ process.exit(1);
174
+ }
175
+ }
176
+ }
177
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Local verification command for XMCP-I CLI
3
+ *
4
+ * Implements Requirements 15.5, 15.6:
5
+ * - Perform offline verification without KTA calls
6
+ * - Validate signatures, proofs, and key relationships locally
7
+ * - Return detailed validation results for debugging
8
+ */
9
+ interface VerifyOptions {
10
+ local?: boolean;
11
+ json?: boolean;
12
+ verbose?: boolean;
13
+ proof?: string;
14
+ request?: string;
15
+ response?: string;
16
+ }
17
+ /**
18
+ * Verify command implementation
19
+ */
20
+ export declare function verify(options?: VerifyOptions): Promise<void>;
21
+ export {};
22
+ //# sourceMappingURL=verify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmBH,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA2CD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,iBA6FvD"}