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,37 @@
1
+ export type InferenceProvider = 'anthropic' | 'venice' | 'auto';
2
+ export interface InferenceConfig {
3
+ /** Primary provider (default: 'auto' — tries Venice first, falls back to Anthropic) */
4
+ primary?: InferenceProvider;
5
+ /** Fallback provider if primary fails */
6
+ fallback?: InferenceProvider;
7
+ /** Venice model override */
8
+ veniceModel?: string;
9
+ /** Anthropic model override */
10
+ anthropicModel?: string;
11
+ }
12
+ export interface GenerateOptions {
13
+ /** User message/prompt */
14
+ userMessage: string;
15
+ /** Additional context to include */
16
+ context?: string;
17
+ /** Feature-specific instructions */
18
+ featureInstruction?: string;
19
+ /** System prompt override */
20
+ systemPrompt?: string;
21
+ /** Max tokens */
22
+ maxTokens?: number;
23
+ /** Force a specific provider */
24
+ provider?: InferenceProvider;
25
+ }
26
+ export declare function configureInference(config: InferenceConfig): void;
27
+ export declare function getInferenceConfig(): InferenceConfig;
28
+ /**
29
+ * Generate a response using the configured inference provider(s).
30
+ * Handles automatic fallback if primary fails.
31
+ */
32
+ export declare function generate(opts: GenerateOptions): Promise<string>;
33
+ /**
34
+ * Quick helper for simple prompts.
35
+ */
36
+ export declare function ask(prompt: string, opts?: Partial<GenerateOptions>): Promise<string>;
37
+ //# sourceMappingURL=inference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inference.d.ts","sourceRoot":"","sources":["../../src/core/inference.ts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEhE,MAAM,WAAW,eAAe;IAC9B,uFAAuF;IACvF,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAE5B,yCAAyC;IACzC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IAEpB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,oCAAoC;IACpC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,6BAA6B;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAOD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAGhE;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAsBrE;AAyED;;GAEG;AACH,wBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAE1F"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.configureInference = configureInference;
4
+ exports.getInferenceConfig = getInferenceConfig;
5
+ exports.generate = generate;
6
+ exports.ask = ask;
7
+ const logger_1 = require("./logger");
8
+ const claude_client_1 = require("./claude-client");
9
+ const venice_client_1 = require("./venice-client");
10
+ const log = (0, logger_1.createChildLogger)('inference');
11
+ let inferenceConfig = {
12
+ primary: 'auto',
13
+ fallback: 'anthropic',
14
+ };
15
+ function configureInference(config) {
16
+ inferenceConfig = { ...inferenceConfig, ...config };
17
+ log.info({ primary: inferenceConfig.primary, fallback: inferenceConfig.fallback }, 'Inference configured');
18
+ }
19
+ function getInferenceConfig() {
20
+ return inferenceConfig;
21
+ }
22
+ /**
23
+ * Generate a response using the configured inference provider(s).
24
+ * Handles automatic fallback if primary fails.
25
+ */
26
+ async function generate(opts) {
27
+ const provider = opts.provider || inferenceConfig.primary || 'auto';
28
+ // Determine which providers to try
29
+ const providers = getProviderOrder(provider);
30
+ let lastError = null;
31
+ for (const p of providers) {
32
+ try {
33
+ const result = await generateWithProvider(p, opts);
34
+ if (result) {
35
+ log.debug({ provider: p }, 'Inference succeeded');
36
+ return result;
37
+ }
38
+ }
39
+ catch (err) {
40
+ lastError = err;
41
+ log.warn({ provider: p, error: err.message }, 'Provider failed, trying next');
42
+ }
43
+ }
44
+ throw lastError || new Error('All inference providers failed');
45
+ }
46
+ function getProviderOrder(provider) {
47
+ if (provider === 'auto') {
48
+ // Prefer Venice (decentralized) if available, fall back to Anthropic
49
+ const providers = [];
50
+ if ((0, venice_client_1.isVeniceEnabled)()) {
51
+ providers.push('venice');
52
+ }
53
+ providers.push('anthropic');
54
+ return providers;
55
+ }
56
+ const providers = [provider];
57
+ if (inferenceConfig.fallback && inferenceConfig.fallback !== provider) {
58
+ providers.push(inferenceConfig.fallback);
59
+ }
60
+ return providers;
61
+ }
62
+ async function generateWithProvider(provider, opts) {
63
+ switch (provider) {
64
+ case 'venice':
65
+ return generateWithVenice(opts);
66
+ case 'anthropic':
67
+ return generateWithAnthropic(opts);
68
+ default:
69
+ throw new Error(`Unknown provider: ${provider}`);
70
+ }
71
+ }
72
+ async function generateWithVenice(opts) {
73
+ if (!(0, venice_client_1.isVeniceEnabled)()) {
74
+ throw new Error('Venice not configured');
75
+ }
76
+ const messages = [];
77
+ // Build system prompt
78
+ let systemPrompt = opts.systemPrompt || 'You are CogxAI, an AI with persistent memory.';
79
+ if (opts.featureInstruction) {
80
+ systemPrompt += `\n\n${opts.featureInstruction}`;
81
+ }
82
+ // Add context if provided
83
+ let userContent = opts.userMessage;
84
+ if (opts.context) {
85
+ userContent = `${opts.context}\n\n---\n\n${opts.userMessage}`;
86
+ }
87
+ messages.push({ role: 'user', content: userContent });
88
+ return (0, venice_client_1.generateVeniceResponse)({
89
+ messages,
90
+ systemPrompt,
91
+ maxTokens: opts.maxTokens,
92
+ model: inferenceConfig.veniceModel,
93
+ });
94
+ }
95
+ async function generateWithAnthropic(opts) {
96
+ // Use existing Claude client
97
+ return (0, claude_client_1.generateResponse)({
98
+ userMessage: opts.userMessage,
99
+ context: opts.context,
100
+ featureInstruction: opts.featureInstruction,
101
+ maxTokens: opts.maxTokens,
102
+ });
103
+ }
104
+ /**
105
+ * Quick helper for simple prompts.
106
+ */
107
+ async function ask(prompt, opts) {
108
+ return generate({ userMessage: prompt, ...opts });
109
+ }
110
+ //# sourceMappingURL=inference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inference.js","sourceRoot":"","sources":["../../src/core/inference.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Input guardrails — detect and block manipulation attempts before processing.
3
+ * Protects against prompt injection, CA spoofing, and identity attacks.
4
+ */
5
+ export interface InputGuardrailResult {
6
+ safe: boolean;
7
+ reason?: string;
8
+ isCASpoofAttempt?: boolean;
9
+ spoofedAddress?: string;
10
+ }
11
+ /**
12
+ * Check incoming message for manipulation attempts.
13
+ * Returns { safe: false } if the message is trying to manipulate the bot.
14
+ */
15
+ export declare function checkInput(text: string): InputGuardrailResult;
16
+ /**
17
+ * Get a response to a CA spoofing attempt.
18
+ * Firm but not aggressive — don't engage with the manipulation.
19
+ */
20
+ export declare function getCASpoofResponse(): string;
21
+ //# sourceMappingURL=input-guardrails.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-guardrails.d.ts","sourceRoot":"","sources":["../../src/core/input-guardrails.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmBH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CA8B7D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ /**
3
+ * Input guardrails — detect and block manipulation attempts before processing.
4
+ * Protects against prompt injection, CA spoofing, and identity attacks.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.checkInput = checkInput;
8
+ exports.getCASpoofResponse = getCASpoofResponse;
9
+ const logger_1 = require("./logger");
10
+ const tokenomics_1 = require("../knowledge/tokenomics");
11
+ const log = (0, logger_1.createChildLogger)('input-guardrails');
12
+ // Solana address pattern
13
+ const SOLANA_ADDRESS_RE = /[1-9A-HJ-NP-Za-km-z]{32,44}/g;
14
+ // Patterns that indicate CA manipulation attempts
15
+ const CA_INJECTION_PATTERNS = [
16
+ /(?:your|the|cogxai'?s?)\s+(?:ca|contract|address|mint)\s+(?:is|was|should be|=)/i,
17
+ /(?:ca|contract|address)\s*[:=]\s*[1-9A-HJ-NP-Za-km-z]{32,44}/i,
18
+ /(?:remember|store|save|update|change|set)\s+(?:the\s+)?(?:ca|contract|address)/i,
19
+ /(?:new|real|actual|correct|official)\s+(?:ca|contract|address)/i,
20
+ /(?:here'?s?|this is)\s+(?:the|your|my)\s+(?:ca|contract|address)/i,
21
+ ];
22
+ /**
23
+ * Check incoming message for manipulation attempts.
24
+ * Returns { safe: false } if the message is trying to manipulate the bot.
25
+ */
26
+ function checkInput(text) {
27
+ const lower = text.toLowerCase();
28
+ // Check for CA manipulation patterns
29
+ for (const pattern of CA_INJECTION_PATTERNS) {
30
+ if (pattern.test(text)) {
31
+ // Extract any addresses in the message
32
+ const addresses = text.match(SOLANA_ADDRESS_RE) || [];
33
+ // If they're providing an address that's NOT the official CA, it's an attack
34
+ const foreignAddresses = addresses.filter(addr => addr !== tokenomics_1.COGXAI_CA);
35
+ if (foreignAddresses.length > 0) {
36
+ log.warn({
37
+ text: text.slice(0, 200),
38
+ spoofedAddress: foreignAddresses[0],
39
+ pattern: pattern.source
40
+ }, 'INPUT GUARDRAIL: CA spoofing attempt detected');
41
+ return {
42
+ safe: false,
43
+ reason: 'ca_spoof_attempt',
44
+ isCASpoofAttempt: true,
45
+ spoofedAddress: foreignAddresses[0],
46
+ };
47
+ }
48
+ }
49
+ }
50
+ return { safe: true };
51
+ }
52
+ /**
53
+ * Get a response to a CA spoofing attempt.
54
+ * Firm but not aggressive — don't engage with the manipulation.
55
+ */
56
+ function getCASpoofResponse() {
57
+ return `Nice try. The only CA I recognize is ${tokenomics_1.COGXAI_CA}. That's hardcoded, not up for debate.`;
58
+ }
59
+ //# sourceMappingURL=input-guardrails.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-guardrails.js","sourceRoot":"","sources":["../../src/core/input-guardrails.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA8BH,gCA8BC;AAMD,gDAEC;AAlED,qCAA6C;AAC7C,wDAAoD;AAEpD,MAAM,GAAG,GAAG,IAAA,0BAAiB,EAAC,kBAAkB,CAAC,CAAC;AAElD,yBAAyB;AACzB,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AAEzD,kDAAkD;AAClD,MAAM,qBAAqB,GAAG;IAC5B,kFAAkF;IAClF,+DAA+D;IAC/D,iFAAiF;IACjF,iEAAiE;IACjE,mEAAmE;CACpE,CAAC;AASF;;;GAGG;AACH,SAAgB,UAAU,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEjC,qCAAqC;IACrC,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,uCAAuC;YACvC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAEtD,6EAA6E;YAC7E,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,sBAAS,CAAC,CAAC;YAEtE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;oBACxB,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC;oBACnC,OAAO,EAAE,OAAO,CAAC,MAAM;iBACxB,EAAE,+CAA+C,CAAC,CAAC;gBAEpD,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,MAAM,EAAE,kBAAkB;oBAC1B,gBAAgB,EAAE,IAAI;oBACtB,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC;iBACpC,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB;IAChC,OAAO,wCAAwC,sBAAS,wCAAwC,CAAC;AACnG,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const logger: any;
2
+ export declare function createChildLogger(name: string): any;
3
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,MAAM,KAIjB,CAAC;AAEH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,OAE7C"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.logger = void 0;
4
+ exports.createChildLogger = createChildLogger;
5
+ // Lazy-load pino — SDK users don't need it installed
6
+ let _logger = null;
7
+ function getLogger() {
8
+ if (!_logger) {
9
+ try {
10
+ const pino = require('pino');
11
+ const logDestination = process.env.MCP_MODE === '1' ? 2 : 1;
12
+ _logger = pino({
13
+ level: process.env.LOG_LEVEL || 'info',
14
+ transport: process.env.NODE_ENV !== 'production'
15
+ ? { target: 'pino/file', options: { destination: logDestination } }
16
+ : undefined,
17
+ });
18
+ }
19
+ catch {
20
+ // pino not installed (SDK mode) — use console fallback
21
+ _logger = {
22
+ info: console.log,
23
+ warn: console.warn,
24
+ error: console.error,
25
+ debug: () => { },
26
+ fatal: console.error,
27
+ child: () => _logger,
28
+ };
29
+ }
30
+ }
31
+ return _logger;
32
+ }
33
+ exports.logger = new Proxy({}, {
34
+ get(_, prop) {
35
+ return getLogger()[prop];
36
+ },
37
+ });
38
+ function createChildLogger(name) {
39
+ return getLogger().child({ module: name });
40
+ }
41
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":";;;AAmCA,8CAEC;AArCD,qDAAqD;AACrD,IAAI,OAAO,GAAQ,IAAI,CAAC;AAExB,SAAS,SAAS;IAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7B,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,OAAO,GAAG,IAAI,CAAC;gBACb,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM;gBACtC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;oBAC9C,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE;oBACnE,CAAC,CAAC,SAAS;aACd,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,uDAAuD;YACvD,OAAO,GAAG;gBACR,IAAI,EAAE,OAAO,CAAC,GAAG;gBACjB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;gBACf,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAEY,QAAA,MAAM,GAAG,IAAI,KAAK,CAAC,EAAS,EAAE;IACzC,GAAG,CAAC,CAAC,EAAE,IAAI;QACT,OAAO,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACF,CAAC,CAAC;AAEH,SAAgB,iBAAiB,CAAC,IAAY;IAC5C,OAAO,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,126 @@
1
+ import type { Memory, MemoryType } from './memory';
2
+ export type EntityType = 'person' | 'project' | 'concept' | 'token' | 'wallet' | 'location' | 'event';
3
+ export interface Entity {
4
+ id: number;
5
+ entity_type: EntityType;
6
+ name: string;
7
+ normalized_name: string;
8
+ aliases: string[];
9
+ description: string | null;
10
+ metadata: Record<string, unknown>;
11
+ mention_count: number;
12
+ first_seen: string;
13
+ last_seen: string;
14
+ embedding: number[] | null;
15
+ }
16
+ export interface EntityMention {
17
+ id: number;
18
+ entity_id: number;
19
+ memory_id: number;
20
+ context: string;
21
+ salience: number;
22
+ created_at: string;
23
+ }
24
+ export interface EntityRelation {
25
+ id: number;
26
+ source_entity_id: number;
27
+ target_entity_id: number;
28
+ relation_type: string;
29
+ strength: number;
30
+ evidence_memory_ids: number[];
31
+ created_at: string;
32
+ }
33
+ /**
34
+ * Find or create an entity by name.
35
+ * Deduplicates by normalized_name.
36
+ */
37
+ export declare function findOrCreateEntity(name: string, entityType: EntityType, opts?: {
38
+ aliases?: string[];
39
+ description?: string;
40
+ metadata?: Record<string, unknown>;
41
+ }): Promise<Entity | null>;
42
+ /**
43
+ * Link an entity to a memory with context and salience.
44
+ */
45
+ export declare function createEntityMention(entityId: number, memoryId: number, context: string, salience?: number): Promise<void>;
46
+ /**
47
+ * Get all memories that mention an entity.
48
+ */
49
+ export declare function getMemoriesByEntity(entityId: number, opts?: {
50
+ limit?: number;
51
+ memoryTypes?: MemoryType[];
52
+ }): Promise<Memory[]>;
53
+ /**
54
+ * Get all entities mentioned in a memory.
55
+ */
56
+ export declare function getEntitiesInMemory(memoryId: number): Promise<Entity[]>;
57
+ /**
58
+ * Find entities that frequently co-occur with a given entity across memories.
59
+ * Uses the get_entity_cooccurrence RPC to find related entities.
60
+ */
61
+ export declare function getEntityCooccurrences(entityId: number, opts?: {
62
+ minCooccurrence?: number;
63
+ maxResults?: number;
64
+ }): Promise<Array<{
65
+ related_entity_id: number;
66
+ cooccurrence_count: number;
67
+ avg_salience: number;
68
+ }>>;
69
+ /**
70
+ * Create or strengthen a relationship between two entities.
71
+ */
72
+ export declare function createEntityRelation(sourceEntityId: number, targetEntityId: number, relationType: string, evidenceMemoryId?: number, strength?: number): Promise<void>;
73
+ /**
74
+ * Simple rule-based entity extraction.
75
+ * For production, replace with NER model or LLM extraction.
76
+ */
77
+ export declare function extractEntitiesFromText(text: string): Array<{
78
+ name: string;
79
+ type: EntityType;
80
+ }>;
81
+ /**
82
+ * Extract and link entities from a memory.
83
+ * Call this after storeMemory().
84
+ */
85
+ export declare function extractAndLinkEntities(memoryId: number, content: string, summary: string, relatedUser?: string): Promise<void>;
86
+ /**
87
+ * Get the full knowledge graph for visualization.
88
+ * Returns nodes (entities + optionally memories) and edges.
89
+ */
90
+ export declare function getKnowledgeGraph(opts?: {
91
+ entityTypes?: EntityType[];
92
+ minMentions?: number;
93
+ includeMemories?: boolean;
94
+ limit?: number;
95
+ }): Promise<{
96
+ nodes: Array<{
97
+ id: string;
98
+ type: string;
99
+ label: string;
100
+ size: number;
101
+ }>;
102
+ edges: Array<{
103
+ source: string;
104
+ target: string;
105
+ type: string;
106
+ weight: number;
107
+ }>;
108
+ }>;
109
+ /**
110
+ * Find entities similar to a query using vector search.
111
+ */
112
+ export declare function findSimilarEntities(query: string, opts?: {
113
+ limit?: number;
114
+ entityTypes?: EntityType[];
115
+ }): Promise<Entity[]>;
116
+ export declare function getGraphStats(): Promise<{
117
+ entityCount: number;
118
+ relationCount: number;
119
+ mentionCount: number;
120
+ topEntities: Array<{
121
+ name: string;
122
+ type: string;
123
+ mentions: number;
124
+ }>;
125
+ }>;
126
+ //# sourceMappingURL=memory-graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-graph.d.ts","sourceRoot":"","sources":["../../src/core/memory-graph.ts"],"names":[],"mappings":"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"}