@reason-machines/cli-linux-arm64-musl 0.2.388 → 0.2.391
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/bin/ara +1 -1
- package/bin/vm-hands/api-2edgrjpe.js +2 -0
- package/bin/vm-hands/api-credentials-1bfy2pqp.js +2 -0
- package/bin/vm-hands/{ask-relay-rpekz0vc.js → ask-relay-fjschw4m.js} +3 -3
- package/bin/vm-hands/connect-cli-r08cmhkg.js +2 -0
- package/bin/vm-hands/{custom-endpoint-device-baqm3872.js → custom-endpoint-device-3g0rc3wp.js} +1 -1
- package/bin/vm-hands/desktop-account-8yf4aqgb.js +2 -0
- package/bin/vm-hands/{device-workspace-0kk5ef85.js → device-workspace-35hjc1ff.js} +1 -1
- package/bin/vm-hands/{hands-worker-source-mshf7c6v.js → hands-worker-source-msdkfx9x.js} +1 -1
- package/bin/vm-hands/{index-cvnymkkb.js → index-m32pjcjr.js} +1 -1
- package/bin/vm-hands/{install-receipt-352cy8vj.js → install-receipt-7qanbz38.js} +1 -1
- package/bin/vm-hands/local-automation-nzwx91g2.js +2 -0
- package/bin/vm-hands/local-capabilities-68pex5zk.js +2 -0
- package/bin/vm-hands/local-desktop-users-p6n48895.js +2 -0
- package/bin/vm-hands/local-display-mac-7havkbhd.js +2 -0
- package/bin/vm-hands/local-display-session-qv1pe4wy.js +2 -0
- package/bin/vm-hands/local-pty-session-8ny1n2fv.js +2 -0
- package/bin/vm-hands/{managed-runtime-wzk0q157.js → managed-runtime-5a55ykqv.js} +1 -1
- package/bin/vm-hands/network-contract-3h853c6e.js +2 -0
- package/bin/vm-hands/package-04cf0m62.js +2 -0
- package/bin/vm-hands/permissions-7s8nfw35.js +2 -0
- package/bin/vm-hands/{reason-hands-protocol-z95pxxbh.js → reason-hands-protocol-mw7ba8vz.js} +1 -1
- package/bin/vm-hands/{serve-service-d2q1pdxh.js → serve-service-9hzhths9.js} +1 -1
- package/bin/vm-hands/{status-x8g58cxm.js → status-czhpvp42.js} +2 -2
- package/bin/vm-hands/version-714jmjcy.js +2 -0
- package/bin/vm-hands/{vm-hands-entry-lite-jx3w1z5q.js → vm-hands-entry-lite-00800vjk.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-v2ptg6br.js → vm-hands-entry-lite-02zaqpgh.js} +5 -5
- package/bin/vm-hands/{vm-hands-entry-lite-zr8gf6nd.js → vm-hands-entry-lite-0seprnh3.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-qnnfvm5r.js → vm-hands-entry-lite-0z73amf7.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-nf0avf46.js → vm-hands-entry-lite-157zwpm1.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-y55f8dyw.js → vm-hands-entry-lite-180h5amj.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-pk3q774c.js → vm-hands-entry-lite-3nr9q3nf.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-b1ygrkbq.js → vm-hands-entry-lite-3ptq7p60.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-fyvgav60.js → vm-hands-entry-lite-5x04hakp.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-stbfyev7.js → vm-hands-entry-lite-88h9vwrv.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-f89wk20p.js → vm-hands-entry-lite-8e932j3c.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-sv8bb7jq.js → vm-hands-entry-lite-8jpw9hj6.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-e05sgnwe.js → vm-hands-entry-lite-8pgggvbb.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-ammr3xbc.js → vm-hands-entry-lite-a1yy1yp3.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-289qftes.js → vm-hands-entry-lite-adpzn7fe.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-mbs7d7ye.js → vm-hands-entry-lite-atg4z1vg.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-axe84b1n.js → vm-hands-entry-lite-awwpgj75.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-zs3jsffv.js → vm-hands-entry-lite-bh9zt0ex.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-y2s2w174.js → vm-hands-entry-lite-bwpay74g.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-e2mjbqmr.js → vm-hands-entry-lite-csecgmaa.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-spccx392.js → vm-hands-entry-lite-e73s63fb.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-p6g561rq.js → vm-hands-entry-lite-ebgackey.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-9fc26f9c.js → vm-hands-entry-lite-eh3r5esz.js} +2 -2
- package/bin/vm-hands/vm-hands-entry-lite-ezahexcb.js +5 -0
- package/bin/vm-hands/{vm-hands-entry-lite-grjkhbf2.js → vm-hands-entry-lite-f78n4wqt.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-te0p47ak.js → vm-hands-entry-lite-fb02h1zm.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-fw5ztpwn.js → vm-hands-entry-lite-g87z5eb6.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-s7k376cz.js → vm-hands-entry-lite-h0keewxv.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-fb5dzy9x.js → vm-hands-entry-lite-hfv2tsm9.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-jjgqsan6.js → vm-hands-entry-lite-jpcrkd8g.js} +3 -3
- package/bin/vm-hands/{vm-hands-entry-lite-ma001vzh.js → vm-hands-entry-lite-ksz1k1dh.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-kb981w39.js → vm-hands-entry-lite-mc3pkj0q.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-sex82vb1.js → vm-hands-entry-lite-mft9ke08.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-sb7n76g7.js → vm-hands-entry-lite-p1s0xyc2.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-6tv7j3ej.js → vm-hands-entry-lite-pr8bcm6h.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-r7czqrtj.js → vm-hands-entry-lite-qw544vmt.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-n25efwqt.js → vm-hands-entry-lite-r166b92s.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-6shgavn0.js → vm-hands-entry-lite-se0ba5w1.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-30rnhzfj.js → vm-hands-entry-lite-trm3dn8c.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-2e18tm6w.js → vm-hands-entry-lite-wpcagqfw.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-d7cvwy3k.js → vm-hands-entry-lite-xbmkejrz.js} +2 -2
- package/bin/vm-hands/{vm-hands-entry-lite-nr1narzb.js → vm-hands-entry-lite-y99g8x7f.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-3vb4he21.js → vm-hands-entry-lite-yzn8hhh5.js} +1 -1
- package/bin/vm-hands/{vm-hands-entry-lite-yzaz1e8r.js → vm-hands-entry-lite-zcdqwkm1.js} +2 -2
- package/bin/vm-hands/vm-hands-entry-lite.js +1 -1
- package/bin/vm-hands/{vm-hands-executor-j4q5snaz.js → vm-hands-executor-fp0f8bet.js} +1 -1
- package/bin/vm-hands/vm-hands-op-runner-a6yn5exa.js +2 -0
- package/bin/vm-hands/vm-hands-runtime-ckzgpf6c.js +4 -0
- package/bin/vm-hands/worker-sandbox-nnk7fq89.js +2 -0
- package/package.json +1 -1
- package/bin/vm-hands/api-9jsc2wk3.js +0 -2
- package/bin/vm-hands/api-credentials-jhaxk9e6.js +0 -2
- package/bin/vm-hands/connect-cli-xk4wx40j.js +0 -2
- package/bin/vm-hands/desktop-account-374pyd2h.js +0 -2
- package/bin/vm-hands/local-automation-fqf1yxn8.js +0 -2
- package/bin/vm-hands/local-capabilities-0xqv6w37.js +0 -2
- package/bin/vm-hands/local-desktop-users-39d8h875.js +0 -2
- package/bin/vm-hands/local-display-mac-yt4tpb96.js +0 -2
- package/bin/vm-hands/local-display-session-12q3s3p1.js +0 -2
- package/bin/vm-hands/local-pty-session-142rrpf9.js +0 -2
- package/bin/vm-hands/network-contract-m55ndrgk.js +0 -2
- package/bin/vm-hands/package-k4xz7vcr.js +0 -2
- package/bin/vm-hands/permissions-zajmtjzs.js +0 -2
- package/bin/vm-hands/version-55234k7v.js +0 -2
- package/bin/vm-hands/vm-hands-entry-lite-wzqzjd6f.js +0 -5
- package/bin/vm-hands/vm-hands-op-runner-btwvjt4p.js +0 -2
- package/bin/vm-hands/vm-hands-runtime-gw2wdm13.js +0 -4
- package/bin/vm-hands/worker-sandbox-r41yz175.js +0 -2
package/bin/ara
CHANGED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{F as a,G as b,H as c,I as d,J as e,K as f}from"./vm-hands-entry-lite-trm3dn8c.js";import"./vm-hands-entry-lite-3ptq7p60.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{d as sessionPlace,c as sessionMachine,e as createMachineEnrollmentTicketWithToken,f as ReasonApi,b as REASONING_EFFORTS,a as ApiError};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{v as a,w as b,x as c,y as d,z as e}from"./vm-hands-entry-lite-atg4z1vg.js";import"./vm-hands-entry-lite-trm3dn8c.js";import"./vm-hands-entry-lite-3ptq7p60.js";import"./vm-hands-entry-lite-rtt2w6c6.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{d as resolveApiCredentials,e as requireApiCredentials,b as explicitApiOrigin,c as environmentApiKey,a as apiOriginFromEnvironment};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{va as u}from"./vm-hands-entry-lite-
|
|
3
|
-
`).pop()??"");if(Z)return r(V(),{...Z,fingerprint:f(X)??Z.fingerprint,...Q?{kept:Q}:{}}),z($?`Reason Network: couldn't move your agents off ${j}${K?` (${K})`:""}; they keep using it. Run reason network setup to try again.`:`Reason Network: couldn't finish setting up the network engine${K?` (${K})`:""}. Run reason network setup to try again.`),X;throw new C(`Couldn't connect this computer's agents to the network${K?` (${K})`:""}. Run reason network setup to try again.`)}if($)Q=Pq($,X,z);return d(X,Q),G(X,["stop"],{env:q,stdio:"ignore",timeout:15000}),X}function Mq(q){let z=J(V(),".local","bin",F),X;try{X=Jq(z)}catch{return null}let Y=`${X.size}:${X.mtimeMs}:${X.ino}`;if(!X.isFile()||Y===q)return null;try{let Z=s(v());if(Z.ino===X.ino&&Z.dev===X.dev)return null}catch{}try{let Z=Buffer.alloc(2),Q=Dq(z,"r");try{Hq(Q,Z,0,2,0)}finally{Kq(Q)}if(Z.toString("latin1")==="#!")return null}catch{return null}return{path:z,fingerprint:Y}}function Pq(q,z,X){let Y=`${q.path}.reason-${process.pid}`;try{b(Y,{force:!0}),Cq(z,Y),p(Y,q.path),X(`Reason Network: your agents now use the engine reason network keeps up to date; ${j} points to it. Restart a running agent to pick it up.`);return}catch(Z){return b(Y,{force:!0}),X(`Reason Network: your agents now use the engine reason network keeps up to date, but ${j} couldn't be pointed to it (${Z instanceof Error?Z.message:String(Z)}). Remove that copy so it can't take them back.`),q.fingerprint}}async function i(q){if(q[w])return q;try{let{defaultWorkerServiceHost:z,workerServiceLauncher:X}=await import("./serve-service-
|
|
2
|
+
import{va as u}from"./vm-hands-entry-lite-3ptq7p60.js";import{Mj as g}from"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-8pgggvbb.js";import{Mk as M}from"./vm-hands-entry-lite-f78n4wqt.js";import{existsSync as uq,mkdirSync as gq,readFileSync as Nq,writeFileSync as wq}from"fs";import{homedir as Yq}from"os";import{dirname as e,join as hq}from"path";import{spawnSync as G}from"child_process";import{createHash as Qq}from"crypto";import{chmodSync as Bq,closeSync as Kq,existsSync as U,lstatSync as Jq,mkdirSync as c,mkdtempSync as Lq,openSync as Dq,readFileSync as Wq,readSync as Hq,renameSync as p,rmSync as b,statSync as s,symlinkSync as Cq,writeFileSync as a}from"fs";import{connect as Fq}from"net";import{homedir as V}from"os";import{dirname as S,join as J}from"path";class C extends Error{}var F="reason-network",H="0.10.3",Vq={"aarch64-apple-darwin":"1e793a89ea8b53c603cddbc65ac08b0dd83f1dbfc30a1987858e2c52e2ed907c","x86_64-apple-darwin":"ef1f0f8d7d9e8a286de54eeb78f8ff8a53152c1a661c50b6182bfefa8eef8a02","aarch64-unknown-linux-musl":"75fdfd10314225ffb2875acc7ac73c66de23b5678b684d70b4678eb16ba35124","x86_64-unknown-linux-musl":"17111a623396eed0a2d98aa4d3bb03f00da37c25bdc39b6d0ba3ab202dfbe874"},xq="https://reasonmachines.com/cli/engine",P="REASON_AGENT_NETWORK_BIN";function Gq(){let q=process.arch==="arm64"?"aarch64":process.arch==="x64"?"x86_64":null,z=process.platform==="darwin"?"apple-darwin":process.platform==="linux"?"unknown-linux-musl":null;return q&&z?`${q}-${z}`:null}function N(q){let z=G(q,["--version"],{encoding:"utf8",timeout:5000}),[X,Y]=z.status===0?z.stdout.trim().split(/\s+/):[];return X===F?Y??null:null}function _(q,z){let X=q.split(".").map(Number),Y=z.split(".").map(Number);for(let Z=0;Z<3;Z+=1)if((X[Z]??0)!==(Y[Z]??0))return(X[Z]??0)>(Y[Z]??0);return!0}function v(q=V()){return J(q,".reason","bin","reason-network")}var j=`~/.local/bin/${F}`;async function Uq(q=process.env,z=()=>{}){if(q[P])return q[P];let X=v(),Y=t(),Z=Y?.path===X&&f(X)===Y.fingerprint?Y:null,Q=Z?.kept,$=h(q)?null:Mq(Q);if(Z?.version===H&&!$)return X;let B=U(X)?N(X):null;if($){let K=N($.path),L=B&&_(B,H)?B:H;if(!K||!_(L,K)){if(K)z(`Reason Network: ${j} (${K}) is newer than the engine reason network uses (${L}), so it was left as it is.`);Q=$.fingerprint,$=null}}if(Z?.version===H&&!$)return d(X,Q);if(!B||!_(B,H))await jq(X);let D=G(X,["setup",...h(q)?["--no-service"]:[]],{env:await i(q),encoding:"utf8",timeout:60000});if(D.status!==0){let K=O((D.stderr||D.stdout||"").trim().split(`
|
|
3
|
+
`).pop()??"");if(Z)return r(V(),{...Z,fingerprint:f(X)??Z.fingerprint,...Q?{kept:Q}:{}}),z($?`Reason Network: couldn't move your agents off ${j}${K?` (${K})`:""}; they keep using it. Run reason network setup to try again.`:`Reason Network: couldn't finish setting up the network engine${K?` (${K})`:""}. Run reason network setup to try again.`),X;throw new C(`Couldn't connect this computer's agents to the network${K?` (${K})`:""}. Run reason network setup to try again.`)}if($)Q=Pq($,X,z);return d(X,Q),G(X,["stop"],{env:q,stdio:"ignore",timeout:15000}),X}function Mq(q){let z=J(V(),".local","bin",F),X;try{X=Jq(z)}catch{return null}let Y=`${X.size}:${X.mtimeMs}:${X.ino}`;if(!X.isFile()||Y===q)return null;try{let Z=s(v());if(Z.ino===X.ino&&Z.dev===X.dev)return null}catch{}try{let Z=Buffer.alloc(2),Q=Dq(z,"r");try{Hq(Q,Z,0,2,0)}finally{Kq(Q)}if(Z.toString("latin1")==="#!")return null}catch{return null}return{path:z,fingerprint:Y}}function Pq(q,z,X){let Y=`${q.path}.reason-${process.pid}`;try{b(Y,{force:!0}),Cq(z,Y),p(Y,q.path),X(`Reason Network: your agents now use the engine reason network keeps up to date; ${j} points to it. Restart a running agent to pick it up.`);return}catch(Z){return b(Y,{force:!0}),X(`Reason Network: your agents now use the engine reason network keeps up to date, but ${j} couldn't be pointed to it (${Z instanceof Error?Z.message:String(Z)}). Remove that copy so it can't take them back.`),q.fingerprint}}async function i(q){if(q[w])return q;try{let{defaultWorkerServiceHost:z,workerServiceLauncher:X}=await import("./serve-service-9hzhths9.js");return{...q,[w]:X(z(V()),q)}}catch{return q}}var w="REASON_NETWORK_REASON_BIN";function h(q=process.env){return Boolean(q.REASON_NETWORK_NO_SERVICE||q.TINCAN_NO_SERVICE)}var y=(q)=>J(q,".reason","ask-engine.json");function f(q){try{let z=s(q);return`${z.size}:${z.mtimeMs}:${z.ino}`}catch{return null}}function t(q=V()){try{let z=JSON.parse(Wq(y(q),"utf8"));if(typeof z.path!=="string"||typeof z.fingerprint!=="string"||typeof z.version!=="string")return null;return{path:z.path,fingerprint:z.fingerprint,version:z.version,...typeof z.kept==="string"?{kept:z.kept}:{}}}catch{return null}}function r(q,z){c(S(y(q)),{recursive:!0}),a(y(q),JSON.stringify(z))}function d(q,z){let X=f(q);if(X)r(V(),{path:q,fingerprint:X,version:H,...z?{kept:z}:{}});return q}async function jq(q){let z=Gq(),X=z?Vq[z]:void 0;if(!z||!X)throw new C(`Reason Network runs on macOS and Linux (arm64 or x64); this is ${process.platform} ${process.arch}.`);let Y=`${xq}/${H}/${F}-${z}.tar.gz`,Z;try{let B=await fetch(Y,{signal:AbortSignal.timeout(120000)});if(!B.ok)throw Error(`HTTP ${B.status}`);Z=Buffer.from(await B.arrayBuffer())}catch(B){let D=B instanceof Error&&B.name==="TimeoutError"?"no download within 2 minutes":B instanceof Error?B.message.replace(/\.$/,""):String(B);throw new C(`Couldn't download the network engine from ${new URL(Y).host} (${D}). Check the connection and run reason network again.`)}if(Qq("sha256").update(Z).digest("hex")!==X)throw new C("The downloaded network engine didn't match its checksum, so it wasn't installed.");c(S(q),{recursive:!0});let $=Lq(J(S(q),".reason-engine-"));try{if(a(J($,"engine.tar.gz"),Z),G("tar",["-xzf",J($,"engine.tar.gz"),"-C",$]).status!==0||!U(J($,F)))throw new C("Couldn't unpack the network engine.");Bq(J($,F),493),p(J($,F),q)}finally{b($,{recursive:!0,force:!0})}}function fq(q=process.env,z=V()){let X=q.REASON_NETWORK_HOME?.trim()||q.TINCAN_HOME?.trim();if(X)return X;let Y=J(z,".reason","network"),Z=J(z,".tincan");return!k(Y)&&k(Z)?Z:Y}var k=(q)=>U(J(q,"network.db"))||U(J(q,"tincan.db"));function Tq(q){let z=U(J(q,"network.db"))||!U(J(q,"tincan.db")),X=J(q,z?"network.sock":"tincan.sock");if(Buffer.byteLength(X)<100)return X;let Y=0xcbf29ce484222325n;for(let Z of Buffer.from(X))Y=BigInt.asUintN(64,(Y^BigInt(Z))*0x100000001b3n);return J("/tmp",`${z?"reason-network":"tincan"}-${process.getuid?.()??0}`,`${Y.toString(16).padStart(16,"0")}.sock`)}var o=15000,Oq=new Set(["who","team","inbox","unread","held"]),Rq=90000,Iq="the network daemon closed the connection";class T{socket;nextId=1;buffer="";pending=new Map;closed=null;hungUp=!1;constructor(q){this.socket=q;q.setEncoding("utf8"),q.on("data",(X)=>this.read(X));let z=(X)=>{this.closed=X;for(let Y of this.pending.values())Y.reject(X);this.pending.clear()};q.on("error",(X)=>z(X)),q.on("close",()=>z(Error(this.hungUp?"the connection to the network daemon was closed here":Iq)))}static open(q){return new Promise((z,X)=>{let Y=Fq(q);Y.once("connect",()=>z(new T(Y))),Y.once("error",X)})}read(q){this.buffer+=q;let z=this.buffer.indexOf(`
|
|
4
4
|
`);while(z>=0){let X=this.buffer.slice(0,z);if(this.buffer=this.buffer.slice(z+1),z=this.buffer.indexOf(`
|
|
5
5
|
`),!X.trim())continue;let Y;try{Y=JSON.parse(X)}catch{continue}if(typeof Y.id!=="number")continue;let Z=this.pending.get(Y.id);if(!Z)continue;if(this.pending.delete(Y.id),Y.ok)Z.resolve(Y.result);else Z.reject(Error(O(Y.error??"the network daemon refused the request")))}}call(q,z={},X=o){if(this.closed)return Promise.reject(this.closed);let Y=this.nextId++;return this.socket.write(`${JSON.stringify({id:Y,op:q,...z})}
|
|
6
6
|
`),new Promise((Z,Q)=>{let $=setTimeout(()=>{this.pending.delete(Y),Q(Error(`the network daemon didn't answer ${q} within ${Math.round(X/1000)}s`))},X);this.pending.set(Y,{resolve:(B)=>{clearTimeout($),Z(B)},reject:(B)=>{clearTimeout($),Q(B)}})})}get isClosed(){return this.closed!==null}close(){this.hungUp=!0,this.socket.end()}}var A=/^(Claude Code|Grok|Codex) \u00B7 (.*)$/,_q={"Claude Code":"claude-code",Grok:"grok",Codex:"codex"},Aq=/^ask-[0-9a-f]{6}$/;function l(q){return{id:q.id,from:q.from,fromAgent:q.from_agent,to:q.to,replyTo:q.reply_to,body:q.body,sentAt:q.sent_at}}function m(q){return{person:q.person,machine:q.machine,isMe:q.is_me,online:q.online,link:q.link,rttMs:q.rtt_ms}}class x{engine;env;connection=null;waits=new Set;constructor(q,z){this.engine=q;this.env=z}static async open(q=process.env,z){return new x(await Uq(q,z),q)}static openInstalled(q=process.env){if(q[P])return new x(q[P],q);let z=v(),X=t();return X?.path===z&&f(z)===X.fingerprint?new x(z,q):null}socketPath(){return Tq(fq(this.env))}async open(){try{return await T.open(this.socketPath())}catch{return G(this.engine,["who","--json"],{env:this.env,stdio:"ignore",timeout:15000}),await T.open(this.socketPath())}}async call(q,z={},X){if(!this.connection||this.connection.isClosed)this.connection=await this.open();try{return await this.connection.call(q,z,X)}catch(Y){if(!/closed|ECONNRESET|EPIPE/.test(String(Y)))throw Y;if(this.connection=await this.open(),!Oq.has(q))throw Y;return await this.connection.call(q,z)}}async waitOn(q,z){let X=await this.open();this.waits.add(X);try{return await X.call(q,z,z.wait_secs*1000+o)}finally{this.waits.delete(X),X.close()}}close(){this.connection?.close(),this.connection=null;for(let q of this.waits)q.close();this.waits.clear()}async team(){try{let q=await this.call("team");return{...q,machines:q.machines.map(m)}}catch(q){if(/team/i.test(String(q)))return null;throw q}}async snapshot(q={}){let z=await this.call("who",{all:Boolean(q.all),...q.filter?{filter:q.filter}:{}}),X=new Set(z.sessions.filter((Z)=>A.test(Z.doing??"")).map((Z)=>`${Z.person}/${Z.machine}:${Z.cwd}`)),Y=z.sessions.filter((Z)=>q.all||!Aq.test(Z.name)).filter((Z)=>A.test(Z.doing??"")||!X.has(`${Z.person}/${Z.machine}:${Z.cwd}`)).map((Z)=>{let Q=A.exec(Z.doing??"");return{address:Z.address,name:Z.name,person:Z.person,machine:Z.machine,agent:Q?_q[Q[1]]:Z.agent,cwd:Z.cwd,repo:Z.repo,branch:Z.branch,status:Q?Q[2]==="ready for work"?"idle":Q[2]==="stopped"?"offline":"busy":Z.status,since:Z.since,doing:Q?Q[2]:Z.doing,isMe:Z.is_me,worker:Boolean(Q),tier:Z.tier??null}});return{team:z.team,person:z.person,machine:z.machine,machines:z.machines.map(m),sessions:Y}}async send(q,z,X={}){if(!X.from)await this.call("hook",{agent:"cli",event:"stop",session_id:"terminal",name:"terminal",cwd:process.cwd(),mail:!1});let Y=await this.call("send",{from:X.from??"terminal",to:q,body:z,...X.replyTo?{reply_to:X.replyTo}:{},wake:X.wake??!0,...X.notify?{notify:!0}:{}});return{ids:Y.ids,recipients:Y.recipients.map((Z)=>Z.address),deliveries:Y.recipients.map((Z)=>({address:Z.address,state:Z.state,note:Z.note??""}))}}async session(q,z={}){let X=z.agent??"cli",Y=($,B={})=>this.call("hook",{agent:X,event:$,session_id:q,name:q,cwd:process.cwd(),mail:!1,...B}),Z=await Y("stop"),Q=`${X}:${q}`;return{name:q,address:Z.address??q,next:async($)=>{return(await this.waitOn("inbox",{key:Q,wait_secs:$,peek:!0})).messages.map(l)},ack:async($)=>{if($.length)await this.call("delivered",{key:Q,ids:$})},busy:async($)=>{if(await Y("prompt"),$)await Y("doing",{doing:$})},idle:async($)=>{if(await Y("stop"),$)await Y("doing",{doing:$})},doing:async($)=>{await Y("doing",{doing:$})},send:($,B,D,K)=>this.send($,B,{from:Q,...D?{replyTo:D}:{},...K?.notify?{notify:!0}:{}})}}async inbox(q={}){let X=(await this.waitOn("inbox",{key:"cli:terminal",wait_secs:q.waitSeconds??0,peek:!0}).catch((Y)=>{if(/isn't registered/.test(String(Y)))return{messages:[]};throw Y})).messages.map(l);if(X.length&&!q.peek)await this.call("delivered",{key:"cli:terminal",ids:X.map((Y)=>Y.id)});return X}async link(q={}){return await this.call("link",{new:Boolean(q.new)})}async changeTeam(q,z){try{return await this.call(q,z,Rq)}finally{this.close()}}async changeOntoTeam(q,z){try{await this.changeTeam(q,z)}catch(X){if(!/closed|ECONNRESET|EPIPE/.test(String(X)))throw X;if(await this.team())return;await this.changeTeam(q,z)}}async createTeam(q,z){await this.changeOntoTeam("create_team",{name:q,person:z})}async join(q,z){await this.changeOntoTeam("join",{ticket:q,person:z})}async leave(){return await this.changeTeam("leave",{force:!0})}async remove(q){return await this.call("remove",{who:q})}async setup(q,z={}){return this.passthrough(["setup",...q],z,await i(this.env))}passthrough(q,z={},X=this.env){this.close();let Y=G(this.engine,q,{stdio:["inherit","pipe","pipe"],encoding:"utf8",env:X});if(!z.quiet||Y.status!==0)process.stdout.write(O(Y.stdout??"")),process.stderr.write(O(Y.stderr??""));return Y.status??1}}function O(q){return q.replace(/not in a team yet:[^\n]*/g,"this computer isn't on a team yet: run `reason network setup`").replace(/`tincan (\w+)/g,"`reason network $1").replace(/\btincan (who|send|inbox|invite|join|team|link|setup|doctor|remove|leave|listen)\b/g,"reason network $1").replace(/(?<![\w./-])tincan(?![\w./-])/gi,"Reason Network")}import{existsSync as Jz,mkdirSync as Lz,readFileSync as bq,writeFileSync as Dz}from"fs";import{homedir as Sq,hostname as Hz}from"os";import{dirname as Fz,join as yq}from"path";var vq=(q)=>yq(q,".reason","ask.json");function Eq(q){try{let z=JSON.parse(bq(vq(q),"utf8"));if(typeof z.orgId!=="string"||typeof z.team!=="string")return null;let X=z.pendingRotation;return{orgId:z.orgId,team:z.team,...typeof z.checkedAt==="number"?{checkedAt:z.checkedAt}:{},...X&&typeof X.link==="string"&&typeof X.team==="string"&&typeof X.replaces==="string"?{pendingRotation:X}:{}}}catch{return null}}function n(q=Sq()){let z=Eq(q);return z?{orgId:z.orgId,team:z.team}:null}var qq=86400000,dq=300,R=(q)=>hq(q,".reason","ask-relay.json");function E(q){try{let z=JSON.parse(Nq(R(q),"utf8"));return{sessions:Array.isArray(z.sessions)?z.sessions.filter((X)=>typeof X?.name==="string"&&typeof X.agent==="string"&&typeof X.usedAt==="number"):[]}}catch{return{sessions:[]}}}function kq(q,z){try{if(!uq(e(R(q))))gq(e(R(q)),{recursive:!0});wq(R(q),`${JSON.stringify(z)}
|
|
7
7
|
`,{mode:384})}catch{}}var W=(q,z)=>new Promise((X)=>{if(z.aborted)return X();let Y=setTimeout(Z,q);Y.unref?.();function Z(){clearTimeout(Y),z.removeEventListener("abort",Z),X()}z.addEventListener("abort",Z,{once:!0})});function zq(q){let z=q?.status;return typeof z==="number"?z:null}var Xq=60000;function lq(q){return{address:q.address.slice(0,300),state:q.state.slice(0,40),note:q.note.slice(0,500)}}function mq(q){let z=Number.isFinite(q.sentAt)&&Math.abs(q.sentAt)<8640000000000000?q.sentAt:Date.now();return{id:q.id.slice(0,100),from:q.from.slice(0,300),from_agent:q.fromAgent?.slice(0,100)??null,to:q.to.slice(0,300),reply_to:q.replyTo?.slice(0,100)??null,sent_at:z,body:q.body.length>Xq?`${q.body.slice(0,Xq)}
|
|
8
|
-
[cut: the answer was ${q.body.length} characters]`:q.body}}class Zq{network;api;home;signal;log;team;sessions=new Map;readers=new Set;constructor(q,z,X,Y,Z,Q){this.network=q;this.api=z;this.home=X;this.signal=Y;this.log=Z;this.team=Q}async run(){let q=Date.now()-qq;for(let X of E(this.home).sessions)if(X.usedAt>q)this.read(X);let z=0;while(!this.signal.aborted){let X=await this.network.team().catch(()=>null);if(!X){await W(60000,this.signal);continue}if(X.name!==this.team)return;let Y;try{let Z=await this.api.claimAgentNetworkRelayJob({machine:X.machine,person:X.person,team:X.name,version:g,wait_seconds:u},AbortSignal.any([this.signal,AbortSignal.timeout((u+20)*1000)]));if(z=0,Z.retry_after_seconds)await W(Z.retry_after_seconds*1000,this.signal);Y=Z.job}catch(Z){if(this.signal.aborted)return;let Q=zq(Z);if(Q===403||Q===401){await W(900000,this.signal);continue}if(Q===404||Q===405){await W(120000,this.signal);continue}z+=1,await W(Math.min(60000,1000*2**Math.min(z,6)),this.signal);continue}if(Y)this.carry(Y)}}async carry(q){let z;try{z=q.kind==="who"?{who:await this.who(q)}:{sent:await this.send(q)}}catch(X){z={error:X instanceof Error?X.message:String(X)}}for(let X=1;;X+=1)try{if(await this.api.completeAgentNetworkRelayJob(q.id,z),q.kind==="send")this.log(`relayed a message to ${q.to} from ${"sent"in z?z.sent.from:q.from_name}`,"relayed");return}catch(Y){if(X>=4||this.signal.aborted){this.log(`couldn't report a relayed call: ${Y instanceof Error?Y.message:String(Y)}`);return}await W(X*1000,this.signal)}}async who(q){let z=q.all===!0,X=await this.network.snapshot({all:z});return{all:z,team:X.team,sessions:X.sessions.map((Y)=>({address:Y.address,person:Y.person,machine:Y.machine,agent:Y.agent,repo:Y.repo,branch:Y.branch,status:Y.status,since:Y.since,doing:Y.doing,worker:Y.worker,...Y.tier?{tier:Y.tier.slice(0,10)}:{}})),machines:X.machines.map((Y)=>({person:Y.person,machine:Y.machine,online:Y.online}))}}async send(q){let z={name:q.from_name,agent:q.from_agent},X=await this.session(z),Y=await X.send(q.to,q.body,q.reply_to,{notify:q.notify===!0});return this.remember(z),this.read(z),{ids:Y.ids,recipients:Y.recipients,from:X.address,deliveries:Y.deliveries.slice(0,500).map(lq)}}session(q){let z=`${q.agent}:${q.name}`,X=this.sessions.get(z);if(!X)X=this.network.session(q.name,{agent:q.agent}).then(async(Y)=>{return await Y.idle(`personal agent (${q.agent}), through Reason`).catch(()=>{}),Y}),X.catch(()=>this.sessions.delete(z)),this.sessions.set(z,X);return X}remember(q){let X=E(this.home).sessions.filter((Y)=>Y.name!==q.name||Y.agent!==q.agent);kq(this.home,{sessions:[...X,{...q,usedAt:Date.now()}].slice(-50)})}read(q){let z=`${q.agent}:${q.name}`;if(this.readers.has(z))return;this.readers.add(z),(async()=>{let X=0;try{while(!this.signal.aborted){let Y=E(this.home).sessions.find((Z)=>Z.name===q.name&&Z.agent===q.agent)?.usedAt??0;if(Date.now()-Y>qq)return;try{let Z=await this.session(q),Q=await Z.next(dq);if(Q.length===0)continue;await this.api.recordAgentNetworkRelayReplies(Q.map(mq)).catch(($)=>{let B=zq($);if(B===null||B>=500||B===429||B===401)throw $;this.log(`dropped ${Q.length} answer(s) the server refused (HTTP ${B})`)}),await Z.ack(Q.map(($)=>$.id)),X=0}catch{if(this.signal.aborted)return;this.sessions.delete(z),X+=1,await W(Math.min(60000,1000*2**Math.min(X,6)),this.signal)}}}finally{this.readers.delete(z)}})()}}async function cq(q){await new Zq(q.network,q.api,q.home??Yq(),q.signal,q.log??(()=>{}),q.team).run()}async function pq(q,z=()=>{}){let X="";while(!q.aborted){try{let Y=n(),Z=Y?x.openInstalled():null;if(Y&&Z){let[{requireApiCredentials:Q},{ReasonApi:$}]=await Promise.all([import("./api-credentials-
|
|
8
|
+
[cut: the answer was ${q.body.length} characters]`:q.body}}class Zq{network;api;home;signal;log;team;sessions=new Map;readers=new Set;constructor(q,z,X,Y,Z,Q){this.network=q;this.api=z;this.home=X;this.signal=Y;this.log=Z;this.team=Q}async run(){let q=Date.now()-qq;for(let X of E(this.home).sessions)if(X.usedAt>q)this.read(X);let z=0;while(!this.signal.aborted){let X=await this.network.team().catch(()=>null);if(!X){await W(60000,this.signal);continue}if(X.name!==this.team)return;let Y;try{let Z=await this.api.claimAgentNetworkRelayJob({machine:X.machine,person:X.person,team:X.name,version:g,wait_seconds:u},AbortSignal.any([this.signal,AbortSignal.timeout((u+20)*1000)]));if(z=0,Z.retry_after_seconds)await W(Z.retry_after_seconds*1000,this.signal);Y=Z.job}catch(Z){if(this.signal.aborted)return;let Q=zq(Z);if(Q===403||Q===401){await W(900000,this.signal);continue}if(Q===404||Q===405){await W(120000,this.signal);continue}z+=1,await W(Math.min(60000,1000*2**Math.min(z,6)),this.signal);continue}if(Y)this.carry(Y)}}async carry(q){let z;try{z=q.kind==="who"?{who:await this.who(q)}:{sent:await this.send(q)}}catch(X){z={error:X instanceof Error?X.message:String(X)}}for(let X=1;;X+=1)try{if(await this.api.completeAgentNetworkRelayJob(q.id,z),q.kind==="send")this.log(`relayed a message to ${q.to} from ${"sent"in z?z.sent.from:q.from_name}`,"relayed");return}catch(Y){if(X>=4||this.signal.aborted){this.log(`couldn't report a relayed call: ${Y instanceof Error?Y.message:String(Y)}`);return}await W(X*1000,this.signal)}}async who(q){let z=q.all===!0,X=await this.network.snapshot({all:z});return{all:z,team:X.team,sessions:X.sessions.map((Y)=>({address:Y.address,person:Y.person,machine:Y.machine,agent:Y.agent,repo:Y.repo,branch:Y.branch,status:Y.status,since:Y.since,doing:Y.doing,worker:Y.worker,...Y.tier?{tier:Y.tier.slice(0,10)}:{}})),machines:X.machines.map((Y)=>({person:Y.person,machine:Y.machine,online:Y.online}))}}async send(q){let z={name:q.from_name,agent:q.from_agent},X=await this.session(z),Y=await X.send(q.to,q.body,q.reply_to,{notify:q.notify===!0});return this.remember(z),this.read(z),{ids:Y.ids,recipients:Y.recipients,from:X.address,deliveries:Y.deliveries.slice(0,500).map(lq)}}session(q){let z=`${q.agent}:${q.name}`,X=this.sessions.get(z);if(!X)X=this.network.session(q.name,{agent:q.agent}).then(async(Y)=>{return await Y.idle(`personal agent (${q.agent}), through Reason`).catch(()=>{}),Y}),X.catch(()=>this.sessions.delete(z)),this.sessions.set(z,X);return X}remember(q){let X=E(this.home).sessions.filter((Y)=>Y.name!==q.name||Y.agent!==q.agent);kq(this.home,{sessions:[...X,{...q,usedAt:Date.now()}].slice(-50)})}read(q){let z=`${q.agent}:${q.name}`;if(this.readers.has(z))return;this.readers.add(z),(async()=>{let X=0;try{while(!this.signal.aborted){let Y=E(this.home).sessions.find((Z)=>Z.name===q.name&&Z.agent===q.agent)?.usedAt??0;if(Date.now()-Y>qq)return;try{let Z=await this.session(q),Q=await Z.next(dq);if(Q.length===0)continue;await this.api.recordAgentNetworkRelayReplies(Q.map(mq)).catch(($)=>{let B=zq($);if(B===null||B>=500||B===429||B===401)throw $;this.log(`dropped ${Q.length} answer(s) the server refused (HTTP ${B})`)}),await Z.ack(Q.map(($)=>$.id)),X=0}catch{if(this.signal.aborted)return;this.sessions.delete(z),X+=1,await W(Math.min(60000,1000*2**Math.min(X,6)),this.signal)}}}finally{this.readers.delete(z)}})()}}async function cq(q){await new Zq(q.network,q.api,q.home??Yq(),q.signal,q.log??(()=>{}),q.team).run()}async function pq(q,z=()=>{}){let X="";while(!q.aborted){try{let Y=n(),Z=Y?x.openInstalled():null;if(Y&&Z){let[{requireApiCredentials:Q},{ReasonApi:$}]=await Promise.all([import("./api-credentials-1bfy2pqp.js"),import("./api-2edgrjpe.js")]),B=await Q({});if(B.credentialKind!=="api_key"&&B.orgId.toLowerCase()===Y.orgId.toLowerCase())try{await cq({network:Z,api:new $(B),team:Y.team,signal:q,log:z})}finally{Z.close()}}X=""}catch(Y){let Z=`agent network relay: ${Y instanceof Error?Y.message:String(Y)}`;if(Z!==X)z(Z);X=Z}await W(300000,q)}}var sq=600000,aq=3600000,iq=180000;async function Rz(q,z,X={}){let Y=-1/0,Z="",Q=(L,$q)=>{let I=Date.now();if($q==="relayed"||I-Y<sq||L===Z&&I-Y<aq)return;Y=I,Z=L,z(L)},$=new AbortController,B=()=>$.abort();q.once("end",B),q.once("close",B),q.once("error",B),q.resume();let D=X.installedVersion??(()=>tq()),K=setInterval(()=>{D().then((L)=>{if(L!==null&&L!==g)$.abort()},()=>{})},X.checkMs??iq);K.unref?.();try{await(X.relay??pq)($.signal,Q)}finally{clearInterval(K)}}async function tq(q={}){if(!(q.compiled??Bun.main.startsWith("/$bunfs/")))return null;let z=q.home??Yq(),X=q.env??process.env;if((q.platform??process.platform)==="darwin"){let{currentManagedRuntimeVersion:Q,isManagedRuntimeVersionExecutable:$,legacyManagedRuntimePaths:B,managedRuntimePaths:D}=await import("./managed-runtime-5a55ykqv.js");try{let K=D({platform:"darwin",home:z,environment:X});for(let L of[K,B(K)])if(L&&$(L))return Q(L)}catch{}return null}let{installationReceiptPath:Y,loadInstallationReceipt:Z}=await import("./install-receipt-7qanbz38.js");return Z(Y(X,z))?.version??null}export{Rz as runDaemonRelay,pq as runBackgroundAskRelay,cq as runAskRelay,tq as installedCliVersion};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{e as a,f as b,g as c,h as d,i as e,j as f,k as g,l as h,m as i,n as j,o as k,p as l,q as m}from"./vm-hands-entry-lite-eh3r5esz.js";import"./vm-hands-entry-lite-0seprnh3.js";import"./vm-hands-entry-lite-atg4z1vg.js";import"./vm-hands-entry-lite-trm3dn8c.js";import"./vm-hands-entry-lite-bh9zt0ex.js";import"./vm-hands-entry-lite-3ptq7p60.js";import"./vm-hands-entry-lite-8jpw9hj6.js";import"./vm-hands-entry-lite-zcdqwkm1.js";import"./vm-hands-entry-lite-mc3pkj0q.js";import"./vm-hands-entry-lite-h0keewxv.js";import"./vm-hands-entry-lite-r166b92s.js";import"./vm-hands-entry-lite-rtt2w6c6.js";import"./vm-hands-entry-lite-180h5amj.js";import"./vm-hands-entry-lite-g7h6wjqy.js";import"./vm-hands-entry-lite-e73s63fb.js";import"./vm-hands-entry-lite-157zwpm1.js";import"./vm-hands-entry-lite-se0ba5w1.js";import"./vm-hands-entry-lite-0z73amf7.js";import"./vm-hands-entry-lite-02zaqpgh.js";import"./vm-hands-entry-lite-awwpgj75.js";import"./vm-hands-entry-lite-adpzn7fe.js";import"./vm-hands-entry-lite-00800vjk.js";import"./vm-hands-entry-lite-hfv2tsm9.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-bwpay74g.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-jpcrkd8g.js";import"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-ebgackey.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-p1s0xyc2.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{g as runDisconnectCli,f as runConnectCli,m as restartConnectionWhenIdle,l as restartConnection,h as logoutConnection,k as connectionUsesUserChrome,i as connectionReport,j as connectionForBrowserExtension,c as connectionDirectory,d as computerDisconnected,e as addConnectionFolder,b as DISCONNECT_HELP,a as CONNECT_HELP};
|
package/bin/vm-hands/{custom-endpoint-device-baqm3872.js → custom-endpoint-device-3g0rc3wp.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{Ad as u,Bd as v,gd as a,hd as b,id as c,jd as d,kd as e,ld as f,md as g,nd as h,od as i,pd as j,qd as k,rd as l,sd as m,td as n,ud as o,vd as p,wd as q,xd as r,yd as s,zd as t}from"./vm-hands-entry-lite-
|
|
2
|
+
import{Ad as u,Bd as v,gd as a,hd as b,id as c,jd as d,kd as e,ld as f,md as g,nd as h,od as i,pd as j,qd as k,rd as l,sd as m,td as n,ud as o,vd as p,wd as q,xd as r,yd as s,zd as t}from"./vm-hands-entry-lite-e73s63fb.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{q as isCustomEndpointSessionRequiredMessage,v as isCustomEndpointFirewallBlockMessage,u as isCustomEndpointFailureMessage,s as isCustomEndpointDeviceFailureMessage,o as isCustomEndpointDeviceFailureCode,h as customEndpointRequestMatchesConfig,t as customEndpointFailureMessage,r as customEndpointDeviceFailureMessage,i as CustomEndpointDeviceRequestSchema,l as CustomEndpointDeviceReceiptSchema,j as CustomEndpointDeviceHeadersSchema,m as CustomEndpointDeviceCredentialSchema,k as CustomEndpointDeviceChunkSchema,f as CUSTOM_ENDPOINT_DEVICE_TIMEOUT_MS,p as CUSTOM_ENDPOINT_DEVICE_SESSION_REQUIRED,g as CUSTOM_ENDPOINT_DEVICE_SAFE_HEADERS,c as CUSTOM_ENDPOINT_DEVICE_MAX_RESPONSE_BYTES,d as CUSTOM_ENDPOINT_DEVICE_MAX_CHUNKS,e as CUSTOM_ENDPOINT_DEVICE_MAX_BODY_BYTES,n as CUSTOM_ENDPOINT_DEVICE_FAILURE_CODES,b as CUSTOM_ENDPOINT_DEVICE_CHUNK_BYTES,a as CUSTOM_ENDPOINT_DEVICE_CAPABILITY};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{Pg as a,Qg as b,Rg as c,Sg as d,Tg as e}from"./vm-hands-entry-lite-hfv2tsm9.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{b as passwdAccount,e as desktopHome,d as desktopAccount,c as configureDesktopAccount,a as DESKTOP_USER_ENV};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{Aj as
|
|
2
|
+
import{Aj as j,Bj as k,Cj as l,Dj as m,Ej as n,Fj as o,Gj as p,Hj as q,Ij as r,Jj as s,Kj as t,Lj as u,rj as a,sj as b,tj as c,uj as d,vj as e,wj as f,xj as g,yj as h,zj as i}from"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{j as parseDeviceWorkspace,g as isSessionWorktreePath,h as isDeviceWorkspacePath,i as deviceWorkspaceRootRelative,t as computeWorkerWorkspace,s as cloudSessionRootLayout,u as cloudSessionLayoutOfRoot,r as cloudSessionLayout,n as SIDECHAT_WORKSPACE_ID,f as SESSION_WORKTREE_ID,e as SESSION_WORKTREES,c as SESSION_WORKSPACE_LAYOUT,a as REASON_WORKSPACE_BASE,d as HANDS_WORKSPACE_LAYOUT_KEY,b as HANDS_WORKSPACE_BASE_KEY,q as CLOUD_SESSION_ROOT_SHELL_PATTERNS,p as CLOUD_SESSION_ROOT,m as CLOUD_SESSION_CONTROL_BASE,o as CLOUD_REPOSITORY_WORKSPACE_ID,l as CLOUD_PAYLOAD_UID,k as CLOUD_PAYLOAD_HOME};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{Rc as a,Sc as b,Tc as c,Uc as d,Vc as e,Wc as f,Xc as g,Yc as h,Zc as i}from"./vm-hands-entry-lite-
|
|
2
|
+
import{Rc as a,Sc as b,Tc as c,Uc as d,Vc as e,Wc as f,Xc as g,Yc as h,Zc as i}from"./vm-hands-entry-lite-r166b92s.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{e as selectCloudChildPath,a as REASON_HANDS_WORKER_VERSION,h as REASON_HANDS_WORKER_SOURCE,b as REASON_HANDS_WORKER_ENTRYPOINT,i as REASON_HANDS_WORKER_ARTIFACT_SHA256,f as REASON_HANDS_MAC_PTY_MEMBER_SOURCE,g as REASON_HANDS_LINUX_PTY_PROBE_SOURCE,d as REASON_HANDS_CLOUD_CHILD_PATH_MACOS,c as REASON_HANDS_CLOUD_CHILD_PATH_LINUX};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{Aa as iJ0}from"./vm-hands-entry-lite-
|
|
2
|
+
import{Aa as iJ0}from"./vm-hands-entry-lite-y99g8x7f.js";import{Hk as NV0,Ik as rn,Jk as EJ,Lk as an,Mk as X0}from"./vm-hands-entry-lite-f78n4wqt.js";var on={};var $T;var WT=an(()=>{$T=Error("Cannot find module 'fsevents'");$T.code="MODULE_NOT_FOUND";throw $T});var f0=EJ((EU0,X_)=>{var __dirname="/Users/runner/work/monorepo/monorepo/production/node_modules/.bun/playwright-core@1.60.0/node_modules/playwright-core/lib",tn=Object.create,H5=Object.defineProperty,sn=Object.getOwnPropertyDescriptor,Qj=Object.getOwnPropertyNames,en=Object.getPrototypeOf,Qi=Object.prototype.hasOwnProperty,e=(Q,Y)=>function(){return Y||(0,Q[Qj(Q)[0]])((Y={exports:{}}).exports,Y),Y.exports},eQ=(Q,Y)=>{for(var X in Y)H5(Q,X,{get:Y[X],enumerable:!0})},Yj=(Q,Y,X,J)=>{if(Y&&typeof Y==="object"||typeof Y==="function"){for(let G of Qj(Y))if(!Qi.call(Q,G)&&G!==X)H5(Q,G,{get:()=>Y[G],enumerable:!(J=sn(Y,G))||J.enumerable})}return Q},j1=(Q,Y,X)=>(X=Q!=null?tn(en(Q)):{},Yj(Y||!Q||!Q.__esModule?H5(X,"default",{value:Q,enumerable:!0}):X,Q)),Yi=(Q)=>Yj(H5({},"__esModule",{value:!0}),Q),Xi=e({"node_modules/colors/lib/styles.js"(Q,Y){var X={};Y.exports=X;var J={reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],grey:[90,39],brightRed:[91,39],brightGreen:[92,39],brightYellow:[93,39],brightBlue:[94,39],brightMagenta:[95,39],brightCyan:[96,39],brightWhite:[97,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgGray:[100,49],bgGrey:[100,49],bgBrightRed:[101,49],bgBrightGreen:[102,49],bgBrightYellow:[103,49],bgBrightBlue:[104,49],bgBrightMagenta:[105,49],bgBrightCyan:[106,49],bgBrightWhite:[107,49],blackBG:[40,49],redBG:[41,49],greenBG:[42,49],yellowBG:[43,49],blueBG:[44,49],magentaBG:[45,49],cyanBG:[46,49],whiteBG:[47,49]};Object.keys(J).forEach(function(G){var Z=J[G],$=X[G]=[];$.open="\x1B["+Z[0]+"m",$.close="\x1B["+Z[1]+"m"})}}),Ji=e({"node_modules/colors/lib/system/has-flag.js"(Q,Y){Y.exports=function(X,J){J=J||process.argv;var G=J.indexOf("--"),Z=/^-{1,2}/.test(X)?"":"--",$=J.indexOf(Z+X);return $!==-1&&(G===-1?!0:$<G)}}}),Gi=e({"node_modules/colors/lib/system/supports-colors.js"(Q,Y){var X=X0("os"),J=Ji(),G=process.env,Z=void 0;if(J("no-color")||J("no-colors")||J("color=false"))Z=!1;else if(J("color")||J("colors")||J("color=true")||J("color=always"))Z=!0;if("FORCE_COLOR"in G)Z=G.FORCE_COLOR.length===0||parseInt(G.FORCE_COLOR,10)!==0;function $(H){if(H===0)return!1;return{level:H,hasBasic:!0,has256:H>=2,has16m:H>=3}}function W(H){if(Z===!1)return 0;if(J("color=16m")||J("color=full")||J("color=truecolor"))return 3;if(J("color=256"))return 2;if(H&&!H.isTTY&&Z!==!0)return 0;var B=Z?1:0;if(process.platform==="win32"){var V=X.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(V[0])>=10&&Number(V[2])>=10586)return Number(V[2])>=14931?3:2;return 1}if("CI"in G){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(M){return M in G})||G.CI_NAME==="codeship")return 1;return B}if("TEAMCITY_VERSION"in G)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(G.TEAMCITY_VERSION)?1:0;if("TERM_PROGRAM"in G){var U=parseInt((G.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(G.TERM_PROGRAM){case"iTerm.app":return U>=3?3:2;case"Hyper":return 3;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(G.TERM))return 2;if(/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(G.TERM))return 1;if("COLORTERM"in G)return 1;if(G.TERM==="dumb")return B;return B}function K(H){var B=W(H);return $(B)}Y.exports={supportsColor:K,stdout:K(process.stdout),stderr:K(process.stderr)}}}),Zi=e({"node_modules/colors/lib/custom/trap.js"(Q,Y){Y.exports=function(J,G){var Z="";J=J||"Run the trap, drop the bass",J=J.split("");var $={a:["@","\u0104","\u023A","\u0245","\u0394","\u039B","\u0414"],b:["\xDF","\u0181","\u0243","\u026E","\u03B2","\u0E3F"],c:["\xA9","\u023B","\u03FE"],d:["\xD0","\u018A","\u0500","\u0501","\u0502","\u0503"],e:["\xCB","\u0115","\u018E","\u0258","\u03A3","\u03BE","\u04BC","\u0A6C"],f:["\u04FA"],g:["\u0262"],h:["\u0126","\u0195","\u04A2","\u04BA","\u04C7","\u050A"],i:["\u0F0F"],j:["\u0134"],k:["\u0138","\u04A0","\u04C3","\u051E"],l:["\u0139"],m:["\u028D","\u04CD","\u04CE","\u0520","\u0521","\u0D69"],n:["\xD1","\u014B","\u019D","\u0376","\u03A0","\u048A"],o:["\xD8","\xF5","\xF8","\u01FE","\u0298","\u047A","\u05DD","\u06DD","\u0E4F"],p:["\u01F7","\u048E"],q:["\u09CD"],r:["\xAE","\u01A6","\u0210","\u024C","\u0280","\u042F"],s:["\xA7","\u03DE","\u03DF","\u03E8"],t:["\u0141","\u0166","\u0373"],u:["\u01B1","\u054D"],v:["\u05D8"],w:["\u0428","\u0460","\u047C","\u0D70"],x:["\u04B2","\u04FE","\u04FC","\u04FD"],y:["\xA5","\u04B0","\u04CB"],z:["\u01B5","\u0240"]};return J.forEach(function(W){W=W.toLowerCase();var K=$[W]||[" "],H=Math.floor(Math.random()*K.length);if(typeof $[W]<"u")Z+=$[W][H];else Z+=W}),Z}}}),$i=e({"node_modules/colors/lib/custom/zalgo.js"(Q,Y){Y.exports=function(J,G){J=J||" he is here ";var Z={up:["\u030D","\u030E","\u0304","\u0305","\u033F","\u0311","\u0306","\u0310","\u0352","\u0357","\u0351","\u0307","\u0308","\u030A","\u0342","\u0313","\u0308","\u034A","\u034B","\u034C","\u0303","\u0302","\u030C","\u0350","\u0300","\u0301","\u030B","\u030F","\u0312","\u0313","\u0314","\u033D","\u0309","\u0363","\u0364","\u0365","\u0366","\u0367","\u0368","\u0369","\u036A","\u036B","\u036C","\u036D","\u036E","\u036F","\u033E","\u035B","\u0346","\u031A"],down:["\u0316","\u0317","\u0318","\u0319","\u031C","\u031D","\u031E","\u031F","\u0320","\u0324","\u0325","\u0326","\u0329","\u032A","\u032B","\u032C","\u032D","\u032E","\u032F","\u0330","\u0331","\u0332","\u0333","\u0339","\u033A","\u033B","\u033C","\u0345","\u0347","\u0348","\u0349","\u034D","\u034E","\u0353","\u0354","\u0355","\u0356","\u0359","\u035A","\u0323"],mid:["\u0315","\u031B","\u0300","\u0301","\u0358","\u0321","\u0322","\u0327","\u0328","\u0334","\u0335","\u0336","\u035C","\u035D","\u035E","\u035F","\u0360","\u0362","\u0338","\u0337","\u0361"," \u0489"]},$=[].concat(Z.up,Z.down,Z.mid);function W(B){var V=Math.floor(Math.random()*B);return V}function K(B){var V=!1;return $.filter(function(U){V=U===B}),V}function H(B,V){var U="",M,L;V=V||{},V.up=typeof V.up<"u"?V.up:!0,V.mid=typeof V.mid<"u"?V.mid:!0,V.down=typeof V.down<"u"?V.down:!0,V.size=typeof V.size<"u"?V.size:"maxi",B=B.split("");for(L in B){if(K(L))continue;switch(U=U+B[L],M={up:0,down:0,mid:0},V.size){case"mini":M.up=W(8),M.mid=W(2),M.down=W(8);break;case"maxi":M.up=W(16)+3,M.mid=W(4)+1,M.down=W(64)+3;break;default:M.up=W(8)+1,M.mid=W(6)/2,M.down=W(8)+1;break}var F=["up","mid","down"];for(var z in F){var N=F[z];for(var A=0;A<=M[N];A++)if(V[N])U=U+Z[N][W(Z[N].length)]}}return U}return H(J,G)}}}),Wi=e({"node_modules/colors/lib/maps/america.js"(Q,Y){Y.exports=function(X){return function(J,G,Z){if(J===" ")return J;switch(G%3){case 0:return X.red(J);case 1:return X.white(J);case 2:return X.blue(J)}}}}}),Ki=e({"node_modules/colors/lib/maps/zebra.js"(Q,Y){Y.exports=function(X){return function(J,G,Z){return G%2===0?J:X.inverse(J)}}}}),Hi=e({"node_modules/colors/lib/maps/rainbow.js"(Q,Y){Y.exports=function(X){var J=["red","yellow","green","blue","magenta"];return function(G,Z,$){if(G===" ")return G;else return X[J[Z++%J.length]](G)}}}}),Bi=e({"node_modules/colors/lib/maps/random.js"(Q,Y){Y.exports=function(X){var J=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(G,Z,$){return G===" "?G:X[J[Math.round(Math.random()*(J.length-2))]](G)}}}}),Vi=e({"node_modules/colors/lib/colors.js"(Q,Y){var X={};Y.exports=X,X.themes={};var J=X0("util"),G=X.styles=Xi(),Z=Object.defineProperties,$=new RegExp(/[\r\n]+/g);if(X.supportsColor=Gi().supportsColor,typeof X.enabled>"u")X.enabled=X.supportsColor()!==!1;X.enable=function(){X.enabled=!0},X.disable=function(){X.enabled=!1},X.stripColors=X.strip=function(N){return(""+N).replace(/\x1B\[\d+m/g,"")};var W=X.stylize=function(A,R){if(!X.enabled)return A+"";var q=G[R];if(!q&&R in X)return X[R](A);return q.open+A+q.close},K=/[|\\{}()[\]^$+*?.]/g,H=function(N){if(typeof N!=="string")throw TypeError("Expected a string");return N.replace(K,"\\$&")};function B(N){var A=function R(){return M.apply(R,arguments)};return A._styles=N,A.__proto__=U,A}var V=function(){var N={};return G.grey=G.gray,Object.keys(G).forEach(function(A){G[A].closeRe=new RegExp(H(G[A].close),"g"),N[A]={get:function(){return B(this._styles.concat(A))}}}),N}(),U=Z(function(){},V);function M(){var N=Array.prototype.slice.call(arguments),A=N.map(function(D){if(D!=null&&D.constructor===String)return D;else return J.inspect(D)}).join(" ");if(!X.enabled||!A)return A;var R=A.indexOf(`
|
|
3
3
|
`)!=-1,q=this._styles,O=q.length;while(O--){var E=G[q[O]];if(A=E.open+A.replace(E.closeRe,E.open)+E.close,R)A=A.replace($,function(D){return E.close+D+E.open})}return A}X.setTheme=function(N){if(typeof N==="string"){console.log("colors.setTheme now only accepts an object, not a string. If you are trying to set a theme from a file, it is now your (the caller's) responsibility to require the file. The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));");return}for(var A in N)(function(R){X[R]=function(q){if(typeof N[R]==="object"){var O=q;for(var E in N[R])O=X[N[R][E]](O);return O}return X[N[R]](q)}})(A)};function L(){var N={};return Object.keys(V).forEach(function(A){N[A]={get:function(){return B([A])}}}),N}var F=function(A,R){var q=R.split("");return q=q.map(A),q.join("")};X.trap=Zi(),X.zalgo=$i(),X.maps={},X.maps.america=Wi()(X),X.maps.zebra=Ki()(X),X.maps.rainbow=Hi()(X),X.maps.random=Bi()(X);for(z in X.maps)(function(N){X[N]=function(A){return F(X.maps[N],A)}})(z);var z;Z(X,L())}}),Ui=e({"node_modules/colors/safe.js"(Q,Y){var X=Vi();Y.exports=X}}),Mi=e({"node_modules/ms/index.js"(Q,Y){var X=1000,J=X*60,G=J*60,Z=G*24,$=Z*7,W=Z*365.25;Y.exports=function(U,M){M=M||{};var L=typeof U;if(L==="string"&&U.length>0)return K(U);else if(L==="number"&&isFinite(U))return M.long?B(U):H(U);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(U))};function K(U){if(U=String(U),U.length>100)return;var M=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(U);if(!M)return;var L=parseFloat(M[1]),F=(M[2]||"ms").toLowerCase();switch(F){case"years":case"year":case"yrs":case"yr":case"y":return L*W;case"weeks":case"week":case"w":return L*$;case"days":case"day":case"d":return L*Z;case"hours":case"hour":case"hrs":case"hr":case"h":return L*G;case"minutes":case"minute":case"mins":case"min":case"m":return L*J;case"seconds":case"second":case"secs":case"sec":case"s":return L*X;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return L;default:return}}function H(U){var M=Math.abs(U);if(M>=Z)return Math.round(U/Z)+"d";if(M>=G)return Math.round(U/G)+"h";if(M>=J)return Math.round(U/J)+"m";if(M>=X)return Math.round(U/X)+"s";return U+"ms"}function B(U){var M=Math.abs(U);if(M>=Z)return V(U,M,Z,"day");if(M>=G)return V(U,M,G,"hour");if(M>=J)return V(U,M,J,"minute");if(M>=X)return V(U,M,X,"second");return U+" ms"}function V(U,M,L,F){var z=M>=L*1.5;return Math.round(U/L)+" "+F+(z?"s":"")}}}),Xj=e({"node_modules/debug/src/common.js"(Q,Y){function X(J){Z.debug=Z,Z.default=Z,Z.coerce=V,Z.disable=H,Z.enable=W,Z.enabled=B,Z.humanize=Mi(),Z.destroy=U,Object.keys(J).forEach((M)=>{Z[M]=J[M]}),Z.names=[],Z.skips=[],Z.formatters={};function G(M){let L=0;for(let F=0;F<M.length;F++)L=(L<<5)-L+M.charCodeAt(F),L|=0;return Z.colors[Math.abs(L)%Z.colors.length]}Z.selectColor=G;function Z(M){let L,F=null,z,N;function A(...R){if(!A.enabled)return;let q=A,O=Number(new Date),E=O-(L||O);if(q.diff=E,q.prev=L,q.curr=O,L=O,R[0]=Z.coerce(R[0]),typeof R[0]!=="string")R.unshift("%O");let D=0;R[0]=R[0].replace(/%([a-zA-Z%])/g,(I,P)=>{if(I==="%%")return"%";D++;let C=Z.formatters[P];if(typeof C==="function"){let b=R[D];I=C.call(q,b),R.splice(D,1),D--}return I}),Z.formatArgs.call(q,R),(q.log||Z.log).apply(q,R)}if(A.namespace=M,A.useColors=Z.useColors(),A.color=Z.selectColor(M),A.extend=$,A.destroy=Z.destroy,Object.defineProperty(A,"enabled",{enumerable:!0,configurable:!1,get:()=>{if(F!==null)return F;if(z!==Z.namespaces)z=Z.namespaces,N=Z.enabled(M);return N},set:(R)=>{F=R}}),typeof Z.init==="function")Z.init(A);return A}function $(M,L){let F=Z(this.namespace+(typeof L>"u"?":":L)+M);return F.log=this.log,F}function W(M){Z.save(M),Z.namespaces=M,Z.names=[],Z.skips=[];let L=(typeof M==="string"?M:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let F of L)if(F[0]==="-")Z.skips.push(F.slice(1));else Z.names.push(F)}function K(M,L){let F=0,z=0,N=-1,A=0;while(F<M.length)if(z<L.length&&(L[z]===M[F]||L[z]==="*"))if(L[z]==="*")N=z,A=F,z++;else F++,z++;else if(N!==-1)z=N+1,A++,F=A;else return!1;while(z<L.length&&L[z]==="*")z++;return z===L.length}function H(){let M=[...Z.names,...Z.skips.map((L)=>"-"+L)].join(",");return Z.enable(""),M}function B(M){for(let L of Z.skips)if(K(M,L))return!1;for(let L of Z.names)if(K(M,L))return!0;return!1}function V(M){if(M instanceof Error)return M.stack||M.message;return M}function U(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return Z.enable(Z.load()),Z}Y.exports=X}}),Li=e({"node_modules/debug/src/browser.js"(Q,Y){Q.formatArgs=J,Q.save=G,Q.load=Z,Q.useColors=X,Q.storage=$(),Q.destroy=(()=>{let K=!1;return()=>{if(!K)K=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})(),Q.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function X(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let K;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(K=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(K[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function J(K){if(K[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+K[0]+(this.useColors?"%c ":" ")+"+"+Y.exports.humanize(this.diff),!this.useColors)return;let H="color: "+this.color;K.splice(1,0,H,"color: inherit");let B=0,V=0;K[0].replace(/%[a-zA-Z%]/g,(U)=>{if(U==="%%")return;if(B++,U==="%c")V=B}),K.splice(V,0,H)}Q.log=console.debug||console.log||(()=>{});function G(K){try{if(K)Q.storage.setItem("debug",K);else Q.storage.removeItem("debug")}catch(H){}}function Z(){let K;try{K=Q.storage.getItem("debug")||Q.storage.getItem("DEBUG")}catch(H){}if(!K&&typeof process<"u"&&"env"in process)K=process.env.DEBUG;return K}function $(){try{return localStorage}catch(K){}}Y.exports=Xj()(Q);var{formatters:W}=Y.exports;W.j=function(K){try{return JSON.stringify(K)}catch(H){return"[UnexpectedJSONParseError]: "+H.message}}}}),Ai=e({"node_modules/has-flag/index.js"(Q,Y){Y.exports=(X,J=process.argv)=>{let G=X.startsWith("-")?"":X.length===1?"-":"--",Z=J.indexOf(G+X),$=J.indexOf("--");return Z!==-1&&($===-1||Z<$)}}}),Ni=e({"node_modules/supports-color/index.js"(Q,Y){var X=X0("os"),J=X0("tty"),G=Ai(),{env:Z}=process,$;if(G("no-color")||G("no-colors")||G("color=false")||G("color=never"))$=0;else if(G("color")||G("colors")||G("color=true")||G("color=always"))$=1;function W(){if("FORCE_COLOR"in Z){if(Z.FORCE_COLOR==="true")return 1;if(Z.FORCE_COLOR==="false")return 0;return Z.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(Z.FORCE_COLOR,10),3)}}function K(V){if(V===0)return!1;return{level:V,hasBasic:!0,has256:V>=2,has16m:V>=3}}function H(V,{streamIsTTY:U,sniffFlags:M=!0}={}){let L=W();if(L!==void 0)$=L;let F=M?$:L;if(F===0)return 0;if(M){if(G("color=16m")||G("color=full")||G("color=truecolor"))return 3;if(G("color=256"))return 2}if(V&&!U&&F===void 0)return 0;let z=F||0;if(Z.TERM==="dumb")return z;if(process.platform==="win32"){let N=X.release().split(".");if(Number(N[0])>=10&&Number(N[2])>=10586)return Number(N[2])>=14931?3:2;return 1}if("CI"in Z){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some((N)=>(N in Z))||Z.CI_NAME==="codeship")return 1;return z}if("TEAMCITY_VERSION"in Z)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Z.TEAMCITY_VERSION)?1:0;if(Z.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Z){let N=Number.parseInt((Z.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Z.TERM_PROGRAM){case"iTerm.app":return N>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(Z.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Z.TERM))return 1;if("COLORTERM"in Z)return 1;return z}function B(V,U={}){let M=H(V,{streamIsTTY:V&&V.isTTY,...U});return K(M)}Y.exports={supportsColor:B,stdout:B({isTTY:J.isatty(1)}),stderr:B({isTTY:J.isatty(2)})}}}),Fi=e({"node_modules/debug/src/node.js"(Q,Y){var X=X0("tty"),J=X0("util");Q.init=B,Q.log=W,Q.formatArgs=Z,Q.save=K,Q.load=H,Q.useColors=G,Q.destroy=J.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),Q.colors=[6,2,3,4,5,1];try{let U=Ni();if(U&&(U.stderr||U).level>=2)Q.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(U){}Q.inspectOpts=Object.keys(process.env).filter((U)=>{return/^debug_/i.test(U)}).reduce((U,M)=>{let L=M.substring(6).toLowerCase().replace(/_([a-z])/g,(z,N)=>{return N.toUpperCase()}),F=process.env[M];if(/^(yes|on|true|enabled)$/i.test(F))F=!0;else if(/^(no|off|false|disabled)$/i.test(F))F=!1;else if(F==="null")F=null;else F=Number(F);return U[L]=F,U},{});function G(){return"colors"in Q.inspectOpts?Boolean(Q.inspectOpts.colors):X.isatty(process.stderr.fd)}function Z(U){let{namespace:M,useColors:L}=this;if(L){let F=this.color,z="\x1B[3"+(F<8?F:"8;5;"+F),N=` ${z};1m${M} \x1B[0m`;U[0]=N+U[0].split(`
|
|
4
4
|
`).join(`
|
|
5
5
|
`+N),U.push(z+"m+"+Y.exports.humanize(this.diff)+"\x1B[0m")}else U[0]=$()+M+" "+U[0]}function $(){if(Q.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function W(...U){return process.stderr.write(J.formatWithOptions(Q.inspectOpts,...U)+`
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{ge as a,he as b,ie as c,je as d,ke as e,le as f,me as g,ne as h,oe as i,pe as j,qe as k,re as l,se as m,te as n,ue as o,ve as p,we as q,xe as r}from"./vm-hands-entry-lite-
|
|
2
|
+
import{ge as a,he as b,ie as c,je as d,ke as e,le as f,me as g,ne as h,oe as i,pe as j,qe as k,re as l,se as m,te as n,ue as o,ve as p,we as q,xe as r}from"./vm-hands-entry-lite-0z73amf7.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{r as runInstallReceiptCli,q as recordInstallationReceipt,k as pathEntryAddedByInstaller,l as parseInstallationReceipt,m as loadInstallationReceipt,j as installerReasonAlias,h as installationReceiptPath,g as installationConfigHome,i as installationAliasMatchesTarget,n as hasInstallationDeviceConsent,o as authorizeInstallationForFutureDevice,p as authorizeDesktopInstallationForFutureDevice,a as INSTALLATION_RECEIPT_SCHEMA_VERSION,b as INSTALLATION_DEVICE_CONSENT_VERSION,f as INSTALLATION_BACKGROUND_MODES,e as FUTURE_DEVICE_CONSENT_SCOPE,c as DESKTOP_ACCOUNT_ACCESS_VERSION,d as DESKTOP_ACCOUNT_ACCESS_SCOPE};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{Dd as a,Ed as b,Fd as c,Gd as d,Hd as e,Id as f,Jd as g,Kd as h,Ld as i,Md as j,Nd as k,Od as l}from"./vm-hands-entry-lite-157zwpm1.js";import"./vm-hands-entry-lite-se0ba5w1.js";import"./vm-hands-entry-lite-0z73amf7.js";import"./vm-hands-entry-lite-02zaqpgh.js";import"./vm-hands-entry-lite-awwpgj75.js";import"./vm-hands-entry-lite-adpzn7fe.js";import"./vm-hands-entry-lite-00800vjk.js";import"./vm-hands-entry-lite-hfv2tsm9.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-bwpay74g.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-jpcrkd8g.js";import"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-ebgackey.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-p1s0xyc2.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{d as runRelayed,e as runMacComputerUse,l as runLocalAutomation,k as runAutomationCallLocally,b as parseAutomationPayload,g as localUserChromeProfiles,h as localUserChromeInstance,f as localUserChromeHost,j as localBrowserProfile,c as localAutomationAvailable,i as ensureLocalBrowser,a as AUTOMATION_CHUNK_BYTES};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{$a as m,Ra as c,Sa as d,Ta as e,Ua as f,Va as g,Wa as h,Xa as i,Ya as j,Za as k,_a as l,ab as n,bb as o,cb as p,db as q,eb as r,fb as s,gb as t,hb as u}from"./vm-hands-entry-lite-8jpw9hj6.js";import"./vm-hands-entry-lite-zcdqwkm1.js";import"./vm-hands-entry-lite-mc3pkj0q.js";import"./vm-hands-entry-lite-h0keewxv.js";import"./vm-hands-entry-lite-r166b92s.js";import"./vm-hands-entry-lite-rtt2w6c6.js";import"./vm-hands-entry-lite-180h5amj.js";import"./vm-hands-entry-lite-g7h6wjqy.js";import"./vm-hands-entry-lite-e73s63fb.js";import"./vm-hands-entry-lite-157zwpm1.js";import"./vm-hands-entry-lite-se0ba5w1.js";import"./vm-hands-entry-lite-0z73amf7.js";import"./vm-hands-entry-lite-02zaqpgh.js";import"./vm-hands-entry-lite-awwpgj75.js";import"./vm-hands-entry-lite-adpzn7fe.js";import"./vm-hands-entry-lite-00800vjk.js";import"./vm-hands-entry-lite-hfv2tsm9.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-bwpay74g.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-jpcrkd8g.js";import{Wi as b}from"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-ebgackey.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-p1s0xyc2.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import{Gk as a}from"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{j as writeOpenFlags,g as spawnCaptured,f as sandboxProfile,e as safeEnvironment,k as runTransferCapability,i as runFileCapability,t as rebindLocalHandsControl,b as isProtectedLocalPath,u as executeLocalOperation,m as enrolledWorkspaceRootFingerprint,q as enrolledRootPaths,p as enrolledHomeContainedRootFingerprints,n as enrolledAccountRootPath,o as enrolledAccountRootFingerprint,s as deliverLocalHandsEnvironment,h as defaultLocalCommandRunner,d as confinedExecutionShell,r as capabilityInventoryForRoots,c as SHORT_REQUEST_CAPABILITIES,a as LocalCapabilityError,l as LOCAL_CAPABILITY_REGISTRY};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{kk as a,lk as b,mk as c,nk as d,ok as e,pk as f,qk as g}from"./vm-hands-entry-lite-p1s0xyc2.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{f as trackDesktopRun,c as releaseLocalDesktop,a as noteLocalDesktopUse,g as holdLocalDesktop,b as forgetLocalDesktopUse,e as DESKTOP_WAIT_MS,d as DESKTOP_IDLE_MS};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{ck as a,dk as b,ek as c,fk as d,gk as e,hk as f,ik as g}from"./vm-hands-entry-lite-ebgackey.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{c as requestMacScreenAccess,d as parseMacWindowBounds,a as parseMacScreenStatus,e as openMacWindowBounds,g as openMacInput,b as macScreenStatus,f as MacInputTranslator};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{fg as a,gg as b,hg as c,ig as d,jg as e,kg as f,lg as g,mg as h}from"./vm-hands-entry-lite-awwpgj75.js";import"./vm-hands-entry-lite-adpzn7fe.js";import"./vm-hands-entry-lite-00800vjk.js";import"./vm-hands-entry-lite-hfv2tsm9.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-bwpay74g.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-jpcrkd8g.js";import"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-ebgackey.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-p1s0xyc2.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{h as runLocalDisplayStream,f as privateDirectory,c as parseDisplayStreamPayload,e as localDisplayReady,d as localDisplayAvailable,g as ensureLinuxDesktop,a as LOCAL_DISPLAY_MAX_SESSION_MS,b as LINUX_WORKER_DISPLAY};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{og as a,pg as b,qg as c,rg as d,sg as e,tg as f,ug as g,vg as h,wg as i,xg as j}from"./vm-hands-entry-lite-adpzn7fe.js";import"./vm-hands-entry-lite-00800vjk.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-bwpay74g.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{j as runLocalPtySession,e as resolvePtyWorkingDirectory,g as ptyRuntimeSupported,d as parsePtyStartPayload,h as defaultSpawnPty,f as defaultLoginShell,i as defaultConnect,a as LOCAL_PTY_MAX_SESSION_MS,c as LOCAL_PTY_MAX_SESSIONS,b as LOCAL_PTY_MAX_BUFFERED_OUTPUT_BYTES};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{$ as D,L as n,M as o,N as p,O as q,P as r,Q as s,R as t,S as u,T as v,U as w,V as x,W as y,X as z,Y as A,Z as B,_ as C,aa as E,ba as F,ca as G,da as H,ea as I,fa as J,ga as K,ha as L,ia as M,ja as N,ka as O,la as P,ma as Q,na as R,oa as S,pa as T,qa as U,ra as V,sa as W,ta as X,ua as Y}from"./vm-hands-entry-lite-
|
|
2
|
+
import{$ as D,L as n,M as o,N as p,O as q,P as r,Q as s,R as t,S as u,T as v,U as w,V as x,W as y,X as z,Y as A,Z as B,_ as C,aa as E,ba as F,ca as G,da as H,ea as I,fa as J,ga as K,ha as L,ia as M,ja as N,ka as O,la as P,ma as Q,na as R,oa as S,pa as T,qa as U,ra as V,sa as W,ta as X,ua as Y}from"./vm-hands-entry-lite-bh9zt0ex.js";import"./vm-hands-entry-lite-180h5amj.js";import"./vm-hands-entry-lite-g7h6wjqy.js";import{$h as d,Yh as a,Zh as b,_h as c,ai as e,bi as f,ci as g,di as h,fi as i,gi as j,ii as k,ji as l,ki as m}from"./vm-hands-entry-lite-bwpay74g.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{E as verifyManagedRuntimeCodeSignatures,m as verifyManagedRuntimeArtifact,H as updateManagedRuntime,l as sha256Hex,Q as rollbackManagedRuntime,R as recoverManagedRuntimeActivation,V as recordManagedRuntimeLifecycle,U as readManagedRuntimeLifecycleEvents,j as parseAndVerifyManagedRuntimeManifest,k as parseAndVerifyLegacyManagedRuntimeManifest,z as managedRuntimeVersionPath,C as managedRuntimeTarget,K as managedRuntimePointerVersion,x as managedRuntimePaths,O as managedRuntimeExecutableVersion,A as managedRuntimeCredentialLibraryPath,h as managedRuntimeCredentialLibraryAssetName,g as managedRuntimeAssetName,y as legacyManagedRuntimePaths,N as isManagedRuntimeVersionExecutable,M as isManagedRuntimeExecutable,J as installManagedRuntimeLauncher,I as installManagedRuntimeArtifact,X as flushManagedRuntimeLifecycleEvents,F as fetchManagedRuntimeBytes,G as defaultManagedRuntimeHealthCheck,L as currentManagedRuntimeVersion,B as compareManagedRuntimeVersions,i as canonicalJson,Y as bootstrapManagedRuntime,D as assertManagedRuntimeSignatureEvidence,P as activateManagedRuntime,T as acquireManagedRuntimeLock,S as acquireManagedRuntimeDirectoryLock,W as acknowledgeManagedRuntimeLifecycleEvents,f as ManagedRuntimeError,v as MANAGED_RUNTIME_UPDATE_HEALTH_TIMEOUT_MS,e as MANAGED_RUNTIME_TARGETS,d as MANAGED_RUNTIME_MAX_MANIFEST_BYTES,p as MANAGED_RUNTIME_MAX_LIFECYCLE_EVENTS,q as MANAGED_RUNTIME_MAX_LIFECYCLE_BYTES,c as MANAGED_RUNTIME_MAX_ARTIFACT_BYTES,b as MANAGED_RUNTIME_MANIFEST_VERSION,r as MANAGED_RUNTIME_MANIFEST_URL,o as MANAGED_RUNTIME_LIFECYCLE_VERSION,w as MANAGED_RUNTIME_LIFECYCLE_EVENTS,n as MANAGED_RUNTIME_LAYOUT_VERSION,u as MANAGED_RUNTIME_HEALTH_TIMEOUT_MS,s as MANAGED_RUNTIME_FETCH_TIMEOUT_MS,t as MANAGED_RUNTIME_ARTIFACT_FETCH_TIMEOUT_MS,a as LEGACY_MANAGED_RUNTIME_MANIFEST_VERSION};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{$e as t,Af as U,Bf as V,Cf as W,Df as X,Ef as Y,Ff as Z,Gf as _,Hf as $,Ie as a,If as aa,Je as b,Jf as ba,Ke as c,Kf as ca,Le as d,Lf as da,Me as e,Mf as ea,Ne as f,Nf as fa,Oe as g,Of as ga,Pe as h,Pf as ha,Qe as i,Qf as ia,Re as j,Rf as ja,Se as k,Sf as ka,Te as l,Tf as la,Ue as m,Ve as n,We as o,Xe as p,Ye as q,Ze as r,_e as s,af as u,bf as v,cf as w,df as x,ef as y,ff as z,gf as A,hf as B,if as C,jf as D,kf as E,lf as F,mf as G,nf as H,of as I,pf as J,qf as K,rf as L,sf as M,tf as N,uf as O,vf as P,wf as Q,xf as R,yf as S,zf as T}from"./vm-hands-entry-lite-02zaqpgh.js";import"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{ca as parseLocalRuntimeRootsSyncResponse,_ as parseLocalRuntimeRegistrationResponse,Z as parseLocalRuntimeProofChallenge,ia as parseLocalRuntimeOperationHeartbeatResponse,ja as parseLocalRuntimeOperationEventsResponse,ka as parseLocalRuntimeOperationEnvironmentResponse,la as parseLocalRuntimeOperationCompletionResponse,ha as parseLocalRuntimeOperationClaim,fa as parseLocalRuntimeLocalSubscriptionResponse,ga as parseLocalRuntimeLifecycleResponse,da as parseLocalRuntimeIdentityResponse,aa as parseLocalRuntimeHeartbeatResponse,ba as parseLocalRuntimeFirstHeartbeat,Y as parseLocalRuntimeErrorEnvelope,$ as parseLocalRuntimeEnrollmentResponse,ea as parseLocalRuntimeDisconnectResponse,j as localRuntimeSessionRoutable,X as buildLocalRuntimeDeviceProofBytes,S as WORKER_STARTUP_TIMING_STAGES,N as WORKER_PREVIEW_CARRIED_JOBS,q as VM_HANDS_WORKSPACE_GRANT_CONTROL,p as VM_HANDS_WORKSPACE_DEFERRED_KEY,r as VM_HANDS_UNBIND_UNVERIFIED_EVENT,e as RELAY_HOST_ALIAS_VERSION,d as RELAY_HOST_ALIAS_HEADER,T as LOCAL_RUNTIME_WORKER_STARTUP_MAX_MS,k as LOCAL_RUNTIME_SESSION_VM_HANDS_REGISTER,h as LOCAL_RUNTIME_SESSION_PRE_AUTH_MAX_BYTES,g as LOCAL_RUNTIME_SESSION_PATH,m as LOCAL_RUNTIME_SESSION_CLOSE,l as LOCAL_RUNTIME_SESSION_CLAIM_WAIT_MAX_MS,i as LOCAL_RUNTIME_SESSION_AUTH_DEADLINE_MS,b as LOCAL_RUNTIME_ROUTE_PREFIX,f as LOCAL_RUNTIME_ROUTES,a as LOCAL_RUNTIME_PROTOCOL_VERSION,U as LOCAL_RUNTIME_LIFECYCLE_EVENTS,W as LOCAL_RUNTIME_LEGACY_DEVICE_PROOF_TAG,V as LOCAL_RUNTIME_DEVICE_PROOF_TAG,c as LOCAL_OPERATION_MAX_BYTES,P as JOBS_START_WAIT_KEY,O as JOBS_START_WAIT,K as HANDS_SESSION_GROUP_KEY,J as HANDS_SESSION_GROUP,M as HANDS_SESSION_CAP_NONE,L as HANDS_SESSION_CAP_KEY,v as HANDS_REBIND_KEY,w as HANDS_REBIND_CONTROL,u as HANDS_REBIND,G as HANDS_MODEL_JOBS_EGRESS_KEY,F as HANDS_MODEL_JOBS_EGRESS,C as HANDS_LARGE_ENVIRONMENT_KEY,B as HANDS_LARGE_ENVIRONMENT,I as HANDS_JOBS_USER_KEY,H as HANDS_JOBS_USER,A as HANDS_HEADLESS_BROWSER_KEY,z as HANDS_HEADLESS_BROWSER,o as HANDS_ENVIRONMENT_DELIVER_CONTROL,n as HANDS_ENVIRONMENT_DELIVERY,t as HANDS_ENVIRONMENT_AT_CLAIM_KEY,s as HANDS_ENVIRONMENT_AT_CLAIM,E as HANDS_CONFINEMENT_KEY,D as HANDS_CONFINEMENT,y as HANDS_CLOUD_ACCESS_KEY,x as HANDS_CLOUD_ACCESS,Q as AUTOMATION_USER_CHROME,R as AUTOMATION_CLOUD_SESSIONS};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{Ii as a,Ji as b,Ki as c,Li as d,Mi as e,Ni as f,Oi as g,Pi as h,Qi as i,Ri as j}from"./vm-hands-entry-lite-jpcrkd8g.js";import"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-ebgackey.js";import"./vm-hands-entry-lite-g87z5eb6.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{j as runPermissionsCli,d as reasonIdentity,e as readMacPermissions,f as permissionsSummary,i as parsePermissionsArgs,c as fullDiskAccessTarget,g as formatMacPermissions,h as allowMacPermissions,a as PERMISSIONS_HELP,b as MAC_PERMISSION_IDS};
|
package/bin/vm-hands/{reason-hands-protocol-z95pxxbh.js → reason-hands-protocol-mw7ba8vz.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{$g as
|
|
2
|
+
import{$g as d,Ah as E,Bh as F,Ch as G,Dh as H,Eh as I,Fh as J,Gh as K,Hh as L,Ih as M,Jh as N,Kh as O,Lh as P,Mh as Q,Nh as R,Oh as S,Ph as T,Qh as U,Rh as V,Sh as W,Th as X,Uh as Y,Vh as Z,Yg as a,Zg as b,_g as c,ah as e,bh as f,ch as g,dh as h,eh as i,fh as j,gh as k,hh as l,ih as m,jh as n,kh as o,lh as p,mh as q,nh as r,oh as s,ph as t,qh as u,rh as v,sh as w,th as x,uh as y,vh as z,wh as A,xh as B,yh as C,zh as D}from"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{w as reasonHandsCloseReason,Y as parseReasonHandsSdkResponse,X as parseReasonHandsSdkRequest,J as parseReasonHandsResult,I as parseReasonHandsRequest,P as parseReasonHandsPtyReceipt,K as parseReasonHandsProgress,O as parseReasonHandsJobResult,N as parseReasonHandsJobRequest,M as parseReasonHandsClaimAck,L as parseReasonHandsClaim,Q as parseReasonHandsCancelRequest,R as parseReasonHandsCancelAck,F as isReasonHandsUuid,D as isReasonHandsRequestId,G as isReasonHandsPtyJobId,E as isReasonHandsGeneration,H as isReasonHandsArtifactSha256,Z as encodeReasonHandsSdkResponse,T as encodeReasonHandsResult,S as encodeReasonHandsRequest,U as encodeReasonHandsProgress,W as encodeReasonHandsClaimAck,V as encodeReasonHandsClaim,y as REASON_HANDS_WORKSPACE_BEFORE_MAX_OUTPUT_CHARS,A as REASON_HANDS_SDK_MAX_QUERY_CHARS,z as REASON_HANDS_SDK_MAX_NAME_CHARS,n as REASON_HANDS_PTY_PROTOCOL_VERSION,q as REASON_HANDS_PTY_MAX_PENDING_INPUT_BYTES,p as REASON_HANDS_PTY_MAX_OUTPUT_BYTES,o as REASON_HANDS_PTY_MAX_INPUT_BYTES,r as REASON_HANDS_PTY_MAX_DIMENSION,s as REASON_HANDS_PTY_CLEANUP_SWEEP_MS,u as REASON_HANDS_PTY_CLEANUP_RECEIPT_MS,t as REASON_HANDS_PTY_ANCHOR_EXIT_MS,a as REASON_HANDS_PROTOCOL_VERSION,f as REASON_HANDS_OUTPUT_TRUNCATED_MARKER,d as REASON_HANDS_MAX_STRUCTURED_INPUT_CHARS,e as REASON_HANDS_MAX_OUTPUT_CHARS,c as REASON_HANDS_MAX_INPUT_CHARS,b as REASON_HANDS_MAX_FRAME_BYTES,g as REASON_HANDS_MAX_ERROR_CHARS,h as REASON_HANDS_JOB_PROTOCOL_VERSION,l as REASON_HANDS_JOB_MAX_RECORDS,k as REASON_HANDS_JOB_MAX_OUTPUT_CHUNKS,j as REASON_HANDS_JOB_MAX_OUTPUT_CHARS,i as REASON_HANDS_JOB_MAX_INPUT_CHARS,B as REASON_HANDS_JOB_ERRORS,m as REASON_HANDS_JOB_CONTROL_MAX_FRAME_BYTES,x as REASON_HANDS_ERROR_CODES,v as REASON_HANDS_CLOSE_CODES,C as HandsProtocolError};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{$d as l,Qd as a,Rd as b,Sd as c,Td as d,Ud as e,Vd as f,Wd as g,Xd as h,Yd as i,Zd as j,_d as k,ae as m,be as n,ce as o,de as p,ee as q,fe as r}from"./vm-hands-entry-lite-
|
|
2
|
+
import{$d as l,Qd as a,Rd as b,Sd as c,Td as d,Ud as e,Vd as f,Wd as g,Xd as h,Yd as i,Zd as j,_d as k,ae as m,be as n,ce as o,de as p,ee as q,fe as r}from"./vm-hands-entry-lite-se0ba5w1.js";import"./vm-hands-entry-lite-0z73amf7.js";import"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-f78n4wqt.js";export{g as workerServiceRetargetPending,f as workerServiceProgram,m as workerServiceProcessRunning,e as workerServiceLauncher,j as workerServiceDefinitions,n as workerServiceDefinitionCurrent,l as retireLegacyWorkerService,q as retargetWorkerServiceLogs,p as restartWorkerService,r as removeWorkerService,i as isConnectServiceLabel,k as installedWorkerService,o as installWorkerService,c as defaultWorkerServiceHost,h as connectServiceLabel,d as WorkerServiceError,a as WORKER_SERVICE_ENV,b as WORKER_IDENTITY_UNAVAILABLE_CODE};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{a as jq,b as Dq,c as Vq,d as kq,g as Hq,h as zq,m as Aq}from"./vm-hands-entry-lite-
|
|
2
|
+
import{a as jq,b as Dq,c as Vq,d as kq,g as Hq,h as zq,m as Aq}from"./vm-hands-entry-lite-eh3r5esz.js";import"./vm-hands-entry-lite-0seprnh3.js";import{y as Fq}from"./vm-hands-entry-lite-atg4z1vg.js";import{A as Wq,K as bq}from"./vm-hands-entry-lite-trm3dn8c.js";import"./vm-hands-entry-lite-bh9zt0ex.js";import"./vm-hands-entry-lite-3ptq7p60.js";import"./vm-hands-entry-lite-8jpw9hj6.js";import"./vm-hands-entry-lite-zcdqwkm1.js";import"./vm-hands-entry-lite-mc3pkj0q.js";import"./vm-hands-entry-lite-h0keewxv.js";import"./vm-hands-entry-lite-r166b92s.js";import"./vm-hands-entry-lite-rtt2w6c6.js";import"./vm-hands-entry-lite-180h5amj.js";import"./vm-hands-entry-lite-g7h6wjqy.js";import"./vm-hands-entry-lite-e73s63fb.js";import"./vm-hands-entry-lite-157zwpm1.js";import"./vm-hands-entry-lite-se0ba5w1.js";import{se as Kq}from"./vm-hands-entry-lite-0z73amf7.js";import"./vm-hands-entry-lite-02zaqpgh.js";import"./vm-hands-entry-lite-awwpgj75.js";import"./vm-hands-entry-lite-adpzn7fe.js";import{Fg as xq,Kg as Bq}from"./vm-hands-entry-lite-00800vjk.js";import"./vm-hands-entry-lite-hfv2tsm9.js";import"./vm-hands-entry-lite-wpcagqfw.js";import"./vm-hands-entry-lite-a1yy1yp3.js";import"./vm-hands-entry-lite-bwpay74g.js";import{ni as z,pi as u,qi as s}from"./vm-hands-entry-lite-csecgmaa.js";import"./vm-hands-entry-lite-ksz1k1dh.js";import"./vm-hands-entry-lite-jpcrkd8g.js";import"./vm-hands-entry-lite-mft9ke08.js";import"./vm-hands-entry-lite-pr8bcm6h.js";import{mj as l}from"./vm-hands-entry-lite-5x04hakp.js";import"./vm-hands-entry-lite-3nr9q3nf.js";import{Mj as N}from"./vm-hands-entry-lite-qw544vmt.js";import"./vm-hands-entry-lite-xbmkejrz.js";import"./vm-hands-entry-lite-ebgackey.js";import{jk as Q}from"./vm-hands-entry-lite-8pgggvbb.js";import"./vm-hands-entry-lite-p1s0xyc2.js";import"./vm-hands-entry-lite-fb02h1zm.js";import"./vm-hands-entry-lite-8e932j3c.js";import"./vm-hands-entry-lite-88h9vwrv.js";import"./vm-hands-entry-lite-g87z5eb6.js";import{Mk as Gq}from"./vm-hands-entry-lite-f78n4wqt.js";import{createHash as aq,randomBytes as nq}from"crypto";import{readFileSync as eq,realpathSync as Pq,renameSync as q3,unlinkSync as J3,writeFileSync as X3}from"fs";import{dirname as Y3,join as yq}from"path";import{spawnSync as wq}from"child_process";import{accessSync as Lq,constants as fq,existsSync as L,mkdirSync as Sq,readFileSync as hq,renameSync as Cq,writeFileSync as gq}from"fs";import{homedir as mq}from"os";import{delimiter as pq,dirname as dq,join as T}from"path";import{existsSync as Eq,readFileSync as Mq}from"fs";import{join as _q}from"path";var vq=`---
|
|
3
3
|
name: reason
|
|
4
4
|
description: Integrate software with Reason's public REST API using a scoped API key. Use for API clients, CI, service integrations, or cloud coding-session automation.
|
|
5
5
|
---
|
|
@@ -79,7 +79,7 @@ This computer
|
|
|
79
79
|
`),W.version)J.stdout.write(`Version: ${W.version}${W.version===N?"":` (${N} is installed; \`reason connect\` restarts it on that)`}
|
|
80
80
|
`);if(J.stdout.write(`Folder: ${W.folder}
|
|
81
81
|
`),J.stdout.write(`Sessions: ${W.sessions_running===null?"":`${W.sessions_running} running, `}${W.sessions_max===null?"every Session you start":W.sessions_max===1?"one at a time":`up to ${W.sessions_max} at once`}
|
|
82
|
-
`),A){let $=A,H=await(X.readPermissionsSummary??(async()=>{let{permissionsSummary:Rq,readMacPermissions:Oq,reasonIdentity:Tq}=await import("./permissions-
|
|
82
|
+
`),A){let $=A,H=await(X.readPermissionsSummary??(async()=>{let{permissionsSummary:Rq,readMacPermissions:Oq,reasonIdentity:Tq}=await import("./permissions-7s8nfw35.js"),{macScreenStatus:Uq}=await import("./local-display-mac-7havkbhd.js");return Rq(await Oq({identity:()=>Tq(),grants:Uq,worker:async()=>$}))}))().catch(()=>null);if(H)J.stdout.write(`${H}
|
|
83
83
|
`);J.stdout.write(`Keep awake: ${A.keep_awake.enabled?"on":"off"}${A.keep_awake.holding?" (holding)":""}
|
|
84
84
|
`)}if(W.service)J.stdout.write(`Logs: ${W.service.logs}
|
|
85
85
|
`);for(let $ of W.workspaces??[]){let H=$.state==="removed"?"removed from that workspace":$.blocked?"offline (this computer is outside that workspace's allowed networks)":$.device_id?Qq[$.state]:"connecting";J.stdout.write(`Also in workspace ${$.name??$.organization_id}${$.account?" (another Reason account's)":""}: ${H}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{ki as v}from"./vm-hands-entry-lite-y2s2w174.js";import{mi as r,si as o,vi as g,wi as h,xi as a}from"./vm-hands-entry-lite-e2mjbqmr.js";import{lj as V}from"./vm-hands-entry-lite-fyvgav60.js";import{ik as U}from"./vm-hands-entry-lite-e05sgnwe.js";import{createHmac as mQ,createPublicKey as CQ,randomBytes as LQ,randomUUID as t,verify as EQ}from"crypto";import{chmodSync as _,existsSync as e,mkdirSync as IQ,readFileSync as gQ,realpathSync as hQ,renameSync as vQ,statSync as yQ,unlinkSync as uQ,writeFileSync as pQ}from"fs";import{basename as cQ,dirname as F,isAbsolute as QQ,join as A,resolve as lQ}from"path";var WZ=[Object.freeze({family:"ara",channel:"stable",applicationId:"so.ara.desktop"}),Object.freeze({family:"ara",channel:"staging",applicationId:"so.ara.desktop.staging"}),Object.freeze({family:"reason",channel:"stable",applicationId:"com.reasonmachines.desktop"}),Object.freeze({family:"reason",channel:"staging",applicationId:"com.reasonmachines.desktop.staging"})];var zQ="REASON_DESKTOP_RUNTIME",UQ="REASON_DESKTOP_RUNTIME_CHANNEL",JQ="REASON_DESKTOP_RUNTIME_INSTANCE_ID",MQ="REASON_DESKTOP_RUNTIME_WORKSPACE_SCOPE",zZ={[zQ]:"ARA_DESKTOP_RUNTIME",[UQ]:"ARA_DESKTOP_RUNTIME_CHANNEL",[JQ]:"ARA_DESKTOP_RUNTIME_INSTANCE_ID",[MQ]:"ARA_DESKTOP_RUNTIME_WORKSPACE_SCOPE"};function m(Q){if(Q===void 0)return;if(!/^[a-f0-9]{64}$/.test(Q))throw Error("Invalid desktop workspace scope.");return Q}import{chmodSync as N,existsSync as z,mkdirSync as O,readFileSync as C,realpathSync as xQ,renameSync as wQ,unlinkSync as R,writeFileSync as f}from"fs";import{createPrivateKey as KQ,createPublicKey as VQ,generateKeyPairSync as AQ,randomUUID as NQ,sign as OQ}from"crypto";import{createRequire as RQ}from"module";import{homedir as fQ,platform as y}from"os";import{dirname as kQ,join as J}from"path";var L=1,BQ=16384,M=65536,_Q=128,TQ=128,u=65536;class q extends Error{code;nativeStatus;constructor(Q,Z){super(`Reason Device proof boundary failed (${Q}).${Z===void 0?"":` Native status: ${Z}.`}`);this.code=Q;this.nativeStatus=Z;this.name="LocalCredentialBoundaryError"}}function p(Q){if(Q.code==="proof_key_read_failed"&&Q.nativeStatus===-25300)return"proof_key_missing";switch(Q.nativeStatus){case-25308:return"keychain_interaction_required";case-25293:return"keychain_access_denied";case-25291:return"keychain_unavailable";default:return Q.code}}var k=null;function c(){if(!k)try{k=RQ(import.meta.url)("bun:ffi")}catch{throw new q("native_boundary_unavailable")}return k}function FQ(Q){if(typeof Q!=="string")return null;try{let Z=new URL(Q);if(Z.protocol!=="https:"&&Z.hostname!=="127.0.0.1"&&Z.hostname!=="localhost"&&Z.hostname!=="[::1]"&&Z.hostname!=="::1")return null;return Z.origin}catch{return null}}function PQ(Q){if(!Q||typeof Q!=="object"||Array.isArray(Q))throw new q("invalid_credential_record");let Z=Q,$=FQ(Z.apiOrigin);if(Z.version!==L||!$||typeof Z.orgId!=="string"||Z.orgId.length<1||Z.orgId.length>160||typeof Z.deviceId!=="string"||Z.deviceId.length<1||Z.deviceId.length>160||typeof Z.credential!=="string"||!/^(?:reason|ara)_dev_/.test(Z.credential)||Z.credential.length>4096)throw new q("invalid_credential_record");return{version:L,apiOrigin:$,orgId:Z.orgId,deviceId:Z.deviceId,credential:Z.credential}}function DQ(Q=process.execPath){let Z=Q;try{Z=xQ(Q)}catch{}return v(kQ(Z))}function j(Q){return c().ptr(Q)}function bQ(Q){if(!z(Q))throw new q("native_boundary_unavailable");let{dlopen:Z,FFIType:$}=c();try{return Z(Q,{ara_device_configure_scope:{args:[$.ptr,$.u64],returns:$.i32},ara_device_key_load_public:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_key_create_fresh_public:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_key_sign:{args:[$.ptr,$.u64,$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_key_is_non_extractable:{args:[$.ptr],returns:$.i32},ara_device_key_delete:{args:[$.ptr],returns:$.i32},ara_device_binding_read:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_binding_create:{args:[$.ptr,$.u64],returns:$.i32},ara_device_binding_update:{args:[$.ptr,$.u64],returns:$.i32},ara_device_binding_delete:{args:[$.ptr],returns:$.i32},ara_device_keychain_read:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_keychain_delete:{args:[$.ptr],returns:$.i32}})}catch(W){if(W instanceof q)throw W;throw new q("native_boundary_unavailable")}}function E(Q){return Buffer.from(Q).toString("base64url")}function x(Q){if(typeof Q!=="string"||!/^[A-Za-z0-9_-]{87}$/.test(Q))return!1;try{let Z=Buffer.from(Q,"base64url");return Z.byteLength===65&&Z[0]===4}catch{return!1}}function l(Q){if(Q.byteLength<8||Q.byteLength>72||Q[0]!==48)return!1;let Z=Q[1];return Z!==void 0&&Z<128&&Z+2===Q.byteLength}class d{libraryPath;runtimePlatform;workspaceScope;library=null;constructor(Q=DQ(),Z=y(),$){this.libraryPath=Q;this.runtimePlatform=Z;this.workspaceScope=$;m($)}symbols(){if(this.runtimePlatform!=="darwin")throw new q("unsupported_platform");this.library??=bQ(this.libraryPath);let Q=new TextEncoder().encode(this.workspaceScope??""),Z=this.library.symbols.ara_device_configure_scope(j(Q.length?Q:new Uint8Array(1)),BigInt(Q.length));if(Z!==0)throw new q("native_boundary_unavailable",Z);return this.library.symbols}publicKey(Q){let Z=new Uint8Array(_Q),$=new BigUint64Array(1),W=Q==="load"?this.symbols().ara_device_key_load_public(j(Z),BigInt(Z.byteLength),j($)):this.symbols().ara_device_key_create_fresh_public(j(Z),BigInt(Z.byteLength),j($));if(W!==0)throw new q(Q==="load"?"proof_key_read_failed":"proof_key_generation_failed",W);let X=Number($[0]);if(!Number.isSafeInteger(X)||X!==65)throw new q("invalid_public_key");let Y=E(Z.subarray(0,X));if(!x(Y))throw new q("invalid_public_key");return Y}loadPublicKey(){return this.publicKey("load")}createFreshPublicKey(){return this.publicKey("create_fresh")}sign(Q){if(Q.byteLength<1||Q.byteLength>u)throw new q("proof_sign_failed");let Z=new Uint8Array(TQ),$=new BigUint64Array(1),W=this.symbols().ara_device_key_sign(j(Q),BigInt(Q.byteLength),j(Z),BigInt(Z.byteLength),j($));if(W!==0)throw new q("proof_sign_failed",W);let X=Number($[0]);if(!Number.isSafeInteger(X)||X<1||X>Z.byteLength)throw new q("invalid_signature");let Y=Z.subarray(0,X);if(!l(Y))throw new q("invalid_signature");return E(Y)}privateKeyIsNonExtractable(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_key_is_non_extractable(j(Q));if(Z!==0||Q[0]!==1)throw new q("proof_key_read_failed",Z);return!0}deleteKey(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_key_delete(j(Q));if(Z!==0)throw new q("proof_key_delete_failed",Z);return Q[0]===1}loadBinding(){let Q=new Uint8Array(M),Z=new BigUint64Array(1),$=this.symbols().ara_device_binding_read(j(Q),BigInt(Q.byteLength),j(Z));if($===1)return null;if($!==0)throw new q("binding_read_failed",$);let W=Number(Z[0]);if(!Number.isSafeInteger(W)||W<1||W>Q.byteLength)throw new q("invalid_binding");return Q.slice(0,W)}createBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");let Z=this.symbols().ara_device_binding_create(j(Q),BigInt(Q.byteLength));if(Z!==0)throw new q("binding_create_failed",Z)}updateBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");let Z=this.symbols().ara_device_binding_update(j(Q),BigInt(Q.byteLength));if(Z!==0)throw new q("binding_update_failed",Z)}deleteBinding(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_binding_delete(j(Q));if(Z!==0)throw new q("binding_delete_failed",Z);return Q[0]===1}loadLegacyCredential(){let Q=new Uint8Array(BQ),Z=new BigUint64Array(1),$=this.symbols().ara_device_keychain_read(j(Q),BigInt(Q.byteLength),j(Z));if($===1)return null;if($!==0)throw new q("legacy_credential_read_failed",$);let W=Number(Z[0]);if(!Number.isSafeInteger(W)||W<1||W>Q.byteLength)throw new q("invalid_credential_record");try{let X=new TextDecoder("utf-8",{fatal:!0}).decode(Q.subarray(0,W));return PQ(JSON.parse(X))}catch(X){if(X instanceof q)throw X;throw new q("invalid_credential_record")}}deleteLegacyCredential(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_keychain_delete(j(Q));if(Z!==0)throw new q("legacy_credential_delete_failed",Z);return Q[0]===1}}function I(Q){let Z=Q.export({format:"jwk"});if(Z.crv!=="P-256"||typeof Z.x!=="string"||typeof Z.y!=="string")throw new q("invalid_public_key");let $=Buffer.from(Z.x,"base64url"),W=Buffer.from(Z.y,"base64url");if($.byteLength!==32||W.byteLength!==32)throw new q("invalid_public_key");let X=Buffer.concat([Buffer.of(4),$,W]).toString("base64url");if(!x(X))throw new q("invalid_public_key");return X}function SQ(){let Q=process.env.XDG_CONFIG_HOME?.trim()||J(fQ(),".config");h(Q);let Z=J(Q,"ara");return g(Z)?Z:J(Q,"reason")}class i{directory;constructor(Q=SQ()){this.directory=Q}keyPath(){return J(this.directory,"local-device.key")}bindingPath(){return J(this.directory,"local-device.binding")}loadPrivateKeyObject(){let Q=this.keyPath();if(!z(Q))throw new q("proof_key_read_failed");try{let Z=C(Q,"utf8");return KQ({key:Z,format:"pem"})}catch{throw new q("proof_key_read_failed")}}loadPublicKey(){let Q=this.loadPrivateKeyObject(),Z=VQ(Q);return I(Z)}createFreshPublicKey(){O(this.directory,{recursive:!0,mode:448});let{privateKey:Q,publicKey:Z}=AQ("ec",{namedCurve:"P-256"}),$=Q.export({type:"pkcs8",format:"pem"}),W=this.keyPath();return f(W,$,{mode:384}),N(W,384),I(Z)}sign(Q){if(Q.byteLength<1||Q.byteLength>u)throw new q("proof_sign_failed");let Z=this.loadPrivateKeyObject(),$;try{$=OQ("sha256",Q,Z)}catch{throw new q("proof_sign_failed")}if(!l($))throw new q("invalid_signature");return $.toString("base64url")}privateKeyIsNonExtractable(){return!1}deleteKey(){let Q=this.keyPath();if(!z(Q))return!1;return R(Q),!0}loadBinding(){let Q=this.bindingPath();if(!z(Q))return null;try{return new Uint8Array(C(Q))}catch{return null}}createBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");O(this.directory,{recursive:!0,mode:448});let Z=this.bindingPath();if(z(Z))throw new q("binding_create_failed");f(Z,Q,{mode:384}),N(Z,384)}updateBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");O(this.directory,{recursive:!0,mode:448});let Z=this.bindingPath();if(!z(Z))throw new q("binding_update_failed");let $=`${Z}.${NQ()}`;try{f($,Q,{mode:384,flag:"wx"}),N($,384),wQ($,Z)}finally{if(z($))R($)}}deleteBinding(){let Q=this.bindingPath();if(!z(Q))return!1;return R(Q),!0}loadLegacyCredential(){return null}deleteLegacyCredential(){return!1}}function B(){return y()==="darwin"?new d:new i}var w=U.string().min(1).max(160).regex(/^[A-Za-z0-9._:-]+$/),s=U.object({id:w,kind:U.literal("permission_denied"),operation:U.enum(["bash","read","write","edit"]),provenance:U.enum(["sandbox_policy","os_permission_unknown"]),occurredAt:U.string().datetime(),expiresAt:U.string().datetime(),sessionId:w,deviceId:w,organizationId:w}).strict();var P=4;var K="macos-keychain-p256-v1",ZQ=1,dQ=`ARA-DEVICE-BINDING-V1
|
|
2
|
+
import{li as v}from"./vm-hands-entry-lite-bwpay74g.js";import{ni as r,ti as o,wi as g,xi as h,yi as a}from"./vm-hands-entry-lite-csecgmaa.js";import{mj as V}from"./vm-hands-entry-lite-5x04hakp.js";import{jk as U}from"./vm-hands-entry-lite-8pgggvbb.js";import{createHmac as mQ,createPublicKey as CQ,randomBytes as LQ,randomUUID as t,verify as EQ}from"crypto";import{chmodSync as _,existsSync as e,mkdirSync as IQ,readFileSync as gQ,realpathSync as hQ,renameSync as vQ,statSync as yQ,unlinkSync as uQ,writeFileSync as pQ}from"fs";import{basename as cQ,dirname as F,isAbsolute as QQ,join as A,resolve as lQ}from"path";var WZ=[Object.freeze({family:"ara",channel:"stable",applicationId:"so.ara.desktop"}),Object.freeze({family:"ara",channel:"staging",applicationId:"so.ara.desktop.staging"}),Object.freeze({family:"reason",channel:"stable",applicationId:"com.reasonmachines.desktop"}),Object.freeze({family:"reason",channel:"staging",applicationId:"com.reasonmachines.desktop.staging"})];var zQ="REASON_DESKTOP_RUNTIME",UQ="REASON_DESKTOP_RUNTIME_CHANNEL",JQ="REASON_DESKTOP_RUNTIME_INSTANCE_ID",MQ="REASON_DESKTOP_RUNTIME_WORKSPACE_SCOPE",zZ={[zQ]:"ARA_DESKTOP_RUNTIME",[UQ]:"ARA_DESKTOP_RUNTIME_CHANNEL",[JQ]:"ARA_DESKTOP_RUNTIME_INSTANCE_ID",[MQ]:"ARA_DESKTOP_RUNTIME_WORKSPACE_SCOPE"};function m(Q){if(Q===void 0)return;if(!/^[a-f0-9]{64}$/.test(Q))throw Error("Invalid desktop workspace scope.");return Q}import{chmodSync as N,existsSync as z,mkdirSync as O,readFileSync as C,realpathSync as xQ,renameSync as wQ,unlinkSync as R,writeFileSync as f}from"fs";import{createPrivateKey as KQ,createPublicKey as VQ,generateKeyPairSync as AQ,randomUUID as NQ,sign as OQ}from"crypto";import{createRequire as RQ}from"module";import{homedir as fQ,platform as y}from"os";import{dirname as kQ,join as J}from"path";var L=1,BQ=16384,M=65536,_Q=128,TQ=128,u=65536;class q extends Error{code;nativeStatus;constructor(Q,Z){super(`Reason Device proof boundary failed (${Q}).${Z===void 0?"":` Native status: ${Z}.`}`);this.code=Q;this.nativeStatus=Z;this.name="LocalCredentialBoundaryError"}}function p(Q){if(Q.code==="proof_key_read_failed"&&Q.nativeStatus===-25300)return"proof_key_missing";switch(Q.nativeStatus){case-25308:return"keychain_interaction_required";case-25293:return"keychain_access_denied";case-25291:return"keychain_unavailable";default:return Q.code}}var k=null;function c(){if(!k)try{k=RQ(import.meta.url)("bun:ffi")}catch{throw new q("native_boundary_unavailable")}return k}function FQ(Q){if(typeof Q!=="string")return null;try{let Z=new URL(Q);if(Z.protocol!=="https:"&&Z.hostname!=="127.0.0.1"&&Z.hostname!=="localhost"&&Z.hostname!=="[::1]"&&Z.hostname!=="::1")return null;return Z.origin}catch{return null}}function PQ(Q){if(!Q||typeof Q!=="object"||Array.isArray(Q))throw new q("invalid_credential_record");let Z=Q,$=FQ(Z.apiOrigin);if(Z.version!==L||!$||typeof Z.orgId!=="string"||Z.orgId.length<1||Z.orgId.length>160||typeof Z.deviceId!=="string"||Z.deviceId.length<1||Z.deviceId.length>160||typeof Z.credential!=="string"||!/^(?:reason|ara)_dev_/.test(Z.credential)||Z.credential.length>4096)throw new q("invalid_credential_record");return{version:L,apiOrigin:$,orgId:Z.orgId,deviceId:Z.deviceId,credential:Z.credential}}function DQ(Q=process.execPath){let Z=Q;try{Z=xQ(Q)}catch{}return v(kQ(Z))}function j(Q){return c().ptr(Q)}function bQ(Q){if(!z(Q))throw new q("native_boundary_unavailable");let{dlopen:Z,FFIType:$}=c();try{return Z(Q,{ara_device_configure_scope:{args:[$.ptr,$.u64],returns:$.i32},ara_device_key_load_public:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_key_create_fresh_public:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_key_sign:{args:[$.ptr,$.u64,$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_key_is_non_extractable:{args:[$.ptr],returns:$.i32},ara_device_key_delete:{args:[$.ptr],returns:$.i32},ara_device_binding_read:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_binding_create:{args:[$.ptr,$.u64],returns:$.i32},ara_device_binding_update:{args:[$.ptr,$.u64],returns:$.i32},ara_device_binding_delete:{args:[$.ptr],returns:$.i32},ara_device_keychain_read:{args:[$.ptr,$.u64,$.ptr],returns:$.i32},ara_device_keychain_delete:{args:[$.ptr],returns:$.i32}})}catch(W){if(W instanceof q)throw W;throw new q("native_boundary_unavailable")}}function E(Q){return Buffer.from(Q).toString("base64url")}function x(Q){if(typeof Q!=="string"||!/^[A-Za-z0-9_-]{87}$/.test(Q))return!1;try{let Z=Buffer.from(Q,"base64url");return Z.byteLength===65&&Z[0]===4}catch{return!1}}function l(Q){if(Q.byteLength<8||Q.byteLength>72||Q[0]!==48)return!1;let Z=Q[1];return Z!==void 0&&Z<128&&Z+2===Q.byteLength}class d{libraryPath;runtimePlatform;workspaceScope;library=null;constructor(Q=DQ(),Z=y(),$){this.libraryPath=Q;this.runtimePlatform=Z;this.workspaceScope=$;m($)}symbols(){if(this.runtimePlatform!=="darwin")throw new q("unsupported_platform");this.library??=bQ(this.libraryPath);let Q=new TextEncoder().encode(this.workspaceScope??""),Z=this.library.symbols.ara_device_configure_scope(j(Q.length?Q:new Uint8Array(1)),BigInt(Q.length));if(Z!==0)throw new q("native_boundary_unavailable",Z);return this.library.symbols}publicKey(Q){let Z=new Uint8Array(_Q),$=new BigUint64Array(1),W=Q==="load"?this.symbols().ara_device_key_load_public(j(Z),BigInt(Z.byteLength),j($)):this.symbols().ara_device_key_create_fresh_public(j(Z),BigInt(Z.byteLength),j($));if(W!==0)throw new q(Q==="load"?"proof_key_read_failed":"proof_key_generation_failed",W);let X=Number($[0]);if(!Number.isSafeInteger(X)||X!==65)throw new q("invalid_public_key");let Y=E(Z.subarray(0,X));if(!x(Y))throw new q("invalid_public_key");return Y}loadPublicKey(){return this.publicKey("load")}createFreshPublicKey(){return this.publicKey("create_fresh")}sign(Q){if(Q.byteLength<1||Q.byteLength>u)throw new q("proof_sign_failed");let Z=new Uint8Array(TQ),$=new BigUint64Array(1),W=this.symbols().ara_device_key_sign(j(Q),BigInt(Q.byteLength),j(Z),BigInt(Z.byteLength),j($));if(W!==0)throw new q("proof_sign_failed",W);let X=Number($[0]);if(!Number.isSafeInteger(X)||X<1||X>Z.byteLength)throw new q("invalid_signature");let Y=Z.subarray(0,X);if(!l(Y))throw new q("invalid_signature");return E(Y)}privateKeyIsNonExtractable(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_key_is_non_extractable(j(Q));if(Z!==0||Q[0]!==1)throw new q("proof_key_read_failed",Z);return!0}deleteKey(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_key_delete(j(Q));if(Z!==0)throw new q("proof_key_delete_failed",Z);return Q[0]===1}loadBinding(){let Q=new Uint8Array(M),Z=new BigUint64Array(1),$=this.symbols().ara_device_binding_read(j(Q),BigInt(Q.byteLength),j(Z));if($===1)return null;if($!==0)throw new q("binding_read_failed",$);let W=Number(Z[0]);if(!Number.isSafeInteger(W)||W<1||W>Q.byteLength)throw new q("invalid_binding");return Q.slice(0,W)}createBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");let Z=this.symbols().ara_device_binding_create(j(Q),BigInt(Q.byteLength));if(Z!==0)throw new q("binding_create_failed",Z)}updateBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");let Z=this.symbols().ara_device_binding_update(j(Q),BigInt(Q.byteLength));if(Z!==0)throw new q("binding_update_failed",Z)}deleteBinding(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_binding_delete(j(Q));if(Z!==0)throw new q("binding_delete_failed",Z);return Q[0]===1}loadLegacyCredential(){let Q=new Uint8Array(BQ),Z=new BigUint64Array(1),$=this.symbols().ara_device_keychain_read(j(Q),BigInt(Q.byteLength),j(Z));if($===1)return null;if($!==0)throw new q("legacy_credential_read_failed",$);let W=Number(Z[0]);if(!Number.isSafeInteger(W)||W<1||W>Q.byteLength)throw new q("invalid_credential_record");try{let X=new TextDecoder("utf-8",{fatal:!0}).decode(Q.subarray(0,W));return PQ(JSON.parse(X))}catch(X){if(X instanceof q)throw X;throw new q("invalid_credential_record")}}deleteLegacyCredential(){let Q=new Uint8Array(1),Z=this.symbols().ara_device_keychain_delete(j(Q));if(Z!==0)throw new q("legacy_credential_delete_failed",Z);return Q[0]===1}}function I(Q){let Z=Q.export({format:"jwk"});if(Z.crv!=="P-256"||typeof Z.x!=="string"||typeof Z.y!=="string")throw new q("invalid_public_key");let $=Buffer.from(Z.x,"base64url"),W=Buffer.from(Z.y,"base64url");if($.byteLength!==32||W.byteLength!==32)throw new q("invalid_public_key");let X=Buffer.concat([Buffer.of(4),$,W]).toString("base64url");if(!x(X))throw new q("invalid_public_key");return X}function SQ(){let Q=process.env.XDG_CONFIG_HOME?.trim()||J(fQ(),".config");h(Q);let Z=J(Q,"ara");return g(Z)?Z:J(Q,"reason")}class i{directory;constructor(Q=SQ()){this.directory=Q}keyPath(){return J(this.directory,"local-device.key")}bindingPath(){return J(this.directory,"local-device.binding")}loadPrivateKeyObject(){let Q=this.keyPath();if(!z(Q))throw new q("proof_key_read_failed");try{let Z=C(Q,"utf8");return KQ({key:Z,format:"pem"})}catch{throw new q("proof_key_read_failed")}}loadPublicKey(){let Q=this.loadPrivateKeyObject(),Z=VQ(Q);return I(Z)}createFreshPublicKey(){O(this.directory,{recursive:!0,mode:448});let{privateKey:Q,publicKey:Z}=AQ("ec",{namedCurve:"P-256"}),$=Q.export({type:"pkcs8",format:"pem"}),W=this.keyPath();return f(W,$,{mode:384}),N(W,384),I(Z)}sign(Q){if(Q.byteLength<1||Q.byteLength>u)throw new q("proof_sign_failed");let Z=this.loadPrivateKeyObject(),$;try{$=OQ("sha256",Q,Z)}catch{throw new q("proof_sign_failed")}if(!l($))throw new q("invalid_signature");return $.toString("base64url")}privateKeyIsNonExtractable(){return!1}deleteKey(){let Q=this.keyPath();if(!z(Q))return!1;return R(Q),!0}loadBinding(){let Q=this.bindingPath();if(!z(Q))return null;try{return new Uint8Array(C(Q))}catch{return null}}createBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");O(this.directory,{recursive:!0,mode:448});let Z=this.bindingPath();if(z(Z))throw new q("binding_create_failed");f(Z,Q,{mode:384}),N(Z,384)}updateBinding(Q){if(Q.byteLength<1||Q.byteLength>M)throw new q("invalid_binding");O(this.directory,{recursive:!0,mode:448});let Z=this.bindingPath();if(!z(Z))throw new q("binding_update_failed");let $=`${Z}.${NQ()}`;try{f($,Q,{mode:384,flag:"wx"}),N($,384),wQ($,Z)}finally{if(z($))R($)}}deleteBinding(){let Q=this.bindingPath();if(!z(Q))return!1;return R(Q),!0}loadLegacyCredential(){return null}deleteLegacyCredential(){return!1}}function B(){return y()==="darwin"?new d:new i}var w=U.string().min(1).max(160).regex(/^[A-Za-z0-9._:-]+$/),s=U.object({id:w,kind:U.literal("permission_denied"),operation:U.enum(["bash","read","write","edit"]),provenance:U.enum(["sandbox_policy","os_permission_unknown"]),occurredAt:U.string().datetime(),expiresAt:U.string().datetime(),sessionId:w,deviceId:w,organizationId:w}).strict();var P=4;var K="macos-keychain-p256-v1",ZQ=1,dQ=`ARA-DEVICE-BINDING-V1
|
|
3
3
|
`;function iQ(Q){return Q===void 0||typeof Q==="number"&&Number.isInteger(Q)&&Q>=1&&Q<=4}function $Q(Q,Z=Date.now()){let $=s.safeParse(Q);if(!$.success)return!1;let W=$.data,X=typeof W.occurredAt==="string"?Date.parse(W.occurredAt):NaN,Y=typeof W.expiresAt==="string"?Date.parse(W.expiresAt):NaN;return W.kind==="permission_denied"&&["bash","read","write","edit"].includes(W.operation)&&["sandbox_policy","os_permission_unknown"].includes(W.provenance)&&Number.isFinite(X)&&X<=Z&&Y>Z&&Y>X&&Y-X<=600000}function LZ(Q,Z,$=Date.now()){if(!Q||!Z||Q.state!=="connected"||Q.deviceId!==Z.deviceId)return null;let W=Date.parse(Q.lastHeartbeatAt??""),X=Q.permissionRecovery;if(!($-W>=0&&$-W<30000)||!$Q(X,$)||X.deviceId!==Z.deviceId||X.organizationId!==Z.orgId)return null;try{process.kill(Q.pid,0)}catch{return null}return X}function WQ(Q={},Z=V()){let $=r({env:{...process.env,...Q}}),W=Q.XDG_CONFIG_HOME?.trim()||A(Z,".config");return a(W,...$==="staging"?["staging"]:[])}function D(Q={},Z=V()){return A(WQ(Q,Z),"local-device.json")}function qQ(Q={},Z=V()){return A(WQ(Q,Z),"local-daemon.json")}function b(Q,Z){IQ(F(Q),{recursive:!0,mode:448}),_(F(Q),448);let $=`${Q}.${process.pid}.${t()}.tmp`;try{pQ($,`${JSON.stringify(Z,null,2)}
|
|
4
4
|
`,{mode:384,flag:"wx"}),_($,384),vQ($,Q),_(Q,384)}finally{if(e($))uQ($)}return Q}function S(Q){if(!e(Q))return null;try{return JSON.parse(gQ(Q,"utf8"))}catch{return null}}function T(Q,Z,$){try{Q.onCredentialLifecycle?.({event:Z,...$?{reasonCode:$}:{}})}catch{}}function sQ(Q){if(!Array.isArray(Q))return null;let Z=[];for(let $ of Q){if(!$||typeof $!=="object")return null;let W=$;if(typeof W.id!=="string"||typeof W.label!=="string"||typeof W.path!=="string"||typeof W.pathFingerprint!=="string"||!W.permissions||typeof W.permissions.read!=="boolean"||typeof W.permissions.write!=="boolean"||typeof W.permissions.execute!=="boolean"||typeof W.permissions.discover_environment!=="boolean"||typeof W.permissions.expose_mcp!=="boolean")return null;Z.push({id:W.id,label:W.label,path:W.path,pathFingerprint:W.pathFingerprint,permissions:W.permissions})}return Z}function XQ(Q,Z,$=[]){let W=Object.keys(Q);return Z.every((X)=>Object.hasOwn(Q,X))&&W.every((X)=>Z.includes(X)||$.includes(X))}function nQ(Q){if(typeof Q!=="string")return null;try{let Z=new URL(Q);if(Z.protocol!=="https:"&&Z.hostname!=="127.0.0.1"&&Z.hostname!=="localhost")return null;return Z.origin}catch{return null}}function YQ(Q){if(!Q||typeof Q!=="object"||Array.isArray(Q))return null;let Z=Q,$=sQ(Z.roots),W=nQ(Z.apiOrigin);if(!W||typeof Z.orgId!=="string"||typeof Z.deviceId!=="string"||typeof Z.displayName!=="string"||typeof Z.registeredAt!=="string"||!iQ(Z.handsSlots)||Z.worker!==void 0&&(!Z.worker||!/^[a-f0-9]{64}$/.test(Z.worker.configDigest)||!["persistent","ephemeral"].includes(Z.worker.lifetime)||!Number.isFinite(Date.parse(Z.worker.expiresAt)))||!$)return null;return{apiOrigin:W,orgId:Z.orgId,deviceId:Z.deviceId,displayName:Z.displayName,registeredAt:Z.registeredAt,...Z.handsSlots!==void 0?{handsSlots:Z.handsSlots}:{},...Z.worker!==void 0?{worker:Z.worker}:{},roots:$}}function rQ(Q){return{...Q,credentialStorage:K}}function oQ(Q){return{version:P,apiOrigin:Q.apiOrigin,orgId:Q.orgId,deviceId:Q.deviceId,devicePublicKey:Q.devicePublicKey,displayName:Q.displayName,registeredAt:Q.registeredAt,...Q.handsSlots!==void 0?{handsSlots:Q.handsSlots}:{},...Q.worker!==void 0?{worker:Q.worker}:{},roots:Q.roots.map((Z)=>({id:Z.id,label:Z.label,path:Z.path,pathFingerprint:Z.pathFingerprint,permissions:{read:Z.permissions.read,write:Z.permissions.write,execute:Z.permissions.execute,discover_environment:Z.permissions.discover_environment,expose_mcp:Z.permissions.expose_mcp}})),credentialStorage:K}}function jQ(Q){if(!Q||typeof Q!=="object"||Array.isArray(Q))return null;let Z=Q;if(!XQ(Z,["version","apiOrigin","orgId","deviceId","devicePublicKey","displayName","registeredAt","roots","credentialStorage"],["handsSlots","worker"]))return null;let $=YQ(Z);if(!$||Z.version!==P||Z.credentialStorage!==K||!x(Z.devicePublicKey))return null;return{version:P,...$,devicePublicKey:Z.devicePublicKey,credentialStorage:K}}function GQ(Q){return new TextEncoder().encode(`${dQ}${JSON.stringify(oQ(Q))}`)}function aQ(Q){let Z=Buffer.from(Q,"base64url");return CQ({format:"jwk",key:{kty:"EC",crv:"P-256",x:Z.subarray(1,33).toString("base64url"),y:Z.subarray(33,65).toString("base64url")}})}function tQ(Q,Z){let $={version:ZQ,state:Q,signature:Z.sign(GQ(Q))};return new TextEncoder().encode(JSON.stringify($))}function HQ(Q){let Z;try{Z=JSON.parse(new TextDecoder("utf-8",{fatal:!0}).decode(Q))}catch{throw new q("invalid_binding")}if(!Z||typeof Z!=="object"||Array.isArray(Z))throw new q("invalid_binding");let $=Z;if(!XQ($,["version","state","signature"])||$.version!==ZQ||typeof $.signature!=="string"||!/^[A-Za-z0-9_-]{10,128}$/.test($.signature))throw new q("invalid_binding");let W=jQ($.state);if(!W)throw new q("invalid_binding");let X=!1;try{X=EQ("sha256",GQ(W),aQ(W.devicePublicKey),Buffer.from($.signature,"base64url"))}catch{X=!1}if(!X)throw new q("invalid_binding");return W}function eQ(Q){let{credentialStorage:Z,...$}=Q;return $}function QZ(Q){return Q instanceof q?p(Q):"credential_boundary_failed"}function EZ(Q=D(),Z={}){let $=S(Q),W=Z.proofStore??Z.credentialStore??B(),X=W.loadBinding();if(!X){if($&&typeof $==="object"&&!Array.isArray($)&&ZZ($))return null;if($!==null)throw new q("invalid_binding");return null}let Y=HQ(X),G=W.loadPublicKey();if(W.privateKeyIsNonExtractable(),G!==Y.devicePublicKey)throw new q("invalid_public_key");let H=jQ($);if(Z.repair!==!1&&(!H||JSON.stringify(H)!==JSON.stringify(Y)))b(Q,Y);return eQ(Y)}function ZZ(Q){let Z=Q,$=YQ(Q);if(!$)return null;if(Z.version===2){if(typeof Z.deviceCredential!=="string"||!/^(?:reason|ara)_dev_/.test(Z.deviceCredential)||Z.deviceCredential.length>4096)return null;return{state:$,credentialSource:"plaintext-v2"}}if(Z.version!==3||Z.credentialStorage!=="macos-keychain-v1"||"deviceCredential"in Z)return null;return{state:$,credentialSource:"keychain-v3"}}function IZ(Q,Z=D(),$={}){let W=$.proofStore??$.credentialStore??B();T($,"credential.store_started");try{if(!x(Q.devicePublicKey)||W.loadPublicKey()!==Q.devicePublicKey)throw new q("invalid_public_key");W.privateKeyIsNonExtractable();let X=rQ(Q),Y=W.loadBinding();if(Y){let H=HQ(Y);if(H.devicePublicKey!==Q.devicePublicKey||H.orgId!==Q.orgId||H.deviceId!==Q.deviceId||H.apiOrigin!==Q.apiOrigin&&!o(H.apiOrigin,Q.apiOrigin))throw new q("invalid_binding")}let G=tQ(X,W);if(Y)W.updateBinding(G);else W.createBinding(G);return b(Z,X),T($,"credential.store_completed"),Z}catch(X){throw T($,"credential.store_failed",QZ(X)),X}}function gZ(Q=qQ()){let Z=S(Q);if(!Z||typeof Z!=="object")return null;let $=Z;if($.version!==1||typeof $.pid!=="number"||!Number.isInteger($.pid)||!["starting","connected","stopped","error"].includes($.state??"")||typeof $.startedAt!=="string"||$.lastHeartbeatAt!==void 0&&typeof $.lastHeartbeatAt!=="string"||$.lastUsedAt!==void 0&&typeof $.lastUsedAt!=="string"||$.organizationId!==void 0&&typeof $.organizationId!=="string"||$.organizationName!==void 0&&typeof $.organizationName!=="string"||$.organizationSlug!==void 0&&typeof $.organizationSlug!=="string"||$.error!==void 0&&typeof $.error!=="string"||$.reconnectingSince!==void 0&&typeof $.reconnectingSince!=="string"||$.workspace!==void 0&&typeof $.workspace!=="string")return null;if($.permissionRecovery!==void 0&&!$Q($.permissionRecovery))delete $.permissionRecovery;return $}function hZ(Q,Z=qQ()){return b(Z,Q)}var n=1;function $Z(Q=D()){return A(F(Q),"local-device.proxy.json")}function vZ(Q=$Z()){let Z=S(Q);if(!Z||typeof Z!=="object"||Array.isArray(Z))return null;let $=Z;if($.version!==n||typeof $.url!=="string"||$.url.length===0||$.caFile!==void 0&&(typeof $.caFile!=="string"||!QQ($.caFile)))return null;return{version:n,url:$.url,...$.caFile?{caFile:$.caFile}:{}}}function yZ(Q,Z={read:!0,write:!1,execute:!1,discover_environment:!1,expose_mcp:!1},$=LQ(32)){let W=new Set,X=[];for(let Y of Q){let G=hQ(QQ(Y)?Y:lQ(Y));if(!yQ(G).isDirectory())throw Error(`Local execution root is not a directory: ${Y}`);if(W.has(G))continue;W.add(G),X.push({id:t(),label:cQ(G)||G,path:G,pathFingerprint:mQ("sha256",$).update(G).digest("hex"),permissions:{...Z}})}if(X.length===0)throw Error("At least one explicit local execution root is required.");return X}
|
|
5
|
-
export{q as
|
|
5
|
+
export{q as yg,DQ as zg,x as Ag,l as Bg,d as Cg,i as Dg,$Q as Eg,LZ as Fg,D as Gg,qQ as Hg,EZ as Ig,IZ as Jg,gZ as Kg,hZ as Lg,n as Mg,vZ as Ng,yZ as Og};
|