@desplega.ai/agent-fs 0.16.3 → 0.16.4

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.js CHANGED
@@ -245,7 +245,7 @@ CREATE TRIGGER IF NOT EXISTS files_fts_docs_au AFTER UPDATE ON files_fts_docs BE
245
245
  INSERT INTO files_fts(rowid, path, content, drive_id)
246
246
  VALUES (new.id, new.path, new.content, new.drive_id);
247
247
  END;
248
- `;function fc(e){if(!e.prepare("PRAGMA table_info(users)").all().some((s)=>s.name==="display_name"))e.exec("ALTER TABLE users ADD COLUMN display_name TEXT");if(e.exec("CREATE INDEX IF NOT EXISTS idx_users_api_key_hash ON users(api_key_hash)"),!e.prepare("PRAGMA table_info(file_versions)").all().some((s)=>s.name==="content_hash"))e.exec("ALTER TABLE file_versions ADD COLUMN content_hash TEXT");e.exec("CREATE UNIQUE INDEX IF NOT EXISTS file_versions_path_drive_version_uq ON file_versions(path, drive_id, version)");let o=e.prepare("PRAGMA table_info(comments)").all();for(let s of["quote_exact","quote_prefix","quote_suffix"])if(!o.some((a)=>a.name===s))e.exec(`ALTER TABLE comments ADD COLUMN ${s} TEXT`);if(!e.prepare("PRAGMA table_info(shares)").all().some((s)=>s.name==="kind"))e.exec("ALTER TABLE shares ADD COLUMN kind TEXT NOT NULL DEFAULT 'file'");e.exec("INSERT OR IGNORE INTO drive_members (drive_id, user_id, role) SELECT d.id, om.user_id, 'admin' FROM drives d JOIN org_members om ON om.org_id = d.org_id AND om.role = 'admin' WHERE NOT EXISTS (SELECT 1 FROM drive_members dm WHERE dm.drive_id = d.id)")}function fn(e){let t=e.prepare("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'files_fts'").get();return!!t&&!/content\s*=/i.test(t.sql)}function Mt(e){if(wo.has(e))return!1;let t=e.prepare("SELECT 1 FROM sqlite_master WHERE type = 'table' AND name = ?").get(st);if(!t)wo.add(e);return!!t}function av(e,t){return!!e.prepare("SELECT 1 FROM meta WHERE key = ?").get(t)}function gc(e){return Mt(e)||av(e,Wi)}function Xi(e){return e.transaction(()=>{if(fn(e))e.exec(`ALTER TABLE files_fts RENAME TO ${st}`),wo.delete(e);e.exec(vo)})(),gc(e)}async function Yi(e,t={}){let r={copied:0,skipped:0};if(!gc(e))return r;let n=t.log??(()=>{});if(Mt(e))await dv(e,r,t);return e.transaction(()=>{hc(e,sv),e.prepare("DELETE FROM meta WHERE key = ?").run(Wi)})(),n(`search index migration: done, ${r.copied} copied, ${r.skipped} skipped`),r}function hc(e,t){e.prepare("INSERT INTO files_fts(files_fts, rank) VALUES ('crisismerge', ?)").run(t)}async function dv(e,t,r){let n=r.batchSize??nv,o=r.batchBytes??ov,i=r.log??(()=>{});e.transaction(()=>{hc(e,iv),e.prepare("INSERT OR IGNORE INTO meta(key, value) VALUES (?, '1')").run(Wi)})();let s=e.prepare("SELECT value FROM meta WHERE key = ?"),a=e.prepare("INSERT INTO meta(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value"),d=e.prepare(`SELECT rowid, drive_id, path, content FROM ${st} WHERE rowid > ? ORDER BY rowid LIMIT ?`),c=e.prepare("SELECT 1 FROM files WHERE drive_id = ? AND path = ? AND is_deleted = 0"),l=e.prepare("SELECT 1 FROM files_fts_docs WHERE drive_id = ? AND path = ?"),u=e.prepare("INSERT INTO files_fts_docs(drive_id, path, content) VALUES (?, ?, ?)"),p=Number(s.get(Gi)?.value??0);i(`search index migration: starting at legacy rowid ${p}`);let m=e.transaction((y)=>{for(let x of y){if(!c.get(x.drive_id,x.path)||l.get(x.drive_id,x.path)){t.skipped++;continue}u.run(x.drive_id,x.path,x.content),t.copied++}p=y[y.length-1].rowid,a.run(Gi,String(p))}),g=0;for(;;){let y=d.all(p,n);if(y.length===0)break;let x=0;while(x<y.length){let A=x,P=0;do P+=y[A].content.length,A++;while(A<y.length&&P+y[A].content.length<=o);m(y.slice(x,A)),x=A,await Bun.sleep(0)}if(g+=y.length,g>=1000)g=0,i(`search index migration: ${t.copied} copied, ${t.skipped} skipped (legacy rowid ${p})`)}e.transaction(()=>{e.exec(`DROP TABLE ${st}`),e.prepare("DELETE FROM meta WHERE key = ?").run(Gi)})(),wo.add(e)}var st="files_fts_legacy",Gi="fts_migration_cursor",Wi="fts_migration_tuning",nv=50,ov=524288,iv=1000,sv=16,wo;var Rr=f(()=>{wo=new WeakSet});import{Database as cv}from"bun:sqlite";import{drizzle as lv}from"drizzle-orm/bun-sqlite";import*as yc from"sqlite-vec";import{existsSync as uv,mkdirSync as pv}from"fs";import{dirname as mv}from"path";function fv(e){yc.load(e)}function Ut(e){let t=e??Ar(),r=mv(t);if(!uv(r))pv(r,{recursive:!0});let n=new cv(t);if(fv(n),n.exec("PRAGMA journal_mode=WAL;"),n.exec("PRAGMA foreign_keys=ON;"),n.exec(pc),n.exec(mc),!fn(n))n.exec(vo);return fc(n),lv(n,{schema:de})}var pe=f(()=>{ac();Lt();uc();Rr()});var wc;var vc=f(()=>{wc={name:"agent-fs",version:"0.16.3",packageManager:"bun@1.4.1",private:!0,workspaces:["packages/*"],scripts:{typecheck:"tsc --build",test:"bun test packages/*/src/ live/src/lib/","test:coverage":"bun test --coverage packages/*/src/ live/src/lib/",build:"cd packages/cli && bun run build:npm","install-local":"bun run build && cd packages/cli && bun link","uninstall-local":"bun remove -g @desplega.ai/agent-fs && rm -f ~/.bun/bin/agent-fs","deploy:fly":"fly deploy -a agent-fs-taras"},devDependencies:{"@duckdb/node-api":"1.5.3-r.3","bun-types":"^1.4.0",msgpackr:"^1",typescript:"^5.7.0",yaml:"^2.8.2","zod-to-json-schema":"^3.25.1"},overrides:{chromadb:"npm:empty-npm-package@1.0.0","chromadb-default-embed":"npm:empty-npm-package@1.0.0","@xenova/transformers":"npm:empty-npm-package@1.0.0","tree-sitter-wasms":"npm:empty-npm-package@1.0.0","web-tree-sitter":"npm:empty-npm-package@1.0.0","cohere-ai":"npm:empty-npm-package@1.0.0",voyageai:"npm:empty-npm-package@1.0.0",ollama:"npm:empty-npm-package@1.0.0"}}});var qe;var bo=f(()=>{vc();qe=wc.version});import{randomUUID as bc}from"crypto";import{existsSync as hv,readFileSync as yv,writeFileSync as vv}from"fs";function Ac(e=process.env){let t=e.ANONYMIZED_TELEMETRY?.trim().toLowerCase();if(t&&xc.has(t))return!1;let r=e.DO_NOT_TRACK?.trim().toLowerCase();if(r&&!xc.has(r))return!1;return!0}function Sc(){let e=process.env.AGENT_FS_CLOUD?.trim().toLowerCase();return e==="true"||e==="1"}function Av(){let e=process.env.DESPLEGA_TELEMETRY_ENV?.trim();if(e)return e;return"production"}function Rv(){let e=Y().telemetry?.installId;if(e)return e;let t=`install_${bc().replace(/-/g,"").slice(0,16)}`;try{let r=tt(),n=hv(r)?JSON.parse(yv(r,"utf-8")):{};return n.telemetry={...n.telemetry??{},installId:t},vv(r,JSON.stringify(n,null,2)),t}catch{return`ephemeral_${bc().replace(/-/g,"").slice(0,16)}`}}function xo(e){gn.set(e,(gn.get(e)??0)+1)}function Tv(){return gn.size>0}function Ic(){let e={},t=0;for(let[r,n]of gn)e[`ops_${r.replace(/-/g,"_")}`]=n,t+=n;return gn.clear(),e.ops_total=t,e}function Ji(e,t,r={},n=Ev){if(!Ac())return Promise.resolve();try{let o={product:bv,event:t,occurred_at:new Date().toISOString(),source:"api-server",actor_mode:"anonymous",actor_anonymous_id:e,properties:{...r,is_cloud:Sc(),version:qe},metadata:{transport:"https",schema_version:1,environment:Av(),is_cloud:Sc()}};return fetch(wv,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o),signal:AbortSignal.timeout(n)}).then(()=>{},()=>{})}catch{return Promise.resolve()}}function Eo(e,t){try{return e.query(t).get()?.n??0}catch{return-1}}function _v(e){let t=Y(),r=t.s3.provider.toLowerCase(),n=t.embedding.provider;return{users:Eo(e,"SELECT count(*) AS n FROM users"),orgs:Eo(e,"SELECT count(*) AS n FROM orgs"),drives:Eo(e,"SELECT count(*) AS n FROM drives"),files:Eo(e,"SELECT count(*) AS n FROM files WHERE is_deleted = 0"),storage_provider:Sv.has(r)?r:"other",embedding_provider:Iv.has(n)?n:"other",os:process.platform,arch:process.arch}}function Qi(e){let t=()=>Promise.resolve();if(!Ac())return t;let r;try{r=Rv()}catch{return t}let n=()=>{try{return _v(e)}catch{return{}}};Ji(r,"server.started",n());let o=setInterval(()=>{Ji(r,"server.heartbeat",{...n(),...Ic()})},xv);o.unref();let i=!1;return()=>{if(i)return Promise.resolve();if(i=!0,clearInterval(o),!Tv())return Promise.resolve();let s=Ji(r,"server.heartbeat",{...n(),...Ic(),shutdown:!0},Ec),a=new Promise((d)=>setTimeout(d,Ec).unref());return Promise.race([s,a])}}var wv="https://proxy.desplega.sh/v1/events",bv="agent-fs",Ev=5000,xv=86400000,Ec=1500,xc,Sv,Iv,gn;var So=f(()=>{Lt();bo();xc=new Set(["false","0","no","off"]),Sv=new Set(["minio","s3","r2","tigris","local"]),Iv=new Set(["local","openai","gemini"]);gn=new Map});var Zi=De(function(Ov){var Rc=(e)=>encodeURIComponent(e).replace(/[!'()*]/g,kv),kv=(e)=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`,Cv=(e)=>e.split("/").map(Rc).join("/");Ov.escapeUri=Rc;Ov.escapeUriPath=Cv});var Tc=De(function(Lv){var es=Zi();function Dv(e){let t=[];for(let r of Object.keys(e).sort()){let n=e[r];if(r=es.escapeUri(r),Array.isArray(n))for(let o=0,i=n.length;o<i;o++)t.push(`${r}=${es.escapeUri(n[o])}`);else{let o=r;if(n||typeof n==="string")o+=`=${es.escapeUri(n)}`;t.push(o)}}return t.join("&")}Lv.buildQueryString=Dv});function kc(e){let{port:t,query:r}=e,{protocol:n,path:o,hostname:i}=e;if(n&&n.slice(-1)!==":")n+=":";if(t)i+=`:${t}`;if(o&&o.charAt(0)!=="/")o=`/${o}`;let s=r?_c.buildQueryString(r):"";if(s&&s[0]!=="?")s=`?${s}`;let a="";if(e.username!=null||e.password!=null){let c=e.username??"",l=e.password??"";a=`${c}:${l}@`}let d="";if(e.fragment)d=`#${e.fragment}`;return`${n}//${a}${i}${o}${s}${d}`}var _c;var Cc=f(()=>{_c=it(Tc())});var Oc=async(e)=>{let t=e?.Bucket||"";if(typeof e.Bucket==="string")e.Bucket=t.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"));if(Hv(t)){if(e.ForcePathStyle===!0)throw Error("Path-style addressing cannot be used with ARN buckets")}else if(!jv(t)||t.indexOf(".")!==-1&&!String(e.Endpoint).startsWith("http:")||t.toLowerCase()!==t||t.length<3)e.ForcePathStyle=!0;if(e.DisableMultiRegionAccessPoints)e.disableMultiRegionAccessPoints=!0,e.DisableMRAP=!0;return e},Mv,Uv,Fv,jv=(e)=>Mv.test(e)&&!Uv.test(e)&&!Fv.test(e),Hv=(e)=>{let[t,r,n,,,o]=e.split(":"),i=t==="arn"&&e.split(":").length>=6,s=Boolean(i&&r&&n&&o);if(i&&!s)throw Error(`Invalid ARN: ${e} was an invalid ARN.`);return s};var Nc=f(()=>{Mv=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,Uv=/(\d+\.){3}\d+/,Fv=/\.\./});var Pc=f(()=>{Nc()});var Dc=(e,t,r,n=!1)=>{let o=async()=>{let i;if(n)i=r.clientContextParams?.[e]??r[e]??r[t];else i=r[e]??r[t];if(typeof i==="function")return i();return i};if(e==="credentialScope"||t==="CredentialScope")return async()=>{let i=typeof r.credentials==="function"?await r.credentials():r.credentials;return i?.credentialScope??i?.CredentialScope};if(e==="accountId"||t==="AccountId")return async()=>{let i=typeof r.credentials==="function"?await r.credentials():r.credentials;return i?.accountId??i?.AccountId};if(e==="endpoint"||t==="endpoint")return async()=>{if(r.isCustomEndpoint===!1)return;let i=await o();if(i&&typeof i==="object"){if("url"in i)return i.url.href;if("hostname"in i){let{protocol:s,hostname:a,port:d,path:c}=i;return`${s}//${a}${d?":"+d:""}${c}`}}return i};return o};var hn=De(function(Kv){class Tr extends Error{name="ProviderError";tryNextLink;constructor(e,t=!0){let r,n=!0;if(typeof t==="boolean")r=void 0,n=t;else if(t!=null&&typeof t==="object")r=t.logger,n=t.tryNextLink??!0;super(e);this.tryNextLink=n,Object.setPrototypeOf(this,Tr.prototype),r?.debug?.(`@smithy/property-provider ${n?"->":"(!)"} ${e}`)}static from(e,t=!0){return Object.assign(new this(e.message,t),e)}}class ts extends Tr{name="CredentialsProviderError";constructor(e,t=!0){super(e,t);Object.setPrototypeOf(this,ts.prototype)}}class rs extends Tr{name="TokenProviderError";constructor(e,t=!0){super(e,t);Object.setPrototypeOf(this,rs.prototype)}}var Bv=(...e)=>async()=>{if(e.length===0)throw new Tr("No providers in chain");let t;for(let r of e)try{return await r()}catch(n){if(t=n,n?.tryNextLink)continue;throw n}throw t},qv=(e)=>()=>Promise.resolve(e),Vv=(e,t,r)=>{let n,o,i,s=!1,a=async()=>{if(!o)o=e();try{n=await o,i=!0,s=!1}finally{o=void 0}return n};if(t===void 0)return async(d)=>{if(!i||d?.forceRefresh)n=await a();return n};return async(d)=>{if(!i||d?.forceRefresh)n=await a();if(s)return n;if(r&&!r(n))return s=!0,n;if(t(n))return await a(),n;return n}};Kv.CredentialsProviderError=ts;Kv.ProviderError=Tr;Kv.TokenProviderError=rs;Kv.chain=Bv;Kv.fromStatic=qv;Kv.memoize=Vv});function Io(e){try{let t=new Set(Array.from(e.match(/([A-Z_]){3,}/g)??[]));return t.delete("CONFIG"),t.delete("CONFIG_PREFIX_SEPARATOR"),t.delete("ENV"),[...t].join(", ")}catch(t){return e}}var Lc,$c=(e,t)=>async()=>{try{let r=e(process.env,t);if(r===void 0)throw Error();return r}catch(r){throw new Lc.CredentialsProviderError(r.message||`Not found in ENV: ${Io(e.toString())}`,{logger:t?.logger})}};var Mc=f(()=>{Lc=it(hn())});import{homedir as Qv}from"os";import{sep as Zv}from"path";var ns,ew=()=>{if(process&&process.geteuid)return`${process.geteuid()}`;return"DEFAULT"},_r=()=>{let{HOME:e,USERPROFILE:t,HOMEPATH:r,HOMEDRIVE:n=`C:${Zv}`}=process.env;if(e)return e;if(t)return t;if(r)return`${n}${r}`;let o=ew();if(!ns[o])ns[o]=Qv();return ns[o]};var yn=f(()=>{ns={}});var Uc=(e)=>e.profile||process.env.AWS_PROFILE||"default";var Fc=()=>{};var wn=De(function(sw){sw.HttpAuthLocation=void 0;(function(e){e.HEADER="header",e.QUERY="query"})(sw.HttpAuthLocation||(sw.HttpAuthLocation={}));sw.HttpApiKeyAuthLocation=void 0;(function(e){e.HEADER="header",e.QUERY="query"})(sw.HttpApiKeyAuthLocation||(sw.HttpApiKeyAuthLocation={}));sw.EndpointURLScheme=void 0;(function(e){e.HTTP="http",e.HTTPS="https"})(sw.EndpointURLScheme||(sw.EndpointURLScheme={}));sw.AlgorithmId=void 0;(function(e){e.MD5="md5",e.CRC32="crc32",e.CRC32C="crc32c",e.SHA1="sha1",e.SHA256="sha256"})(sw.AlgorithmId||(sw.AlgorithmId={}));var tw=(e)=>{let t=[];if(e.sha256!==void 0)t.push({algorithmId:()=>sw.AlgorithmId.SHA256,checksumConstructor:()=>e.sha256});if(e.md5!=null)t.push({algorithmId:()=>sw.AlgorithmId.MD5,checksumConstructor:()=>e.md5});return{addChecksumAlgorithm(r){t.push(r)},checksumAlgorithms(){return t}}},rw=(e)=>{let t={};return e.checksumAlgorithms().forEach((r)=>{t[r.algorithmId()]=r.checksumConstructor()}),t},nw=(e)=>tw(e),ow=(e)=>rw(e);sw.FieldPosition=void 0;(function(e){e[e.HEADER=0]="HEADER",e[e.TRAILER=1]="TRAILER"})(sw.FieldPosition||(sw.FieldPosition={}));var iw="__smithy_context";sw.IniSectionType=void 0;(function(e){e.PROFILE="profile",e.SSO_SESSION="sso-session",e.SERVICES="services"})(sw.IniSectionType||(sw.IniSectionType={}));sw.RequestHandlerProtocol=void 0;(function(e){e.HTTP_0_9="http/0.9",e.HTTP_1_0="http/1.0",e.TDS_8_0="tds/8.0"})(sw.RequestHandlerProtocol||(sw.RequestHandlerProtocol={}));sw.SMITHY_CONTEXT_KEY=iw;sw.getDefaultClientConfiguration=nw;sw.resolveDefaultRuntimeConfig=ow});var wt=".";var ls,jc=(e)=>Object.entries(e).filter(([t])=>{let r=t.indexOf(wt);if(r===-1)return!1;return Object.values(ls.IniSectionType).includes(t.substring(0,r))}).reduce((t,[r,n])=>{let o=r.indexOf(wt),i=r.substring(0,o)===ls.IniSectionType.PROFILE?r.substring(o+1):r;return t[i]=n,t},{...e.default&&{default:e.default}});var Hc=f(()=>{ls=it(wn())});import{join as lw}from"path";var uw="AWS_CONFIG_FILE",Bc=()=>process.env[uw]||lw(_r(),".aws","config");var qc=f(()=>{yn()});import{join as pw}from"path";var mw="AWS_SHARED_CREDENTIALS_FILE",Vc=()=>process.env[mw]||pw(_r(),".aws","credentials");var Kc=f(()=>{yn()});var zc,fw,gw,us=(e)=>{let t={},r,n;for(let o of e.split(/\r?\n/)){let i=o.split(/(^|\s)[;#]/)[0].trim();if(i[0]==="["&&i[i.length-1]==="]"){r=void 0,n=void 0;let a=i.substring(1,i.length-1),d=fw.exec(a);if(d){let[,c,,l]=d;if(Object.values(zc.IniSectionType).includes(c))r=[c,l].join(wt)}else r=a;if(gw.includes(a))throw Error(`Found invalid profile name "${a}"`)}else if(r){let a=i.indexOf("=");if(![0,-1].includes(a)){let[d,c]=[i.substring(0,a).trim(),i.substring(a+1).trim()];if(c==="")n=d;else{if(n&&o.trimStart()===o)n=void 0;t[r]=t[r]||{};let l=n?[n,d].join(wt):d;t[r][l]=c}}}}return t};var Gc=f(()=>{zc=it(wn()),fw=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,gw=["__proto__","profile __proto__"]});import{readFile as hw}from"fs/promises";var ps,Wc,ms=(e,t)=>{if(Wc[e]!==void 0)return Wc[e];if(!ps[e]||t?.ignoreCache)ps[e]=hw(e,"utf8");return ps[e]};var Xc=f(()=>{ps={},Wc={}});import{join as Yc}from"path";var Jc=()=>({}),Qc=async(e={})=>{let{filepath:t=Vc(),configFilepath:r=Bc()}=e,n=_r(),o="~/",i=t;if(t.startsWith("~/"))i=Yc(n,t.slice(2));let s=r;if(r.startsWith("~/"))s=Yc(n,r.slice(2));let a=await Promise.all([ms(s,{ignoreCache:e.ignoreCache}).then(us).then(jc).catch(Jc),ms(i,{ignoreCache:e.ignoreCache}).then(us).catch(Jc)]);return{configFile:a[0],credentialsFile:a[1]}};var Zc=f(()=>{Hc();qc();Kc();yn();Gc();Xc()});var el=()=>{};var tl=()=>{};var rl=()=>{};var fs=f(()=>{yn();Fc();Zc();el();tl();rl()});var nl,ol=(e,{preferredFile:t="config",...r}={})=>async()=>{let n=Uc(r),{configFile:o,credentialsFile:i}=await Qc(r),s=i[n]||{},a=o[n]||{},d=t==="config"?{...s,...a}:{...a,...s};try{let l=e(d,t==="config"?o:i);if(l===void 0)throw Error();return l}catch(c){throw new nl.CredentialsProviderError(c.message||`Not found in config files w/ profile [${n}]: ${Io(e.toString())}`,{logger:r.logger})}};var il=f(()=>{fs();nl=it(hn())});var sl,yw=(e)=>typeof e==="function",al=(e)=>yw(e)?async()=>await e():sl.fromStatic(e);var dl=f(()=>{sl=it(hn())});var Ao,cl=({environmentVariableSelector:e,configFileSelector:t,default:r},n={})=>{let{signingName:o,logger:i}=n;return Ao.memoize(Ao.chain($c(e,{signingName:o,logger:i}),ol(t,n),al(r)))};var ll=f(()=>{Mc();il();dl();Ao=it(hn())});var ul=f(()=>{ll()});var pl="AWS_ENDPOINT_URL",ml="endpoint_url",fl=(e)=>({environmentVariableSelector:(t)=>{let r=e.split(" ").map((i)=>i.toUpperCase()),n=t[[pl,...r].join("_")];if(n)return n;let o=t[pl];if(o)return o;return},configFileSelector:(t,r)=>{if(r&&t.services){let o=r[["services",t.services].join(wt)];if(o){let i=e.split(" ").map((a)=>a.toLowerCase()),s=o[[i.join("_"),ml].join(wt)];if(s)return s}}let n=t[ml];if(n)return n;return},default:void 0});var gl=f(()=>{fs()});var hl=async(e)=>cl(fl(e??""))();var yl=f(()=>{ul();gl()});var vl=De(function(ww){function vw(e){let t={};if(e=e.replace(/^\?/,""),e)for(let r of e.split("&")){let[n,o=null]=r.split("=");if(n=decodeURIComponent(n),o)o=decodeURIComponent(o);if(!(n in t))t[n]=o;else if(Array.isArray(t[n]))t[n].push(o);else t[n]=[t[n],o]}return t}ww.parseQueryString=vw});var bl=De(function(xw){var Ew=vl(),wl=(e)=>{if(typeof e==="string")return wl(new URL(e));let{hostname:t,pathname:r,port:n,protocol:o,search:i}=e,s;if(i)s=Ew.parseQueryString(i);return{hostname:t,port:n?parseInt(n):void 0,protocol:o,path:r,query:s}};xw.parseUrl=wl});var gs,El=(e)=>{if(typeof e==="object"){if("url"in e){let t=gs.parseUrl(e.url);if(e.headers){t.headers={};for(let[r,n]of Object.entries(e.headers))t.headers[r.toLowerCase()]=n.join(", ")}return t}return e}return gs.parseUrl(e)};var hs=f(()=>{gs=it(bl())});var xl=async(e,t,r,n)=>{if(!r.isCustomEndpoint){let s;if(r.serviceConfiguredEndpoint)s=await r.serviceConfiguredEndpoint();else s=await hl(r.serviceId);if(s)r.endpoint=()=>Promise.resolve(El(s)),r.isCustomEndpoint=!0}let o=await Iw(e,t,r);if(typeof r.endpointProvider!=="function")throw Error("config.endpointProvider is not set.");let i=r.endpointProvider(o,n);if(r.isCustomEndpoint&&r.endpoint){let s=await r.endpoint();if(s?.headers){i.headers??={};for(let[a,d]of Object.entries(s.headers))i.headers[a]=Array.isArray(d)?d:[d]}}return i},Iw=async(e,t,r)=>{let n={},o=t?.getEndpointParameterInstructions?.()||{};for(let[i,s]of Object.entries(o))switch(s.type){case"staticContextParams":n[i]=s.value;break;case"contextParams":n[i]=e[s.name];break;case"clientContextParams":case"builtInParams":n[i]=await Dc(s.name,i,r,s.type!=="builtInParams")();break;case"operationContextParams":n[i]=s.get(e);break;default:throw Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(s))}if(Object.keys(o).length===0)Object.assign(n,r);if(String(r.serviceId).toLowerCase()==="s3")await Oc(n);return n};var Sl=f(()=>{Pc();yl();hs()});var Il=f(()=>{Sl();hs()});var Rl=De(function(Tw){var Al=wn(),Aw=(e)=>e[Al.SMITHY_CONTEXT_KEY]||(e[Al.SMITHY_CONTEXT_KEY]={}),Rw=(e)=>{if(typeof e==="function")return e;let t=Promise.resolve(e);return()=>t};Tw.getSmithyContext=Aw;Tw.normalizeProvider=Rw});var Tl=()=>{};var ys=De(function(Lw){var Cw=wn(),Ow=(e)=>({setHttpHandler(t){e.httpHandler=t},httpHandler(){return e.httpHandler},updateHttpClientConfig(t,r){e.httpHandler?.updateHttpClientConfig(t,r)},httpHandlerConfigs(){return e.httpHandler.httpHandlerConfigs()}}),Nw=(e)=>({httpHandler:e.httpHandler()});class _l{name;kind;values;constructor({name:e,kind:t=Cw.FieldPosition.HEADER,values:r=[]}){this.name=e,this.kind=t,this.values=r}add(e){this.values.push(e)}set(e){this.values=e}remove(e){this.values=this.values.filter((t)=>t!==e)}toString(){return this.values.map((e)=>e.includes(",")||e.includes(" ")?`"${e}"`:e).join(", ")}get(){return this.values}}class kl{entries={};encoding;constructor({fields:e=[],encoding:t="utf-8"}){e.forEach(this.setField.bind(this)),this.encoding=t}setField(e){this.entries[e.name.toLowerCase()]=e}getField(e){return this.entries[e.toLowerCase()]}removeField(e){delete this.entries[e.toLowerCase()]}getByType(e){return Object.values(this.entries).filter((t)=>t.kind===e)}}class Ro{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?e.protocol.slice(-1)!==":"?`${e.protocol}:`:e.protocol:"https:",this.path=e.path?e.path.charAt(0)!=="/"?`/${e.path}`:e.path:"/",this.username=e.username,this.password=e.password,this.fragment=e.fragment}static clone(e){let t=new Ro({...e,headers:{...e.headers}});if(t.query)t.query=Pw(t.query);return t}static isInstance(e){if(!e)return!1;let t=e;return"method"in t&&"protocol"in t&&"hostname"in t&&"path"in t&&typeof t.query==="object"&&typeof t.headers==="object"}clone(){return Ro.clone(this)}}function Pw(e){return Object.keys(e).reduce((t,r)=>{let n=e[r];return{...t,[r]:Array.isArray(n)?[...n]:n}},{})}class Cl{statusCode;reason;headers;body;constructor(e){this.statusCode=e.statusCode,this.reason=e.reason,this.headers=e.headers||{},this.body=e.body}static isInstance(e){if(!e)return!1;let t=e;return typeof t.statusCode==="number"&&typeof t.headers==="object"}}function Dw(e){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(e)}Lw.Field=_l;Lw.Fields=kl;Lw.HttpRequest=Ro;Lw.HttpResponse=Cl;Lw.getHttpHandlerExtensionConfiguration=Ow;Lw.isValidHostname=Dw;Lw.resolveHttpHandlerRuntimeConfig=Nw});var Ol=()=>{};var Nl=()=>{};var Pl;var Dl=f(()=>{Pl={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0}});var Ll=f(()=>{Ol();Dl();Nl()});var LC;var $l=f(()=>{Ll();LC={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:Pl.name}});var Ml=()=>{};var Ul=()=>{};var Fl=f(()=>{Il();Tl();$l();Ml();Ul()});var jl=()=>{};var Hl=()=>{};var Bl=()=>{};var ql=()=>{};var Kl=De(function(Kw){var Vl={},vs={};for(let e=0;e<256;e++){let t=e.toString(16).toLowerCase();if(t.length===1)t=`0${t}`;Vl[e]=t,vs[t]=e}function qw(e){if(e.length%2!==0)throw Error("Hex encoded strings must have an even number length");let t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){let n=e.slice(r,r+2).toLowerCase();if(n in vs)t[r/2]=vs[n];else throw Error(`Cannot decode unrecognized sequence ${n} as hexadecimal`)}return t}function Vw(e){let t="";for(let r=0;r<e.byteLength;r++)t+=Vl[e[r]];return t}Kw.fromHex=qw;Kw.toHex=Vw});var ws=De(function(Xw){var Ww=(e)=>typeof ArrayBuffer==="function"&&e instanceof ArrayBuffer||Object.prototype.toString.call(e)==="[object ArrayBuffer]";Xw.isArrayBuffer=Ww});var zl=De(function(eb){var Jw=ws(),bs=Gy("buffer"),Qw=(e,t=0,r=e.byteLength-t)=>{if(!Jw.isArrayBuffer(e))throw TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof e} (${e})`);return bs.Buffer.from(e,t,r)},Zw=(e,t)=>{if(typeof e!=="string")throw TypeError(`The "input" argument must be of type string. Received type ${typeof e} (${e})`);return t?bs.Buffer.from(e,t):bs.Buffer.from(e)};eb.fromArrayBuffer=Qw;eb.fromString=Zw});var Xl=De(function(ib){var Gl=zl(),Wl=(e)=>{let t=Gl.fromString(e,"utf8");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT)},nb=(e)=>{if(typeof e==="string")return Wl(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT);return new Uint8Array(e)},ob=(e)=>{if(typeof e==="string")return e;if(typeof e!=="object"||typeof e.byteOffset!=="number"||typeof e.byteLength!=="number")throw Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return Gl.fromArrayBuffer(e.buffer,e.byteOffset,e.byteLength).toString("utf8")};ib.fromUtf8=Wl;ib.toUint8Array=nb;ib.toUtf8=ob});var Os=De(function(wb){var Yt=Kl(),ur=Xl(),cb=ws(),Zl=ys(),Yl=Rl(),To=Zi(),eu="X-Amz-Algorithm",tu="X-Amz-Credential",Ss="X-Amz-Date",ru="X-Amz-SignedHeaders",nu="X-Amz-Expires",Is="X-Amz-Signature",As="X-Amz-Security-Token",lb="X-Amz-Region-Set",Rs="authorization",Ts=Ss.toLowerCase(),ou="date",iu=[Rs,Ts,ou],su=Is.toLowerCase(),No="x-amz-content-sha256",au=As.toLowerCase(),ub="host",du={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},cu=/^proxy-/,lu=/^sec-/,pb=[/^proxy-/i,/^sec-/i],_o="AWS4-HMAC-SHA256",mb="AWS4-ECDSA-P256-SHA256",uu="AWS4-HMAC-SHA256-PAYLOAD",pu="UNSIGNED-PAYLOAD",mu=50,_s="aws4_request",fu=604800,kr={},ko=[],Co=(e,t,r)=>`${e}/${t}/${r}/${_s}`,gu=async(e,t,r,n,o)=>{let i=await Jl(e,t.secretAccessKey,t.accessKeyId),s=`${r}:${n}:${o}:${Yt.toHex(i)}:${t.sessionToken}`;if(s in kr)return kr[s];ko.push(s);while(ko.length>mu)delete kr[ko.shift()];let a=`AWS4${t.secretAccessKey}`;for(let d of[r,n,o,_s])a=await Jl(e,a,d);return kr[s]=a},fb=()=>{ko.length=0,Object.keys(kr).forEach((e)=>{delete kr[e]})},Jl=(e,t,r)=>{let n=new e(t);return n.update(ur.toUint8Array(r)),n.digest()},Es=({headers:e},t,r)=>{let n={};for(let o of Object.keys(e).sort()){if(e[o]==null)continue;let i=o.toLowerCase();if(i in du||t?.has(i)||cu.test(i)||lu.test(i)){if(!r||r&&!r.has(i))continue}n[i]=e[o].trim().replace(/\s+/g," ")}return n},Oo=async({headers:e,body:t},r)=>{for(let n of Object.keys(e))if(n.toLowerCase()===No)return e[n];if(t==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";else if(typeof t==="string"||ArrayBuffer.isView(t)||cb.isArrayBuffer(t)){let n=new r;return n.update(ur.toUint8Array(t)),Yt.toHex(await n.digest())}return pu};class hu{format(e){let t=[];for(let o of Object.keys(e)){let i=ur.fromUtf8(o);t.push(Uint8Array.from([i.byteLength]),i,this.formatHeaderValue(e[o]))}let r=new Uint8Array(t.reduce((o,i)=>o+i.byteLength,0)),n=0;for(let o of t)r.set(o,n),n+=o.byteLength;return r}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":let t=new DataView(new ArrayBuffer(3));return t.setUint8(0,3),t.setInt16(1,e.value,!1),new Uint8Array(t.buffer);case"integer":let r=new DataView(new ArrayBuffer(5));return r.setUint8(0,4),r.setInt32(1,e.value,!1),new Uint8Array(r.buffer);case"long":let n=new Uint8Array(9);return n[0]=5,n.set(e.value.bytes,1),n;case"binary":let o=new DataView(new ArrayBuffer(3+e.value.byteLength));o.setUint8(0,6),o.setUint16(1,e.value.byteLength,!1);let i=new Uint8Array(o.buffer);return i.set(e.value,3),i;case"string":let s=ur.fromUtf8(e.value),a=new DataView(new ArrayBuffer(3+s.byteLength));a.setUint8(0,7),a.setUint16(1,s.byteLength,!1);let d=new Uint8Array(a.buffer);return d.set(s,3),d;case"timestamp":let c=new Uint8Array(9);return c[0]=8,c.set(ks.fromNumber(e.value.valueOf()).bytes,1),c;case"uuid":if(!gb.test(e.value))throw Error(`Invalid UUID received: ${e.value}`);let l=new Uint8Array(17);return l[0]=9,l.set(Yt.fromHex(e.value.replace(/\-/g,"")),1),l}}}var gb=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;class ks{bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776000||e<-9223372036854776000)throw Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let t=new Uint8Array(8);for(let r=7,n=Math.abs(Math.round(e));r>-1&&n>0;r--,n/=256)t[r]=n;if(e<0)Ql(t);return new ks(t)}valueOf(){let e=this.bytes.slice(0),t=e[0]&128;if(t)Ql(e);return parseInt(Yt.toHex(e),16)*(t?-1:1)}toString(){return String(this.valueOf())}}function Ql(e){for(let t=0;t<8;t++)e[t]^=255;for(let t=7;t>-1;t--)if(e[t]++,e[t]!==0)break}var yu=(e,t)=>{e=e.toLowerCase();for(let r of Object.keys(t))if(e===r.toLowerCase())return!0;return!1},vu=(e,t={})=>{let{headers:r,query:n={}}=Zl.HttpRequest.clone(e);for(let o of Object.keys(r)){let i=o.toLowerCase();if(i.slice(0,6)==="x-amz-"&&!t.unhoistableHeaders?.has(i)||t.hoistableHeaders?.has(i))n[o]=r[o],delete r[o]}return{...e,headers:r,query:n}},xs=(e)=>{e=Zl.HttpRequest.clone(e);for(let t of Object.keys(e.headers))if(iu.indexOf(t.toLowerCase())>-1)delete e.headers[t];return e},wu=({query:e={}})=>{let t=[],r={};for(let n of Object.keys(e)){if(n.toLowerCase()===su)continue;let o=To.escapeUri(n);t.push(o);let i=e[n];if(typeof i==="string")r[o]=`${o}=${To.escapeUri(i)}`;else if(Array.isArray(i))r[o]=i.slice(0).reduce((s,a)=>s.concat([`${o}=${To.escapeUri(a)}`]),[]).sort().join("&")}return t.sort().map((n)=>r[n]).filter((n)=>n).join("&")},hb=(e)=>yb(e).toISOString().replace(/\.\d{3}Z$/,"Z"),yb=(e)=>{if(typeof e==="number")return new Date(e*1000);if(typeof e==="string"){if(Number(e))return new Date(Number(e)*1000);return new Date(e)}return e};class Cs{service;regionProvider;credentialProvider;sha256;uriEscapePath;applyChecksum;constructor({applyChecksum:e,credentials:t,region:r,service:n,sha256:o,uriEscapePath:i=!0}){this.service=n,this.sha256=o,this.uriEscapePath=i,this.applyChecksum=typeof e==="boolean"?e:!0,this.regionProvider=Yl.normalizeProvider(r),this.credentialProvider=Yl.normalizeProvider(t)}createCanonicalRequest(e,t,r){let n=Object.keys(t).sort();return`${e.method}
248
+ `;function fc(e){if(!e.prepare("PRAGMA table_info(users)").all().some((s)=>s.name==="display_name"))e.exec("ALTER TABLE users ADD COLUMN display_name TEXT");if(e.exec("CREATE INDEX IF NOT EXISTS idx_users_api_key_hash ON users(api_key_hash)"),!e.prepare("PRAGMA table_info(file_versions)").all().some((s)=>s.name==="content_hash"))e.exec("ALTER TABLE file_versions ADD COLUMN content_hash TEXT");e.exec("CREATE UNIQUE INDEX IF NOT EXISTS file_versions_path_drive_version_uq ON file_versions(path, drive_id, version)");let o=e.prepare("PRAGMA table_info(comments)").all();for(let s of["quote_exact","quote_prefix","quote_suffix"])if(!o.some((a)=>a.name===s))e.exec(`ALTER TABLE comments ADD COLUMN ${s} TEXT`);if(!e.prepare("PRAGMA table_info(shares)").all().some((s)=>s.name==="kind"))e.exec("ALTER TABLE shares ADD COLUMN kind TEXT NOT NULL DEFAULT 'file'");e.exec("INSERT OR IGNORE INTO drive_members (drive_id, user_id, role) SELECT d.id, om.user_id, 'admin' FROM drives d JOIN org_members om ON om.org_id = d.org_id AND om.role = 'admin' WHERE NOT EXISTS (SELECT 1 FROM drive_members dm WHERE dm.drive_id = d.id)")}function fn(e){let t=e.prepare("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'files_fts'").get();return!!t&&!/content\s*=/i.test(t.sql)}function Mt(e){if(wo.has(e))return!1;let t=e.prepare("SELECT 1 FROM sqlite_master WHERE type = 'table' AND name = ?").get(st);if(!t)wo.add(e);return!!t}function av(e,t){return!!e.prepare("SELECT 1 FROM meta WHERE key = ?").get(t)}function gc(e){return Mt(e)||av(e,Wi)}function Xi(e){return e.transaction(()=>{if(fn(e))e.exec(`ALTER TABLE files_fts RENAME TO ${st}`),wo.delete(e);e.exec(vo)})(),gc(e)}async function Yi(e,t={}){let r={copied:0,skipped:0};if(!gc(e))return r;let n=t.log??(()=>{});if(Mt(e))await dv(e,r,t);return e.transaction(()=>{hc(e,sv),e.prepare("DELETE FROM meta WHERE key = ?").run(Wi)})(),n(`search index migration: done, ${r.copied} copied, ${r.skipped} skipped`),r}function hc(e,t){e.prepare("INSERT INTO files_fts(files_fts, rank) VALUES ('crisismerge', ?)").run(t)}async function dv(e,t,r){let n=r.batchSize??nv,o=r.batchBytes??ov,i=r.log??(()=>{});e.transaction(()=>{hc(e,iv),e.prepare("INSERT OR IGNORE INTO meta(key, value) VALUES (?, '1')").run(Wi)})();let s=e.prepare("SELECT value FROM meta WHERE key = ?"),a=e.prepare("INSERT INTO meta(key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value"),d=e.prepare(`SELECT rowid, drive_id, path, content FROM ${st} WHERE rowid > ? ORDER BY rowid LIMIT ?`),c=e.prepare("SELECT 1 FROM files WHERE drive_id = ? AND path = ? AND is_deleted = 0"),l=e.prepare("SELECT 1 FROM files_fts_docs WHERE drive_id = ? AND path = ?"),u=e.prepare("INSERT INTO files_fts_docs(drive_id, path, content) VALUES (?, ?, ?)"),p=Number(s.get(Gi)?.value??0);i(`search index migration: starting at legacy rowid ${p}`);let m=e.transaction((y)=>{for(let x of y){if(!c.get(x.drive_id,x.path)||l.get(x.drive_id,x.path)){t.skipped++;continue}u.run(x.drive_id,x.path,x.content),t.copied++}p=y[y.length-1].rowid,a.run(Gi,String(p))}),g=0;for(;;){let y=d.all(p,n);if(y.length===0)break;let x=0;while(x<y.length){let A=x,P=0;do P+=y[A].content.length,A++;while(A<y.length&&P+y[A].content.length<=o);m(y.slice(x,A)),x=A,await Bun.sleep(0)}if(g+=y.length,g>=1000)g=0,i(`search index migration: ${t.copied} copied, ${t.skipped} skipped (legacy rowid ${p})`)}e.transaction(()=>{e.exec(`DROP TABLE ${st}`),e.prepare("DELETE FROM meta WHERE key = ?").run(Gi)})(),wo.add(e)}var st="files_fts_legacy",Gi="fts_migration_cursor",Wi="fts_migration_tuning",nv=50,ov=524288,iv=1000,sv=16,wo;var Rr=f(()=>{wo=new WeakSet});import{Database as cv}from"bun:sqlite";import{drizzle as lv}from"drizzle-orm/bun-sqlite";import*as yc from"sqlite-vec";import{existsSync as uv,mkdirSync as pv}from"fs";import{dirname as mv}from"path";function fv(e){yc.load(e)}function Ut(e){let t=e??Ar(),r=mv(t);if(!uv(r))pv(r,{recursive:!0});let n=new cv(t);if(fv(n),n.exec("PRAGMA journal_mode=WAL;"),n.exec("PRAGMA foreign_keys=ON;"),n.exec(pc),n.exec(mc),!fn(n))n.exec(vo);return fc(n),lv(n,{schema:de})}var pe=f(()=>{ac();Lt();uc();Rr()});var wc;var vc=f(()=>{wc={name:"agent-fs",version:"0.16.4",packageManager:"bun@1.4.1",private:!0,workspaces:["packages/*"],scripts:{typecheck:"tsc --build",test:"bun test packages/*/src/ live/src/lib/","test:coverage":"bun test --coverage packages/*/src/ live/src/lib/",build:"cd packages/cli && bun run build:npm","install-local":"bun run build && cd packages/cli && bun link","uninstall-local":"bun remove -g @desplega.ai/agent-fs && rm -f ~/.bun/bin/agent-fs","deploy:fly":"fly deploy -a agent-fs-taras"},devDependencies:{"@duckdb/node-api":"1.5.3-r.3","bun-types":"^1.4.0",msgpackr:"^1",typescript:"^5.7.0",yaml:"^2.8.2","zod-to-json-schema":"^3.25.1"},overrides:{chromadb:"npm:empty-npm-package@1.0.0","chromadb-default-embed":"npm:empty-npm-package@1.0.0","@xenova/transformers":"npm:empty-npm-package@1.0.0","tree-sitter-wasms":"npm:empty-npm-package@1.0.0","web-tree-sitter":"npm:empty-npm-package@1.0.0","cohere-ai":"npm:empty-npm-package@1.0.0",voyageai:"npm:empty-npm-package@1.0.0",ollama:"npm:empty-npm-package@1.0.0"}}});var qe;var bo=f(()=>{vc();qe=wc.version});import{randomUUID as bc}from"crypto";import{existsSync as hv,readFileSync as yv,writeFileSync as vv}from"fs";function Ac(e=process.env){let t=e.ANONYMIZED_TELEMETRY?.trim().toLowerCase();if(t&&xc.has(t))return!1;let r=e.DO_NOT_TRACK?.trim().toLowerCase();if(r&&!xc.has(r))return!1;return!0}function Sc(){let e=process.env.AGENT_FS_CLOUD?.trim().toLowerCase();return e==="true"||e==="1"}function Av(){let e=process.env.DESPLEGA_TELEMETRY_ENV?.trim();if(e)return e;return"production"}function Rv(){let e=Y().telemetry?.installId;if(e)return e;let t=`install_${bc().replace(/-/g,"").slice(0,16)}`;try{let r=tt(),n=hv(r)?JSON.parse(yv(r,"utf-8")):{};return n.telemetry={...n.telemetry??{},installId:t},vv(r,JSON.stringify(n,null,2)),t}catch{return`ephemeral_${bc().replace(/-/g,"").slice(0,16)}`}}function xo(e){gn.set(e,(gn.get(e)??0)+1)}function Tv(){return gn.size>0}function Ic(){let e={},t=0;for(let[r,n]of gn)e[`ops_${r.replace(/-/g,"_")}`]=n,t+=n;return gn.clear(),e.ops_total=t,e}function Ji(e,t,r={},n=Ev){if(!Ac())return Promise.resolve();try{let o={product:bv,event:t,occurred_at:new Date().toISOString(),source:"api-server",actor_mode:"anonymous",actor_anonymous_id:e,properties:{...r,is_cloud:Sc(),version:qe},metadata:{transport:"https",schema_version:1,environment:Av(),is_cloud:Sc()}};return fetch(wv,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o),signal:AbortSignal.timeout(n)}).then(()=>{},()=>{})}catch{return Promise.resolve()}}function Eo(e,t){try{return e.query(t).get()?.n??0}catch{return-1}}function _v(e){let t=Y(),r=t.s3.provider.toLowerCase(),n=t.embedding.provider;return{users:Eo(e,"SELECT count(*) AS n FROM users"),orgs:Eo(e,"SELECT count(*) AS n FROM orgs"),drives:Eo(e,"SELECT count(*) AS n FROM drives"),files:Eo(e,"SELECT count(*) AS n FROM files WHERE is_deleted = 0"),storage_provider:Sv.has(r)?r:"other",embedding_provider:Iv.has(n)?n:"other",os:process.platform,arch:process.arch}}function Qi(e){let t=()=>Promise.resolve();if(!Ac())return t;let r;try{r=Rv()}catch{return t}let n=()=>{try{return _v(e)}catch{return{}}};Ji(r,"server.started",n());let o=setInterval(()=>{Ji(r,"server.heartbeat",{...n(),...Ic()})},xv);o.unref();let i=!1;return()=>{if(i)return Promise.resolve();if(i=!0,clearInterval(o),!Tv())return Promise.resolve();let s=Ji(r,"server.heartbeat",{...n(),...Ic(),shutdown:!0},Ec),a=new Promise((d)=>setTimeout(d,Ec).unref());return Promise.race([s,a])}}var wv="https://proxy.desplega.sh/v1/events",bv="agent-fs",Ev=5000,xv=86400000,Ec=1500,xc,Sv,Iv,gn;var So=f(()=>{Lt();bo();xc=new Set(["false","0","no","off"]),Sv=new Set(["minio","s3","r2","tigris","local"]),Iv=new Set(["local","openai","gemini"]);gn=new Map});var Zi=De(function(Ov){var Rc=(e)=>encodeURIComponent(e).replace(/[!'()*]/g,kv),kv=(e)=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`,Cv=(e)=>e.split("/").map(Rc).join("/");Ov.escapeUri=Rc;Ov.escapeUriPath=Cv});var Tc=De(function(Lv){var es=Zi();function Dv(e){let t=[];for(let r of Object.keys(e).sort()){let n=e[r];if(r=es.escapeUri(r),Array.isArray(n))for(let o=0,i=n.length;o<i;o++)t.push(`${r}=${es.escapeUri(n[o])}`);else{let o=r;if(n||typeof n==="string")o+=`=${es.escapeUri(n)}`;t.push(o)}}return t.join("&")}Lv.buildQueryString=Dv});function kc(e){let{port:t,query:r}=e,{protocol:n,path:o,hostname:i}=e;if(n&&n.slice(-1)!==":")n+=":";if(t)i+=`:${t}`;if(o&&o.charAt(0)!=="/")o=`/${o}`;let s=r?_c.buildQueryString(r):"";if(s&&s[0]!=="?")s=`?${s}`;let a="";if(e.username!=null||e.password!=null){let c=e.username??"",l=e.password??"";a=`${c}:${l}@`}let d="";if(e.fragment)d=`#${e.fragment}`;return`${n}//${a}${i}${o}${s}${d}`}var _c;var Cc=f(()=>{_c=it(Tc())});var Oc=async(e)=>{let t=e?.Bucket||"";if(typeof e.Bucket==="string")e.Bucket=t.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"));if(Hv(t)){if(e.ForcePathStyle===!0)throw Error("Path-style addressing cannot be used with ARN buckets")}else if(!jv(t)||t.indexOf(".")!==-1&&!String(e.Endpoint).startsWith("http:")||t.toLowerCase()!==t||t.length<3)e.ForcePathStyle=!0;if(e.DisableMultiRegionAccessPoints)e.disableMultiRegionAccessPoints=!0,e.DisableMRAP=!0;return e},Mv,Uv,Fv,jv=(e)=>Mv.test(e)&&!Uv.test(e)&&!Fv.test(e),Hv=(e)=>{let[t,r,n,,,o]=e.split(":"),i=t==="arn"&&e.split(":").length>=6,s=Boolean(i&&r&&n&&o);if(i&&!s)throw Error(`Invalid ARN: ${e} was an invalid ARN.`);return s};var Nc=f(()=>{Mv=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,Uv=/(\d+\.){3}\d+/,Fv=/\.\./});var Pc=f(()=>{Nc()});var Dc=(e,t,r,n=!1)=>{let o=async()=>{let i;if(n)i=r.clientContextParams?.[e]??r[e]??r[t];else i=r[e]??r[t];if(typeof i==="function")return i();return i};if(e==="credentialScope"||t==="CredentialScope")return async()=>{let i=typeof r.credentials==="function"?await r.credentials():r.credentials;return i?.credentialScope??i?.CredentialScope};if(e==="accountId"||t==="AccountId")return async()=>{let i=typeof r.credentials==="function"?await r.credentials():r.credentials;return i?.accountId??i?.AccountId};if(e==="endpoint"||t==="endpoint")return async()=>{if(r.isCustomEndpoint===!1)return;let i=await o();if(i&&typeof i==="object"){if("url"in i)return i.url.href;if("hostname"in i){let{protocol:s,hostname:a,port:d,path:c}=i;return`${s}//${a}${d?":"+d:""}${c}`}}return i};return o};var hn=De(function(Kv){class Tr extends Error{name="ProviderError";tryNextLink;constructor(e,t=!0){let r,n=!0;if(typeof t==="boolean")r=void 0,n=t;else if(t!=null&&typeof t==="object")r=t.logger,n=t.tryNextLink??!0;super(e);this.tryNextLink=n,Object.setPrototypeOf(this,Tr.prototype),r?.debug?.(`@smithy/property-provider ${n?"->":"(!)"} ${e}`)}static from(e,t=!0){return Object.assign(new this(e.message,t),e)}}class ts extends Tr{name="CredentialsProviderError";constructor(e,t=!0){super(e,t);Object.setPrototypeOf(this,ts.prototype)}}class rs extends Tr{name="TokenProviderError";constructor(e,t=!0){super(e,t);Object.setPrototypeOf(this,rs.prototype)}}var Bv=(...e)=>async()=>{if(e.length===0)throw new Tr("No providers in chain");let t;for(let r of e)try{return await r()}catch(n){if(t=n,n?.tryNextLink)continue;throw n}throw t},qv=(e)=>()=>Promise.resolve(e),Vv=(e,t,r)=>{let n,o,i,s=!1,a=async()=>{if(!o)o=e();try{n=await o,i=!0,s=!1}finally{o=void 0}return n};if(t===void 0)return async(d)=>{if(!i||d?.forceRefresh)n=await a();return n};return async(d)=>{if(!i||d?.forceRefresh)n=await a();if(s)return n;if(r&&!r(n))return s=!0,n;if(t(n))return await a(),n;return n}};Kv.CredentialsProviderError=ts;Kv.ProviderError=Tr;Kv.TokenProviderError=rs;Kv.chain=Bv;Kv.fromStatic=qv;Kv.memoize=Vv});function Io(e){try{let t=new Set(Array.from(e.match(/([A-Z_]){3,}/g)??[]));return t.delete("CONFIG"),t.delete("CONFIG_PREFIX_SEPARATOR"),t.delete("ENV"),[...t].join(", ")}catch(t){return e}}var Lc,$c=(e,t)=>async()=>{try{let r=e(process.env,t);if(r===void 0)throw Error();return r}catch(r){throw new Lc.CredentialsProviderError(r.message||`Not found in ENV: ${Io(e.toString())}`,{logger:t?.logger})}};var Mc=f(()=>{Lc=it(hn())});import{homedir as Qv}from"os";import{sep as Zv}from"path";var ns,ew=()=>{if(process&&process.geteuid)return`${process.geteuid()}`;return"DEFAULT"},_r=()=>{let{HOME:e,USERPROFILE:t,HOMEPATH:r,HOMEDRIVE:n=`C:${Zv}`}=process.env;if(e)return e;if(t)return t;if(r)return`${n}${r}`;let o=ew();if(!ns[o])ns[o]=Qv();return ns[o]};var yn=f(()=>{ns={}});var Uc=(e)=>e.profile||process.env.AWS_PROFILE||"default";var Fc=()=>{};var wn=De(function(sw){sw.HttpAuthLocation=void 0;(function(e){e.HEADER="header",e.QUERY="query"})(sw.HttpAuthLocation||(sw.HttpAuthLocation={}));sw.HttpApiKeyAuthLocation=void 0;(function(e){e.HEADER="header",e.QUERY="query"})(sw.HttpApiKeyAuthLocation||(sw.HttpApiKeyAuthLocation={}));sw.EndpointURLScheme=void 0;(function(e){e.HTTP="http",e.HTTPS="https"})(sw.EndpointURLScheme||(sw.EndpointURLScheme={}));sw.AlgorithmId=void 0;(function(e){e.MD5="md5",e.CRC32="crc32",e.CRC32C="crc32c",e.SHA1="sha1",e.SHA256="sha256"})(sw.AlgorithmId||(sw.AlgorithmId={}));var tw=(e)=>{let t=[];if(e.sha256!==void 0)t.push({algorithmId:()=>sw.AlgorithmId.SHA256,checksumConstructor:()=>e.sha256});if(e.md5!=null)t.push({algorithmId:()=>sw.AlgorithmId.MD5,checksumConstructor:()=>e.md5});return{addChecksumAlgorithm(r){t.push(r)},checksumAlgorithms(){return t}}},rw=(e)=>{let t={};return e.checksumAlgorithms().forEach((r)=>{t[r.algorithmId()]=r.checksumConstructor()}),t},nw=(e)=>tw(e),ow=(e)=>rw(e);sw.FieldPosition=void 0;(function(e){e[e.HEADER=0]="HEADER",e[e.TRAILER=1]="TRAILER"})(sw.FieldPosition||(sw.FieldPosition={}));var iw="__smithy_context";sw.IniSectionType=void 0;(function(e){e.PROFILE="profile",e.SSO_SESSION="sso-session",e.SERVICES="services"})(sw.IniSectionType||(sw.IniSectionType={}));sw.RequestHandlerProtocol=void 0;(function(e){e.HTTP_0_9="http/0.9",e.HTTP_1_0="http/1.0",e.TDS_8_0="tds/8.0"})(sw.RequestHandlerProtocol||(sw.RequestHandlerProtocol={}));sw.SMITHY_CONTEXT_KEY=iw;sw.getDefaultClientConfiguration=nw;sw.resolveDefaultRuntimeConfig=ow});var wt=".";var ls,jc=(e)=>Object.entries(e).filter(([t])=>{let r=t.indexOf(wt);if(r===-1)return!1;return Object.values(ls.IniSectionType).includes(t.substring(0,r))}).reduce((t,[r,n])=>{let o=r.indexOf(wt),i=r.substring(0,o)===ls.IniSectionType.PROFILE?r.substring(o+1):r;return t[i]=n,t},{...e.default&&{default:e.default}});var Hc=f(()=>{ls=it(wn())});import{join as lw}from"path";var uw="AWS_CONFIG_FILE",Bc=()=>process.env[uw]||lw(_r(),".aws","config");var qc=f(()=>{yn()});import{join as pw}from"path";var mw="AWS_SHARED_CREDENTIALS_FILE",Vc=()=>process.env[mw]||pw(_r(),".aws","credentials");var Kc=f(()=>{yn()});var zc,fw,gw,us=(e)=>{let t={},r,n;for(let o of e.split(/\r?\n/)){let i=o.split(/(^|\s)[;#]/)[0].trim();if(i[0]==="["&&i[i.length-1]==="]"){r=void 0,n=void 0;let a=i.substring(1,i.length-1),d=fw.exec(a);if(d){let[,c,,l]=d;if(Object.values(zc.IniSectionType).includes(c))r=[c,l].join(wt)}else r=a;if(gw.includes(a))throw Error(`Found invalid profile name "${a}"`)}else if(r){let a=i.indexOf("=");if(![0,-1].includes(a)){let[d,c]=[i.substring(0,a).trim(),i.substring(a+1).trim()];if(c==="")n=d;else{if(n&&o.trimStart()===o)n=void 0;t[r]=t[r]||{};let l=n?[n,d].join(wt):d;t[r][l]=c}}}}return t};var Gc=f(()=>{zc=it(wn()),fw=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,gw=["__proto__","profile __proto__"]});import{readFile as hw}from"fs/promises";var ps,Wc,ms=(e,t)=>{if(Wc[e]!==void 0)return Wc[e];if(!ps[e]||t?.ignoreCache)ps[e]=hw(e,"utf8");return ps[e]};var Xc=f(()=>{ps={},Wc={}});import{join as Yc}from"path";var Jc=()=>({}),Qc=async(e={})=>{let{filepath:t=Vc(),configFilepath:r=Bc()}=e,n=_r(),o="~/",i=t;if(t.startsWith("~/"))i=Yc(n,t.slice(2));let s=r;if(r.startsWith("~/"))s=Yc(n,r.slice(2));let a=await Promise.all([ms(s,{ignoreCache:e.ignoreCache}).then(us).then(jc).catch(Jc),ms(i,{ignoreCache:e.ignoreCache}).then(us).catch(Jc)]);return{configFile:a[0],credentialsFile:a[1]}};var Zc=f(()=>{Hc();qc();Kc();yn();Gc();Xc()});var el=()=>{};var tl=()=>{};var rl=()=>{};var fs=f(()=>{yn();Fc();Zc();el();tl();rl()});var nl,ol=(e,{preferredFile:t="config",...r}={})=>async()=>{let n=Uc(r),{configFile:o,credentialsFile:i}=await Qc(r),s=i[n]||{},a=o[n]||{},d=t==="config"?{...s,...a}:{...a,...s};try{let l=e(d,t==="config"?o:i);if(l===void 0)throw Error();return l}catch(c){throw new nl.CredentialsProviderError(c.message||`Not found in config files w/ profile [${n}]: ${Io(e.toString())}`,{logger:r.logger})}};var il=f(()=>{fs();nl=it(hn())});var sl,yw=(e)=>typeof e==="function",al=(e)=>yw(e)?async()=>await e():sl.fromStatic(e);var dl=f(()=>{sl=it(hn())});var Ao,cl=({environmentVariableSelector:e,configFileSelector:t,default:r},n={})=>{let{signingName:o,logger:i}=n;return Ao.memoize(Ao.chain($c(e,{signingName:o,logger:i}),ol(t,n),al(r)))};var ll=f(()=>{Mc();il();dl();Ao=it(hn())});var ul=f(()=>{ll()});var pl="AWS_ENDPOINT_URL",ml="endpoint_url",fl=(e)=>({environmentVariableSelector:(t)=>{let r=e.split(" ").map((i)=>i.toUpperCase()),n=t[[pl,...r].join("_")];if(n)return n;let o=t[pl];if(o)return o;return},configFileSelector:(t,r)=>{if(r&&t.services){let o=r[["services",t.services].join(wt)];if(o){let i=e.split(" ").map((a)=>a.toLowerCase()),s=o[[i.join("_"),ml].join(wt)];if(s)return s}}let n=t[ml];if(n)return n;return},default:void 0});var gl=f(()=>{fs()});var hl=async(e)=>cl(fl(e??""))();var yl=f(()=>{ul();gl()});var vl=De(function(ww){function vw(e){let t={};if(e=e.replace(/^\?/,""),e)for(let r of e.split("&")){let[n,o=null]=r.split("=");if(n=decodeURIComponent(n),o)o=decodeURIComponent(o);if(!(n in t))t[n]=o;else if(Array.isArray(t[n]))t[n].push(o);else t[n]=[t[n],o]}return t}ww.parseQueryString=vw});var bl=De(function(xw){var Ew=vl(),wl=(e)=>{if(typeof e==="string")return wl(new URL(e));let{hostname:t,pathname:r,port:n,protocol:o,search:i}=e,s;if(i)s=Ew.parseQueryString(i);return{hostname:t,port:n?parseInt(n):void 0,protocol:o,path:r,query:s}};xw.parseUrl=wl});var gs,El=(e)=>{if(typeof e==="object"){if("url"in e){let t=gs.parseUrl(e.url);if(e.headers){t.headers={};for(let[r,n]of Object.entries(e.headers))t.headers[r.toLowerCase()]=n.join(", ")}return t}return e}return gs.parseUrl(e)};var hs=f(()=>{gs=it(bl())});var xl=async(e,t,r,n)=>{if(!r.isCustomEndpoint){let s;if(r.serviceConfiguredEndpoint)s=await r.serviceConfiguredEndpoint();else s=await hl(r.serviceId);if(s)r.endpoint=()=>Promise.resolve(El(s)),r.isCustomEndpoint=!0}let o=await Iw(e,t,r);if(typeof r.endpointProvider!=="function")throw Error("config.endpointProvider is not set.");let i=r.endpointProvider(o,n);if(r.isCustomEndpoint&&r.endpoint){let s=await r.endpoint();if(s?.headers){i.headers??={};for(let[a,d]of Object.entries(s.headers))i.headers[a]=Array.isArray(d)?d:[d]}}return i},Iw=async(e,t,r)=>{let n={},o=t?.getEndpointParameterInstructions?.()||{};for(let[i,s]of Object.entries(o))switch(s.type){case"staticContextParams":n[i]=s.value;break;case"contextParams":n[i]=e[s.name];break;case"clientContextParams":case"builtInParams":n[i]=await Dc(s.name,i,r,s.type!=="builtInParams")();break;case"operationContextParams":n[i]=s.get(e);break;default:throw Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(s))}if(Object.keys(o).length===0)Object.assign(n,r);if(String(r.serviceId).toLowerCase()==="s3")await Oc(n);return n};var Sl=f(()=>{Pc();yl();hs()});var Il=f(()=>{Sl();hs()});var Rl=De(function(Tw){var Al=wn(),Aw=(e)=>e[Al.SMITHY_CONTEXT_KEY]||(e[Al.SMITHY_CONTEXT_KEY]={}),Rw=(e)=>{if(typeof e==="function")return e;let t=Promise.resolve(e);return()=>t};Tw.getSmithyContext=Aw;Tw.normalizeProvider=Rw});var Tl=()=>{};var ys=De(function(Lw){var Cw=wn(),Ow=(e)=>({setHttpHandler(t){e.httpHandler=t},httpHandler(){return e.httpHandler},updateHttpClientConfig(t,r){e.httpHandler?.updateHttpClientConfig(t,r)},httpHandlerConfigs(){return e.httpHandler.httpHandlerConfigs()}}),Nw=(e)=>({httpHandler:e.httpHandler()});class _l{name;kind;values;constructor({name:e,kind:t=Cw.FieldPosition.HEADER,values:r=[]}){this.name=e,this.kind=t,this.values=r}add(e){this.values.push(e)}set(e){this.values=e}remove(e){this.values=this.values.filter((t)=>t!==e)}toString(){return this.values.map((e)=>e.includes(",")||e.includes(" ")?`"${e}"`:e).join(", ")}get(){return this.values}}class kl{entries={};encoding;constructor({fields:e=[],encoding:t="utf-8"}){e.forEach(this.setField.bind(this)),this.encoding=t}setField(e){this.entries[e.name.toLowerCase()]=e}getField(e){return this.entries[e.toLowerCase()]}removeField(e){delete this.entries[e.toLowerCase()]}getByType(e){return Object.values(this.entries).filter((t)=>t.kind===e)}}class Ro{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?e.protocol.slice(-1)!==":"?`${e.protocol}:`:e.protocol:"https:",this.path=e.path?e.path.charAt(0)!=="/"?`/${e.path}`:e.path:"/",this.username=e.username,this.password=e.password,this.fragment=e.fragment}static clone(e){let t=new Ro({...e,headers:{...e.headers}});if(t.query)t.query=Pw(t.query);return t}static isInstance(e){if(!e)return!1;let t=e;return"method"in t&&"protocol"in t&&"hostname"in t&&"path"in t&&typeof t.query==="object"&&typeof t.headers==="object"}clone(){return Ro.clone(this)}}function Pw(e){return Object.keys(e).reduce((t,r)=>{let n=e[r];return{...t,[r]:Array.isArray(n)?[...n]:n}},{})}class Cl{statusCode;reason;headers;body;constructor(e){this.statusCode=e.statusCode,this.reason=e.reason,this.headers=e.headers||{},this.body=e.body}static isInstance(e){if(!e)return!1;let t=e;return typeof t.statusCode==="number"&&typeof t.headers==="object"}}function Dw(e){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(e)}Lw.Field=_l;Lw.Fields=kl;Lw.HttpRequest=Ro;Lw.HttpResponse=Cl;Lw.getHttpHandlerExtensionConfiguration=Ow;Lw.isValidHostname=Dw;Lw.resolveHttpHandlerRuntimeConfig=Nw});var Ol=()=>{};var Nl=()=>{};var Pl;var Dl=f(()=>{Pl={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0}});var Ll=f(()=>{Ol();Dl();Nl()});var LC;var $l=f(()=>{Ll();LC={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:Pl.name}});var Ml=()=>{};var Ul=()=>{};var Fl=f(()=>{Il();Tl();$l();Ml();Ul()});var jl=()=>{};var Hl=()=>{};var Bl=()=>{};var ql=()=>{};var Kl=De(function(Kw){var Vl={},vs={};for(let e=0;e<256;e++){let t=e.toString(16).toLowerCase();if(t.length===1)t=`0${t}`;Vl[e]=t,vs[t]=e}function qw(e){if(e.length%2!==0)throw Error("Hex encoded strings must have an even number length");let t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){let n=e.slice(r,r+2).toLowerCase();if(n in vs)t[r/2]=vs[n];else throw Error(`Cannot decode unrecognized sequence ${n} as hexadecimal`)}return t}function Vw(e){let t="";for(let r=0;r<e.byteLength;r++)t+=Vl[e[r]];return t}Kw.fromHex=qw;Kw.toHex=Vw});var ws=De(function(Xw){var Ww=(e)=>typeof ArrayBuffer==="function"&&e instanceof ArrayBuffer||Object.prototype.toString.call(e)==="[object ArrayBuffer]";Xw.isArrayBuffer=Ww});var zl=De(function(eb){var Jw=ws(),bs=Gy("buffer"),Qw=(e,t=0,r=e.byteLength-t)=>{if(!Jw.isArrayBuffer(e))throw TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof e} (${e})`);return bs.Buffer.from(e,t,r)},Zw=(e,t)=>{if(typeof e!=="string")throw TypeError(`The "input" argument must be of type string. Received type ${typeof e} (${e})`);return t?bs.Buffer.from(e,t):bs.Buffer.from(e)};eb.fromArrayBuffer=Qw;eb.fromString=Zw});var Xl=De(function(ib){var Gl=zl(),Wl=(e)=>{let t=Gl.fromString(e,"utf8");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT)},nb=(e)=>{if(typeof e==="string")return Wl(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT);return new Uint8Array(e)},ob=(e)=>{if(typeof e==="string")return e;if(typeof e!=="object"||typeof e.byteOffset!=="number"||typeof e.byteLength!=="number")throw Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return Gl.fromArrayBuffer(e.buffer,e.byteOffset,e.byteLength).toString("utf8")};ib.fromUtf8=Wl;ib.toUint8Array=nb;ib.toUtf8=ob});var Os=De(function(wb){var Yt=Kl(),ur=Xl(),cb=ws(),Zl=ys(),Yl=Rl(),To=Zi(),eu="X-Amz-Algorithm",tu="X-Amz-Credential",Ss="X-Amz-Date",ru="X-Amz-SignedHeaders",nu="X-Amz-Expires",Is="X-Amz-Signature",As="X-Amz-Security-Token",lb="X-Amz-Region-Set",Rs="authorization",Ts=Ss.toLowerCase(),ou="date",iu=[Rs,Ts,ou],su=Is.toLowerCase(),No="x-amz-content-sha256",au=As.toLowerCase(),ub="host",du={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},cu=/^proxy-/,lu=/^sec-/,pb=[/^proxy-/i,/^sec-/i],_o="AWS4-HMAC-SHA256",mb="AWS4-ECDSA-P256-SHA256",uu="AWS4-HMAC-SHA256-PAYLOAD",pu="UNSIGNED-PAYLOAD",mu=50,_s="aws4_request",fu=604800,kr={},ko=[],Co=(e,t,r)=>`${e}/${t}/${r}/${_s}`,gu=async(e,t,r,n,o)=>{let i=await Jl(e,t.secretAccessKey,t.accessKeyId),s=`${r}:${n}:${o}:${Yt.toHex(i)}:${t.sessionToken}`;if(s in kr)return kr[s];ko.push(s);while(ko.length>mu)delete kr[ko.shift()];let a=`AWS4${t.secretAccessKey}`;for(let d of[r,n,o,_s])a=await Jl(e,a,d);return kr[s]=a},fb=()=>{ko.length=0,Object.keys(kr).forEach((e)=>{delete kr[e]})},Jl=(e,t,r)=>{let n=new e(t);return n.update(ur.toUint8Array(r)),n.digest()},Es=({headers:e},t,r)=>{let n={};for(let o of Object.keys(e).sort()){if(e[o]==null)continue;let i=o.toLowerCase();if(i in du||t?.has(i)||cu.test(i)||lu.test(i)){if(!r||r&&!r.has(i))continue}n[i]=e[o].trim().replace(/\s+/g," ")}return n},Oo=async({headers:e,body:t},r)=>{for(let n of Object.keys(e))if(n.toLowerCase()===No)return e[n];if(t==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";else if(typeof t==="string"||ArrayBuffer.isView(t)||cb.isArrayBuffer(t)){let n=new r;return n.update(ur.toUint8Array(t)),Yt.toHex(await n.digest())}return pu};class hu{format(e){let t=[];for(let o of Object.keys(e)){let i=ur.fromUtf8(o);t.push(Uint8Array.from([i.byteLength]),i,this.formatHeaderValue(e[o]))}let r=new Uint8Array(t.reduce((o,i)=>o+i.byteLength,0)),n=0;for(let o of t)r.set(o,n),n+=o.byteLength;return r}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":let t=new DataView(new ArrayBuffer(3));return t.setUint8(0,3),t.setInt16(1,e.value,!1),new Uint8Array(t.buffer);case"integer":let r=new DataView(new ArrayBuffer(5));return r.setUint8(0,4),r.setInt32(1,e.value,!1),new Uint8Array(r.buffer);case"long":let n=new Uint8Array(9);return n[0]=5,n.set(e.value.bytes,1),n;case"binary":let o=new DataView(new ArrayBuffer(3+e.value.byteLength));o.setUint8(0,6),o.setUint16(1,e.value.byteLength,!1);let i=new Uint8Array(o.buffer);return i.set(e.value,3),i;case"string":let s=ur.fromUtf8(e.value),a=new DataView(new ArrayBuffer(3+s.byteLength));a.setUint8(0,7),a.setUint16(1,s.byteLength,!1);let d=new Uint8Array(a.buffer);return d.set(s,3),d;case"timestamp":let c=new Uint8Array(9);return c[0]=8,c.set(ks.fromNumber(e.value.valueOf()).bytes,1),c;case"uuid":if(!gb.test(e.value))throw Error(`Invalid UUID received: ${e.value}`);let l=new Uint8Array(17);return l[0]=9,l.set(Yt.fromHex(e.value.replace(/\-/g,"")),1),l}}}var gb=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;class ks{bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776000||e<-9223372036854776000)throw Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let t=new Uint8Array(8);for(let r=7,n=Math.abs(Math.round(e));r>-1&&n>0;r--,n/=256)t[r]=n;if(e<0)Ql(t);return new ks(t)}valueOf(){let e=this.bytes.slice(0),t=e[0]&128;if(t)Ql(e);return parseInt(Yt.toHex(e),16)*(t?-1:1)}toString(){return String(this.valueOf())}}function Ql(e){for(let t=0;t<8;t++)e[t]^=255;for(let t=7;t>-1;t--)if(e[t]++,e[t]!==0)break}var yu=(e,t)=>{e=e.toLowerCase();for(let r of Object.keys(t))if(e===r.toLowerCase())return!0;return!1},vu=(e,t={})=>{let{headers:r,query:n={}}=Zl.HttpRequest.clone(e);for(let o of Object.keys(r)){let i=o.toLowerCase();if(i.slice(0,6)==="x-amz-"&&!t.unhoistableHeaders?.has(i)||t.hoistableHeaders?.has(i))n[o]=r[o],delete r[o]}return{...e,headers:r,query:n}},xs=(e)=>{e=Zl.HttpRequest.clone(e);for(let t of Object.keys(e.headers))if(iu.indexOf(t.toLowerCase())>-1)delete e.headers[t];return e},wu=({query:e={}})=>{let t=[],r={};for(let n of Object.keys(e)){if(n.toLowerCase()===su)continue;let o=To.escapeUri(n);t.push(o);let i=e[n];if(typeof i==="string")r[o]=`${o}=${To.escapeUri(i)}`;else if(Array.isArray(i))r[o]=i.slice(0).reduce((s,a)=>s.concat([`${o}=${To.escapeUri(a)}`]),[]).sort().join("&")}return t.sort().map((n)=>r[n]).filter((n)=>n).join("&")},hb=(e)=>yb(e).toISOString().replace(/\.\d{3}Z$/,"Z"),yb=(e)=>{if(typeof e==="number")return new Date(e*1000);if(typeof e==="string"){if(Number(e))return new Date(Number(e)*1000);return new Date(e)}return e};class Cs{service;regionProvider;credentialProvider;sha256;uriEscapePath;applyChecksum;constructor({applyChecksum:e,credentials:t,region:r,service:n,sha256:o,uriEscapePath:i=!0}){this.service=n,this.sha256=o,this.uriEscapePath=i,this.applyChecksum=typeof e==="boolean"?e:!0,this.regionProvider=Yl.normalizeProvider(r),this.credentialProvider=Yl.normalizeProvider(t)}createCanonicalRequest(e,t,r){let n=Object.keys(t).sort();return`${e.method}
249
249
  ${this.getCanonicalPath(e)}
250
250
  ${wu(e)}
251
251
  ${n.map((o)=>`${o}:${t[o]}`).join(`
@@ -1,7 +1,7 @@
1
1
  {
2
- "version": "0.16.3",
2
+ "version": "0.16.4",
3
3
  "binaries": {
4
- "linux-x64": "sha256:39faf9992dd25e261214d7896207b18a50335388d617041ffc45750601ebc5e5",
5
- "linux-arm64": "sha256:95646ad4673e277e553bc30eb48aa1e39735d67b126d2ad85748db8dfeaeb647"
4
+ "linux-x64": "sha256:c8ad1fe9aa22de73cad692d18a9a9a42e695394e54b982ac13a221b880a30cca",
5
+ "linux-arm64": "sha256:10508f0daaf5b6a6c53b64b88c5805cda2da31739fc3e285cf02146e2a4f9b8b"
6
6
  }
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@desplega.ai/agent-fs",
3
- "version": "0.16.3",
3
+ "version": "0.16.4",
4
4
  "type": "module",
5
5
  "description": "Agent-first filesystem backed by S3",
6
6
  "license": "MIT",
@@ -36,8 +36,8 @@
36
36
  "sqlite-vec-linux-arm64": "^0.1.9",
37
37
  "sqlite-vec-linux-x64": "^0.1.9",
38
38
  "sqlite-vec-windows-x64": "^0.1.9",
39
- "@desplega.ai/agent-fs-fuse-linux-x64": "^0.16.3",
40
- "@desplega.ai/agent-fs-fuse-linux-arm64": "^0.16.3"
39
+ "@desplega.ai/agent-fs-fuse-linux-x64": "^0.16.4",
40
+ "@desplega.ai/agent-fs-fuse-linux-arm64": "^0.16.4"
41
41
  },
42
42
  "dependencies": {
43
43
  "@aws-sdk/client-s3": "^3.750.0",