agent-afk 3.2.1 → 3.2.2
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.mjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/telegram.mjs +1 -1
- package/package.json +1 -1
package/dist/cli.mjs
CHANGED
|
@@ -1977,7 +1977,7 @@ _ended: ${new Date().toISOString()}_
|
|
|
1977
1977
|
`)}function M_(e){let t=[],n=(r,o)=>{o&&o.trim().length>0&&t.push({label:r,value:o.trim()})};switch(e.kind){case"done":n("done",e.whatWasDone),n("evidence",e.evidence),n("deferred",e.deferred);break;case"blocked":n("blocks",e.whatBlocks),n("unblock",e.unblockCondition),n("progress",e.alreadyDone);break;case"asking":n("question",e.question),n("resolves",e.assumption),n("after",e.followup);break;case"interrupted":n("was doing",e.whatWasInProgress),n("saved at",e.stateLocation),n("resume",e.resumeRequires);break}return t}function My(e,t,n){let r=[];n&&n.trim().length>0&&r.push({type:"text",text:n}),e&&r.push({type:"text",text:e});for(let o of t)r.push({type:"image",source:{type:"base64",media_type:o.mediaType,data:o.bytes.toString("base64")}});return r}async function $y(e,t,n,r,o="summary",s,i,a){let l=by(e.text,e.attachments);r.setInFlight(!0);let c="",d=!1,u,p=!1,f=!1,g=!1,h,k=!1,y=[],w=new Map,v=e.text.startsWith("/")?e.text.split(/[\s:]/)[0]?.slice(1):void 0,A=new rn({out:dr(),thinkingMode:o,...v?{activeSkillName:v}:{},onCancel:()=>{t.interrupt().catch(_=>{Ie()&&console.error(" "+m.error("session.interrupt() failed:"),_)})},...i?{onBackground:()=>{k=!0}}:{},...a?.history?{history:a.history}:{},...a?.autocompleteState?{autocompleteState:a.autocompleteState}:{}}),T=async()=>{if(!f){f=!0;try{await A.dispose()}catch{}}};try{console.log(),await A.arm();let _=A.getCompositor();if(s&&_){let x=_;s.fn=E=>x.commitAbove(E)}r.setActiveCompositor?.(_),r.rearmStatus?.();let S=e.attachments.length===0?e.text:My(e.text,e.attachments),R=t.sendMessageStream(S);if(await Wn(A.sink,async()=>{for await(let x of R){if(k&&i){let E=v??e.text.slice(0,40),M=i.register(E),I=Vs(M,i);Xs(R,c,l,M,i,I,n,r.onTurnComplete,t.abortSignal),await T(),console.log(m.dim(` \u2192 backgrounded as ${M.id}: ${M.label}`)),r.setInFlight(!1),r.rearmStatus?.();return}if(x.type==="chunk"&&x.chunk.type==="content"?(c+=x.chunk.content,d=!0):x.type==="message"&&!d&&(c=x.message.content),x.type==="chunk"&&x.chunk.type==="tool_use_detail"){let E=x.chunk,M={toolName:E.toolName,toolUseId:E.toolUseId,input:E.toolInput};w.set(E.toolUseId,M),y.push(M)}else if(x.type==="chunk"&&x.chunk.type==="tool_result"){let E=x.chunk,M=w.get(E.toolUseId);M&&(M.result=E.content,M.isError=E.isError,w.delete(E.toolUseId))}if(x.type==="paused"){await T(),console.log(ju({reason:x.reason,...x.resetsAt!==void 0?{resetsAt:x.resetsAt}:{},...x.accountId!==void 0?{accountId:x.accountId}:{}}));continue}if(x.type==="resumed"){let E=x.hotSwapped&&x.accountId?`\u25B6 Resumed on ${x.accountId}`:"\u25B6 Resumed";console.log(m.success(E));continue}if(x.type==="error"){await T(),Un(Nn(x.error)),p=!0;continue}A.process(x),x.type==="done"&&(g=!0,h=x.metadata)}}),!f){let x=A.getCompositor();if(x)try{let{text:E,queued:M}=x.getBuffer();M&&E.length>0&&(u=E)}catch{}}if(await T(),g){Hs(n,l,c,h,y),r.onTurnComplete&&await r.onTurnComplete(l,c).catch(()=>{}),d&&console.log(`
|
|
1978
1978
|
`);let x=Iy(c);if(x&&(console.log(_y(x)),console.log(),r.onTerminalState))try{r.onTerminalState(x)}catch{}if($_(h,n),r.onAfterTurn){let E=r.onAfterTurn();E instanceof Promise&&await E.catch(()=>{})}}}catch(_){await T(),p||Un(Nn(_))}finally{await T(),s&&(s.fn=_=>console.log(_)),r.setActiveCompositor?.(null),r.setInFlight(!1),r.rearmStatus?.()}return u}function $_(e,t){if(!e)return;let n=[];e.durationMs&&n.push(te(e.durationMs)),e.totalCostUsd!==void 0&&n.push(Ce(e.totalCostUsd));let r=Number(e.usage?.input_tokens??0),o=Number(e.usage?.output_tokens??0);r+o>0&&n.push(q(r+o)+" tok"),n.length>0&&console.log(m.dim(" \u25E6 "+n.join(" \xB7 ")));let s=_l(t);if(s>.5){let i=s>.8?m.error:m.warning;console.log(i(` context ${Math.round(s*100)}% used of ${q(Je(t.model))}`))}console.log()}function Oy(e={}){let t=e.load??zs,n=e.onResize??(i=>Ot.subscribe(i)),r="",o,s=n(()=>{r=""});return{renderIfChanged(i){let a=i??"unbound",l=t(a),c=ag(l);return a===o&&c===r?[]:(o=a,r=c,c===""?[]:Js(l))},invalidate(){r=""},dispose(){try{s()}catch{}}}}var xc={done:{glyph:"\u2713",color:m.success,label:"done"},blocked:{glyph:"\u2298",color:m.error,label:"blocked"},asking:{glyph:"?",color:m.warning,label:"asking"},interrupted:{glyph:"\u23F8",color:m.meta,label:"interrupted"}};function Dy(e={}){let t=Math.max(2,e.capacity??8),n=[];return{push(r){n.push(r.kind),n.length>t&&(n=n.slice(n.length-t))},reset(){n=[]},entries(){return n},render(){if(n.length===0)return null;let r=m.dim(" ledger "),o=m.dim(" \xB7 "),s=n.map(d=>{let u=xc[d];return u.color(`${u.glyph} ${u.label}`)}),i=m.dim(` (${n.length} turn${n.length===1?"":"s"})`),a=r+s.join(o)+i,l=Math.max(20,ee()-2);if(B(a)<=l)return a;let c=r+n.map(d=>xc[d].color(xc[d].glyph)).join(m.dim(" "))+i;return ce(c,l)}}}var Ly=["\u25D0","\u25D1","\u25D2","\u25D3"],Ui=class{stream;manager;registry;throttleMs;started=!1;lastRepaint=0;spinnerIndex=0;spinnerInterval=null;resizeUnsub=null;updateHandler=null;registryStartedHandler=null;registrySettledHandler=null;subagentRunningCount=0;rowCount=0;onRowCountChange;constructor(t,n,r={}){this.manager=t,this.registry=n,this.stream=r.stream??process.stdout,this.throttleMs=r.throttleMs??200}setRowCountChangeHandler(t){this.onRowCountChange=t}start(){this.started||(this.started=!0,this.updateHandler=()=>this.scheduleRepaint(),this.manager.on("update",this.updateHandler),this.manager.on("complete",this.updateHandler),this.registry&&(this.registryStartedHandler=t=>{this.subagentRunningCount++,this.scheduleRepaint()},this.registrySettledHandler=t=>{this.subagentRunningCount=Math.max(0,this.subagentRunningCount-1),this.scheduleRepaint()},this.registry.on("started",this.registryStartedHandler),this.registry.on("settled",this.registrySettledHandler)),this.resizeUnsub=Ot.subscribe(()=>this.repaint()),this.spinnerInterval=setInterval(()=>{this.spinnerIndex=(this.spinnerIndex+1)%Ly.length,this.rowCount>0&&this.repaint()},Math.max(this.throttleMs,50)))}stop(){this.started&&(this.started=!1,this.updateHandler&&(this.manager.removeListener("update",this.updateHandler),this.manager.removeListener("complete",this.updateHandler),this.updateHandler=null),this.registry&&(this.registryStartedHandler&&(this.registry.off("started",this.registryStartedHandler),this.registryStartedHandler=null),this.registrySettledHandler&&(this.registry.off("settled",this.registrySettledHandler),this.registrySettledHandler=null)),this.resizeUnsub&&(this.resizeUnsub(),this.resizeUnsub=null),this.spinnerInterval&&(clearInterval(this.spinnerInterval),this.spinnerInterval=null),this.rowCount>0&&(this.clearRows(),this.rowCount=0,this.onRowCountChange?.(0)))}scheduleRepaint(){Date.now()-this.lastRepaint<this.throttleMs||this.repaint()}repaint(){if(!this.started||!this.stream.isTTY)return;this.lastRepaint=Date.now();let t=this.manager.running(),n=t.length+this.subagentRunningCount;if(n!==this.rowCount&&(this.rowCount>0&&this.clearRows(),this.rowCount=n,this.onRowCountChange?.(n)),n===0)return;let o=(this.stream.rows??24)-n;this.stream.write("\x1B[s");for(let s=0;s<t.length;s++){let i=t[s],a=o+s;this.stream.write(`\x1B[${a};1H`),this.stream.write("\x1B[2K"),this.stream.write(this.formatTaskLine(i))}this.stream.write("\x1B[u")}clearRows(){if(!this.stream.isTTY)return;let n=(this.stream.rows??24)-this.rowCount;this.stream.write("\x1B[s");for(let r=0;r<this.rowCount;r++)this.stream.write(`\x1B[${n+r};1H`),this.stream.write("\x1B[2K");this.stream.write("\x1B[u")}formatTaskLine(t){let n=Math.max(4,(this.stream.columns??80)-2),r=m.brand(Ly[this.spinnerIndex]),o=m.dim(t.id),s=m.bold(t.label),i=[r,o,s];t.progressDescription&&i.push(m.dim(t.progressDescription));let a=[];t.stats.toolUses>0&&a.push(`${t.stats.toolUses} tool${t.stats.toolUses===1?"":"s"}`),t.stats.tokens>0&&a.push(`${q(t.stats.tokens)} tok`);let l=Date.now()-t.startedAt;return a.push(te(l)),a.length>0&&i.push(m.dim(a.join(" \xB7 "))),ce(" "+i.join(" "),n)}};function Fy(e,t){let n=m.brand("afk")+m.dim(` (${e})`),r=t?m.warning(" \u25CF plan"):"";return n+r+m.dim(" \u203A ")}async function Ny(e,t,n,r){let o=null,s=[];e.session.current.waitForInitialization().then(async h=>{Ie()&&(o=qs(h)),await yi(e.session.current),Ie()&&(s=Oh())}).catch(()=>{});let i=await Py(),a=Li(),l,c=Oy(),d=Dy();e.clearVerdictLedger=()=>d.reset();let u=new Ys;bg(u),Tg(u),Rg(u),xg(e.backgroundRegistry);let p=new Ui(u,e.backgroundRegistry);p.setRowCountChangeHandler(h=>{e.statusLine.setExtraRows(h)}),p.start();let f=50,g=[];u.on("complete",h=>{g.length>=f&&g.shift(),g.push(h)});try{for(;;){if(o&&(e.replRenderer.writeLine(o),e.replRenderer.writeLine(""),o=null),s.length>0){for(let S of s)e.replRenderer.writeLine(S);e.replRenderer.writeLine(""),s=[]}for(;g.length>0;){let S=g.shift(),R=S.status==="succeeded"?"\u2713":"\u2717",x=[];if(S.resultText){let M=S.resultText.trim().split(`
|
|
1979
1979
|
`)[0]?.slice(0,80)??"";M&&x.push(M)}S.error&&x.push(S.error.message);let E=[S.stats.toolUses>0?`${S.stats.toolUses} tools`:"",S.stats.tokens>0?`${Math.round(S.stats.tokens/1e3)}k tok`:"",S.stats.durationMs>0?`${Math.round(S.stats.durationMs/1e3)}s`:""].filter(Boolean).join(" \xB7 ");E&&x.push(E),e.replRenderer.writeLine(Dt({kind:S.status==="succeeded"?"checkpoint":"diagnosis",title:`${R} ${S.id} ${S.label}`,body:x})),e.replRenderer.writeLine("")}let h=c.renderIfChanged(e.stats.sessionId);if(h.length>0){for(let S of h)e.replRenderer.writeLine(S);e.replRenderer.writeLine("")}let k=d.render();k&&e.replRenderer.writeLine(k);let y,w;if(l!==void 0){let S=l;l=void 0;let R=Fy(e.stats.model,e.stats.planMode),x=oo({buffer:S.text,promptText:R,isTTY:!!process.stdout.isTTY});e.replRenderer.writeLine(x),y=S.text.trim(),w=S.attachments}else{let S=await Ey({rl:e.rl,promptFn:()=>Fy(e.stats.model,e.stats.planMode),onSigint:r,statusLine:e.statusLine,compositor:n.activeCompositor??void 0,history:i,autocompleteState:a,onShiftTab:()=>{let R=e.slashCtx;R.stats.planMode&&R.stats.pendingPlanExit?(R.stats.pendingPlanExit=!1,xt(R,!1,{closureSummarySkipped:!0}).catch(()=>{})):xt(R).catch(()=>{}),e.statusLine.rearm()}});y=S.text.trim(),w=S.attachments}if(!y&&w.length===0)continue;let v=!1;if(y.startsWith("/")){let S=await qf(y,e.slashCtx,w);if(S.handled){if(S.result==="exit"){e.rl.close();return}if((y==="/clear"||y.startsWith("/clear "))&&(await t.rotateOnClear(),e.replRenderer.writeLine(m.dim(` transcript: ${t.path()}`)),d.reset()),S.result!==null&&typeof S.result=="object"&&"kind"in S.result&&S.result.kind==="submit"){l={text:S.result.message,attachments:w??[]},e.statusLine.rearm();continue}e.statusLine.rearm();continue}v=!0}i.push(y);let A=y;if(v){let S=Il(y);if(S){let R=S.name.replace(/^\//,"").split(":").pop()??"";if(R&&sc(R)){let x={skillName:R,rawArgs:S.args,source:"plugin",capabilities:{compose:!0,subagents:!0}},E=e.session.current.sessionId,M=uo(E),I=await co(x,{cwd:process.cwd(),artifactDir:M},D=>{Ie()&&e.replRenderer.writeLine(m.warning(`\u26A0 preflight(${R}) failed: `)+(D instanceof Error?D.message:String(D)))});A=ac(I?.manifestBlock,y)}}}let T;if(e.firstTurnHook&&e.stats.totalTurns===0){let S=e.firstTurnHook;e.firstTurnHook=void 0,T=Promise.resolve().then(()=>S(y)).catch(R=>{e.completionWriter.fn(m.warning("\u26A0 ")+"first-turn hook failed: "+(R instanceof Error?R.message:String(R)))})}let _=await $y({text:A,attachments:w},e.session.current,e.stats,{setInFlight(S){n.turnInFlight=S},async onTurnComplete(S,R){await t.appendTurn(S,R)},async onAfterTurn(){await e.contextSampler.onTurn(e.stats.totalTurns),await Qf(e.slashCtx),e.statusLine.rearm()},rearmStatus:()=>e.statusLine.rearm(),onTerminalState:S=>d.push(S),setActiveCompositor:S=>{n.activeCompositor=S,e.replRenderer.setCompositor(S)}},e.options.thinkingUi,e.completionWriter,u,{history:i,autocompleteState:a});l=_!==void 0?{text:_,attachments:[]}:void 0,T!==void 0&&await T}}finally{for(let h of u.running())u.cancel(h.id);p.stop(),c.dispose()}}import{promises as D_}from"node:fs";import{dirname as L_,join as F_}from"node:path";import{randomBytes as N_}from"node:crypto";import O_ from"@anthropic-ai/sdk";import{randomUUID as Uy}from"node:crypto";async function jy(e){let{token:t,model:n,system:r,user:o,maxTokens:s=64,signal:i,clientFactory:a}=e;if(!t)throw new Error("oneShotCompletion: token required");let l=No(t),c=Ir(t,l),d=a?a(c):new O_(c),u=Uy(),p=Uy(),f=yt(l,u,p),g={};Object.keys(f).length>0&&(g.headers=f),i&&(g.signal=i);let h=await d.messages.create({model:n,max_tokens:s,system:r,messages:[{role:"user",content:o}]},Object.keys(g).length>0?g:void 0),k=[];for(let w of h.content)w.type==="text"&&k.push(w.text);let y=k.join("").trim();return y.length===0&&console.warn("oneShotCompletion: response contained no text blocks \u2014 returning empty string"),y}var U_=["Generate a 2-4 word kebab-case slug describing this work request.","Rules:","- ASCII lowercase letters and digits only, separated by single hyphens","- 2 to 4 hyphen-separated words","- Maximum 30 characters total","- No prefix, no quotes, no punctuation other than hyphens","- Output ONLY the slug \u2014 no explanation, no preamble","Examples: fix-cleanup-race, add-telegram-allowlist, refactor-prompt-loader, debug-flaky-test"].join(`
|
|
1980
|
-
`),By=/^[a-z0-9]+(-[a-z0-9]+){1,3}$/,Ec=30,j_=1024,B_=8e3,W_="haiku";async function H_(e,t){let n=e.trim();if(n.length===0||n.startsWith("/"))return null;let r=z_(n,j_),o=new AbortController,s=setTimeout(()=>o.abort(),t.timeoutMs??B_),i=t.signal?J_([t.signal,o.signal]):o.signal,a;try{t.slugGenerator?a=await t.slugGenerator(r,i):a=await jy({token:t.token,model:t.model??W_,system:U_,user:r,maxTokens:32,signal:i})}catch{return null}finally{clearTimeout(s)}let l=K_(a);if(l===null)return null;let c=L_(t.worktreePath);return await G_(l,c)}function K_(e){let t=e.trim().toLowerCase();if(t.length===0)return null;if(By.test(t)&&t.length<=Ec)return t;let n=t.replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");if(n.length===0)return null;let r=n.split("-").filter(s=>s.length>0).slice(0,4);if(r.length<2)return null;let o=r[0];for(let s=1;s<r.length;s++){let i=`${o}-${r[s]}`;if(i.length>Ec)break;o=i}return By.test(o)?o:null}async function G_(e,t){if(!await q_(F_(t,e)))return e;let n=N_(2).toString("hex");return`${e.split("-").slice(0,3).join("-").slice(0,Ec-5)}-${n}`}async function q_(e){try{return await D_.access(e),!0}catch{return!1}}function z_(e,t){let n=Buffer.from(e,"utf8");if(n.length<=t)return e;let r=t;for(;r>0&&n[r]!==void 0&&(n[r]&192)===128;)r--;return n.slice(0,r).toString("utf8")}function J_(e){let t=AbortSignal.any;if(typeof t=="function")return t.call(AbortSignal,e);let n=new AbortController;for(let r of e){if(r.aborted)return n.abort(r.reason),n.signal;r.addEventListener("abort",()=>n.abort(r.reason),{once:!0})}return n.signal}async function Wy(e){let t=await H_(e.message,{token:e.token,...e.model!==void 0?{model:e.model}:{},...e.timeoutMs!==void 0?{timeoutMs:e.timeoutMs}:{},worktreePath:e.handle.path,...e.signal!==void 0?{signal:e.signal}:{},...e.slugGenerator!==void 0?{slugGenerator:e.slugGenerator}:{}});if(t===null)return{status:"skipped",reason:"slug generation returned null"};let r=await(e.renameFn??Yp)(e.handle,t,e.branchPrefix!==void 0?{branchPrefix:e.branchPrefix}:void 0);return r.ok?(e.session&&e.session.setCwd(r.newPath),{status:"renamed",oldPath:r.oldPath,newPath:r.newPath,oldBranch:r.oldBranch,newBranch:r.newBranch}):(r.partial==="branch"&&e.session&&e.session.setCwd(e.handle.path),{status:"failed",reason:r.reason,...r.partial!==void 0?{partial:r.partial}:{}})}import{spawn as Hy}from"child_process";import{existsSync as Z_,mkdirSync as e0,readFileSync as Ky,unlinkSync as t0,writeFileSync as n0}from"fs";import{get as r0}from"https";import{join as Gy}from"path";import{readFileSync as Y_}from"fs";import{dirname as V_,join as X_}from"path";import{fileURLToPath as Q_}from"url";function Rt(){try{return"3.2.
|
|
1980
|
+
`),By=/^[a-z0-9]+(-[a-z0-9]+){1,3}$/,Ec=30,j_=1024,B_=8e3,W_="haiku";async function H_(e,t){let n=e.trim();if(n.length===0||n.startsWith("/"))return null;let r=z_(n,j_),o=new AbortController,s=setTimeout(()=>o.abort(),t.timeoutMs??B_),i=t.signal?J_([t.signal,o.signal]):o.signal,a;try{t.slugGenerator?a=await t.slugGenerator(r,i):a=await jy({token:t.token,model:t.model??W_,system:U_,user:r,maxTokens:32,signal:i})}catch{return null}finally{clearTimeout(s)}let l=K_(a);if(l===null)return null;let c=L_(t.worktreePath);return await G_(l,c)}function K_(e){let t=e.trim().toLowerCase();if(t.length===0)return null;if(By.test(t)&&t.length<=Ec)return t;let n=t.replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");if(n.length===0)return null;let r=n.split("-").filter(s=>s.length>0).slice(0,4);if(r.length<2)return null;let o=r[0];for(let s=1;s<r.length;s++){let i=`${o}-${r[s]}`;if(i.length>Ec)break;o=i}return By.test(o)?o:null}async function G_(e,t){if(!await q_(F_(t,e)))return e;let n=N_(2).toString("hex");return`${e.split("-").slice(0,3).join("-").slice(0,Ec-5)}-${n}`}async function q_(e){try{return await D_.access(e),!0}catch{return!1}}function z_(e,t){let n=Buffer.from(e,"utf8");if(n.length<=t)return e;let r=t;for(;r>0&&n[r]!==void 0&&(n[r]&192)===128;)r--;return n.slice(0,r).toString("utf8")}function J_(e){let t=AbortSignal.any;if(typeof t=="function")return t.call(AbortSignal,e);let n=new AbortController;for(let r of e){if(r.aborted)return n.abort(r.reason),n.signal;r.addEventListener("abort",()=>n.abort(r.reason),{once:!0})}return n.signal}async function Wy(e){let t=await H_(e.message,{token:e.token,...e.model!==void 0?{model:e.model}:{},...e.timeoutMs!==void 0?{timeoutMs:e.timeoutMs}:{},worktreePath:e.handle.path,...e.signal!==void 0?{signal:e.signal}:{},...e.slugGenerator!==void 0?{slugGenerator:e.slugGenerator}:{}});if(t===null)return{status:"skipped",reason:"slug generation returned null"};let r=await(e.renameFn??Yp)(e.handle,t,e.branchPrefix!==void 0?{branchPrefix:e.branchPrefix}:void 0);return r.ok?(e.session&&e.session.setCwd(r.newPath),{status:"renamed",oldPath:r.oldPath,newPath:r.newPath,oldBranch:r.oldBranch,newBranch:r.newBranch}):(r.partial==="branch"&&e.session&&e.session.setCwd(e.handle.path),{status:"failed",reason:r.reason,...r.partial!==void 0?{partial:r.partial}:{}})}import{spawn as Hy}from"child_process";import{existsSync as Z_,mkdirSync as e0,readFileSync as Ky,unlinkSync as t0,writeFileSync as n0}from"fs";import{get as r0}from"https";import{join as Gy}from"path";import{readFileSync as Y_}from"fs";import{dirname as V_,join as X_}from"path";import{fileURLToPath as Q_}from"url";function Rt(){try{return"3.2.2"}catch{}try{let e=V_(Q_(import.meta.url));for(let t of["../../package.json","../package.json"])try{let n=JSON.parse(Y_(X_(e,t),"utf-8"));if(typeof n.version=="string")return n.version}catch{}}catch{}return"0.0.0-unknown"}var o0=64*1024,s0=1440*60*1e3,i0="update-check.json",a0="pending-update.json";function qy(){return Gy(Co(),i0)}function Rc(){return Gy(Co(),a0)}function zy(){let e=Co();Z_(e)||e0(e,{recursive:!0})}function l0(e,t){let n=e.split(".").map(Number),r=t.split(".").map(Number),o=Math.max(n.length,r.length);for(let s=0;s<o;s++){let i=n[s]??0,a=r[s]??0;if(a>i)return!0;if(a<i)return!1}return!1}function c0(){try{let e=Ky(qy(),"utf-8"),t=JSON.parse(e);if(typeof t.latestVersion=="string"&&typeof t.checkedAt=="number")return t}catch{}return null}function u0(){try{zy();let e=`
|
|
1981
1981
|
const https = require('https');
|
|
1982
1982
|
const fs = require('fs');
|
|
1983
1983
|
const url = 'https://registry.npmjs.org/agent-afk/latest';
|
package/dist/index.mjs
CHANGED
|
@@ -1589,7 +1589,7 @@ ${d.stdout.trim()||"(no changes)"}`;await t.reply(u.slice(0,4e3))}catch(l){r("[f
|
|
|
1589
1589
|
\u25E6 ${w}: Done`,u(o))};try{await Rr(b,async()=>{for(;;){process.env.AFK_TELEGRAM_TRACE&&console.log("[trace] awaiting next event");let m=await k();if(process.env.AFK_TELEGRAM_TRACE&&console.log("[trace] event arrived:",m.done?"DONE":m.value.type),m.done)break;let g=m.value;if(h||(h=!0,console.log("\u{1F4E1} First stream event received:",g.type),r?.("First stream event received:",g.type)),g.type==="chunk"&&g.chunk.type==="content"&&(o+=g.chunk.content,await u(o)),g.type==="chunk"&&g.chunk.type,g.type==="message"&&g.message.role==="assistant"&&(o=g.message.content,await u(o)),g.type==="progress"){let{description:w,summary:I,lastToolName:N}=g.progress,D=N?`
|
|
1590
1590
|
\u25E6 ${w} (${N})`:`
|
|
1591
1591
|
\u25E6 ${w}`;o+=D,I&&(o+=`
|
|
1592
|
-
${I}`),await u(o)}if(g.type==="suggestion"&&(o+=`
|
|
1592
|
+
${I}`),await u(o)}if(g.type==="suggestion"&&g.suggestion.trim()!==o.trim()&&(o+=`
|
|
1593
1593
|
|
|
1594
1594
|
\u{1F4A1} ${g.suggestion}`,await u(o)),g.type==="paused"){a=g.resetsAt??null;let w=a!==null?Math.max(0,Math.ceil((a.getTime()-Date.now())/6e4)):null,I=a!==null?a.toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit",hour12:!0}):null,N=I!==null&&w!==null?`\u23F8 **Usage paused**
|
|
1595
1595
|
|
package/dist/telegram.mjs
CHANGED
|
@@ -144,7 +144,7 @@ ${d.stdout.trim()||"(no changes)"}`;await t.reply(u.slice(0,4e3))}catch(l){r("[f
|
|
|
144
144
|
\u25E6 ${k}: Done`,u(o))};try{await Ao(b,async()=>{for(;;){process.env.AFK_TELEGRAM_TRACE&&console.log("[trace] awaiting next event");let h=await w();if(process.env.AFK_TELEGRAM_TRACE&&console.log("[trace] event arrived:",h.done?"DONE":h.value.type),h.done)break;let y=h.value;if(g||(g=!0,console.log("\u{1F4E1} First stream event received:",y.type),r?.("First stream event received:",y.type)),y.type==="chunk"&&y.chunk.type==="content"&&(o+=y.chunk.content,await u(o)),y.type==="chunk"&&y.chunk.type,y.type==="message"&&y.message.role==="assistant"&&(o=y.message.content,await u(o)),y.type==="progress"){let{description:k,summary:_,lastToolName:R}=y.progress,v=R?`
|
|
145
145
|
\u25E6 ${k} (${R})`:`
|
|
146
146
|
\u25E6 ${k}`;o+=v,_&&(o+=`
|
|
147
|
-
${_}`),await u(o)}if(y.type==="suggestion"&&(o+=`
|
|
147
|
+
${_}`),await u(o)}if(y.type==="suggestion"&&y.suggestion.trim()!==o.trim()&&(o+=`
|
|
148
148
|
|
|
149
149
|
\u{1F4A1} ${y.suggestion}`,await u(o)),y.type==="paused"){a=y.resetsAt??null;let k=a!==null?Math.max(0,Math.ceil((a.getTime()-Date.now())/6e4)):null,_=a!==null?a.toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit",hour12:!0}):null,R=_!==null&&k!==null?`\u23F8 **Usage paused**
|
|
150
150
|
|