@insitue/claude-plugin 0.6.1 → 0.6.2

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "insitue",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "description": "Drive a Claude Code session from the InSitue browser overlay. Pick an element in your app, claude reads the file and proposes the edit.",
5
5
  "mcpServers": {
6
6
  "insitue": {
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # @insitue/claude-plugin
2
2
 
3
+ ## 0.6.2
4
+
5
+ - **Echo the request before fixing.** The cloud-issue instructions (connect.md + the `claim_cloud_issue` tool) now require Claude to print the exact request verbatim ("Fixing locally: …") before any analysis or edits, so you always see what it's about to act on.
6
+
3
7
  ## 0.6.1
4
8
 
5
9
  - **Fix: refuse to reuse a stale companion.** `ensureCompanion` now checks a reachable companion's version via the handshake and, if it is older than the cloud-feature floor (0.7.0), tears it down and spawns the current one — instead of silently attaching to a stale companion left on the port.
@@ -160,8 +160,14 @@ action.
160
160
  **Typical loop:**
161
161
 
162
162
  1. `list_cloud_issues` → pick an issue with the user.
163
- 2. `claim_cloud_issue <id>` → read `source.file` around `source.line`,
164
- understand the repro from `note` + `consoleErrors`, make the fix.
163
+ 2. `claim_cloud_issue <id>` → **before doing anything else**, echo the
164
+ exact request verbatim to the developer:
165
+
166
+ > **Fixing locally:** [verbatim `note` from the claim response]
167
+ > (Source: `source.file:source.line`)
168
+
169
+ Then read `source.file` around `source.line`, understand the repro
170
+ from `note` + `consoleErrors`, make the fix.
165
171
  3. Open a PR.
166
172
  4. `resolve_cloud_issue <id> <prUrl>`.
167
173
 
@@ -169,6 +175,18 @@ The cloud-issue workflow follows the same guardrails as browser picks:
169
175
  never auto-apply writes, always wait for explicit user approval before
170
176
  editing files.
171
177
 
178
+ **Echo guardrail (cloud-issue path).** Mirroring the pick-loop rule
179
+ ("Always echo the prompt back first"): after a successful
180
+ `claim_cloud_issue`, the FIRST thing you output to the developer MUST
181
+ be the exact issue `note` in the format above — verbatim, not
182
+ paraphrased. The CLI transcript only shows your output, not the
183
+ dashboard description the reporter wrote. Without the echo the
184
+ developer cannot confirm you're acting on the right issue before edits
185
+ begin. Note: when an issue arrives via the browser "Fix locally"
186
+ button it flows through the normal pick loop and the existing
187
+ pick-echo rule already applies — but the same requirement holds when
188
+ you claim via the cloud-issue tool path directly.
189
+
172
190
  ## Failure modes to handle gracefully
173
191
 
174
192
  - **`source.file` doesn't exist**: tell the user the path the
@@ -999,7 +999,7 @@ server.registerTool(
999
999
  source,
1000
1000
  url,
1001
1001
  consoleErrors,
1002
- instructions: "Read the source file around the line, reproduce the issue from the description, make the fix, open a PR, then call resolve_cloud_issue with the PR url."
1002
+ instructions: 'FIRST, echo the exact issue note verbatim to the developer before any analysis or edits: output "**Fixing locally:** <note>" followed by "(Source: <file>:<line>)" so they can confirm what is being acted on. THEN read the source file around the line, reproduce the issue from the description, make the fix, open a PR, then call resolve_cloud_issue with the PR url.'
1003
1003
  })
1004
1004
  }
1005
1005
  ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insitue/claude-plugin",
3
- "version": "0.6.1",
3
+ "version": "0.6.2",
4
4
  "description": "Drive Claude (Code AND Desktop) from the InSitue browser overlay — pick an element in your app, claude reads the file and proposes the edit.",
5
5
  "keywords": [
6
6
  "insitue",