@mushi-mushi/plugin-cursor-cloud 0.6.1 → 0.6.3

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.
Files changed (3) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +43 -27
  3. package/package.json +3 -3
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 Kenji Sakuramoto
3
+ Copyright (c) 2026 Kenji Sakuramoto / Kensaurus 合同会社
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -2,21 +2,37 @@
2
2
 
3
3
  > **Your AI wrote it. Mushi tells you why it broke.**
4
4
 
5
- Part of the Mushi Mushi monorepo — plain-English bug comprehension for vibe coders.
6
-
7
-
8
5
  [![npm](https://img.shields.io/npm/v/@mushi-mushi/plugin-cursor-cloud)](https://www.npmjs.com/package/@mushi-mushi/plugin-cursor-cloud)
9
6
  [![license](https://img.shields.io/npm/l/@mushi-mushi/plugin-cursor-cloud)](./LICENSE)
10
7
  [![types](https://img.shields.io/npm/types/@mushi-mushi/plugin-cursor-cloud)](./src/index.ts)
11
8
 
12
- > Mushi Mushi plugin: dispatch a [Cursor Cloud Agent](https://cursor.com/docs/cloud-agent/api/endpoints) when a critical bug is classified or a fix is requested. The agent investigates, opens a draft PR, and reports back through the Cursor REST API (**v1**).
9
+ Starts a [Cursor Cloud Agent](https://cursor.com/docs/cloud-agent/api/endpoints)
10
+ on your repo when Mushi triages a critical bug or a fix is requested. The
11
+ agent investigates and opens a draft PR for you to review.
12
+
13
+ **Do you need this package?** No, if you use Mushi Cloud. Mushi starts
14
+ Cursor agents itself: add your Cursor API key on the **Integrations** page
15
+ (Cursor Cloud card) and send any report to Cursor, or install **Cursor Cloud
16
+ Agent** from the Marketplace page to start agents automatically. Either way
17
+ Mushi calls Cursor's API directly and never sends events to this package. It is
18
+ only for running the dispatch from your own server, for example next to a
19
+ self-hosted Mushi.
13
20
 
14
- This is the **opt-in marketplace** path. Teams install it in the Mushi admin
15
- console, configure their Cursor API key + repo URL, and pick a severity
16
- threshold. For the **project-wide default** Cursor agent path (no plugin
17
- install needed) set `autofix_agent = 'cursor_cloud'` in the Mushi console —
18
- Mushi's own fix-worker then dispatches every fix through the same v1 API,
19
- polls it to completion, and closes the loop on the draft PR.
21
+ ```bash
22
+ npm i @mushi-mushi/plugin-cursor-cloud @mushi-mushi/plugin-sdk
23
+ ```
24
+
25
+ ```ts
26
+ import { createCursorCloudPlugin } from '@mushi-mushi/plugin-cursor-cloud'
27
+
28
+ const handler = createCursorCloudPlugin({
29
+ apiKey: process.env.CURSOR_API_KEY!,
30
+ webhookSecret: process.env.MUSHI_PLUGIN_WEBHOOK_SECRET!,
31
+ repoUrl: 'https://github.com/your-org/your-repo',
32
+ })
33
+ ```
34
+
35
+ Docs: https://kensaur.us/mushi-mushi/docs/plugins/cursor-cloud
20
36
 
21
37
  ## Why this exists
22
38
 
@@ -32,12 +48,12 @@ Mushi report → classify-report → report.classified (severity=critical)
32
48
  → @mushi-mushi/plugin-cursor-cloud
33
49
  → POST https://api.cursor.com/v1/agents
34
50
  → Cursor cloud agent investigates → opens draft PR
35
- → audit log to Mushi console
51
+ → one log line on your server
36
52
  ```
37
53
 
38
54
  ## Spend safety
39
55
 
40
- This plugin spends real Cursor API credit. Three hard guards are baked in:
56
+ This plugin spends real Cursor API credit. Four guards are built in:
41
57
 
42
58
  1. **Severity gate** — defaults to `critical` only. Set
43
59
  `severityThreshold: 'low'` to widen, but think before doing so.
@@ -52,12 +68,6 @@ This plugin spends real Cursor API credit. Three hard guards are baked in:
52
68
  report to Cursor (`autofix_agent = 'cursor_cloud'`), the `fix.requested`
53
69
  payload carries `data.fix.externalAgentId` and this plugin logs and skips.
54
70
 
55
- ## Install
56
-
57
- ```bash
58
- pnpm add @mushi-mushi/plugin-cursor-cloud @mushi-mushi/plugin-sdk
59
- ```
60
-
61
71
  ## Use
62
72
 
63
73
  ```ts
@@ -76,11 +86,17 @@ const handler = createCursorCloudPlugin({
76
86
  autoCreatePR: true,
77
87
  })
78
88
 
79
- // Wire to your serverless platform — Mushi calls handler with a Standard
80
- // Webhooks-signed POST body.
89
+ // `handler({ rawBody, headers })` returns `{ status, body }`. Mount it with
90
+ // expressMiddleware from '@mushi-mushi/plugin-sdk/express' or honoHandler
91
+ // from '@mushi-mushi/plugin-sdk/hono'.
81
92
  export default handler
82
93
  ```
83
94
 
95
+ For `skill_pipeline.step.dispatched`, set `MUSHI_API_KEY` and
96
+ `MUSHI_API_URL` (your Mushi API base, e.g.
97
+ `https://dxptnwrhwsqckaftyymj.supabase.co/functions/v1/api`) so the plugin
98
+ can check the step back in. Without `MUSHI_API_KEY` the step stays `running`.
99
+
84
100
  ## Configuration
85
101
 
86
102
  | Field | Type | Required | Default | Description |
@@ -126,7 +142,7 @@ for the push webhook (its `cursor-webhook` edge function verifies the
126
142
  signature); this npm plugin has no completion tracking of its own and uses
127
143
  v1 only.
128
144
 
129
- ## ⚠️ Breaking change in v0.3.0 — `webhookSecret` required
145
+ ## Breaking change in v0.3.0 — `webhookSecret` required
130
146
 
131
147
  Previous versions derived the HMAC secret from `workspaceId` internally,
132
148
  which was trivially forgeable. From v0.3.0 onward you **must** supply
@@ -141,18 +157,18 @@ which was trivially forgeable. From v0.3.0 onward you **must** supply
141
157
  })
142
158
  ```
143
159
 
144
- The secret is the same Standard Webhooks HMAC key Mushi signs outbound
145
- events with. Find it in Admin → Integrations → Cursor Cloud → Webhook secret.
160
+ The secret is the signing secret of the webhook plugin that sends this
161
+ server its events (the value set when that plugin is installed).
146
162
 
147
- ## Audit log
163
+ ## Log line
148
164
 
149
- Every dispatch writes a structured audit line:
165
+ Every dispatch writes one line to your server's log:
150
166
 
151
167
  ```
152
168
  [cursor-cloud] dispatched {"agentId":"agent_…","reportId":"…","model":"composer-2.5"}
153
169
  ```
154
170
 
155
- Subscribe to the Mushi `plugin.dispatched` audit stream to track spend.
171
+ Mushi does not see these dispatches; check spend on your Cursor dashboard.
156
172
 
157
173
  ## Tests
158
174
 
@@ -177,4 +193,4 @@ MIT — see [LICENSE](./LICENSE).
177
193
  <!-- mushi-readme-stats-footer -->
178
194
  ---
179
195
 
180
- <sub>Monorepo scale (July 2026): 59 edge functions · 374 SQL migrations · 13 outbound plugins · 11 inbound adapters · 19 pipeline agents. Canonical counts: <a href="https://github.com/kensaurus/mushi-mushi/blob/master/docs/stats.md">docs/stats.md</a> · <code>pnpm docs-stats</code></sub>
196
+ <sub>Monorepo scale (July 2026): 76 edge functions · 509 SQL migrations · 13 outbound plugins · 11 inbound adapters · 19 pipeline agents. Canonical counts: <a href="https://github.com/kensaurus/mushi-mushi/blob/master/docs/stats.md">docs/stats.md</a> · <code>pnpm docs-stats</code></sub>
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@mushi-mushi/plugin-cursor-cloud",
3
- "version": "0.6.1",
3
+ "version": "0.6.3",
4
4
  "license": "MIT",
5
- "description": "Mushi Mushi plugin: dispatch a Cursor Cloud Agent when a critical bug is classified or a QA story fails — opens a signed draft PR automatically.",
5
+ "description": "Mushi Mushi plugin for Cursor — starts a Cursor Cloud Agent that opens a draft PR when a critical bug is triaged. Self-hosted; Mushi Cloud starts Cursor agents natively.",
6
6
  "type": "module",
7
7
  "exports": {
8
8
  ".": {
@@ -18,7 +18,7 @@
18
18
  "LICENSE"
19
19
  ],
20
20
  "dependencies": {
21
- "@mushi-mushi/plugin-sdk": "^0.8.1"
21
+ "@mushi-mushi/plugin-sdk": "^0.9.1"
22
22
  },
23
23
  "devDependencies": {
24
24
  "@types/node": "^22.20.0",