Lines 1-50javascript
1import{createRequire as GH}from"node:module";var zH=Object.defineProperty;var JH=($)=>$;function KH($,f){this[$]=JH.bind(null,f)}var M0=($,f)=>{for(var Z in f)zH($,Z,{get:f[Z],enumerable:!0,configurable:!0,set:KH.bind(f,Z)})};var C=($,f)=>()=>($&&(f=$($=0)),f);var QH=GH(import.meta.url);import{writeFile as YH,rename as XH,unlink as PH}from"fs/promises";import{writeFileSync as WH,renameSync as HH,unlinkSync as UH}from"fs";import{randomBytes as MH}from"crypto";import s3 from"path";function V8($){return s3.join(s3.dirname($),`.${s3.basename($)}.${process.pid}.${MH(4).toString("hex")}.tmp`)}async ...
2 `),Z=_z().map((J)=>`(subpath ${Uz(L0.resolve(J))})`).join(`
3 `),z=$.network==="deny"?"(deny network*)":"";return`(version 1)
6(allow file-write-data (literal "/dev/null"))
14`}function Cz(){if(s4("/usr/bin/bwrap"))return"/usr/bin/bwrap";return"/usr/local/bin/bwrap"}function Oz($,f,Z){let z=["--die-with-parent","--ro-bind","/","/","--dev","/dev","--proc","/proc"],J=new Set;for(let K of o2($)){let G=process.platform==="win32"?K.toLowerCase():K;if(J.has(G))continue;if(J.add(G),s4(K))z.push("--bind",K,K)}if($.network==="deny")z.push("--unshare-net");return z.push("--chdir",f,"/bin/sh","-c",Z),z}function d2($){if($==="off"||Q9()!=="none")return null;return $==="strict"?"⚠ Command-level sandboxing isn't supported on this platform (requires macOS sandbox-exec or Linux bw ...
15${qz}`:Mz,X}function l2($){return $==="off"?"off":$==="strict"?"strict":"workspace"}function wz($){return $===
16\x1B[33m❓ ${z} (no interactive terminal — skipped)\x1B[0m`),null;if(console.log(),console.log(`\x1B[33m❓ ${z}\x1B[0m`),K){for(let Q=0;Q<K.length;Q++)console.log(`\x1B[90m ${Q+1}. ${K[Q]}\x1B[0m`);if(Z)console.log("\x1B[90m (可勾选多项;最后一项可自己输入)\x1B[0m")}return new Promise((Q)=>{let Y=nH.createInterface({input:process.stdin,output:process.stdout});Y.question("\x1B[36m → \x1B[0m",(X)=>{if(Y.close(),!f6)process.stdin.pause();Q(X.trim()||"(no answer)")})})}async function o$($){let f=J6.getStore();if(f){if(f.autoApprove)return!0;if(f.onConfirm)return f.onConfirm($);return!1}if(D4())return!0;if(!T ...
17\x1B[33m⚠ Rejected (no interactive terminal): ${$}\x1B[0m`),!1;return pH($)}function pH($){return new Promise((f)=>{$6.push({message:$,resolve:f}),pz()})}function pz
18 `)}`);return`${$.length} 个操作待确认(允许将全部执行,拒绝将全部取消):
20`)}`}function dH($){f6?.pause(),process.stdout.write(`
21\x1B[90m┌─ 即将执行 ─────────────────────────────────\x1B[0m
22`);for(let f of $.split(`
23`))process.stdout.write(`\x1B[90m│\x1B[0m ${f}
24`);return process.stdout.write(`\x1B[90m└────────────────────────────────────────────\x1B[0m
25`),process.stdout.write(`
26`),new Promise((f)=>{let Z=process.stdin.isRaw,z=process.stdin.readableEncoding;if(process.stdin.isTTY)process.stdin.setRawMode(!0);process.stdin.resume(),process.stdin.setEncoding("utf8");let J=1
28`),f6)f6.resume();else process.stdin.pause();f(H)};X();let W=(H)=>{K+=H;while(K.length>0){if(K[0]==="\x03"||K[0]==="\x04"){K="",P(!1),process.exit(130);return}if(K[0]==="\x1B"){if(K[1]==="["){let M=K.slice(2).search(/[A-Za-z~]/);if(M===-1)return;let N=K[2+M];K=K.slice(3+M),Y(N);continue}if(K[1]==="O"){if(K.length<3)return;let M=K[2];K=K.slice(3),Y(M);continue}if(K.length===1){setTimeout(()=>{if(K==="\x1B")K="",P(!1)},50).unref?.();return}K=K.slice(1),P(!1);return}let U=K[0];if(K=K.slice(1),U===`
29`&&!G)continue;if(U==="\r"||U===`
30`){if(!G)continue;P(J===0);return}if(U==="y"||U==="Y"){P(!0);return}if(U==="n"||U==="N"){P(!1);return}}};process.stdin.on("data",W)})}function R8($){return[/\brm\s+(-[a-z]*[rf][a-z]*|--recursive|--force)\s/,/\brm\s+-[a-z]*[rf]/,/\bfind\b[^|;&]*\s+-delete\b/,/\bfind\b[^|;&]*\s+-(exec|execdir|ok)\s+rm\b/,/\b(drop|truncate)\s+(table|database|schema)
31 → ${$.hint}`:`✖ ${$.message}`;return`✖ ${$ instanceof Error?$.message:String($)}`}function b9($){
32`),images:Z}}function cU($){if(Z$($))return $;if(typeof $!=="string"||!$.trim())return{};try{let f=JSON
34`}function lU($){let f=new TextDecoder,Z=new TextEncoder,z=$.getReader(),J={sentRole:!1},K="";return new ReadableStream({async pull(G){for(;;){let{done:Q,value:Y}=await z.read();if(Q){K+=f.decode();let H=K.trim();if(H)try{let U=JSON.parse(H);if(Z$(U))G.enqueue(Z.encode(CJ(bJ(U,J))))}catch{}G.enqueue(Z.encode(`data: [DONE]
36`)),G.close();return}K+=f.decode(Y,{stream:!0});let X=K.lastIndexOf(`
37`);if(X<0)continue;let P=K.slice(0,X+1);K=K.slice(X+1);let W=[];for(let H of P.split(`
38`)){let U=H.trim();if(!U)continue;try{let M=JSON.parse(U);if(Z$(M))W.push(CJ(bJ(M,J)))}catch{}}if(W.length>0){G.enqueue(Z.encode(W.join("")));return}}},cancel(G){return z.cancel(G)}})}function iU($){let f=new Headers($);return f.set("content-type","application/json"),f}function tU($){let f=new Headers($);return f.set("content-type","text/event-stream"),f.delete("content-length"),f}async function IJ($,f,Z,z,J){let K=uU(f);if(!xU(K))return $(f,{...Z,body:JSON.stringify(z)});let G=typeof z.model==="string"?z.model:"",Q=d1(G,K),Y=dU(z,{numCtx:LJ(G,K),think:VJ(J,Q?.thinking??null)}),X=await $(gU(K) ...
39(${$.length-p9} older memories not shown — use memory_search to find them.)`:"";return[f,...z,J].filter(Boolean).join(`
40`)}function l9($){if(!Y1($))return"";let f=C$("project"),Z=C$("global");if(f.length===0&&Z
41`)}function i9(){let $=c9({description:"Save a memory for future conversations. Use this when the user shares preferences, project conventions, important context, or asks you to remember something. Memories persist across sessions and are injected as background reference, not as work to resume. Do not store secrets, API keys, or passwords. Use scope project for this repository, global for all projects.",inputSchema:m9({type:"object",properties:{content:{type:"string",description:"The information to remember"},tags:{type:"array",items:{type:"string"},description:"Optional tags for categorizatio ...
42`)}}),Z=c9({description:"Delete a memory by its number. Use memory_search first to find the index and scope.",inputSchema:m9({type:"object",properties:{index:{type:"number",description:"The memory number to delete (1-based)"},scope:{type:"string",enum:["global","project"],description:"Which store the number belongs to. Defaults to project when .min-agent exists, otherwise global. Project requires .min-agent/ in cwd (created by min-agent init)."}},required:["index"]}),execute:async({index
43`)});function DM($){return $==="cli"?"this run":$==="project"?"project":$==="global"?"global":"default"}function i8($){let
44`)});function AM($){return $==="cli"?"this run":$==="project"?"project":$==="global"?"global":"default"}function a8($){let{scope:f,rest:Z}=l$($.positionals),z=f??$.scope??"global";if(Z[0]==="--help"||Z[0]==="-h")return{ok:!0,lines:[t8]};if(Z.length===1){let G=S0(Z[0]);if(!G)return{ok:!1,lines:[t8]};return i1(G,z),Q2(G),{ok:!0,lines:[`✓ Thinking set to ${b$(G)} (${U$(z)})`]}}if(Z.length>1)return{ok:!1,lines:[t8]};if($.flagEffort)return i1($.flagEffort,z),Q2($.flagEffort),{ok:!0,lines:[`✓ Thinking set to ${b$($.flagEffort)} (${U$(z)})`]};let{thinking:J,source:K}=G1();return{ok:!0,lines:[`Current ...
45`)});function e8($){let{scope:f,rest:Z}=l$($.positionals),z=f??$.scope??"global";if(Z[0]==="--help"||Z[0]==="-h")return{ok:!0,lines:[s8]};if(Z.length===1){let G=n0(Z[0]);if(!G)return{ok:!1,lines:[s8]};return W2(G,z),o8(G),{ok:!0,lines:[`✓ Memory set to ${t1(G)} (${U$(z)})`]}}if(Z.length>1)return{ok:!1,lines:[s8]};if($.flagMode)return W2($.flagMode,z),o8($.flagMode),{ok:!0,lines:[`✓ Memory set to ${t1($.flagMode)} (${U$(z)})`]};let{memory:J,source:K}=C4();return{ok:!0,lines:[`Current memory: ${t1(J)} (${P6(K)})`,s8]}}var s8;var $5=C(()=>{C1();s8=["Usage: min-agent memory [on|off] [--project|--g ...
46`)});var ZK={};M0(ZK,{runWriteConfig:()=>bM});async function bM($){let f=[],Z=!0;if($.sandbox!==void 0
47`)),!Z)process.exitCode=1}var zK=C(()=>{a9();s9();e9();$5()});function $f($,f,Z){let z=$==="openai"?"openai":$==="ollama"?"ollama":jM(f)??"provider";return CM(z,Z)}function ff($){let f=$.trim();if(!f||f.includes("/")||f.includes(":"))return"名称不能为空,且不能包含 / 或 :。";return null}function f5($){if($.length<4)return"****";return`…${$.slice(-4)}`}function JK($,f){let Z=$.trim().toLowerCase();if(!Z)return[...f];return f.filter((z)=>z.toLowerCase().includes(Z))}function Zf($,f,Z){let z=ff(f.name);if(z)return{error:z};let J=f.name.trim(),K=[...$.providers??[]],G=K.findIndex((Y)=>Y.name===J);if(G>=0&&!Z.ov ...
48`)?1:0);if(W>0)Y+=`\x1B[${W}A\x1B[${X.column}G`,f=W}let P=typeof z===
49`);for(let G=0;G<K.length;G++){for(let Q of a0(K[G],f,Z))z.push({text:Q,startIndex:J}),J+=Array.from(Q).length;if(G<K.length-1)J+=1}return z}function T4($,f,Z){let z=Array.from($).length;return Math.min(Math.max(f+Z,0),z)}function H5($,f,Z,z,J){let K=$[f];if(!K)return 0;let G=Z-z;if(G<=0)return K.startIndex;let Q=0,Y=0;for(let{text:X,width:P}of O$(K.text,J)){if(Q+P>G){if(J?.(X)!==void 0)return K.startIndex+Y;return K.startIndex+Y+(G-Q<P/2?0:Array.from(X).length)}Q+=P,Y+=Array.from(X).length}return K.startIndex+Y}function z$($,f,Z){let z=Array.from($);return z.splice(f,0,...Array.from(Z)),{valu ...
50`)z--;return z+1}function q6($,f){let Z=Array.from($),z=f;while(z<Z.length&&Z[z]!==
Long lines were clipped for display.