openmcp-sdk 0.0.1
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 +95 -0
- package/icons/openmcp.png +0 -0
- package/package.json +38 -0
- package/service/common/index.d.ts +5 -0
- package/service/common/index.d.ts.map +1 -0
- package/service/common/index.dto.d.ts +24 -0
- package/service/common/index.dto.d.ts.map +1 -0
- package/service/common/index.dto.js +2 -0
- package/service/common/index.js +17 -0
- package/service/common/router.d.ts +10 -0
- package/service/common/router.d.ts.map +1 -0
- package/service/common/router.js +54 -0
- package/service/hook/adapter.d.ts +67 -0
- package/service/hook/adapter.d.ts.map +1 -0
- package/service/hook/adapter.js +123 -0
- package/service/hook/db.d.ts +46 -0
- package/service/hook/db.d.ts.map +1 -0
- package/service/hook/db.js +179 -0
- package/service/hook/llm.d.ts +13 -0
- package/service/hook/llm.d.ts.map +1 -0
- package/service/hook/llm.js +89 -0
- package/service/hook/setting.d.ts +5 -0
- package/service/hook/setting.d.ts.map +1 -0
- package/service/hook/setting.js +13 -0
- package/service/hook/types.d.ts +90 -0
- package/service/hook/types.d.ts.map +1 -0
- package/service/hook/types.js +2 -0
- package/service/index.d.ts +5 -0
- package/service/index.d.ts.map +1 -0
- package/service/index.js +14 -0
- package/service/llm/llm.controller.d.ts +10 -0
- package/service/llm/llm.controller.d.ts.map +1 -0
- package/service/llm/llm.controller.js +61 -0
- package/service/llm/llm.dto.d.ts +8 -0
- package/service/llm/llm.dto.d.ts.map +1 -0
- package/service/llm/llm.dto.js +2 -0
- package/service/llm/llm.service.d.ts +8 -0
- package/service/llm/llm.service.d.ts.map +1 -0
- package/service/llm/llm.service.js +176 -0
- package/service/mcp/client.controller.d.ts +791 -0
- package/service/mcp/client.controller.d.ts.map +1 -0
- package/service/mcp/client.controller.js +177 -0
- package/service/mcp/client.dto.d.ts +42 -0
- package/service/mcp/client.dto.d.ts.map +1 -0
- package/service/mcp/client.dto.js +2 -0
- package/service/mcp/client.service.d.ts +763 -0
- package/service/mcp/client.service.d.ts.map +1 -0
- package/service/mcp/client.service.js +186 -0
- package/service/mcp/connect.controller.d.ts +17 -0
- package/service/mcp/connect.controller.d.ts.map +1 -0
- package/service/mcp/connect.controller.js +63 -0
- package/service/mcp/connect.service.d.ts +7 -0
- package/service/mcp/connect.service.d.ts.map +1 -0
- package/service/mcp/connect.service.js +76 -0
- package/service/mcp/ocr.controller.d.ts +18 -0
- package/service/mcp/ocr.controller.d.ts.map +1 -0
- package/service/mcp/ocr.controller.js +57 -0
- package/service/mcp/ocr.dto.d.ts +8 -0
- package/service/mcp/ocr.dto.d.ts.map +1 -0
- package/service/mcp/ocr.dto.js +2 -0
- package/service/mcp/ocr.service.d.ts +9 -0
- package/service/mcp/ocr.service.d.ts.map +1 -0
- package/service/mcp/ocr.service.js +143 -0
- package/service/panel/panel.controller.d.ts +32 -0
- package/service/panel/panel.controller.d.ts.map +1 -0
- package/service/panel/panel.controller.js +118 -0
- package/service/panel/panel.dto.d.ts +12 -0
- package/service/panel/panel.dto.d.ts.map +1 -0
- package/service/panel/panel.dto.js +2 -0
- package/service/panel/panel.service.d.ts +6 -0
- package/service/panel/panel.service.d.ts.map +1 -0
- package/service/panel/panel.service.js +95 -0
- package/service/setting/setting.controller.d.ts +23 -0
- package/service/setting/setting.controller.d.ts.map +1 -0
- package/service/setting/setting.controller.js +77 -0
- package/service/setting/setting.dto.d.ts +5 -0
- package/service/setting/setting.dto.d.ts.map +1 -0
- package/service/setting/setting.dto.js +2 -0
- package/service/setting/setting.service.d.ts +8 -0
- package/service/setting/setting.service.d.ts.map +1 -0
- package/service/setting/setting.service.js +121 -0
- package/task-loop.d.ts +105 -0
- package/task-loop.js +10985 -0
- package/task-loop.js.map +1 -0
- package/tools.js +8 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"client.service.d.ts","sourceRoot":"","sources":["../../src/mcp/client.service.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,186 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
12
|
+
var t = {};
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
14
|
+
t[p] = s[p];
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
18
|
+
t[p[i]] = s[p[i]];
|
19
|
+
}
|
20
|
+
return t;
|
21
|
+
};
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
23
|
+
exports.McpClient = void 0;
|
24
|
+
exports.connect = connect;
|
25
|
+
exports.postProcessMcpToolcallResponse = postProcessMcpToolcallResponse;
|
26
|
+
const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
|
27
|
+
const stdio_js_1 = require("@modelcontextprotocol/sdk/client/stdio.js");
|
28
|
+
const sse_js_1 = require("@modelcontextprotocol/sdk/client/sse.js");
|
29
|
+
const ocr_service_1 = require("./ocr.service");
|
30
|
+
// 增强的客户端类
|
31
|
+
class McpClient {
|
32
|
+
constructor(options) {
|
33
|
+
this.options = options;
|
34
|
+
this.serverVersion = undefined;
|
35
|
+
this.client = new index_js_1.Client({
|
36
|
+
name: "openmcp test local client",
|
37
|
+
version: "0.0.1"
|
38
|
+
}, {
|
39
|
+
capabilities: {
|
40
|
+
prompts: {},
|
41
|
+
resources: {},
|
42
|
+
tools: {}
|
43
|
+
}
|
44
|
+
});
|
45
|
+
}
|
46
|
+
// 连接方法
|
47
|
+
connect() {
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
49
|
+
// 根据连接类型创建传输层
|
50
|
+
switch (this.options.connectionType) {
|
51
|
+
case 'STDIO':
|
52
|
+
this.transport = new stdio_js_1.StdioClientTransport({
|
53
|
+
command: this.options.command || '',
|
54
|
+
args: this.options.args || [],
|
55
|
+
cwd: this.options.cwd || process.cwd(),
|
56
|
+
stderr: 'pipe',
|
57
|
+
env: this.options.env,
|
58
|
+
});
|
59
|
+
break;
|
60
|
+
case 'SSE':
|
61
|
+
if (!this.options.url) {
|
62
|
+
throw new Error('URL is required for SSE connection');
|
63
|
+
}
|
64
|
+
this.transport = new sse_js_1.SSEClientTransport(new URL(this.options.url));
|
65
|
+
break;
|
66
|
+
default:
|
67
|
+
throw new Error(`Unsupported connection type: ${this.options.connectionType}`);
|
68
|
+
}
|
69
|
+
// 建立连接
|
70
|
+
if (this.transport) {
|
71
|
+
yield this.client.connect(this.transport);
|
72
|
+
console.log(`Connected to MCP server via ${this.options.connectionType}`);
|
73
|
+
}
|
74
|
+
});
|
75
|
+
}
|
76
|
+
getServerVersion() {
|
77
|
+
if (this.serverVersion) {
|
78
|
+
return this.serverVersion;
|
79
|
+
}
|
80
|
+
const version = this.client.getServerVersion();
|
81
|
+
this.serverVersion = version;
|
82
|
+
return version;
|
83
|
+
}
|
84
|
+
// 断开连接
|
85
|
+
disconnect() {
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
87
|
+
yield this.client.close();
|
88
|
+
console.log('Disconnected from MCP server');
|
89
|
+
});
|
90
|
+
}
|
91
|
+
// 列出提示
|
92
|
+
listPrompts() {
|
93
|
+
return __awaiter(this, void 0, void 0, function* () {
|
94
|
+
return yield this.client.listPrompts();
|
95
|
+
});
|
96
|
+
}
|
97
|
+
// 获取提示
|
98
|
+
getPrompt(name_1) {
|
99
|
+
return __awaiter(this, arguments, void 0, function* (name, args = {}) {
|
100
|
+
return yield this.client.getPrompt({
|
101
|
+
name, arguments: args
|
102
|
+
});
|
103
|
+
});
|
104
|
+
}
|
105
|
+
// 列出资源
|
106
|
+
listResources() {
|
107
|
+
return __awaiter(this, void 0, void 0, function* () {
|
108
|
+
return yield this.client.listResources();
|
109
|
+
});
|
110
|
+
}
|
111
|
+
// 列出所有模板资源
|
112
|
+
listResourceTemplates() {
|
113
|
+
return __awaiter(this, void 0, void 0, function* () {
|
114
|
+
return yield this.client.listResourceTemplates();
|
115
|
+
});
|
116
|
+
}
|
117
|
+
// 读取资源
|
118
|
+
readResource(uri) {
|
119
|
+
return __awaiter(this, void 0, void 0, function* () {
|
120
|
+
return yield this.client.readResource({
|
121
|
+
uri
|
122
|
+
});
|
123
|
+
});
|
124
|
+
}
|
125
|
+
// 列出所有工具
|
126
|
+
listTools() {
|
127
|
+
return __awaiter(this, void 0, void 0, function* () {
|
128
|
+
return yield this.client.listTools();
|
129
|
+
});
|
130
|
+
}
|
131
|
+
// 调用工具
|
132
|
+
callTool(options) {
|
133
|
+
return __awaiter(this, void 0, void 0, function* () {
|
134
|
+
const { callToolOption } = options, methodArgs = __rest(options, ["callToolOption"]);
|
135
|
+
console.log('callToolOption', callToolOption);
|
136
|
+
return yield this.client.callTool(methodArgs, undefined, callToolOption);
|
137
|
+
});
|
138
|
+
}
|
139
|
+
}
|
140
|
+
exports.McpClient = McpClient;
|
141
|
+
// Connect 函数实现
|
142
|
+
function connect(options) {
|
143
|
+
return __awaiter(this, void 0, void 0, function* () {
|
144
|
+
const client = new McpClient(options);
|
145
|
+
yield client.connect();
|
146
|
+
return client;
|
147
|
+
});
|
148
|
+
}
|
149
|
+
function handleImage(content, webview) {
|
150
|
+
return __awaiter(this, void 0, void 0, function* () {
|
151
|
+
if (content.data && content.mimeType) {
|
152
|
+
const filename = (0, ocr_service_1.saveBase64ImageData)(content.data, content.mimeType);
|
153
|
+
content.data = filename;
|
154
|
+
// 加入工作线程
|
155
|
+
const worker = (0, ocr_service_1.createOcrWorker)(filename, webview);
|
156
|
+
content._meta = {
|
157
|
+
ocr: true,
|
158
|
+
workerId: worker.id
|
159
|
+
};
|
160
|
+
}
|
161
|
+
});
|
162
|
+
}
|
163
|
+
/**
|
164
|
+
* @description 对 mcp server 返回的结果进行预处理
|
165
|
+
* 对于特殊结果构造工作线程解析成文本或者其他格式的数据(比如 image url)
|
166
|
+
* 0.x.x 受限于技术,暂时将所有结果转化成文本
|
167
|
+
* @param response
|
168
|
+
* @returns
|
169
|
+
*/
|
170
|
+
function postProcessMcpToolcallResponse(response, webview) {
|
171
|
+
if (response.isError) {
|
172
|
+
// 如果是错误响应,将其转换为错误信息
|
173
|
+
return response;
|
174
|
+
}
|
175
|
+
// 将 content 中的图像 base64 提取出来,并保存到本地
|
176
|
+
for (const content of response.content || []) {
|
177
|
+
switch (content.type) {
|
178
|
+
case 'image':
|
179
|
+
handleImage(content, webview);
|
180
|
+
break;
|
181
|
+
default:
|
182
|
+
break;
|
183
|
+
}
|
184
|
+
}
|
185
|
+
return response;
|
186
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { RequestClientType } from '../common';
|
2
|
+
import { PostMessageble } from '../hook/adapter';
|
3
|
+
export declare class ConnectController {
|
4
|
+
connect(client: RequestClientType, data: any, webview: PostMessageble): Promise<import("../common/index.dto").RestfulResponse>;
|
5
|
+
lookupEnvVar(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
|
6
|
+
code: number;
|
7
|
+
msg: any;
|
8
|
+
}>;
|
9
|
+
ping(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
|
10
|
+
code: number;
|
11
|
+
msg: string;
|
12
|
+
} | {
|
13
|
+
code: number;
|
14
|
+
msg: {};
|
15
|
+
}>;
|
16
|
+
}
|
17
|
+
//# sourceMappingURL=connect.controller.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"connect.controller.d.ts","sourceRoot":"","sources":["../../src/mcp/connect.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,qBAAa,iBAAiB;IAGpB,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;IAMrE,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;IAW1E,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;;;;CAc3E"}
|
@@ -0,0 +1,63 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
9
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
10
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
11
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
12
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
13
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
14
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
15
|
+
});
|
16
|
+
};
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
18
|
+
exports.ConnectController = void 0;
|
19
|
+
const common_1 = require("../common");
|
20
|
+
const connect_service_1 = require("./connect.service");
|
21
|
+
class ConnectController {
|
22
|
+
connect(client, data, webview) {
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
24
|
+
const res = yield (0, connect_service_1.connectService)(client, data);
|
25
|
+
return res;
|
26
|
+
});
|
27
|
+
}
|
28
|
+
lookupEnvVar(client, data, webview) {
|
29
|
+
return __awaiter(this, void 0, void 0, function* () {
|
30
|
+
const { keys } = data;
|
31
|
+
const values = keys.map((key) => process.env[key] || '');
|
32
|
+
return {
|
33
|
+
code: 200,
|
34
|
+
msg: values
|
35
|
+
};
|
36
|
+
});
|
37
|
+
}
|
38
|
+
ping(client, data, webview) {
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
40
|
+
if (!client) {
|
41
|
+
const connectResult = {
|
42
|
+
code: 501,
|
43
|
+
msg: 'mcp client 尚未连接'
|
44
|
+
};
|
45
|
+
return connectResult;
|
46
|
+
}
|
47
|
+
return {
|
48
|
+
code: 200,
|
49
|
+
msg: {}
|
50
|
+
};
|
51
|
+
});
|
52
|
+
}
|
53
|
+
}
|
54
|
+
exports.ConnectController = ConnectController;
|
55
|
+
__decorate([
|
56
|
+
(0, common_1.Controller)('connect')
|
57
|
+
], ConnectController.prototype, "connect", null);
|
58
|
+
__decorate([
|
59
|
+
(0, common_1.Controller)('lookup-env-var')
|
60
|
+
], ConnectController.prototype, "lookupEnvVar", null);
|
61
|
+
__decorate([
|
62
|
+
(0, common_1.Controller)('ping')
|
63
|
+
], ConnectController.prototype, "ping", null);
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { RequestClientType } from '../common';
|
2
|
+
import { RestfulResponse } from '../common/index.dto';
|
3
|
+
import { McpOptions } from './client.dto';
|
4
|
+
export declare let client: RequestClientType;
|
5
|
+
export declare function tryGetRunCommandError(command: string, args?: string[], cwd?: string): string | null;
|
6
|
+
export declare function connectService(_client: RequestClientType, option: McpOptions): Promise<RestfulResponse>;
|
7
|
+
//# sourceMappingURL=connect.service.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"connect.service.d.ts","sourceRoot":"","sources":["../../src/mcp/connect.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C,eAAO,IAAI,MAAM,EAAE,iBAA6B,CAAC;AAEjD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqBvG;AAED,wBAAsB,cAAc,CAChC,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,UAAU,GACnB,OAAO,CAAC,eAAe,CAAC,CA0C1B"}
|
@@ -0,0 +1,76 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.client = void 0;
|
13
|
+
exports.tryGetRunCommandError = tryGetRunCommandError;
|
14
|
+
exports.connectService = connectService;
|
15
|
+
const node_child_process_1 = require("node:child_process");
|
16
|
+
const client_service_1 = require("./client.service");
|
17
|
+
// TODO: 更多的 client
|
18
|
+
exports.client = undefined;
|
19
|
+
function tryGetRunCommandError(command, args = [], cwd) {
|
20
|
+
try {
|
21
|
+
console.log('current command', command);
|
22
|
+
console.log('current args', args);
|
23
|
+
const result = (0, node_child_process_1.spawnSync)(command, args, {
|
24
|
+
cwd: cwd || process.cwd(),
|
25
|
+
stdio: 'pipe',
|
26
|
+
encoding: 'utf-8'
|
27
|
+
});
|
28
|
+
if (result.error) {
|
29
|
+
return result.error.message;
|
30
|
+
}
|
31
|
+
if (result.status !== 0) {
|
32
|
+
return result.stderr || `Command failed with code ${result.status}`;
|
33
|
+
}
|
34
|
+
return null;
|
35
|
+
}
|
36
|
+
catch (error) {
|
37
|
+
return error instanceof Error ? error.message : String(error);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
function connectService(_client, option) {
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
42
|
+
try {
|
43
|
+
console.log('ready to connect', option);
|
44
|
+
// 对于特殊表示的路径,进行特殊的支持
|
45
|
+
if (option.args) {
|
46
|
+
option.args = option.args.map(arg => {
|
47
|
+
if (arg.startsWith('~/')) {
|
48
|
+
return arg.replace('~', process.env.HOME || '');
|
49
|
+
}
|
50
|
+
return arg;
|
51
|
+
});
|
52
|
+
}
|
53
|
+
exports.client = yield (0, client_service_1.connect)(option);
|
54
|
+
const connectResult = {
|
55
|
+
code: 200,
|
56
|
+
msg: 'Connect to OpenMCP successfully\nWelcome back, Kirigaya'
|
57
|
+
};
|
58
|
+
return connectResult;
|
59
|
+
}
|
60
|
+
catch (error) {
|
61
|
+
// TODO: 这边获取到的 error 不够精致,如何才能获取到更加精准的错误
|
62
|
+
// 比如 error: Failed to spawn: `server.py`
|
63
|
+
// Caused by: No such file or directory (os error 2)
|
64
|
+
let errorMsg = '';
|
65
|
+
if (option.command) {
|
66
|
+
errorMsg += tryGetRunCommandError(option.command, option.args, option.cwd);
|
67
|
+
}
|
68
|
+
errorMsg += error.toString();
|
69
|
+
const connectResult = {
|
70
|
+
code: 500,
|
71
|
+
msg: errorMsg
|
72
|
+
};
|
73
|
+
return connectResult;
|
74
|
+
}
|
75
|
+
});
|
76
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { RequestClientType } from "../common";
|
2
|
+
import { PostMessageble } from "../hook/adapter";
|
3
|
+
export declare class OcrController {
|
4
|
+
getOcrImage(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
|
5
|
+
code: number;
|
6
|
+
msg: {
|
7
|
+
base64String: string | undefined;
|
8
|
+
};
|
9
|
+
}>;
|
10
|
+
startOcr(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
|
11
|
+
code: number;
|
12
|
+
msg: {
|
13
|
+
filename: string;
|
14
|
+
workerId: string;
|
15
|
+
};
|
16
|
+
}>;
|
17
|
+
}
|
18
|
+
//# sourceMappingURL=ocr.controller.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ocr.controller.d.ts","sourceRoot":"","sources":["../../src/mcp/ocr.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,qBAAa,aAAa;IAEhB,WAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;;;IAazE,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;;;;CAe/E"}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
9
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
10
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
11
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
12
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
13
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
14
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
15
|
+
});
|
16
|
+
};
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
18
|
+
exports.OcrController = void 0;
|
19
|
+
const common_1 = require("../common");
|
20
|
+
const db_1 = require("../hook/db");
|
21
|
+
const ocr_service_1 = require("./ocr.service");
|
22
|
+
class OcrController {
|
23
|
+
getOcrImage(client, data, webview) {
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
25
|
+
const { filename } = data;
|
26
|
+
const buffer = db_1.diskStorage.getSync(filename);
|
27
|
+
const base64String = buffer ? buffer.toString('base64') : undefined;
|
28
|
+
return {
|
29
|
+
code: 200,
|
30
|
+
msg: {
|
31
|
+
base64String
|
32
|
+
}
|
33
|
+
};
|
34
|
+
});
|
35
|
+
}
|
36
|
+
startOcr(client, data, webview) {
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
38
|
+
const { base64String, mimeType } = data;
|
39
|
+
const filename = (0, ocr_service_1.saveBase64ImageData)(base64String, mimeType);
|
40
|
+
const worker = (0, ocr_service_1.createOcrWorker)(filename, webview);
|
41
|
+
return {
|
42
|
+
code: 200,
|
43
|
+
msg: {
|
44
|
+
filename,
|
45
|
+
workerId: worker.id
|
46
|
+
}
|
47
|
+
};
|
48
|
+
});
|
49
|
+
}
|
50
|
+
}
|
51
|
+
exports.OcrController = OcrController;
|
52
|
+
__decorate([
|
53
|
+
(0, common_1.Controller)('ocr/get-ocr-image')
|
54
|
+
], OcrController.prototype, "getOcrImage", null);
|
55
|
+
__decorate([
|
56
|
+
(0, common_1.Controller)('ocr/start-ocr')
|
57
|
+
], OcrController.prototype, "startOcr", null);
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ocr.dto.d.ts","sourceRoot":"","sources":["../../src/mcp/ocr.dto.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;CACvB"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import Tesseract from 'tesseract.js';
|
2
|
+
import { PostMessageble } from '../hook/adapter';
|
3
|
+
import { OcrWorker } from './ocr.dto';
|
4
|
+
export declare const ocrWorkerStorage: Map<string, OcrWorker>;
|
5
|
+
export declare function saveBase64ImageData(base64String: string, mimeType: string): string;
|
6
|
+
export declare function loadBase64ImageData(fileName: string): string;
|
7
|
+
export declare function tesseractOCR(imagePath: string, logger: (message: Tesseract.LoggerMessage) => void, lang?: string): Promise<string>;
|
8
|
+
export declare function createOcrWorker(filename: string, webview: PostMessageble): OcrWorker;
|
9
|
+
//# sourceMappingURL=ocr.service.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ocr.service.d.ts","sourceRoot":"","sources":["../../src/mcp/ocr.service.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAOtC,eAAO,MAAM,gBAAgB,wBAA+B,CAAC;AAE7D,wBAAgB,mBAAmB,CAC/B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GACjB,MAAM,CAWR;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAa5D;AAGD,wBAAsB,YAAY,CAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,aAAa,KAAK,IAAI,EAClD,IAAI,GAAE,MAAsB,mBA2B/B;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,CAoDpF"}
|
@@ -0,0 +1,143 @@
|
|
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
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
36
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
37
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
38
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
39
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
40
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
41
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
42
|
+
});
|
43
|
+
};
|
44
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
45
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
46
|
+
};
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
48
|
+
exports.ocrWorkerStorage = void 0;
|
49
|
+
exports.saveBase64ImageData = saveBase64ImageData;
|
50
|
+
exports.loadBase64ImageData = loadBase64ImageData;
|
51
|
+
exports.tesseractOCR = tesseractOCR;
|
52
|
+
exports.createOcrWorker = createOcrWorker;
|
53
|
+
const tesseract_js_1 = __importDefault(require("tesseract.js"));
|
54
|
+
const uuid_1 = require("uuid");
|
55
|
+
const db_1 = require("../hook/db");
|
56
|
+
const fs = __importStar(require("fs"));
|
57
|
+
const os = __importStar(require("os"));
|
58
|
+
const path = __importStar(require("path"));
|
59
|
+
const setting_1 = require("../hook/setting");
|
60
|
+
exports.ocrWorkerStorage = new Map();
|
61
|
+
function saveBase64ImageData(base64String, mimeType) {
|
62
|
+
// 从 base64 字符串中提取数据部分
|
63
|
+
const base64Data = base64String.replace(/^data:.+;base64,/, '');
|
64
|
+
// 生成唯一文件名
|
65
|
+
const fileName = `${(0, uuid_1.v4)()}.${mimeType.split('/')[1]}`;
|
66
|
+
db_1.diskStorage.setSync(fileName, base64Data, { encoding: 'base64' });
|
67
|
+
return fileName;
|
68
|
+
}
|
69
|
+
function loadBase64ImageData(fileName) {
|
70
|
+
const homedir = os.homedir();
|
71
|
+
const imageStorageFolder = path.join(homedir, '.openmcp', 'storage');
|
72
|
+
const filePath = path.join(imageStorageFolder, fileName);
|
73
|
+
// 读取文件内容
|
74
|
+
if (!fs.existsSync(filePath)) {
|
75
|
+
return '';
|
76
|
+
}
|
77
|
+
const fileContent = fs.readFileSync(filePath, { encoding: 'base64' });
|
78
|
+
// 构建 base64 字符串
|
79
|
+
const base64String = `data:image/png;base64,${fileContent}`;
|
80
|
+
return base64String;
|
81
|
+
}
|
82
|
+
function tesseractOCR(imagePath_1, logger_1) {
|
83
|
+
return __awaiter(this, arguments, void 0, function* (imagePath, logger, lang = 'eng+chi_sim') {
|
84
|
+
const ocrHome = path.join(setting_1.RUNNING_CWD, 'resources', 'ocr');
|
85
|
+
if (!ocrHome) {
|
86
|
+
console.log('ocr 目录不存在');
|
87
|
+
return '安装包已经损坏';
|
88
|
+
}
|
89
|
+
try {
|
90
|
+
const { data: { text } } = yield tesseract_js_1.default.recognize(imagePath, lang, {
|
91
|
+
logger,
|
92
|
+
gzip: false,
|
93
|
+
langPath: ocrHome,
|
94
|
+
corePath: ocrHome,
|
95
|
+
workerPath: path.join(ocrHome, 'worker.js'),
|
96
|
+
});
|
97
|
+
return text;
|
98
|
+
}
|
99
|
+
catch (error) {
|
100
|
+
console.error('OCR error:', error);
|
101
|
+
}
|
102
|
+
return '无法识别图片';
|
103
|
+
});
|
104
|
+
}
|
105
|
+
function createOcrWorker(filename, webview) {
|
106
|
+
const workerId = (0, uuid_1.v4)();
|
107
|
+
const logger = (message) => {
|
108
|
+
console.log('report ocr status');
|
109
|
+
console.log(message);
|
110
|
+
webview.postMessage({
|
111
|
+
command: 'ocr/worker/log',
|
112
|
+
data: Object.assign({ id: workerId }, message)
|
113
|
+
});
|
114
|
+
};
|
115
|
+
const imagePath = db_1.diskStorage.getStoragePath(filename);
|
116
|
+
console.log(imagePath);
|
117
|
+
const fut = tesseractOCR(imagePath, logger);
|
118
|
+
fut.then((text) => {
|
119
|
+
webview.postMessage({
|
120
|
+
command: 'ocr/worker/done',
|
121
|
+
data: {
|
122
|
+
id: workerId,
|
123
|
+
text
|
124
|
+
}
|
125
|
+
});
|
126
|
+
db_1.ocrDB.insert({
|
127
|
+
id: filename,
|
128
|
+
filename,
|
129
|
+
text,
|
130
|
+
createTime: Date.now()
|
131
|
+
});
|
132
|
+
exports.ocrWorkerStorage.delete(workerId);
|
133
|
+
});
|
134
|
+
const worker = {
|
135
|
+
id: workerId,
|
136
|
+
name: 'ocr-' + filename,
|
137
|
+
filename,
|
138
|
+
createTime: Date.now(),
|
139
|
+
fut
|
140
|
+
};
|
141
|
+
exports.ocrWorkerStorage.set(workerId, worker);
|
142
|
+
return worker;
|
143
|
+
}
|