neuroverse 1.0.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.
- package/LICENSE +19 -0
- package/dist/constants.d.ts +12 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +12 -0
- package/dist/constants.js.map +1 -0
- package/dist/core/intent.d.ts +18 -0
- package/dist/core/intent.d.ts.map +1 -0
- package/dist/core/intent.js +85 -0
- package/dist/core/intent.js.map +1 -0
- package/dist/core/language.d.ts +24 -0
- package/dist/core/language.d.ts.map +1 -0
- package/dist/core/language.js +120 -0
- package/dist/core/language.js.map +1 -0
- package/dist/core/memory.d.ts +29 -0
- package/dist/core/memory.d.ts.map +1 -0
- package/dist/core/memory.js +119 -0
- package/dist/core/memory.js.map +1 -0
- package/dist/core/router.d.ts +22 -0
- package/dist/core/router.d.ts.map +1 -0
- package/dist/core/router.js +118 -0
- package/dist/core/router.js.map +1 -0
- package/dist/core/safety.d.ts +23 -0
- package/dist/core/safety.d.ts.map +1 -0
- package/dist/core/safety.js +147 -0
- package/dist/core/safety.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +355 -0
- package/dist/index.js.map +1 -0
- package/dist/services/agent-router.d.ts +12 -0
- package/dist/services/agent-router.d.ts.map +1 -0
- package/dist/services/agent-router.js +36 -0
- package/dist/services/agent-router.js.map +1 -0
- package/dist/services/executor.d.ts +9 -0
- package/dist/services/executor.d.ts.map +1 -0
- package/dist/services/executor.js +63 -0
- package/dist/services/executor.js.map +1 -0
- package/dist/types.d.ts +85 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +32 -0
- package/dist/types.js.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Executor — maps intents to registered tool functions with retry logic.
|
|
3
|
+
*/
|
|
4
|
+
import { MAX_RETRIES } from "../constants.js";
|
|
5
|
+
const TOOLS = new Map();
|
|
6
|
+
export function registerTool(name, fn) {
|
|
7
|
+
TOOLS.set(name, fn);
|
|
8
|
+
}
|
|
9
|
+
// ─── Built-in demo tools ────────────────────────────────────────────────
|
|
10
|
+
registerTool("convert_format", async (params) => {
|
|
11
|
+
const inputFmt = params["input_format"] ?? "json";
|
|
12
|
+
const outputFmt = params["output_format"] ?? "csv";
|
|
13
|
+
if (inputFmt === "json" && outputFmt === "csv") {
|
|
14
|
+
return 'header1,header2\nvalue1,value2\n(demo conversion — connect real formatter)';
|
|
15
|
+
}
|
|
16
|
+
return `Conversion from ${inputFmt} to ${outputFmt} is not yet implemented.`;
|
|
17
|
+
});
|
|
18
|
+
registerTool("summarize", async (params) => {
|
|
19
|
+
const text = params["text"] ?? "";
|
|
20
|
+
if (!text)
|
|
21
|
+
return "No text provided to summarize.";
|
|
22
|
+
const words = text.split(/\s+/);
|
|
23
|
+
if (words.length <= 30)
|
|
24
|
+
return text;
|
|
25
|
+
return words.slice(0, 30).join(" ") + "…";
|
|
26
|
+
});
|
|
27
|
+
registerTool("generate_report", async (params) => {
|
|
28
|
+
return JSON.stringify({ report: "Sales Report", status: "generated", data: params }, null, 2);
|
|
29
|
+
});
|
|
30
|
+
registerTool("query_data", async (params) => {
|
|
31
|
+
return JSON.stringify({
|
|
32
|
+
query: params["query"] ?? "",
|
|
33
|
+
results: [],
|
|
34
|
+
note: "Demo stub — no real DB connected.",
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
registerTool("explain", async (params) => {
|
|
38
|
+
const topic = params["topic"] ?? "unknown";
|
|
39
|
+
return `Explanation for '${topic}': This is a placeholder. In production, this routes to the LLM.`;
|
|
40
|
+
});
|
|
41
|
+
// ─── Executor ───────────────────────────────────────────────────────────
|
|
42
|
+
export async function executeIntent(intent, safety, extraContext) {
|
|
43
|
+
if (!safety.allowed) {
|
|
44
|
+
return { success: false, output: `Blocked by safety: ${safety.reason}`, tool: intent.intent };
|
|
45
|
+
}
|
|
46
|
+
const toolFn = TOOLS.get(intent.intent);
|
|
47
|
+
if (!toolFn) {
|
|
48
|
+
return { success: false, output: `No tool registered for intent '${intent.intent}'.`, tool: intent.intent };
|
|
49
|
+
}
|
|
50
|
+
const params = { ...intent.parameters, ...(extraContext ?? {}) };
|
|
51
|
+
let lastError = "";
|
|
52
|
+
for (let attempt = 1; attempt <= MAX_RETRIES; attempt++) {
|
|
53
|
+
try {
|
|
54
|
+
const output = await toolFn(params);
|
|
55
|
+
return { success: true, output, tool: intent.intent };
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
lastError = `Attempt ${attempt} failed: ${e instanceof Error ? e.message : String(e)}`;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return { success: false, output: `All ${MAX_RETRIES} retries exhausted. Last error: ${lastError}`, tool: intent.intent };
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=executor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/services/executor.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NeuroVerse — TypeScript type definitions.
|
|
3
|
+
*/
|
|
4
|
+
export declare enum RiskLevel {
|
|
5
|
+
LOW = "low",
|
|
6
|
+
MEDIUM = "medium",
|
|
7
|
+
HIGH = "high",
|
|
8
|
+
CRITICAL = "critical"
|
|
9
|
+
}
|
|
10
|
+
export declare enum MemoryTier {
|
|
11
|
+
SHORT_TERM = "short_term",
|
|
12
|
+
EPISODIC = "episodic",
|
|
13
|
+
SEMANTIC = "semantic"
|
|
14
|
+
}
|
|
15
|
+
export declare enum TaskType {
|
|
16
|
+
MULTILINGUAL = "multilingual",
|
|
17
|
+
REASONING = "reasoning",
|
|
18
|
+
LOCAL = "local",
|
|
19
|
+
GENERAL = "general"
|
|
20
|
+
}
|
|
21
|
+
export declare enum ModelProvider {
|
|
22
|
+
OPENAI = "openai",
|
|
23
|
+
ANTHROPIC = "anthropic",
|
|
24
|
+
OLLAMA = "ollama",
|
|
25
|
+
SARVAM = "sarvam"
|
|
26
|
+
}
|
|
27
|
+
export interface LanguageDetectionResult {
|
|
28
|
+
languages: string[];
|
|
29
|
+
confidence: number;
|
|
30
|
+
isCodeSwitched: boolean;
|
|
31
|
+
originalText: string;
|
|
32
|
+
normalizedText: string;
|
|
33
|
+
}
|
|
34
|
+
export interface ExtractedIntent {
|
|
35
|
+
intent: string;
|
|
36
|
+
parameters: Record<string, string>;
|
|
37
|
+
confidence: number;
|
|
38
|
+
source: "llm" | "rule" | "test";
|
|
39
|
+
}
|
|
40
|
+
export interface MemoryRecord {
|
|
41
|
+
id: string;
|
|
42
|
+
userId: string;
|
|
43
|
+
tier: MemoryTier;
|
|
44
|
+
intent: string;
|
|
45
|
+
language: string;
|
|
46
|
+
data: Record<string, unknown>;
|
|
47
|
+
importanceScore: number;
|
|
48
|
+
createdAt: string;
|
|
49
|
+
updatedAt: string;
|
|
50
|
+
}
|
|
51
|
+
export interface MemoryQuery {
|
|
52
|
+
userId: string;
|
|
53
|
+
intent?: string;
|
|
54
|
+
tier?: MemoryTier;
|
|
55
|
+
limit: number;
|
|
56
|
+
}
|
|
57
|
+
export interface SafetyVerdict {
|
|
58
|
+
allowed: boolean;
|
|
59
|
+
riskLevel: RiskLevel;
|
|
60
|
+
reason: string;
|
|
61
|
+
blockedBy?: string;
|
|
62
|
+
}
|
|
63
|
+
export interface ModelRoutingDecision {
|
|
64
|
+
provider: ModelProvider;
|
|
65
|
+
modelName: string;
|
|
66
|
+
reason: string;
|
|
67
|
+
}
|
|
68
|
+
export interface AgentDefinition {
|
|
69
|
+
agentName: string;
|
|
70
|
+
endpoint: string;
|
|
71
|
+
capabilities: string[];
|
|
72
|
+
}
|
|
73
|
+
export interface AgentRoutingRequest {
|
|
74
|
+
targetAgent: string;
|
|
75
|
+
task: string;
|
|
76
|
+
payload: Record<string, unknown>;
|
|
77
|
+
}
|
|
78
|
+
export interface ExecutionResult {
|
|
79
|
+
success: boolean;
|
|
80
|
+
output: string;
|
|
81
|
+
tool: string;
|
|
82
|
+
}
|
|
83
|
+
/** Callable for LLM inference (prompt → response). */
|
|
84
|
+
export type LLMCall = (prompt: string) => Promise<string>;
|
|
85
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,oBAAY,SAAS;IACnB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,QAAQ,aAAa;CACtB;AAED,oBAAY,UAAU;IACpB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACtB;AAED,oBAAY,QAAQ;IAClB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAED,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAID,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,aAAa,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,sDAAsD;AACtD,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NeuroVerse — TypeScript type definitions.
|
|
3
|
+
*/
|
|
4
|
+
// ─── Enums ──────────────────────────────────────────────────────────────
|
|
5
|
+
export var RiskLevel;
|
|
6
|
+
(function (RiskLevel) {
|
|
7
|
+
RiskLevel["LOW"] = "low";
|
|
8
|
+
RiskLevel["MEDIUM"] = "medium";
|
|
9
|
+
RiskLevel["HIGH"] = "high";
|
|
10
|
+
RiskLevel["CRITICAL"] = "critical";
|
|
11
|
+
})(RiskLevel || (RiskLevel = {}));
|
|
12
|
+
export var MemoryTier;
|
|
13
|
+
(function (MemoryTier) {
|
|
14
|
+
MemoryTier["SHORT_TERM"] = "short_term";
|
|
15
|
+
MemoryTier["EPISODIC"] = "episodic";
|
|
16
|
+
MemoryTier["SEMANTIC"] = "semantic";
|
|
17
|
+
})(MemoryTier || (MemoryTier = {}));
|
|
18
|
+
export var TaskType;
|
|
19
|
+
(function (TaskType) {
|
|
20
|
+
TaskType["MULTILINGUAL"] = "multilingual";
|
|
21
|
+
TaskType["REASONING"] = "reasoning";
|
|
22
|
+
TaskType["LOCAL"] = "local";
|
|
23
|
+
TaskType["GENERAL"] = "general";
|
|
24
|
+
})(TaskType || (TaskType = {}));
|
|
25
|
+
export var ModelProvider;
|
|
26
|
+
(function (ModelProvider) {
|
|
27
|
+
ModelProvider["OPENAI"] = "openai";
|
|
28
|
+
ModelProvider["ANTHROPIC"] = "anthropic";
|
|
29
|
+
ModelProvider["OLLAMA"] = "ollama";
|
|
30
|
+
ModelProvider["SARVAM"] = "sarvam";
|
|
31
|
+
})(ModelProvider || (ModelProvider = {}));
|
|
32
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,2EAA2E;AAE3E,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,8BAAiB,CAAA;IACjB,0BAAa,CAAA;IACb,kCAAqB,CAAA;AACvB,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB;AAED,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;AACvB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAN,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,yCAA6B,CAAA;IAC7B,mCAAuB,CAAA;IACvB,2BAAe,CAAA;IACf,+BAAmB,CAAA;AACrB,CAAC,EALW,QAAQ,KAAR,QAAQ,QAKnB;AAED,MAAM,CAAN,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;AACnB,CAAC,EALW,aAAa,KAAb,aAAa,QAKxB"}
|
package/package.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "neuroverse",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "India-first multilingual intelligence + memory + safety MCP server for autonomous AI agents",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"bin": {
|
|
8
|
+
"neuroverse": "dist/index.js"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"dist",
|
|
12
|
+
"README.md",
|
|
13
|
+
"LICENSE"
|
|
14
|
+
],
|
|
15
|
+
"scripts": {
|
|
16
|
+
"start": "node dist/index.js",
|
|
17
|
+
"dev": "tsx watch src/index.ts",
|
|
18
|
+
"build": "tsc",
|
|
19
|
+
"clean": "rimraf dist",
|
|
20
|
+
"prepublishOnly": "npm run build"
|
|
21
|
+
},
|
|
22
|
+
"keywords": [
|
|
23
|
+
"mcp",
|
|
24
|
+
"multilingual",
|
|
25
|
+
"india",
|
|
26
|
+
"ai-safety",
|
|
27
|
+
"memory",
|
|
28
|
+
"agent",
|
|
29
|
+
"llm",
|
|
30
|
+
"model-context-protocol",
|
|
31
|
+
"autonomous-agents",
|
|
32
|
+
"tamil",
|
|
33
|
+
"hindi",
|
|
34
|
+
"telugu",
|
|
35
|
+
"code-switching",
|
|
36
|
+
"multi-model",
|
|
37
|
+
"neuroverse"
|
|
38
|
+
],
|
|
39
|
+
"author": "Joshua Ragiland M <Joshua@Joshuaragiland.com>",
|
|
40
|
+
"license": "Apache-2.0",
|
|
41
|
+
"homepage": "https://github.com/JoshuaRagilandM/neuroverse",
|
|
42
|
+
"repository": {
|
|
43
|
+
"type": "git",
|
|
44
|
+
"url": "git+https://github.com/JoshuaRagilandM/neuroverse.git"
|
|
45
|
+
},
|
|
46
|
+
"bugs": {
|
|
47
|
+
"url": "https://github.com/JoshuaRagilandM/neuroverse/issues"
|
|
48
|
+
},
|
|
49
|
+
"engines": {
|
|
50
|
+
"node": ">=18"
|
|
51
|
+
},
|
|
52
|
+
"dependencies": {
|
|
53
|
+
"@modelcontextprotocol/sdk": "^1.6.1",
|
|
54
|
+
"axios": "^1.7.9",
|
|
55
|
+
"zod": "^3.23.8"
|
|
56
|
+
},
|
|
57
|
+
"devDependencies": {
|
|
58
|
+
"@types/node": "^22.10.0",
|
|
59
|
+
"rimraf": "^5.0.0",
|
|
60
|
+
"tsx": "^4.19.2",
|
|
61
|
+
"typescript": "^5.7.2"
|
|
62
|
+
}
|
|
63
|
+
}
|