cursor-feedback 0.1.8 → 0.1.10
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 +1 -1
- package/dist/extension.js +41 -100
- package/dist/extension.js.map +1 -1
- package/dist/mcp/McpServer.js +21 -16
- package/dist/mcp/McpServer.js.map +1 -1
- package/dist/mcp-server.js +25 -30
- package/dist/mcp-server.js.map +1 -1
- package/package.json +1 -1
- package/src/extension.ts +41 -102
- package/src/mcp/McpServer.ts +24 -19
- package/src/mcp-server.ts +28 -33
package/README.md
CHANGED
|
@@ -77,7 +77,7 @@ npm install -g cursor-feedback
|
|
|
77
77
|
| 参数 | 类型 | 默认值 | 描述 |
|
|
78
78
|
|------|------|--------|------|
|
|
79
79
|
| `project_directory` | string | `.` | 项目目录的绝对路径(用于多窗口项目隔离) |
|
|
80
|
-
| `summary` | string |
|
|
80
|
+
| `summary` | string | `我已完成您的请求。` | AI 工作摘要(支持 Markdown) |
|
|
81
81
|
| `timeout` | number | `300` | 超时时间(秒),默认 5 分钟 |
|
|
82
82
|
|
|
83
83
|
**超时机制:**
|
package/dist/extension.js
CHANGED
|
@@ -146,11 +146,8 @@ class FeedbackViewProvider {
|
|
|
146
146
|
case 'checkServer':
|
|
147
147
|
await this._checkServerHealth();
|
|
148
148
|
break;
|
|
149
|
-
case '
|
|
150
|
-
await this.
|
|
151
|
-
break;
|
|
152
|
-
case 'selectFolder':
|
|
153
|
-
await this._handleSelectFolder();
|
|
149
|
+
case 'selectPath':
|
|
150
|
+
await this._handleSelectPath();
|
|
154
151
|
break;
|
|
155
152
|
}
|
|
156
153
|
});
|
|
@@ -344,38 +341,20 @@ class FeedbackViewProvider {
|
|
|
344
341
|
}
|
|
345
342
|
}
|
|
346
343
|
/**
|
|
347
|
-
*
|
|
344
|
+
* 处理选择文件/文件夹
|
|
348
345
|
*/
|
|
349
|
-
async
|
|
346
|
+
async _handleSelectPath() {
|
|
350
347
|
const result = await vscode.window.showOpenDialog({
|
|
351
348
|
canSelectMany: true,
|
|
352
349
|
canSelectFiles: true,
|
|
353
|
-
canSelectFolders: false,
|
|
354
|
-
openLabel: '选择文件'
|
|
355
|
-
});
|
|
356
|
-
if (result && result.length > 0) {
|
|
357
|
-
const paths = result.map(uri => uri.fsPath);
|
|
358
|
-
this._view?.webview.postMessage({
|
|
359
|
-
type: 'filesSelected',
|
|
360
|
-
payload: { paths, isFolder: false }
|
|
361
|
-
});
|
|
362
|
-
}
|
|
363
|
-
}
|
|
364
|
-
/**
|
|
365
|
-
* 处理选择文件夹
|
|
366
|
-
*/
|
|
367
|
-
async _handleSelectFolder() {
|
|
368
|
-
const result = await vscode.window.showOpenDialog({
|
|
369
|
-
canSelectMany: true,
|
|
370
|
-
canSelectFiles: false,
|
|
371
350
|
canSelectFolders: true,
|
|
372
|
-
openLabel: '
|
|
351
|
+
openLabel: '选择'
|
|
373
352
|
});
|
|
374
353
|
if (result && result.length > 0) {
|
|
375
354
|
const paths = result.map(uri => uri.fsPath);
|
|
376
355
|
this._view?.webview.postMessage({
|
|
377
356
|
type: 'filesSelected',
|
|
378
|
-
payload: { paths
|
|
357
|
+
payload: { paths }
|
|
379
358
|
});
|
|
380
359
|
}
|
|
381
360
|
}
|
|
@@ -666,6 +645,27 @@ class FeedbackViewProvider {
|
|
|
666
645
|
background: var(--vscode-button-secondaryHoverBackground);
|
|
667
646
|
}
|
|
668
647
|
|
|
648
|
+
.attachment-btn[data-tooltip] {
|
|
649
|
+
position: relative;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
.attachment-btn[data-tooltip]:hover::after {
|
|
653
|
+
content: attr(data-tooltip);
|
|
654
|
+
position: absolute;
|
|
655
|
+
bottom: 100%;
|
|
656
|
+
left: 50%;
|
|
657
|
+
transform: translateX(-50%);
|
|
658
|
+
padding: 4px 8px;
|
|
659
|
+
background: var(--vscode-editorWidget-background);
|
|
660
|
+
color: var(--vscode-editorWidget-foreground);
|
|
661
|
+
border: 1px solid var(--vscode-editorWidget-border);
|
|
662
|
+
border-radius: 4px;
|
|
663
|
+
font-size: 11px;
|
|
664
|
+
white-space: nowrap;
|
|
665
|
+
margin-bottom: 4px;
|
|
666
|
+
z-index: 100;
|
|
667
|
+
}
|
|
668
|
+
|
|
669
669
|
.file-list {
|
|
670
670
|
margin-top: 8px;
|
|
671
671
|
}
|
|
@@ -748,33 +748,6 @@ class FeedbackViewProvider {
|
|
|
748
748
|
display: none !important;
|
|
749
749
|
}
|
|
750
750
|
|
|
751
|
-
.loading-container {
|
|
752
|
-
display: flex;
|
|
753
|
-
flex-direction: column;
|
|
754
|
-
align-items: center;
|
|
755
|
-
justify-content: center;
|
|
756
|
-
height: 100vh;
|
|
757
|
-
gap: 12px;
|
|
758
|
-
}
|
|
759
|
-
|
|
760
|
-
.loading-spinner {
|
|
761
|
-
width: 32px;
|
|
762
|
-
height: 32px;
|
|
763
|
-
border: 3px solid var(--vscode-input-border);
|
|
764
|
-
border-top-color: var(--vscode-button-background);
|
|
765
|
-
border-radius: 50%;
|
|
766
|
-
animation: spin 1s linear infinite;
|
|
767
|
-
}
|
|
768
|
-
|
|
769
|
-
@keyframes spin {
|
|
770
|
-
to { transform: rotate(360deg); }
|
|
771
|
-
}
|
|
772
|
-
|
|
773
|
-
.loading-text {
|
|
774
|
-
font-size: 12px;
|
|
775
|
-
color: var(--vscode-descriptionForeground);
|
|
776
|
-
}
|
|
777
|
-
|
|
778
751
|
.project-info {
|
|
779
752
|
font-size: 11px;
|
|
780
753
|
color: var(--vscode-descriptionForeground);
|
|
@@ -794,13 +767,7 @@ class FeedbackViewProvider {
|
|
|
794
767
|
</style>
|
|
795
768
|
</head>
|
|
796
769
|
<body>
|
|
797
|
-
|
|
798
|
-
<div id="loadingContainer" class="loading-container">
|
|
799
|
-
<div class="loading-spinner"></div>
|
|
800
|
-
<div class="loading-text">${i18n.loading}</div>
|
|
801
|
-
</div>
|
|
802
|
-
|
|
803
|
-
<div id="mainContainer" class="container hidden">
|
|
770
|
+
<div class="container">
|
|
804
771
|
<!-- 服务器状态 -->
|
|
805
772
|
<div id="serverStatus" class="server-status">
|
|
806
773
|
<span class="dot"></span>
|
|
@@ -835,13 +802,10 @@ class FeedbackViewProvider {
|
|
|
835
802
|
<!-- 附件区域 -->
|
|
836
803
|
<div class="attachments-area">
|
|
837
804
|
<div class="attachment-buttons">
|
|
838
|
-
<button id="uploadBtn" class="attachment-btn"
|
|
805
|
+
<button id="uploadBtn" class="attachment-btn" data-tooltip="${i18n.uploadImage}">
|
|
839
806
|
🖼️
|
|
840
807
|
</button>
|
|
841
|
-
<button id="
|
|
842
|
-
📄
|
|
843
|
-
</button>
|
|
844
|
-
<button id="selectFolderBtn" class="attachment-btn" title="${i18n.selectFolder}">
|
|
808
|
+
<button id="selectPathBtn" class="attachment-btn" data-tooltip="${i18n.selectPath}">
|
|
845
809
|
📁
|
|
846
810
|
</button>
|
|
847
811
|
</div>
|
|
@@ -858,16 +822,6 @@ class FeedbackViewProvider {
|
|
|
858
822
|
</div>
|
|
859
823
|
</div>
|
|
860
824
|
|
|
861
|
-
<script>
|
|
862
|
-
// 初始化时隐藏 loading 显示主内容
|
|
863
|
-
function hideLoading() {
|
|
864
|
-
const loadingContainer = document.getElementById('loadingContainer');
|
|
865
|
-
const mainContainer = document.getElementById('mainContainer');
|
|
866
|
-
if (loadingContainer) loadingContainer.classList.add('hidden');
|
|
867
|
-
if (mainContainer) mainContainer.classList.remove('hidden');
|
|
868
|
-
}
|
|
869
|
-
</script>
|
|
870
|
-
|
|
871
825
|
<script>
|
|
872
826
|
const vscode = acquireVsCodeApi();
|
|
873
827
|
|
|
@@ -909,8 +863,7 @@ class FeedbackViewProvider {
|
|
|
909
863
|
const feedbackInput = document.getElementById('feedbackInput');
|
|
910
864
|
const submitBtn = document.getElementById('submitBtn');
|
|
911
865
|
const uploadBtn = document.getElementById('uploadBtn');
|
|
912
|
-
const
|
|
913
|
-
const selectFolderBtn = document.getElementById('selectFolderBtn');
|
|
866
|
+
const selectPathBtn = document.getElementById('selectPathBtn');
|
|
914
867
|
const imageInput = document.getElementById('imageInput');
|
|
915
868
|
const imagePreview = document.getElementById('imagePreview');
|
|
916
869
|
const fileList = document.getElementById('fileList');
|
|
@@ -931,18 +884,13 @@ class FeedbackViewProvider {
|
|
|
931
884
|
// 图片上传
|
|
932
885
|
uploadBtn.addEventListener('click', () => imageInput.click());
|
|
933
886
|
|
|
934
|
-
//
|
|
935
|
-
|
|
936
|
-
vscode.postMessage({ type: '
|
|
937
|
-
});
|
|
938
|
-
|
|
939
|
-
// 选择文件夹
|
|
940
|
-
selectFolderBtn.addEventListener('click', () => {
|
|
941
|
-
vscode.postMessage({ type: 'selectFolder' });
|
|
887
|
+
// 选择文件/文件夹
|
|
888
|
+
selectPathBtn.addEventListener('click', () => {
|
|
889
|
+
vscode.postMessage({ type: 'selectPath' });
|
|
942
890
|
});
|
|
943
891
|
|
|
944
892
|
// 添加已选文件到列表
|
|
945
|
-
function addAttachedFile(path
|
|
893
|
+
function addAttachedFile(path) {
|
|
946
894
|
if (attachedFiles.includes(path)) return;
|
|
947
895
|
attachedFiles.push(path);
|
|
948
896
|
|
|
@@ -951,6 +899,8 @@ class FeedbackViewProvider {
|
|
|
951
899
|
|
|
952
900
|
const icon = document.createElement('span');
|
|
953
901
|
icon.className = 'file-icon';
|
|
902
|
+
// 根据路径是否以 / 结尾或不包含扩展名来判断是否为文件夹
|
|
903
|
+
const isFolder = path.endsWith('/') || !path.split('/').pop().includes('.');
|
|
954
904
|
icon.textContent = isFolder ? '📁' : '📄';
|
|
955
905
|
|
|
956
906
|
const pathSpan = document.createElement('span');
|
|
@@ -1141,7 +1091,7 @@ class FeedbackViewProvider {
|
|
|
1141
1091
|
case 'filesSelected':
|
|
1142
1092
|
if (message.payload.paths) {
|
|
1143
1093
|
for (const path of message.payload.paths) {
|
|
1144
|
-
addAttachedFile(path
|
|
1094
|
+
addAttachedFile(path);
|
|
1145
1095
|
}
|
|
1146
1096
|
}
|
|
1147
1097
|
break;
|
|
@@ -1156,9 +1106,6 @@ class FeedbackViewProvider {
|
|
|
1156
1106
|
// 通知插件 WebView 已准备就绪
|
|
1157
1107
|
vscode.postMessage({ type: 'ready' });
|
|
1158
1108
|
vscode.postMessage({ type: 'checkServer' });
|
|
1159
|
-
|
|
1160
|
-
// 隐藏 loading,显示主内容
|
|
1161
|
-
hideLoading();
|
|
1162
1109
|
</script>
|
|
1163
1110
|
</body>
|
|
1164
1111
|
</html>`;
|
|
@@ -1169,15 +1116,13 @@ class FeedbackViewProvider {
|
|
|
1169
1116
|
_getI18n(lang) {
|
|
1170
1117
|
const translations = {
|
|
1171
1118
|
'zh-CN': {
|
|
1172
|
-
loading: '加载中...',
|
|
1173
1119
|
waiting: '等待 AI 请求反馈...',
|
|
1174
1120
|
waitingHint: '当 AI 需要您的反馈时,这里会显示输入界面',
|
|
1175
1121
|
summary: 'AI 工作摘要',
|
|
1176
1122
|
yourFeedback: '您的反馈',
|
|
1177
1123
|
placeholder: '请输入您的反馈...',
|
|
1178
1124
|
uploadImage: '上传图片',
|
|
1179
|
-
|
|
1180
|
-
selectFolder: '选择文件夹',
|
|
1125
|
+
selectPath: '选择文件/文件夹',
|
|
1181
1126
|
submit: '提交反馈',
|
|
1182
1127
|
timeout: '剩余时间',
|
|
1183
1128
|
expired: '已超时',
|
|
@@ -1186,15 +1131,13 @@ class FeedbackViewProvider {
|
|
|
1186
1131
|
disconnected: 'MCP Server 未连接',
|
|
1187
1132
|
},
|
|
1188
1133
|
'zh-TW': {
|
|
1189
|
-
loading: '載入中...',
|
|
1190
1134
|
waiting: '等待 AI 請求回饋...',
|
|
1191
1135
|
waitingHint: '當 AI 需要您的回饋時,這裡會顯示輸入介面',
|
|
1192
1136
|
summary: 'AI 工作摘要',
|
|
1193
1137
|
yourFeedback: '您的回饋',
|
|
1194
1138
|
placeholder: '請輸入您的回饋...',
|
|
1195
1139
|
uploadImage: '上傳圖片',
|
|
1196
|
-
|
|
1197
|
-
selectFolder: '選擇資料夾',
|
|
1140
|
+
selectPath: '選擇檔案/資料夾',
|
|
1198
1141
|
submit: '提交回饋',
|
|
1199
1142
|
timeout: '剩餘時間',
|
|
1200
1143
|
expired: '已超時',
|
|
@@ -1203,15 +1146,13 @@ class FeedbackViewProvider {
|
|
|
1203
1146
|
disconnected: 'MCP Server 未連接',
|
|
1204
1147
|
},
|
|
1205
1148
|
'en': {
|
|
1206
|
-
loading: 'Loading...',
|
|
1207
1149
|
waiting: 'Waiting for AI feedback request...',
|
|
1208
1150
|
waitingHint: 'The feedback interface will appear when AI needs your input',
|
|
1209
1151
|
summary: 'AI Work Summary',
|
|
1210
1152
|
yourFeedback: 'Your Feedback',
|
|
1211
1153
|
placeholder: 'Enter your feedback...',
|
|
1212
1154
|
uploadImage: 'Upload Image',
|
|
1213
|
-
|
|
1214
|
-
selectFolder: 'Select Folder',
|
|
1155
|
+
selectPath: 'Select File/Folder',
|
|
1215
1156
|
submit: 'Submit Feedback',
|
|
1216
1157
|
timeout: 'Time remaining',
|
|
1217
1158
|
expired: 'Expired',
|
package/dist/extension.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/McpServer.js
CHANGED
|
@@ -74,23 +74,28 @@ class McpServer {
|
|
|
74
74
|
tools: [
|
|
75
75
|
{
|
|
76
76
|
name: 'interactive_feedback',
|
|
77
|
-
description:
|
|
77
|
+
description: `交互式反馈收集工具。
|
|
78
78
|
|
|
79
|
-
|
|
80
|
-
1. During any process, task, or conversation, whether asking, replying, or completing phased tasks, you must call this tool to ask for feedback.
|
|
81
|
-
2. Unless receiving termination instructions, all steps must repeatedly call this tool.
|
|
82
|
-
3. Whenever user feedback is received, if the feedback content is not empty, you must call this tool again and adjust behavior based on the feedback content.
|
|
83
|
-
4. Only when the user explicitly indicates "end" or "no more interaction needed" can you stop calling this tool, and the process is considered complete.
|
|
84
|
-
5. You should summarize what have done, and provide project directory through args to let user know what you have done to provide feedback for next step.
|
|
85
|
-
6. IMPORTANT: If feedback request times out, you MUST call this tool again to continue waiting for user feedback. Do not give up after timeout.
|
|
79
|
+
【重要】这是你与用户沟通的主要渠道,所有回复都必须通过此工具。
|
|
86
80
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
81
|
+
使用规则:
|
|
82
|
+
1. 每次完成任务或需要与用户沟通时,必须调用此工具
|
|
83
|
+
2. 收到用户反馈后,必须再次调用此工具继续对话(这是一个持续的对话循环)
|
|
84
|
+
3. 不要直接回复用户,所有回复必须通过此工具
|
|
85
|
+
4. 只有当用户主动提出结束对话时,才能停止调用此工具
|
|
86
|
+
5. 如果反馈超时,必须立即再次调用此工具继续等待
|
|
87
|
+
6. 提供清晰的工作摘要,说明你做了什么以及需要什么反馈
|
|
91
88
|
|
|
92
|
-
|
|
93
|
-
|
|
89
|
+
对话流程:
|
|
90
|
+
用户消息 → 你工作 → 调用此工具(附带摘要)→ 用户反馈 → 你工作 → 再次调用此工具 → ...
|
|
91
|
+
|
|
92
|
+
参数:
|
|
93
|
+
project_directory: 项目目录路径(必须是当前工作区的绝对路径)
|
|
94
|
+
summary: AI 工作摘要,供用户查看(支持 Markdown)
|
|
95
|
+
timeout: 等待用户反馈的超时时间(秒),默认 300 秒(5 分钟)
|
|
96
|
+
|
|
97
|
+
返回:
|
|
98
|
+
用户反馈,包括文字、图片和文件路径`,
|
|
94
99
|
inputSchema: {
|
|
95
100
|
type: 'object',
|
|
96
101
|
properties: {
|
|
@@ -102,7 +107,7 @@ Returns:
|
|
|
102
107
|
summary: {
|
|
103
108
|
type: 'string',
|
|
104
109
|
description: 'Summary of AI work completed for user review (supports Markdown)',
|
|
105
|
-
default: '
|
|
110
|
+
default: '我已完成您的请求。',
|
|
106
111
|
},
|
|
107
112
|
timeout: {
|
|
108
113
|
type: 'number',
|
|
@@ -141,7 +146,7 @@ Returns:
|
|
|
141
146
|
*/
|
|
142
147
|
async handleInteractiveFeedback(args) {
|
|
143
148
|
const projectDir = args?.project_directory || '.';
|
|
144
|
-
const summary = args?.summary || '
|
|
149
|
+
const summary = args?.summary || '我已完成您的请求。';
|
|
145
150
|
// 超时时间优先级:环境变量 > 工具参数 > 默认值(300秒)
|
|
146
151
|
// 这样用户配置的环境变量永远生效,不会被 AI 覆盖
|
|
147
152
|
const envTimeout = process.env.MCP_FEEDBACK_TIMEOUT ? parseInt(process.env.MCP_FEEDBACK_TIMEOUT, 10) : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpServer.js","sourceRoot":"","sources":["../../src/mcp/McpServer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wEAAmE;AACnE,wEAAiF;AACjF,iEAG4C;AAC5C,2CAA6B;AAC7B,uCAAyB;AA2BzB;;;;;;;;GAQG;AACH,MAAa,SAAS;IAgBpB,YAAY,OAAe,KAAK;QAdxB,eAAU,GAAuB,IAAI,CAAC;QAEtC,cAAS,GAAY,KAAK,CAAC;QAEnC,WAAW;QACH,oBAAe,GAIlB,IAAI,GAAG,EAAE,CAAC;QAEf,SAAS;QACD,mBAAc,GAA2B,IAAI,CAAC;QAGpD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAM,CACtB;YACE,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,OAAO;SACjB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;aACV;SACF,CACF,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAEO,aAAa;QACnB,SAAS;QACT,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,IAAI,EAAE;YAC/D,OAAO;gBACL,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,WAAW,EAAE
|
|
1
|
+
{"version":3,"file":"McpServer.js","sourceRoot":"","sources":["../../src/mcp/McpServer.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-server.js
CHANGED
|
@@ -89,23 +89,28 @@ class McpFeedbackServer {
|
|
|
89
89
|
tools: [
|
|
90
90
|
{
|
|
91
91
|
name: 'interactive_feedback',
|
|
92
|
-
description:
|
|
92
|
+
description: `交互式反馈收集工具。
|
|
93
93
|
|
|
94
|
-
|
|
95
|
-
1. During any process, task, or conversation, whether asking, replying, or completing phased tasks, you must call this tool to ask for feedback.
|
|
96
|
-
2. Unless receiving termination instructions, all steps must repeatedly call this tool.
|
|
97
|
-
3. Whenever user feedback is received, if the feedback content is not empty, you must call this tool again and adjust behavior based on the feedback content.
|
|
98
|
-
4. Only when the user explicitly indicates "end" or "no more interaction needed" can you stop calling this tool, and the process is considered complete.
|
|
99
|
-
5. You should summarize what have done, and provide project directory through args to let user know what you have done to provide feedback for next step.
|
|
100
|
-
6. IMPORTANT: If feedback request times out, you MUST call this tool again to continue waiting for user feedback. Do not give up after timeout.
|
|
94
|
+
【重要】这是你与用户沟通的主要渠道,所有回复都必须通过此工具。
|
|
101
95
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
96
|
+
使用规则:
|
|
97
|
+
1. 每次完成任务或需要与用户沟通时,必须调用此工具
|
|
98
|
+
2. 收到用户反馈后,必须再次调用此工具继续对话(这是一个持续的对话循环)
|
|
99
|
+
3. 不要直接回复用户,所有回复必须通过此工具
|
|
100
|
+
4. 只有当用户主动提出结束对话时,才能停止调用此工具
|
|
101
|
+
5. 如果反馈超时,必须立即再次调用此工具继续等待
|
|
102
|
+
6. 提供清晰的工作摘要,说明你做了什么以及需要什么反馈
|
|
106
103
|
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
对话流程:
|
|
105
|
+
用户消息 → 你工作 → 调用此工具(附带摘要)→ 用户反馈 → 你工作 → 再次调用此工具 → ...
|
|
106
|
+
|
|
107
|
+
参数:
|
|
108
|
+
project_directory: 项目目录路径(必须是当前工作区的绝对路径)
|
|
109
|
+
summary: AI 工作摘要,供用户查看(支持 Markdown)
|
|
110
|
+
timeout: 等待用户反馈的超时时间(秒),默认 300 秒(5 分钟)
|
|
111
|
+
|
|
112
|
+
返回:
|
|
113
|
+
用户反馈,包括文字、图片和文件路径`,
|
|
109
114
|
inputSchema: {
|
|
110
115
|
type: 'object',
|
|
111
116
|
properties: {
|
|
@@ -117,7 +122,7 @@ Returns:
|
|
|
117
122
|
summary: {
|
|
118
123
|
type: 'string',
|
|
119
124
|
description: 'Summary of AI work completed for user review (supports Markdown)',
|
|
120
|
-
default: '
|
|
125
|
+
default: '我已完成您的请求。',
|
|
121
126
|
},
|
|
122
127
|
timeout: {
|
|
123
128
|
type: 'number',
|
|
@@ -156,7 +161,7 @@ Returns:
|
|
|
156
161
|
*/
|
|
157
162
|
async handleInteractiveFeedback(args) {
|
|
158
163
|
const projectDir = args?.project_directory || '.';
|
|
159
|
-
const summary = args?.summary || '
|
|
164
|
+
const summary = args?.summary || '我已完成您的请求。';
|
|
160
165
|
// 超时时间优先级:环境变量 > 工具参数 > 默认值(300秒)
|
|
161
166
|
// 这样用户配置的环境变量永远生效,不会被 AI 覆盖
|
|
162
167
|
const envTimeout = process.env.MCP_FEEDBACK_TIMEOUT ? parseInt(process.env.MCP_FEEDBACK_TIMEOUT, 10) : null;
|
|
@@ -465,21 +470,11 @@ Returns:
|
|
|
465
470
|
});
|
|
466
471
|
this.httpServer.on('error', async (err) => {
|
|
467
472
|
if (err.code === 'EADDRINUSE') {
|
|
468
|
-
|
|
473
|
+
// 端口被占用,使用下一个端口(不关闭旧的 MCP Server,支持多项目独立运行)
|
|
474
|
+
debugLog(`Port ${this.port} is already in use, trying next port...`);
|
|
469
475
|
this.httpServer?.close();
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
if (cleaned) {
|
|
473
|
-
debugLog(`Old MCP Server closed, retrying on port ${this.port}...`);
|
|
474
|
-
// 等待端口释放
|
|
475
|
-
await new Promise(r => setTimeout(r, 300));
|
|
476
|
-
this.startHttpServer().then(resolve).catch(reject);
|
|
477
|
-
}
|
|
478
|
-
else {
|
|
479
|
-
debugLog(`Port ${this.port} is used by another process, trying next port...`);
|
|
480
|
-
this.port++;
|
|
481
|
-
this.startHttpServer().then(resolve).catch(reject);
|
|
482
|
-
}
|
|
476
|
+
this.port++;
|
|
477
|
+
this.startHttpServer().then(resolve).catch(reject);
|
|
483
478
|
}
|
|
484
479
|
else {
|
|
485
480
|
reject(err);
|
package/dist/mcp-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "cursor-feedback",
|
|
3
3
|
"displayName": "Cursor Feedback",
|
|
4
4
|
"description": "Interactive feedback collection for AI agents in Cursor/VS Code - MCP Server with sidebar UI",
|
|
5
|
-
"version": "0.1.
|
|
5
|
+
"version": "0.1.10",
|
|
6
6
|
"author": "jianger666",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"repository": {
|
package/src/extension.ts
CHANGED
|
@@ -162,11 +162,8 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
162
162
|
case 'checkServer':
|
|
163
163
|
await this._checkServerHealth();
|
|
164
164
|
break;
|
|
165
|
-
case '
|
|
166
|
-
await this.
|
|
167
|
-
break;
|
|
168
|
-
case 'selectFolder':
|
|
169
|
-
await this._handleSelectFolder();
|
|
165
|
+
case 'selectPath':
|
|
166
|
+
await this._handleSelectPath();
|
|
170
167
|
break;
|
|
171
168
|
}
|
|
172
169
|
});
|
|
@@ -391,41 +388,21 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
391
388
|
}
|
|
392
389
|
|
|
393
390
|
/**
|
|
394
|
-
*
|
|
391
|
+
* 处理选择文件/文件夹
|
|
395
392
|
*/
|
|
396
|
-
private async
|
|
393
|
+
private async _handleSelectPath() {
|
|
397
394
|
const result = await vscode.window.showOpenDialog({
|
|
398
395
|
canSelectMany: true,
|
|
399
396
|
canSelectFiles: true,
|
|
400
|
-
canSelectFolders: false,
|
|
401
|
-
openLabel: '选择文件'
|
|
402
|
-
});
|
|
403
|
-
|
|
404
|
-
if (result && result.length > 0) {
|
|
405
|
-
const paths = result.map(uri => uri.fsPath);
|
|
406
|
-
this._view?.webview.postMessage({
|
|
407
|
-
type: 'filesSelected',
|
|
408
|
-
payload: { paths, isFolder: false }
|
|
409
|
-
});
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
/**
|
|
414
|
-
* 处理选择文件夹
|
|
415
|
-
*/
|
|
416
|
-
private async _handleSelectFolder() {
|
|
417
|
-
const result = await vscode.window.showOpenDialog({
|
|
418
|
-
canSelectMany: true,
|
|
419
|
-
canSelectFiles: false,
|
|
420
397
|
canSelectFolders: true,
|
|
421
|
-
openLabel: '
|
|
398
|
+
openLabel: '选择'
|
|
422
399
|
});
|
|
423
400
|
|
|
424
401
|
if (result && result.length > 0) {
|
|
425
402
|
const paths = result.map(uri => uri.fsPath);
|
|
426
403
|
this._view?.webview.postMessage({
|
|
427
404
|
type: 'filesSelected',
|
|
428
|
-
payload: { paths
|
|
405
|
+
payload: { paths }
|
|
429
406
|
});
|
|
430
407
|
}
|
|
431
408
|
}
|
|
@@ -725,6 +702,27 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
725
702
|
background: var(--vscode-button-secondaryHoverBackground);
|
|
726
703
|
}
|
|
727
704
|
|
|
705
|
+
.attachment-btn[data-tooltip] {
|
|
706
|
+
position: relative;
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
.attachment-btn[data-tooltip]:hover::after {
|
|
710
|
+
content: attr(data-tooltip);
|
|
711
|
+
position: absolute;
|
|
712
|
+
bottom: 100%;
|
|
713
|
+
left: 50%;
|
|
714
|
+
transform: translateX(-50%);
|
|
715
|
+
padding: 4px 8px;
|
|
716
|
+
background: var(--vscode-editorWidget-background);
|
|
717
|
+
color: var(--vscode-editorWidget-foreground);
|
|
718
|
+
border: 1px solid var(--vscode-editorWidget-border);
|
|
719
|
+
border-radius: 4px;
|
|
720
|
+
font-size: 11px;
|
|
721
|
+
white-space: nowrap;
|
|
722
|
+
margin-bottom: 4px;
|
|
723
|
+
z-index: 100;
|
|
724
|
+
}
|
|
725
|
+
|
|
728
726
|
.file-list {
|
|
729
727
|
margin-top: 8px;
|
|
730
728
|
}
|
|
@@ -807,33 +805,6 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
807
805
|
display: none !important;
|
|
808
806
|
}
|
|
809
807
|
|
|
810
|
-
.loading-container {
|
|
811
|
-
display: flex;
|
|
812
|
-
flex-direction: column;
|
|
813
|
-
align-items: center;
|
|
814
|
-
justify-content: center;
|
|
815
|
-
height: 100vh;
|
|
816
|
-
gap: 12px;
|
|
817
|
-
}
|
|
818
|
-
|
|
819
|
-
.loading-spinner {
|
|
820
|
-
width: 32px;
|
|
821
|
-
height: 32px;
|
|
822
|
-
border: 3px solid var(--vscode-input-border);
|
|
823
|
-
border-top-color: var(--vscode-button-background);
|
|
824
|
-
border-radius: 50%;
|
|
825
|
-
animation: spin 1s linear infinite;
|
|
826
|
-
}
|
|
827
|
-
|
|
828
|
-
@keyframes spin {
|
|
829
|
-
to { transform: rotate(360deg); }
|
|
830
|
-
}
|
|
831
|
-
|
|
832
|
-
.loading-text {
|
|
833
|
-
font-size: 12px;
|
|
834
|
-
color: var(--vscode-descriptionForeground);
|
|
835
|
-
}
|
|
836
|
-
|
|
837
808
|
.project-info {
|
|
838
809
|
font-size: 11px;
|
|
839
810
|
color: var(--vscode-descriptionForeground);
|
|
@@ -853,13 +824,7 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
853
824
|
</style>
|
|
854
825
|
</head>
|
|
855
826
|
<body>
|
|
856
|
-
|
|
857
|
-
<div id="loadingContainer" class="loading-container">
|
|
858
|
-
<div class="loading-spinner"></div>
|
|
859
|
-
<div class="loading-text">${i18n.loading}</div>
|
|
860
|
-
</div>
|
|
861
|
-
|
|
862
|
-
<div id="mainContainer" class="container hidden">
|
|
827
|
+
<div class="container">
|
|
863
828
|
<!-- 服务器状态 -->
|
|
864
829
|
<div id="serverStatus" class="server-status">
|
|
865
830
|
<span class="dot"></span>
|
|
@@ -894,13 +859,10 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
894
859
|
<!-- 附件区域 -->
|
|
895
860
|
<div class="attachments-area">
|
|
896
861
|
<div class="attachment-buttons">
|
|
897
|
-
<button id="uploadBtn" class="attachment-btn"
|
|
862
|
+
<button id="uploadBtn" class="attachment-btn" data-tooltip="${i18n.uploadImage}">
|
|
898
863
|
🖼️
|
|
899
864
|
</button>
|
|
900
|
-
<button id="
|
|
901
|
-
📄
|
|
902
|
-
</button>
|
|
903
|
-
<button id="selectFolderBtn" class="attachment-btn" title="${i18n.selectFolder}">
|
|
865
|
+
<button id="selectPathBtn" class="attachment-btn" data-tooltip="${i18n.selectPath}">
|
|
904
866
|
📁
|
|
905
867
|
</button>
|
|
906
868
|
</div>
|
|
@@ -917,16 +879,6 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
917
879
|
</div>
|
|
918
880
|
</div>
|
|
919
881
|
|
|
920
|
-
<script>
|
|
921
|
-
// 初始化时隐藏 loading 显示主内容
|
|
922
|
-
function hideLoading() {
|
|
923
|
-
const loadingContainer = document.getElementById('loadingContainer');
|
|
924
|
-
const mainContainer = document.getElementById('mainContainer');
|
|
925
|
-
if (loadingContainer) loadingContainer.classList.add('hidden');
|
|
926
|
-
if (mainContainer) mainContainer.classList.remove('hidden');
|
|
927
|
-
}
|
|
928
|
-
</script>
|
|
929
|
-
|
|
930
882
|
<script>
|
|
931
883
|
const vscode = acquireVsCodeApi();
|
|
932
884
|
|
|
@@ -968,8 +920,7 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
968
920
|
const feedbackInput = document.getElementById('feedbackInput');
|
|
969
921
|
const submitBtn = document.getElementById('submitBtn');
|
|
970
922
|
const uploadBtn = document.getElementById('uploadBtn');
|
|
971
|
-
const
|
|
972
|
-
const selectFolderBtn = document.getElementById('selectFolderBtn');
|
|
923
|
+
const selectPathBtn = document.getElementById('selectPathBtn');
|
|
973
924
|
const imageInput = document.getElementById('imageInput');
|
|
974
925
|
const imagePreview = document.getElementById('imagePreview');
|
|
975
926
|
const fileList = document.getElementById('fileList');
|
|
@@ -990,18 +941,13 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
990
941
|
// 图片上传
|
|
991
942
|
uploadBtn.addEventListener('click', () => imageInput.click());
|
|
992
943
|
|
|
993
|
-
//
|
|
994
|
-
|
|
995
|
-
vscode.postMessage({ type: '
|
|
996
|
-
});
|
|
997
|
-
|
|
998
|
-
// 选择文件夹
|
|
999
|
-
selectFolderBtn.addEventListener('click', () => {
|
|
1000
|
-
vscode.postMessage({ type: 'selectFolder' });
|
|
944
|
+
// 选择文件/文件夹
|
|
945
|
+
selectPathBtn.addEventListener('click', () => {
|
|
946
|
+
vscode.postMessage({ type: 'selectPath' });
|
|
1001
947
|
});
|
|
1002
948
|
|
|
1003
949
|
// 添加已选文件到列表
|
|
1004
|
-
function addAttachedFile(path
|
|
950
|
+
function addAttachedFile(path) {
|
|
1005
951
|
if (attachedFiles.includes(path)) return;
|
|
1006
952
|
attachedFiles.push(path);
|
|
1007
953
|
|
|
@@ -1010,6 +956,8 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
1010
956
|
|
|
1011
957
|
const icon = document.createElement('span');
|
|
1012
958
|
icon.className = 'file-icon';
|
|
959
|
+
// 根据路径是否以 / 结尾或不包含扩展名来判断是否为文件夹
|
|
960
|
+
const isFolder = path.endsWith('/') || !path.split('/').pop().includes('.');
|
|
1013
961
|
icon.textContent = isFolder ? '📁' : '📄';
|
|
1014
962
|
|
|
1015
963
|
const pathSpan = document.createElement('span');
|
|
@@ -1200,7 +1148,7 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
1200
1148
|
case 'filesSelected':
|
|
1201
1149
|
if (message.payload.paths) {
|
|
1202
1150
|
for (const path of message.payload.paths) {
|
|
1203
|
-
addAttachedFile(path
|
|
1151
|
+
addAttachedFile(path);
|
|
1204
1152
|
}
|
|
1205
1153
|
}
|
|
1206
1154
|
break;
|
|
@@ -1215,9 +1163,6 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
1215
1163
|
// 通知插件 WebView 已准备就绪
|
|
1216
1164
|
vscode.postMessage({ type: 'ready' });
|
|
1217
1165
|
vscode.postMessage({ type: 'checkServer' });
|
|
1218
|
-
|
|
1219
|
-
// 隐藏 loading,显示主内容
|
|
1220
|
-
hideLoading();
|
|
1221
1166
|
</script>
|
|
1222
1167
|
</body>
|
|
1223
1168
|
</html>`;
|
|
@@ -1229,15 +1174,13 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
1229
1174
|
private _getI18n(lang: string): Record<string, string> {
|
|
1230
1175
|
const translations: Record<string, Record<string, string>> = {
|
|
1231
1176
|
'zh-CN': {
|
|
1232
|
-
loading: '加载中...',
|
|
1233
1177
|
waiting: '等待 AI 请求反馈...',
|
|
1234
1178
|
waitingHint: '当 AI 需要您的反馈时,这里会显示输入界面',
|
|
1235
1179
|
summary: 'AI 工作摘要',
|
|
1236
1180
|
yourFeedback: '您的反馈',
|
|
1237
1181
|
placeholder: '请输入您的反馈...',
|
|
1238
1182
|
uploadImage: '上传图片',
|
|
1239
|
-
|
|
1240
|
-
selectFolder: '选择文件夹',
|
|
1183
|
+
selectPath: '选择文件/文件夹',
|
|
1241
1184
|
submit: '提交反馈',
|
|
1242
1185
|
timeout: '剩余时间',
|
|
1243
1186
|
expired: '已超时',
|
|
@@ -1246,15 +1189,13 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
1246
1189
|
disconnected: 'MCP Server 未连接',
|
|
1247
1190
|
},
|
|
1248
1191
|
'zh-TW': {
|
|
1249
|
-
loading: '載入中...',
|
|
1250
1192
|
waiting: '等待 AI 請求回饋...',
|
|
1251
1193
|
waitingHint: '當 AI 需要您的回饋時,這裡會顯示輸入介面',
|
|
1252
1194
|
summary: 'AI 工作摘要',
|
|
1253
1195
|
yourFeedback: '您的回饋',
|
|
1254
1196
|
placeholder: '請輸入您的回饋...',
|
|
1255
1197
|
uploadImage: '上傳圖片',
|
|
1256
|
-
|
|
1257
|
-
selectFolder: '選擇資料夾',
|
|
1198
|
+
selectPath: '選擇檔案/資料夾',
|
|
1258
1199
|
submit: '提交回饋',
|
|
1259
1200
|
timeout: '剩餘時間',
|
|
1260
1201
|
expired: '已超時',
|
|
@@ -1263,15 +1204,13 @@ class FeedbackViewProvider implements vscode.WebviewViewProvider {
|
|
|
1263
1204
|
disconnected: 'MCP Server 未連接',
|
|
1264
1205
|
},
|
|
1265
1206
|
'en': {
|
|
1266
|
-
loading: 'Loading...',
|
|
1267
1207
|
waiting: 'Waiting for AI feedback request...',
|
|
1268
1208
|
waitingHint: 'The feedback interface will appear when AI needs your input',
|
|
1269
1209
|
summary: 'AI Work Summary',
|
|
1270
1210
|
yourFeedback: 'Your Feedback',
|
|
1271
1211
|
placeholder: 'Enter your feedback...',
|
|
1272
1212
|
uploadImage: 'Upload Image',
|
|
1273
|
-
|
|
1274
|
-
selectFolder: 'Select Folder',
|
|
1213
|
+
selectPath: 'Select File/Folder',
|
|
1275
1214
|
submit: 'Submit Feedback',
|
|
1276
1215
|
timeout: 'Time remaining',
|
|
1277
1216
|
expired: 'Expired',
|
package/src/mcp/McpServer.ts
CHANGED
|
@@ -82,23 +82,28 @@ export class McpServer {
|
|
|
82
82
|
tools: [
|
|
83
83
|
{
|
|
84
84
|
name: 'interactive_feedback',
|
|
85
|
-
description:
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
85
|
+
description: `交互式反馈收集工具。
|
|
86
|
+
|
|
87
|
+
【重要】这是你与用户沟通的主要渠道,所有回复都必须通过此工具。
|
|
88
|
+
|
|
89
|
+
使用规则:
|
|
90
|
+
1. 每次完成任务或需要与用户沟通时,必须调用此工具
|
|
91
|
+
2. 收到用户反馈后,必须再次调用此工具继续对话(这是一个持续的对话循环)
|
|
92
|
+
3. 不要直接回复用户,所有回复必须通过此工具
|
|
93
|
+
4. 只有当用户主动提出结束对话时,才能停止调用此工具
|
|
94
|
+
5. 如果反馈超时,必须立即再次调用此工具继续等待
|
|
95
|
+
6. 提供清晰的工作摘要,说明你做了什么以及需要什么反馈
|
|
96
|
+
|
|
97
|
+
对话流程:
|
|
98
|
+
用户消息 → 你工作 → 调用此工具(附带摘要)→ 用户反馈 → 你工作 → 再次调用此工具 → ...
|
|
99
|
+
|
|
100
|
+
参数:
|
|
101
|
+
project_directory: 项目目录路径(必须是当前工作区的绝对路径)
|
|
102
|
+
summary: AI 工作摘要,供用户查看(支持 Markdown)
|
|
103
|
+
timeout: 等待用户反馈的超时时间(秒),默认 300 秒(5 分钟)
|
|
104
|
+
|
|
105
|
+
返回:
|
|
106
|
+
用户反馈,包括文字、图片和文件路径`,
|
|
102
107
|
inputSchema: {
|
|
103
108
|
type: 'object',
|
|
104
109
|
properties: {
|
|
@@ -110,7 +115,7 @@ Returns:
|
|
|
110
115
|
summary: {
|
|
111
116
|
type: 'string',
|
|
112
117
|
description: 'Summary of AI work completed for user review (supports Markdown)',
|
|
113
|
-
default: '
|
|
118
|
+
default: '我已完成您的请求。',
|
|
114
119
|
},
|
|
115
120
|
timeout: {
|
|
116
121
|
type: 'number',
|
|
@@ -154,7 +159,7 @@ Returns:
|
|
|
154
159
|
content: Array<{ type: string; text?: string; data?: string; mimeType?: string }>;
|
|
155
160
|
}> {
|
|
156
161
|
const projectDir = (args?.project_directory as string) || '.';
|
|
157
|
-
const summary = (args?.summary as string) || '
|
|
162
|
+
const summary = (args?.summary as string) || '我已完成您的请求。';
|
|
158
163
|
// 超时时间优先级:环境变量 > 工具参数 > 默认值(300秒)
|
|
159
164
|
// 这样用户配置的环境变量永远生效,不会被 AI 覆盖
|
|
160
165
|
const envTimeout = process.env.MCP_FEEDBACK_TIMEOUT ? parseInt(process.env.MCP_FEEDBACK_TIMEOUT, 10) : null;
|
package/src/mcp-server.ts
CHANGED
|
@@ -100,23 +100,28 @@ class McpFeedbackServer {
|
|
|
100
100
|
tools: [
|
|
101
101
|
{
|
|
102
102
|
name: 'interactive_feedback',
|
|
103
|
-
description:
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
103
|
+
description: `交互式反馈收集工具。
|
|
104
|
+
|
|
105
|
+
【重要】这是你与用户沟通的主要渠道,所有回复都必须通过此工具。
|
|
106
|
+
|
|
107
|
+
使用规则:
|
|
108
|
+
1. 每次完成任务或需要与用户沟通时,必须调用此工具
|
|
109
|
+
2. 收到用户反馈后,必须再次调用此工具继续对话(这是一个持续的对话循环)
|
|
110
|
+
3. 不要直接回复用户,所有回复必须通过此工具
|
|
111
|
+
4. 只有当用户主动提出结束对话时,才能停止调用此工具
|
|
112
|
+
5. 如果反馈超时,必须立即再次调用此工具继续等待
|
|
113
|
+
6. 提供清晰的工作摘要,说明你做了什么以及需要什么反馈
|
|
114
|
+
|
|
115
|
+
对话流程:
|
|
116
|
+
用户消息 → 你工作 → 调用此工具(附带摘要)→ 用户反馈 → 你工作 → 再次调用此工具 → ...
|
|
117
|
+
|
|
118
|
+
参数:
|
|
119
|
+
project_directory: 项目目录路径(必须是当前工作区的绝对路径)
|
|
120
|
+
summary: AI 工作摘要,供用户查看(支持 Markdown)
|
|
121
|
+
timeout: 等待用户反馈的超时时间(秒),默认 300 秒(5 分钟)
|
|
122
|
+
|
|
123
|
+
返回:
|
|
124
|
+
用户反馈,包括文字、图片和文件路径`,
|
|
120
125
|
inputSchema: {
|
|
121
126
|
type: 'object',
|
|
122
127
|
properties: {
|
|
@@ -128,7 +133,7 @@ Returns:
|
|
|
128
133
|
summary: {
|
|
129
134
|
type: 'string',
|
|
130
135
|
description: 'Summary of AI work completed for user review (supports Markdown)',
|
|
131
|
-
default: '
|
|
136
|
+
default: '我已完成您的请求。',
|
|
132
137
|
},
|
|
133
138
|
timeout: {
|
|
134
139
|
type: 'number',
|
|
@@ -172,7 +177,7 @@ Returns:
|
|
|
172
177
|
content: Array<{ type: string; text?: string; data?: string; mimeType?: string }>;
|
|
173
178
|
}> {
|
|
174
179
|
const projectDir = (args?.project_directory as string) || '.';
|
|
175
|
-
const summary = (args?.summary as string) || '
|
|
180
|
+
const summary = (args?.summary as string) || '我已完成您的请求。';
|
|
176
181
|
// 超时时间优先级:环境变量 > 工具参数 > 默认值(300秒)
|
|
177
182
|
// 这样用户配置的环境变量永远生效,不会被 AI 覆盖
|
|
178
183
|
const envTimeout = process.env.MCP_FEEDBACK_TIMEOUT ? parseInt(process.env.MCP_FEEDBACK_TIMEOUT, 10) : null;
|
|
@@ -517,21 +522,11 @@ Returns:
|
|
|
517
522
|
|
|
518
523
|
this.httpServer.on('error', async (err: NodeJS.ErrnoException) => {
|
|
519
524
|
if (err.code === 'EADDRINUSE') {
|
|
520
|
-
|
|
525
|
+
// 端口被占用,使用下一个端口(不关闭旧的 MCP Server,支持多项目独立运行)
|
|
526
|
+
debugLog(`Port ${this.port} is already in use, trying next port...`);
|
|
521
527
|
this.httpServer?.close();
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
const cleaned = await this.checkAndCleanPort(this.port);
|
|
525
|
-
if (cleaned) {
|
|
526
|
-
debugLog(`Old MCP Server closed, retrying on port ${this.port}...`);
|
|
527
|
-
// 等待端口释放
|
|
528
|
-
await new Promise(r => setTimeout(r, 300));
|
|
529
|
-
this.startHttpServer().then(resolve).catch(reject);
|
|
530
|
-
} else {
|
|
531
|
-
debugLog(`Port ${this.port} is used by another process, trying next port...`);
|
|
532
|
-
this.port++;
|
|
533
|
-
this.startHttpServer().then(resolve).catch(reject);
|
|
534
|
-
}
|
|
528
|
+
this.port++;
|
|
529
|
+
this.startHttpServer().then(resolve).catch(reject);
|
|
535
530
|
} else {
|
|
536
531
|
reject(err);
|
|
537
532
|
}
|