lody 0.0.5 → 0.0.6
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/devcontainer/devcontainer.json +31 -0
- package/dist/index.js +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Lody Agent Container",
|
|
3
|
+
"build": {
|
|
4
|
+
"dockerfile": "Dockerfile",
|
|
5
|
+
"args": {
|
|
6
|
+
"TZ": "${localEnv:TZ:UTC}",
|
|
7
|
+
"CLAUDE_CLI_VERSION": "latest"
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
"runArgs": [
|
|
11
|
+
"--cap-add=SYS_PTRACE",
|
|
12
|
+
"--security-opt=seccomp=unconfined",
|
|
13
|
+
"--init"
|
|
14
|
+
],
|
|
15
|
+
"remoteUser": "node",
|
|
16
|
+
"mounts": [
|
|
17
|
+
"source=lody-bashhistory-${sessionId},target=/commandhistory,type=volume",
|
|
18
|
+
"source=lody-config-${sessionId},target=/home/node/.lody,type=volume",
|
|
19
|
+
"source=${localEnv:HOME}/.claude,target=/home/node/.claude,type=bind,consistency=cached"
|
|
20
|
+
],
|
|
21
|
+
"remoteEnv": {
|
|
22
|
+
"NODE_OPTIONS": "--max-old-space-size=4096",
|
|
23
|
+
"LODY_SESSION_ID": "${sessionId}",
|
|
24
|
+
"LODY_ISSUE_ID": "${issueId}",
|
|
25
|
+
"CLAUDE_CONFIG_DIR": "/home/node/.claude",
|
|
26
|
+
"SHELL": "/bin/bash"
|
|
27
|
+
},
|
|
28
|
+
"workspaceMount": "source=${projectPath},target=/workspace,type=bind,consistency=cached",
|
|
29
|
+
"workspaceFolder": "/workspace",
|
|
30
|
+
"postCreateCommand": "echo 'Container ready for session ${sessionId}'"
|
|
31
|
+
}
|
package/dist/index.js
CHANGED
|
@@ -180,7 +180,7 @@ ${t.stack}`:n}function lc(t,e){return t=t>>>0,qm().subarray(t/1,t/1+e)}function
|
|
|
180
180
|
`:`
|
|
181
181
|
`)+r,i=n+1,n=t.indexOf(`
|
|
182
182
|
`,i)}while(n!==-1);return s+=t.slice(i),s}var{stdout:G7,stderr:Q7}=W7,Gk=Symbol("GENERATOR"),Eh=Symbol("STYLER"),Km=Symbol("IS_EMPTY"),Y7=["ansi","ansi","ansi256","ansi16m"],Sh=Object.create(null),Vbe=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=G7?G7.level:0;t.level=e.level===void 0?r:e.level};var Gbe=t=>{let e=(...r)=>r.join(" ");return Vbe(e,t),Object.setPrototypeOf(e,Jm.prototype),e};function Jm(t){return Gbe(t)}Object.setPrototypeOf(Jm.prototype,Function.prototype);for(let[t,e]of Object.entries(Do))Sh[t]={get(){let r=Lx(this,Yk(e.open,e.close,this[Eh]),this[Km]);return Object.defineProperty(this,t,{value:r}),r}};Sh.visible={get(){let t=Lx(this,this[Eh],!0);return Object.defineProperty(this,"visible",{value:t}),t}};var Qk=(t,e,r,...n)=>t==="rgb"?e==="ansi16m"?Do[r].ansi16m(...n):e==="ansi256"?Do[r].ansi256(Do.rgbToAnsi256(...n)):Do[r].ansi(Do.rgbToAnsi(...n)):t==="hex"?Qk("rgb",e,r,...Do.hexToRgb(...n)):Do[r][t](...n),Qbe=["rgb","hex","ansi256"];for(let t of Qbe){Sh[t]={get(){let{level:r}=this;return function(...n){let i=Yk(Qk(t,Y7[r],"color",...n),Do.color.close,this[Eh]);return Lx(this,i,this[Km])}}};let e="bg"+t[0].toUpperCase()+t.slice(1);Sh[e]={get(){let{level:r}=this;return function(...n){let i=Yk(Qk(t,Y7[r],"bgColor",...n),Do.bgColor.close,this[Eh]);return Lx(this,i,this[Km])}}}}var Ybe=Object.defineProperties(()=>{},{...Sh,level:{enumerable:!0,get(){return this[Gk].level},set(t){this[Gk].level=t}}}),Yk=(t,e,r)=>{let n,i;return r===void 0?(n=t,i=e):(n=r.openAll+t,i=e+r.closeAll),{open:t,close:e,openAll:n,closeAll:i,parent:r}},Lx=(t,e,r)=>{let n=(...i)=>Kbe(n,i.length===1?""+i[0]:i.join(" "));return Object.setPrototypeOf(n,Ybe),n[Gk]=t,n[Eh]=e,n[Km]=r,n},Kbe=(t,e)=>{if(t.level<=0||!e)return t[Km]?"":e;let r=t[Eh];if(r===void 0)return e;let{openAll:n,closeAll:i}=r;if(e.includes("\x1B"))for(;r!==void 0;)e=z7(e,r.close,r.open),r=r.parent;let s=e.indexOf(`
|
|
183
|
-
`);return s!==-1&&(e=V7(e,i,n,s)),n+e+i};Object.defineProperties(Jm.prototype,Sh);var Jbe=Jm(),_mt=Jm({level:Q7?Q7.level:0});var Je=Jbe;var J7="0.0.
|
|
183
|
+
`);return s!==-1&&(e=V7(e,i,n,s)),n+e+i};Object.defineProperties(Jm.prototype,Sh);var Jbe=Jm(),_mt=Jm({level:Q7?Q7.level:0});var Je=Jbe;var J7="0.0.6";var X7={name:"lody",version:J7,description:"Lody Agent CLI tool for managing remote command execution",main:"dist/index.js",bin:{lody:"dist/index.js"},scripts:{dev:"tsx src/index.ts",build:"pnpm run clean && pnpm run typecheck && pnpm run build:bundle && pnpm run copy:wasm","build:watch":"pnpm run build:bundle -- --watch","build:bundle":"esbuild src/index.ts --bundle --platform=node --target=node18 --format=cjs --outfile=dist/index.js --minify --legal-comments=none --external:cpu-features --external:*.node","copy:wasm":"node scripts/copy-loro-wasm.js",clean:"rimraf dist",format:"prettier --write src/**/*.ts","format:check":"prettier --check src/**/*.ts",typecheck:"tsc --noEmit",test:"jest","test:watch":"jest --watch","test:coverage":"jest --coverage",prepublishOnly:"npm run clean && npm run build && node scripts/prepare-publish.js",postpublish:"node scripts/prepare-publish.js --restore","serve:dev":"NODE_ENV=development npm run dev serve","serve:prod":"NODE_ENV=production npm run dev serve"},keywords:["cli","typescript","command-line","agent","remote-execution"],author:"Leon Zhao",license:"MIT",engines:{node:">=18.0.0"},devDependencies:{"loro-mirror":"catalog:","loro-crdt":"catalog:","@modelcontextprotocol/sdk":"^1.17.0",chalk:"^5.3.0",commander:"^12.1.0",convex:"1.25.4",dockerode:"^4.0.7",dotenv:"^16.6.1",eventemitter3:"^5.0.1",express:"^4.21.2","fs-extra":"^11.2.0",inquirer:"^10.2.2","js-yaml":"^4.1.0",ora:"^8.1.1",uuid:"^9.0.1",winston:"^3.11.0","winston-daily-rotate-file":"^5.0.0",ws:"^8.18.3","@lody/types":"workspace:*","loro-websocket":"workspace:*","@types/dockerode":"^3.3.42","@types/express":"^5.0.0","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","@types/jest":"^29.5.14","@types/js-yaml":"^4.0.9","@types/node":"catalog:","@types/uuid":"^9.0.8","@types/ws":"^8.18.1",jest:"^29.7.0",prettier:"^3.4.2",rimraf:"^6.0.1","ts-jest":"^29.2.5","ts-node":"^10.9.2",tsx:"^4.20.5",typescript:"catalog:",esbuild:"^0.24.0"},files:["dist","README.md","LICENSE"]};var tg=qe(require("node:process"),1);var nI=qe(require("node:process"),1);var Xm=qe(require("node:process"),1);var Xbe=(t,e,r,n)=>{if(r==="length"||r==="prototype"||r==="arguments"||r==="caller")return;let i=Object.getOwnPropertyDescriptor(t,r),s=Object.getOwnPropertyDescriptor(e,r);!Zbe(i,s)&&n||Object.defineProperty(t,r,s)},Zbe=function(t,e){return t===void 0||t.configurable||t.writable===e.writable&&t.enumerable===e.enumerable&&t.configurable===e.configurable&&(t.writable||t.value===e.value)},e1e=(t,e)=>{let r=Object.getPrototypeOf(e);r!==Object.getPrototypeOf(t)&&Object.setPrototypeOf(t,r)},t1e=(t,e)=>`/* Wrapped ${t}*/
|
|
184
184
|
${e}`,r1e=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),n1e=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),i1e=(t,e,r)=>{let n=r===""?"":`with ${r.trim()}() `,i=t1e.bind(null,n,e.toString());Object.defineProperty(i,"name",n1e);let{writable:s,enumerable:o,configurable:a}=r1e;Object.defineProperty(t,"toString",{value:i,writable:s,enumerable:o,configurable:a})};function Kk(t,e,{ignoreNonConfigurable:r=!1}={}){let{name:n}=t;for(let i of Reflect.ownKeys(e))Xbe(t,e,i,r);return e1e(t,e),i1e(t,e,n),t}var qx=new WeakMap,Z7=(t,e={})=>{if(typeof t!="function")throw new TypeError("Expected a function");let r,n=0,i=t.displayName||t.name||"<anonymous>",s=function(...o){if(qx.set(s,++n),n===1)r=t.apply(this,o),t=void 0;else if(e.throw===!0)throw new Error(`Function \`${i}\` can only be called once`);return r};return Kk(s,t),qx.set(s,n),s};Z7.callCount=t=>{if(!qx.has(t))throw new Error(`The given function \`${t.name}\` is not wrapped by the \`onetime\` package`);return qx.get(t)};var e9=Z7;var xf=[];xf.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&xf.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&xf.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var Ux=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",Jk=Symbol.for("signal-exit emitter"),Xk=globalThis,s1e=Object.defineProperty.bind(Object),Zk=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(Xk[Jk])return Xk[Jk];s1e(Xk,Jk,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let s of this.listeners[e])i=s(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},jx=class{},o1e=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),eI=class extends jx{onExit(){return()=>{}}load(){}unload(){}},tI=class extends jx{#n=rI.platform==="win32"?"SIGINT":"SIGHUP";#r=new Zk;#e;#s;#d;#t={};#o=!1;constructor(e){super(),this.#e=e,this.#t={};for(let r of xf)this.#t[r]=()=>{let n=this.#e.listeners(r),{count:i}=this.#r,s=e;if(typeof s.__signal_exit_emitter__=="object"&&typeof s.__signal_exit_emitter__.count=="number"&&(i+=s.__signal_exit_emitter__.count),n.length===i){this.unload();let o=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#n:r;o||e.kill(e.pid,a)}};this.#d=e.reallyExit,this.#s=e.emit}onExit(e,r){if(!Ux(this.#e))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#r.count+=1;for(let e of xf)try{let r=this.#t[e];r&&this.#e.on(e,r)}catch{}this.#e.emit=(e,...r)=>this.#h(e,...r),this.#e.reallyExit=e=>this.#i(e)}}unload(){this.#o&&(this.#o=!1,xf.forEach(e=>{let r=this.#t[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#e.removeListener(e,r)}catch{}}),this.#e.emit=this.#s,this.#e.reallyExit=this.#d,this.#r.count-=1)}#i(e){return Ux(this.#e)?(this.#e.exitCode=e||0,this.#r.emit("exit",this.#e.exitCode,null),this.#d.call(this.#e,this.#e.exitCode)):0}#h(e,...r){let n=this.#s;if(e==="exit"&&Ux(this.#e)){typeof r[0]=="number"&&(this.#e.exitCode=r[0]);let i=n.call(this.#e,e,...r);return this.#r.emit("exit",this.#e.exitCode,null),i}else return n.call(this.#e,e,...r)}},rI=globalThis.process,{onExit:$x,load:Dmt,unload:Cmt}=o1e(Ux(rI)?new tI(rI):new eI);var t9=Xm.default.stderr.isTTY?Xm.default.stderr:Xm.default.stdout.isTTY?Xm.default.stdout:void 0,a1e=t9?e9(()=>{$x(()=>{t9.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},r9=a1e;var Hx=!1,Ah={};Ah.show=(t=nI.default.stderr)=>{t.isTTY&&(Hx=!1,t.write("\x1B[?25h"))};Ah.hide=(t=nI.default.stderr)=>{t.isTTY&&(r9(),Hx=!0,t.write("\x1B[?25l"))};Ah.toggle=(t,e)=>{t!==void 0&&(Hx=t),Hx?Ah.show(e):Ah.hide(e)};var iI=Ah;var rg=qe(sI(),1);var Ws=qe(require("node:process"),1);function oI(){return Ws.default.platform!=="win32"?Ws.default.env.TERM!=="linux":!!Ws.default.env.CI||!!Ws.default.env.WT_SESSION||!!Ws.default.env.TERMINUS_SUBLIME||Ws.default.env.ConEmuTask==="{cmd::Cmder}"||Ws.default.env.TERM_PROGRAM==="Terminus-Sublime"||Ws.default.env.TERM_PROGRAM==="vscode"||Ws.default.env.TERM==="xterm-256color"||Ws.default.env.TERM==="alacritty"||Ws.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var u1e={info:Je.blue("\u2139"),success:Je.green("\u2714"),warning:Je.yellow("\u26A0"),error:Je.red("\u2716")},l1e={info:Je.blue("i"),success:Je.green("\u221A"),warning:Je.yellow("\u203C"),error:Je.red("\xD7")},f1e=oI()?u1e:l1e,Zm=f1e;function aI({onlyFirst:t=!1}={}){let i="(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";return new RegExp(i,t?void 0:"g")}var d1e=aI();function eg(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(d1e,"")}function o9(t){return t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109}function a9(t){return t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510}function c9(t){return t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9776&&t<=9783||t>=9800&&t<=9811||t===9855||t>=9866&&t<=9871||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12773||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t===94192||t===94193||t>=94208&&t<=100343||t>=100352&&t<=101589||t>=101631&&t<=101640||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t>=119552&&t<=119638||t>=119648&&t<=119670||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128727||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129673||t>=129679&&t<=129734||t>=129742&&t<=129756||t>=129759&&t<=129769||t>=129776&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141}function h1e(t){if(!Number.isSafeInteger(t))throw new TypeError(`Expected a code point, got \`${typeof t}\`.`)}function u9(t,{ambiguousAsWide:e=!1}={}){return h1e(t),a9(t)||c9(t)||e&&o9(t)?2:1}var d9=qe(f9(),1),p1e=new Intl.Segmenter,m1e=new RegExp("^\\p{Default_Ignorable_Code_Point}$","u");function cI(t,e={}){if(typeof t!="string"||t.length===0)return 0;let{ambiguousIsNarrow:r=!0,countAnsiEscapeCodes:n=!1}=e;if(n||(t=eg(t)),t.length===0)return 0;let i=0,s={ambiguousAsWide:!r};for(let{segment:o}of p1e.segment(t)){let a=o.codePointAt(0);if(!(a<=31||a>=127&&a<=159)&&!(a>=8203&&a<=8207||a===65279)&&!(a>=768&&a<=879||a>=6832&&a<=6911||a>=7616&&a<=7679||a>=8400&&a<=8447||a>=65056&&a<=65071)&&!(a>=55296&&a<=57343)&&!(a>=65024&&a<=65039)&&!m1e.test(o)){if((0,d9.default)().test(o)){i+=2;continue}i+=u9(a,s)}}return i}function uI({stream:t=process.stdout}={}){return!!(t&&t.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}var lI=qe(require("node:process"),1);function fI(){let{env:t}=lI.default,{TERM:e,TERM_PROGRAM:r}=t;return lI.default.platform!=="win32"?e!=="linux":!!t.WT_SESSION||!!t.TERMINUS_SUBLIME||t.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||e==="xterm-256color"||e==="alacritty"||e==="rxvt-unicode"||e==="rxvt-unicode-256color"||t.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Co=qe(require("node:process"),1),g1e=3,dI=class{#n=0;start(){this.#n++,this.#n===1&&this.#r()}stop(){if(this.#n<=0)throw new Error("`stop` called more times than `start`");this.#n--,this.#n===0&&this.#e()}#r(){Co.default.platform==="win32"||!Co.default.stdin.isTTY||(Co.default.stdin.setRawMode(!0),Co.default.stdin.on("data",this.#s),Co.default.stdin.resume())}#e(){Co.default.stdin.isTTY&&(Co.default.stdin.off("data",this.#s),Co.default.stdin.pause(),Co.default.stdin.setRawMode(!1))}#s(e){e[0]===g1e&&Co.default.emit("SIGINT")}},v1e=new dI,hI=v1e;var _1e=qe(sI(),1),pI=class{#n=0;#r=!1;#e=0;#s=-1;#d=0;#t;#o;#i;#h;#m;#u;#l;#f;#g;#a;#c;color;constructor(e){typeof e=="string"&&(e={text:e}),this.#t={color:"cyan",stream:tg.default.stderr,discardStdin:!0,hideCursor:!0,...e},this.color=this.#t.color,this.spinner=this.#t.spinner,this.#m=this.#t.interval,this.#i=this.#t.stream,this.#u=typeof this.#t.isEnabled=="boolean"?this.#t.isEnabled:uI({stream:this.#i}),this.#l=typeof this.#t.isSilent=="boolean"?this.#t.isSilent:!1,this.text=this.#t.text,this.prefixText=this.#t.prefixText,this.suffixText=this.#t.suffixText,this.indent=this.#t.indent,tg.default.env.NODE_ENV==="test"&&(this._stream=this.#i,this._isEnabled=this.#u,Object.defineProperty(this,"_linesToClear",{get(){return this.#n},set(r){this.#n=r}}),Object.defineProperty(this,"_frameIndex",{get(){return this.#s}}),Object.defineProperty(this,"_lineCount",{get(){return this.#e}}))}get indent(){return this.#f}set indent(e=0){if(!(e>=0&&Number.isInteger(e)))throw new Error("The `indent` option must be an integer from 0 and up");this.#f=e,this.#p()}get interval(){return this.#m??this.#o.interval??100}get spinner(){return this.#o}set spinner(e){if(this.#s=-1,this.#m=void 0,typeof e=="object"){if(e.frames===void 0)throw new Error("The given spinner must have a `frames` property");this.#o=e}else if(!fI())this.#o=rg.default.line;else if(e===void 0)this.#o=rg.default.dots;else if(e!=="default"&&rg.default[e])this.#o=rg.default[e];else throw new Error(`There is no built-in spinner named '${e}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`)}get text(){return this.#g}set text(e=""){this.#g=e,this.#p()}get prefixText(){return this.#a}set prefixText(e=""){this.#a=e,this.#p()}get suffixText(){return this.#c}set suffixText(e=""){this.#c=e,this.#p()}get isSpinning(){return this.#h!==void 0}#v(e=this.#a,r=" "){return typeof e=="string"&&e!==""?e+r:typeof e=="function"?e()+r:""}#_(e=this.#c,r=" "){return typeof e=="string"&&e!==""?r+e:typeof e=="function"?r+e():""}#p(){let e=this.#i.columns??80,r=this.#v(this.#a,"-"),n=this.#_(this.#c,"-"),i=" ".repeat(this.#f)+r+"--"+this.#g+"--"+n;this.#e=0;for(let s of eg(i).split(`
|
|
185
185
|
`))this.#e+=Math.max(1,Math.ceil(cI(s,{countAnsiEscapeCodes:!0})/e))}get isEnabled(){return this.#u&&!this.#l}set isEnabled(e){if(typeof e!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this.#u=e}get isSilent(){return this.#l}set isSilent(e){if(typeof e!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this.#l=e}frame(){let e=Date.now();(this.#s===-1||e-this.#d>=this.interval)&&(this.#s=++this.#s%this.#o.frames.length,this.#d=e);let{frames:r}=this.#o,n=r[this.#s];this.color&&(n=Je[this.color](n));let i=typeof this.#a=="string"&&this.#a!==""?this.#a+" ":"",s=typeof this.text=="string"?" "+this.text:"",o=typeof this.#c=="string"&&this.#c!==""?" "+this.#c:"";return i+n+s+o}clear(){if(!this.#u||!this.#i.isTTY)return this;this.#i.cursorTo(0);for(let e=0;e<this.#n;e++)e>0&&this.#i.moveCursor(0,-1),this.#i.clearLine(1);return(this.#f||this.lastIndent!==this.#f)&&this.#i.cursorTo(this.#f),this.lastIndent=this.#f,this.#n=0,this}render(){return this.#l?this:(this.clear(),this.#i.write(this.frame()),this.#n=this.#e,this)}start(e){return e&&(this.text=e),this.#l?this:this.#u?this.isSpinning?this:(this.#t.hideCursor&&iI.hide(this.#i),this.#t.discardStdin&&tg.default.stdin.isTTY&&(this.#r=!0,hI.start()),this.render(),this.#h=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.#i.write(`- ${this.text}
|
|
186
186
|
`),this)}stop(){return this.#u?(clearInterval(this.#h),this.#h=void 0,this.#s=0,this.clear(),this.#t.hideCursor&&iI.show(this.#i),this.#t.discardStdin&&tg.default.stdin.isTTY&&this.#r&&(hI.stop(),this.#r=!1),this):this}succeed(e){return this.stopAndPersist({symbol:Zm.success,text:e})}fail(e){return this.stopAndPersist({symbol:Zm.error,text:e})}warn(e){return this.stopAndPersist({symbol:Zm.warning,text:e})}info(e){return this.stopAndPersist({symbol:Zm.info,text:e})}stopAndPersist(e={}){if(this.#l)return this;let r=e.prefixText??this.#a,n=this.#v(r," "),i=e.symbol??" ",s=e.text??this.text,a=typeof s=="string"?(i?" ":"")+s:"",c=e.suffixText??this.#c,u=this.#_(c," "),l=n+i+a+u+`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lody",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "Lody Agent CLI tool for managing remote command execution",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -54,8 +54,8 @@
|
|
|
54
54
|
"tsx": "^4.20.5",
|
|
55
55
|
"typescript": "^5.7.3",
|
|
56
56
|
"esbuild": "^0.24.0",
|
|
57
|
-
"
|
|
58
|
-
"
|
|
57
|
+
"loro-websocket": "0.1.0",
|
|
58
|
+
"@lody/types": "0.0.1"
|
|
59
59
|
},
|
|
60
60
|
"files": [
|
|
61
61
|
"dist",
|