@burtson-labs/bandit-stealth-cli 1.7.65 → 1.7.66
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 +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -829,7 +829,7 @@ ${x.synopsis??"(no synopsis)"}`,isError:!1})):x.status==="failed"?(d.markConsume
|
|
|
829
829
|
`),x=g.split(`
|
|
830
830
|
`),E=S.length,J=x.length;if(E*J>4e4)return{plus:x.length,minus:S.length};let q=Array.from({length:E+1},()=>new Array(J+1).fill(0));for(let ke=1;ke<=E;ke++)for(let Z=1;Z<=J;Z++)q[ke][Z]=S[ke-1]===x[Z-1]?q[ke-1][Z-1]+1:Math.max(q[ke-1][Z],q[ke][Z-1]);let re=E,ue=J,me=0,pe=0;for(;re>0&&ue>0;)S[re-1]===x[ue-1]?(re--,ue--):q[re][ue-1]>=q[re-1][ue]?(me++,ue--):(pe++,re--);return me+=ue,pe+=re,{plus:me,minus:pe}}t(JNt,"lineCountDiff");function WNt(d){if(d.isNewFile)return"(new file)";let g=d.after.split(`
|
|
831
831
|
`),S=d.before.split(`
|
|
832
|
-
`);for(let x=0;x<g.length;x++)if(g[x]!==S[x]){let E=(g[x]??"").trim();if(E)return E.length>80?E.slice(0,77)+"\u2026":E}return"(whitespace-only edit)"}t(WNt,"describeEdit");var QSe=class{static{t(this,"CheckpointStore")}constructor(g){this.counter=0,this.workspaceRoot=g.workspaceRoot,this.dir=QD.join(g.workspaceRoot,".bandit","checkpoints"),this.maxIndexEntries=g.maxIndexEntries??BNt}async create(g){await nE.promises.mkdir(QD.join(this.dir,g.turnId),{recursive:!0}),this.counter++;let S=`chk-${g.turnId.split("-").pop()??"x"}-${String(this.counter).padStart(3,"0")}`,x=QD.relative(this.workspaceRoot,g.absolutePath)||g.absolutePath,E=g.before.length===0,J={id:S,turnId:g.turnId,timestamp:Date.now(),tool:g.tool,path:g.absolutePath,relPath:x,before:g.before,after:g.after,isNewFile:E,iteration:g.iteration,description:WNt({before:g.before,after:g.after,isNewFile:E})},q=QD.join(this.dir,g.turnId,`${S}.json`);return await nE.promises.writeFile(q,JSON.stringify(J,null,2)),await this.appendToIndex(J),J}async list(g=20){return(await this.readIndex()).slice(0,g)}async get(g){let x=(await this.readIndex()).find(J=>J.id===g);if(!x)return null;let E=QD.join(this.dir,x.turnId,`${g}.json`);try{let J=await nE.promises.readFile(E,"utf-8");return JSON.parse(J)}catch{return null}}async rewind(g){let S=await this.get(g);if(!S)return null;try{return S.isNewFile?await nE.promises.unlink(S.path).catch(()=>{}):(await nE.promises.mkdir(QD.dirname(S.path),{recursive:!0}),await nE.promises.writeFile(S.path,S.before)),S}catch{return null}}async readIndex(){let g=QD.join(this.dir,s$e);try{let S=await nE.promises.readFile(g,"utf-8"),x=JSON.parse(S);return Array.isArray(x)?x:[]}catch{return[]}}async writeIndex(g){await nE.promises.mkdir(this.dir,{recursive:!0});let S=QD.join(this.dir,s$e);await nE.promises.writeFile(S,JSON.stringify(g,null,2))}async appendToIndex(g){let{plus:S,minus:x}=JNt(g.before,g.after),E={id:g.id,turnId:g.turnId,timestamp:g.timestamp,tool:g.tool,relPath:g.relPath,iteration:g.iteration,description:g.description,plus:S,minus:x},J=await this.readIndex();J.unshift(E);let q=J.slice(0,this.maxIndexEntries);await this.writeIndex(q)}};uk.CheckpointStore=QSe});var t2e=Si(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});Uc.CheckpointStore=Uc.isChatCapable=Uc.suggestOllamaMatch=Uc.listInstalledOllamaModels=Uc.previewText=Uc.openTurnLog=Uc.SessionPermissionStore=Uc.mergePolicies=Uc.emptyPolicy=Uc.evaluatePermission=Uc.InMemoryBackgroundTaskStore=Uc.buildListTasksTool=Uc.buildCheckTaskTool=Uc.buildTaskTool=Uc.buildWebFetchTool=Uc.buildTodoWriteTool=Uc.TodoStore=Uc.expandMentions=Uc.runHooks=Uc.persistAllowEntry=Uc.loadHookSettings=Uc.loadMemory=void 0;var zNt=Bze();Object.defineProperty(Uc,"loadMemory",{enumerable:!0,get:t(function(){return zNt.loadMemory},"get")});var KSe=Wze();Object.defineProperty(Uc,"loadHookSettings",{enumerable:!0,get:t(function(){return KSe.loadHookSettings},"get")});Object.defineProperty(Uc,"persistAllowEntry",{enumerable:!0,get:t(function(){return KSe.persistAllowEntry},"get")});Object.defineProperty(Uc,"runHooks",{enumerable:!0,get:t(function(){return KSe.runHooks},"get")});var $Nt=Vze();Object.defineProperty(Uc,"expandMentions",{enumerable:!0,get:t(function(){return $Nt.expandMentions},"get")});var YSe=Hze();Object.defineProperty(Uc,"TodoStore",{enumerable:!0,get:t(function(){return YSe.TodoStore},"get")});Object.defineProperty(Uc,"buildTodoWriteTool",{enumerable:!0,get:t(function(){return YSe.buildTodoWriteTool},"get")});Object.defineProperty(Uc,"buildWebFetchTool",{enumerable:!0,get:t(function(){return YSe.buildWebFetchTool},"get")});var ZSe=Qze();Object.defineProperty(Uc,"buildTaskTool",{enumerable:!0,get:t(function(){return ZSe.buildTaskTool},"get")});Object.defineProperty(Uc,"buildCheckTaskTool",{enumerable:!0,get:t(function(){return ZSe.buildCheckTaskTool},"get")});Object.defineProperty(Uc,"buildListTasksTool",{enumerable:!0,get:t(function(){return ZSe.buildListTasksTool},"get")});var UNt=Kze();Object.defineProperty(Uc,"InMemoryBackgroundTaskStore",{enumerable:!0,get:t(function(){return UNt.InMemoryBackgroundTaskStore},"get")});var HZ=Yze();Object.defineProperty(Uc,"evaluatePermission",{enumerable:!0,get:t(function(){return HZ.evaluatePermission},"get")});Object.defineProperty(Uc,"emptyPolicy",{enumerable:!0,get:t(function(){return HZ.emptyPolicy},"get")});Object.defineProperty(Uc,"mergePolicies",{enumerable:!0,get:t(function(){return HZ.mergePolicies},"get")});Object.defineProperty(Uc,"SessionPermissionStore",{enumerable:!0,get:t(function(){return HZ.SessionPermissionStore},"get")});var c$e=r$e();Object.defineProperty(Uc,"openTurnLog",{enumerable:!0,get:t(function(){return c$e.openTurnLog},"get")});Object.defineProperty(Uc,"previewText",{enumerable:!0,get:t(function(){return c$e.previewText},"get")});var e2e=i$e();Object.defineProperty(Uc,"listInstalledOllamaModels",{enumerable:!0,get:t(function(){return e2e.listInstalledOllamaModels},"get")});Object.defineProperty(Uc,"suggestOllamaMatch",{enumerable:!0,get:t(function(){return e2e.suggestOllamaMatch},"get")});Object.defineProperty(Uc,"isChatCapable",{enumerable:!0,get:t(function(){return e2e.isChatCapable},"get")});var VNt=o$e();Object.defineProperty(Uc,"CheckpointStore",{enumerable:!0,get:t(function(){return VNt.CheckpointStore},"get")})});var GZ=Si((r5t,qNt)=>{qNt.exports={name:"@burtson-labs/bandit-stealth-cli",version:"1.7.
|
|
832
|
+
`);for(let x=0;x<g.length;x++)if(g[x]!==S[x]){let E=(g[x]??"").trim();if(E)return E.length>80?E.slice(0,77)+"\u2026":E}return"(whitespace-only edit)"}t(WNt,"describeEdit");var QSe=class{static{t(this,"CheckpointStore")}constructor(g){this.counter=0,this.workspaceRoot=g.workspaceRoot,this.dir=QD.join(g.workspaceRoot,".bandit","checkpoints"),this.maxIndexEntries=g.maxIndexEntries??BNt}async create(g){await nE.promises.mkdir(QD.join(this.dir,g.turnId),{recursive:!0}),this.counter++;let S=`chk-${g.turnId.split("-").pop()??"x"}-${String(this.counter).padStart(3,"0")}`,x=QD.relative(this.workspaceRoot,g.absolutePath)||g.absolutePath,E=g.before.length===0,J={id:S,turnId:g.turnId,timestamp:Date.now(),tool:g.tool,path:g.absolutePath,relPath:x,before:g.before,after:g.after,isNewFile:E,iteration:g.iteration,description:WNt({before:g.before,after:g.after,isNewFile:E})},q=QD.join(this.dir,g.turnId,`${S}.json`);return await nE.promises.writeFile(q,JSON.stringify(J,null,2)),await this.appendToIndex(J),J}async list(g=20){return(await this.readIndex()).slice(0,g)}async get(g){let x=(await this.readIndex()).find(J=>J.id===g);if(!x)return null;let E=QD.join(this.dir,x.turnId,`${g}.json`);try{let J=await nE.promises.readFile(E,"utf-8");return JSON.parse(J)}catch{return null}}async rewind(g){let S=await this.get(g);if(!S)return null;try{return S.isNewFile?await nE.promises.unlink(S.path).catch(()=>{}):(await nE.promises.mkdir(QD.dirname(S.path),{recursive:!0}),await nE.promises.writeFile(S.path,S.before)),S}catch{return null}}async readIndex(){let g=QD.join(this.dir,s$e);try{let S=await nE.promises.readFile(g,"utf-8"),x=JSON.parse(S);return Array.isArray(x)?x:[]}catch{return[]}}async writeIndex(g){await nE.promises.mkdir(this.dir,{recursive:!0});let S=QD.join(this.dir,s$e);await nE.promises.writeFile(S,JSON.stringify(g,null,2))}async appendToIndex(g){let{plus:S,minus:x}=JNt(g.before,g.after),E={id:g.id,turnId:g.turnId,timestamp:g.timestamp,tool:g.tool,relPath:g.relPath,iteration:g.iteration,description:g.description,plus:S,minus:x},J=await this.readIndex();J.unshift(E);let q=J.slice(0,this.maxIndexEntries);await this.writeIndex(q)}};uk.CheckpointStore=QSe});var t2e=Si(Uc=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});Uc.CheckpointStore=Uc.isChatCapable=Uc.suggestOllamaMatch=Uc.listInstalledOllamaModels=Uc.previewText=Uc.openTurnLog=Uc.SessionPermissionStore=Uc.mergePolicies=Uc.emptyPolicy=Uc.evaluatePermission=Uc.InMemoryBackgroundTaskStore=Uc.buildListTasksTool=Uc.buildCheckTaskTool=Uc.buildTaskTool=Uc.buildWebFetchTool=Uc.buildTodoWriteTool=Uc.TodoStore=Uc.expandMentions=Uc.runHooks=Uc.persistAllowEntry=Uc.loadHookSettings=Uc.loadMemory=void 0;var zNt=Bze();Object.defineProperty(Uc,"loadMemory",{enumerable:!0,get:t(function(){return zNt.loadMemory},"get")});var KSe=Wze();Object.defineProperty(Uc,"loadHookSettings",{enumerable:!0,get:t(function(){return KSe.loadHookSettings},"get")});Object.defineProperty(Uc,"persistAllowEntry",{enumerable:!0,get:t(function(){return KSe.persistAllowEntry},"get")});Object.defineProperty(Uc,"runHooks",{enumerable:!0,get:t(function(){return KSe.runHooks},"get")});var $Nt=Vze();Object.defineProperty(Uc,"expandMentions",{enumerable:!0,get:t(function(){return $Nt.expandMentions},"get")});var YSe=Hze();Object.defineProperty(Uc,"TodoStore",{enumerable:!0,get:t(function(){return YSe.TodoStore},"get")});Object.defineProperty(Uc,"buildTodoWriteTool",{enumerable:!0,get:t(function(){return YSe.buildTodoWriteTool},"get")});Object.defineProperty(Uc,"buildWebFetchTool",{enumerable:!0,get:t(function(){return YSe.buildWebFetchTool},"get")});var ZSe=Qze();Object.defineProperty(Uc,"buildTaskTool",{enumerable:!0,get:t(function(){return ZSe.buildTaskTool},"get")});Object.defineProperty(Uc,"buildCheckTaskTool",{enumerable:!0,get:t(function(){return ZSe.buildCheckTaskTool},"get")});Object.defineProperty(Uc,"buildListTasksTool",{enumerable:!0,get:t(function(){return ZSe.buildListTasksTool},"get")});var UNt=Kze();Object.defineProperty(Uc,"InMemoryBackgroundTaskStore",{enumerable:!0,get:t(function(){return UNt.InMemoryBackgroundTaskStore},"get")});var HZ=Yze();Object.defineProperty(Uc,"evaluatePermission",{enumerable:!0,get:t(function(){return HZ.evaluatePermission},"get")});Object.defineProperty(Uc,"emptyPolicy",{enumerable:!0,get:t(function(){return HZ.emptyPolicy},"get")});Object.defineProperty(Uc,"mergePolicies",{enumerable:!0,get:t(function(){return HZ.mergePolicies},"get")});Object.defineProperty(Uc,"SessionPermissionStore",{enumerable:!0,get:t(function(){return HZ.SessionPermissionStore},"get")});var c$e=r$e();Object.defineProperty(Uc,"openTurnLog",{enumerable:!0,get:t(function(){return c$e.openTurnLog},"get")});Object.defineProperty(Uc,"previewText",{enumerable:!0,get:t(function(){return c$e.previewText},"get")});var e2e=i$e();Object.defineProperty(Uc,"listInstalledOllamaModels",{enumerable:!0,get:t(function(){return e2e.listInstalledOllamaModels},"get")});Object.defineProperty(Uc,"suggestOllamaMatch",{enumerable:!0,get:t(function(){return e2e.suggestOllamaMatch},"get")});Object.defineProperty(Uc,"isChatCapable",{enumerable:!0,get:t(function(){return e2e.isChatCapable},"get")});var VNt=o$e();Object.defineProperty(Uc,"CheckpointStore",{enumerable:!0,get:t(function(){return VNt.CheckpointStore},"get")})});var GZ=Si((r5t,qNt)=>{qNt.exports={name:"@burtson-labs/bandit-stealth-cli",version:"1.7.66",description:"Bandit \u2014 a local-first AI coding agent for your terminal. Same runtime as the Bandit Stealth VS Code / Cursor extension.",keywords:["ai","agent","cli","coding-agent","llm","ollama","local-first","bandit","burtson-labs","terminal","repl","developer-tools"],homepage:"https://burtson.ai",bugs:{email:"team@burtson.ai"},license:"MIT",author:{name:"Burtson Labs",email:"team@burtson.ai",url:"https://burtson.ai"},bin:{bandit:"./dist/cli.js"},main:"dist/cli.js",files:["dist/cli.js","README.md","LICENSE"],engines:{node:">=20"},publishConfig:{access:"public"},scripts:{typecheck:"tsc -p tsconfig.json --noEmit",build:"node build.mjs","build:publish":"node build.mjs --publish",dev:"node build.mjs --watch",start:"node dist/cli.js",smoke:"node build.mjs && node dist/__smoke__/smoke.js",integration:"node build.mjs && node dist/__integration__/ollama.js",eval:"node build.mjs && node dist/__eval__/eval.js",benchmark:"node build.mjs && node dist/__eval__/benchmark.js","gen-logo":"node scripts/gen-logo.mjs","preview-banner":"node scripts/preview-banner.mjs",clean:"rm -rf dist",prepack:"node scripts/prepack.mjs",postpack:"node scripts/postpack.mjs",prepublishOnly:"pnpm run clean && pnpm run typecheck && pnpm run build:publish"},dependencies:{"pdf-parse":"^2.4.5"},devDependencies:{"@burtson-labs/agent-core":"workspace:*","@burtson-labs/host-kit":"workspace:*","@burtson-labs/stealth-core-runtime":"workspace:*","@types/node":"^20.11.0","@types/pdf-parse":"^1.1.5","@types/pngjs":"^6.0.5",esbuild:"^0.28.0",pngjs:"^7.0.0",typescript:"^5.4.0"}}});var _It={};module.exports=w2t(_It);var Dd=Lu(require("fs")),n2e=Lu(require("os")),Zp=Lu(require("path")),bF=Lu(require("readline")),d$e=Lu(require("child_process")),bS=Lu(ZY()),JN=Lu(PSe());var RN=Lu(require("fs")),DSe=Lu(require("os")),VD=Lu(require("path")),lJ=Lu(require("child_process"));function oJ(d){return d==="~"?DSe.homedir():d.startsWith("~/")?VD.join(DSe.homedir(),d.slice(2)):d}t(oJ,"expandHome");var fF=16*1024,cJ=32*1024,lze=1e4,w4t=3e4,ASe=200,NSe=new Set(["node_modules",".git","dist","build","out",".next",".turbo","coverage","target","__pycache__",".venv","venv"]);function E4t(d){let g=t(x=>{let E=x.match(/^(.*?)\{([^}]+)\}(.*)$/);if(!E)return[x];let[,J,q,re]=E;return q.split(",").map(ue=>`${J}${ue.trim()}${re}`)},"braceExpand"),S=d.match(/^([^*{}]+?)\/\*\*\/(.+)$/);if(S){let[,x,E]=S;return{includes:g(E),subDir:x}}return{includes:g(d),subDir:""}}t(E4t,"expandGlobForGrep");var pF=class{constructor(g,S,x={}){this.workspaceRoot=g;this.languageAdapters=S;this.options=x}static{t(this,"CliToolExecutionContext")}async readFile(g){return RN.promises.readFile(oJ(g),"utf-8")}async writeFile(g,S){let x=oJ(g);if(this.options.approveWrite&&!await this.options.approveWrite(x,S))throw new Error(`Write to ${x} rejected by user`);await RN.promises.mkdir(VD.dirname(x),{recursive:!0}),await RN.promises.writeFile(x,S,"utf-8")}async listFiles(g,S){let x=oJ(S??this.workspaceRoot),E=P4t(g),J=[];return await uze(x,x,E,J),J.slice(0,ASe).sort()}async listDirectoryEntries(g){let S=oJ(g),x=await RN.promises.readdir(S,{withFileTypes:!0}),E=[];for(let J of x){if(J.name.startsWith("."))continue;let q=J.isDirectory();if(J.isSymbolicLink())try{q=(await RN.promises.stat(VD.join(S,J.name))).isDirectory()}catch{q=!1}E.push(q?`${J.name}/`:J.name)}return E.sort()}async searchCode(g,S,x){let E=oJ(S??this.workspaceRoot);return this.runRipgrep(g,E,x).catch(()=>this.runGrep(g,E,x))}async runCommand(g,S,x){return new Promise(E=>{let J="",q="",re=lJ.spawn(g,S,{cwd:x??this.workspaceRoot,shell:process.platform==="win32",env:{...process.env}}),ue=setTimeout(()=>{re.kill("SIGTERM"),E({stdout:J.slice(0,cJ),stderr:q+`
|
|
833
833
|
[process timed out]`,exitCode:124})},w4t);re.stdout?.on("data",me=>{J+=me.toString(),J.length>cJ&&re.kill("SIGTERM")}),re.stderr?.on("data",me=>{q+=me.toString()}),re.on("close",me=>{clearTimeout(ue),E({stdout:J.slice(0,cJ),stderr:q.slice(0,4*1024),exitCode:me??0})}),re.on("error",me=>{clearTimeout(ue),E({stdout:"",stderr:me.message,exitCode:1})})})}async watchCommand(g,S,x,E){return new Promise(J=>{let q="",re="",ue=!1,me=!1,pe=lJ.spawn(g,S,{cwd:x??this.workspaceRoot,shell:process.platform==="win32",env:{...process.env}}),ke=t(rt=>{me||(me=!0,J({stdout:q.slice(0,cJ),stderr:re.slice(0,4*1024),exitCode:rt,endedEarly:ue}))},"finish"),Z=setTimeout(()=>{try{pe.kill("SIGTERM")}catch{}let rt=setTimeout(()=>{try{pe.kill("SIGKILL")}catch{}ke(null)},1e3);pe.once("close",$e=>{clearTimeout(rt),ke(typeof $e=="number"?$e:null)})},E);pe.stdout?.on("data",rt=>{if(q+=rt.toString(),q.length>cJ)try{pe.kill("SIGTERM")}catch{}}),pe.stderr?.on("data",rt=>{re+=rt.toString()}),pe.on("close",rt=>{me||(clearTimeout(Z),ue=!0,ke(typeof rt=="number"?rt:null))}),pe.on("error",rt=>{me||(clearTimeout(Z),ue=!0,re+=rt.message,ke(1))})})}runRipgrep(g,S,x){return new Promise((E,J)=>{let q=["--color=never","--line-number","--max-count=25","--max-filesize=1M",...[...NSe].map(pe=>["--glob",`!${pe}`]).flat()];x&&q.push("--glob",x),q.push(g,S);let re="",ue=lJ.spawn("rg",q,{shell:!1}),me=setTimeout(()=>{ue.kill("SIGTERM"),E(re.slice(0,fF))},lze);ue.stdout?.on("data",pe=>{re+=pe.toString(),re.length>fF&&ue.kill("SIGTERM")}),ue.on("close",pe=>{clearTimeout(me),pe!=null&&pe>=2&&re.length===0?J(new Error(`rg exited with code ${pe}`)):E(re.slice(0,fF))}),ue.on("error",J)})}runGrep(g,S,x){return new Promise((E,J)=>{let q=[...NSe].map($e=>["--exclude-dir",$e]).flat(),re=x?E4t(x):{includes:[],subDir:""},ue=re.includes.flatMap($e=>["--include",$e]),me=re.subDir?`${S}/${re.subDir}`:S,pe=["-rn","-E","--color=never",...q,...ue,g,me],ke="",Z=lJ.spawn("grep",pe,{shell:!1}),rt=setTimeout(()=>{Z.kill("SIGTERM"),E(ke.slice(0,fF))},lze);Z.stdout?.on("data",$e=>{ke+=$e.toString(),ke.length>fF&&Z.kill("SIGTERM")}),Z.on("close",$e=>{clearTimeout(rt),$e!=null&&$e>=2&&ke.length===0?J(new Error(`grep exited with code ${$e}`)):E(ke.slice(0,fF))}),Z.on("error",J)})}};function P4t(d){let g=D4t(d);return S=>g.test(S.replace(/\\/g,"/"))}t(P4t,"compileGlob");function D4t(d){let g="^";for(let S=0;S<d.length;S++){let x=d[S];if(x==="*")d[S+1]==="*"?(g+=".*",S++,d[S+1]==="/"&&S++):g+="[^/]*";else if(x==="?")g+="[^/]";else if(x==="{"){let E=d.indexOf("}",S);if(E===-1){g+="\\{";continue}let J=d.slice(S+1,E).split(",").map(A4t).join("|");g+=`(?:${J})`,S=E}else/[.+^$()|\\]/.test(x)?g+="\\"+x:g+=x}return g+="$",new RegExp(g)}t(D4t,"globToRegex");function A4t(d){return d.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}t(A4t,"escapeRegex");async function uze(d,g,S,x){if(x.length>=ASe)return;let E;try{E=await RN.promises.readdir(d,{withFileTypes:!0})}catch{return}for(let J of E){if(x.length>=ASe)return;if(NSe.has(J.name))continue;let q=VD.join(d,J.name),re=VD.relative(g,q);J.isDirectory()?await uze(q,g,S,x):J.isFile()&&S(re)&&x.push(q)}}t(uze,"walk");var fze=Lu(require("child_process")),ak=Lu(require("fs")),pze=Lu(require("os")),ISe=Lu(require("path")),dze=Lu(require("crypto"));function OSe(){let d=dze.randomBytes(4).toString("hex");return ISe.join(pze.tmpdir(),`bandit-paste-${Date.now()}-${d}.png`)}t(OSe,"freshTempPath");function FZ(d,g,S={}){try{let x=fze.spawnSync(d,g,{...S,encoding:void 0});return{stdout:Buffer.isBuffer(x.stdout)?x.stdout:Buffer.from(x.stdout??""),code:x.status}}catch{return{stdout:Buffer.alloc(0),code:null}}}t(FZ,"tryExec");async function MZ(){return process.platform==="darwin"?N4t():process.platform==="linux"?I4t():process.platform==="win32"?O4t():null}t(MZ,"readClipboardImage");function N4t(){let d=OSe(),g=`set pngData to (the clipboard as \xABclass PNGf\xBB)
|
|
834
834
|
set outFile to (open for access (POSIX file "${d}") with write permission)
|
|
835
835
|
write pngData to outFile
|
package/package.json
CHANGED