@gotza02/mathinking 3.1.7 → 3.1.9

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 (46) hide show
  1. package/README.md +12 -1
  2. package/dist/schemas/brain.schema.d.ts +16 -0
  3. package/dist/schemas/brain.schema.d.ts.map +1 -1
  4. package/dist/schemas/brain.schema.js +14 -10
  5. package/dist/schemas/brain.schema.js.map +1 -1
  6. package/dist/sse-server.js +2 -1
  7. package/dist/sse-server.js.map +1 -1
  8. package/dist/test-new-features.d.ts +2 -0
  9. package/dist/test-new-features.d.ts.map +1 -0
  10. package/dist/test-new-features.js +62 -0
  11. package/dist/test-new-features.js.map +1 -0
  12. package/dist/tools/orchestrator.d.ts.map +1 -1
  13. package/dist/tools/orchestrator.js +93 -26
  14. package/dist/tools/orchestrator.js.map +1 -1
  15. package/dist/tools/sequential-thinking.d.ts +2 -0
  16. package/dist/tools/sequential-thinking.d.ts.map +1 -1
  17. package/dist/tools/sequential-thinking.js +265 -46
  18. package/dist/tools/sequential-thinking.js.map +1 -1
  19. package/dist/types/index.d.ts +17 -2
  20. package/dist/types/index.d.ts.map +1 -1
  21. package/dist/utils/dag.d.ts.map +1 -1
  22. package/dist/utils/dag.js +4 -7
  23. package/dist/utils/dag.js.map +1 -1
  24. package/dist/utils/fs-helper.d.ts +12 -0
  25. package/dist/utils/fs-helper.d.ts.map +1 -0
  26. package/dist/utils/fs-helper.js +45 -0
  27. package/dist/utils/fs-helper.js.map +1 -0
  28. package/dist/utils/memory.d.ts +2 -2
  29. package/dist/utils/memory.d.ts.map +1 -1
  30. package/dist/utils/memory.js +24 -11
  31. package/dist/utils/memory.js.map +1 -1
  32. package/dist/utils/mutex.d.ts.map +1 -1
  33. package/dist/utils/mutex.js +1 -1
  34. package/dist/utils/mutex.js.map +1 -1
  35. package/dist/utils/resilience.d.ts.map +1 -1
  36. package/dist/utils/resilience.js +5 -8
  37. package/dist/utils/resilience.js.map +1 -1
  38. package/dist/utils/tool-cache.d.ts +2 -2
  39. package/dist/utils/tool-cache.d.ts.map +1 -1
  40. package/dist/utils/tool-cache.js +2 -0
  41. package/dist/utils/tool-cache.js.map +1 -1
  42. package/dist/utils/vector-memory.d.ts +3 -2
  43. package/dist/utils/vector-memory.d.ts.map +1 -1
  44. package/dist/utils/vector-memory.js +34 -23
  45. package/dist/utils/vector-memory.js.map +1 -1
  46. package/package.json +1 -1
@@ -4,10 +4,7 @@ export class ResilienceManager {
4
4
  strategies = [];
5
5
  replanHandler = null;
6
6
  // 🔒 Security: Allowed directory roots for auto-mkdir
7
- ALLOWED_ROOTS = [
8
- process.cwd(),
9
- path.join(os.homedir(), 'tmp', 'mathinking')
10
- ];
7
+ ALLOWED_ROOTS = [process.cwd(), path.join(os.homedir(), 'tmp', 'mathinking')];
11
8
  constructor() {
12
9
  this.registerDefaultStrategies();
13
10
  }
@@ -21,7 +18,7 @@ export class ResilienceManager {
21
18
  // Resolve to absolute path (also normalizes ../ etc)
22
19
  const resolvedPath = path.resolve(expandedPath);
23
20
  // Check if path is within allowed roots
24
- const isAllowed = this.ALLOWED_ROOTS.some(root => {
21
+ const isAllowed = this.ALLOWED_ROOTS.some((root) => {
25
22
  const resolvedRoot = path.resolve(root);
26
23
  return resolvedPath.startsWith(resolvedRoot);
27
24
  });
@@ -66,7 +63,7 @@ export class ResilienceManager {
66
63
  error.message.includes('ENOENT') &&
67
64
  error.message.includes('no such file or directory'));
68
65
  },
69
- getRecoveryAction: async (error, task, manager) => {
66
+ getRecoveryAction: async (_error, task, manager) => {
70
67
  const filePath = (task.toolInput?.file_path || task.toolInput?.path);
71
68
  if (!filePath)
72
69
  return { type: 'retry', description: 'Retry' }; // Should not happen
@@ -87,7 +84,7 @@ export class ResilienceManager {
87
84
  (task.toolInput?.command).includes('npm install') &&
88
85
  (error.message.includes('code 1') || error.message.includes('command failed')));
89
86
  },
90
- getRecoveryAction: async (error, task, _manager) => {
87
+ getRecoveryAction: async (_error, task, _manager) => {
91
88
  const cmd = task.toolInput?.command;
92
89
  if (!cmd.includes('--force') && !cmd.includes('--legacy-peer-deps')) {
93
90
  return {
@@ -104,7 +101,7 @@ export class ResilienceManager {
104
101
  matches: (error) => {
105
102
  return error.message.includes('ETIMEDOUT') || error.message.includes('fetch failed');
106
103
  },
107
- getRecoveryAction: async (error, _task, _manager) => {
104
+ getRecoveryAction: async (_error, _task, _manager) => {
108
105
  // 🔧 Calculate exponential backoff based on retry count
109
106
  // The orchestrator will use this to delay before retrying
110
107
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"resilience.js","sourceRoot":"","sources":["../../src/utils/resilience.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resilience.js","sourceRoot":"","sources":["../../src/utils/resilience.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  export declare class ToolCache {
2
2
  private cache;
3
3
  constructor(maxSize?: number, ttl?: number);
4
- get(toolName: string, input: any): any | undefined;
5
- set(toolName: string, input: any, output: any): void;
4
+ get(toolName: string, input: unknown): any | undefined;
5
+ set(toolName: string, input: unknown, output: unknown): void;
6
6
  private generateKey;
7
7
  }
8
8
  export declare const toolCache: ToolCache;
@@ -1 +1 @@
1
- {"version":3,"file":"tool-cache.d.ts","sourceRoot":"","sources":["../../src/utils/tool-cache.ts"],"names":[],"mappings":"AAGA,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAwB;gBAEzB,OAAO,GAAE,MAAW,EAAE,GAAG,GAAE,MAAsB;IAO7D,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,SAAS;IAKlD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI;IAKpD,OAAO,CAAC,WAAW;CAGpB;AAED,eAAO,MAAM,SAAS,WAAkB,CAAC"}
1
+ {"version":3,"file":"tool-cache.d.ts","sourceRoot":"","sources":["../../src/utils/tool-cache.ts"],"names":[],"mappings":"AAEA,qBAAa,SAAS;IAEpB,OAAO,CAAC,KAAK,CAAwB;gBAEzB,OAAO,GAAE,MAAW,EAAE,GAAG,GAAE,MAAsB;IAQ7D,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,GAAG,GAAG,SAAS;IAKtD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAK5D,OAAO,CAAC,WAAW;CAGpB;AAED,eAAO,MAAM,SAAS,WAAkB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { LRUCache } from 'lru-cache';
2
2
  export class ToolCache {
3
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
4
  cache;
4
5
  constructor(maxSize = 50, ttl = 1000 * 60 * 5) {
5
6
  this.cache = new LRUCache({
@@ -7,6 +8,7 @@ export class ToolCache {
7
8
  ttl: ttl
8
9
  });
9
10
  }
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
12
  get(toolName, input) {
11
13
  const key = this.generateKey(toolName, input);
12
14
  return this.cache.get(key);
@@ -1 +1 @@
1
- {"version":3,"file":"tool-cache.js","sourceRoot":"","sources":["../../src/utils/tool-cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,MAAM,OAAO,SAAS;IACZ,KAAK,CAAwB;IAErC,YAAY,UAAkB,EAAE,EAAE,MAAc,IAAI,GAAG,EAAE,GAAG,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC;YACxB,GAAG,EAAE,OAAO;YACZ,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,KAAU;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,KAAU,EAAE,MAAW;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAEO,WAAW,CAAC,QAAgB,EAAE,KAAU;QAC9C,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IAChD,CAAC;CACF;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"tool-cache.js","sourceRoot":"","sources":["../../src/utils/tool-cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,MAAM,OAAO,SAAS;IACpB,8DAA8D;IACtD,KAAK,CAAwB;IAErC,YAAY,UAAkB,EAAE,EAAE,MAAc,IAAI,GAAG,EAAE,GAAG,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC;YACxB,GAAG,EAAE,OAAO;YACZ,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;IACL,CAAC;IAED,8DAA8D;IAC9D,GAAG,CAAC,QAAgB,EAAE,KAAc;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,KAAc,EAAE,MAAe;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAEO,WAAW,CAAC,QAAgB,EAAE,KAAc;QAClD,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IAChD,CAAC;CACF;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC"}
@@ -4,15 +4,16 @@ export declare class VectorMemoryManager {
4
4
  private entries;
5
5
  private tfidf;
6
6
  private initialized;
7
+ private mutex;
7
8
  constructor();
8
9
  private init;
9
10
  private embed;
10
- add(content: string, metadata?: Record<string, any>): Promise<VectorEntry>;
11
+ add(content: string, metadata?: Record<string, unknown>): Promise<VectorEntry>;
11
12
  search(query: string, limit?: number): Promise<{
12
13
  item: VectorEntry;
13
14
  score: number;
14
15
  }[]>;
15
- private save;
16
+ private saveInternal;
16
17
  }
17
18
  export declare const vectorMemory: VectorMemoryManager;
18
19
  //# sourceMappingURL=vector-memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vector-memory.d.ts","sourceRoot":"","sources":["../../src/utils/vector-memory.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,WAAW,CAAkB;;YAQvB,IAAI;YAoBJ,KAAK;IAUb,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAuB9E,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;YAkCjF,IAAI;CAOnB;AAED,eAAO,MAAM,YAAY,qBAA4B,CAAC"}
1
+ {"version":3,"file":"vector-memory.d.ts","sourceRoot":"","sources":["../../src/utils/vector-memory.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,KAAK,CAAe;;YASd,IAAI;YAmBJ,KAAK;IAKb,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAsBlF,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;YAoCjF,YAAY;CAO3B;AAED,eAAO,MAAM,YAAY,qBAA4B,CAAC"}
@@ -3,66 +3,76 @@ import * as path from 'path';
3
3
  import * as os from 'os';
4
4
  import { v4 as uuidv4 } from 'uuid';
5
5
  import natural from 'natural';
6
+ import { Mutex } from './mutex.js';
6
7
  export class VectorMemoryManager {
7
8
  storagePath;
8
9
  entries = [];
9
10
  tfidf;
10
11
  initialized = false;
12
+ mutex = new Mutex();
11
13
  constructor() {
12
14
  this.storagePath = path.join(os.homedir(), '.mathinking', 'vector_memory.json');
13
15
  this.tfidf = new natural.TfIdf();
14
- this.init();
16
+ // Don't call init() in constructor as it's async.
17
+ // It will be called lazily in methods.
15
18
  }
16
19
  async init() {
20
+ if (this.initialized)
21
+ return;
17
22
  try {
18
23
  const dir = path.dirname(this.storagePath);
19
24
  await fs.mkdir(dir, { recursive: true });
20
25
  const data = await fs.readFile(this.storagePath, 'utf8');
21
26
  this.entries = JSON.parse(data);
22
- this.entries.forEach(entry => {
27
+ this.entries.forEach((entry) => {
23
28
  this.tfidf.addDocument(entry.content);
24
29
  });
25
30
  }
26
- catch (e) {
31
+ catch {
27
32
  this.entries = [];
28
33
  }
29
34
  this.initialized = true;
30
35
  }
31
- async embed(text) {
36
+ async embed(_text) {
37
+ // Placeholder for actual embedding logic
32
38
  return [];
33
39
  }
34
40
  async add(content, metadata = {}) {
35
- if (!this.initialized)
41
+ return await this.mutex.dispatch(async () => {
36
42
  await this.init();
37
- this.tfidf.addDocument(content);
38
- const vector = [];
39
- const entry = {
40
- id: uuidv4(),
41
- content,
42
- vector,
43
- metadata,
44
- createdAt: new Date().toISOString()
45
- };
46
- this.entries.push(entry);
47
- await this.save();
48
- return entry;
43
+ this.tfidf.addDocument(content);
44
+ const vector = []; // Future: await this.embed(content);
45
+ const entry = {
46
+ id: uuidv4(),
47
+ content,
48
+ vector,
49
+ metadata,
50
+ createdAt: new Date().toISOString()
51
+ };
52
+ this.entries.push(entry);
53
+ await this.saveInternal(); // Use internal save without extra lock
54
+ return entry;
55
+ });
49
56
  }
50
57
  async search(query, limit = 5) {
51
- if (!this.initialized)
58
+ // Search is read-only, but we need to ensure init is done.
59
+ // We use a light check or lock if strictly necessary, but usually init check is enough.
60
+ // For safety against concurrent init, we can lock.
61
+ await this.mutex.dispatch(async () => {
52
62
  await this.init();
63
+ });
53
64
  const measures = [];
54
65
  this.tfidf.tfidfs(query, (i, measure) => {
55
66
  measures.push({ index: i, measure });
56
67
  });
57
68
  if (measures.length === 0) {
58
- console.warn(`[VectorMemory] No documents found in TF-IDF index. Entries: ${this.entries.length}`);
69
+ // Quiet warning or strictly log debug
59
70
  }
60
71
  const results = measures
61
72
  .sort((a, b) => b.measure - a.measure)
62
73
  .slice(0, limit)
63
- .map(m => {
74
+ .map((m) => {
64
75
  if (!this.entries[m.index]) {
65
- console.error(`Mismatch! Index ${m.index} not in entries (len: ${this.entries.length})`);
66
76
  return null;
67
77
  }
68
78
  return {
@@ -70,10 +80,11 @@ export class VectorMemoryManager {
70
80
  score: m.measure
71
81
  };
72
82
  })
73
- .filter(r => r !== null);
83
+ .filter((r) => r !== null);
74
84
  return results;
75
85
  }
76
- async save() {
86
+ // Internal save function (caller must hold lock)
87
+ async saveInternal() {
77
88
  try {
78
89
  await fs.writeFile(this.storagePath, JSON.stringify(this.entries), 'utf8');
79
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vector-memory.js","sourceRoot":"","sources":["../../src/utils/vector-memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vector-memory.js","sourceRoot":"","sources":["../../src/utils/vector-memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,OAAO,mBAAmB;IACtB,WAAW,CAAS;IACpB,OAAO,GAAkB,EAAE,CAAC;IAC5B,KAAK,CAAgB;IACrB,WAAW,GAAY,KAAK,CAAC;IAC7B,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;IAE5B;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,oBAAoB,CAAC,CAAC;QAChF,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,mDAAmD;QACnD,uCAAuC;IACzC,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAE7B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEhC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QACpB,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,KAAa;QAC/B,yCAAyC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAe,EAAE,WAAoC,EAAE;QAC/D,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YAC1C,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAElB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEhC,MAAM,MAAM,GAAa,EAAE,CAAC,CAAC,qCAAqC;YAElE,MAAM,KAAK,GAAgB;gBACzB,EAAE,EAAE,MAAM,EAAE;gBACZ,OAAO;gBACP,MAAM;gBACN,QAAQ;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YAEF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,uCAAuC;YAClE,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,QAAgB,CAAC;QAC3C,2DAA2D;QAC3D,wFAAwF;QACxF,mDAAmD;QACnD,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YACjC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAyC,EAAE,CAAC;QAE1D,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;YACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,sCAAsC;QACxC,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ;aACrB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;aACrC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;aACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC3B,KAAK,EAAE,CAAC,CAAC,OAAO;aACjB,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAA2C,CAAC;QAEvE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,iDAAiD;IACzC,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,mBAAmB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gotza02/mathinking",
3
- "version": "3.1.7",
3
+ "version": "3.1.9",
4
4
  "description": "MCP Server with sequential thinking (The Brain) and orchestrator (The Body) capabilities",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",