@react-grab/claude-code 0.0.62 → 0.0.64
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/client.cjs +2 -2
- package/dist/client.global.js +2 -2
- package/dist/client.js +2 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -23,7 +23,7 @@ The server runs on port `4567` by default.
|
|
|
23
23
|
Start the server in the background before running your dev server:
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
-
npx @react-grab/claude-code && pnpm run dev
|
|
26
|
+
npx @react-grab/claude-code@latest && pnpm run dev
|
|
27
27
|
```
|
|
28
28
|
|
|
29
29
|
The server will run as a detached background process. **Note:** Stopping your dev server (Ctrl+C) won't stop the React Grab server. To stop it:
|
package/dist/client.cjs
CHANGED
|
@@ -105,14 +105,14 @@ var attachAgent = async () => {
|
|
|
105
105
|
const provider = createClaudeAgentProvider();
|
|
106
106
|
const api = window.__REACT_GRAB__;
|
|
107
107
|
if (api) {
|
|
108
|
-
api.setAgent({ provider });
|
|
108
|
+
api.setAgent({ provider, storage: sessionStorage });
|
|
109
109
|
return;
|
|
110
110
|
}
|
|
111
111
|
window.addEventListener(
|
|
112
112
|
"react-grab:init",
|
|
113
113
|
(event) => {
|
|
114
114
|
const customEvent = event;
|
|
115
|
-
customEvent.detail.setAgent({ provider });
|
|
115
|
+
customEvent.detail.setAgent({ provider, storage: sessionStorage });
|
|
116
116
|
},
|
|
117
117
|
{ once: true }
|
|
118
118
|
);
|
package/dist/client.global.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
var ReactGrabClaudeCode=(function(exports){'use strict';var f=`http://localhost:${4567}`,m="react-grab:agent-sessions",y={systemPrompt:{type:"preset",preset:"claude_code",append:`You are helping a user make changes to a React component based on a selected element.
|
|
2
2
|
The user has selected an element from their UI and wants you to help modify it.
|
|
3
3
|
Provide clear, concise status updates as you work.`},model:"haiku",permissionMode:"bypassPermissions",maxTurns:10},A=n=>{let t="",o="";for(let e of n.split(`
|
|
4
|
-
`))e.startsWith("event:")?t=e.slice(6).trim():e.startsWith("data:")&&(o=e.slice(5).trim());return {eventType:t,data:o}};async function*S(n){let t=n.getReader(),o=new TextDecoder,e="";try{for(;;){let{done:
|
|
4
|
+
`))e.startsWith("event:")?t=e.slice(6).trim():e.startsWith("data:")&&(o=e.slice(5).trim());return {eventType:t,data:o}};async function*S(n){let t=n.getReader(),o=new TextDecoder,e="";try{for(;;){let{done:s,value:i}=await t.read();i&&(e+=o.decode(i,{stream:!0}));let r;for(;(r=e.indexOf(`
|
|
5
5
|
|
|
6
|
-
`))!==-1;){let{eventType:a,data:d}=A(e.slice(0,
|
|
6
|
+
`))!==-1;){let{eventType:a,data:d}=A(e.slice(0,r));if(e=e.slice(r+2),a==="done")return;if(a==="error")throw new Error(d||"Agent error");d&&(yield d);}if(s)break}}finally{t.releaseLock();}}async function*p(n,t,o){let e=await fetch(`${n}/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:o});if(!e.ok)throw new Error(`Server error: ${e.status}`);if(!e.body)throw new Error("No response body");yield*S(e.body);}var E=(n={})=>{let{serverUrl:t=f,getOptions:o}=n,e=s=>({...y,...o?.()??{},...s??{}});return {send:async function*(s,i){let r={...s,options:e(s.options)};yield*p(t,r,i);},resume:async function*(s,i,r){let a=r.getItem(m);if(!a)throw new Error("No sessions to resume");let c=JSON.parse(a)[s];if(!c)throw new Error(`Session ${s} not found`);let l=c.context,g={...l,options:e(l.options)};yield "Resuming...",yield*p(t,g,i);},supportsResume:true}},C=async()=>{if(typeof window>"u")return;let n=E(),t=window.__REACT_GRAB__;if(t){t.setAgent({provider:n,storage:sessionStorage});return}window.addEventListener("react-grab:init",o=>{o.detail.setAgent({provider:n,storage:sessionStorage});},{once:true});};C();exports.attachAgent=C;exports.createClaudeAgentProvider=E;return exports;})({});
|
package/dist/client.js
CHANGED
|
@@ -103,14 +103,14 @@ var attachAgent = async () => {
|
|
|
103
103
|
const provider = createClaudeAgentProvider();
|
|
104
104
|
const api = window.__REACT_GRAB__;
|
|
105
105
|
if (api) {
|
|
106
|
-
api.setAgent({ provider });
|
|
106
|
+
api.setAgent({ provider, storage: sessionStorage });
|
|
107
107
|
return;
|
|
108
108
|
}
|
|
109
109
|
window.addEventListener(
|
|
110
110
|
"react-grab:init",
|
|
111
111
|
(event) => {
|
|
112
112
|
const customEvent = event;
|
|
113
|
-
customEvent.detail.setAgent({ provider });
|
|
113
|
+
customEvent.detail.setAgent({ provider, storage: sessionStorage });
|
|
114
114
|
},
|
|
115
115
|
{ once: true }
|
|
116
116
|
);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-grab/claude-code",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.64",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"react-grab-claude-code": "./dist/cli.js"
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"@anthropic-ai/claude-agent-sdk": "^0.1.0",
|
|
31
31
|
"@hono/node-server": "^1.19.6",
|
|
32
32
|
"hono": "^4.0.0",
|
|
33
|
-
"react-grab": "0.0.
|
|
33
|
+
"react-grab": "0.0.64"
|
|
34
34
|
},
|
|
35
35
|
"scripts": {
|
|
36
36
|
"dev": "tsup --watch",
|