@aiyou-dev/cli 0.1.0 → 1.0.2
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/README.md +438 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +360 -4
- package/dist/commands/index.js.map +1 -1
- package/dist/config.js +3 -0
- package/dist/config.js.map +1 -1
- package/dist/init/interactive.d.ts +2 -0
- package/dist/init/interactive.d.ts.map +1 -1
- package/dist/init/interactive.js +2 -2
- package/dist/init/interactive.js.map +1 -1
- package/dist/init/opencode-config.d.ts +46 -0
- package/dist/init/opencode-config.d.ts.map +1 -0
- package/dist/init/opencode-config.js +82 -0
- package/dist/init/opencode-config.js.map +1 -0
- package/dist/init/settings-generator.d.ts +21 -10
- package/dist/init/settings-generator.d.ts.map +1 -1
- package/dist/init/settings-generator.js +121 -35
- package/dist/init/settings-generator.js.map +1 -1
- package/dist/init/team-setup.d.ts +43 -0
- package/dist/init/team-setup.d.ts.map +1 -0
- package/dist/init/team-setup.js +237 -0
- package/dist/init/team-setup.js.map +1 -0
- package/dist/mcp/tools/ast-tools.d.ts +6 -0
- package/dist/mcp/tools/ast-tools.d.ts.map +1 -0
- package/dist/mcp/tools/ast-tools.js +101 -0
- package/dist/mcp/tools/ast-tools.js.map +1 -0
- package/dist/mcp/tools/config-tools.js +1 -1
- package/dist/mcp/tools/config-tools.js.map +1 -1
- package/dist/mcp/tools/hooks-tools.d.ts.map +1 -1
- package/dist/mcp/tools/hooks-tools.js +99 -1
- package/dist/mcp/tools/hooks-tools.js.map +1 -1
- package/dist/mcp/tools/index.d.ts +1 -1
- package/dist/mcp/tools/index.d.ts.map +1 -1
- package/dist/mcp/tools/index.js +13 -1
- package/dist/mcp/tools/index.js.map +1 -1
- package/dist/mcp/tools/model-engine-tools.d.ts +3 -0
- package/dist/mcp/tools/model-engine-tools.d.ts.map +1 -0
- package/dist/mcp/tools/model-engine-tools.js +52 -0
- package/dist/mcp/tools/model-engine-tools.js.map +1 -0
- package/dist/mcp/tools/models-tools.d.ts +6 -0
- package/dist/mcp/tools/models-tools.d.ts.map +1 -0
- package/dist/mcp/tools/models-tools.js +162 -0
- package/dist/mcp/tools/models-tools.js.map +1 -0
- package/dist/mcp/tools/proxy-tools.d.ts +6 -0
- package/dist/mcp/tools/proxy-tools.d.ts.map +1 -0
- package/dist/mcp/tools/proxy-tools.js +243 -0
- package/dist/mcp/tools/proxy-tools.js.map +1 -0
- package/dist/mcp/tools/rd-tools.d.ts +6 -0
- package/dist/mcp/tools/rd-tools.d.ts.map +1 -0
- package/dist/mcp/tools/rd-tools.js +205 -0
- package/dist/mcp/tools/rd-tools.js.map +1 -0
- package/dist/mcp/tools/semantic-tools.d.ts +6 -0
- package/dist/mcp/tools/semantic-tools.d.ts.map +1 -0
- package/dist/mcp/tools/semantic-tools.js +129 -0
- package/dist/mcp/tools/semantic-tools.js.map +1 -0
- package/dist/models/index.d.ts +6 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +6 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/launcher.d.ts +15 -0
- package/dist/models/launcher.d.ts.map +1 -0
- package/dist/models/launcher.js +187 -0
- package/dist/models/launcher.js.map +1 -0
- package/dist/models/manager.d.ts +13 -0
- package/dist/models/manager.d.ts.map +1 -0
- package/dist/models/manager.js +247 -0
- package/dist/models/manager.js.map +1 -0
- package/dist/models/minio.d.ts +17 -0
- package/dist/models/minio.d.ts.map +1 -0
- package/dist/models/minio.js +93 -0
- package/dist/models/minio.js.map +1 -0
- package/dist/models/types.d.ts +48 -0
- package/dist/models/types.d.ts.map +1 -0
- package/dist/models/types.js +2 -0
- package/dist/models/types.js.map +1 -0
- package/dist/models/vram.d.ts +9 -0
- package/dist/models/vram.d.ts.map +1 -0
- package/dist/models/vram.js +139 -0
- package/dist/models/vram.js.map +1 -0
- package/dist/napi/proxy.d.ts +214 -0
- package/dist/napi/proxy.d.ts.map +1 -0
- package/dist/napi/proxy.js +39 -0
- package/dist/napi/proxy.js.map +1 -0
- package/dist/production/error-handler.js +1 -1
- package/dist/production/error-handler.js.map +1 -1
- package/dist/types.d.ts +35 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +9 -5
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { startInteractive, stopInteractive, showStatus } from "../../models/manager.js";
|
|
2
|
+
function text(t) {
|
|
3
|
+
return { content: [{ type: "text", text: t }] };
|
|
4
|
+
}
|
|
5
|
+
function json(d) {
|
|
6
|
+
return { content: [{ type: "text", text: JSON.stringify(d, null, 2) }] };
|
|
7
|
+
}
|
|
8
|
+
export const modelEngineTools = [
|
|
9
|
+
{
|
|
10
|
+
name: "models_start",
|
|
11
|
+
description: "Inicia el asistente interactivo para seleccionar work mode y modelos, descargar de MinIO si es necesario, validar VRAM y lanzar llama-server en background",
|
|
12
|
+
inputSchema: { type: "object", properties: {}, required: [] },
|
|
13
|
+
handler: async () => {
|
|
14
|
+
try {
|
|
15
|
+
const result = await startInteractive();
|
|
16
|
+
return json(result);
|
|
17
|
+
}
|
|
18
|
+
catch (err) {
|
|
19
|
+
return text(`Error: ${err instanceof Error ? err.message : String(err)}`);
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: "models_stop",
|
|
25
|
+
description: "Detiene todos los servidores llama-server iniciados por aiyoucli models start",
|
|
26
|
+
inputSchema: { type: "object", properties: {}, required: [] },
|
|
27
|
+
handler: async () => {
|
|
28
|
+
try {
|
|
29
|
+
const result = stopInteractive();
|
|
30
|
+
return json(result);
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
return text(`Error: ${err instanceof Error ? err.message : String(err)}`);
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: "models_status",
|
|
39
|
+
description: "Muestra el estado de los modelos actualmente activos",
|
|
40
|
+
inputSchema: { type: "object", properties: {}, required: [] },
|
|
41
|
+
handler: async () => {
|
|
42
|
+
try {
|
|
43
|
+
const status = showStatus();
|
|
44
|
+
return text(status);
|
|
45
|
+
}
|
|
46
|
+
catch (err) {
|
|
47
|
+
return text(`Error: ${err instanceof Error ? err.message : String(err)}`);
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
];
|
|
52
|
+
//# sourceMappingURL=model-engine-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-engine-tools.js","sourceRoot":"","sources":["../../../src/mcp/tools/model-engine-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAExF,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAClD,CAAC;AACD,SAAS,IAAI,CAAC,CAAU;IACtB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAc;IACzC;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,4JAA4J;QACzK,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7D,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;KACF;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7D,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,sDAAsD;QACnE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7D,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/models-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,gBAAgB,CAAC;AA6D7D,eAAO,MAAM,WAAW,EAAE,OAAO,EAuFhC,CAAC"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Models tools — GGUF model management and Unsloth recommendations.
|
|
3
|
+
*/
|
|
4
|
+
import { existsSync, readdirSync, statSync } from "node:fs";
|
|
5
|
+
import { join } from "node:path";
|
|
6
|
+
function text(t) { return { content: [{ type: "text", text: t }] }; }
|
|
7
|
+
function json(d) { return { content: [{ type: "text", text: JSON.stringify(d, null, 2) }] }; }
|
|
8
|
+
const UNSLOTH_UPGRADES = {
|
|
9
|
+
"llama-3.1-8b": { repo: "unsloth/llama-3.1-8b-Instruct-bnb-4bit", note: "Dynamic v2.0 — 4-bit quantized, faster inference" },
|
|
10
|
+
"llama-3.1-70b": { repo: "unsloth/llama-3.1-70b-Instruct-bnb-4bit", note: "Dynamic v2.0 — 4-bit quantized" },
|
|
11
|
+
"codellama-7b": { repo: "unsloth/codellama-7b-Instruct-bnb-4bit", note: "Dynamic v2.0 — code-specialized" },
|
|
12
|
+
"codellama-13b": { repo: "unsloth/codellama-13b-Instruct-bnb-4bit", note: "Dynamic v2.0 — code-specialized" },
|
|
13
|
+
"mistral-7b": { repo: "unsloth/mistral-7b-Instruct-v0.3-bnb-4bit", note: "Dynamic v2.0" },
|
|
14
|
+
"qwen2.5-7b": { repo: "unsloth/Qwen2.5-7B-Instruct-bnb-4bit", note: "Dynamic v2.0" },
|
|
15
|
+
"qwen2.5-coder-7b": { repo: "unsloth/Qwen2.5-Coder-7B-Instruct-bnb-4bit", note: "Dynamic v2.0 — code-specialized" },
|
|
16
|
+
};
|
|
17
|
+
function detectQuantization(filename) {
|
|
18
|
+
const lower = filename.toLowerCase();
|
|
19
|
+
if (lower.includes("q4_k_m"))
|
|
20
|
+
return "Q4_K_M";
|
|
21
|
+
if (lower.includes("q4_k_s"))
|
|
22
|
+
return "Q4_K_S";
|
|
23
|
+
if (lower.includes("q5_k_m"))
|
|
24
|
+
return "Q5_K_M";
|
|
25
|
+
if (lower.includes("q5_k_s"))
|
|
26
|
+
return "Q5_K_S";
|
|
27
|
+
if (lower.includes("q6_k"))
|
|
28
|
+
return "Q6_K";
|
|
29
|
+
if (lower.includes("q8_0"))
|
|
30
|
+
return "Q8_0";
|
|
31
|
+
if (lower.includes("q2_k"))
|
|
32
|
+
return "Q2_K";
|
|
33
|
+
if (lower.includes("q3_k_s"))
|
|
34
|
+
return "Q3_K_S";
|
|
35
|
+
if (lower.includes("q3_k_m"))
|
|
36
|
+
return "Q3_K_M";
|
|
37
|
+
if (lower.includes("q3_k_l"))
|
|
38
|
+
return "Q3_K_L";
|
|
39
|
+
if (lower.includes("iq4_xxs"))
|
|
40
|
+
return "IQ4_XXS";
|
|
41
|
+
if (lower.includes("iq4_xs"))
|
|
42
|
+
return "IQ4_XS";
|
|
43
|
+
if (lower.includes("iq3_xxs"))
|
|
44
|
+
return "IQ3_XXS";
|
|
45
|
+
if (lower.includes("iq3_xs"))
|
|
46
|
+
return "IQ3_XS";
|
|
47
|
+
if (lower.includes("iq3_s"))
|
|
48
|
+
return "IQ3_S";
|
|
49
|
+
if (lower.includes("iq3_m"))
|
|
50
|
+
return "IQ3_M";
|
|
51
|
+
if (lower.includes("iq2_xxs"))
|
|
52
|
+
return "IQ2_XXS";
|
|
53
|
+
if (lower.includes("iq2_xs"))
|
|
54
|
+
return "IQ2_XS";
|
|
55
|
+
if (lower.includes("iq2_s"))
|
|
56
|
+
return "IQ2_S";
|
|
57
|
+
if (lower.includes("iq2_m"))
|
|
58
|
+
return "IQ2_M";
|
|
59
|
+
if (lower.includes("f16"))
|
|
60
|
+
return "F16";
|
|
61
|
+
if (lower.includes("f32"))
|
|
62
|
+
return "F32";
|
|
63
|
+
return "unknown";
|
|
64
|
+
}
|
|
65
|
+
function extractModelName(filename) {
|
|
66
|
+
return filename
|
|
67
|
+
.replace(/\.gguf$/i, "")
|
|
68
|
+
.replace(/[-_]Q[0-9]+[-_].*$/i, "")
|
|
69
|
+
.replace(/[-_]iq[0-9]+[-_].*$/i, "")
|
|
70
|
+
.replace(/[-_]f(16|32)$/i, "")
|
|
71
|
+
.replace(/[-_]gguf$/i, "");
|
|
72
|
+
}
|
|
73
|
+
function findUnslothUpgrade(modelName) {
|
|
74
|
+
const lower = modelName.toLowerCase();
|
|
75
|
+
for (const [key, upgrade] of Object.entries(UNSLOTH_UPGRADES)) {
|
|
76
|
+
if (lower.includes(key))
|
|
77
|
+
return upgrade;
|
|
78
|
+
}
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
export const modelsTools = [
|
|
82
|
+
{
|
|
83
|
+
name: "models_list",
|
|
84
|
+
description: "Scan a directory for GGUF models and show Unsloth Dynamic v2.0 upgrade recommendations",
|
|
85
|
+
inputSchema: {
|
|
86
|
+
type: "object",
|
|
87
|
+
properties: {
|
|
88
|
+
path: { type: "string", description: "Directory to scan (default: .aiyoucli/models/)" },
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
handler: async (input) => {
|
|
92
|
+
const cwd = process.cwd();
|
|
93
|
+
const scanPath = input.path || join(cwd, ".aiyoucli", "models");
|
|
94
|
+
if (!existsSync(scanPath)) {
|
|
95
|
+
return json({
|
|
96
|
+
scanned_path: scanPath,
|
|
97
|
+
exists: false,
|
|
98
|
+
message: `Directory not found: ${scanPath}`,
|
|
99
|
+
models: [],
|
|
100
|
+
total_models: 0,
|
|
101
|
+
total_size_gb: 0,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
const files = readdirSync(scanPath).filter((f) => f.endsWith(".gguf"));
|
|
105
|
+
const models = files.map((file) => {
|
|
106
|
+
const fullPath = join(scanPath, file);
|
|
107
|
+
const sizeBytes = statSync(fullPath).size;
|
|
108
|
+
const sizeGb = sizeBytes / (1024 * 1024 * 1024);
|
|
109
|
+
const quantization = detectQuantization(file);
|
|
110
|
+
const modelName = extractModelName(file);
|
|
111
|
+
const unslothUpgrade = findUnslothUpgrade(modelName);
|
|
112
|
+
return {
|
|
113
|
+
file,
|
|
114
|
+
model_name: modelName,
|
|
115
|
+
quantization,
|
|
116
|
+
size_gb: Math.round(sizeGb * 100) / 100,
|
|
117
|
+
size_bytes: sizeBytes,
|
|
118
|
+
unsloth_upgrade: unslothUpgrade,
|
|
119
|
+
};
|
|
120
|
+
});
|
|
121
|
+
const totalSize = models.reduce((sum, m) => sum + m.size_bytes, 0);
|
|
122
|
+
return json({
|
|
123
|
+
scanned_path: scanPath,
|
|
124
|
+
exists: true,
|
|
125
|
+
models,
|
|
126
|
+
total_models: models.length,
|
|
127
|
+
total_size_gb: Math.round((totalSize / (1024 * 1024 * 1024)) * 100) / 100,
|
|
128
|
+
});
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
name: "models_optimize",
|
|
133
|
+
description: "Get Unsloth Dynamic v2.0 upgrade recommendation for a model",
|
|
134
|
+
inputSchema: {
|
|
135
|
+
type: "object",
|
|
136
|
+
properties: {
|
|
137
|
+
model: { type: "string", description: "Model name (e.g. llama-3.1-8b)" },
|
|
138
|
+
},
|
|
139
|
+
required: ["model"],
|
|
140
|
+
},
|
|
141
|
+
handler: async (input) => {
|
|
142
|
+
const model = input.model.toLowerCase();
|
|
143
|
+
const upgrade = findUnslothUpgrade(model);
|
|
144
|
+
if (upgrade) {
|
|
145
|
+
return json({
|
|
146
|
+
model,
|
|
147
|
+
available: true,
|
|
148
|
+
repo: upgrade.repo,
|
|
149
|
+
note: upgrade.note,
|
|
150
|
+
install: `huggingface-cli download ${upgrade.repo}`,
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
return json({
|
|
154
|
+
model,
|
|
155
|
+
available: false,
|
|
156
|
+
message: "No Unsloth Dynamic v2.0 known for this model",
|
|
157
|
+
known_models: Object.keys(UNSLOTH_UPGRADES),
|
|
158
|
+
});
|
|
159
|
+
},
|
|
160
|
+
},
|
|
161
|
+
];
|
|
162
|
+
//# sourceMappingURL=models-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models-tools.js","sourceRoot":"","sources":["../../../src/mcp/tools/models-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/proxy-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,gBAAgB,CAAC;AAyB7D,eAAO,MAAM,UAAU,EAAE,OAAO,EA0M/B,CAAC"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Proxy tools — gateway, compression, shield, embedding via aiyoucli-proxy NAPI.
|
|
3
|
+
*/
|
|
4
|
+
function text(t) { return { content: [{ type: "text", text: t }] }; }
|
|
5
|
+
function json(d) { return { content: [{ type: "text", text: JSON.stringify(d, null, 2) }] }; }
|
|
6
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
7
|
+
let proxyEngine = null;
|
|
8
|
+
function getProxyEngine() {
|
|
9
|
+
if (!proxyEngine) {
|
|
10
|
+
try {
|
|
11
|
+
proxyEngine = createProxyEngine();
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return proxyEngine;
|
|
18
|
+
}
|
|
19
|
+
function createProxyEngine() {
|
|
20
|
+
// Lazy-load NAPI proxy bindings
|
|
21
|
+
const mod = require("../../napi/proxy.js");
|
|
22
|
+
return mod.getProxyEngine?.() ?? null;
|
|
23
|
+
}
|
|
24
|
+
export const proxyTools = [
|
|
25
|
+
{
|
|
26
|
+
name: "proxy_health",
|
|
27
|
+
description: "Check aiyoucli-proxy engine health status",
|
|
28
|
+
inputSchema: { type: "object", properties: {} },
|
|
29
|
+
handler: async () => {
|
|
30
|
+
const engine = getProxyEngine();
|
|
31
|
+
if (!engine)
|
|
32
|
+
return text("aiyoucli-proxy not available");
|
|
33
|
+
try {
|
|
34
|
+
const health = engine.health();
|
|
35
|
+
return json(health);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return text("aiyoucli-proxy health check failed");
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: "proxy_chat",
|
|
44
|
+
description: "Send a chat completion request through the proxy gateway",
|
|
45
|
+
inputSchema: {
|
|
46
|
+
type: "object",
|
|
47
|
+
properties: {
|
|
48
|
+
messages: { type: "array", description: "Chat messages [{role, content}]" },
|
|
49
|
+
model: { type: "string", description: "Model override" },
|
|
50
|
+
max_tokens: { type: "number", description: "Max tokens" },
|
|
51
|
+
},
|
|
52
|
+
required: ["messages"],
|
|
53
|
+
},
|
|
54
|
+
handler: async (input) => {
|
|
55
|
+
const engine = getProxyEngine();
|
|
56
|
+
if (!engine)
|
|
57
|
+
return text("aiyoucli-proxy not available");
|
|
58
|
+
try {
|
|
59
|
+
const result = engine.chat({
|
|
60
|
+
messages: input.messages,
|
|
61
|
+
model: input.model,
|
|
62
|
+
maxTokens: input.max_tokens,
|
|
63
|
+
});
|
|
64
|
+
return json(result);
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
return text(`Proxy chat error: ${err instanceof Error ? err.message : String(err)}`);
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "proxy_compress",
|
|
73
|
+
description: "Compress text using the proxy compression engine",
|
|
74
|
+
inputSchema: {
|
|
75
|
+
type: "object",
|
|
76
|
+
properties: {
|
|
77
|
+
text: { type: "string", description: "Text to compress" },
|
|
78
|
+
target_ratio: { type: "number", description: "Target compression ratio (0.0-1.0)" },
|
|
79
|
+
},
|
|
80
|
+
required: ["text"],
|
|
81
|
+
},
|
|
82
|
+
handler: async (input) => {
|
|
83
|
+
const engine = getProxyEngine();
|
|
84
|
+
if (!engine)
|
|
85
|
+
return text("aiyoucli-proxy not available");
|
|
86
|
+
try {
|
|
87
|
+
const result = engine.compress(input.text, input.target_ratio);
|
|
88
|
+
return json(result);
|
|
89
|
+
}
|
|
90
|
+
catch (err) {
|
|
91
|
+
return text(`Proxy compress error: ${err instanceof Error ? err.message : String(err)}`);
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: "proxy_shield_check",
|
|
97
|
+
description: "Check content through the security shield",
|
|
98
|
+
inputSchema: {
|
|
99
|
+
type: "object",
|
|
100
|
+
properties: {
|
|
101
|
+
content: { type: "string", description: "Content to scan" },
|
|
102
|
+
},
|
|
103
|
+
required: ["content"],
|
|
104
|
+
},
|
|
105
|
+
handler: async (input) => {
|
|
106
|
+
const engine = getProxyEngine();
|
|
107
|
+
if (!engine)
|
|
108
|
+
return text("aiyoucli-proxy not available");
|
|
109
|
+
try {
|
|
110
|
+
const result = engine.shieldCheck(input.content);
|
|
111
|
+
return json(result);
|
|
112
|
+
}
|
|
113
|
+
catch (err) {
|
|
114
|
+
return text(`Proxy shield error: ${err instanceof Error ? err.message : String(err)}`);
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: "proxy_embed",
|
|
120
|
+
description: "Get embedding vector from the local ONNX server",
|
|
121
|
+
inputSchema: {
|
|
122
|
+
type: "object",
|
|
123
|
+
properties: {
|
|
124
|
+
text: { type: "string", description: "Text to embed" },
|
|
125
|
+
},
|
|
126
|
+
required: ["text"],
|
|
127
|
+
},
|
|
128
|
+
handler: async (input) => {
|
|
129
|
+
const engine = getProxyEngine();
|
|
130
|
+
if (!engine)
|
|
131
|
+
return text("aiyoucli-proxy not available (embedding server may not be running)");
|
|
132
|
+
try {
|
|
133
|
+
const result = engine.embed(input.text);
|
|
134
|
+
return json(result);
|
|
135
|
+
}
|
|
136
|
+
catch (err) {
|
|
137
|
+
return text(`Proxy embed error: ${err instanceof Error ? err.message : String(err)}`);
|
|
138
|
+
}
|
|
139
|
+
},
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
name: "proxy_cache_stats",
|
|
143
|
+
description: "Get proxy cache statistics",
|
|
144
|
+
inputSchema: { type: "object", properties: {} },
|
|
145
|
+
handler: async () => {
|
|
146
|
+
const engine = getProxyEngine();
|
|
147
|
+
if (!engine)
|
|
148
|
+
return text("aiyoucli-proxy not available");
|
|
149
|
+
try {
|
|
150
|
+
return json(engine.cacheStats());
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
return text("Failed to get cache stats");
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
name: "proxy_list_models",
|
|
159
|
+
description: "List available models through the proxy gateway",
|
|
160
|
+
inputSchema: { type: "object", properties: {} },
|
|
161
|
+
handler: async () => {
|
|
162
|
+
const engine = getProxyEngine();
|
|
163
|
+
if (!engine)
|
|
164
|
+
return text("aiyoucli-proxy not available");
|
|
165
|
+
try {
|
|
166
|
+
return json(engine.listModels());
|
|
167
|
+
}
|
|
168
|
+
catch {
|
|
169
|
+
return text("Failed to list models");
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
name: "proxy_estimate_cost",
|
|
175
|
+
description: "Estimate token cost for a request",
|
|
176
|
+
inputSchema: {
|
|
177
|
+
type: "object",
|
|
178
|
+
properties: {
|
|
179
|
+
model: { type: "string", description: "Model name" },
|
|
180
|
+
input_tokens: { type: "number", description: "Input token count" },
|
|
181
|
+
output_tokens: { type: "number", description: "Output token count" },
|
|
182
|
+
},
|
|
183
|
+
required: ["model", "input_tokens", "output_tokens"],
|
|
184
|
+
},
|
|
185
|
+
handler: async (input) => {
|
|
186
|
+
const engine = getProxyEngine();
|
|
187
|
+
if (!engine)
|
|
188
|
+
return text("aiyoucli-proxy not available");
|
|
189
|
+
try {
|
|
190
|
+
return json(engine.estimateCost(input.model, input.input_tokens, input.output_tokens));
|
|
191
|
+
}
|
|
192
|
+
catch (err) {
|
|
193
|
+
return text(`Estimate cost error: ${err instanceof Error ? err.message : String(err)}`);
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
},
|
|
197
|
+
{
|
|
198
|
+
name: "proxy_analyze_text",
|
|
199
|
+
description: "Analyze text for structure, sentiment, and key topics",
|
|
200
|
+
inputSchema: {
|
|
201
|
+
type: "object",
|
|
202
|
+
properties: {
|
|
203
|
+
text: { type: "string", description: "Text to analyze" },
|
|
204
|
+
},
|
|
205
|
+
required: ["text"],
|
|
206
|
+
},
|
|
207
|
+
handler: async (input) => {
|
|
208
|
+
const engine = getProxyEngine();
|
|
209
|
+
if (!engine)
|
|
210
|
+
return text("aiyoucli-proxy not available");
|
|
211
|
+
try {
|
|
212
|
+
return json(engine.analyzeText(input.text));
|
|
213
|
+
}
|
|
214
|
+
catch (err) {
|
|
215
|
+
return text(`Analyze error: ${err instanceof Error ? err.message : String(err)}`);
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
name: "proxy_segment",
|
|
221
|
+
description: "Segment text into logical chunks for processing",
|
|
222
|
+
inputSchema: {
|
|
223
|
+
type: "object",
|
|
224
|
+
properties: {
|
|
225
|
+
text: { type: "string", description: "Text to segment" },
|
|
226
|
+
max_chunk_size: { type: "number", description: "Max chunk size in tokens" },
|
|
227
|
+
},
|
|
228
|
+
required: ["text"],
|
|
229
|
+
},
|
|
230
|
+
handler: async (input) => {
|
|
231
|
+
const engine = getProxyEngine();
|
|
232
|
+
if (!engine)
|
|
233
|
+
return text("aiyoucli-proxy not available");
|
|
234
|
+
try {
|
|
235
|
+
return json(engine.segment(input.text, input.max_chunk_size));
|
|
236
|
+
}
|
|
237
|
+
catch (err) {
|
|
238
|
+
return text(`Segment error: ${err instanceof Error ? err.message : String(err)}`);
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
},
|
|
242
|
+
];
|
|
243
|
+
//# sourceMappingURL=proxy-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy-tools.js","sourceRoot":"","sources":["../../../src/mcp/tools/proxy-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rd-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/rd-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,gBAAgB,CAAC;AAoB7D,eAAO,MAAM,OAAO,EAAE,OAAO,EAwK5B,CAAC"}
|