From dd9c117df7d6326301ce5997e13284ca598312a1 Mon Sep 17 00:00:00 2001 From: Kirigaya <1193466151@qq.com> Date: Thu, 24 Apr 2025 19:03:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=A1=B5=E9=9D=A2=E5=B8=83?= =?UTF-8?q?=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main-panel/chat/message/assistant.vue | 25 +++ .../main-panel/chat/message/index.ts | 4 + .../main-panel/chat/message/message-meta.vue | 85 ++++++++++ .../main-panel/chat/message/toolcall.vue | 156 ++++++++++++++++++ .../main-panel/chat/message/user.vue | 22 +++ service/src/controller/env-var.ts | 27 +++ 6 files changed, 319 insertions(+) create mode 100644 renderer/src/components/main-panel/chat/message/assistant.vue create mode 100644 renderer/src/components/main-panel/chat/message/index.ts create mode 100644 renderer/src/components/main-panel/chat/message/message-meta.vue create mode 100644 renderer/src/components/main-panel/chat/message/toolcall.vue create mode 100644 renderer/src/components/main-panel/chat/message/user.vue create mode 100644 service/src/controller/env-var.ts diff --git a/renderer/src/components/main-panel/chat/message/assistant.vue b/renderer/src/components/main-panel/chat/message/assistant.vue new file mode 100644 index 0000000..06c24fe --- /dev/null +++ b/renderer/src/components/main-panel/chat/message/assistant.vue @@ -0,0 +1,25 @@ + + + + + \ No newline at end of file diff --git a/renderer/src/components/main-panel/chat/message/index.ts b/renderer/src/components/main-panel/chat/message/index.ts new file mode 100644 index 0000000..1cabaff --- /dev/null +++ b/renderer/src/components/main-panel/chat/message/index.ts @@ -0,0 +1,4 @@ +import Assistant from "./assistant.vue"; +import Toolcall from "./toolcall.vue"; +import User from "./user.vue"; +export { Assistant, Toolcall, User }; \ No newline at end of file diff --git a/renderer/src/components/main-panel/chat/message/message-meta.vue b/renderer/src/components/main-panel/chat/message/message-meta.vue new file mode 100644 index 0000000..e9de6f4 --- /dev/null +++ b/renderer/src/components/main-panel/chat/message/message-meta.vue @@ -0,0 +1,85 @@ + + + + + \ No newline at end of file diff --git a/renderer/src/components/main-panel/chat/message/toolcall.vue b/renderer/src/components/main-panel/chat/message/toolcall.vue new file mode 100644 index 0000000..cfb7483 --- /dev/null +++ b/renderer/src/components/main-panel/chat/message/toolcall.vue @@ -0,0 +1,156 @@ + + + + + \ No newline at end of file diff --git a/renderer/src/components/main-panel/chat/message/user.vue b/renderer/src/components/main-panel/chat/message/user.vue new file mode 100644 index 0000000..bbccd96 --- /dev/null +++ b/renderer/src/components/main-panel/chat/message/user.vue @@ -0,0 +1,22 @@ + + + + + \ No newline at end of file diff --git a/service/src/controller/env-var.ts b/service/src/controller/env-var.ts new file mode 100644 index 0000000..1616f6c --- /dev/null +++ b/service/src/controller/env-var.ts @@ -0,0 +1,27 @@ +import { PostMessageble } from "../adapter"; +import { MCPClient } from "./connect"; + + +export async function lookupEnvVarHandler(client: MCPClient | undefined, data: any, webview: PostMessageble) { + try { + const { keys } = data; + + const values = keys.map((key: string) => process.env[key] || ''); + + webview.postMessage({ + command: 'lookup-env-var', + data: { + code: 200, + msg: values + } + }); + } catch (error) { + webview.postMessage({ + command: 'lookup-env-var', + data: { + code: 500, + msg: `Failed to lookup env vars: ${(error as Error).message}` + } + }); + } +} \ No newline at end of file