sootsim 0.1.176 → 0.1.177
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/dist-cli/bin.js +3 -3
- package/dist-cli/chunks/{agent-XZERN2SO.js → agent-3BCITLIZ.js} +3 -3
- package/dist-cli/chunks/{agent-wrapper-SAIMSLSO.js → agent-wrapper-26RIZVGD.js} +2 -2
- package/dist-cli/chunks/{app-fonts-SQVNXLI5.js → app-fonts-JVDHATQE.js} +2 -2
- package/dist-cli/chunks/{assert-EWL6BYVH.js → assert-IT2OXM4Y.js} +2 -2
- package/dist-cli/chunks/beta-SPH73CAA.js +2 -0
- package/dist-cli/chunks/{camera-FFYSKETF.js → camera-ZYVEUCIO.js} +2 -2
- package/dist-cli/chunks/{chunk-OQ3N5IOK.js → chunk-3L6I2M2Z.js} +3 -3
- package/dist-cli/chunks/chunk-4INGTBO7.js +4 -0
- package/dist-cli/chunks/{chunk-Q4YNZFJF.js → chunk-4JESO36F.js} +4 -4
- package/dist-cli/chunks/{chunk-GBZNVWFP.js → chunk-4YNKFN2A.js} +2 -2
- package/dist-cli/chunks/{chunk-4WLI2STY.js → chunk-52O56BTW.js} +2 -2
- package/dist-cli/chunks/{chunk-ZHFUIBAE.js → chunk-64QAFSY7.js} +1 -1
- package/dist-cli/chunks/{chunk-HAW6OMNW.js → chunk-65ZBQDQM.js} +2 -2
- package/dist-cli/chunks/{chunk-NA2KJSP6.js → chunk-A2WASN2L.js} +1 -1
- package/dist-cli/chunks/{chunk-MWTWVX32.js → chunk-A3VHHWLU.js} +2 -2
- package/dist-cli/chunks/{chunk-HZSJ6FL3.js → chunk-AN4DM7IB.js} +2 -2
- package/dist-cli/chunks/{chunk-J2BOYJ2U.js → chunk-ATVKVVHZ.js} +2 -2
- package/dist-cli/chunks/chunk-B6GISAUX.js +1 -0
- package/dist-cli/chunks/{chunk-Y3NDHGEY.js → chunk-BTTZN2SN.js} +2 -2
- package/dist-cli/chunks/{chunk-VBUURELX.js → chunk-C5QOGCVN.js} +2 -2
- package/dist-cli/chunks/{chunk-SR7DWNZ3.js → chunk-CH3MWM5W.js} +1 -1
- package/dist-cli/chunks/{chunk-63VEHUYI.js → chunk-CHTYIQLE.js} +2 -2
- package/dist-cli/chunks/{chunk-L2CTRBGR.js → chunk-CUO7F2JE.js} +1 -1
- package/dist-cli/chunks/{chunk-6BU5E655.js → chunk-D2BBJUEY.js} +1 -1
- package/dist-cli/chunks/chunk-DGDBEXXQ.js +1 -0
- package/dist-cli/chunks/{chunk-OORRMRMI.js → chunk-IBSEFPPL.js} +1 -1
- package/dist-cli/chunks/{chunk-Y2ZSLUGO.js → chunk-JFLNZGDS.js} +2 -2
- package/dist-cli/chunks/{chunk-XKVI3H2G.js → chunk-JHYLPDCC.js} +2 -2
- package/dist-cli/chunks/{chunk-NMP6YTXS.js → chunk-JS3NH2SJ.js} +1 -1
- package/dist-cli/chunks/{chunk-W5QHYSDJ.js → chunk-JS7SSYDG.js} +2 -2
- package/dist-cli/chunks/{chunk-PPUEG6C4.js → chunk-JXO6UPGI.js} +1 -1
- package/dist-cli/chunks/{chunk-T3576IDX.js → chunk-LTZPVG65.js} +1 -1
- package/dist-cli/chunks/{chunk-XKNXS6EC.js → chunk-NOLQYF76.js} +1 -1
- package/dist-cli/chunks/{chunk-W2AZ7ASM.js → chunk-NYGESF6F.js} +1 -1
- package/dist-cli/chunks/{chunk-6S2MBFBN.js → chunk-NZWTC6K6.js} +1 -1
- package/dist-cli/chunks/{chunk-ZAAITWNI.js → chunk-PAU64XFG.js} +1 -1
- package/dist-cli/chunks/{chunk-N53VJ3FY.js → chunk-PL3ALTWB.js} +2 -2
- package/dist-cli/chunks/{chunk-JXZYXTBM.js → chunk-QWZFOMCI.js} +2 -2
- package/dist-cli/chunks/{chunk-55LUU75I.js → chunk-SNLUVL3H.js} +2 -2
- package/dist-cli/chunks/{chunk-CFPELTGN.js → chunk-SU3JJ7ER.js} +2 -2
- package/dist-cli/chunks/{chunk-CF3NJNBJ.js → chunk-TVFHGWTW.js} +2 -2
- package/dist-cli/chunks/{chunk-OAOQVBIR.js → chunk-UBJQDMDG.js} +2 -2
- package/dist-cli/chunks/{chunk-D6GUXY2L.js → chunk-UJN3FMEX.js} +2 -2
- package/dist-cli/chunks/{chunk-STWES7DO.js → chunk-WKG5J4RD.js} +1 -1
- package/dist-cli/chunks/{chunk-CEMRS6UL.js → chunk-WRHJEI7Y.js} +1 -1
- package/dist-cli/chunks/{chunk-EU54PRND.js → chunk-WUEKKZ7Z.js} +2 -2
- package/dist-cli/chunks/{chunk-2SUR2RR2.js → chunk-Y2637KG7.js} +1 -1
- package/dist-cli/chunks/chunk-YU6CNUJD.js +2 -0
- package/dist-cli/chunks/{chunk-BGP3OZID.js → chunk-YVDSGGOT.js} +1 -1
- package/dist-cli/chunks/{chunk-PA5EARX2.js → chunk-Z4IMGLHM.js} +2 -2
- package/dist-cli/chunks/{chunk-PVIMLBMX.js → chunk-ZUTVEJVA.js} +3 -3
- package/dist-cli/chunks/cli-version-HENS6BZI.js +2 -0
- package/dist-cli/chunks/{compat-ZFBUC4BH.js → compat-MNTQH57R.js} +3 -3
- package/dist-cli/chunks/{control-3JJLR4W5.js → control-WQ7XEPCI.js} +2 -2
- package/dist-cli/chunks/{cpu-profile-FCEFZTYY.js → cpu-profile-P27HBXOI.js} +2 -2
- package/dist-cli/chunks/daemon-WUAZELEI.js +2 -0
- package/dist-cli/chunks/{debug-CUBIZBSH.js → debug-ES4A3SZQ.js} +3 -3
- package/dist-cli/chunks/{detox-4225EYR3.js → detox-Q36B2553.js} +2 -2
- package/dist-cli/chunks/{device-S6BWDHPM.js → device-NA7TB4E6.js} +2 -2
- package/dist-cli/chunks/{diagnose-6CIKXRQI.js → diagnose-DKW5WI3X.js} +2 -2
- package/dist-cli/chunks/drivers-RFOOGIRC.js +2 -0
- package/dist-cli/chunks/{electron-37AEV4TD.js → electron-6C2VDAZW.js} +3 -3
- package/dist-cli/chunks/flow-GSHP52QS.js +2 -0
- package/dist-cli/chunks/help-J6PF4PZX.js +2 -0
- package/dist-cli/chunks/{hints-NNX3XRHL.js → hints-W7ZZ6KZE.js} +2 -2
- package/dist-cli/chunks/{home-paths-GOXDTTLM.js → home-paths-K4347S7C.js} +2 -2
- package/dist-cli/chunks/{inspect-YSYKYPAO.js → inspect-ZPHNFMEX.js} +4 -4
- package/dist-cli/chunks/{install-desktop-OHGSHF3I.js → install-desktop-ZCCPJMOF.js} +3 -3
- package/dist-cli/chunks/{keys-U7AANCE7.js → keys-XM67H4SM.js} +2 -2
- package/dist-cli/chunks/{login-HQ7IGHOQ.js → login-O4OGJKYL.js} +4 -4
- package/dist-cli/chunks/{logout-CDVV56NI.js → logout-DWCBRMLM.js} +2 -2
- package/dist-cli/chunks/{maestro-ZSO5MEL7.js → maestro-MEWENIGQ.js} +2 -2
- package/dist-cli/chunks/optional-demo-registry-O3XS3WXJ.js +2 -0
- package/dist-cli/chunks/{preview-QHRLVFZ3.js → preview-VPWG4462.js} +2 -2
- package/dist-cli/chunks/{profile-JQ2VTWDK.js → profile-R4CSGXYJ.js} +2 -2
- package/dist-cli/chunks/{react-FZAOHKVR.js → react-5LFUOYV5.js} +2 -2
- package/dist-cli/chunks/{record-6SKJBVDV.js → record-MHAAYOWF.js} +2 -2
- package/dist-cli/chunks/runtime-R2PRKIZM.js +2 -0
- package/dist-cli/chunks/{screenshot-ZWWD7RKD.js → screenshot-XAEO7EBF.js} +2 -2
- package/dist-cli/chunks/{screenshot-mode-AVGIIPOT.js → screenshot-mode-QNR5ESKN.js} +2 -2
- package/dist-cli/chunks/{screenshots-HNAQHHEZ.js → screenshots-Z6OSENKY.js} +2 -2
- package/dist-cli/chunks/{screenshots-capture-GR3JCQEV.js → screenshots-capture-3DJPYJUD.js} +2 -2
- package/dist-cli/chunks/{serve-E5JSN7LL.js → serve-IVTQFOFI.js} +16 -16
- package/dist-cli/chunks/{setup-2M6ZQHFS.js → setup-AMRSL4IK.js} +2 -2
- package/dist-cli/chunks/{skills-EK6EIZKG.js → skills-K4DG2CIH.js} +2 -2
- package/dist-cli/chunks/{slides-7LMX75H7.js → slides-UIH7KXFR.js} +2 -2
- package/dist-cli/chunks/store-2JY2VLVA.js +2 -0
- package/dist-cli/chunks/telemetry-KNKROOT5.js +2 -0
- package/dist-cli/chunks/{test-GTYC4F55.js → test-XUJ2V5ZX.js} +3 -3
- package/dist-cli/chunks/{three-mode-2PYZFZSU.js → three-mode-P6HSLJMD.js} +2 -2
- package/dist-cli/chunks/{timeline-MIFLVHUE.js → timeline-YSUY4PHV.js} +2 -2
- package/dist-cli/chunks/{upgrade-ZVV5XJUB.js → upgrade-YZMDFQIH.js} +2 -2
- package/dist-cli/chunks/upload-TIH2LID6.js +2 -0
- package/dist-cli/chunks/{version-IDZEL6JB.js → version-5QAMZ5CK.js} +2 -2
- package/dist-cli/chunks/{web-IGOSYQWE.js → web-LM3JSBQF.js} +2 -2
- package/dist-cli/chunks/{what-happened-2YDLA4TU.js → what-happened-NYVQ7KER.js} +2 -2
- package/dist-cli/chunks/{whoami-MHMILIEP.js → whoami-AAHH72FM.js} +2 -2
- package/dist-lib/agent-daemon-client.cjs +10 -1
- package/dist-lib/agent-events.cjs +1 -1
- package/dist-lib/agent-sessions.cjs +1 -1
- package/dist-lib/attached-projects.cjs +1 -1
- package/dist-lib/auth/shared-session.cjs +1 -1
- package/dist-lib/backend-origin.cjs +1 -1
- package/dist-lib/beta.cjs +1 -1
- package/dist-lib/beta.mjs +1 -1
- package/dist-lib/bridge-constants.cjs +1 -1
- package/dist-lib/cli-constants.cjs +1 -1
- package/dist-lib/config.cjs +1 -1
- package/dist-lib/detox/index.cjs +1 -1
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +126 -12
- package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
- package/dist-lib/host/websocket-proxy.cjs +1 -1
- package/dist-lib/index.cjs +1 -1
- package/dist-lib/jump-to-source-babel.cjs +1 -1
- package/dist-lib/menu.cjs +1 -1
- package/dist-lib/menu.mjs +1 -1
- package/dist-lib/metro.cjs +1 -1
- package/dist-lib/profiles.cjs +1 -1
- package/dist-lib/render-mode.cjs +1 -1
- package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
- package/dist-lib/sdk.cjs +1 -1
- package/dist-lib/sdk.mjs +1 -1
- package/dist-lib/skills.cjs +231 -102
- package/dist-lib/vite.cjs +1 -1
- package/package.json +7 -1
- package/src/agent-daemon-client.ts +13 -0
- package/src/agent-identity.ts +21 -0
- package/src/agentbus-prompt.ts +80 -0
- package/src/host/agent-host.ts +42 -0
- package/src/host/bridge-host.ts +14 -1
- package/src/native-seam-manifest.ts +11 -0
- package/dist-cli/chunks/beta-2CPZK3F2.js +0 -2
- package/dist-cli/chunks/chunk-3LI5PWSP.js +0 -2
- package/dist-cli/chunks/chunk-6WURQDZI.js +0 -1
- package/dist-cli/chunks/chunk-NPPSB4KE.js +0 -1
- package/dist-cli/chunks/chunk-XC3EDXUI.js +0 -4
- package/dist-cli/chunks/cli-version-ZQBDNAUR.js +0 -2
- package/dist-cli/chunks/daemon-3GBPTTR7.js +0 -2
- package/dist-cli/chunks/drivers-LI6YV5M7.js +0 -2
- package/dist-cli/chunks/flow-VBH4BQSB.js +0 -2
- package/dist-cli/chunks/help-23IS4JFP.js +0 -2
- package/dist-cli/chunks/optional-demo-registry-RG5TBVMN.js +0 -2
- package/dist-cli/chunks/runtime-KFHRVRZQ.js +0 -2
- package/dist-cli/chunks/store-VOGIKQFW.js +0 -2
- package/dist-cli/chunks/telemetry-7TUUNCCB.js +0 -2
- package/dist-cli/chunks/upload-AW66MDC5.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
2
|
-
import{C as N,D as F,F as y,Q as T,R as b,S}from"./chunk-
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
+
import{C as N,D as F,F as y,Q as T,R as b,S}from"./chunk-D2BBJUEY.js";import{c as A,e as _}from"./chunk-65ZBQDQM.js";import"./chunk-WKG5J4RD.js";import{b as k}from"./chunk-4INGTBO7.js";import"./chunk-IBSEFPPL.js";import"./chunk-64QAFSY7.js";function O(n){let t=[];for(let e=0;e<n.length;e++)if(n[e]==="--since"&&e+1<n.length){t.push(e,e+1);let s=n[e+1].trim(),l=/^(\d+(?:\.\d+)?)(ms|s|m)?$/.exec(s);if(l){let r=Number(l[1]),u=l[2]??"ms",v=u==="s"?r*1e3:u==="m"?r*6e4:r;return{since:Date.now()-v,consumed:t}}let i=Number(s);if(Number.isFinite(i)&&i>1e12)return{since:i,consumed:t}}return{consumed:t}}function B(n){let t=[];for(let e=0;e<n.length;e++)if(n[e]==="--kinds"&&e+1<n.length)return t.push(e,e+1),{kinds:n[e+1].split(",").map(s=>s.trim()).filter(Boolean),consumed:t};return{consumed:t}}function D(n){let t=[];for(let e=0;e<n.length;e++)if(n[e]==="--limit"&&e+1<n.length){t.push(e,e+1);let s=Number(n[e+1]);if(Number.isFinite(s)&&s>0)return{limit:s,consumed:t}}return{consumed:t}}function x(n){let t=[],e={label:"initial state",events:[],startedAt:n[0]?.t??null};t.push(e);for(let s of n)if(e.events.push(s),s.kind==="screen"||s.kind==="route"){let l=s.data,i=l?.phase;if(!i||i==="enter"||i==="appear"||i==="active"){let r=l?.name||l?.activeName||l?.path||l?.pathname||s.kind;t.length===1&&e.events.length===1?e.label=`${s.kind}: ${r}`:(e={label:`${s.kind}: ${r}`,events:[],startedAt:s.t},t.push(e))}}return t}async function J(n,t){let e=A(n,{port:t.port,stripBooleanFlags:["--summary","--all","--json","--no-advance","--help","-h","--flow","--noisy"],stripValueFlags:["--since","--kinds","--limit"]});(n.includes("--help")||n.includes("-h"))&&(console.log(`
|
|
3
3
|
sootsim what-happened \u2014 show recent events from the semantic timeline
|
|
4
4
|
|
|
5
5
|
usage:
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
2
|
-
import{d as i}from"./chunk-
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
|
+
import{d as i}from"./chunk-52O56BTW.js";import{d as n}from"./chunk-UBJQDMDG.js";import"./chunk-IBSEFPPL.js";import"./chunk-64QAFSY7.js";async function u(){let o=i();if(o||(console.log(" not signed in"),console.log(" set SOOTSIM_API_KEY=sk_sootsim_\u2026 or run `sootsim login`"),process.exit(1)),o.kind==="api-key"){let r=`${o.secret.slice(0,14)}\u2026`,t=o.source==="env"?"SOOTSIM_API_KEY env var":"saved key (~/.config/sootsim/credentials.json)";console.log(` api key ${r}`),console.log(` source: ${t}`);return}if(o.kind==="github"){console.log(` github token (${o.source})`),console.log(` repo: ${o.repoId}`);return}let e=await n(),s=e?.user;console.log(` ${s?.email||s?.name||s?.id||"signed in"}`),console.log(` origin: ${e?.origin??o.origin}`),e?.updatedAt&&console.log(` updated: ${e.updatedAt}`)}export{u as runWhoami};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -249,6 +249,15 @@ var AgentDaemonClient = class {
|
|
|
249
249
|
prompt
|
|
250
250
|
});
|
|
251
251
|
}
|
|
252
|
+
async sendClaimedPrompt(simId, prompt) {
|
|
253
|
+
return this.send(
|
|
254
|
+
"agent:send-claimed-prompt",
|
|
255
|
+
{
|
|
256
|
+
simId,
|
|
257
|
+
prompt
|
|
258
|
+
}
|
|
259
|
+
);
|
|
260
|
+
}
|
|
252
261
|
async endSession(sessionId) {
|
|
253
262
|
return this.send("agent:end-session", { sessionId });
|
|
254
263
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/beta.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/beta.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/config.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/detox/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/home-paths.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -156,10 +156,10 @@ function tcpPing(port, timeout = TCP_GATE_MS) {
|
|
|
156
156
|
sock.connect(port, "localhost");
|
|
157
157
|
});
|
|
158
158
|
}
|
|
159
|
-
function httpGet(port,
|
|
159
|
+
function httpGet(port, path8, method = "GET", timeout = TIMEOUT_MS, headers = {}) {
|
|
160
160
|
return new Promise((resolve) => {
|
|
161
161
|
const req = import_http.default.request(
|
|
162
|
-
{ hostname: "localhost", port, path:
|
|
162
|
+
{ hostname: "localhost", port, path: path8, method, timeout, headers },
|
|
163
163
|
(res) => {
|
|
164
164
|
let body = "";
|
|
165
165
|
res.on("data", (c) => body += c.toString());
|
|
@@ -942,8 +942,8 @@ function extractTarball(tarPath, destDir) {
|
|
|
942
942
|
}
|
|
943
943
|
|
|
944
944
|
// src/host/agent-host.ts
|
|
945
|
-
var
|
|
946
|
-
var
|
|
945
|
+
var import_node_fs6 = __toESM(require("node:fs"), 1);
|
|
946
|
+
var import_node_path5 = __toESM(require("node:path"), 1);
|
|
947
947
|
|
|
948
948
|
// src/agent-sessions.ts
|
|
949
949
|
var import_node_child_process = require("node:child_process");
|
|
@@ -1671,6 +1671,85 @@ async function waitForFirstEvent(fifo, predicate, timeoutMs) {
|
|
|
1671
1671
|
}
|
|
1672
1672
|
}
|
|
1673
1673
|
|
|
1674
|
+
// src/agentbus-prompt.ts
|
|
1675
|
+
var import_node_child_process2 = require("node:child_process");
|
|
1676
|
+
var import_node_fs5 = __toESM(require("node:fs"), 1);
|
|
1677
|
+
var import_node_os2 = __toESM(require("node:os"), 1);
|
|
1678
|
+
var import_node_path4 = __toESM(require("node:path"), 1);
|
|
1679
|
+
|
|
1680
|
+
// src/agent-identity.ts
|
|
1681
|
+
var AGENTBUS_SESSION_RE = /^[A-Za-z0-9._:-]{1,160}$/;
|
|
1682
|
+
function agentbusSessionIdFromCliIdentity(identity) {
|
|
1683
|
+
if (!identity?.startsWith("AGENTBUS_SESSION:")) return null;
|
|
1684
|
+
const sessionId = identity.slice("AGENTBUS_SESSION:".length).trim();
|
|
1685
|
+
if (!AGENTBUS_SESSION_RE.test(sessionId)) return null;
|
|
1686
|
+
return sessionId;
|
|
1687
|
+
}
|
|
1688
|
+
function isValidAgentbusSessionId(sessionId) {
|
|
1689
|
+
return AGENTBUS_SESSION_RE.test(sessionId);
|
|
1690
|
+
}
|
|
1691
|
+
|
|
1692
|
+
// src/agentbus-prompt.ts
|
|
1693
|
+
function formatAgentbusPromptText(prompt) {
|
|
1694
|
+
return typeof prompt.text === "string" ? prompt.text.trim() : "";
|
|
1695
|
+
}
|
|
1696
|
+
function resolveAgentbusCommand(explicit) {
|
|
1697
|
+
const fromArg = explicit?.trim();
|
|
1698
|
+
if (fromArg) return fromArg;
|
|
1699
|
+
const fromEnv = process.env.AGENTBUS_COMMAND?.trim();
|
|
1700
|
+
if (fromEnv) return fromEnv;
|
|
1701
|
+
const localBin = import_node_path4.default.join(import_node_os2.default.homedir(), ".local", "bin", "agentbus");
|
|
1702
|
+
if (import_node_fs5.default.existsSync(localBin)) return localBin;
|
|
1703
|
+
return "agentbus";
|
|
1704
|
+
}
|
|
1705
|
+
async function sendPromptToAgentbusSession(input) {
|
|
1706
|
+
const sessionId = input.sessionId.trim();
|
|
1707
|
+
if (!isValidAgentbusSessionId(sessionId)) {
|
|
1708
|
+
throw new Error(`invalid agentbus session id: ${sessionId || "<empty>"}`);
|
|
1709
|
+
}
|
|
1710
|
+
const text = formatAgentbusPromptText(input.prompt);
|
|
1711
|
+
if (!text) {
|
|
1712
|
+
throw new Error("prompt text is empty");
|
|
1713
|
+
}
|
|
1714
|
+
const command = resolveAgentbusCommand(input.command);
|
|
1715
|
+
const timeoutMs = input.timeoutMs ?? 15e3;
|
|
1716
|
+
await new Promise((resolve, reject) => {
|
|
1717
|
+
const child = (0, import_node_child_process2.spawn)(command, ["send", sessionId, text], {
|
|
1718
|
+
stdio: ["ignore", "ignore", "pipe"],
|
|
1719
|
+
env: process.env
|
|
1720
|
+
});
|
|
1721
|
+
let stderr = "";
|
|
1722
|
+
const timer = setTimeout(() => {
|
|
1723
|
+
try {
|
|
1724
|
+
child.kill("SIGTERM");
|
|
1725
|
+
} catch {
|
|
1726
|
+
}
|
|
1727
|
+
reject(new Error(`agentbus send timed out after ${Math.round(timeoutMs / 1e3)}s`));
|
|
1728
|
+
}, timeoutMs);
|
|
1729
|
+
child.stderr?.setEncoding("utf8");
|
|
1730
|
+
child.stderr?.on("data", (chunk) => {
|
|
1731
|
+
if (stderr.length < 4e3) stderr += String(chunk);
|
|
1732
|
+
});
|
|
1733
|
+
child.on("error", (err) => {
|
|
1734
|
+
clearTimeout(timer);
|
|
1735
|
+
reject(err);
|
|
1736
|
+
});
|
|
1737
|
+
child.on("exit", (code, signal) => {
|
|
1738
|
+
clearTimeout(timer);
|
|
1739
|
+
if (code === 0) {
|
|
1740
|
+
resolve();
|
|
1741
|
+
return;
|
|
1742
|
+
}
|
|
1743
|
+
const detail = stderr.trim();
|
|
1744
|
+
reject(
|
|
1745
|
+
new Error(
|
|
1746
|
+
detail || `agentbus send exited with ${signal ? `signal ${signal}` : `code ${code ?? "unknown"}`}`
|
|
1747
|
+
)
|
|
1748
|
+
);
|
|
1749
|
+
});
|
|
1750
|
+
});
|
|
1751
|
+
}
|
|
1752
|
+
|
|
1674
1753
|
// src/host/agent-host.ts
|
|
1675
1754
|
var WS_OPEN = 1;
|
|
1676
1755
|
function defaultExcludePorts() {
|
|
@@ -1778,6 +1857,8 @@ var AgentHost = class {
|
|
|
1778
1857
|
return listSessions(msg.projectId ? String(msg.projectId) : void 0);
|
|
1779
1858
|
case "agent:start-session":
|
|
1780
1859
|
return this.doStartSession(msg.input ?? {});
|
|
1860
|
+
case "agent:send-claimed-prompt":
|
|
1861
|
+
return this.sendClaimedPrompt(msg);
|
|
1781
1862
|
case "agent:send-prompt": {
|
|
1782
1863
|
const sessionId = String(msg.sessionId);
|
|
1783
1864
|
const session = findSessionById(sessionId);
|
|
@@ -1809,6 +1890,28 @@ var AgentHost = class {
|
|
|
1809
1890
|
}
|
|
1810
1891
|
}
|
|
1811
1892
|
// --- operation impls ---
|
|
1893
|
+
async sendClaimedPrompt(msg) {
|
|
1894
|
+
const simId = typeof msg.simId === "string" ? msg.simId.trim() : "";
|
|
1895
|
+
if (!simId) {
|
|
1896
|
+
throw new AgentSessionError("NO_SIM", "agent:send-claimed-prompt requires simId");
|
|
1897
|
+
}
|
|
1898
|
+
const lease = this.opts.resolveCliLease?.(simId) ?? null;
|
|
1899
|
+
if (!lease || lease.kind !== "cli" || lease.expiresAt <= Date.now()) {
|
|
1900
|
+
throw new AgentSessionError("NO_CLAIM", `sim ${simId} has no active CLI claim`);
|
|
1901
|
+
}
|
|
1902
|
+
const sessionId = agentbusSessionIdFromCliIdentity(lease.cliIdentityKey);
|
|
1903
|
+
if (!sessionId) {
|
|
1904
|
+
throw new AgentSessionError(
|
|
1905
|
+
"UNSUPPORTED_CLAIM",
|
|
1906
|
+
`sim ${simId} is claimed by a CLI identity that is not promptable`
|
|
1907
|
+
);
|
|
1908
|
+
}
|
|
1909
|
+
await sendPromptToAgentbusSession({
|
|
1910
|
+
sessionId,
|
|
1911
|
+
prompt: this.normalizePromptEnvelope(msg)
|
|
1912
|
+
});
|
|
1913
|
+
return { ok: true, routed: "agentbus", sessionId };
|
|
1914
|
+
}
|
|
1812
1915
|
async doStartSession(input) {
|
|
1813
1916
|
const project = findProjectById(input.projectId);
|
|
1814
1917
|
if (!project) {
|
|
@@ -1838,7 +1941,7 @@ var AgentHost = class {
|
|
|
1838
1941
|
);
|
|
1839
1942
|
const project = upsertProject({
|
|
1840
1943
|
cwd: match.cwd,
|
|
1841
|
-
name: match.projectName ??
|
|
1944
|
+
name: match.projectName ?? import_node_path5.default.basename(match.cwd),
|
|
1842
1945
|
preferredProvider: input.provider ?? existing?.preferredProvider,
|
|
1843
1946
|
sourceRoots: existing?.sourceRoots ?? [match.cwd],
|
|
1844
1947
|
knownBundleUrls,
|
|
@@ -1849,18 +1952,18 @@ var AgentHost = class {
|
|
|
1849
1952
|
}
|
|
1850
1953
|
getTranscript(sessionId) {
|
|
1851
1954
|
const p = transcriptPath(sessionId);
|
|
1852
|
-
if (!
|
|
1955
|
+
if (!import_node_fs6.default.existsSync(p)) {
|
|
1853
1956
|
return { error: "transcript not found", code: "NO_TRANSCRIPT" };
|
|
1854
1957
|
}
|
|
1855
|
-
return
|
|
1958
|
+
return import_node_fs6.default.readFileSync(p, "utf8");
|
|
1856
1959
|
}
|
|
1857
1960
|
getPaths() {
|
|
1858
1961
|
const dir = getUserDataDir();
|
|
1859
1962
|
return {
|
|
1860
1963
|
userDataDir: dir,
|
|
1861
|
-
storeFile:
|
|
1862
|
-
sessionsDir:
|
|
1863
|
-
transcriptsDir:
|
|
1964
|
+
storeFile: import_node_path5.default.join(dir, "attached-projects.json"),
|
|
1965
|
+
sessionsDir: import_node_path5.default.join(dir, "sessions"),
|
|
1966
|
+
transcriptsDir: import_node_path5.default.join(dir, "transcripts")
|
|
1864
1967
|
};
|
|
1865
1968
|
}
|
|
1866
1969
|
// --- subscription management ---
|
|
@@ -2857,7 +2960,18 @@ var SootSimBridgeHost = class _SootSimBridgeHost {
|
|
|
2857
2960
|
this.shouldWriteDevLockfile = opts.writeDevLockfile === true;
|
|
2858
2961
|
this.portFallbackCount = Math.max(1, opts.portFallbackCount ?? 10);
|
|
2859
2962
|
this.openUrlHandler = opts.openUrl;
|
|
2860
|
-
this.agentHost = new AgentHost({
|
|
2963
|
+
this.agentHost = new AgentHost({
|
|
2964
|
+
getExcludePorts: opts.agentScanExcludes,
|
|
2965
|
+
resolveCliLease: (simId) => {
|
|
2966
|
+
const sim = this.sims.get(simId);
|
|
2967
|
+
const lease = sim ? this.getActiveLease(sim) : null;
|
|
2968
|
+
return lease ? {
|
|
2969
|
+
kind: lease.kind,
|
|
2970
|
+
cliIdentityKey: lease.cliIdentityKey,
|
|
2971
|
+
expiresAt: lease.expiresAt
|
|
2972
|
+
} : null;
|
|
2973
|
+
}
|
|
2974
|
+
});
|
|
2861
2975
|
this.sootbeanOrigin = opts.sootbeanOrigin?.replace(/\/$/, "") || null;
|
|
2862
2976
|
this.simIdleReapTtlMs = opts.simIdleReapTtlMs ?? _SootSimBridgeHost.SIM_IDLE_REAP_TTL_MS;
|
|
2863
2977
|
this.automationSimIdleReapTtlMs = opts.automationSimIdleReapTtlMs ?? _SootSimBridgeHost.AUTOMATION_SIM_IDLE_REAP_TTL_MS;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
|
|
3
3
|
// src/host/fetch-proxy-overrides.ts
|
|
4
4
|
var FETCH_PROXY_BROWSER_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/menu.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/menu.mjs
CHANGED
package/dist-lib/metro.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/profiles.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/render-mode.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/sdk.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! sootsim v0.1.
|
|
1
|
+
/*! sootsim v0.1.177 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/sdk.mjs
CHANGED