cogxai 2.8.0

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 (308) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +691 -0
  3. package/dist/agents/executor.d.ts +17 -0
  4. package/dist/agents/executor.d.ts.map +1 -0
  5. package/dist/agents/executor.js +336 -0
  6. package/dist/agents/executor.js.map +1 -0
  7. package/dist/agents/index.d.ts +9 -0
  8. package/dist/agents/index.d.ts.map +1 -0
  9. package/dist/agents/index.js +18 -0
  10. package/dist/agents/index.js.map +1 -0
  11. package/dist/agents/tools.d.ts +31 -0
  12. package/dist/agents/tools.d.ts.map +1 -0
  13. package/dist/agents/tools.js +262 -0
  14. package/dist/agents/tools.js.map +1 -0
  15. package/dist/agents/types.d.ts +25 -0
  16. package/dist/agents/types.d.ts.map +1 -0
  17. package/dist/agents/types.js +170 -0
  18. package/dist/agents/types.js.map +1 -0
  19. package/dist/character/agent-tier-modifiers.d.ts +3 -0
  20. package/dist/character/agent-tier-modifiers.d.ts.map +1 -0
  21. package/dist/character/agent-tier-modifiers.js +24 -0
  22. package/dist/character/agent-tier-modifiers.js.map +1 -0
  23. package/dist/character/base-prompt.d.ts +3 -0
  24. package/dist/character/base-prompt.d.ts.map +1 -0
  25. package/dist/character/base-prompt.js +45 -0
  26. package/dist/character/base-prompt.js.map +1 -0
  27. package/dist/character/mood-modifiers.d.ts +3 -0
  28. package/dist/character/mood-modifiers.d.ts.map +1 -0
  29. package/dist/character/mood-modifiers.js +27 -0
  30. package/dist/character/mood-modifiers.js.map +1 -0
  31. package/dist/character/tier-modifiers.d.ts +3 -0
  32. package/dist/character/tier-modifiers.d.ts.map +1 -0
  33. package/dist/character/tier-modifiers.js +25 -0
  34. package/dist/character/tier-modifiers.js.map +1 -0
  35. package/dist/cli/banner.d.ts +20 -0
  36. package/dist/cli/banner.d.ts.map +1 -0
  37. package/dist/cli/banner.js +73 -0
  38. package/dist/cli/banner.js.map +1 -0
  39. package/dist/cli/export.d.ts +2 -0
  40. package/dist/cli/export.d.ts.map +1 -0
  41. package/dist/cli/export.js +176 -0
  42. package/dist/cli/export.js.map +1 -0
  43. package/dist/cli/index.d.ts +3 -0
  44. package/dist/cli/index.d.ts.map +1 -0
  45. package/dist/cli/index.js +80 -0
  46. package/dist/cli/index.js.map +1 -0
  47. package/dist/cli/init.d.ts +2 -0
  48. package/dist/cli/init.d.ts.map +1 -0
  49. package/dist/cli/init.js +541 -0
  50. package/dist/cli/init.js.map +1 -0
  51. package/dist/cli/register.d.ts +2 -0
  52. package/dist/cli/register.d.ts.map +1 -0
  53. package/dist/cli/register.js +121 -0
  54. package/dist/cli/register.js.map +1 -0
  55. package/dist/cli/setup.d.ts +3 -0
  56. package/dist/cli/setup.d.ts.map +1 -0
  57. package/dist/cli/setup.js +403 -0
  58. package/dist/cli/setup.js.map +1 -0
  59. package/dist/cli/ship.d.ts +2 -0
  60. package/dist/cli/ship.d.ts.map +1 -0
  61. package/dist/cli/ship.js +32 -0
  62. package/dist/cli/ship.js.map +1 -0
  63. package/dist/config.d.ts +90 -0
  64. package/dist/config.d.ts.map +1 -0
  65. package/dist/config.js +124 -0
  66. package/dist/config.js.map +1 -0
  67. package/dist/core/allium-client.d.ts +32 -0
  68. package/dist/core/allium-client.d.ts.map +1 -0
  69. package/dist/core/allium-client.js +162 -0
  70. package/dist/core/allium-client.js.map +1 -0
  71. package/dist/core/claude-client.d.ts +31 -0
  72. package/dist/core/claude-client.d.ts.map +1 -0
  73. package/dist/core/claude-client.js +172 -0
  74. package/dist/core/claude-client.js.map +1 -0
  75. package/dist/core/database.d.ts +17 -0
  76. package/dist/core/database.d.ts.map +1 -0
  77. package/dist/core/database.js +499 -0
  78. package/dist/core/database.js.map +1 -0
  79. package/dist/core/embeddings.d.ts +28 -0
  80. package/dist/core/embeddings.d.ts.map +1 -0
  81. package/dist/core/embeddings.js +212 -0
  82. package/dist/core/embeddings.js.map +1 -0
  83. package/dist/core/encryption.d.ts +49 -0
  84. package/dist/core/encryption.d.ts.map +1 -0
  85. package/dist/core/encryption.js +136 -0
  86. package/dist/core/encryption.js.map +1 -0
  87. package/dist/core/guardrails.d.ts +30 -0
  88. package/dist/core/guardrails.d.ts.map +1 -0
  89. package/dist/core/guardrails.js +191 -0
  90. package/dist/core/guardrails.js.map +1 -0
  91. package/dist/core/inference.d.ts +37 -0
  92. package/dist/core/inference.d.ts.map +1 -0
  93. package/dist/core/inference.js +110 -0
  94. package/dist/core/inference.js.map +1 -0
  95. package/dist/core/input-guardrails.d.ts +21 -0
  96. package/dist/core/input-guardrails.d.ts.map +1 -0
  97. package/dist/core/input-guardrails.js +59 -0
  98. package/dist/core/input-guardrails.js.map +1 -0
  99. package/dist/core/logger.d.ts +3 -0
  100. package/dist/core/logger.d.ts.map +1 -0
  101. package/dist/core/logger.js +41 -0
  102. package/dist/core/logger.js.map +1 -0
  103. package/dist/core/memory-graph.d.ts +126 -0
  104. package/dist/core/memory-graph.d.ts.map +1 -0
  105. package/dist/core/memory-graph.js +451 -0
  106. package/dist/core/memory-graph.js.map +1 -0
  107. package/dist/core/memory.d.ts +172 -0
  108. package/dist/core/memory.d.ts.map +1 -0
  109. package/dist/core/memory.js +1432 -0
  110. package/dist/core/memory.js.map +1 -0
  111. package/dist/core/owner-context.d.ts +8 -0
  112. package/dist/core/owner-context.d.ts.map +1 -0
  113. package/dist/core/owner-context.js +31 -0
  114. package/dist/core/owner-context.js.map +1 -0
  115. package/dist/core/price-oracle.d.ts +16 -0
  116. package/dist/core/price-oracle.d.ts.map +1 -0
  117. package/dist/core/price-oracle.js +162 -0
  118. package/dist/core/price-oracle.js.map +1 -0
  119. package/dist/core/solana-client.d.ts +39 -0
  120. package/dist/core/solana-client.d.ts.map +1 -0
  121. package/dist/core/solana-client.js +366 -0
  122. package/dist/core/solana-client.js.map +1 -0
  123. package/dist/core/telegram-client.d.ts +22 -0
  124. package/dist/core/telegram-client.d.ts.map +1 -0
  125. package/dist/core/telegram-client.js +93 -0
  126. package/dist/core/telegram-client.js.map +1 -0
  127. package/dist/core/venice-client.d.ts +94 -0
  128. package/dist/core/venice-client.d.ts.map +1 -0
  129. package/dist/core/venice-client.js +282 -0
  130. package/dist/core/venice-client.js.map +1 -0
  131. package/dist/core/x-client.d.ts +68 -0
  132. package/dist/core/x-client.d.ts.map +1 -0
  133. package/dist/core/x-client.js +383 -0
  134. package/dist/core/x-client.js.map +1 -0
  135. package/dist/events/event-bus.d.ts +37 -0
  136. package/dist/events/event-bus.d.ts.map +1 -0
  137. package/dist/events/event-bus.js +21 -0
  138. package/dist/events/event-bus.js.map +1 -0
  139. package/dist/events/handlers.d.ts +6 -0
  140. package/dist/events/handlers.d.ts.map +1 -0
  141. package/dist/events/handlers.js +21 -0
  142. package/dist/events/handlers.js.map +1 -0
  143. package/dist/features/action-learning.d.ts +61 -0
  144. package/dist/features/action-learning.d.ts.map +1 -0
  145. package/dist/features/action-learning.js +424 -0
  146. package/dist/features/action-learning.js.map +1 -0
  147. package/dist/features/active-reflection.d.ts +37 -0
  148. package/dist/features/active-reflection.d.ts.map +1 -0
  149. package/dist/features/active-reflection.js +376 -0
  150. package/dist/features/active-reflection.js.map +1 -0
  151. package/dist/features/agent-tier.d.ts +21 -0
  152. package/dist/features/agent-tier.d.ts.map +1 -0
  153. package/dist/features/agent-tier.js +56 -0
  154. package/dist/features/agent-tier.js.map +1 -0
  155. package/dist/features/campaign-tracker.d.ts +8 -0
  156. package/dist/features/campaign-tracker.d.ts.map +1 -0
  157. package/dist/features/campaign-tracker.js +206 -0
  158. package/dist/features/campaign-tracker.js.map +1 -0
  159. package/dist/features/clinamen.d.ts +48 -0
  160. package/dist/features/clinamen.d.ts.map +1 -0
  161. package/dist/features/clinamen.js +164 -0
  162. package/dist/features/clinamen.js.map +1 -0
  163. package/dist/features/dream-cycle.d.ts +12 -0
  164. package/dist/features/dream-cycle.d.ts.map +1 -0
  165. package/dist/features/dream-cycle.js +889 -0
  166. package/dist/features/dream-cycle.js.map +1 -0
  167. package/dist/features/market-monitor.d.ts +4 -0
  168. package/dist/features/market-monitor.d.ts.map +1 -0
  169. package/dist/features/market-monitor.js +135 -0
  170. package/dist/features/market-monitor.js.map +1 -0
  171. package/dist/features/memory-trace.d.ts +75 -0
  172. package/dist/features/memory-trace.d.ts.map +1 -0
  173. package/dist/features/memory-trace.js +325 -0
  174. package/dist/features/memory-trace.js.map +1 -0
  175. package/dist/features/onchain-opinion.d.ts +5 -0
  176. package/dist/features/onchain-opinion.d.ts.map +1 -0
  177. package/dist/features/onchain-opinion.js +70 -0
  178. package/dist/features/onchain-opinion.js.map +1 -0
  179. package/dist/features/price-personality.d.ts +4 -0
  180. package/dist/features/price-personality.d.ts.map +1 -0
  181. package/dist/features/price-personality.js +156 -0
  182. package/dist/features/price-personality.js.map +1 -0
  183. package/dist/features/x-sentiment-monitor.d.ts +8 -0
  184. package/dist/features/x-sentiment-monitor.d.ts.map +1 -0
  185. package/dist/features/x-sentiment-monitor.js +289 -0
  186. package/dist/features/x-sentiment-monitor.js.map +1 -0
  187. package/dist/index.d.ts +3 -0
  188. package/dist/index.d.ts.map +1 -0
  189. package/dist/index.js +133 -0
  190. package/dist/index.js.map +1 -0
  191. package/dist/knowledge/tokenomics.d.ts +72 -0
  192. package/dist/knowledge/tokenomics.d.ts.map +1 -0
  193. package/dist/knowledge/tokenomics.js +140 -0
  194. package/dist/knowledge/tokenomics.js.map +1 -0
  195. package/dist/mcp/local-store.d.ts +53 -0
  196. package/dist/mcp/local-store.d.ts.map +1 -0
  197. package/dist/mcp/local-store.js +175 -0
  198. package/dist/mcp/local-store.js.map +1 -0
  199. package/dist/mcp/server.d.ts +2 -0
  200. package/dist/mcp/server.d.ts.map +1 -0
  201. package/dist/mcp/server.js +373 -0
  202. package/dist/mcp/server.js.map +1 -0
  203. package/dist/mentions/classifier.d.ts +3 -0
  204. package/dist/mentions/classifier.d.ts.map +1 -0
  205. package/dist/mentions/classifier.js +51 -0
  206. package/dist/mentions/classifier.js.map +1 -0
  207. package/dist/mentions/dispatcher.d.ts +3 -0
  208. package/dist/mentions/dispatcher.d.ts.map +1 -0
  209. package/dist/mentions/dispatcher.js +404 -0
  210. package/dist/mentions/dispatcher.js.map +1 -0
  211. package/dist/mentions/poller.d.ts +3 -0
  212. package/dist/mentions/poller.d.ts.map +1 -0
  213. package/dist/mentions/poller.js +45 -0
  214. package/dist/mentions/poller.js.map +1 -0
  215. package/dist/sdk/cortex-v2.d.ts +121 -0
  216. package/dist/sdk/cortex-v2.d.ts.map +1 -0
  217. package/dist/sdk/cortex-v2.js +207 -0
  218. package/dist/sdk/cortex-v2.js.map +1 -0
  219. package/dist/sdk/cortex.d.ts +64 -0
  220. package/dist/sdk/cortex.d.ts.map +1 -0
  221. package/dist/sdk/cortex.js +362 -0
  222. package/dist/sdk/cortex.js.map +1 -0
  223. package/dist/sdk/http-transport.d.ts +15 -0
  224. package/dist/sdk/http-transport.d.ts.map +1 -0
  225. package/dist/sdk/http-transport.js +49 -0
  226. package/dist/sdk/http-transport.js.map +1 -0
  227. package/dist/sdk/index.d.ts +5 -0
  228. package/dist/sdk/index.d.ts.map +1 -0
  229. package/dist/sdk/index.js +8 -0
  230. package/dist/sdk/index.js.map +1 -0
  231. package/dist/sdk/sdk-mode.d.ts +1 -0
  232. package/dist/sdk/sdk-mode.d.ts.map +1 -0
  233. package/dist/sdk/sdk-mode.js +5 -0
  234. package/dist/sdk/sdk-mode.js.map +1 -0
  235. package/dist/sdk/types.d.ts +48 -0
  236. package/dist/sdk/types.d.ts.map +1 -0
  237. package/dist/sdk/types.js +3 -0
  238. package/dist/sdk/types.js.map +1 -0
  239. package/dist/services/response.service.d.ts +27 -0
  240. package/dist/services/response.service.d.ts.map +1 -0
  241. package/dist/services/response.service.js +62 -0
  242. package/dist/services/response.service.js.map +1 -0
  243. package/dist/services/social.service.d.ts +14 -0
  244. package/dist/services/social.service.d.ts.map +1 -0
  245. package/dist/services/social.service.js +44 -0
  246. package/dist/services/social.service.js.map +1 -0
  247. package/dist/services/telegram.service.d.ts +30 -0
  248. package/dist/services/telegram.service.d.ts.map +1 -0
  249. package/dist/services/telegram.service.js +71 -0
  250. package/dist/services/telegram.service.js.map +1 -0
  251. package/dist/types/api.d.ts +109 -0
  252. package/dist/types/api.d.ts.map +1 -0
  253. package/dist/types/api.js +6 -0
  254. package/dist/types/api.js.map +1 -0
  255. package/dist/utils/constants.d.ts +49 -0
  256. package/dist/utils/constants.d.ts.map +1 -0
  257. package/dist/utils/constants.js +110 -0
  258. package/dist/utils/constants.js.map +1 -0
  259. package/dist/utils/env-persona.d.ts +9 -0
  260. package/dist/utils/env-persona.d.ts.map +1 -0
  261. package/dist/utils/env-persona.js +53 -0
  262. package/dist/utils/env-persona.js.map +1 -0
  263. package/dist/utils/format.d.ts +12 -0
  264. package/dist/utils/format.d.ts.map +1 -0
  265. package/dist/utils/format.js +59 -0
  266. package/dist/utils/format.js.map +1 -0
  267. package/dist/utils/index.d.ts +4 -0
  268. package/dist/utils/index.d.ts.map +1 -0
  269. package/dist/utils/index.js +20 -0
  270. package/dist/utils/index.js.map +1 -0
  271. package/dist/utils/text.d.ts +10 -0
  272. package/dist/utils/text.d.ts.map +1 -0
  273. package/dist/utils/text.js +33 -0
  274. package/dist/utils/text.js.map +1 -0
  275. package/dist/verify-app/routes.d.ts +3 -0
  276. package/dist/verify-app/routes.d.ts.map +1 -0
  277. package/dist/verify-app/routes.js +101 -0
  278. package/dist/verify-app/routes.js.map +1 -0
  279. package/dist/webhook/agent-routes.d.ts +3 -0
  280. package/dist/webhook/agent-routes.d.ts.map +1 -0
  281. package/dist/webhook/agent-routes.js +314 -0
  282. package/dist/webhook/agent-routes.js.map +1 -0
  283. package/dist/webhook/campaign-routes.d.ts +3 -0
  284. package/dist/webhook/campaign-routes.d.ts.map +1 -0
  285. package/dist/webhook/campaign-routes.js +333 -0
  286. package/dist/webhook/campaign-routes.js.map +1 -0
  287. package/dist/webhook/cortex-routes.d.ts +13 -0
  288. package/dist/webhook/cortex-routes.d.ts.map +1 -0
  289. package/dist/webhook/cortex-routes.js +534 -0
  290. package/dist/webhook/cortex-routes.js.map +1 -0
  291. package/dist/webhook/dashboard-routes.d.ts +8 -0
  292. package/dist/webhook/dashboard-routes.d.ts.map +1 -0
  293. package/dist/webhook/dashboard-routes.js +588 -0
  294. package/dist/webhook/dashboard-routes.js.map +1 -0
  295. package/dist/webhook/graph-routes.d.ts +3 -0
  296. package/dist/webhook/graph-routes.d.ts.map +1 -0
  297. package/dist/webhook/graph-routes.js +238 -0
  298. package/dist/webhook/graph-routes.js.map +1 -0
  299. package/dist/webhook/privy-auth.d.ts +35 -0
  300. package/dist/webhook/privy-auth.d.ts.map +1 -0
  301. package/dist/webhook/privy-auth.js +99 -0
  302. package/dist/webhook/privy-auth.js.map +1 -0
  303. package/dist/webhook/server.d.ts +4 -0
  304. package/dist/webhook/server.d.ts.map +1 -0
  305. package/dist/webhook/server.js +912 -0
  306. package/dist/webhook/server.js.map +1 -0
  307. package/package.json +96 -0
  308. package/supabase-schema.sql +399 -0
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.runRegister = runRegister;
37
+ const readline = __importStar(require("readline"));
38
+ const banner_1 = require("./banner");
39
+ function createPrompt() {
40
+ return readline.createInterface({
41
+ input: process.stdin,
42
+ output: process.stdout,
43
+ });
44
+ }
45
+ function ask(rl, question) {
46
+ return new Promise((resolve) => {
47
+ rl.question(` ${banner_1.c.white}?${banner_1.c.reset} ${question}`, (answer) => {
48
+ resolve(answer.trim());
49
+ });
50
+ });
51
+ }
52
+ async function runRegister() {
53
+ (0, banner_1.printBanner)();
54
+ console.log(` ${banner_1.c.bold}Register for hosted Cortex access${banner_1.c.reset}\n`);
55
+ console.log(` ${banner_1.c.gray}This gives you an API key to store memories on COGXAI infrastructure.${banner_1.c.reset}\n`);
56
+ const rl = createPrompt();
57
+ const name = await ask(rl, 'Agent name (your project name): ');
58
+ if (!name || name.length < 2) {
59
+ (0, banner_1.printWarn)('Name must be at least 2 characters');
60
+ rl.close();
61
+ return;
62
+ }
63
+ const wallet = await ask(rl, 'Your Solana wallet address: ');
64
+ if (!wallet || !/^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(wallet)) {
65
+ (0, banner_1.printWarn)('Invalid Solana address');
66
+ rl.close();
67
+ return;
68
+ }
69
+ const url = 'https://cogxai.org';
70
+ console.log('');
71
+ process.stdout.write(` ${banner_1.c.gray}Registering...${banner_1.c.reset}`);
72
+ try {
73
+ const res = await fetch(`${url}/api/cortex/register`, {
74
+ method: 'POST',
75
+ headers: { 'Content-Type': 'application/json' },
76
+ body: JSON.stringify({ name, wallet }),
77
+ });
78
+ process.stdout.clearLine(0);
79
+ process.stdout.cursorTo(0);
80
+ const data = await res.json();
81
+ if (!res.ok) {
82
+ (0, banner_1.printWarn)(`Registration failed: ${data.error || res.statusText}`);
83
+ rl.close();
84
+ return;
85
+ }
86
+ (0, banner_1.printDivider)();
87
+ console.log('');
88
+ (0, banner_1.printSuccess)('Registered successfully!\n');
89
+ console.log(` ${banner_1.c.bold}API Key:${banner_1.c.reset} ${banner_1.c.green}${data.apiKey}${banner_1.c.reset}`);
90
+ console.log(` ${banner_1.c.bold}Agent ID:${banner_1.c.reset} ${data.agentId}`);
91
+ console.log(` ${banner_1.c.bold}Wallet:${banner_1.c.reset} ${wallet}\n`);
92
+ (0, banner_1.printWarn)('Save this API key — it will not be shown again.\n');
93
+ (0, banner_1.printInfo)('Add to your .env:');
94
+ console.log(` CORTEX_API_KEY=${data.apiKey}`);
95
+ console.log(` OWNER_WALLET=${wallet}\n`);
96
+ (0, banner_1.printInfo)('Then in your code:');
97
+ console.log(` const brain = new Cortex({`);
98
+ console.log(` hosted: { apiKey: process.env.CORTEX_API_KEY },`);
99
+ console.log(` ownerWallet: process.env.OWNER_WALLET,`);
100
+ console.log(` });\n`);
101
+ }
102
+ catch (err) {
103
+ process.stdout.clearLine(0);
104
+ process.stdout.cursorTo(0);
105
+ const msg = err.message || '';
106
+ const isCert = /certificate|CERT|SSL|self.signed|unable to verify/i.test(msg);
107
+ if (isCert) {
108
+ (0, banner_1.printWarn)('SSL certificate error — your network may be intercepting HTTPS traffic');
109
+ (0, banner_1.printInfo)('This is common with corporate firewalls (Fortinet, Zscaler, etc.)');
110
+ (0, banner_1.printInfo)('Try: switch to a mobile hotspot or VPN, or ask IT to whitelist cogxai.org');
111
+ }
112
+ else {
113
+ (0, banner_1.printWarn)(`Could not reach ${url} — is the server running?`);
114
+ (0, banner_1.printInfo)(`Error: ${msg}`);
115
+ }
116
+ }
117
+ (0, banner_1.printDivider)();
118
+ console.log('');
119
+ rl.close();
120
+ }
121
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/cli/register.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,kCAkFC;AApGD,mDAAqC;AACrC,qCAA4F;AAE5F,SAAS,YAAY;IACnB,OAAO,QAAQ,CAAC,eAAe,CAAC;QAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,GAAG,CAAC,EAAsB,EAAE,QAAgB;IACnD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CAAC,KAAK,UAAC,CAAC,KAAK,IAAI,UAAC,CAAC,KAAK,IAAI,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE;YAC5D,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,WAAW;IAC/B,IAAA,oBAAW,GAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,UAAC,CAAC,IAAI,oCAAoC,UAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,KAAK,UAAC,CAAC,IAAI,wEAAwE,UAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAE5G,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC;IAE1B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,kCAAkC,CAAC,CAAC;IAC/D,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,IAAA,kBAAS,EAAC,oCAAoC,CAAC,CAAC;QAChD,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,8BAA8B,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7D,IAAA,kBAAS,EAAC,wBAAwB,CAAC,CAAC;QACpC,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,oBAAoB,CAAC;IAEjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,UAAC,CAAC,IAAI,iBAAiB,UAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAE5D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,GAAG,sBAAsB,EAAE;YACpD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SACvC,CAAC,CAAC;QAEH,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE3B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA2D,CAAC;QAEvF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,IAAA,kBAAS,EAAC,wBAAwB,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAClE,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QAED,IAAA,qBAAY,GAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,IAAA,qBAAY,EAAC,4BAA4B,CAAC,CAAC;QAE3C,OAAO,CAAC,GAAG,CAAC,KAAK,UAAC,CAAC,IAAI,WAAW,UAAC,CAAC,KAAK,KAAK,UAAC,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,UAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,KAAK,UAAC,CAAC,IAAI,YAAY,UAAC,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,UAAC,CAAC,IAAI,UAAU,UAAC,CAAC,KAAK,MAAM,MAAM,IAAI,CAAC,CAAC;QAE1D,IAAA,kBAAS,EAAC,mDAAmD,CAAC,CAAC;QAE/D,IAAA,kBAAS,EAAC,mBAAmB,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,IAAI,CAAC,CAAC;QAE5C,IAAA,kBAAS,EAAC,oBAAoB,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,GAAG,GAAI,GAAa,CAAC,OAAO,IAAI,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,oDAAoD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,MAAM,EAAE,CAAC;YACX,IAAA,kBAAS,EAAC,wEAAwE,CAAC,CAAC;YACpF,IAAA,kBAAS,EAAC,mEAAmE,CAAC,CAAC;YAC/E,IAAA,kBAAS,EAAC,2EAA2E,CAAC,CAAC;QACzF,CAAC;aAAM,CAAC;YACN,IAAA,kBAAS,EAAC,mBAAmB,GAAG,2BAA2B,CAAC,CAAC;YAC7D,IAAA,kBAAS,EAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,IAAA,qBAAY,GAAE,CAAC;IACf,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,EAAE,CAAC,KAAK,EAAE,CAAC;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function runSetup(): Promise<void>;
2
+ export declare function runMcpInstall(): Promise<void>;
3
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AA+IA,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CA0N9C;AAID,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA4CnD"}
@@ -0,0 +1,403 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.runSetup = runSetup;
37
+ exports.runMcpInstall = runMcpInstall;
38
+ const readline = __importStar(require("readline"));
39
+ const fs = __importStar(require("fs"));
40
+ const path = __importStar(require("path"));
41
+ const banner_1 = require("./banner");
42
+ function createPrompt() {
43
+ return readline.createInterface({
44
+ input: process.stdin,
45
+ output: process.stdout,
46
+ });
47
+ }
48
+ function ask(rl, question) {
49
+ return new Promise((resolve) => {
50
+ rl.question(` ${banner_1.c.white}?${banner_1.c.reset} ${question}`, (answer) => {
51
+ resolve(answer.trim());
52
+ });
53
+ });
54
+ }
55
+ function askChoice(rl, question, choices) {
56
+ for (const [i, ch] of choices.entries()) {
57
+ console.log(` ${banner_1.c.cyan}${i + 1}${banner_1.c.reset}) ${ch.label}`);
58
+ }
59
+ return new Promise((resolve) => {
60
+ rl.question(`\n ${banner_1.c.white}?${banner_1.c.reset} ${question} `, (answer) => {
61
+ const idx = parseInt(answer.trim(), 10) - 1;
62
+ if (idx >= 0 && idx < choices.length) {
63
+ resolve(choices[idx].key);
64
+ }
65
+ else {
66
+ resolve(choices[choices.length - 1].key); // default to last (skip)
67
+ }
68
+ });
69
+ });
70
+ }
71
+ function getMcpTargets() {
72
+ const home = process.env.HOME || process.env.USERPROFILE || '~';
73
+ const platform = process.platform;
74
+ const targets = [];
75
+ // Claude Desktop
76
+ if (platform === 'darwin') {
77
+ targets.push({
78
+ key: 'claude-desktop',
79
+ label: 'Claude Desktop',
80
+ configPath: path.join(home, 'Library', 'Application Support', 'Claude', 'claude_desktop_config.json'),
81
+ wrapKey: 'mcpServers',
82
+ });
83
+ }
84
+ else if (platform === 'win32') {
85
+ targets.push({
86
+ key: 'claude-desktop',
87
+ label: 'Claude Desktop',
88
+ configPath: path.join(home, 'AppData', 'Roaming', 'Claude', 'claude_desktop_config.json'),
89
+ wrapKey: 'mcpServers',
90
+ });
91
+ }
92
+ else {
93
+ targets.push({
94
+ key: 'claude-desktop',
95
+ label: 'Claude Desktop',
96
+ configPath: path.join(home, '.config', 'Claude', 'claude_desktop_config.json'),
97
+ wrapKey: 'mcpServers',
98
+ });
99
+ }
100
+ // Claude Code — project-level .mcp.json
101
+ targets.push({
102
+ key: 'claude-code',
103
+ label: 'Claude Code (project)',
104
+ configPath: path.resolve(process.cwd(), '.mcp.json'),
105
+ wrapKey: 'mcpServers',
106
+ });
107
+ // Cursor
108
+ targets.push({
109
+ key: 'cursor',
110
+ label: 'Cursor',
111
+ configPath: path.join(home, '.cursor', 'mcp.json'),
112
+ wrapKey: 'mcpServers',
113
+ });
114
+ return targets;
115
+ }
116
+ function installMcpConfig(target, agentName, wallet, apiKey, local) {
117
+ const mcpEntry = local ? {
118
+ command: 'npx',
119
+ args: ['cogxai', 'mcp-serve', '--local'],
120
+ env: {},
121
+ } : {
122
+ command: 'npx',
123
+ args: ['cogxai', 'mcp-serve'],
124
+ env: {
125
+ ...(apiKey ? { CORTEX_API_KEY: apiKey } : {}),
126
+ CORTEX_HOST_URL: 'https://cogxai.org',
127
+ ...(wallet ? { COGXAI_WALLET: wallet } : {}),
128
+ ...(agentName ? { COGXAI_AGENT_NAME: agentName } : {}),
129
+ },
130
+ };
131
+ try {
132
+ // Read existing config or start fresh
133
+ let config = {};
134
+ const dir = path.dirname(target.configPath);
135
+ if (fs.existsSync(target.configPath)) {
136
+ const raw = fs.readFileSync(target.configPath, 'utf-8');
137
+ try {
138
+ config = JSON.parse(raw);
139
+ }
140
+ catch {
141
+ return { ok: false, error: 'Config file has invalid JSON' };
142
+ }
143
+ }
144
+ else {
145
+ // Create directory if needed
146
+ fs.mkdirSync(dir, { recursive: true });
147
+ }
148
+ // Merge MCP entry
149
+ if (!config[target.wrapKey]) {
150
+ config[target.wrapKey] = {};
151
+ }
152
+ config[target.wrapKey]['cogxai-memory'] = mcpEntry;
153
+ // Write back
154
+ fs.writeFileSync(target.configPath, JSON.stringify(config, null, 2) + '\n', 'utf-8');
155
+ return { ok: true };
156
+ }
157
+ catch (err) {
158
+ return { ok: false, error: err.message };
159
+ }
160
+ }
161
+ // ─── Main Setup Flow ────────────────────────────────────────
162
+ async function runSetup() {
163
+ (0, banner_1.printBanner)();
164
+ console.log(` ${banner_1.c.bold}Let's get your agent's memory running.${banner_1.c.reset}`);
165
+ console.log(` ${banner_1.c.gray}This takes about 30 seconds.${banner_1.c.reset}\n`);
166
+ const rl = createPrompt();
167
+ // ─── Step 1: Register ──────────────────────────────────
168
+ (0, banner_1.printStep)(1, 3, 'Register');
169
+ (0, banner_1.printInfo)('We\'ll create an account on cogxai.org and get you an API key.');
170
+ (0, banner_1.printInfo)('Already have a key? Just paste it when asked.\n');
171
+ const existingKey = await ask(rl, 'Existing API key? (Enter to register a new one): ');
172
+ let apiKey = existingKey;
173
+ let agentName = '';
174
+ let wallet = '';
175
+ if (!existingKey) {
176
+ // Register flow
177
+ agentName = await ask(rl, 'Agent name (your project name): ');
178
+ if (!agentName || agentName.length < 2) {
179
+ agentName = path.basename(process.cwd());
180
+ (0, banner_1.printInfo)(`Using directory name: ${agentName}`);
181
+ }
182
+ wallet = await ask(rl, 'Solana wallet address (Enter to skip): ');
183
+ console.log('');
184
+ // Try to register
185
+ process.stdout.write(` ${banner_1.c.gray}Registering on cogxai.org...${banner_1.c.reset}`);
186
+ try {
187
+ const res = await fetch('https://cogxai.org/api/cortex/register', {
188
+ method: 'POST',
189
+ headers: { 'Content-Type': 'application/json' },
190
+ body: JSON.stringify({
191
+ name: agentName,
192
+ wallet: wallet || 'pending',
193
+ }),
194
+ });
195
+ // Clear the loading line
196
+ if (process.stdout.clearLine) {
197
+ process.stdout.clearLine(0);
198
+ process.stdout.cursorTo(0);
199
+ }
200
+ else {
201
+ console.log('');
202
+ }
203
+ if (res.ok) {
204
+ const data = await res.json();
205
+ if (data.apiKey) {
206
+ apiKey = data.apiKey;
207
+ (0, banner_1.printSuccess)(`Registered! API key: ${banner_1.c.green}${apiKey.slice(0, 12)}...${banner_1.c.reset}`);
208
+ (0, banner_1.printInfo)(`Agent ID: ${data.agentId}`);
209
+ }
210
+ else {
211
+ (0, banner_1.printWarn)('Registration returned no key — enter one manually');
212
+ apiKey = await ask(rl, 'API key: ');
213
+ }
214
+ }
215
+ else {
216
+ const errData = await res.json().catch(() => ({}));
217
+ (0, banner_1.printWarn)(`Registration failed: ${errData.error || res.statusText}`);
218
+ (0, banner_1.printInfo)('You can register manually later: npx cogxai register');
219
+ apiKey = await ask(rl, 'Paste an API key (or Enter to skip): ');
220
+ }
221
+ }
222
+ catch (err) {
223
+ if (process.stdout.clearLine) {
224
+ process.stdout.clearLine(0);
225
+ process.stdout.cursorTo(0);
226
+ }
227
+ else {
228
+ console.log('');
229
+ }
230
+ const msg = err.message || '';
231
+ const isCert = /certificate|CERT|SSL|self.signed|unable to verify/i.test(msg);
232
+ if (isCert) {
233
+ (0, banner_1.printWarn)('SSL certificate error — your network may be intercepting HTTPS traffic');
234
+ (0, banner_1.printInfo)('This is common with corporate firewalls (Fortinet, Zscaler, etc.)');
235
+ (0, banner_1.printInfo)('Try: switch to a mobile hotspot or VPN, or ask IT to whitelist cogxai.org');
236
+ }
237
+ else {
238
+ (0, banner_1.printWarn)(`Could not reach cogxai.org: ${msg}`);
239
+ }
240
+ (0, banner_1.printInfo)('You can register manually later: npx cogxai register');
241
+ apiKey = await ask(rl, 'Paste an API key (or Enter to skip): ');
242
+ }
243
+ }
244
+ else {
245
+ (0, banner_1.printSuccess)('Using existing API key');
246
+ agentName = await ask(rl, 'Agent name (for MCP config, Enter to use folder name): ');
247
+ if (!agentName)
248
+ agentName = path.basename(process.cwd());
249
+ wallet = await ask(rl, 'Solana wallet address (Enter to skip): ');
250
+ }
251
+ console.log('');
252
+ // ─── Step 2: Create .env ───────────────────────────────
253
+ (0, banner_1.printStep)(2, 3, 'Configuration');
254
+ const envPath = path.resolve(process.cwd(), '.env');
255
+ let envLines = [
256
+ '# Generated by cogxai setup',
257
+ '',
258
+ '# Cortex API (hosted memory)',
259
+ `CORTEX_API_KEY=${apiKey || 'your-api-key'}`,
260
+ 'CORTEX_HOST_URL=https://cogxai.org',
261
+ '',
262
+ ];
263
+ if (wallet) {
264
+ envLines.push('# Owner wallet');
265
+ envLines.push(`OWNER_WALLET=${wallet}`);
266
+ envLines.push('');
267
+ }
268
+ const envContent = envLines.join('\n');
269
+ if (fs.existsSync(envPath)) {
270
+ const existing = fs.readFileSync(envPath, 'utf-8');
271
+ if (existing.includes('CORTEX_API_KEY')) {
272
+ (0, banner_1.printInfo)('.env already has CORTEX_API_KEY — skipping');
273
+ }
274
+ else {
275
+ // Append to existing .env
276
+ fs.appendFileSync(envPath, '\n' + envContent);
277
+ (0, banner_1.printSuccess)('Appended Cortex config to existing .env');
278
+ }
279
+ }
280
+ else {
281
+ fs.writeFileSync(envPath, envContent, 'utf-8');
282
+ (0, banner_1.printSuccess)('Created .env');
283
+ }
284
+ // Check .gitignore
285
+ const gitignorePath = path.resolve(process.cwd(), '.gitignore');
286
+ if (fs.existsSync(gitignorePath)) {
287
+ const gitignore = fs.readFileSync(gitignorePath, 'utf-8');
288
+ if (!gitignore.includes('.env')) {
289
+ fs.appendFileSync(gitignorePath, '\n.env\n');
290
+ (0, banner_1.printSuccess)('Added .env to .gitignore');
291
+ }
292
+ }
293
+ else {
294
+ fs.writeFileSync(gitignorePath, '.env\nnode_modules/\n', 'utf-8');
295
+ (0, banner_1.printSuccess)('Created .gitignore (with .env)');
296
+ }
297
+ console.log('');
298
+ // ─── Step 3: MCP Install ──────────────────────────────
299
+ (0, banner_1.printStep)(3, 3, 'IDE Integration');
300
+ (0, banner_1.printInfo)('Install the MCP server so your AI IDE can access memories.');
301
+ (0, banner_1.printInfo)('This lets Claude/Cursor remember things between conversations.\n');
302
+ const targets = getMcpTargets();
303
+ const choices = [
304
+ ...targets.map(t => ({ key: t.key, label: t.label })),
305
+ { key: 'all', label: 'All of the above' },
306
+ { key: 'skip', label: 'Skip for now' },
307
+ ];
308
+ const mcpChoice = await askChoice(rl, 'Select (number):', choices);
309
+ console.log('');
310
+ if (mcpChoice !== 'skip') {
311
+ const toInstall = mcpChoice === 'all' ? targets : targets.filter(t => t.key === mcpChoice);
312
+ for (const target of toInstall) {
313
+ const result = installMcpConfig(target, agentName, wallet, apiKey);
314
+ if (result.ok) {
315
+ (0, banner_1.printSuccess)(`Added cogxai-memory to ${target.label}`);
316
+ (0, banner_1.printInfo)(` ${banner_1.c.dim}${target.configPath}${banner_1.c.reset}`);
317
+ }
318
+ else {
319
+ (0, banner_1.printWarn)(`Could not configure ${target.label}: ${result.error}`);
320
+ }
321
+ }
322
+ }
323
+ else {
324
+ (0, banner_1.printInfo)('Skipped — run `npx cogxai mcp-install` anytime to set this up');
325
+ }
326
+ // ─── Done ─────────────────────────────────────────────
327
+ (0, banner_1.printDivider)();
328
+ console.log(`\n ${banner_1.c.bold}${banner_1.c.green}You're all set!${banner_1.c.reset}\n`);
329
+ if (apiKey) {
330
+ (0, banner_1.printSuccess)('API key configured');
331
+ }
332
+ else {
333
+ (0, banner_1.printWarn)('No API key yet — run: npx cogxai register');
334
+ }
335
+ (0, banner_1.printSuccess)('.env created');
336
+ if (mcpChoice !== 'skip') {
337
+ (0, banner_1.printSuccess)('MCP server configured for your IDE');
338
+ }
339
+ console.log(`\n ${banner_1.c.bold}Quick start:${banner_1.c.reset}`);
340
+ (0, banner_1.printCodeBlock)(`const { Cortex } = require('cogxai');\n` +
341
+ `\n` +
342
+ `const brain = new Cortex({\n` +
343
+ ` hosted: { apiKey: process.env.CORTEX_API_KEY },\n` +
344
+ `});\n` +
345
+ `await brain.init();\n` +
346
+ `\n` +
347
+ `// Store a memory\n` +
348
+ `await brain.store({\n` +
349
+ ` type: 'episodic',\n` +
350
+ ` content: 'User asked about pricing.',\n` +
351
+ ` summary: 'Pricing inquiry',\n` +
352
+ ` source: '${agentName || 'my-agent'}',\n` +
353
+ `});\n` +
354
+ `\n` +
355
+ `// Recall memories\n` +
356
+ `const memories = await brain.recall({ query: 'pricing' });\n` +
357
+ `console.log(brain.formatContext(memories));`);
358
+ console.log(` ${banner_1.c.dim}Dashboard:${banner_1.c.reset} ${banner_1.c.cyan}https://cogxai.org/explore${banner_1.c.reset}`);
359
+ console.log(` ${banner_1.c.dim}Docs:${banner_1.c.reset} ${banner_1.c.cyan}https://cogxai.org/docs${banner_1.c.reset}`);
360
+ console.log(` ${banner_1.c.dim}Export:${banner_1.c.reset} ${banner_1.c.cyan}npx cogxai export${banner_1.c.reset}`);
361
+ (0, banner_1.printDivider)();
362
+ console.log('');
363
+ rl.close();
364
+ }
365
+ // ─── Standalone MCP Install ─────────────────────────────────
366
+ async function runMcpInstall() {
367
+ const isLocal = process.argv.includes('--local');
368
+ (0, banner_1.printBanner)();
369
+ console.log(` ${banner_1.c.bold}MCP Server Install${banner_1.c.reset}${isLocal ? ` ${banner_1.c.green}(local mode)${banner_1.c.reset}` : ''}`);
370
+ console.log(` ${banner_1.c.gray}Add CogxAI memory to your AI IDE.${banner_1.c.reset}\n`);
371
+ const rl = createPrompt();
372
+ const targets = getMcpTargets();
373
+ const choices = [
374
+ ...targets.map(t => ({ key: t.key, label: t.label })),
375
+ { key: 'all', label: 'All of the above' },
376
+ ];
377
+ const mcpChoice = await askChoice(rl, 'Select IDE:', choices);
378
+ console.log('');
379
+ const agentName = await ask(rl, 'Agent name (Enter for folder name): ');
380
+ const name = agentName || path.basename(process.cwd());
381
+ console.log('');
382
+ const toInstall = mcpChoice === 'all' ? targets : targets.filter(t => t.key === mcpChoice);
383
+ for (const target of toInstall) {
384
+ const result = installMcpConfig(target, name, '', undefined, isLocal);
385
+ if (result.ok) {
386
+ (0, banner_1.printSuccess)(`Added cogxai-memory to ${target.label}`);
387
+ (0, banner_1.printInfo)(` ${banner_1.c.dim}${target.configPath}${banner_1.c.reset}`);
388
+ }
389
+ else {
390
+ (0, banner_1.printError)(`Could not configure ${target.label}: ${result.error}`);
391
+ }
392
+ }
393
+ console.log('');
394
+ if (isLocal) {
395
+ (0, banner_1.printSuccess)('Local mode: memories stored on-device, fully offline.');
396
+ (0, banner_1.printInfo)('No API keys needed. ~30MB model downloads on first use.');
397
+ }
398
+ (0, banner_1.printInfo)('Restart your IDE to activate the MCP server.');
399
+ (0, banner_1.printDivider)();
400
+ console.log('');
401
+ rl.close();
402
+ }
403
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function runShip(rawMessage: string): Promise<void>;
2
+ //# sourceMappingURL=ship.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ship.d.ts","sourceRoot":"","sources":["../../src/cli/ship.ts"],"names":[],"mappings":"AAEA,wBAAsB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B/D"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runShip = runShip;
4
+ const banner_1 = require("./banner");
5
+ async function runShip(rawMessage) {
6
+ if (!rawMessage || rawMessage.trim().length === 0) {
7
+ (0, banner_1.printError)(`Usage: npx cogxai ship "your message"`);
8
+ process.exit(1);
9
+ }
10
+ // Lazy-load config + telegram client to keep CLI lightweight
11
+ const { config } = require('../config');
12
+ if (!config.telegram.botToken) {
13
+ (0, banner_1.printError)('TELEGRAM_BOT_TOKEN not set. Add it to .env');
14
+ process.exit(1);
15
+ }
16
+ if (!config.telegram.channelId) {
17
+ (0, banner_1.printError)('TELEGRAM_CHANNEL_ID not set. Add it to .env');
18
+ process.exit(1);
19
+ }
20
+ const message = rawMessage.trim();
21
+ console.log(`\n ${banner_1.c.dim}Sending to ${config.telegram.channelId}...${banner_1.c.reset}\n`);
22
+ const { sendChannelMessage } = require('../core/telegram-client');
23
+ try {
24
+ const result = await sendChannelMessage(message, { parseMode: 'HTML', disablePreview: true });
25
+ (0, banner_1.printSuccess)(`Message sent! (ID: ${result.messageId})`);
26
+ }
27
+ catch (err) {
28
+ (0, banner_1.printError)(`Failed: ${err.message}`);
29
+ process.exit(1);
30
+ }
31
+ }
32
+ //# sourceMappingURL=ship.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ship.js","sourceRoot":"","sources":["../../src/cli/ship.ts"],"names":[],"mappings":";;AAEA,0BA8BC;AAhCD,qCAAuD;AAEhD,KAAK,UAAU,OAAO,CAAC,UAAkB;IAC9C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,IAAA,mBAAU,EAAC,uCAAuC,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,6DAA6D;IAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAExC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC9B,IAAA,mBAAU,EAAC,4CAA4C,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAA,mBAAU,EAAC,6CAA6C,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,OAAO,UAAC,CAAC,GAAG,cAAc,MAAM,CAAC,QAAQ,CAAC,SAAS,MAAM,UAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAElF,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAElE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9F,IAAA,qBAAY,EAAC,sBAAsB,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAA,mBAAU,EAAC,WAAY,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}