phinix 0.2.7 → 0.2.8

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.
@@ -2,7 +2,7 @@
2
2
  * @description 埋点统计模块导出入口
3
3
  * @author 无浊
4
4
  */
5
- export { wrapServerWithAnalytics } from './tracker.js';
5
+ export { wrapServerWithAnalytics, SESSION_ID } from './tracker.js';
6
6
  export { AnalyticsReporter } from './reporter.js';
7
7
  export type { AnalyticsEvent, AnalyticsConfig, ReportResponse } from './types.js';
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
@@ -2,6 +2,6 @@
2
2
  * @description 埋点统计模块导出入口
3
3
  * @author 无浊
4
4
  */
5
- export { wrapServerWithAnalytics } from './tracker.js';
5
+ export { wrapServerWithAnalytics, SESSION_ID } from './tracker.js';
6
6
  export { AnalyticsReporter } from './reporter.js';
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC"}
@@ -4,6 +4,10 @@
4
4
  */
5
5
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
6
  import type { AnalyticsConfig } from './types.js';
7
+ /**
8
+ * 会话ID(进程级别唯一)
9
+ */
10
+ export declare const SESSION_ID: `${string}-${string}-${string}-${string}-${string}`;
7
11
  /**
8
12
  * 包装 McpServer 实例,添加埋点追踪
9
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/analytics/tracker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,YAAY,CAAC;AA8BlE;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,eAAe,GACtB,IAAI,CAkJN"}
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../../src/analytics/tracker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlE;;GAEG;AACH,eAAO,MAAM,UAAU,qDAAe,CAAC;AAwBvC;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,eAAe,GACtB,IAAI,CAkJN"}
@@ -7,7 +7,7 @@ import { AnalyticsReporter } from './reporter.js';
7
7
  /**
8
8
  * 会话ID(进程级别唯一)
9
9
  */
10
- const SESSION_ID = randomUUID();
10
+ export const SESSION_ID = randomUUID();
11
11
  /**
12
12
  * 获取作者信息
13
13
  * 优先级:命令行参数 > 环境变量 > 默认值 "unknown"
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/analytics/tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/analytics/tracker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.js"],"names":[],"mappings":"AAgCA,kCAA6C;;;;;;;AA3B7C,+BAA2C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.js"],"names":[],"mappings":"AAqCA,kCAA6C;;;;;;;AAhC7C,+BAA2C"}
package/dist/config.js CHANGED
@@ -5,23 +5,27 @@ const __filename = fileURLToPath(import.meta.url);
5
5
  const __dirname = path.dirname(__filename);
6
6
  // 从环境变量或命令行参数获取项目根目录
7
7
  function getProjectRoot() {
8
- // 优先级:命令行参数 > 环境变量 > 当前工作目录
8
+ // 优先级:环境变量 > 当前工作目录 > 命令行参数
9
+ // 这样的优先级更适合 MCP 客户端通过 env 或 cwd 配置传入工作区路径
10
+ // 1. 优先使用环境变量(从 MCP 客户端配置的 env.PROJECT_ROOT 传入)
11
+ if (process.env.PROJECT_ROOT) {
12
+ return process.env.PROJECT_ROOT;
13
+ }
14
+ // 2. 使用当前工作目录(从 MCP 客户端配置的 cwd 传入)
15
+ const cwd = process.cwd();
9
16
  const args = process.argv.slice(2);
10
- // 检查命名参数 --project-root=path
17
+ // 检查是否通过命令行参数指定了路径
11
18
  const projectRootArg = args.find((arg) => arg.startsWith("--project-root="));
12
19
  if (projectRootArg) {
13
20
  return projectRootArg.split("=")[1];
14
21
  }
15
- // 检查位置参数
16
- if (args[0] && !args[0].startsWith("--")) {
17
- return args[0];
18
- }
19
- // 检查环境变量
20
- if (process.env.PROJECT_ROOT) {
21
- return process.env.PROJECT_ROOT;
22
+ // 检查位置参数(第一个非选项参数)
23
+ const positionalArg = args.find((arg) => !arg.startsWith("--"));
24
+ if (positionalArg) {
25
+ return positionalArg;
22
26
  }
23
- // 默认使用当前工作目录
24
- return process.cwd();
27
+ // 3. 默认使用当前工作目录
28
+ return cwd;
25
29
  }
26
30
  export const PROJECT_ROOT = getProjectRoot();
27
31
  export { __dirname };
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,cAAc;AACd,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,qBAAqB;AACrB,SAAS,cAAc;IACrB,4BAA4B;IAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,6BAA6B;IAC7B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC7E,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,SAAS;IACT,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,SAAS;IACT,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAClC,CAAC;IAED,aAAa;IACb,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,SAAS;AACT,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,OAAO;IAElD,sBAAsB;IACtB,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAC1C,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,oBAAoB;QACzD,CAAC,CAAC;YACE,kDAAkD,EAAG,OAAO;YAC5D,mDAAmD,CAAE,OAAO;SAC7D;IAEL,uBAAuB;IACvB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAEhF,eAAe;IACf,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,GAAG,EAAE,EAAE,CAAC;CACnE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,cAAc;AACd,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,qBAAqB;AACrB,SAAS,cAAc;IACrB,4BAA4B;IAC5B,0CAA0C;IAE1C,gDAAgD;IAChD,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAClC,CAAC;IAED,mCAAmC;IACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,mBAAmB;IACnB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC7E,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,mBAAmB;IACnB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,gBAAgB;IAChB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,SAAS;AACT,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,OAAO;IAElD,sBAAsB;IACtB,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAC1C,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,oBAAoB;QACzD,CAAC,CAAC;YACE,kDAAkD,EAAG,OAAO;YAC5D,mDAAmD,CAAE,OAAO;SAC7D;IAEL,uBAAuB;IACvB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC;IAEhF,eAAe;IACf,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,GAAG,EAAE,EAAE,CAAC;CACnE,CAAC"}
@@ -7,7 +7,9 @@ export function triggerFeedback({ componentName }: {
7
7
  }[];
8
8
  data: {
9
9
  traceId: `${string}-${string}-${string}-${string}-${string}`;
10
+ sessionId: `${string}-${string}-${string}-${string}-${string}`;
10
11
  status: string;
12
+ port: number;
11
13
  error?: undefined;
12
14
  };
13
15
  } | {
@@ -17,8 +19,10 @@ export function triggerFeedback({ componentName }: {
17
19
  }[];
18
20
  data: {
19
21
  traceId: `${string}-${string}-${string}-${string}-${string}`;
22
+ sessionId: `${string}-${string}-${string}-${string}-${string}`;
20
23
  status: string;
21
24
  error: any;
25
+ port: number;
22
26
  };
23
27
  }>;
24
28
  export namespace triggerFeedbackSchema {
@@ -1 +1 @@
1
- {"version":3,"file":"triggerFeedback.d.ts","sourceRoot":"","sources":["../../src/tools/triggerFeedback.js"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;;;;GA4DC;;;;kBApEiB,KAAK"}
1
+ {"version":3,"file":"triggerFeedback.d.ts","sourceRoot":"","sources":["../../src/tools/triggerFeedback.js"],"names":[],"mappings":"AA+CA;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEC;;;;kBApHiB,KAAK"}
@@ -1,15 +1,52 @@
1
1
  import { z } from "zod";
2
2
  import crypto from "crypto";
3
3
  import http from "http";
4
+ import fs from "fs";
5
+ import path from "path";
6
+ import os from "os";
7
+ import { PROJECT_ROOT } from "../config.js";
8
+ import { SESSION_ID } from "../analytics/index.js";
4
9
  export const triggerFeedbackSchema = {
5
10
  componentName: z.string().describe("组件名称"),
6
11
  };
12
+ /**
13
+ * 获取全局配置文件路径
14
+ * @returns {string} 全局配置文件路径
15
+ */
16
+ function getGlobalConfigPath() {
17
+ const homeDir = os.homedir();
18
+ return path.join(homeDir, ".mcp-feedback", "ports.json");
19
+ }
20
+ /**
21
+ * 从全局配置文件读取插件端口
22
+ * @param {string} workspacePath - 工作区路径
23
+ * @returns {number|null} 端口号,失败返回 null
24
+ */
25
+ function getPluginPort(workspacePath) {
26
+ const configPath = getGlobalConfigPath();
27
+ if (!fs.existsSync(configPath)) {
28
+ return null;
29
+ }
30
+ try {
31
+ const content = fs.readFileSync(configPath, "utf-8");
32
+ const allConfigs = JSON.parse(content);
33
+ // 查找匹配的工作区配置
34
+ const config = allConfigs[workspacePath];
35
+ return config ? config.port : null;
36
+ }
37
+ catch (error) {
38
+ console.error("读取端口配置失败:", error.message);
39
+ return null;
40
+ }
41
+ }
7
42
  export async function triggerFeedback({ componentName }) {
8
43
  // 1. 生成 TraceID
9
44
  const traceId = crypto.randomUUID();
10
- // 2. 构建请求 URL
11
- const url = `http://127.0.0.1:9999/trigger-feedback?component=${encodeURIComponent(componentName)}&traceId=${traceId}`;
12
- // 3. 发送 HTTP 请求 (fire and forget pattern, but we wait for connection to ensure it was sent)
45
+ // 2. 获取插件端口(从配置文件读取,失败则使用默认端口 9999)
46
+ const port = getPluginPort(PROJECT_ROOT) || 9999;
47
+ // 3. 构建请求 URL
48
+ const url = `http://127.0.0.1:${port}/trigger-feedback?component=${encodeURIComponent(componentName)}&traceId=${traceId}&sessionId=${SESSION_ID}`;
49
+ // 4. 发送 HTTP 请求 (fire and forget pattern, but we wait for connection to ensure it was sent)
13
50
  try {
14
51
  await new Promise((resolve, reject) => {
15
52
  const req = http.get(url, (res) => {
@@ -32,12 +69,14 @@ export async function triggerFeedback({ componentName }) {
32
69
  content: [
33
70
  {
34
71
  type: "text",
35
- text: `✅ 已触发反馈机制 (TraceID: ${traceId})`,
72
+ text: `✅ 已触发反馈机制 (TraceID: ${traceId}, SessionID: ${SESSION_ID}, 端口: ${port})`,
36
73
  },
37
74
  ],
38
75
  data: {
39
76
  traceId,
77
+ sessionId: SESSION_ID,
40
78
  status: "triggered",
79
+ port,
41
80
  },
42
81
  };
43
82
  }
@@ -46,15 +85,19 @@ export async function triggerFeedback({ componentName }) {
46
85
  content: [
47
86
  {
48
87
  type: "text",
49
- text: `⚠️ 触发反馈失败 (TraceID: ${traceId})
88
+ text: `⚠️ 触发反馈失败 (TraceID: ${traceId}, SessionID: ${SESSION_ID})
89
+ PROJECT_ROOT: ${PROJECT_ROOT}
50
90
  原因: ${error.message}
51
- (这通常意味着本地 IDE 插件未启动或端口 9999 被占用/不可达)`,
91
+ 目标端口: ${port}
92
+ (这通常意味着本地 IDE 插件未启动或端口不可达)`,
52
93
  },
53
94
  ],
54
95
  data: {
55
96
  traceId,
97
+ sessionId: SESSION_ID,
56
98
  status: "failed",
57
99
  error: error.message,
100
+ port,
58
101
  },
59
102
  };
60
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"triggerFeedback.js","sourceRoot":"","sources":["../../src/tools/triggerFeedback.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;CAC3C,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAE,aAAa,EAAE;IACrD,gBAAgB;IAChB,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAEpC,cAAc;IACd,MAAM,GAAG,GAAG,oDAAoD,kBAAkB,CAChF,aAAa,CACd,YAAY,OAAO,EAAE,CAAC;IAEvB,4FAA4F;IAC5F,IAAI,CAAC;QACH,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;gBAChC,oCAAoC;gBACpC,GAAG,CAAC,MAAM,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACtB,8CAA8C;gBAC9C,mBAAmB;gBACnB,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,WAAW;YACX,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;gBACxB,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uBAAuB,OAAO,GAAG;iBACxC;aACF;YACD,IAAI,EAAE;gBACJ,OAAO;gBACP,MAAM,EAAE,WAAW;aACpB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uBAAuB,OAAO;MACxC,KAAK,CAAC,OAAO;qCACkB;iBAC5B;aACF;YACD,IAAI,EAAE;gBACJ,OAAO;gBACP,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB;SACF,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"triggerFeedback.js","sourceRoot":"","sources":["../../src/tools/triggerFeedback.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phinix",
3
- "version": "0.2.7",
3
+ "version": "0.2.8",
4
4
  "description": "phinix - A Model Context Protocol server for managing and generating React components with built-in analytics",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
package/src/config.js CHANGED
@@ -7,27 +7,32 @@ const __dirname = path.dirname(__filename);
7
7
 
8
8
  // 从环境变量或命令行参数获取项目根目录
9
9
  function getProjectRoot() {
10
- // 优先级:命令行参数 > 环境变量 > 当前工作目录
10
+ // 优先级:环境变量 > 当前工作目录 > 命令行参数
11
+ // 这样的优先级更适合 MCP 客户端通过 env 或 cwd 配置传入工作区路径
12
+
13
+ // 1. 优先使用环境变量(从 MCP 客户端配置的 env.PROJECT_ROOT 传入)
14
+ if (process.env.PROJECT_ROOT) {
15
+ return process.env.PROJECT_ROOT;
16
+ }
17
+
18
+ // 2. 使用当前工作目录(从 MCP 客户端配置的 cwd 传入)
19
+ const cwd = process.cwd();
11
20
  const args = process.argv.slice(2);
12
21
 
13
- // 检查命名参数 --project-root=path
22
+ // 检查是否通过命令行参数指定了路径
14
23
  const projectRootArg = args.find((arg) => arg.startsWith("--project-root="));
15
24
  if (projectRootArg) {
16
25
  return projectRootArg.split("=")[1];
17
26
  }
18
27
 
19
- // 检查位置参数
20
- if (args[0] && !args[0].startsWith("--")) {
21
- return args[0];
22
- }
23
-
24
- // 检查环境变量
25
- if (process.env.PROJECT_ROOT) {
26
- return process.env.PROJECT_ROOT;
28
+ // 检查位置参数(第一个非选项参数)
29
+ const positionalArg = args.find((arg) => !arg.startsWith("--"));
30
+ if (positionalArg) {
31
+ return positionalArg;
27
32
  }
28
33
 
29
- // 默认使用当前工作目录
30
- return process.cwd();
34
+ // 3. 默认使用当前工作目录
35
+ return cwd;
31
36
  }
32
37
 
33
38
  export const PROJECT_ROOT = getProjectRoot();
@@ -1,21 +1,63 @@
1
1
  import { z } from "zod";
2
2
  import crypto from "crypto";
3
3
  import http from "http";
4
+ import fs from "fs";
5
+ import path from "path";
6
+ import os from "os";
7
+ import { PROJECT_ROOT } from "../config.js";
8
+ import { SESSION_ID } from "../analytics/index.js";
4
9
 
5
10
  export const triggerFeedbackSchema = {
6
11
  componentName: z.string().describe("组件名称"),
7
12
  };
8
13
 
14
+ /**
15
+ * 获取全局配置文件路径
16
+ * @returns {string} 全局配置文件路径
17
+ */
18
+ function getGlobalConfigPath() {
19
+ const homeDir = os.homedir();
20
+ return path.join(homeDir, ".mcp-feedback", "ports.json");
21
+ }
22
+
23
+ /**
24
+ * 从全局配置文件读取插件端口
25
+ * @param {string} workspacePath - 工作区路径
26
+ * @returns {number|null} 端口号,失败返回 null
27
+ */
28
+ function getPluginPort(workspacePath) {
29
+ const configPath = getGlobalConfigPath();
30
+
31
+ if (!fs.existsSync(configPath)) {
32
+ return null;
33
+ }
34
+
35
+ try {
36
+ const content = fs.readFileSync(configPath, "utf-8");
37
+ const allConfigs = JSON.parse(content);
38
+
39
+ // 查找匹配的工作区配置
40
+ const config = allConfigs[workspacePath];
41
+ return config ? config.port : null;
42
+ } catch (error) {
43
+ console.error("读取端口配置失败:", error.message);
44
+ return null;
45
+ }
46
+ }
47
+
9
48
  export async function triggerFeedback({ componentName }) {
10
49
  // 1. 生成 TraceID
11
50
  const traceId = crypto.randomUUID();
12
51
 
13
- // 2. 构建请求 URL
14
- const url = `http://127.0.0.1:9999/trigger-feedback?component=${encodeURIComponent(
52
+ // 2. 获取插件端口(从配置文件读取,失败则使用默认端口 9999)
53
+ const port = getPluginPort(PROJECT_ROOT) || 9999;
54
+
55
+ // 3. 构建请求 URL
56
+ const url = `http://127.0.0.1:${port}/trigger-feedback?component=${encodeURIComponent(
15
57
  componentName
16
- )}&traceId=${traceId}`;
58
+ )}&traceId=${traceId}&sessionId=${SESSION_ID}`;
17
59
 
18
- // 3. 发送 HTTP 请求 (fire and forget pattern, but we wait for connection to ensure it was sent)
60
+ // 4. 发送 HTTP 请求 (fire and forget pattern, but we wait for connection to ensure it was sent)
19
61
  try {
20
62
  await new Promise((resolve, reject) => {
21
63
  const req = http.get(url, (res) => {
@@ -41,12 +83,14 @@ export async function triggerFeedback({ componentName }) {
41
83
  content: [
42
84
  {
43
85
  type: "text",
44
- text: `✅ 已触发反馈机制 (TraceID: ${traceId})`,
86
+ text: `✅ 已触发反馈机制 (TraceID: ${traceId}, SessionID: ${SESSION_ID}, 端口: ${port})`,
45
87
  },
46
88
  ],
47
89
  data: {
48
90
  traceId,
91
+ sessionId: SESSION_ID,
49
92
  status: "triggered",
93
+ port,
50
94
  },
51
95
  };
52
96
  } catch (error) {
@@ -54,15 +98,19 @@ export async function triggerFeedback({ componentName }) {
54
98
  content: [
55
99
  {
56
100
  type: "text",
57
- text: `⚠️ 触发反馈失败 (TraceID: ${traceId})
101
+ text: `⚠️ 触发反馈失败 (TraceID: ${traceId}, SessionID: ${SESSION_ID})
102
+ PROJECT_ROOT: ${PROJECT_ROOT}
58
103
  原因: ${error.message}
59
- (这通常意味着本地 IDE 插件未启动或端口 9999 被占用/不可达)`,
104
+ 目标端口: ${port}
105
+ (这通常意味着本地 IDE 插件未启动或端口不可达)`,
60
106
  },
61
107
  ],
62
108
  data: {
63
109
  traceId,
110
+ sessionId: SESSION_ID,
64
111
  status: "failed",
65
112
  error: error.message,
113
+ port,
66
114
  },
67
115
  };
68
116
  }