cursor-feedback 1.1.1 → 2.0.0
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/CHANGELOG.md +14 -0
- package/README.md +48 -4
- package/README_CN.md +48 -4
- package/dist/extension.js +546 -53
- package/dist/feishu.js +667 -0
- package/dist/i18n/en.json +49 -7
- package/dist/i18n/index.js +46 -4
- package/dist/i18n/zh-CN.json +49 -7
- package/dist/mcp-server.js +514 -20
- package/dist/webview/index.html +193 -43
- package/dist/webview/script.js +795 -145
- package/dist/webview/styles.css +921 -298
- package/package.json +38 -1
- package/.github/workflows/release-please.yml +0 -19
- package/.husky/pre-commit +0 -2
- package/.husky/pre-push +0 -1
- package/.versionrc.json +0 -15
- package/.vscode/launch.json +0 -28
- package/.vscode/tasks.json +0 -22
- package/.vscodeignore +0 -11
- package/demo.gif +0 -0
- package/dist/extension.js.map +0 -1
- package/dist/i18n/index.js.map +0 -1
- package/dist/mcp-server.js.map +0 -1
- package/icon.png +0 -0
- package/mcp-install-dark.png +0 -0
- package/resources/icon.svg +0 -4
- package/resources/vendor/marked.min.js +0 -69
- package/scripts/check-changelog.js +0 -42
- package/src/extension.ts +0 -692
- package/src/i18n/en.json +0 -34
- package/src/i18n/index.ts +0 -131
- package/src/i18n/zh-CN.json +0 -34
- package/src/mcp-server.ts +0 -768
- package/src/webview/index.html +0 -69
- package/src/webview/script.js +0 -318
- package/src/webview/styles.css +0 -422
- package/tsconfig.json +0 -17
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [2.0.0](https://github.com/jianger666/cursor-feedback-extension/compare/v1.1.1...v2.0.0) (2026-06-20)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* 飞书通知打通、通知设置重构与多窗口配置同步 ([fcd536e](https://github.com/jianger666/cursor-feedback-extension/commit/fcd536e295ea2a97250e2eb5c77dec6897e51d60))
|
|
11
|
+
|
|
12
|
+
## [1.2.0](https://github.com/jianger666/cursor-feedback-extension/compare/v1.1.1...v1.2.0) (2026-06-12)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* 新增系统级通知:AI 请求反馈且 IDE 窗口未聚焦时,弹出系统原生通知(macOS / Windows / Linux),避免离开时错过反馈请求导致超时;新增 `cursorFeedback.systemNotification` 与 `cursorFeedback.notificationSound` 配置项
|
|
18
|
+
|
|
5
19
|
### [1.1.1](https://github.com/jianger666/cursor-feedback-extension/compare/v1.1.0...v1.1.1) (2026-06-02)
|
|
6
20
|
|
|
7
21
|
|
package/README.md
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
[](https://open-vsx.org/extension/jianger666/cursor-feedback)
|
|
7
7
|
[](https://www.npmjs.com/package/cursor-feedback)
|
|
8
8
|
|
|
9
|
-
**One
|
|
9
|
+
**One conversation, unlimited AI interactions** - If you're on a per-request plan, it saves your monthly quota; plus it bridges your agent tool with Feishu (Lark) — when AI asks for feedback, it's pushed to Feishu and you can reply from your phone. An interactive feedback tool built on MCP (Model Context Protocol).
|
|
10
10
|
|
|
11
11
|

|
|
12
12
|
|
|
13
13
|
## 💡 Why Cursor Feedback?
|
|
14
14
|
|
|
15
|
-
If you're on Cursor's 500 requests/month plan, every conversation counts. With Cursor Feedback:
|
|
15
|
+
If you're on Cursor's 500 requests/month plan or another coding plan, every conversation counts. With Cursor Feedback:
|
|
16
16
|
|
|
17
17
|
- **One conversation, unlimited interactions** - Keep chatting without consuming extra quota
|
|
18
18
|
- **Human-in-the-loop workflow** - AI waits for your feedback before proceeding
|
|
@@ -26,6 +26,7 @@ If you're on Cursor's 500 requests/month plan, every conversation counts. With C
|
|
|
26
26
|
- 📁 **File Support** - Select files/folders to share paths with AI
|
|
27
27
|
- 📝 **Markdown Rendering** - Full Markdown support for AI summaries
|
|
28
28
|
- ⏱️ **Auto-retry on Timeout** - 5-minute default timeout, AI automatically re-requests
|
|
29
|
+
- 🔔 **Feishu (Lark) Bridge** - When AI requests feedback, the summary is pushed to Feishu so you can reply right from your phone
|
|
29
30
|
- 🌍 **Multi-language** - Supports English, Simplified Chinese, Traditional Chinese
|
|
30
31
|
- 🔒 **Project Isolation** - Multiple windows work independently
|
|
31
32
|
|
|
@@ -115,7 +116,7 @@ Interactive feedback collection tool.
|
|
|
115
116
|
|
|
116
117
|
| Parameter | Type | Default | Description |
|
|
117
118
|
|-----------|------|---------|-------------|
|
|
118
|
-
| `project_directory` | string |
|
|
119
|
+
| `project_directory` | string | required | Absolute path of the project workspace you are currently in (the open workspace; for multi-window isolation) |
|
|
119
120
|
| `summary` | string | `I have completed the task you requested.` | AI work summary (supports Markdown) |
|
|
120
121
|
| `timeout` | number | `300` | Timeout in seconds (default 5 minutes) |
|
|
121
122
|
|
|
@@ -150,6 +151,18 @@ Available languages:
|
|
|
150
151
|
- `zh-CN` - Simplified Chinese (简体中文)
|
|
151
152
|
- `en` - English
|
|
152
153
|
|
|
154
|
+
### Notification Settings
|
|
155
|
+
|
|
156
|
+
Click the "Notification settings" icon at the top of the feedback panel to configure in-app and Feishu notifications, or adjust them in VS Code settings:
|
|
157
|
+
|
|
158
|
+
| Setting | Type | Default | Description |
|
|
159
|
+
|---------|------|---------|-------------|
|
|
160
|
+
| `cursorFeedback.systemNotification` | boolean | `true` | In-app notifications (main switch): automatically show the feedback panel when AI requests feedback. When off, this window stays fully silent — no panel, no focus stealing, and nothing pushed here |
|
|
161
|
+
| `cursorFeedback.osNotification` | boolean | `true` | Notify when in background (sub-option): fire a native system notification only when the IDE window is not focused. When off, nothing pops even if you switch away (the panel still shows) |
|
|
162
|
+
| `cursorFeedback.notificationSound` | boolean | `true` | Play a sound with the system notification |
|
|
163
|
+
|
|
164
|
+
> macOS note: notifications are sent via `osascript`. If you don't see them, allow notifications for "Script Editor" in System Settings → Notifications.
|
|
165
|
+
|
|
153
166
|
### MCP Server Configuration
|
|
154
167
|
|
|
155
168
|
Basic config:
|
|
@@ -184,7 +197,38 @@ Custom timeout (optional, default 5 minutes):
|
|
|
184
197
|
| Environment Variable | Default | Description |
|
|
185
198
|
|---------------------|---------|-------------|
|
|
186
199
|
| `MCP_FEEDBACK_TIMEOUT` | `300` | Timeout in seconds (default 5 minutes) |
|
|
187
|
-
| `MCP_AUTO_RETRY` | `true` | Whether AI should auto-retry on timeout. Set to `false` to disable |
|
|
200
|
+
| `MCP_AUTO_RETRY` | `true` | Whether AI should auto-retry on timeout. Set to `false` to disable. Also toggleable via the "Keep-waiting" switch in the panel (priority: panel > env > default) |
|
|
201
|
+
|
|
202
|
+
### Feishu Notifications
|
|
203
|
+
|
|
204
|
+
Either way works (see the [Feishu setup guide](./docs/feishu-setup.md)):
|
|
205
|
+
|
|
206
|
+
- **On Cursor**: fill in Feishu credentials via the "Notification settings" icon at the top of the panel.
|
|
207
|
+
- **On other MCP hosts** (agent tools without this panel): configure through `env` in `mcp.json`:
|
|
208
|
+
|
|
209
|
+
```json
|
|
210
|
+
{
|
|
211
|
+
"mcpServers": {
|
|
212
|
+
"cursor-feedback": {
|
|
213
|
+
"command": "npx",
|
|
214
|
+
"args": ["-y", "cursor-feedback@latest"],
|
|
215
|
+
"env": {
|
|
216
|
+
"FEISHU_APP_ID": "cli_xxxxxxxx",
|
|
217
|
+
"FEISHU_APP_SECRET": "your_app_secret"
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
| Environment Variable | Default | Description |
|
|
225
|
+
|---------------------|---------|-------------|
|
|
226
|
+
| `FEISHU_APP_ID` | - | Feishu app App ID (e.g. `cli_xxxxxxxx`) |
|
|
227
|
+
| `FEISHU_APP_SECRET` | - | Feishu app App Secret |
|
|
228
|
+
| `FEISHU_ENABLED` | `true` | Whether to push feedback to Feishu. Set to `false` to disable |
|
|
229
|
+
| `FEISHU_ACK` | `true` | Whether to react with a "Get" emoji after you reply. Set to `false` to disable |
|
|
230
|
+
|
|
231
|
+
> Priority: **panel config (when credentials are filled) > env here > default**. The panel wins when App ID/Secret are filled; otherwise it falls back to env. You still need to send the bot one message in Feishu to complete binding.
|
|
188
232
|
|
|
189
233
|
## 🏗️ Architecture
|
|
190
234
|
|
package/README_CN.md
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
[](https://open-vsx.org/extension/jianger666/cursor-feedback)
|
|
7
7
|
[](https://www.npmjs.com/package/cursor-feedback)
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
**一次对话,无限 AI 交互** - 如果你是按次计费的用户,它能帮你省下月度请求配额;还能把你的 Agent 工具和飞书打通——AI 请求反馈时推到飞书,你在手机上就能回。基于 MCP(Model Context Protocol)的交互式反馈工具。
|
|
10
10
|
|
|
11
11
|

|
|
12
12
|
|
|
13
13
|
## 💡 为什么选择 Cursor Feedback?
|
|
14
14
|
|
|
15
|
-
如果你使用的是 Cursor 的 500次/月
|
|
15
|
+
如果你使用的是 Cursor 的 500次/月 计划或其它 coding plan,每次对话都很珍贵。使用 Cursor Feedback:
|
|
16
16
|
|
|
17
17
|
- **一次对话,无限交互** - 持续聊天而不消耗额外配额
|
|
18
18
|
- **人机协作工作流** - AI 等待你的反馈后再继续
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
- 📁 **文件支持** - 支持选择文件/文件夹,将路径告诉 AI 让其读取
|
|
29
29
|
- 📝 **Markdown 渲染** - AI 摘要支持完整的 Markdown 格式
|
|
30
30
|
- ⏱️ **超时自动重试** - 默认 5 分钟超时,超时后 AI 会自动重新请求反馈
|
|
31
|
+
- 🔔 **飞书打通** - AI 请求反馈时把摘要推送到飞书,你直接在手机上回复,不用守在电脑前
|
|
31
32
|
- 🌍 **多语言支持** - 支持简体中文、繁体中文和英文
|
|
32
33
|
- 🔒 **项目隔离** - 多窗口同时使用时,各项目互不干扰
|
|
33
34
|
|
|
@@ -117,7 +118,7 @@ npm install -g cursor-feedback
|
|
|
117
118
|
|
|
118
119
|
| 参数 | 类型 | 默认值 | 描述 |
|
|
119
120
|
|------|------|--------|------|
|
|
120
|
-
| `project_directory` | string |
|
|
121
|
+
| `project_directory` | string | 必填 | 当前所在项目空间的根目录绝对路径(你打开的工作区;用于多窗口隔离) |
|
|
121
122
|
| `summary` | string | `I have completed the task you requested.` | AI 工作摘要(支持 Markdown) |
|
|
122
123
|
| `timeout` | number | `300` | 超时时间(秒),默认 5 分钟 |
|
|
123
124
|
|
|
@@ -152,6 +153,18 @@ npm install -g cursor-feedback
|
|
|
152
153
|
- `zh-CN` - 简体中文
|
|
153
154
|
- `en` - English
|
|
154
155
|
|
|
156
|
+
### 通知设置
|
|
157
|
+
|
|
158
|
+
在反馈面板顶部点「通知设置」图标即可配置插件通知与飞书通知,也可在 VS Code 设置里调整:
|
|
159
|
+
|
|
160
|
+
| 设置 | 类型 | 默认值 | 描述 |
|
|
161
|
+
|------|------|--------|------|
|
|
162
|
+
| `cursorFeedback.systemNotification` | boolean | `true` | 插件通知(主开关):AI 请求反馈时自动弹出反馈面板。关闭后本窗口完全静默——不弹面板、不抢焦点、也不推送消息到本窗口 |
|
|
163
|
+
| `cursorFeedback.osNotification` | boolean | `true` | 切到后台时提醒(子项):IDE 窗口未聚焦时才弹系统原生通知。关闭后即使切走也不弹(面板照常弹出) |
|
|
164
|
+
| `cursorFeedback.notificationSound` | boolean | `true` | 系统通知附带提示音 |
|
|
165
|
+
|
|
166
|
+
> macOS 说明:通知通过 `osascript` 发送。如果看不到通知,请在 系统设置 → 通知 中允许"脚本编辑器"(Script Editor)发送通知。
|
|
167
|
+
|
|
155
168
|
### MCP Server 配置示例
|
|
156
169
|
|
|
157
170
|
基本配置:
|
|
@@ -188,7 +201,38 @@ npm install -g cursor-feedback
|
|
|
188
201
|
| `MCP_FEEDBACK_TIMEOUT` | `300` | 超时时间(秒),默认 5 分钟 |
|
|
189
202
|
| `MCP_AUTO_RETRY` | `true` | 超时后是否提示 AI 自动重试。设为 `false` 可禁用自动重试指示 |
|
|
190
203
|
|
|
191
|
-
>
|
|
204
|
+
> **超时续期**:超时后默认返回续期提示,AI 会自动再次调用 feedback 继续等待;不想自动续期可设 `MCP_AUTO_RETRY=false`。也可在反馈面板顶部「超时续期」开关随时切换(优先级:面板 > env > 默认开)。
|
|
205
|
+
|
|
206
|
+
### 飞书通知配置
|
|
207
|
+
|
|
208
|
+
两种方式都行(详见[飞书配置教程](./docs/feishu-setup.md)):
|
|
209
|
+
|
|
210
|
+
- **用 Cursor**:在插件面板顶部「通知设置」图标里填飞书凭证。
|
|
211
|
+
- **用其他 MCP host**(没有这个插件面板的 Agent 工具):在 `mcp.json` 的 `env` 里配置:
|
|
212
|
+
|
|
213
|
+
```json
|
|
214
|
+
{
|
|
215
|
+
"mcpServers": {
|
|
216
|
+
"cursor-feedback": {
|
|
217
|
+
"command": "npx",
|
|
218
|
+
"args": ["-y", "cursor-feedback@latest"],
|
|
219
|
+
"env": {
|
|
220
|
+
"FEISHU_APP_ID": "cli_xxxxxxxx",
|
|
221
|
+
"FEISHU_APP_SECRET": "your_app_secret"
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
| 环境变量 | 默认值 | 描述 |
|
|
229
|
+
|---------|--------|------|
|
|
230
|
+
| `FEISHU_APP_ID` | - | 飞书应用 App ID(形如 `cli_xxxxxxxx`) |
|
|
231
|
+
| `FEISHU_APP_SECRET` | - | 飞书应用 App Secret |
|
|
232
|
+
| `FEISHU_ENABLED` | `true` | 是否推送反馈到飞书,设 `false` 关闭 |
|
|
233
|
+
| `FEISHU_ACK` | `true` | 收到你的回复后是否回「Get」表情回执,设 `false` 关闭 |
|
|
234
|
+
|
|
235
|
+
> 优先级:**插件面板(填了凭证)> 这里的 env > 默认**。面板里填了 App ID/Secret 就以面板为准;没填则回退到 env。首次仍需在飞书里给机器人发一条消息完成绑定。
|
|
192
236
|
|
|
193
237
|
## 🏗️ 架构
|
|
194
238
|
|