openfork 0.5.0 → 0.6.0

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.
Files changed (2) hide show
  1. package/dist/index.js +3 -3
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -243,9 +243,9 @@ ${E}${Y}ERRORS${q}`);for(let[,Q]of J)for(let W of Q)U.push(` ${W.message}${q}`)
243
243
  `)};var WaA=x(()=>{$7();O7();SAA=U7("effect/cli/CliOutput",{defaultValue:()=>kh0()})});var OHA=(A)=>A.replace(/'/g,"'\\''"),HaA=(A)=>A.replace(/[^a-zA-Z0-9_]/g,"_"),kj6=(A)=>{let j=[`--${A.name}`];for(let B of A.aliases)j.push(B.length===1?`-${B}`:`--${B}`);if(A.type._tag==="Boolean")j.push(`--no-${A.name}`);return j},fh0=(A,j)=>{if(A.length===0)return;j.push(" # Build used-flag filter"),j.push(" local -A _flag_groups");let B=0;for(let $ of A){let X=kj6($);for(let q of X)j.push(` _flag_groups[${q}]=${B}`);B++}j.push(" local -A _used_groups"),j.push(" for ((i = 1; i < cword; i++)); do"),j.push(' local _g="${_flag_groups[${words[i]}]:-}"'),j.push(' [[ -n "$_g" ]] && _used_groups[$_g]=1'),j.push(" done"),j.push(' local _filtered_flags=""'),j.push(` for _f in ${A.flatMap(kj6).join(" ")}; do`),j.push(' local _g="${_flag_groups[$_f]:-}"'),j.push(' [[ -z "$_g" || -z "${_used_groups[$_g]:-}" ]] && _filtered_flags+=" $_f"'),j.push(" done"),j.push("")},hh0=(A)=>{switch(A._tag){case"Boolean":return;case"Choice":return`COMPREPLY=( $(compgen -W '${A.values.join(" ")}' -- "$cur") )`;case"Path":if(A.pathType==="directory")return'COMPREPLY=( $(compgen -d -- "$cur") )';return'COMPREPLY=( $(compgen -f -- "$cur") )';default:return}},bj6=(A)=>{switch(A._tag){case"Choice":return`COMPREPLY=( $(compgen -W '${A.values.join(" ")}' -- "$cur") )`;case"Path":if(A.pathType==="directory")return'COMPREPLY=( $(compgen -d -- "$cur") )';return'COMPREPLY=( $(compgen -f -- "$cur") )';default:return}},yj6=(A,j,B)=>{let $=[...j,A.name],X=`_${$.map(HaA).join("_")}`;B.push(`${X}()`),B.push("{"),B.push(" local cur prev words cword"),B.push(" _init_completion || return"),B.push("");let q=A.flags.filter((E)=>E.type._tag!=="Boolean");if(q.length>0){B.push(" # Flag value completions"),B.push(' case "$prev" in');for(let E of q){let K=[`--${E.name}`];for(let U of E.aliases)K.push(U.length===1?`-${U}`:`--${U}`);let J=hh0(E.type);if(J)B.push(` ${K.join("|")})`),B.push(` ${J}`),B.push(" return"),B.push(" ;;")}B.push(" esac"),B.push("")}if(A.subcommands.length>0){B.push(" # Subcommand dispatch"),B.push(" local i cmd"),B.push(" for ((i = 1; i < cword; i++)); do"),B.push(' case "${words[i]}" in');for(let E of A.subcommands){let K=`_${[...$,E.name].map(HaA).join("_")}`;B.push(` ${E.name})`),B.push(` ${K}`),B.push(" return"),B.push(" ;;")}B.push(" esac"),B.push(" done"),B.push("")}if(fh0(A.flags,B),A.flags.length>0||A.subcommands.length>0){if(B.push(" # Complete flags (filtered) and subcommands"),B.push(' if [[ "$cur" == -* ]]; then'),A.flags.length>0)B.push(' COMPREPLY=( $(compgen -W "$_filtered_flags" -- "$cur") )');B.push(" return"),B.push(" fi"),B.push("")}let Y=A.arguments.filter((E)=>bj6(E.type)!==void 0);if(Y.length>0){B.push(" # Positional argument completions");for(let E of Y){let K=bj6(E.type);B.push(` ${K}`),B.push(" return")}}else if(A.subcommands.length>0){let E=A.subcommands.map((K)=>K.name);B.push(` COMPREPLY=( $(compgen -W '${E.join(" ")}' -- "$cur") )`)}B.push("}"),B.push("");for(let E of A.subcommands)yj6(E,$,B)},vj6=(A,j)=>{let B=[],$=HaA(A);return B.push(`###-begin-${OHA(A)}-completions-###`),B.push("#"),B.push("# Static completion script for Bash"),B.push("#"),B.push("# Installation:"),B.push(`# ${OHA(A)} --completions bash >> ~/.bashrc`),B.push("#"),B.push(""),B.push("if ! type _init_completion &>/dev/null; then"),B.push(" _init_completion()"),B.push(" {"),B.push(" COMPREPLY=()"),B.push(' cur="${COMP_WORDS[COMP_CWORD]}"'),B.push(' prev="${COMP_WORDS[COMP_CWORD-1]}"'),B.push(' words=("${COMP_WORDS[@]}")'),B.push(" cword=$COMP_CWORD"),B.push(" }"),B.push("fi"),B.push(""),yj6(j,[],B),B.push(`complete -F _${$} ${OHA(A)}`),B.push(`###-end-${OHA(A)}-completions-###`),B.join(`
244
244
  `)};var Hk=(A)=>A.replace(/'/g,"\\'"),mh0=(A,j)=>{if(A.length===0){if(j.length>0)return"__fish_use_subcommand";return""}let B=A[A.length-1];if(j.length>0)return`__fish_seen_subcommand_from ${B}; and not __fish_seen_subcommand_from ${j.join(" ")}`;return`__fish_seen_subcommand_from ${B}`},zaA=(A)=>{let j=[];for(let B of A.aliases)if(B.length===1)j.push(`-s ${B}`);j.push(A.name);for(let B of A.aliases)if(B.length>1)j.push(B);if(A.type._tag==="Boolean")j.push(`no-${A.name}`);return`not __fish_contains_opt ${j.join(" ")}`},ch0=(A)=>{let j=[`-l ${A.name}`];for(let $ of A.aliases)if($.length===1)j.push(`-s ${$}`);else j.push(`-l ${$}`);if(A.description)j.push(`-d '${Hk(A.description)}'`);let B=uh0(A.type);if(B)j.push(B);return j},uh0=(A)=>{switch(A._tag){case"Boolean":return;case"Choice":return`-r -f -a '${A.values.join(" ")}'`;case"Path":if(A.pathType==="directory")return"-r -F";return"-r -F";default:return"-r -f"}},dh0=(A)=>{switch(A._tag){case"Choice":return`-r -f -a '${A.values.join(" ")}'`;case"Path":return"-r -F";default:return}},fj6=(A,j,B,$)=>{let X=j.subcommands.map((K)=>K.name),q=mh0(B,X),Y=q?`-n '${q}'`:"";if(!j.arguments.some((K)=>K.type._tag==="Path")){let K=[`complete -c ${A}`];if(Y)K.push(Y);K.push("-f"),$.push(K.join(" "))}for(let K of j.subcommands){let J=[`complete -c ${A}`];if(Y)J.push(Y);if(J.push(`-f -a '${Hk(K.name)}'`),K.description)J.push(`-d '${Hk(K.description)}'`);$.push(J.join(" "))}for(let K of j.flags){let J=K.type._tag==="Boolean",U=J?q?`${q}; and ${zaA(K)}`:zaA(K):q,Q=U?`-n '${U}'`:"",W=[`complete -c ${A}`];if(Q)W.push(Q);if(W.push(...ch0(K)),$.push(W.join(" ")),J){let H=[`complete -c ${A}`];if(Q)H.push(Q);if(H.push(`-l no-${K.name}`),K.description)H.push(`-d '${Hk(`Disable ${K.name}`)}'`);$.push(H.join(" "))}}if(j.flags.length>0){let J=q?`${q}; and not string match -q -- "-*" (commandline -ct)`:'not string match -q -- "-*" (commandline -ct)';for(let U of j.flags){let Q=`${J}; and ${zaA(U)}`,W=U.type._tag==="Boolean",H=[`complete -c ${A}`];if(H.push(`-n '${Q}'`),H.push(`-f -a '--${U.name}'`),U.description)H.push(`-d '${Hk(U.description)}'`);if($.push(H.join(" ")),W){let Z=[`complete -c ${A}`];if(Z.push(`-n '${Q}'`),Z.push(`-f -a '--no-${U.name}'`),U.description)Z.push(`-d '${Hk(`Disable ${U.name}`)}'`);$.push(Z.join(" "))}}}for(let K of j.arguments){let J=dh0(K.type);if(J){let U=[`complete -c ${A}`];if(Y)U.push(Y);if(U.push(J),K.description)U.push(`-d '${Hk(K.description)}'`);$.push(U.join(" "))}}for(let K of j.subcommands)fj6(A,K,[...B,K.name],$)},hj6=(A,j)=>{let B=[];return B.push(`###-begin-${A}-completions-###`),B.push("#"),B.push("# Static completion script for Fish"),B.push("#"),B.push("# Installation:"),B.push(`# ${A} --completions fish > ~/.config/fish/completions/${A}.fish`),B.push("#"),B.push(""),fj6(A,j,[],B),B.push(""),B.push(`###-end-${A}-completions-###`),B.join(`
245
245
  `)};var wHA=(A)=>A.replace(/\\/g,"\\\\").replace(/'/g,"'\\''").replace(/:/g,"\\:"),ZaA=(A)=>A.replace(/[^a-zA-Z0-9_]/g,"_"),lh0=(A)=>{let j=[`--${A.name}`];for(let B of A.aliases)j.push(B.length===1?`-${B}`:`--${B}`);if(A.type._tag==="Boolean")j.push(`--no-${A.name}`);return j},ih0=(A)=>{switch(A._tag){case"Boolean":return"";case"Choice":return`:value:(${A.values.join(" ")})`;case"Path":return A.pathType==="directory"?":directory:_directories":":file:_files";case"Integer":return":integer:";case"Float":return":float:";case"Date":return":date:";default:return":value:"}},nh0=(A)=>{switch(A._tag){case"Choice":return`(${A.values.join(" ")})`;case"Path":return A.pathType==="directory"?"_directories":"_files";default:return""}},gj6=(A)=>{let j=[],B=A.description?`[${wHA(A.description)}]`:"",$=ih0(A.type),X=`(${lh0(A).join(" ")})`;j.push(`'${X}--${A.name}${B}${$}'`);for(let q of A.aliases){let Y=q.length===1?"-":"--";j.push(`'${X}${Y}${q}${B}${$}'`)}if(A.type._tag==="Boolean"){let q=A.description?`[${wHA(`Disable ${A.name}`)}]`:"";j.push(`'${X}--no-${A.name}${q}'`)}return j},mj6=(A)=>{let j=A.description?wHA(A.description):A.name,B=nh0(A.type);return`'${A.variadic?"*":""}:${j}:${B}'`},cj6=(A,j,B)=>{let $=[...j,A.name],X=`_${$.map(ZaA).join("_")}`;if(B.push(`${X}() {`),A.subcommands.length>0){B.push(" local context state state_descr line"),B.push(" typeset -A opt_args"),B.push(""),B.push(" local -a commands"),B.push(" commands=(");for(let q of A.subcommands){let Y=q.description?wHA(q.description):"";B.push(` '${q.name}:${Y}'`)}B.push(" )"),B.push(""),B.push(" local -a specs"),B.push(" specs=(");for(let q of A.flags)for(let Y of gj6(q))B.push(` ${Y}`);for(let q of A.arguments)B.push(` ${mj6(q)}`);B.push(" '1:command:->command'"),B.push(" '*::arg:->args'"),B.push(" )"),B.push(""),B.push(' _arguments -C "${specs[@]}"'),B.push(""),B.push(' case "$state" in'),B.push(" command)"),B.push(" _describe -t commands 'commands' commands"),B.push(" ;;"),B.push(" args)"),B.push(' case "$words[1]" in');for(let q of A.subcommands){let Y=`_${[...$,q.name].map(ZaA).join("_")}`;B.push(` ${q.name})`),B.push(` ${Y}`),B.push(" ;;")}B.push(" esac"),B.push(" ;;"),B.push(" esac")}else{let q=[];for(let Y of A.flags)q.push(...gj6(Y));for(let Y of A.arguments)q.push(mj6(Y));if(q.length>0){B.push(" local -a specs"),B.push(" specs=(");for(let Y of q)B.push(` ${Y}`);B.push(" )"),B.push(' _arguments "${specs[@]}"')}}B.push("}"),B.push("");for(let q of A.subcommands)cj6(q,$,B)},uj6=(A,j)=>{let B=[],$=ZaA(A);return B.push(`#compdef ${A}`),B.push(`###-begin-${A}-completions-###`),B.push("#"),B.push("# Static completion script for Zsh"),B.push("#"),B.push("# Installation:"),B.push(`# ${A} --completions zsh > ~/.zsh/completions/_${A}`),B.push("# then add ~/.zsh/completions to your fpath"),B.push("#"),B.push(""),cj6(j,[],B),B.push("# Handle both direct invocation and autoload"),B.push('if [[ "${zsh_eval_context[-1]}" == "loadautofunc" ]]; then'),B.push(` _${$} "$@"`),B.push("else"),B.push(` compdef _${$} ${A}`),B.push("fi"),B.push(`###-end-${A}-completions-###`),B.join(`
246
- `)};var dj6=(A,j,B)=>{switch(j){case"bash":return vj6(A,B);case"zsh":return uj6(A,B);case"fish":return hj6(A,B)}};var pj6=()=>{};var lj6="~effect/cli/Command/Config/Internal",FaA=(A)=>{let j=[],B=[],$=[];function X(Y){let E={};for(let K in Y)E[K]=q(Y[K]);return E}function q(Y){if(Array.isArray(Y))return{_tag:"Array",children:Y.map((E)=>q(E))};else if(pWA(Y)){let E=j.length;if(j.push(Y),Y.kind==="argument")$.push(Y);else B.push(Y);return{_tag:"Param",index:E}}else return{_tag:"Nested",tree:X(Y)}}return{[lj6]:lj6,flags:B,arguments:$,orderedParams:j,tree:X(A)}},ij6,VaA=(A,j)=>{let B={};for(let X in A)B[X]=$(A[X]);return B;function $(X){switch(X._tag){case"Param":return j[X.index];case"Array":return X.children.map((q)=>$(q));case"Nested":return VaA(X.tree,j)}}};var IaA=x(()=>{fD();ij6=FaA({})});var kAA="~effect/cli/Command",QX=(A)=>A,oh0,bAA=(A)=>{let j=A.config,B=A.contextConfig??ij6,$=A.service??G6(`${kAA}/${A.name}`),X=A.annotations??rB(),q=A.globalFlags??[],Y=A.subcommands??[],E=(Q,W)=>lB(A.handle)?A.handle(Q,W):sA(new aR({commandPath:W,errors:[]})),K=A.parse??OaA(j),J=A.parseContext??OaA(B),U=(Q)=>{let W=[],H=[];for(let O of j.arguments){let D=B5(O),w=YC(O);for(let M of D)W.push({name:M.name,type:M.typeName??$aA(M.primitiveType),description:M.description,required:!w.isOptional,variadic:w.isVariadic})}let Z=Q.length>0?Q.join(" "):A.name;if(Y.some((O)=>O.commands.some((D)=>!D.hidden)))Z+=" <subcommand>";Z+=" [flags]";for(let O of W){let D=O.variadic?`<${O.name}...>`:`<${O.name}>`;Z+=` ${O.required?D:`[${D}]`}`}for(let O of j.flags){let D=B5(O);for(let w of D){if(w.hidden)continue;H.push(DHA(w))}}let F=[];for(let O of Y){let D=O.commands.filter((w)=>!w.hidden);if(D.length===0)continue;F.push({group:O.group,commands:I5(D,(w)=>({name:w.name,alias:w.alias,shortDescription:w.shortDescription,description:w.description??""}))})}let V=A.examples??[];return{description:A.description??"",usage:Z,flags:H,annotations:X,...W.length>0&&{args:W},...F.length>0&&{subcommands:F},...V.length>0&&{examples:V}}};return Object.assign(Object.create(oh0),{[kAA]:kAA,name:A.name,examples:A.examples??[],annotations:X,globalFlags:q,subcommands:Y,hidden:A.hidden??!1,config:j,contextConfig:B,service:$,parse:K,parseContext:J,handle:E,buildHelpDoc:U,...lB(A.description)?{description:A.description}:{},...lB(A.shortDescription)?{shortDescription:A.shortDescription}:{},...lB(A.alias)?{alias:A.alias}:{}})},DHA=(A)=>{let j=A.aliases.map((B)=>B.length===1?`-${B}`:`--${B}`);return{name:A.name,aliases:j,type:A.typeName??$aA(A.primitiveType),description:sh0(A.description,LAA(A.primitiveType)),required:A.primitiveType._tag!=="Boolean"}},sh0=(A,j)=>{if(j===void 0||j.length===0)return A;let B=`(choices: ${j.join(", ")})`;return y8(A,{onNone:()=>uA(B),onSome:($)=>uA(`${$} ${B}`)})},OaA=(A)=>nj(function*(j){let B={flags:j.flags,arguments:j.arguments},$=yield*th0(B,A.orderedParams);return VaA(A.tree,$)}),th0,nj6=(A,j,B)=>{let $=QX(A),X=new Set;((Y)=>{for(let E of Y){let K=B5(E);for(let J of K)X.add(J.name)}})((B?.contextConfig??$.contextConfig).flags);for(let Y of j){let E=QX(Y);for(let K of E.config.flags){let J=B5(K);for(let U of J)if(X.has(U.name))throw new iQA({option:U.name,parentCommand:A.name,childCommand:Y.name})}}};var yAA=x(()=>{V1();$7();rj();yL();O7();y6();AAA();fD();RAA();IaA();oh0={...lE({label:"Command",evaluate(){return QX(this).service}})},th0=nj(function*(A,j){let B=[],$=A.arguments;for(let X of j){let[q,Y]=yield*X.parse({flags:A.flags,arguments:$});B.push(Y),$=q}return B})});var eh0=(A)=>{switch(A.primitiveType._tag){case"Boolean":return{_tag:"Boolean"};case"Integer":return{_tag:"Integer"};case"Float":return{_tag:"Float"};case"Date":return{_tag:"Date"};case"Choice":return{_tag:"Choice",values:LAA(A.primitiveType)??[]};case"Path":{let B=A.typeName;return{_tag:"Path",pathType:B==="file"?"file":B==="directory"?"directory":"either"}}default:return{_tag:"String"}}},Ag0=(A)=>{switch(A.primitiveType._tag){case"Integer":return{_tag:"Integer"};case"Float":return{_tag:"Float"};case"Date":return{_tag:"Date"};case"Choice":return{_tag:"Choice",values:LAA(A.primitiveType)??[]};case"Path":{let B=A.typeName;return{_tag:"Path",pathType:B==="file"?"file":B==="directory"?"directory":"either"}}default:return{_tag:"String"}}},waA=(A)=>{let B=QX(A).config,$=[];for(let Y of B.flags){let E=B5(Y);for(let K of E){if(K.kind!=="flag")continue;if(K.hidden)continue;$.push({name:K.name,aliases:K.aliases,description:Q1(K.description),type:eh0(K)})}}let X=[];for(let Y of B.arguments){let E=B5(Y),K=YC(Y);for(let J of E){if(J.kind!=="argument")continue;X.push({name:J.name,description:Q1(J.description),required:!K.isOptional,variadic:K.isVariadic,type:Ag0(J)})}}let q=[];for(let Y of A.subcommands)for(let E of Y.commands){if(E.hidden)continue;q.push(waA(E))}return{name:A.name,description:A.shortDescription??A.description,flags:$,arguments:X,subcommands:q}};var rj6=x(()=>{O7();fD();RAA();yAA()});var DaA=(A)=>{let j=new Set,B=[];for(let $ of A){if(j.has($))continue;j.add($),B.push($)}return B},aj6=(A,j)=>{let B=[A],$=A;for(let X=1;X<j.length;X++){let q=j[X],Y=void 0;for(let E of $.subcommands)if(Y=E.commands.find((K)=>K.name===q),Y)break;if(!Y)break;B.push(Y),$=Y}return B},MaA=(A,j,B)=>{let X=aj6(A,j).flatMap((q)=>QX(q).globalFlags);return DaA([...B,...X])},Bg0=(A)=>{let j=[],B=($)=>{let X=QX($);for(let q of X.globalFlags)j.push(q);for(let q of $.subcommands)for(let Y of q.commands)B(Y)};return B(A),DaA(j)},$g0=(A,j)=>{if(A.length<=1)return[];let B=new Set(j.map((X)=>X.name)),$=[];for(let X of A.slice(0,-1)){let q=QX(X);for(let Y of q.contextConfig.flags){let E=B5(Y);for(let K of E){if(B.has(K.name))continue;if(K.hidden)continue;B.add(K.name),$.push(DHA(K))}}}return $},oj6=(A,j)=>DaA([...j,...Bg0(A)]),MHA=(A,j,B)=>R6(function*(){let $=aj6(A,j),X=$.length>0?$[$.length-1]:A,q=QX(X).buildHelpDoc(j),Y=$g0($,q.flags),E=MaA(A,j,B),K=[];for(let J of E){let U=B5(J.flag);for(let Q of U){if(Q.hidden)continue;K.push({...DHA(Q),required:!1})}}return{...q,flags:[...Y,...q.flags],globalFlags:K}});var NaA=x(()=>{rj();fD();yAA()});var LaA=(A)=>({_tag:"Action",flag:A.flag,run:A.run}),qg0=(A)=>(j)=>{sj6+=1;let B=G6(`effect/unstable/cli/GlobalFlag/${A}/${sj6}`);return Object.assign(B,{_tag:"Setting",id:A,flag:j.flag})},sj6=0,Yg0,Gg0,Eg0,NHA,vAA;var tj6=x(()=>{QaA();$7();rj();O7();WaA();pj6();JaA();rj6();NaA();Yg0=LaA({flag:ZHA("help").pipe(FHA("h"),bc("Show help information")),run:(A,{command:j,commandPath:B})=>R6(function*(){let $=yield*SAA,X=yield*MHA(j,B,vAA);yield*yc($.formatHelpDoc(X))})}),Gg0=LaA({flag:ZHA("version").pipe(FHA("v"),bc("Show version information")),run:(A,{command:j,version:B})=>R6(function*(){let $=yield*SAA;yield*yc($.formatVersion(j.name,B))})}),Eg0=LaA({flag:EaA("completions",["bash","zsh","fish","sh"]).pipe(IHA,KaA((A)=>X4(A,(j)=>j==="sh"?"bash":j)),VHA("<bash|zsh|fish|sh>"),bc("Print shell completion script")),run:(A,{command:j})=>R6(function*(){if(E7(A))return;let B=waA(j);yield*yc(dj6(j.name,A.value,B))})}),NHA=qg0("log-level")({flag:GaA("log-level",[["all","All"],["trace","Trace"],["debug","Debug"],["info","Info"],["warn","Warn"],["warning","Warn"],["error","Error"],["fatal","Fatal"],["none","None"]]).pipe(IHA,bc("Sets the minimum log level"),VHA("<all|trace|debug|info|warn|warning|error|fatal|none>"))}),vAA=[Yg0,Gg0,Eg0,NHA]});function A66(A){let j=A.indexOf("--");if(j===-1)return{tokens:ej6(A),trailingOperands:[]};return{tokens:ej6(A.slice(0,j)),trailingOperands:A.slice(j+1)}}var ej6=(A)=>{let j=[];for(let B of A)if(!B.startsWith("-"))j.push({_tag:"Value",value:B});else if(B.startsWith("--")){let[$,X]=B.slice(2).split("=",2);j.push({_tag:"LongOption",name:$,raw:B,value:X})}else if(B.length>1){let $=B.slice(1),X=$.indexOf("=");if(X!==-1){let q=$.slice(0,X),Y=$.slice(X+1);j.push({_tag:"ShortOption",flag:q,raw:`-${q}`,value:Y})}else for(let q of $)j.push({_tag:"ShortOption",flag:q,raw:`-${q}`})}else j.push({_tag:"Value",value:B});return j};var Ug0=(A,j)=>{let B=A.length,$=j.length,X=Array.from({length:B+1},()=>Array($+1).fill(0));for(let q=0;q<=B;q++)X[q][0]=q;for(let q=0;q<=$;q++)X[0][q]=q;for(let q=1;q<=B;q++)for(let Y=1;Y<=$;Y++){let E=A[q-1]===j[Y-1]?0:1;X[q][Y]=Math.min(X[q-1][Y]+1,X[q][Y-1]+1,X[q-1][Y-1]+E)}return X[B][$]},RaA=(A,j)=>{let B=j.map((X)=>[Ug0(A,X),X]).filter(([X])=>X<=2).sort(([X],[q])=>X-q);if(B.length===0)return[];let $=B[0][0];return B.filter(([X])=>X===$).map(([,X])=>X)};var _aA=(A)=>y8(A.subcommand,{onNone:()=>[],onSome:(j)=>[j.name,..._aA(j.parsedInput)]}),xaA=(A,j,B=[])=>R6(function*(){let{tokens:$,trailingOperands:X}=A,q=[...B,j.name],Y=QX(j),K=Y.config.flags.flatMap(B5).filter(GC),J=fc(K),Q=Y.contextConfig.flags.flatMap(B5).filter(GC),W=fc(Q),H=new Set(Q.map((w)=>w.name)),Z={command:j,commandPath:q,flagRegistry:J,inheritedFlagRegistry:W,localFlagNames:K.filter((w)=>!H.has(w.name)).map((w)=>w.name)},F=Mg0($,Z);if(F._tag==="Leaf")return{flags:F.flags,arguments:[...F.arguments,...X],subcommand:Qj(),...F.errors.length>0&&{errors:F.errors}};let V={tokens:F.childTokens,trailingOperands:[]},O=yield*xaA(V,F.sub,q),D=[...F.errors,...O.errors??[]];return{flags:F.flags,arguments:X,subcommand:uA({name:F.sub.name,parsedInput:O}),...D.length>0&&{errors:D}}}),LHA=(A)=>{let j=0;return{peek:()=>A[j],take:()=>A[j++],rest:()=>A.slice(j)}},fc=(A)=>{let j=new Map;for(let B of A){if(j.has(B.name))throw Error(`Duplicate flag name "${B.name}" in command definition`);j.set(B.name,B);for(let $ of B.aliases){if(j.has($))throw Error(`Duplicate flag/alias "${$}" in command definition (conflicts with "${j.get($).name}")`);j.set($,B)}}return{params:A,index:j}},$66=(A)=>{let j=new Map,B=($,X)=>{let q=j.get($);if(q&&q!==X)throw Error(`Duplicate subcommand name/alias "${$}" in command definition (conflicts with "${q.name}")`);j.set($,X)};for(let $ of A)for(let X of $.commands)if(B(X.name,X),X.alias&&X.alias!==X.name)B(X.alias,X);return j},PaA=(A)=>Object.fromEntries(A.map((j)=>[j.name,[]])),Qg0=(A)=>{let j=PaA(A);return{add:(B,$)=>{if($!==void 0)j[B].push($)},merge:(B)=>{for(let $ in B){let X=B[$];if(X?.length)for(let q=0;q<X.length;q++)j[$].push(X[q])}},snapshot:()=>j}},RHA=(A)=>A._tag==="LongOption"||A._tag==="ShortOption",X66=(A)=>A._tag==="LongOption"?A.name:A.flag,vc=(A,j)=>{let B=X66(A),$=j.index.get(B);if($&&$.name===B)return{param:$,negated:!1};if(A._tag==="LongOption"&&A.name.startsWith("no-")){let X=A.name.slice(3),q=j.index.get(X);if(q&&q.name===X&&Ek(q.primitiveType))return{param:q,negated:!0}}if($)return{param:$,negated:!1};return},j66=(A,j,B)=>new JK({option:j.name,value:B,expected:`omit the value and use ${A.raw} by itself to set --${j.name} to false`,kind:"flag"}),B66=(A)=>A?._tag==="Value"&&(Xj6(A.value)||qj6(A.value))?A.value:void 0,q66=(A,j,B,$=!1)=>{let X=fAA(A,j,B,$);switch(X._tag){case"Value":return{_tag:"Value",value:X.value};case"Error":return{_tag:"Error",error:X.error}}},fAA=(A,j,B,$=!1)=>{if($){if(j.value!==void 0)return{_tag:"Error",error:j66(j,B,j.value),tokens:[]};let q=B66(A.peek());if(q!==void 0){let Y=A.take();return{_tag:"Error",error:j66(j,B,q),tokens:Y===void 0?[]:[Y]}}return{_tag:"Value",value:"false",tokens:[]}}if(j.value!==void 0)return{_tag:"Value",value:j.value,tokens:[]};if(Ek(B.primitiveType)){let q=B66(A.peek()),Y=q!==void 0?A.take():void 0;return{_tag:"Value",value:q??"true",tokens:Y===void 0?[]:[Y]}}let X=A.peek();if(X?._tag==="Value"){let q=A.take();return{_tag:"Value",value:X.value,tokens:q===void 0?[]:[q]}}return{_tag:"Value",value:void 0,tokens:[]}},Wg0=(A,j)=>{let B=PaA(j.params),$=[],X=[],q=LHA(A);for(let Y=q.take();Y;Y=q.take()){if(!RHA(Y)){$.push(Y);continue}let E=vc(Y,j);if(!E){$.push(Y);continue}let K=q66(q,Y,E.param,E.negated);if(K._tag==="Error"){X.push(K.error);continue}if(K.value!==void 0)B[E.param.name].push(K.value)}return{flagMap:B,remainder:$,errors:X}},Hg0=(A)=>{return QX(A).config.flags.flatMap(B5).filter(GC)},zg0=(A)=>{return QX(A).contextConfig.flags.flatMap(B5).filter(GC)},Y66=(A,j)=>{for(let B of j){let $=vc(A,B);if($!==void 0)return $}return},CaA=(A,j,B,$)=>{A.push(B);let X=fAA(j,B,$.param,$.negated);A.push(...X.tokens)},Zg0=(A,j,B,$,X)=>{let q=LHA(j);fAA(q,A,B.param,B.negated);for(let Y=q.take();Y;Y=q.take()){if(RHA(Y)){let E=Y66(Y,X);if(E!==void 0)fAA(q,Y,E.param,E.negated);continue}if(Y._tag==="Value")return $.has(Y.value)}return!1},G66=(A,j,B)=>{let $=PaA(B.params),X=[],q=(Y,E,K)=>{let J=fc(Hg0(E)),U=fc(zg0(E)),Q=$66(E.subcommands),W=LHA(Y),H=[],Z=!0;for(let F=W.take();F;F=W.take()){if(RHA(F)){let V=Y66(F,K);if(V!==void 0){CaA(H,W,F,V);continue}let O=vc(F,U);if(O!==void 0){CaA(H,W,F,O);continue}let D=vc(F,J),w=vc(F,B);if(D!==void 0){if(w===void 0||!Z||!Zg0(F,W.rest(),D,Q,[J,U,B])){CaA(H,W,F,D);continue}}if(w!==void 0){let M=fAA(W,F,w.param,w.negated);if(M._tag==="Error"){X.push(M.error);continue}if(M.value!==void 0)$[w.param.name].push(M.value);continue}H.push(F);continue}if(F._tag==="Value"&&Z){let V=Q.get(F.value);if(V!==void 0)return H.push(F),H.push(...q(W.rest(),V,[...K,U])),H;Z=!1}H.push(F)}return H};return{flagMap:$,remainder:q(A,j,[]),errors:X}},Fg0=(A,j,B)=>{let $=A._tag==="LongOption"?`--${A.name}`:`-${A.flag}`,X=[];for(let Y of j){if(Y.hidden)continue;if(X.push(Y.name),Ek(Y.primitiveType))X.push(`no-${Y.name}`);for(let E of Y.aliases)X.push(E)}let q=RaA(X66(A),X).map((Y)=>Y.length===1?`-${Y}`:`--${Y}`);return new Ak({option:$,suggestions:q,command:B})},Vg0=(A)=>({flags:Qg0(A.params),arguments:[],errors:[],mode:{_tag:"AwaitingFirstValue"}}),Ig0=(A)=>({_tag:"Leaf",flags:A.flags.snapshot(),arguments:A.arguments,errors:A.errors}),Og0=(A,j,B,$)=>{let{command:X,commandPath:q,inheritedFlagRegistry:Y,localFlagNames:E}=B,K=$66(X.subcommands),J=K.get(A);if(J){let Q=[...q,J.name],W=$.flags.snapshot();for(let Z of E){let F=W[Z];if(F!==void 0&&F.length>0)$.errors.push(new Ak({option:`--${Z}`,suggestions:[],command:Q}))}let H=Wg0(j.rest(),Y);return $.flags.merge(H.flagMap),$.errors.push(...H.errors),{_tag:"Subcommand",result:{_tag:"Sub",flags:$.flags.snapshot(),sub:J,childTokens:H.remainder,errors:$.errors}}}if(!(QX(X).config.arguments.length>0)&&K.size>0){let Q=[];for(let[H,Z]of K)if(!Z.hidden)Q.push(H);let W=RaA(A,Q);$.errors.push(new rQA({subcommand:A,parent:q,suggestions:W}))}return{_tag:"Argument"}},wg0=(A,j,B,$)=>{let{commandPath:X,flagRegistry:q}=B,Y=vc(A,q);if(!Y){$.errors.push(Fg0(A,q.params,X));return}let E=q66(j,A,Y.param,Y.negated);if(E._tag==="Error"){$.errors.push(E.error);return}$.flags.add(Y.param.name,E.value)},Dg0=(A,j,B,$)=>{if($.mode._tag==="AwaitingFirstValue"){let X=Og0(A,j,B,$);if(X._tag==="Subcommand")return X.result;$.mode={_tag:"CollectingArguments"}}$.arguments.push(A);return},Mg0=(A,j)=>{let B=LHA(A),$=Vg0(j.flagRegistry);for(let X=B.take();X;X=B.take()){if(RHA(X)){wg0(X,B,j,$);continue}if(X._tag==="Value"){let q=Dg0(X.value,B,j,$);if(q)return q}}return Ig0($)};var E66=x(()=>{rj();O7();AAA();fD();RAA();yAA()});var Lg0=(A)=>Gj(A,kAA),K66=(A,j,B)=>{let $=FaA(j??{});return bAA({name:A,config:$,...lB(B)?{handle:B}:{}})},J66,Rg0=(A)=>{let j=[],B=new Map,$=(Y,E)=>{j.push(E);let K=B.get(Y);if(K)K.push(E);else B.set(Y,[E])};for(let Y of A){if(Lg0(Y)){$(void 0,Y);continue}for(let E of Y.commands)$(Y.group,E)}let X=[],q=B.get(void 0);if(q&&q.length>0)X.push({group:void 0,commands:q});for(let[Y,E]of B){if(Y===void 0)continue;X.push({group:Y,commands:E})}return{flat:j,groups:X}},U66,Q66,Cg0=(A,j,B,$)=>{let X=new Set(j),q=[],Y=new Set;for(let E of A){if(X.has(E))continue;let K=B5(E.flag);for(let J of K){let U=B[J.name];if(!U||U.length===0)continue;let Q=`--${J.name}`;if(Y.has(Q))continue;Y.add(Q),q.push(new Ak({option:Q,suggestions:[],command:$}))}}return q},_g0=(A,j)=>R6(function*(){let B=yield*SAA,$=yield*MHA(A,j.commandPath,vAA);if(yield*yc(B.formatHelpDoc($)),j.errors.length>0)yield*_j6(B.formatErrors(j.errors))}),W66,xg0=(A,j)=>{let B=QX(A);return nj(function*($){let{tokens:X,trailingOperands:q}=A66($),Y=oj6(A,vAA),E=Y.flatMap((_)=>B5(_.flag)),K=fc(E.filter(GC)),{flagMap:J,remainder:U,errors:Q}=G66(X,A,K),W={flags:J,arguments:[]},H=yield*xaA({tokens:U,trailingOperands:q},A),Z=[A.name,..._aA(H)],F={command:A,commandPath:Z,version:j.version},V=MaA(A,Z,vAA),O=Cg0(Y,V,J,Z);if(O.length>0||Q.length>0){let _=H.errors??[];return yield*new aR({commandPath:Z,errors:[...Q,...O,..._]})}for(let _ of V){if(_._tag!=="Action")continue;if(!B5(_.flag).some((y)=>{let T=J[y.name];return T!==void 0&&T.length>0}))continue;let[,N]=yield*_.flag.parse(W);yield*_.run(N,F);return}if(H.errors&&H.errors.length>0)return yield*new aR({commandPath:Z,errors:H.errors});let D=yield*ds(B.parse(H));if(D._tag==="Failure")return yield*new aR({commandPath:Z,errors:[D.failure]});let w=B.handle(D.success,[A.name]);for(let _ of V){if(_._tag!=="Setting")continue;let[,L]=yield*_.flag.parse(W);w=t9(w,_,L)}let[,M]=yield*NHA.flag.parse(W);w=t9(w,NHA,M);let R=y8(M,{onNone:()=>rB(),onSome:(_)=>kQ(wmA,_)});yield*i4(w,R)},WR(($)=>ktj($)&&$._tag==="ShowHelp"?B6($):U6($),($)=>O1(_g0(A,$),sA($))),WR(($)=>Wtj($)?B6($):U6($),($)=>q2))};var TaA=x(()=>{QaA();$7();rj();lj();O7();y6();zz();q4();$lA();vQA();AAA();WaA();tj6();yAA();IaA();NaA();E66();fD();J66=h(2,(A,j)=>bAA({...QX(A),handle:j})),U66=h(2,(A,j)=>{let B=Rg0(j);nj6(A,B.flat);let $=QX(A),X=new Map(B.flat.map((K)=>[K.name,QX(K)])),q=Symbol("effect/cli/SubcommandState"),Y=nj(function*(K){if(E7(K.subcommand))return yield*$.parse(K);let J=X.get(K.subcommand.value.name);if(!J)return yield*$.parse(K);let U=yield*$.parseContext(K),Q=yield*J.parse(K.subcommand.value.parsedInput);return Object.assign({},U,{[q]:{name:J.name,result:Q}})}),E=nj(function*(K,J){let Q=K[q];if(Q){let W=X.get(Q.name);if(!W)return yield*new aR({commandPath:J,errors:[]});return yield*W.handle(Q.result,[...J,W.name]).pipe(t9($.service,K))}return yield*$.handle(K,J)});return bAA({name:$.name,config:$.config,contextConfig:$.contextConfig,description:$.description,shortDescription:$.shortDescription,alias:$.alias,annotations:$.annotations,globalFlags:$.globalFlags,examples:$.examples,service:$.service,subcommands:B.groups,parse:Y,parseContext:$.parseContext,handle:E})}),Q66=h(2,(A,j)=>bAA({...QX(A),description:j})),W66=h(2,(A,j)=>OUA.use(({args:B})=>bA(B,($)=>xg0(A,j)($))))});var r7={};wA(r7,{make:()=>Pg0,Spec:()=>r7});function Pg0(A,j={}){let B=K66(A,j.params??{}),$=j.description?B.pipe(Q66(j.description)):B;return{name:A,spec:$,commands:Object.fromEntries((j.commands??[]).map((X)=>[X.name,X]))}}var CHA=x(()=>{TaA();CHA()});var oX;var _HA=x(()=>{UaA();CHA();oX=r7.make("openfork",{description:"OpenFork \u2014 AI development CLI with Raccoon features",commands:[r7.make("bench",{description:"Run benchmark suites",params:{suite:F7.string("suite").pipe(F7.withDefault("smoke"),F7.withAlias("s")),all:F7.boolean("all").pipe(F7.withDefault(!1),F7.withAlias("a"))}}),r7.make("cron",{description:"Manage cron jobs",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("memory",{description:"Manage structured memory",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("goal",{description:"Manage session goals",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("veriloop",{description:"Run verification loop",params:{task:tj.string("task").pipe(tj.variadic,tj.optional)}}),r7.make("scope",{description:"Generate scope guard report",params:{sessionId:tj.string("session-id").pipe(tj.optional)}}),r7.make("config",{description:"Show or manage configuration",params:{sub:tj.string("subcommand").pipe(tj.optional)}}),r7.make("session",{description:"Session operations",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("git",{description:"Show git context"}),r7.make("share",{description:"Start/stop sharing server",params:{sub:tj.string("subcommand").pipe(tj.optional),port:F7.integer("port").pipe(F7.optional,F7.withAlias("p"))}}),r7.make("remote",{description:"Remote access via Tailscale",params:{sub:tj.string("subcommand").pipe(tj.optional),port:F7.integer("port").pipe(F7.withDefault(8787),F7.withAlias("p")),tailscale:F7.boolean("tailscale").pipe(F7.withDefault(!1))}}),r7.make("mcp",{description:"MCP server management",params:{sub:tj.string("subcommand").pipe(tj.optional),preset:tj.string("preset").pipe(tj.optional)}}),r7.make("worktree",{description:"Git worktree management",params:{sub:tj.string("subcommand").pipe(tj.optional),path:tj.string("path").pipe(tj.optional)}}),r7.make("backends",{description:"Agent backends management",params:{sub:tj.string("subcommand").pipe(tj.optional),type:tj.string("type").pipe(tj.optional)}}),r7.make("serve",{description:"Start the API server",params:{hostname:F7.string("hostname").pipe(F7.withDefault("127.0.0.1")),port:F7.integer("port").pipe(F7.optional),register:F7.boolean("register").pipe(F7.withDefault(!1))}}),r7.make("service",{description:"Manage the background server",commands:[r7.make("start",{description:"Start the background server"}),r7.make("restart",{description:"Restart the background server"}),r7.make("status",{description:"Show background server status"}),r7.make("stop",{description:"Stop the background server"}),r7.make("password",{description:"Get or set the server password",params:{value:tj.string("value").pipe(tj.optional)}})]}),r7.make("api",{description:"Make a request to the running server",params:{request:tj.string("operation | method path").pipe(tj.withDescription("OpenAPI operation ID, or an HTTP method followed by a path"),tj.variadic({min:1,max:2})),data:F7.string("data").pipe(F7.withAlias("d"),F7.withDescription("Request body"),F7.optional),header:F7.string("header").pipe(F7.withAlias("H"),F7.withDescription("Request header in name:value form"),F7.atMost(100)),param:F7.keyValuePair("param").pipe(F7.withDescription("OpenAPI path or query parameter"),F7.optional)}}),r7.make("migrate",{description:"Migrate v1 data to v2"}),r7.make("debug",{description:"Debugging and troubleshooting tools",commands:[r7.make("agents",{description:"List all agents"})]})]})});var oB={};wA(oB,{run:()=>kg0,handlers:()=>Sg0,handler:()=>Tg0,Runtime:()=>oB});function Tg0(A,j){return j}function Sg0(A,j){let B=[];function $(X,q){if(typeof q==="function"){B.push({spec:X.spec,load:q});return}if(q.$)B.push({spec:X.spec,load:q.$});for(let[Y,E]of Object.entries(X.commands))$(E,q[Y])}return $(A,j),B}function kg0(A,j,B){return W66(z66(A,j),B)}function z66(A,j){let B=j.find((X)=>X.spec===A.spec),$=B?A.spec.pipe(J66((X)=>R6(function*(){yield*bA(sY(B.load),(q)=>q.default(X))}))):A.spec;if(!Object.keys(A.commands).length)return $;return $.pipe(U66(Object.values(A.commands).map((X)=>z66(X,j))))}var QK=x(async()=>{rj();TaA();await QK()});import bg0 from"os";import THA from"path";var KC,zk,xHA,PHA,Z66,F66,kn1,yg0,vg0;var V66=x(()=>{KC=bg0.homedir(),{env:zk}=process,xHA=zk.XDG_DATA_HOME||(KC?THA.join(KC,".local","share"):void 0),PHA=zk.XDG_CONFIG_HOME||(KC?THA.join(KC,".config"):void 0),Z66=zk.XDG_STATE_HOME||(KC?THA.join(KC,".local","state"):void 0),F66=zk.XDG_CACHE_HOME||(KC?THA.join(KC,".cache"):void 0),kn1=zk.XDG_RUNTIME_DIR||void 0,yg0=(zk.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");if(xHA)yg0.unshift(xHA);vg0=(zk.XDG_CONFIG_DIRS||"/etc/xdg").split(":");if(PHA)vg0.unshift(PHA)});var hc={};wA(hc,{values:()=>og0,size:()=>rg0,set:()=>ug0,refresh:()=>ig0,makeWith:()=>O66,make:()=>fg0,keys:()=>ag0,invalidateWhen:()=>lg0,invalidateAll:()=>ng0,invalidate:()=>pg0,has:()=>dg0,getSuccess:()=>cg0,getOption:()=>mg0,get:()=>gg0,entries:()=>M66});var I66="~effect/Cache",O66=(A,j)=>KV((B)=>{let $=Object.create(hg0);return $.lookup=(X)=>vT(A(X),(q)=>F5(B,q)),$.map=Ldj(),$.capacity=j.capacity,$.timeToLive=j.timeToLive?(X,q)=>M0(j.timeToLive(X,q)):w66,hj($)}),fg0=(A)=>O66(A.lookup,{...A,timeToLive:A.timeToLive?()=>A.timeToLive:w66}),hg0,w66=(A,j)=>O5,gg0,D66=(A,j)=>{if(A.expiresAt===void 0)return!1;return j.getRef(YX).currentTimeMillisUnsafe()>=A.expiresAt},SaA=(A)=>{let j=at(A.map)-A.capacity;if(j<=0)return;for(let[B]of A.map)if(YY(A.map,B),j--,j===0)return},mg0,hAA=(A,j,B,$=!0)=>{let X=qW(A.map,j);if(E7(X))return;else if(D66(X.value,B)){YY(A.map,j);return}else if($)YY(A.map,j),PJ(A.map,j,X.value);return X.value},cg0,ug0,dg0,pg0,lg0,ig0,ng0=(A)=>t6(()=>{nm(A.map)}),rg0=(A)=>t6(()=>at(A.map)),ag0=(A)=>J7((j)=>{let B=j.getRef(YX).currentTimeMillisUnsafe();return hj(_hA(A.map,([$,X])=>{if(X.expiresAt===void 0||X.expiresAt>B)return B6($);return YY(A.map,$),bg}))}),og0=(A)=>T7(M66(A),eSj(([,j])=>j)),M66=(A)=>J7((j)=>{let B=j.getRef(YX).currentTimeMillisUnsafe();return hj(_hA(A.map,([$,X])=>{if(X.expiresAt===void 0||X.expiresAt>B){let q=X.deferred.effect;return!Po(q)||Qs(q)?bg:B6([$,q.value])}return YY(A.map,$),bg}))});var N66=x(()=>{$7();QV();wq();lj();F1();F1();i1();xT();iJA();O7();q4();hg0={...K9,[I66]:I66,toJSON(){return{_id:"Cache",capacity:this.capacity,map:this.map}}},gg0=h(2,(A,j)=>J7((B)=>{let $=qW(A.map,j);if(P7($)&&!D66($.value,B))return YY(A.map,j),PJ(A.map,j,$.value),u4($.value.deferred);let X=GX(),q={expiresAt:void 0,deferred:X};if(PJ(A.map,j,q),Number.isFinite(A.capacity))SaA(A);return Mq(A.lookup(j),(Y)=>{EX(X,Y);let E=A.timeToLive(Y,j);if(IJ(E))q.expiresAt=B.getRef(YX).currentTimeMillisUnsafe()+p1(E);else if(OJ(E))YY(A.map,j);return N0})})),mg0=h(2,(A,j)=>J7((B)=>{let $=hAA(A,j,B);return $?AR(u4($.deferred)):kw})),cg0=h(2,(A,j)=>J7((B)=>{let $=hAA(A,j,B)?.deferred.effect;if($&&bw($))return Js($.value);return kw})),ug0=h(3,(A,j,B)=>J7(($)=>{let X=a8(B),q=GX();EX(q,X);let Y=A.timeToLive(X,j);if(OJ(Y))return YY(A.map,j),N0;return PJ(A.map,j,{deferred:q,expiresAt:IJ(Y)?$.getRef(YX).currentTimeMillisUnsafe()+p1(Y):void 0}),SaA(A),N0})),dg0=h(2,(A,j)=>J7((B)=>{let $=hAA(A,j,B,!1);return hj($!==void 0)})),pg0=h(2,(A,j)=>t6(()=>{YY(A.map,j)})),lg0=h(3,(A,j,B)=>J7(($)=>{let X=hAA(A,j,$,!1);if(X===void 0)return hj(!1);return u4(X.deferred).pipe(T7((q)=>{if(B(q))return YY(A.map,j),!0;return!1}),tG(()=>hj(!1)))})),ig0=h(2,(A,j)=>J7((B)=>{let $=GX(),X={expiresAt:void 0,deferred:$},q=hAA(A,j,B,!1)!==void 0;if(!q)PJ(A.map,j,X),SaA(A);return Mq(A.lookup(j),(Y)=>{EX($,Y);let E=A.timeToLive(Y,j);if(OJ(E))return YY(A.map,j),N0;if(X.expiresAt=IJ(E)?B.getRef(YX).currentTimeMillisUnsafe()+p1(E):void 0,q)PJ(A.map,j,X);return N0})}))});var mJ={};wA(mJ,{size:()=>Xm0,runtimePromise:()=>_66,runtime:()=>mAA,run:()=>C66,makeRuntimePromise:()=>Am0,makeRuntime:()=>eg0,make:()=>gAA,join:()=>kHA,isFiberSet:()=>baA,clear:()=>$m0,awaitEmpty:()=>qm0,addUnsafe:()=>SHA,add:()=>Bm0});var kaA="~effect/FiberSet",baA=(A)=>Gj(A,kaA),sg0,tg0=(A,j)=>{let B=Object.create(sg0);return B.state={_tag:"Open",backing:A},B.deferred=j,B},gAA=()=>G4(Hj(()=>tg0(new Set,GX())),(A)=>yj(()=>{let j=A.state;if(j._tag==="Closed")return xj;A.state={_tag:"Closed"};let B=j.backing;return wdA(B).pipe(hEA(A.deferred))})),eg0=()=>bA(gAA(),(A)=>mAA(A)()),Am0=()=>bA(gAA(),(A)=>_66(A)()),yaA=-1,jm0,SHA,Bm0,$m0=(A)=>yj(()=>{if(A.state._tag==="Closed")return xj;return DdA(A.state.backing,yaA)}),R66,C66=function(){let A=arguments[0];if(!D8(arguments[1])){let j=arguments[1];return(B)=>L66(A,B,j)}return L66(A,arguments[1],arguments[2])},L66=(A,j,B)=>r0(($)=>{if(A.state._tag==="Closed")return Hj(R66);let X=I$($.context)(j);return SHA(A,X,B),LA(X)}),mAA=(A)=>()=>iA(l4(),(j)=>{let B=I$(j);return($,X)=>{if(A.state._tag==="Closed")return R66();let q=B($,X);return SHA(A,q),q}}),_66=(A)=>()=>iA(mAA(A)(),(j)=>(B,$)=>new Promise((X,q)=>j(B,$).addObserver((Y)=>{if(a9(Y))X(Y.value);else q(V3(Y.cause))}))),Xm0=(A)=>Hj(()=>A.state._tag==="Closed"?0:A.state.backing.size),kHA=(A)=>u4(A.deferred),qm0=(A)=>w3({while:()=>A.state._tag==="Open"&&A.state.backing.size>0,body:()=>kt(b3A(A)),step:z$});var vaA=x(()=>{c4();QV();rj();o9();K2();o3A();lj();F1();xT();y6();sg0={[kaA]:kaA,[Symbol.iterator](){if(this.state._tag==="Closed")return tSj();return this.state.backing[Symbol.iterator]()},...K9,toJSON(){return{_id:"FiberMap",state:this.state}}},jm0=Bbj(Xbj(UmA,$bj(yaA))),SHA=h((A)=>baA(A[0]),(A,j,B)=>{if(A.state._tag==="Closed"){j.interruptUnsafe(yaA);return}else if(A.state.backing.has(j))return;A.state.backing.add(j),j.addObserver(($)=>{if(A.state._tag==="Closed")return;if(A.state.backing.delete(j),uw($)&&(B?.propagateInterruption===!0?!jm0($.cause):!$R($.cause)))EX(A.deferred,$)})}),Bm0=h((A)=>baA(A[0]),(A,j,B)=>Hj(()=>SHA(A,j,B))),R66=function(){let A=void 0;return()=>{if(A===void 0)A=jY(q2);return A}}()});var bHA={};wA(bHA,{make:()=>faA,fromRecord:()=>P66,Service:()=>Ym0});var x66="~effect/LayerMap",faA,P66=(A,j)=>faA((B)=>A[B],{...j,preloadKeys:j?.preload?Object.keys(A):void 0}),Ym0=()=>(A,j)=>{let B=globalThis.Error,$=B.stackTraceLimit;B.stackTraceLimit=2;let X=new B;B.stackTraceLimit=$;function q(){}let Y=q;return Object.setPrototypeOf(q,Object.getPrototypeOf(G6(A))),q.key=A,Object.defineProperty(q,"stack",{get(){return X.stack}}),Y.layerNoDeps=g0(Y)("lookup"in j?faA(j.lookup,j):P66(j.layers,j)),Y.layer=j.dependencies&&j.dependencies.length>0?O4(Y.layerNoDeps,j.dependencies):Y.layerNoDeps,Y.get=(E)=>Zz(iA(Y,(K)=>K.get(E))),Y.contextEffect=(E)=>bA(Y,(K)=>K.contextEffect(E)),Y.invalidate=(E)=>bA(Y,(K)=>K.invalidate(E)),q};var T66=x(()=>{$7();rj();lj();aB();UpA();V$();faA=nj(function*(A,j){let B=yield*l4(),$=zV.getOrCreate(B),X=yield*nJA({lookup:(q)=>N5((Y)=>I3(A(q),$,e7(Y,j1))),idleTimeToLive:j?.idleTimeToLive});return Tj({[x66]:x66,rcMap:X,get:(q)=>dQ(rm(X,q)),contextEffect:(q)=>rm(X,q),invalidate:(q)=>_dj(X,q)})})});var az={};wA(az,{withLeveledConsole:()=>Jm0,withConsoleLog:()=>yHA,withConsoleError:()=>Km0,tracerLogger:()=>Im0,toFile:()=>Om0,map:()=>b66,make:()=>cAA,layer:()=>uAA,isLogger:()=>S66,formatStructured:()=>haA,formatSimple:()=>Hm0,formatLogFmt:()=>f66,formatJson:()=>h66,defaultLogger:()=>Wm0,consoleStructured:()=>Fm0,consolePretty:()=>zm0,consoleLogFmt:()=>Zm0,consoleJson:()=>Vm0,batched:()=>g66,LogToStderr:()=>Em0,CurrentLoggers:()=>k66});var Gm0="~effect/Logger",S66=(A)=>Gj(A,Gm0),k66,Em0,b66,yHA=(A)=>sE((j)=>{return j.fiber.getRef(mw).log(A.log(j))}),Km0=(A)=>sE((j)=>{return j.fiber.getRef(mw).error(A.log(j))}),Jm0=(A)=>sE((j)=>{let B=j.fiber.getRef(mw),$=A.log(j);switch(j.logLevel){case"Debug":return B.debug($);case"Info":return B.info($);case"Trace":return B.trace($);case"Warn":return B.warn($);case"Error":case"Fatal":return B.error($);default:return B.log($)}}),Um0,Qm0=(A)=>`"${A.replace(/\\([\s\S])|(")/g,"\\$1$2")}"`,y66=(A)=>`#${A}`,v66=(A,j)=>({cause:B,date:$,fiber:X,logLevel:q,message:Y})=>{let E=(V)=>typeof V==="string"?V:G7(V,{space:j}),K=(V)=>V.match(Um0)?V:A(V),J=(V,O)=>`${$mA(V)}=${K(O)}`,U=(V,O)=>" "+J(V,O),Q=J("timestamp",$.toISOString());Q+=U("level",q),Q+=U("fiber",y66(X.id));let W=aE(Y);for(let V=0;V<W.length;V++)Q+=U("message",E(W[V]));if(B.reasons.length>0)Q+=U("cause",Tw(B));let H=$.getTime(),Z=X.getRef(HV);for(let V of Z)Q+=" "+Os(V,H);let F=X.getRef(WV);for(let[V,O]of Object.entries(F))Q+=U(V,E(O));return Q},cAA,Wm0,Hm0,f66,haA,h66,g66,zm0,Zm0,Fm0,Vm0,Im0,uAA=(A,j)=>g0(k66,J7(Us(function*(B){let $=new Set(j?.mergeWithExisting===!0?B.getRef(BR):[]);for(let X of A)$.add(W0(X)?yield*X:X);return $}))),Om0;var vHA=x(()=>{V1();fz();z5();lj();F1();i1();aB();y6();zz();k66=BR,Em0=Xm,b66=h(2,(A,j)=>sE((B)=>j(A.log(B)))),Um0=/^[^\s"=]*$/,cAA=sE,Wm0=XmA,Hm0=sE(v66(Qm0)),f66=sE(v66(JSON.stringify,0)),haA=sE(({cause:A,date:j,fiber:B,logLevel:$,message:X})=>{let q={},Y={},E=B.getRef(WV);for(let[Q,W]of Object.entries(E))q[Q]=qm(W);let K=j.getTime(),J=B.getRef(HV);for(let[Q,W]of J)Y[Q]=K-W;let U=aE(X);return{message:U.length===1?qm(U[0]):U.map(qm),level:$.toUpperCase(),timestamp:j.toISOString(),cause:A.reasons.length>0?Tw(A):void 0,annotations:q,spans:Y,fiberId:y66(B.id)}}),h66=b66(haA,sF),g66=h(2,(A,j)=>p6(gT,(B)=>{let $=[],X=b7(()=>{if($.length===0)return N0;let q=$;return $=[],j.flush(q)});return wJ((q)=>q(gw(j.window).pipe(cX(X),eg)).pipe(LEA,p6((Y)=>cQ(B,()=>og(Y))),cX(jR(()=>X)),Dq(sE((Y)=>{$.push(A.log(Y))}))))})),zm0=evj,Zm0=yHA(f66),Fm0=yHA(haA),Vm0=yHA(h66),Im0=qmA,Om0=h((A)=>S66(A[0]),(A,j,B)=>UEA(function*(){let X=yield*(yield*a5).open(j,{flag:"a+",...B}),q=new TextEncoder;return yield*g66(A,{window:B?.batchWindow??1000,flush:(Y)=>IEA(X.write(q.encode(Y.join(`
246
+ `)};var dj6=(A,j,B)=>{switch(j){case"bash":return vj6(A,B);case"zsh":return uj6(A,B);case"fish":return hj6(A,B)}};var pj6=()=>{};var lj6="~effect/cli/Command/Config/Internal",FaA=(A)=>{let j=[],B=[],$=[];function X(Y){let E={};for(let K in Y)E[K]=q(Y[K]);return E}function q(Y){if(Array.isArray(Y))return{_tag:"Array",children:Y.map((E)=>q(E))};else if(pWA(Y)){let E=j.length;if(j.push(Y),Y.kind==="argument")$.push(Y);else B.push(Y);return{_tag:"Param",index:E}}else return{_tag:"Nested",tree:X(Y)}}return{[lj6]:lj6,flags:B,arguments:$,orderedParams:j,tree:X(A)}},ij6,VaA=(A,j)=>{let B={};for(let X in A)B[X]=$(A[X]);return B;function $(X){switch(X._tag){case"Param":return j[X.index];case"Array":return X.children.map((q)=>$(q));case"Nested":return VaA(X.tree,j)}}};var IaA=x(()=>{fD();ij6=FaA({})});var kAA="~effect/cli/Command",QX=(A)=>A,oh0,bAA=(A)=>{let j=A.config,B=A.contextConfig??ij6,$=A.service??G6(`${kAA}/${A.name}`),X=A.annotations??rB(),q=A.globalFlags??[],Y=A.subcommands??[],E=(Q,W)=>lB(A.handle)?A.handle(Q,W):sA(new aR({commandPath:W,errors:[]})),K=A.parse??OaA(j),J=A.parseContext??OaA(B),U=(Q)=>{let W=[],H=[];for(let O of j.arguments){let D=B5(O),w=YC(O);for(let M of D)W.push({name:M.name,type:M.typeName??$aA(M.primitiveType),description:M.description,required:!w.isOptional,variadic:w.isVariadic})}let Z=Q.length>0?Q.join(" "):A.name;if(Y.some((O)=>O.commands.some((D)=>!D.hidden)))Z+=" <subcommand>";Z+=" [flags]";for(let O of W){let D=O.variadic?`<${O.name}...>`:`<${O.name}>`;Z+=` ${O.required?D:`[${D}]`}`}for(let O of j.flags){let D=B5(O);for(let w of D){if(w.hidden)continue;H.push(DHA(w))}}let F=[];for(let O of Y){let D=O.commands.filter((w)=>!w.hidden);if(D.length===0)continue;F.push({group:O.group,commands:I5(D,(w)=>({name:w.name,alias:w.alias,shortDescription:w.shortDescription,description:w.description??""}))})}let V=A.examples??[];return{description:A.description??"",usage:Z,flags:H,annotations:X,...W.length>0&&{args:W},...F.length>0&&{subcommands:F},...V.length>0&&{examples:V}}};return Object.assign(Object.create(oh0),{[kAA]:kAA,name:A.name,examples:A.examples??[],annotations:X,globalFlags:q,subcommands:Y,hidden:A.hidden??!1,config:j,contextConfig:B,service:$,parse:K,parseContext:J,handle:E,buildHelpDoc:U,...lB(A.description)?{description:A.description}:{},...lB(A.shortDescription)?{shortDescription:A.shortDescription}:{},...lB(A.alias)?{alias:A.alias}:{}})},DHA=(A)=>{let j=A.aliases.map((B)=>B.length===1?`-${B}`:`--${B}`);return{name:A.name,aliases:j,type:A.typeName??$aA(A.primitiveType),description:sh0(A.description,LAA(A.primitiveType)),required:A.primitiveType._tag!=="Boolean"}},sh0=(A,j)=>{if(j===void 0||j.length===0)return A;let B=`(choices: ${j.join(", ")})`;return y8(A,{onNone:()=>uA(B),onSome:($)=>uA(`${$} ${B}`)})},OaA=(A)=>nj(function*(j){let B={flags:j.flags,arguments:j.arguments},$=yield*th0(B,A.orderedParams);return VaA(A.tree,$)}),th0,nj6=(A,j,B)=>{let $=QX(A),X=new Set;((Y)=>{for(let E of Y){let K=B5(E);for(let J of K)X.add(J.name)}})((B?.contextConfig??$.contextConfig).flags);for(let Y of j){let E=QX(Y);for(let K of E.config.flags){let J=B5(K);for(let U of J)if(X.has(U.name))throw new iQA({option:U.name,parentCommand:A.name,childCommand:Y.name})}}};var yAA=x(()=>{V1();$7();rj();yL();O7();y6();AAA();fD();RAA();IaA();oh0={...lE({label:"Command",evaluate(){return QX(this).service}})},th0=nj(function*(A,j){let B=[],$=A.arguments;for(let X of j){let[q,Y]=yield*X.parse({flags:A.flags,arguments:$});B.push(Y),$=q}return B})});var eh0=(A)=>{switch(A.primitiveType._tag){case"Boolean":return{_tag:"Boolean"};case"Integer":return{_tag:"Integer"};case"Float":return{_tag:"Float"};case"Date":return{_tag:"Date"};case"Choice":return{_tag:"Choice",values:LAA(A.primitiveType)??[]};case"Path":{let B=A.typeName;return{_tag:"Path",pathType:B==="file"?"file":B==="directory"?"directory":"either"}}default:return{_tag:"String"}}},Ag0=(A)=>{switch(A.primitiveType._tag){case"Integer":return{_tag:"Integer"};case"Float":return{_tag:"Float"};case"Date":return{_tag:"Date"};case"Choice":return{_tag:"Choice",values:LAA(A.primitiveType)??[]};case"Path":{let B=A.typeName;return{_tag:"Path",pathType:B==="file"?"file":B==="directory"?"directory":"either"}}default:return{_tag:"String"}}},waA=(A)=>{let B=QX(A).config,$=[];for(let Y of B.flags){let E=B5(Y);for(let K of E){if(K.kind!=="flag")continue;if(K.hidden)continue;$.push({name:K.name,aliases:K.aliases,description:Q1(K.description),type:eh0(K)})}}let X=[];for(let Y of B.arguments){let E=B5(Y),K=YC(Y);for(let J of E){if(J.kind!=="argument")continue;X.push({name:J.name,description:Q1(J.description),required:!K.isOptional,variadic:K.isVariadic,type:Ag0(J)})}}let q=[];for(let Y of A.subcommands)for(let E of Y.commands){if(E.hidden)continue;q.push(waA(E))}return{name:A.name,description:A.shortDescription??A.description,flags:$,arguments:X,subcommands:q}};var rj6=x(()=>{O7();fD();RAA();yAA()});var DaA=(A)=>{let j=new Set,B=[];for(let $ of A){if(j.has($))continue;j.add($),B.push($)}return B},aj6=(A,j)=>{let B=[A],$=A;for(let X=1;X<j.length;X++){let q=j[X],Y=void 0;for(let E of $.subcommands)if(Y=E.commands.find((K)=>K.name===q),Y)break;if(!Y)break;B.push(Y),$=Y}return B},MaA=(A,j,B)=>{let X=aj6(A,j).flatMap((q)=>QX(q).globalFlags);return DaA([...B,...X])},Bg0=(A)=>{let j=[],B=($)=>{let X=QX($);for(let q of X.globalFlags)j.push(q);for(let q of $.subcommands)for(let Y of q.commands)B(Y)};return B(A),DaA(j)},$g0=(A,j)=>{if(A.length<=1)return[];let B=new Set(j.map((X)=>X.name)),$=[];for(let X of A.slice(0,-1)){let q=QX(X);for(let Y of q.contextConfig.flags){let E=B5(Y);for(let K of E){if(B.has(K.name))continue;if(K.hidden)continue;B.add(K.name),$.push(DHA(K))}}}return $},oj6=(A,j)=>DaA([...j,...Bg0(A)]),MHA=(A,j,B)=>R6(function*(){let $=aj6(A,j),X=$.length>0?$[$.length-1]:A,q=QX(X).buildHelpDoc(j),Y=$g0($,q.flags),E=MaA(A,j,B),K=[];for(let J of E){let U=B5(J.flag);for(let Q of U){if(Q.hidden)continue;K.push({...DHA(Q),required:!1})}}return{...q,flags:[...Y,...q.flags],globalFlags:K}});var NaA=x(()=>{rj();fD();yAA()});var LaA=(A)=>({_tag:"Action",flag:A.flag,run:A.run}),qg0=(A)=>(j)=>{sj6+=1;let B=G6(`effect/unstable/cli/GlobalFlag/${A}/${sj6}`);return Object.assign(B,{_tag:"Setting",id:A,flag:j.flag})},sj6=0,Yg0,Gg0,Eg0,NHA,vAA;var tj6=x(()=>{QaA();$7();rj();O7();WaA();pj6();JaA();rj6();NaA();Yg0=LaA({flag:ZHA("help").pipe(FHA("h"),bc("Show help information")),run:(A,{command:j,commandPath:B})=>R6(function*(){let $=yield*SAA,X=yield*MHA(j,B,vAA);yield*yc($.formatHelpDoc(X))})}),Gg0=LaA({flag:ZHA("version").pipe(FHA("v"),bc("Show version information")),run:(A,{command:j,version:B})=>R6(function*(){let $=yield*SAA;yield*yc($.formatVersion(j.name,B))})}),Eg0=LaA({flag:EaA("completions",["bash","zsh","fish","sh"]).pipe(IHA,KaA((A)=>X4(A,(j)=>j==="sh"?"bash":j)),VHA("<bash|zsh|fish|sh>"),bc("Print shell completion script")),run:(A,{command:j})=>R6(function*(){if(E7(A))return;let B=waA(j);yield*yc(dj6(j.name,A.value,B))})}),NHA=qg0("log-level")({flag:GaA("log-level",[["all","All"],["trace","Trace"],["debug","Debug"],["info","Info"],["warn","Warn"],["warning","Warn"],["error","Error"],["fatal","Fatal"],["none","None"]]).pipe(IHA,bc("Sets the minimum log level"),VHA("<all|trace|debug|info|warn|warning|error|fatal|none>"))}),vAA=[Yg0,Gg0,Eg0,NHA]});function A66(A){let j=A.indexOf("--");if(j===-1)return{tokens:ej6(A),trailingOperands:[]};return{tokens:ej6(A.slice(0,j)),trailingOperands:A.slice(j+1)}}var ej6=(A)=>{let j=[];for(let B of A)if(!B.startsWith("-"))j.push({_tag:"Value",value:B});else if(B.startsWith("--")){let[$,X]=B.slice(2).split("=",2);j.push({_tag:"LongOption",name:$,raw:B,value:X})}else if(B.length>1){let $=B.slice(1),X=$.indexOf("=");if(X!==-1){let q=$.slice(0,X),Y=$.slice(X+1);j.push({_tag:"ShortOption",flag:q,raw:`-${q}`,value:Y})}else for(let q of $)j.push({_tag:"ShortOption",flag:q,raw:`-${q}`})}else j.push({_tag:"Value",value:B});return j};var Ug0=(A,j)=>{let B=A.length,$=j.length,X=Array.from({length:B+1},()=>Array($+1).fill(0));for(let q=0;q<=B;q++)X[q][0]=q;for(let q=0;q<=$;q++)X[0][q]=q;for(let q=1;q<=B;q++)for(let Y=1;Y<=$;Y++){let E=A[q-1]===j[Y-1]?0:1;X[q][Y]=Math.min(X[q-1][Y]+1,X[q][Y-1]+1,X[q-1][Y-1]+E)}return X[B][$]},RaA=(A,j)=>{let B=j.map((X)=>[Ug0(A,X),X]).filter(([X])=>X<=2).sort(([X],[q])=>X-q);if(B.length===0)return[];let $=B[0][0];return B.filter(([X])=>X===$).map(([,X])=>X)};var _aA=(A)=>y8(A.subcommand,{onNone:()=>[],onSome:(j)=>[j.name,..._aA(j.parsedInput)]}),xaA=(A,j,B=[])=>R6(function*(){let{tokens:$,trailingOperands:X}=A,q=[...B,j.name],Y=QX(j),K=Y.config.flags.flatMap(B5).filter(GC),J=fc(K),Q=Y.contextConfig.flags.flatMap(B5).filter(GC),W=fc(Q),H=new Set(Q.map((w)=>w.name)),Z={command:j,commandPath:q,flagRegistry:J,inheritedFlagRegistry:W,localFlagNames:K.filter((w)=>!H.has(w.name)).map((w)=>w.name)},F=Mg0($,Z);if(F._tag==="Leaf")return{flags:F.flags,arguments:[...F.arguments,...X],subcommand:Qj(),...F.errors.length>0&&{errors:F.errors}};let V={tokens:F.childTokens,trailingOperands:[]},O=yield*xaA(V,F.sub,q),D=[...F.errors,...O.errors??[]];return{flags:F.flags,arguments:X,subcommand:uA({name:F.sub.name,parsedInput:O}),...D.length>0&&{errors:D}}}),LHA=(A)=>{let j=0;return{peek:()=>A[j],take:()=>A[j++],rest:()=>A.slice(j)}},fc=(A)=>{let j=new Map;for(let B of A){if(j.has(B.name))throw Error(`Duplicate flag name "${B.name}" in command definition`);j.set(B.name,B);for(let $ of B.aliases){if(j.has($))throw Error(`Duplicate flag/alias "${$}" in command definition (conflicts with "${j.get($).name}")`);j.set($,B)}}return{params:A,index:j}},$66=(A)=>{let j=new Map,B=($,X)=>{let q=j.get($);if(q&&q!==X)throw Error(`Duplicate subcommand name/alias "${$}" in command definition (conflicts with "${q.name}")`);j.set($,X)};for(let $ of A)for(let X of $.commands)if(B(X.name,X),X.alias&&X.alias!==X.name)B(X.alias,X);return j},PaA=(A)=>Object.fromEntries(A.map((j)=>[j.name,[]])),Qg0=(A)=>{let j=PaA(A);return{add:(B,$)=>{if($!==void 0)j[B].push($)},merge:(B)=>{for(let $ in B){let X=B[$];if(X?.length)for(let q=0;q<X.length;q++)j[$].push(X[q])}},snapshot:()=>j}},RHA=(A)=>A._tag==="LongOption"||A._tag==="ShortOption",X66=(A)=>A._tag==="LongOption"?A.name:A.flag,vc=(A,j)=>{let B=X66(A),$=j.index.get(B);if($&&$.name===B)return{param:$,negated:!1};if(A._tag==="LongOption"&&A.name.startsWith("no-")){let X=A.name.slice(3),q=j.index.get(X);if(q&&q.name===X&&Ek(q.primitiveType))return{param:q,negated:!0}}if($)return{param:$,negated:!1};return},j66=(A,j,B)=>new JK({option:j.name,value:B,expected:`omit the value and use ${A.raw} by itself to set --${j.name} to false`,kind:"flag"}),B66=(A)=>A?._tag==="Value"&&(Xj6(A.value)||qj6(A.value))?A.value:void 0,q66=(A,j,B,$=!1)=>{let X=fAA(A,j,B,$);switch(X._tag){case"Value":return{_tag:"Value",value:X.value};case"Error":return{_tag:"Error",error:X.error}}},fAA=(A,j,B,$=!1)=>{if($){if(j.value!==void 0)return{_tag:"Error",error:j66(j,B,j.value),tokens:[]};let q=B66(A.peek());if(q!==void 0){let Y=A.take();return{_tag:"Error",error:j66(j,B,q),tokens:Y===void 0?[]:[Y]}}return{_tag:"Value",value:"false",tokens:[]}}if(j.value!==void 0)return{_tag:"Value",value:j.value,tokens:[]};if(Ek(B.primitiveType)){let q=B66(A.peek()),Y=q!==void 0?A.take():void 0;return{_tag:"Value",value:q??"true",tokens:Y===void 0?[]:[Y]}}let X=A.peek();if(X?._tag==="Value"){let q=A.take();return{_tag:"Value",value:X.value,tokens:q===void 0?[]:[q]}}return{_tag:"Value",value:void 0,tokens:[]}},Wg0=(A,j)=>{let B=PaA(j.params),$=[],X=[],q=LHA(A);for(let Y=q.take();Y;Y=q.take()){if(!RHA(Y)){$.push(Y);continue}let E=vc(Y,j);if(!E){$.push(Y);continue}let K=q66(q,Y,E.param,E.negated);if(K._tag==="Error"){X.push(K.error);continue}if(K.value!==void 0)B[E.param.name].push(K.value)}return{flagMap:B,remainder:$,errors:X}},Hg0=(A)=>{return QX(A).config.flags.flatMap(B5).filter(GC)},zg0=(A)=>{return QX(A).contextConfig.flags.flatMap(B5).filter(GC)},Y66=(A,j)=>{for(let B of j){let $=vc(A,B);if($!==void 0)return $}return},CaA=(A,j,B,$)=>{A.push(B);let X=fAA(j,B,$.param,$.negated);A.push(...X.tokens)},Zg0=(A,j,B,$,X)=>{let q=LHA(j);fAA(q,A,B.param,B.negated);for(let Y=q.take();Y;Y=q.take()){if(RHA(Y)){let E=Y66(Y,X);if(E!==void 0)fAA(q,Y,E.param,E.negated);continue}if(Y._tag==="Value")return $.has(Y.value)}return!1},G66=(A,j,B)=>{let $=PaA(B.params),X=[],q=(Y,E,K)=>{let J=fc(Hg0(E)),U=fc(zg0(E)),Q=$66(E.subcommands),W=LHA(Y),H=[],Z=!0;for(let F=W.take();F;F=W.take()){if(RHA(F)){let V=Y66(F,K);if(V!==void 0){CaA(H,W,F,V);continue}let O=vc(F,U);if(O!==void 0){CaA(H,W,F,O);continue}let D=vc(F,J),w=vc(F,B);if(D!==void 0){if(w===void 0||!Z||!Zg0(F,W.rest(),D,Q,[J,U,B])){CaA(H,W,F,D);continue}}if(w!==void 0){let M=fAA(W,F,w.param,w.negated);if(M._tag==="Error"){X.push(M.error);continue}if(M.value!==void 0)$[w.param.name].push(M.value);continue}H.push(F);continue}if(F._tag==="Value"&&Z){let V=Q.get(F.value);if(V!==void 0)return H.push(F),H.push(...q(W.rest(),V,[...K,U])),H;Z=!1}H.push(F)}return H};return{flagMap:$,remainder:q(A,j,[]),errors:X}},Fg0=(A,j,B)=>{let $=A._tag==="LongOption"?`--${A.name}`:`-${A.flag}`,X=[];for(let Y of j){if(Y.hidden)continue;if(X.push(Y.name),Ek(Y.primitiveType))X.push(`no-${Y.name}`);for(let E of Y.aliases)X.push(E)}let q=RaA(X66(A),X).map((Y)=>Y.length===1?`-${Y}`:`--${Y}`);return new Ak({option:$,suggestions:q,command:B})},Vg0=(A)=>({flags:Qg0(A.params),arguments:[],errors:[],mode:{_tag:"AwaitingFirstValue"}}),Ig0=(A)=>({_tag:"Leaf",flags:A.flags.snapshot(),arguments:A.arguments,errors:A.errors}),Og0=(A,j,B,$)=>{let{command:X,commandPath:q,inheritedFlagRegistry:Y,localFlagNames:E}=B,K=$66(X.subcommands),J=K.get(A);if(J){let Q=[...q,J.name],W=$.flags.snapshot();for(let Z of E){let F=W[Z];if(F!==void 0&&F.length>0)$.errors.push(new Ak({option:`--${Z}`,suggestions:[],command:Q}))}let H=Wg0(j.rest(),Y);return $.flags.merge(H.flagMap),$.errors.push(...H.errors),{_tag:"Subcommand",result:{_tag:"Sub",flags:$.flags.snapshot(),sub:J,childTokens:H.remainder,errors:$.errors}}}if(!(QX(X).config.arguments.length>0)&&K.size>0){let Q=[];for(let[H,Z]of K)if(!Z.hidden)Q.push(H);let W=RaA(A,Q);$.errors.push(new rQA({subcommand:A,parent:q,suggestions:W}))}return{_tag:"Argument"}},wg0=(A,j,B,$)=>{let{commandPath:X,flagRegistry:q}=B,Y=vc(A,q);if(!Y){$.errors.push(Fg0(A,q.params,X));return}let E=q66(j,A,Y.param,Y.negated);if(E._tag==="Error"){$.errors.push(E.error);return}$.flags.add(Y.param.name,E.value)},Dg0=(A,j,B,$)=>{if($.mode._tag==="AwaitingFirstValue"){let X=Og0(A,j,B,$);if(X._tag==="Subcommand")return X.result;$.mode={_tag:"CollectingArguments"}}$.arguments.push(A);return},Mg0=(A,j)=>{let B=LHA(A),$=Vg0(j.flagRegistry);for(let X=B.take();X;X=B.take()){if(RHA(X)){wg0(X,B,j,$);continue}if(X._tag==="Value"){let q=Dg0(X.value,B,j,$);if(q)return q}}return Ig0($)};var E66=x(()=>{rj();O7();AAA();fD();RAA();yAA()});var Lg0=(A)=>Gj(A,kAA),K66=(A,j,B)=>{let $=FaA(j??{});return bAA({name:A,config:$,...lB(B)?{handle:B}:{}})},J66,Rg0=(A)=>{let j=[],B=new Map,$=(Y,E)=>{j.push(E);let K=B.get(Y);if(K)K.push(E);else B.set(Y,[E])};for(let Y of A){if(Lg0(Y)){$(void 0,Y);continue}for(let E of Y.commands)$(Y.group,E)}let X=[],q=B.get(void 0);if(q&&q.length>0)X.push({group:void 0,commands:q});for(let[Y,E]of B){if(Y===void 0)continue;X.push({group:Y,commands:E})}return{flat:j,groups:X}},U66,Q66,Cg0=(A,j,B,$)=>{let X=new Set(j),q=[],Y=new Set;for(let E of A){if(X.has(E))continue;let K=B5(E.flag);for(let J of K){let U=B[J.name];if(!U||U.length===0)continue;let Q=`--${J.name}`;if(Y.has(Q))continue;Y.add(Q),q.push(new Ak({option:Q,suggestions:[],command:$}))}}return q},_g0=(A,j)=>R6(function*(){let B=yield*SAA,$=yield*MHA(A,j.commandPath,vAA);if(yield*yc(B.formatHelpDoc($)),j.errors.length>0)yield*_j6(B.formatErrors(j.errors))}),W66,xg0=(A,j)=>{let B=QX(A);return nj(function*($){let{tokens:X,trailingOperands:q}=A66($),Y=oj6(A,vAA),E=Y.flatMap((_)=>B5(_.flag)),K=fc(E.filter(GC)),{flagMap:J,remainder:U,errors:Q}=G66(X,A,K),W={flags:J,arguments:[]},H=yield*xaA({tokens:U,trailingOperands:q},A),Z=[A.name,..._aA(H)],F={command:A,commandPath:Z,version:j.version},V=MaA(A,Z,vAA),O=Cg0(Y,V,J,Z);if(O.length>0||Q.length>0){let _=H.errors??[];return yield*new aR({commandPath:Z,errors:[...Q,...O,..._]})}for(let _ of V){if(_._tag!=="Action")continue;if(!B5(_.flag).some((y)=>{let T=J[y.name];return T!==void 0&&T.length>0}))continue;let[,N]=yield*_.flag.parse(W);yield*_.run(N,F);return}if(H.errors&&H.errors.length>0)return yield*new aR({commandPath:Z,errors:H.errors});let D=yield*ds(B.parse(H));if(D._tag==="Failure")return yield*new aR({commandPath:Z,errors:[D.failure]});let w=B.handle(D.success,[A.name]);for(let _ of V){if(_._tag!=="Setting")continue;let[,L]=yield*_.flag.parse(W);w=t9(w,_,L)}let[,M]=yield*NHA.flag.parse(W);w=t9(w,NHA,M);let R=y8(M,{onNone:()=>rB(),onSome:(_)=>kQ(wmA,_)});yield*i4(w,R)},WR(($)=>ktj($)&&$._tag==="ShowHelp"?B6($):U6($),($)=>O1(_g0(A,$),sA($))),WR(($)=>Wtj($)?B6($):U6($),($)=>q2))};var TaA=x(()=>{QaA();$7();rj();lj();O7();y6();zz();q4();$lA();vQA();AAA();WaA();tj6();yAA();IaA();NaA();E66();fD();J66=h(2,(A,j)=>bAA({...QX(A),handle:j})),U66=h(2,(A,j)=>{let B=Rg0(j);nj6(A,B.flat);let $=QX(A),X=new Map(B.flat.map((K)=>[K.name,QX(K)])),q=Symbol("effect/cli/SubcommandState"),Y=nj(function*(K){if(E7(K.subcommand))return yield*$.parse(K);let J=X.get(K.subcommand.value.name);if(!J)return yield*$.parse(K);let U=yield*$.parseContext(K),Q=yield*J.parse(K.subcommand.value.parsedInput);return Object.assign({},U,{[q]:{name:J.name,result:Q}})}),E=nj(function*(K,J){let Q=K[q];if(Q){let W=X.get(Q.name);if(!W)return yield*new aR({commandPath:J,errors:[]});return yield*W.handle(Q.result,[...J,W.name]).pipe(t9($.service,K))}return yield*$.handle(K,J)});return bAA({name:$.name,config:$.config,contextConfig:$.contextConfig,description:$.description,shortDescription:$.shortDescription,alias:$.alias,annotations:$.annotations,globalFlags:$.globalFlags,examples:$.examples,service:$.service,subcommands:B.groups,parse:Y,parseContext:$.parseContext,handle:E})}),Q66=h(2,(A,j)=>bAA({...QX(A),description:j})),W66=h(2,(A,j)=>OUA.use(({args:B})=>bA(B,($)=>xg0(A,j)($))))});var r7={};wA(r7,{make:()=>Pg0,Spec:()=>r7});function Pg0(A,j={}){let B=K66(A,j.params??{}),$=j.description?B.pipe(Q66(j.description)):B;return{name:A,spec:$,commands:Object.fromEntries((j.commands??[]).map((X)=>[X.name,X]))}}var CHA=x(()=>{TaA();CHA()});var oX;var _HA=x(()=>{UaA();CHA();oX=r7.make("openfork",{description:"OpenFork \u2014 AI development CLI",commands:[r7.make("bench",{description:"Run benchmark suites",params:{suite:F7.string("suite").pipe(F7.withDefault("smoke"),F7.withAlias("s")),all:F7.boolean("all").pipe(F7.withDefault(!1),F7.withAlias("a"))}}),r7.make("cron",{description:"Manage cron jobs",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("memory",{description:"Manage structured memory",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("goal",{description:"Manage session goals",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("veriloop",{description:"Run verification loop",params:{task:tj.string("task").pipe(tj.variadic,tj.optional)}}),r7.make("scope",{description:"Generate scope guard report",params:{sessionId:tj.string("session-id").pipe(tj.optional)}}),r7.make("config",{description:"Show or manage configuration",params:{sub:tj.string("subcommand").pipe(tj.optional)}}),r7.make("session",{description:"Session operations",params:{sub:tj.string("subcommand").pipe(tj.optional),args:tj.string("args").pipe(tj.variadic,tj.optional)}}),r7.make("git",{description:"Show git context"}),r7.make("share",{description:"Start/stop sharing server",params:{sub:tj.string("subcommand").pipe(tj.optional),port:F7.integer("port").pipe(F7.optional,F7.withAlias("p"))}}),r7.make("remote",{description:"Remote access via Tailscale",params:{sub:tj.string("subcommand").pipe(tj.optional),port:F7.integer("port").pipe(F7.withDefault(8787),F7.withAlias("p")),tailscale:F7.boolean("tailscale").pipe(F7.withDefault(!1))}}),r7.make("mcp",{description:"MCP server management",params:{sub:tj.string("subcommand").pipe(tj.optional),preset:tj.string("preset").pipe(tj.optional)}}),r7.make("worktree",{description:"Git worktree management",params:{sub:tj.string("subcommand").pipe(tj.optional),path:tj.string("path").pipe(tj.optional)}}),r7.make("backends",{description:"Agent backends management",params:{sub:tj.string("subcommand").pipe(tj.optional),type:tj.string("type").pipe(tj.optional)}}),r7.make("serve",{description:"Start the API server",params:{hostname:F7.string("hostname").pipe(F7.withDefault("127.0.0.1")),port:F7.integer("port").pipe(F7.optional),register:F7.boolean("register").pipe(F7.withDefault(!1))}}),r7.make("service",{description:"Manage the background server",commands:[r7.make("start",{description:"Start the background server"}),r7.make("restart",{description:"Restart the background server"}),r7.make("status",{description:"Show background server status"}),r7.make("stop",{description:"Stop the background server"}),r7.make("password",{description:"Get or set the server password",params:{value:tj.string("value").pipe(tj.optional)}})]}),r7.make("api",{description:"Make a request to the running server",params:{request:tj.string("operation | method path").pipe(tj.withDescription("OpenAPI operation ID, or an HTTP method followed by a path"),tj.variadic({min:1,max:2})),data:F7.string("data").pipe(F7.withAlias("d"),F7.withDescription("Request body"),F7.optional),header:F7.string("header").pipe(F7.withAlias("H"),F7.withDescription("Request header in name:value form"),F7.atMost(100)),param:F7.keyValuePair("param").pipe(F7.withDescription("OpenAPI path or query parameter"),F7.optional)}}),r7.make("migrate",{description:"Migrate v1 data to v2"}),r7.make("debug",{description:"Debugging and troubleshooting tools",commands:[r7.make("agents",{description:"List all agents"})]})]})});var oB={};wA(oB,{run:()=>kg0,handlers:()=>Sg0,handler:()=>Tg0,Runtime:()=>oB});function Tg0(A,j){return j}function Sg0(A,j){let B=[];function $(X,q){if(typeof q==="function"){B.push({spec:X.spec,load:q});return}if(q.$)B.push({spec:X.spec,load:q.$});for(let[Y,E]of Object.entries(X.commands))$(E,q[Y])}return $(A,j),B}function kg0(A,j,B){return W66(z66(A,j),B)}function z66(A,j){let B=j.find((X)=>X.spec===A.spec),$=B?A.spec.pipe(J66((X)=>R6(function*(){yield*bA(sY(B.load),(q)=>q.default(X))}))):A.spec;if(!Object.keys(A.commands).length)return $;return $.pipe(U66(Object.values(A.commands).map((X)=>z66(X,j))))}var QK=x(async()=>{rj();TaA();await QK()});import bg0 from"os";import THA from"path";var KC,zk,xHA,PHA,Z66,F66,kn1,yg0,vg0;var V66=x(()=>{KC=bg0.homedir(),{env:zk}=process,xHA=zk.XDG_DATA_HOME||(KC?THA.join(KC,".local","share"):void 0),PHA=zk.XDG_CONFIG_HOME||(KC?THA.join(KC,".config"):void 0),Z66=zk.XDG_STATE_HOME||(KC?THA.join(KC,".local","state"):void 0),F66=zk.XDG_CACHE_HOME||(KC?THA.join(KC,".cache"):void 0),kn1=zk.XDG_RUNTIME_DIR||void 0,yg0=(zk.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");if(xHA)yg0.unshift(xHA);vg0=(zk.XDG_CONFIG_DIRS||"/etc/xdg").split(":");if(PHA)vg0.unshift(PHA)});var hc={};wA(hc,{values:()=>og0,size:()=>rg0,set:()=>ug0,refresh:()=>ig0,makeWith:()=>O66,make:()=>fg0,keys:()=>ag0,invalidateWhen:()=>lg0,invalidateAll:()=>ng0,invalidate:()=>pg0,has:()=>dg0,getSuccess:()=>cg0,getOption:()=>mg0,get:()=>gg0,entries:()=>M66});var I66="~effect/Cache",O66=(A,j)=>KV((B)=>{let $=Object.create(hg0);return $.lookup=(X)=>vT(A(X),(q)=>F5(B,q)),$.map=Ldj(),$.capacity=j.capacity,$.timeToLive=j.timeToLive?(X,q)=>M0(j.timeToLive(X,q)):w66,hj($)}),fg0=(A)=>O66(A.lookup,{...A,timeToLive:A.timeToLive?()=>A.timeToLive:w66}),hg0,w66=(A,j)=>O5,gg0,D66=(A,j)=>{if(A.expiresAt===void 0)return!1;return j.getRef(YX).currentTimeMillisUnsafe()>=A.expiresAt},SaA=(A)=>{let j=at(A.map)-A.capacity;if(j<=0)return;for(let[B]of A.map)if(YY(A.map,B),j--,j===0)return},mg0,hAA=(A,j,B,$=!0)=>{let X=qW(A.map,j);if(E7(X))return;else if(D66(X.value,B)){YY(A.map,j);return}else if($)YY(A.map,j),PJ(A.map,j,X.value);return X.value},cg0,ug0,dg0,pg0,lg0,ig0,ng0=(A)=>t6(()=>{nm(A.map)}),rg0=(A)=>t6(()=>at(A.map)),ag0=(A)=>J7((j)=>{let B=j.getRef(YX).currentTimeMillisUnsafe();return hj(_hA(A.map,([$,X])=>{if(X.expiresAt===void 0||X.expiresAt>B)return B6($);return YY(A.map,$),bg}))}),og0=(A)=>T7(M66(A),eSj(([,j])=>j)),M66=(A)=>J7((j)=>{let B=j.getRef(YX).currentTimeMillisUnsafe();return hj(_hA(A.map,([$,X])=>{if(X.expiresAt===void 0||X.expiresAt>B){let q=X.deferred.effect;return!Po(q)||Qs(q)?bg:B6([$,q.value])}return YY(A.map,$),bg}))});var N66=x(()=>{$7();QV();wq();lj();F1();F1();i1();xT();iJA();O7();q4();hg0={...K9,[I66]:I66,toJSON(){return{_id:"Cache",capacity:this.capacity,map:this.map}}},gg0=h(2,(A,j)=>J7((B)=>{let $=qW(A.map,j);if(P7($)&&!D66($.value,B))return YY(A.map,j),PJ(A.map,j,$.value),u4($.value.deferred);let X=GX(),q={expiresAt:void 0,deferred:X};if(PJ(A.map,j,q),Number.isFinite(A.capacity))SaA(A);return Mq(A.lookup(j),(Y)=>{EX(X,Y);let E=A.timeToLive(Y,j);if(IJ(E))q.expiresAt=B.getRef(YX).currentTimeMillisUnsafe()+p1(E);else if(OJ(E))YY(A.map,j);return N0})})),mg0=h(2,(A,j)=>J7((B)=>{let $=hAA(A,j,B);return $?AR(u4($.deferred)):kw})),cg0=h(2,(A,j)=>J7((B)=>{let $=hAA(A,j,B)?.deferred.effect;if($&&bw($))return Js($.value);return kw})),ug0=h(3,(A,j,B)=>J7(($)=>{let X=a8(B),q=GX();EX(q,X);let Y=A.timeToLive(X,j);if(OJ(Y))return YY(A.map,j),N0;return PJ(A.map,j,{deferred:q,expiresAt:IJ(Y)?$.getRef(YX).currentTimeMillisUnsafe()+p1(Y):void 0}),SaA(A),N0})),dg0=h(2,(A,j)=>J7((B)=>{let $=hAA(A,j,B,!1);return hj($!==void 0)})),pg0=h(2,(A,j)=>t6(()=>{YY(A.map,j)})),lg0=h(3,(A,j,B)=>J7(($)=>{let X=hAA(A,j,$,!1);if(X===void 0)return hj(!1);return u4(X.deferred).pipe(T7((q)=>{if(B(q))return YY(A.map,j),!0;return!1}),tG(()=>hj(!1)))})),ig0=h(2,(A,j)=>J7((B)=>{let $=GX(),X={expiresAt:void 0,deferred:$},q=hAA(A,j,B,!1)!==void 0;if(!q)PJ(A.map,j,X),SaA(A);return Mq(A.lookup(j),(Y)=>{EX($,Y);let E=A.timeToLive(Y,j);if(OJ(E))return YY(A.map,j),N0;if(X.expiresAt=IJ(E)?B.getRef(YX).currentTimeMillisUnsafe()+p1(E):void 0,q)PJ(A.map,j,X);return N0})}))});var mJ={};wA(mJ,{size:()=>Xm0,runtimePromise:()=>_66,runtime:()=>mAA,run:()=>C66,makeRuntimePromise:()=>Am0,makeRuntime:()=>eg0,make:()=>gAA,join:()=>kHA,isFiberSet:()=>baA,clear:()=>$m0,awaitEmpty:()=>qm0,addUnsafe:()=>SHA,add:()=>Bm0});var kaA="~effect/FiberSet",baA=(A)=>Gj(A,kaA),sg0,tg0=(A,j)=>{let B=Object.create(sg0);return B.state={_tag:"Open",backing:A},B.deferred=j,B},gAA=()=>G4(Hj(()=>tg0(new Set,GX())),(A)=>yj(()=>{let j=A.state;if(j._tag==="Closed")return xj;A.state={_tag:"Closed"};let B=j.backing;return wdA(B).pipe(hEA(A.deferred))})),eg0=()=>bA(gAA(),(A)=>mAA(A)()),Am0=()=>bA(gAA(),(A)=>_66(A)()),yaA=-1,jm0,SHA,Bm0,$m0=(A)=>yj(()=>{if(A.state._tag==="Closed")return xj;return DdA(A.state.backing,yaA)}),R66,C66=function(){let A=arguments[0];if(!D8(arguments[1])){let j=arguments[1];return(B)=>L66(A,B,j)}return L66(A,arguments[1],arguments[2])},L66=(A,j,B)=>r0(($)=>{if(A.state._tag==="Closed")return Hj(R66);let X=I$($.context)(j);return SHA(A,X,B),LA(X)}),mAA=(A)=>()=>iA(l4(),(j)=>{let B=I$(j);return($,X)=>{if(A.state._tag==="Closed")return R66();let q=B($,X);return SHA(A,q),q}}),_66=(A)=>()=>iA(mAA(A)(),(j)=>(B,$)=>new Promise((X,q)=>j(B,$).addObserver((Y)=>{if(a9(Y))X(Y.value);else q(V3(Y.cause))}))),Xm0=(A)=>Hj(()=>A.state._tag==="Closed"?0:A.state.backing.size),kHA=(A)=>u4(A.deferred),qm0=(A)=>w3({while:()=>A.state._tag==="Open"&&A.state.backing.size>0,body:()=>kt(b3A(A)),step:z$});var vaA=x(()=>{c4();QV();rj();o9();K2();o3A();lj();F1();xT();y6();sg0={[kaA]:kaA,[Symbol.iterator](){if(this.state._tag==="Closed")return tSj();return this.state.backing[Symbol.iterator]()},...K9,toJSON(){return{_id:"FiberMap",state:this.state}}},jm0=Bbj(Xbj(UmA,$bj(yaA))),SHA=h((A)=>baA(A[0]),(A,j,B)=>{if(A.state._tag==="Closed"){j.interruptUnsafe(yaA);return}else if(A.state.backing.has(j))return;A.state.backing.add(j),j.addObserver(($)=>{if(A.state._tag==="Closed")return;if(A.state.backing.delete(j),uw($)&&(B?.propagateInterruption===!0?!jm0($.cause):!$R($.cause)))EX(A.deferred,$)})}),Bm0=h((A)=>baA(A[0]),(A,j,B)=>Hj(()=>SHA(A,j,B))),R66=function(){let A=void 0;return()=>{if(A===void 0)A=jY(q2);return A}}()});var bHA={};wA(bHA,{make:()=>faA,fromRecord:()=>P66,Service:()=>Ym0});var x66="~effect/LayerMap",faA,P66=(A,j)=>faA((B)=>A[B],{...j,preloadKeys:j?.preload?Object.keys(A):void 0}),Ym0=()=>(A,j)=>{let B=globalThis.Error,$=B.stackTraceLimit;B.stackTraceLimit=2;let X=new B;B.stackTraceLimit=$;function q(){}let Y=q;return Object.setPrototypeOf(q,Object.getPrototypeOf(G6(A))),q.key=A,Object.defineProperty(q,"stack",{get(){return X.stack}}),Y.layerNoDeps=g0(Y)("lookup"in j?faA(j.lookup,j):P66(j.layers,j)),Y.layer=j.dependencies&&j.dependencies.length>0?O4(Y.layerNoDeps,j.dependencies):Y.layerNoDeps,Y.get=(E)=>Zz(iA(Y,(K)=>K.get(E))),Y.contextEffect=(E)=>bA(Y,(K)=>K.contextEffect(E)),Y.invalidate=(E)=>bA(Y,(K)=>K.invalidate(E)),q};var T66=x(()=>{$7();rj();lj();aB();UpA();V$();faA=nj(function*(A,j){let B=yield*l4(),$=zV.getOrCreate(B),X=yield*nJA({lookup:(q)=>N5((Y)=>I3(A(q),$,e7(Y,j1))),idleTimeToLive:j?.idleTimeToLive});return Tj({[x66]:x66,rcMap:X,get:(q)=>dQ(rm(X,q)),contextEffect:(q)=>rm(X,q),invalidate:(q)=>_dj(X,q)})})});var az={};wA(az,{withLeveledConsole:()=>Jm0,withConsoleLog:()=>yHA,withConsoleError:()=>Km0,tracerLogger:()=>Im0,toFile:()=>Om0,map:()=>b66,make:()=>cAA,layer:()=>uAA,isLogger:()=>S66,formatStructured:()=>haA,formatSimple:()=>Hm0,formatLogFmt:()=>f66,formatJson:()=>h66,defaultLogger:()=>Wm0,consoleStructured:()=>Fm0,consolePretty:()=>zm0,consoleLogFmt:()=>Zm0,consoleJson:()=>Vm0,batched:()=>g66,LogToStderr:()=>Em0,CurrentLoggers:()=>k66});var Gm0="~effect/Logger",S66=(A)=>Gj(A,Gm0),k66,Em0,b66,yHA=(A)=>sE((j)=>{return j.fiber.getRef(mw).log(A.log(j))}),Km0=(A)=>sE((j)=>{return j.fiber.getRef(mw).error(A.log(j))}),Jm0=(A)=>sE((j)=>{let B=j.fiber.getRef(mw),$=A.log(j);switch(j.logLevel){case"Debug":return B.debug($);case"Info":return B.info($);case"Trace":return B.trace($);case"Warn":return B.warn($);case"Error":case"Fatal":return B.error($);default:return B.log($)}}),Um0,Qm0=(A)=>`"${A.replace(/\\([\s\S])|(")/g,"\\$1$2")}"`,y66=(A)=>`#${A}`,v66=(A,j)=>({cause:B,date:$,fiber:X,logLevel:q,message:Y})=>{let E=(V)=>typeof V==="string"?V:G7(V,{space:j}),K=(V)=>V.match(Um0)?V:A(V),J=(V,O)=>`${$mA(V)}=${K(O)}`,U=(V,O)=>" "+J(V,O),Q=J("timestamp",$.toISOString());Q+=U("level",q),Q+=U("fiber",y66(X.id));let W=aE(Y);for(let V=0;V<W.length;V++)Q+=U("message",E(W[V]));if(B.reasons.length>0)Q+=U("cause",Tw(B));let H=$.getTime(),Z=X.getRef(HV);for(let V of Z)Q+=" "+Os(V,H);let F=X.getRef(WV);for(let[V,O]of Object.entries(F))Q+=U(V,E(O));return Q},cAA,Wm0,Hm0,f66,haA,h66,g66,zm0,Zm0,Fm0,Vm0,Im0,uAA=(A,j)=>g0(k66,J7(Us(function*(B){let $=new Set(j?.mergeWithExisting===!0?B.getRef(BR):[]);for(let X of A)$.add(W0(X)?yield*X:X);return $}))),Om0;var vHA=x(()=>{V1();fz();z5();lj();F1();i1();aB();y6();zz();k66=BR,Em0=Xm,b66=h(2,(A,j)=>sE((B)=>j(A.log(B)))),Um0=/^[^\s"=]*$/,cAA=sE,Wm0=XmA,Hm0=sE(v66(Qm0)),f66=sE(v66(JSON.stringify,0)),haA=sE(({cause:A,date:j,fiber:B,logLevel:$,message:X})=>{let q={},Y={},E=B.getRef(WV);for(let[Q,W]of Object.entries(E))q[Q]=qm(W);let K=j.getTime(),J=B.getRef(HV);for(let[Q,W]of J)Y[Q]=K-W;let U=aE(X);return{message:U.length===1?qm(U[0]):U.map(qm),level:$.toUpperCase(),timestamp:j.toISOString(),cause:A.reasons.length>0?Tw(A):void 0,annotations:q,spans:Y,fiberId:y66(B.id)}}),h66=b66(haA,sF),g66=h(2,(A,j)=>p6(gT,(B)=>{let $=[],X=b7(()=>{if($.length===0)return N0;let q=$;return $=[],j.flush(q)});return wJ((q)=>q(gw(j.window).pipe(cX(X),eg)).pipe(LEA,p6((Y)=>cQ(B,()=>og(Y))),cX(jR(()=>X)),Dq(sE((Y)=>{$.push(A.log(Y))}))))})),zm0=evj,Zm0=yHA(f66),Fm0=yHA(haA),Vm0=yHA(h66),Im0=qmA,Om0=h((A)=>S66(A[0]),(A,j,B)=>UEA(function*(){let X=yield*(yield*a5).open(j,{flag:"a+",...B}),q=new TextEncoder;return yield*g66(A,{window:B?.batchWindow??1000,flush:(Y)=>IEA(X.write(q.encode(Y.join(`
247
247
  `)+`
248
- `)))})}))});var fHA={};wA(fHA,{make:()=>Dm0,isManagedRuntime:()=>wm0});function gc(A,j){return bA(A.contextEffect,(B)=>i4(j,B))}var gaA="~effect/ManagedRuntime",wm0=(A)=>Gj(A,gaA),Dm0=(A,j)=>{let B=j?.memoMap??ZV(),$=tq("parallel"),X=D5($,"sequential"),q={onFiberStart:eY($)},Y=(U)=>U?{...U,onFiberStart:U.onFiberStart?(Q)=>{q.onFiberStart(Q),U.onFiberStart(Q)}:q.onFiberStart}:q,E,K=r0((U)=>{if(!E)E=jY(J9(I3(A,B,X),(Q)=>Hj(()=>{J.cachedContext=Q})),{...q,scheduler:U.currentScheduler});return us(kt(E))}),J={[gaA]:gaA,memoMap:B,scope:$,contextEffect:K,cachedContext:void 0,context(){return J.cachedContext===void 0?XK(J.contextEffect):Promise.resolve(J.cachedContext)},dispose(){return XK(J.disposeEffect)},disposeEffect:yj(()=>{return J.contextEffect=M5("ManagedRuntime disposed"),J.cachedContext=void 0,xB(J.scope,w5)}),runFork(U,Q){return J.cachedContext===void 0?jY(gc(J,U),Y(Q)):I$(J.cachedContext)(U,Y(Q))},runCallback(U,Q){return J.cachedContext===void 0?_cA(gc(J,U),Y(Q)):CcA(J.cachedContext)(U,Y(Q))},runSyncExit(U){return J.cachedContext===void 0?Om(gc(J,U)):TcA(J.cachedContext)(U)},runSync(U){return J.cachedContext===void 0?E4(gc(J,U)):PcA(J.cachedContext)(U)},runPromiseExit(U,Q){return J.cachedContext===void 0?xcA(gc(J,U),Y(Q)):ts(J.cachedContext)(U,Y(Q))},runPromise(U,Q){return J.cachedContext===void 0?XK(gc(J,U),Y(Q)):ss(J.cachedContext)(U,Y(Q))}};return J};var m66=x(()=>{rj();o9();K2();aB();y6();V$()});var hHA={};wA(hHA,{withSeed:()=>xm0,shuffle:()=>_m0,nextIntBetween:()=>Cm0,nextInt:()=>Lm0,nextBoolean:()=>Nm0,nextBetween:()=>Rm0,next:()=>Mm0,Random:()=>maA});function Pm0(A){let j=Array(256),B=Array(256),$=0,X=0,q=0,Y=0,E=Z$(A)?K():A;U(E);function K(){let F=new Uint32Array(2);return crypto.getRandomValues(F),F[0]+F[1]}function J(){$=0,X=0,Y=0;for(let F=0;F<256;++F)j[F]=0,B[F]=0;q=0}function U(F){let O=2654435769,D=2654435769,w=2654435769,M=2654435769,R=2654435769,_=2654435769,L=2654435769,C=2654435769,N=0,y;if(H3(F))y=Sm0(F);else y=[F];J();for(N=0;N<y.length;N++)B[N&255]+=y[N];function T(){O^=D<<11,M=M8(M,O),D=M8(D,w),D^=w>>>2,R=M8(R,D),w=M8(w,M),w^=M<<8,_=M8(_,w),M=M8(M,R),M^=R>>>16,L=M8(L,M),R=M8(R,_),R^=_<<10,C=M8(C,R),_=M8(_,L),_^=L>>>4,O=M8(O,_),L=M8(L,C),L^=C<<8,D=M8(D,L),C=M8(C,O),C^=O>>>9,w=M8(w,C),O=M8(O,D)}for(N=0;N<4;N++)T();for(N=0;N<256;N+=8)O=M8(O,B[N]),D=M8(D,B[N+1]),w=M8(w,B[N+2]),M=M8(M,B[N+3]),R=M8(R,B[N+4]),_=M8(_,B[N+5]),L=M8(L,B[N+6]),C=M8(C,B[N+7]),T(),j[N]=O,j[N+1]=D,j[N+2]=w,j[N+3]=M,j[N+4]=R,j[N+5]=_,j[N+6]=L,j[N+7]=C;for(N=0;N<256;N+=8)O=M8(O,j[N]),D=M8(D,j[N+1]),w=M8(w,j[N+2]),M=M8(M,j[N+3]),R=M8(R,j[N+4]),_=M8(_,j[N+5]),L=M8(L,j[N+6]),C=M8(C,j[N+7]),T(),j[N]=O,j[N+1]=D,j[N+2]=w,j[N+3]=M,j[N+4]=R,j[N+5]=_,j[N+6]=L,j[N+7]=C;Q(),q=256}function Q(F){let V=0,O=0,D=0;F=Z$(F)?1:Math.abs(Math.floor(F));while(F--){Y=M8(Y,1),X=M8(X,Y);for(V=0;V<256;V++){switch(V&3){case 0:{$^=$<<13;break}case 1:{$^=$>>>6;break}case 2:{$^=$<<2;break}case 3:{$^=$>>>16;break}}$=M8(j[V+128&255],$),O=j[V],j[V]=M8(j[O>>>2&255],M8($,X)),D=j[V],B[V]=M8(j[D>>>10&255],O),X=B[V]}}}function W(){if(!q--)Q(),q=255;return B[q]}function H(){return Math.floor(Z()*(Number.MAX_SAFE_INTEGER-Number.MIN_SAFE_INTEGER+1))+Number.MIN_SAFE_INTEGER}function Z(){let F=W()>>>0&2097151,V=W()>>>0;return(F*4294967296+V)/9007199254740992}return{nextIntUnsafe:H,nextDoubleUnsafe:Z}}function M8(A,j){let B=(A&65535)+(j&65535);return(A>>>16)+(j>>>16)+(B>>>16)<<16|B&65535}function Sm0(A){let j=Tm0.encode(A),B=[];for(let $=0;$<j.length;$+=4)B.push((j[$]??0)<<0|(j[$+1]??0)<<8|(j[$+2]??0)<<16|(j[$+3]??0)<<24);return B}var maA,mc=(A)=>r0((j)=>LA(A(j.getRef(maA)))),Mm0,Nm0,Lm0,Rm0=(A,j)=>mc((B)=>B.nextDoubleUnsafe()*(j-A)+A),Cm0=(A,j,B)=>{let $=B?.halfOpen===!0?0:1;return mc((X)=>{let q=Math.ceil(A),Y=Math.floor(j);return Math.floor(X.nextDoubleUnsafe()*(Y-q+$))+q})},_m0=(A)=>mc((j)=>{let B=Array.from(A);for(let $=B.length-1;$>=1;$=$-1){let X=Math.min($,Math.floor(j.nextDoubleUnsafe()*($+1))),q=B[$];B[$]=B[X],B[X]=q}return B}),xm0,Tm0;var c66=x(()=>{rj();lj();omA();y6();maA=JKA,Mm0=mc((A)=>A.nextDoubleUnsafe()),Nm0=mc((A)=>A.nextDoubleUnsafe()>0.5),Lm0=mc((A)=>A.nextIntUnsafe()),xm0=h(2,(A,j)=>t9(A,maA,Pm0(j)));Tm0=new TextEncoder});var hD={};wA(hD,{updateSomeAndGet:()=>oaA,updateSome:()=>aaA,updateAndGet:()=>raA,update:()=>dAA,setAndGet:()=>iaA,set:()=>uaA,modifySome:()=>naA,modify:()=>mHA,makeUnsafe:()=>gHA,make:()=>ym0,getUnsafe:()=>vm0,getAndUpdateSome:()=>laA,getAndUpdate:()=>paA,getAndSet:()=>daA,get:()=>caA});var km0="~effect/Ref",bm0,gHA=(A)=>{let j=Object.create(bm0);return j.ref=CR(A),j},ym0=(A)=>Hj(()=>gHA(A)),caA=(A)=>Hj(()=>A.ref.current),uaA,daA,paA,laA,iaA,mHA,naA,dAA,raA,aaA,oaA,vm0=(A)=>A.ref.current;var cHA=x(()=>{rj();lj();F1();MJA();bm0={[km0]:{_A:Tj},...K9,toJSON(){return{_id:"Ref",ref:this.ref}}},uaA=h(2,(A,j)=>Hj(()=>yt(A.ref,j))),daA=h(2,(A,j)=>Hj(()=>{let B=A.ref.current;return A.ref.current=j,B})),paA=h(2,(A,j)=>Hj(()=>{let B=A.ref.current;return A.ref.current=j(B),B})),laA=h(2,(A,j)=>Hj(()=>{let B=A.ref.current,$=j(B);if($._tag==="Some")A.ref.current=$.value;return B})),iaA=h(2,(A,j)=>Hj(()=>A.ref.current=j)),mHA=h(2,(A,j)=>Hj(()=>{let[B,$]=j(A.ref.current);return A.ref.current=$,B})),naA=h(2,(A,j)=>mHA(A,(B)=>{let[$,X]=j(B);return[$,X._tag==="None"?B:X.value]})),dAA=h(2,(A,j)=>Hj(()=>{A.ref.current=j(A.ref.current)})),raA=h(2,(A,j)=>Hj(()=>A.ref.current=j(A.ref.current))),aaA=h(2,(A,j)=>Hj(()=>{let B=j(A.ref.current);if(B._tag==="Some")A.ref.current=B.value})),oaA=h(2,(A,j)=>Hj(()=>{let B=j(A.ref.current);if(B._tag==="Some")A.ref.current=B.value;return A.ref.current}))});var aV={};wA(aV,{updateSomeEffect:()=>Bc0,updateSomeAndGetEffect:()=>Xc0,updateSomeAndGet:()=>$c0,updateSome:()=>jc0,updateEffect:()=>tm0,updateAndGetEffect:()=>Ac0,updateAndGet:()=>em0,update:()=>sm0,setAndGet:()=>om0,set:()=>am0,modifySomeEffect:()=>rm0,modifySome:()=>nm0,modifyEffect:()=>im0,modify:()=>lm0,makeUnsafe:()=>d66,make:()=>hm0,getUnsafe:()=>rV,getAndUpdateSomeEffect:()=>pm0,getAndUpdateSome:()=>dm0,getAndUpdateEffect:()=>um0,getAndUpdate:()=>cm0,getAndSet:()=>mm0,get:()=>gm0});var u66="~effect/SynchronizedRef",fm0,d66=(A)=>{let j=Object.create(fm0);return j.semaphore=JD(1),j.backing=gHA(A),j},hm0=(A)=>Hj(()=>d66(A)),rV=(A)=>A.backing.ref.current,gm0=(A)=>Hj(()=>rV(A)),mm0,cm0,um0,dm0,pm0,lm0,im0,nm0,rm0,am0,om0,sm0,tm0,em0,Ac0,jc0,Bc0,$c0,Xc0;var p66=x(()=>{rj();lj();F1();O7();cHA();cm();fm0={...K9,[u66]:u66,toJSON(){return{_id:"SynchronizedRef",value:this.backing.ref.current}}},mm0=h(2,(A,j)=>A.semaphore.withPermit(daA(A.backing,j))),cm0=h(2,(A,j)=>A.semaphore.withPermit(paA(A.backing,j))),um0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{return A.backing.ref.current=$,B})}))),dm0=h(2,(A,j)=>A.semaphore.withPermit(laA(A,j))),pm0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return bA(j(B),($)=>{if(E7($))return LA(B);return A.backing.ref.current=$.value,LA(B)})}))),lm0=h(2,(A,j)=>A.semaphore.withPermit(mHA(A.backing,j))),im0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),([$,X])=>{return A.backing.ref.current=X,$})}))),nm0=h(2,(A,j)=>A.semaphore.withPermit(naA(A.backing,j))),rm0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return bA(j(B),([$,X])=>{if(E7(X))return LA($);return A.backing.ref.current=X.value,LA($)})}))),am0=h(2,(A,j)=>A.semaphore.withPermit(uaA(A.backing,j))),om0=h(2,(A,j)=>A.semaphore.withPermit(iaA(A.backing,j))),sm0=h(2,(A,j)=>A.semaphore.withPermit(dAA(A.backing,j))),tm0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{A.backing.ref.current=$})}))),em0=h(2,(A,j)=>A.semaphore.withPermit(raA(A.backing,j))),Ac0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{return A.backing.ref.current=$,$})}))),jc0=h(2,(A,j)=>A.semaphore.withPermit(aaA(A.backing,j))),Bc0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{if(E7($))return;A.backing.ref.current=$.value})}))),$c0=h(2,(A,j)=>A.semaphore.withPermit(oaA(A.backing,j))),Xc0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return bA(j(B),($)=>{if(E7($))return LA(B);return A.backing.ref.current=$.value,LA($.value)})})))});var MA=x(()=>{lj();V1();ZJA();N66();c4();pQ();kD();$7();Xt();QV();wq();rj();Gt();o9();K2();vaA();fz();z5();lj();aB();T66();vHA();m66();O7();VJ();kR();CJA();KD();c66();zS();cHA();zz();q4();JR();W9();FS();V$();cm();k9();ze();p66()});import{createHash as l66}from"crypto";var oz;var cc=x(()=>{((ma1)=>{function A(B){return l66("sha1").update(B).digest("hex")}ma1.fast=A;function j(B){return l66("sha256").update(B).digest("hex")}ma1.sha256=j})(oz||={})});import uHA from"path";import qc0 from"os";import{randomBytes as Yc0,randomUUID as Gc0}from"crypto";import{mkdir as dHA,readFile as Ec0,rm as uc,stat as Kc0,utimes as Jc0,writeFile as i66}from"fs/promises";var Zk;var saA=x(()=>{cc();MA();((n66)=>{let A;function j(V){A=V}n66.setGlobal=j;let B=()=>{if(!A)throw Error("Flock global not set");return uHA.join(A.state,"locks")},$={staleMs:60000,timeoutMs:300000,baseDelayMs:100,maxDelayMs:2000};function X(V){if(typeof V!=="object"||V===null||!("code"in V))return;let O=V.code;if(typeof O!=="string")return;return O}function q(V,O){return new Promise((D,w)=>{if(O?.aborted){w(O.reason??Error("Aborted"));return}let M,R=()=>{O?.removeEventListener("abort",_),D()},_=()=>{if(M)clearTimeout(M);O?.removeEventListener("abort",_),w(O?.reason??Error("Aborted"))};O?.addEventListener("abort",_,{once:!0}),M=setTimeout(R,V)})}function Y(V){let O=Math.floor(V*0.3),D=Math.floor(Math.random()*(2*O+1))-O;return Math.max(0,V+D)}function E(){return performance.now()}function K(){return performance.timeOrigin+E()}async function J(V){try{return await Kc0(V)}catch(O){let D=X(O);if(D==="ENOENT"||D==="ENOTDIR")return;throw O}}async function U(V,O,D,w){let M=K(),R=await J(O);if(R)return M-R.mtimeMs>w;let _=await J(D);if(_)return M-_.mtimeMs>w;let L=await J(V);if(!L)return!1;return M-L.mtimeMs>w}async function Q(V,O){let D=Gc0?.()??Yc0(16).toString("hex"),w=uHA.join(V,"meta.json"),M=uHA.join(V,"heartbeat");try{await dHA(V,{mode:448})}catch(N){if(X(N)!=="EEXIST")throw N;if(!await U(V,M,w,O.staleMs))return{acquired:!1};let y=V+".breaker";try{await dHA(y,{mode:448})}catch(T){let m=X(T);if(m==="EEXIST"){let YA=await J(y);if(YA&&K()-YA.mtimeMs>O.staleMs)await uc(y,{recursive:!0,force:!0}).catch(()=>{return});return{acquired:!1}}if(m==="ENOENT"||m==="ENOTDIR")return{acquired:!1};throw T}try{if(!await U(V,M,w,O.staleMs))return{acquired:!1};await uc(V,{recursive:!0,force:!0});try{await dHA(V,{mode:448})}catch(T){let m=X(T);if(m==="EEXIST"||m==="ENOTEMPTY")return{acquired:!1};throw T}}finally{await uc(y,{recursive:!0,force:!0}).catch(()=>{return})}}let R={token:D,pid:process.pid,hostname:qc0.hostname(),createdAt:new Date().toISOString()};await i66(M,"",{flag:"wx"}).catch(async()=>{throw await uc(V,{recursive:!0,force:!0}),Error("Lock acquired but heartbeat already existed (possible compromise).")}),await i66(w,JSON.stringify(R,null,2),{flag:"wx"}).catch(async()=>{throw await uc(V,{recursive:!0,force:!0}),Error("Lock acquired but meta.json already existed (possible compromise).")});let _;return{acquired:!0,startHeartbeat:(N=Math.max(100,Math.floor(O.staleMs/3)))=>{if(_)return;_=setInterval(()=>{let y=new Date;Jc0(M,y,y).catch(()=>{return})},N),_.unref?.()},release:async()=>{if(_)clearInterval(_),_=void 0;if((await Ec0(w,"utf8").then((y)=>{let T=JSON.parse(y);if(!T||typeof T!=="object")return{};return{token:"token"in T&&typeof T.token==="string"?T.token:void 0}}).catch((y)=>{let T=X(y);if(T==="ENOENT"||T==="ENOTDIR")throw Error("Refusing to release: lock is compromised (metadata missing).");if(y instanceof SyntaxError)throw Error("Refusing to release: lock is compromised (metadata invalid).");throw y})).token!==D)throw Error("Refusing to release: lock token mismatch (not the owner).");await uc(V,{recursive:!0,force:!0})}}}async function W(V,O,D){let w=E()+D.timeoutMs,M=0,R=0,_=D.baseDelayMs;while(!0){O.signal?.throwIfAborted();let L=await Q(V,D);if(L.acquired)return L;if(E()>w)throw Error(`Timed out waiting for lock: ${O.key}`);M+=1;let C=Y(_);await O.onWait?.({key:O.key,attempt:M,delay:C,waited:R}),await q(C,O.signal),R+=C,_=Math.min(D.maxDelayMs,Math.floor(_*1.7))}}async function H(V,O={}){O.signal?.throwIfAborted();let D={staleMs:O.staleMs??$.staleMs,timeoutMs:O.timeoutMs??$.timeoutMs,baseDelayMs:O.baseDelayMs??$.baseDelayMs,maxDelayMs:O.maxDelayMs??$.maxDelayMs},w=O.dir??B();await dHA(w,{recursive:!0});let M=uHA.join(w,oz.fast(V)+".lock"),R=await W(M,{key:V,onWait:O.onWait,signal:O.signal},D);R.startHeartbeat();let _=()=>R.release();return{release:_,[Symbol.asyncDispose](){return _()}}}n66.acquire=H;async function Z(V,O,D={}){await using w=await H(V,D);return D.signal?.throwIfAborted(),await O()}n66.withLock=Z,n66.effect=I.fn("Flock.effect")(function*(V,O={}){return yield*I.acquireRelease(I.promise((D)=>Zk.acquire(V,{...O,signal:D})).pipe(I.withSpan("Flock.acquire",{attributes:{key:V}})),(D)=>I.promise(()=>D.release()).pipe(I.withSpan("Flock.release"))).pipe(I.asVoid)})})(Zk||={})});function WX(A){let j=process.env[A]?.toLowerCase();return j==="true"||j==="1"}function r66(A){return process.env[A]===void 0?WX("OPENCODE_EXPERIMENTAL"):WX(A)}var Uc0,Qc0,U4;var oV=x(()=>{MA();Uc0=process.env.OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT,Qc0=process.env.OPENCODE_DISABLE_FFF;U4={OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_HEADERS:process.env.OTEL_EXPORTER_OTLP_HEADERS,OPENCODE_AUTO_HEAP_SNAPSHOT:WX("OPENCODE_AUTO_HEAP_SNAPSHOT"),OPENCODE_GIT_BASH_PATH:process.env.OPENCODE_GIT_BASH_PATH,OPENCODE_CONFIG:process.env.OPENCODE_CONFIG,OPENCODE_CONFIG_CONTENT:process.env.OPENCODE_CONFIG_CONTENT,OPENCODE_DISABLE_AUTOUPDATE:WX("OPENCODE_DISABLE_AUTOUPDATE"),OPENCODE_ALWAYS_NOTIFY_UPDATE:WX("OPENCODE_ALWAYS_NOTIFY_UPDATE"),OPENCODE_DISABLE_PRUNE:WX("OPENCODE_DISABLE_PRUNE"),OPENCODE_DISABLE_TERMINAL_TITLE:WX("OPENCODE_DISABLE_TERMINAL_TITLE"),OPENCODE_SHOW_TTFD:WX("OPENCODE_SHOW_TTFD"),OPENCODE_DISABLE_AUTOCOMPACT:WX("OPENCODE_DISABLE_AUTOCOMPACT"),OPENCODE_DISABLE_MODELS_FETCH:WX("OPENCODE_DISABLE_MODELS_FETCH"),OPENCODE_DISABLE_MOUSE:WX("OPENCODE_DISABLE_MOUSE"),OPENCODE_FAKE_VCS:process.env.OPENCODE_FAKE_VCS,OPENCODE_SERVER_PASSWORD:process.env.OPENCODE_SERVER_PASSWORD,OPENCODE_SERVER_USERNAME:process.env.OPENCODE_SERVER_USERNAME,OPENCODE_DISABLE_FFF:Qc0===void 0?process.platform==="win32":WX("OPENCODE_DISABLE_FFF"),OPENCODE_EXPERIMENTAL_FILEWATCHER:R5.boolean("OPENCODE_EXPERIMENTAL_FILEWATCHER").pipe(R5.withDefault(!1)),OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER:R5.boolean("OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER").pipe(R5.withDefault(!1)),OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT:Uc0===void 0?process.platform==="win32":WX("OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT"),OPENCODE_MODELS_URL:process.env.OPENCODE_MODELS_URL,OPENCODE_MODELS_PATH:process.env.OPENCODE_MODELS_PATH,OPENCODE_DB:process.env.OPENCODE_DB,OPENCODE_WORKSPACE_ID:process.env.OPENCODE_WORKSPACE_ID,OPENCODE_EXPERIMENTAL_WORKSPACES:r66("OPENCODE_EXPERIMENTAL_WORKSPACES"),get OPENCODE_DISABLE_PROJECT_CONFIG(){return WX("OPENCODE_DISABLE_PROJECT_CONFIG")},get OPENCODE_EXPERIMENTAL_REFERENCES(){return r66("OPENCODE_EXPERIMENTAL_REFERENCES")},get OPENCODE_TUI_CONFIG(){return process.env.OPENCODE_TUI_CONFIG},get OPENCODE_CONFIG_DIR(){return process.env.OPENCODE_CONFIG_DIR},get OPENCODE_PURE(){return WX("OPENCODE_PURE")},get OPENCODE_PERMISSION(){return process.env.OPENCODE_PERMISSION},get OPENCODE_PLUGIN_META_FILE(){return process.env.OPENCODE_PLUGIN_META_FILE},get OPENCODE_CLIENT(){return process.env.OPENCODE_CLIENT??"cli"}}});var H9={};wA(H9,{unbound:()=>zc0,tags:()=>Hc0,make:()=>joA,hoist:()=>Ic0,hasUnbound:()=>wc0,group:()=>taA,compile:()=>Oc0,LayerNode:()=>H9});function Hc0(A){let j=Object.keys(A),B=Object.fromEntries(j.map(($)=>[$,Wc0($)]));return{values:B,make:($)=>(X)=>joA({...X,tag:B[$]})}}function joA(A){return{kind:"layer",name:A.service!==void 0?A.service.key:A.name,service:A.service,implementation:A.layer,dependencies:A.deps,tag:A.tag}}function zc0(A,j){return{kind:"unbound",name:A.key,service:A,dependencies:[],tag:j}}function taA(A){return{kind:"group",name:"group",dependencies:A}}function Zc0(A,j){let B=Vc0(j)?j:joA({...Fc0(A),layer:j,deps:[],tag:A.tag});if(A.name!==B.name)throw Error(`Cannot replace ${A.name} with ${B.name}`);if(A.tag!==B.tag)throw Error(`Cannot replace ${A.name} across tags`);return B}function Fc0(A){if(A.service!==void 0)return{service:A.service};return{name:A.name}}function Vc0(A){return"kind"in A&&"dependencies"in A}function BoA(A,j,B={}){let $=B.cache??new Map,X=new Set,q=[],Y=(E)=>{let K=B.resolve?.(E)??E,J=$.get(K);if(J!==void 0||$.has(K))return J;if(B.detectCycles!==!1&&X.has(K)){let U=q.indexOf(K);throw Error(`Cycle detected in layer tree: ${[...q.slice(U),K].map((Q)=>Q.name).join(" -> ")}`)}X.add(K),q.push(K);try{let U=j(K,{cache:$,visit:Y});if(!$.has(K))$.set(K,U);return U}finally{q.pop(),X.delete(K)}};return Y(A)}function Ic0(A,j,B){let $=new Map,X=a66(B);return{node:BoA(A,(Y,E)=>{if(Y.kind==="group")return{...Y,dependencies:Y.dependencies.map(E.visit)};if(Y.tag===j){let K=$.get(Y.name);if(K&&K!==Y)throw Error(`Tag ${j} has conflicting implementations for ${Y.name}`);return $.set(Y.name,eaA(Y,X)),taA([])}if(Y.kind==="unbound")return Y;return{...Y,dependencies:Y.dependencies.map(E.visit)}},{resolve:(Y)=>X.get(Y.name)??Y}),hoisted:taA(Array.from($.values()))}}function Oc0(A,j){let B=a66(j),$=new Map,X=(E)=>BoA(E,(K,J)=>{if(K.kind==="unbound")throw Error(`Unbound layer node: ${K.name}`);let U=K.dependencies.flatMap(AoA).map(J.visit),Q=K.implementation;return U.length===0?Q:Q.pipe(yA.provide(U))},{cache:$,resolve:(K)=>B.get(K.name)??K});return AoA(A).map((E)=>X(E)).reduce((E,K)=>K.pipe(yA.provideMerge(E)),yA.empty)}function a66(A){return A?.reduce((j,[B,$])=>{let X=eaA(Zc0(B,$),j),q=new Map([[B.name,X]]);for(let[Y,E]of j)j.set(Y,eaA(E,q));return j.set(B.name,X),j},new Map)??new Map}function eaA(A,j){if(j.size===0)return A;let B=new Map,$=new Set,X=[],q=(Y,E=!1)=>{let K=E?Y:j.get(Y.name)??Y,J=B.get(K);if(J!==void 0||B.has(K))return J;if($.has(K)){let U=X.indexOf(K);throw Error(`Cycle detected in layer tree: ${[...X.slice(U),K].map((Q)=>Q.name).join(" -> ")}`)}$.add(K),X.push(K);try{let U=K.dependencies.map((W)=>q(W)),Q=U.every((W,H)=>W===K.dependencies[H])?K:{...K,dependencies:U};return B.set(K,Q),Q}finally{X.pop(),$.delete(K)}};return q(A,!0)}function wc0(A,j){if(j.kind!=="unbound")throw Error(`Cannot check non-unbound layer node: ${j.name}`);return BoA(A,(B,$)=>{if(B===j)return!0;return B.dependencies.some($.visit)})}function AoA(A){return A.kind==="group"?A.dependencies.flatMap(AoA):[A]}var Wc0;var WW=x(()=>{MA();WW();Wc0=vm.nominal()});var gD={};wA(gD,{tags:()=>pAA,makeLocationNode:()=>j6,makeGlobalNode:()=>v7,Node:()=>gD});var pAA,v7,j6;var m6=x(()=>{WW();m6();pAA=H9.tags({location:["global"],global:[]}),v7=pAA.make("global"),j6=pAA.make("location")});var D7={};wA(D7,{node:()=>Rc0,make:()=>XoA,layerWith:()=>Cc0,Service:()=>Vk,Path:()=>YG,Global:()=>D7});import JC from"path";import Fk from"fs/promises";import s66 from"os";function XoA(A={}){return{home:YG.home,data:YG.data,cache:YG.cache,config:U4.OPENCODE_CONFIG_DIR??YG.config,state:YG.state,tmp:YG.tmp,bin:YG.bin,log:YG.log,repos:YG.repos,...A}}var lAA="opencode",$oA,o66,Dc0,t66,Mc0,Nc0,YG,Vk,Lc0,Rc0,Cc0=(A)=>yA.effect(Vk,I.sync(()=>Vk.of(XoA(A))));var _$=x(async()=>{V66();MA();saA();oV();m6();await _$();$oA=JC.join(xHA,lAA),o66=JC.join(F66,lAA),Dc0=JC.join(PHA,lAA),t66=JC.join(Z66,lAA),Mc0=JC.join(s66.tmpdir(),lAA),Nc0={get home(){return process.env.OPENCODE_TEST_HOME??s66.homedir()},data:$oA,bin:JC.join(o66,"bin"),log:JC.join($oA,"log"),repos:JC.join($oA,"repos"),cache:o66,config:Dc0,state:t66,tmp:Mc0},YG=Nc0;Zk.setGlobal({state:t66});await Promise.all([Fk.mkdir(YG.data,{recursive:!0}),Fk.mkdir(YG.config,{recursive:!0}),Fk.mkdir(YG.state,{recursive:!0}),Fk.mkdir(YG.tmp,{recursive:!0}),Fk.mkdir(YG.log,{recursive:!0}),Fk.mkdir(YG.bin,{recursive:!0}),Fk.mkdir(YG.repos,{recursive:!0})]);Vk=class Vk extends dA.Service()("@opencode/Global"){};Lc0=yA.effect(Vk,I.sync(()=>Vk.of(XoA()))),Rc0=v7({service:Vk,layer:Lc0,deps:[]})});var HX="0.1.3",Ik="fork";var e66=({onRequest:A,onSseError:j,onSseEvent:B,responseTransformer:$,responseValidator:X,sseDefaultRetryDelay:q,sseMaxRetryAttempts:Y,sseMaxRetryDelay:E,sseSleepFn:K,url:J,...U})=>{let Q,W=K??((F)=>new Promise((V)=>setTimeout(V,F)));return{stream:async function*(){let F=q??3000,V=0,O=U.signal??new AbortController().signal;while(!0){if(O.aborted)break;V++;let D=U.headers instanceof Headers?U.headers:new Headers(U.headers);if(Q!==void 0)D.set("Last-Event-ID",Q);try{let w={redirect:"follow",...U,body:U.serializedBody,headers:D,signal:O},M=new Request(J,w);if(A)M=await A(J,w);let _=await(U.fetch??globalThis.fetch)(M);if(!_.ok)throw Error(`SSE failed: ${_.status} ${_.statusText}`);if(!_.body)throw Error("No body in SSE response");let L=_.body.pipeThrough(new TextDecoderStream).getReader(),C="",N=()=>{try{L.cancel()}catch{}};O.addEventListener("abort",N);try{while(!0){let{done:y,value:T}=await L.read();if(y)break;C+=T,C=C.replace(/\r\n/g,`
248
+ `)))})}))});var fHA={};wA(fHA,{make:()=>Dm0,isManagedRuntime:()=>wm0});function gc(A,j){return bA(A.contextEffect,(B)=>i4(j,B))}var gaA="~effect/ManagedRuntime",wm0=(A)=>Gj(A,gaA),Dm0=(A,j)=>{let B=j?.memoMap??ZV(),$=tq("parallel"),X=D5($,"sequential"),q={onFiberStart:eY($)},Y=(U)=>U?{...U,onFiberStart:U.onFiberStart?(Q)=>{q.onFiberStart(Q),U.onFiberStart(Q)}:q.onFiberStart}:q,E,K=r0((U)=>{if(!E)E=jY(J9(I3(A,B,X),(Q)=>Hj(()=>{J.cachedContext=Q})),{...q,scheduler:U.currentScheduler});return us(kt(E))}),J={[gaA]:gaA,memoMap:B,scope:$,contextEffect:K,cachedContext:void 0,context(){return J.cachedContext===void 0?XK(J.contextEffect):Promise.resolve(J.cachedContext)},dispose(){return XK(J.disposeEffect)},disposeEffect:yj(()=>{return J.contextEffect=M5("ManagedRuntime disposed"),J.cachedContext=void 0,xB(J.scope,w5)}),runFork(U,Q){return J.cachedContext===void 0?jY(gc(J,U),Y(Q)):I$(J.cachedContext)(U,Y(Q))},runCallback(U,Q){return J.cachedContext===void 0?_cA(gc(J,U),Y(Q)):CcA(J.cachedContext)(U,Y(Q))},runSyncExit(U){return J.cachedContext===void 0?Om(gc(J,U)):TcA(J.cachedContext)(U)},runSync(U){return J.cachedContext===void 0?E4(gc(J,U)):PcA(J.cachedContext)(U)},runPromiseExit(U,Q){return J.cachedContext===void 0?xcA(gc(J,U),Y(Q)):ts(J.cachedContext)(U,Y(Q))},runPromise(U,Q){return J.cachedContext===void 0?XK(gc(J,U),Y(Q)):ss(J.cachedContext)(U,Y(Q))}};return J};var m66=x(()=>{rj();o9();K2();aB();y6();V$()});var hHA={};wA(hHA,{withSeed:()=>xm0,shuffle:()=>_m0,nextIntBetween:()=>Cm0,nextInt:()=>Lm0,nextBoolean:()=>Nm0,nextBetween:()=>Rm0,next:()=>Mm0,Random:()=>maA});function Pm0(A){let j=Array(256),B=Array(256),$=0,X=0,q=0,Y=0,E=Z$(A)?K():A;U(E);function K(){let F=new Uint32Array(2);return crypto.getRandomValues(F),F[0]+F[1]}function J(){$=0,X=0,Y=0;for(let F=0;F<256;++F)j[F]=0,B[F]=0;q=0}function U(F){let O=2654435769,D=2654435769,w=2654435769,M=2654435769,R=2654435769,_=2654435769,L=2654435769,C=2654435769,N=0,y;if(H3(F))y=Sm0(F);else y=[F];J();for(N=0;N<y.length;N++)B[N&255]+=y[N];function T(){O^=D<<11,M=M8(M,O),D=M8(D,w),D^=w>>>2,R=M8(R,D),w=M8(w,M),w^=M<<8,_=M8(_,w),M=M8(M,R),M^=R>>>16,L=M8(L,M),R=M8(R,_),R^=_<<10,C=M8(C,R),_=M8(_,L),_^=L>>>4,O=M8(O,_),L=M8(L,C),L^=C<<8,D=M8(D,L),C=M8(C,O),C^=O>>>9,w=M8(w,C),O=M8(O,D)}for(N=0;N<4;N++)T();for(N=0;N<256;N+=8)O=M8(O,B[N]),D=M8(D,B[N+1]),w=M8(w,B[N+2]),M=M8(M,B[N+3]),R=M8(R,B[N+4]),_=M8(_,B[N+5]),L=M8(L,B[N+6]),C=M8(C,B[N+7]),T(),j[N]=O,j[N+1]=D,j[N+2]=w,j[N+3]=M,j[N+4]=R,j[N+5]=_,j[N+6]=L,j[N+7]=C;for(N=0;N<256;N+=8)O=M8(O,j[N]),D=M8(D,j[N+1]),w=M8(w,j[N+2]),M=M8(M,j[N+3]),R=M8(R,j[N+4]),_=M8(_,j[N+5]),L=M8(L,j[N+6]),C=M8(C,j[N+7]),T(),j[N]=O,j[N+1]=D,j[N+2]=w,j[N+3]=M,j[N+4]=R,j[N+5]=_,j[N+6]=L,j[N+7]=C;Q(),q=256}function Q(F){let V=0,O=0,D=0;F=Z$(F)?1:Math.abs(Math.floor(F));while(F--){Y=M8(Y,1),X=M8(X,Y);for(V=0;V<256;V++){switch(V&3){case 0:{$^=$<<13;break}case 1:{$^=$>>>6;break}case 2:{$^=$<<2;break}case 3:{$^=$>>>16;break}}$=M8(j[V+128&255],$),O=j[V],j[V]=M8(j[O>>>2&255],M8($,X)),D=j[V],B[V]=M8(j[D>>>10&255],O),X=B[V]}}}function W(){if(!q--)Q(),q=255;return B[q]}function H(){return Math.floor(Z()*(Number.MAX_SAFE_INTEGER-Number.MIN_SAFE_INTEGER+1))+Number.MIN_SAFE_INTEGER}function Z(){let F=W()>>>0&2097151,V=W()>>>0;return(F*4294967296+V)/9007199254740992}return{nextIntUnsafe:H,nextDoubleUnsafe:Z}}function M8(A,j){let B=(A&65535)+(j&65535);return(A>>>16)+(j>>>16)+(B>>>16)<<16|B&65535}function Sm0(A){let j=Tm0.encode(A),B=[];for(let $=0;$<j.length;$+=4)B.push((j[$]??0)<<0|(j[$+1]??0)<<8|(j[$+2]??0)<<16|(j[$+3]??0)<<24);return B}var maA,mc=(A)=>r0((j)=>LA(A(j.getRef(maA)))),Mm0,Nm0,Lm0,Rm0=(A,j)=>mc((B)=>B.nextDoubleUnsafe()*(j-A)+A),Cm0=(A,j,B)=>{let $=B?.halfOpen===!0?0:1;return mc((X)=>{let q=Math.ceil(A),Y=Math.floor(j);return Math.floor(X.nextDoubleUnsafe()*(Y-q+$))+q})},_m0=(A)=>mc((j)=>{let B=Array.from(A);for(let $=B.length-1;$>=1;$=$-1){let X=Math.min($,Math.floor(j.nextDoubleUnsafe()*($+1))),q=B[$];B[$]=B[X],B[X]=q}return B}),xm0,Tm0;var c66=x(()=>{rj();lj();omA();y6();maA=JKA,Mm0=mc((A)=>A.nextDoubleUnsafe()),Nm0=mc((A)=>A.nextDoubleUnsafe()>0.5),Lm0=mc((A)=>A.nextIntUnsafe()),xm0=h(2,(A,j)=>t9(A,maA,Pm0(j)));Tm0=new TextEncoder});var hD={};wA(hD,{updateSomeAndGet:()=>oaA,updateSome:()=>aaA,updateAndGet:()=>raA,update:()=>dAA,setAndGet:()=>iaA,set:()=>uaA,modifySome:()=>naA,modify:()=>mHA,makeUnsafe:()=>gHA,make:()=>ym0,getUnsafe:()=>vm0,getAndUpdateSome:()=>laA,getAndUpdate:()=>paA,getAndSet:()=>daA,get:()=>caA});var km0="~effect/Ref",bm0,gHA=(A)=>{let j=Object.create(bm0);return j.ref=CR(A),j},ym0=(A)=>Hj(()=>gHA(A)),caA=(A)=>Hj(()=>A.ref.current),uaA,daA,paA,laA,iaA,mHA,naA,dAA,raA,aaA,oaA,vm0=(A)=>A.ref.current;var cHA=x(()=>{rj();lj();F1();MJA();bm0={[km0]:{_A:Tj},...K9,toJSON(){return{_id:"Ref",ref:this.ref}}},uaA=h(2,(A,j)=>Hj(()=>yt(A.ref,j))),daA=h(2,(A,j)=>Hj(()=>{let B=A.ref.current;return A.ref.current=j,B})),paA=h(2,(A,j)=>Hj(()=>{let B=A.ref.current;return A.ref.current=j(B),B})),laA=h(2,(A,j)=>Hj(()=>{let B=A.ref.current,$=j(B);if($._tag==="Some")A.ref.current=$.value;return B})),iaA=h(2,(A,j)=>Hj(()=>A.ref.current=j)),mHA=h(2,(A,j)=>Hj(()=>{let[B,$]=j(A.ref.current);return A.ref.current=$,B})),naA=h(2,(A,j)=>mHA(A,(B)=>{let[$,X]=j(B);return[$,X._tag==="None"?B:X.value]})),dAA=h(2,(A,j)=>Hj(()=>{A.ref.current=j(A.ref.current)})),raA=h(2,(A,j)=>Hj(()=>A.ref.current=j(A.ref.current))),aaA=h(2,(A,j)=>Hj(()=>{let B=j(A.ref.current);if(B._tag==="Some")A.ref.current=B.value})),oaA=h(2,(A,j)=>Hj(()=>{let B=j(A.ref.current);if(B._tag==="Some")A.ref.current=B.value;return A.ref.current}))});var aV={};wA(aV,{updateSomeEffect:()=>Bc0,updateSomeAndGetEffect:()=>Xc0,updateSomeAndGet:()=>$c0,updateSome:()=>jc0,updateEffect:()=>tm0,updateAndGetEffect:()=>Ac0,updateAndGet:()=>em0,update:()=>sm0,setAndGet:()=>om0,set:()=>am0,modifySomeEffect:()=>rm0,modifySome:()=>nm0,modifyEffect:()=>im0,modify:()=>lm0,makeUnsafe:()=>d66,make:()=>hm0,getUnsafe:()=>rV,getAndUpdateSomeEffect:()=>pm0,getAndUpdateSome:()=>dm0,getAndUpdateEffect:()=>um0,getAndUpdate:()=>cm0,getAndSet:()=>mm0,get:()=>gm0});var u66="~effect/SynchronizedRef",fm0,d66=(A)=>{let j=Object.create(fm0);return j.semaphore=JD(1),j.backing=gHA(A),j},hm0=(A)=>Hj(()=>d66(A)),rV=(A)=>A.backing.ref.current,gm0=(A)=>Hj(()=>rV(A)),mm0,cm0,um0,dm0,pm0,lm0,im0,nm0,rm0,am0,om0,sm0,tm0,em0,Ac0,jc0,Bc0,$c0,Xc0;var p66=x(()=>{rj();lj();F1();O7();cHA();cm();fm0={...K9,[u66]:u66,toJSON(){return{_id:"SynchronizedRef",value:this.backing.ref.current}}},mm0=h(2,(A,j)=>A.semaphore.withPermit(daA(A.backing,j))),cm0=h(2,(A,j)=>A.semaphore.withPermit(paA(A.backing,j))),um0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{return A.backing.ref.current=$,B})}))),dm0=h(2,(A,j)=>A.semaphore.withPermit(laA(A,j))),pm0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return bA(j(B),($)=>{if(E7($))return LA(B);return A.backing.ref.current=$.value,LA(B)})}))),lm0=h(2,(A,j)=>A.semaphore.withPermit(mHA(A.backing,j))),im0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),([$,X])=>{return A.backing.ref.current=X,$})}))),nm0=h(2,(A,j)=>A.semaphore.withPermit(naA(A.backing,j))),rm0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return bA(j(B),([$,X])=>{if(E7(X))return LA($);return A.backing.ref.current=X.value,LA($)})}))),am0=h(2,(A,j)=>A.semaphore.withPermit(uaA(A.backing,j))),om0=h(2,(A,j)=>A.semaphore.withPermit(iaA(A.backing,j))),sm0=h(2,(A,j)=>A.semaphore.withPermit(dAA(A.backing,j))),tm0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{A.backing.ref.current=$})}))),em0=h(2,(A,j)=>A.semaphore.withPermit(raA(A.backing,j))),Ac0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{return A.backing.ref.current=$,$})}))),jc0=h(2,(A,j)=>A.semaphore.withPermit(aaA(A.backing,j))),Bc0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return iA(j(B),($)=>{if(E7($))return;A.backing.ref.current=$.value})}))),$c0=h(2,(A,j)=>A.semaphore.withPermit(oaA(A.backing,j))),Xc0=h(2,(A,j)=>A.semaphore.withPermit(yj(()=>{let B=rV(A);return bA(j(B),($)=>{if(E7($))return LA(B);return A.backing.ref.current=$.value,LA($.value)})})))});var MA=x(()=>{lj();V1();ZJA();N66();c4();pQ();kD();$7();Xt();QV();wq();rj();Gt();o9();K2();vaA();fz();z5();lj();aB();T66();vHA();m66();O7();VJ();kR();CJA();KD();c66();zS();cHA();zz();q4();JR();W9();FS();V$();cm();k9();ze();p66()});import{createHash as l66}from"crypto";var oz;var cc=x(()=>{((ma1)=>{function A(B){return l66("sha1").update(B).digest("hex")}ma1.fast=A;function j(B){return l66("sha256").update(B).digest("hex")}ma1.sha256=j})(oz||={})});import uHA from"path";import qc0 from"os";import{randomBytes as Yc0,randomUUID as Gc0}from"crypto";import{mkdir as dHA,readFile as Ec0,rm as uc,stat as Kc0,utimes as Jc0,writeFile as i66}from"fs/promises";var Zk;var saA=x(()=>{cc();MA();((n66)=>{let A;function j(V){A=V}n66.setGlobal=j;let B=()=>{if(!A)throw Error("Flock global not set");return uHA.join(A.state,"locks")},$={staleMs:60000,timeoutMs:300000,baseDelayMs:100,maxDelayMs:2000};function X(V){if(typeof V!=="object"||V===null||!("code"in V))return;let O=V.code;if(typeof O!=="string")return;return O}function q(V,O){return new Promise((D,w)=>{if(O?.aborted){w(O.reason??Error("Aborted"));return}let M,R=()=>{O?.removeEventListener("abort",_),D()},_=()=>{if(M)clearTimeout(M);O?.removeEventListener("abort",_),w(O?.reason??Error("Aborted"))};O?.addEventListener("abort",_,{once:!0}),M=setTimeout(R,V)})}function Y(V){let O=Math.floor(V*0.3),D=Math.floor(Math.random()*(2*O+1))-O;return Math.max(0,V+D)}function E(){return performance.now()}function K(){return performance.timeOrigin+E()}async function J(V){try{return await Kc0(V)}catch(O){let D=X(O);if(D==="ENOENT"||D==="ENOTDIR")return;throw O}}async function U(V,O,D,w){let M=K(),R=await J(O);if(R)return M-R.mtimeMs>w;let _=await J(D);if(_)return M-_.mtimeMs>w;let L=await J(V);if(!L)return!1;return M-L.mtimeMs>w}async function Q(V,O){let D=Gc0?.()??Yc0(16).toString("hex"),w=uHA.join(V,"meta.json"),M=uHA.join(V,"heartbeat");try{await dHA(V,{mode:448})}catch(N){if(X(N)!=="EEXIST")throw N;if(!await U(V,M,w,O.staleMs))return{acquired:!1};let y=V+".breaker";try{await dHA(y,{mode:448})}catch(T){let m=X(T);if(m==="EEXIST"){let YA=await J(y);if(YA&&K()-YA.mtimeMs>O.staleMs)await uc(y,{recursive:!0,force:!0}).catch(()=>{return});return{acquired:!1}}if(m==="ENOENT"||m==="ENOTDIR")return{acquired:!1};throw T}try{if(!await U(V,M,w,O.staleMs))return{acquired:!1};await uc(V,{recursive:!0,force:!0});try{await dHA(V,{mode:448})}catch(T){let m=X(T);if(m==="EEXIST"||m==="ENOTEMPTY")return{acquired:!1};throw T}}finally{await uc(y,{recursive:!0,force:!0}).catch(()=>{return})}}let R={token:D,pid:process.pid,hostname:qc0.hostname(),createdAt:new Date().toISOString()};await i66(M,"",{flag:"wx"}).catch(async()=>{throw await uc(V,{recursive:!0,force:!0}),Error("Lock acquired but heartbeat already existed (possible compromise).")}),await i66(w,JSON.stringify(R,null,2),{flag:"wx"}).catch(async()=>{throw await uc(V,{recursive:!0,force:!0}),Error("Lock acquired but meta.json already existed (possible compromise).")});let _;return{acquired:!0,startHeartbeat:(N=Math.max(100,Math.floor(O.staleMs/3)))=>{if(_)return;_=setInterval(()=>{let y=new Date;Jc0(M,y,y).catch(()=>{return})},N),_.unref?.()},release:async()=>{if(_)clearInterval(_),_=void 0;if((await Ec0(w,"utf8").then((y)=>{let T=JSON.parse(y);if(!T||typeof T!=="object")return{};return{token:"token"in T&&typeof T.token==="string"?T.token:void 0}}).catch((y)=>{let T=X(y);if(T==="ENOENT"||T==="ENOTDIR")throw Error("Refusing to release: lock is compromised (metadata missing).");if(y instanceof SyntaxError)throw Error("Refusing to release: lock is compromised (metadata invalid).");throw y})).token!==D)throw Error("Refusing to release: lock token mismatch (not the owner).");await uc(V,{recursive:!0,force:!0})}}}async function W(V,O,D){let w=E()+D.timeoutMs,M=0,R=0,_=D.baseDelayMs;while(!0){O.signal?.throwIfAborted();let L=await Q(V,D);if(L.acquired)return L;if(E()>w)throw Error(`Timed out waiting for lock: ${O.key}`);M+=1;let C=Y(_);await O.onWait?.({key:O.key,attempt:M,delay:C,waited:R}),await q(C,O.signal),R+=C,_=Math.min(D.maxDelayMs,Math.floor(_*1.7))}}async function H(V,O={}){O.signal?.throwIfAborted();let D={staleMs:O.staleMs??$.staleMs,timeoutMs:O.timeoutMs??$.timeoutMs,baseDelayMs:O.baseDelayMs??$.baseDelayMs,maxDelayMs:O.maxDelayMs??$.maxDelayMs},w=O.dir??B();await dHA(w,{recursive:!0});let M=uHA.join(w,oz.fast(V)+".lock"),R=await W(M,{key:V,onWait:O.onWait,signal:O.signal},D);R.startHeartbeat();let _=()=>R.release();return{release:_,[Symbol.asyncDispose](){return _()}}}n66.acquire=H;async function Z(V,O,D={}){await using w=await H(V,D);return D.signal?.throwIfAborted(),await O()}n66.withLock=Z,n66.effect=I.fn("Flock.effect")(function*(V,O={}){return yield*I.acquireRelease(I.promise((D)=>Zk.acquire(V,{...O,signal:D})).pipe(I.withSpan("Flock.acquire",{attributes:{key:V}})),(D)=>I.promise(()=>D.release()).pipe(I.withSpan("Flock.release"))).pipe(I.asVoid)})})(Zk||={})});function WX(A){let j=process.env[A]?.toLowerCase();return j==="true"||j==="1"}function r66(A){return process.env[A]===void 0?WX("OPENCODE_EXPERIMENTAL"):WX(A)}var Uc0,Qc0,U4;var oV=x(()=>{MA();Uc0=process.env.OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT,Qc0=process.env.OPENCODE_DISABLE_FFF;U4={OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_HEADERS:process.env.OTEL_EXPORTER_OTLP_HEADERS,OPENCODE_AUTO_HEAP_SNAPSHOT:WX("OPENCODE_AUTO_HEAP_SNAPSHOT"),OPENCODE_GIT_BASH_PATH:process.env.OPENCODE_GIT_BASH_PATH,OPENCODE_CONFIG:process.env.OPENCODE_CONFIG,OPENCODE_CONFIG_CONTENT:process.env.OPENCODE_CONFIG_CONTENT,OPENCODE_DISABLE_AUTOUPDATE:WX("OPENCODE_DISABLE_AUTOUPDATE"),OPENCODE_ALWAYS_NOTIFY_UPDATE:WX("OPENCODE_ALWAYS_NOTIFY_UPDATE"),OPENCODE_DISABLE_PRUNE:WX("OPENCODE_DISABLE_PRUNE"),OPENCODE_DISABLE_TERMINAL_TITLE:WX("OPENCODE_DISABLE_TERMINAL_TITLE"),OPENCODE_SHOW_TTFD:WX("OPENCODE_SHOW_TTFD"),OPENCODE_DISABLE_AUTOCOMPACT:WX("OPENCODE_DISABLE_AUTOCOMPACT"),OPENCODE_DISABLE_MODELS_FETCH:WX("OPENCODE_DISABLE_MODELS_FETCH"),OPENCODE_DISABLE_MOUSE:WX("OPENCODE_DISABLE_MOUSE"),OPENCODE_FAKE_VCS:process.env.OPENCODE_FAKE_VCS,OPENCODE_SERVER_PASSWORD:process.env.OPENCODE_SERVER_PASSWORD,OPENCODE_SERVER_USERNAME:process.env.OPENCODE_SERVER_USERNAME,OPENCODE_DISABLE_FFF:Qc0===void 0?process.platform==="win32":WX("OPENCODE_DISABLE_FFF"),OPENCODE_EXPERIMENTAL_FILEWATCHER:R5.boolean("OPENCODE_EXPERIMENTAL_FILEWATCHER").pipe(R5.withDefault(!1)),OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER:R5.boolean("OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER").pipe(R5.withDefault(!1)),OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT:Uc0===void 0?process.platform==="win32":WX("OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT"),OPENCODE_MODELS_URL:process.env.OPENCODE_MODELS_URL,OPENCODE_MODELS_PATH:process.env.OPENCODE_MODELS_PATH,OPENCODE_DB:process.env.OPENCODE_DB,OPENCODE_WORKSPACE_ID:process.env.OPENCODE_WORKSPACE_ID,OPENCODE_EXPERIMENTAL_WORKSPACES:r66("OPENCODE_EXPERIMENTAL_WORKSPACES"),get OPENCODE_DISABLE_PROJECT_CONFIG(){return WX("OPENCODE_DISABLE_PROJECT_CONFIG")},get OPENCODE_EXPERIMENTAL_REFERENCES(){return r66("OPENCODE_EXPERIMENTAL_REFERENCES")},get OPENCODE_TUI_CONFIG(){return process.env.OPENCODE_TUI_CONFIG},get OPENCODE_CONFIG_DIR(){return process.env.OPENCODE_CONFIG_DIR},get OPENCODE_PURE(){return WX("OPENCODE_PURE")},get OPENCODE_PERMISSION(){return process.env.OPENCODE_PERMISSION},get OPENCODE_PLUGIN_META_FILE(){return process.env.OPENCODE_PLUGIN_META_FILE},get OPENCODE_CLIENT(){return process.env.OPENCODE_CLIENT??"cli"}}});var H9={};wA(H9,{unbound:()=>zc0,tags:()=>Hc0,make:()=>joA,hoist:()=>Ic0,hasUnbound:()=>wc0,group:()=>taA,compile:()=>Oc0,LayerNode:()=>H9});function Hc0(A){let j=Object.keys(A),B=Object.fromEntries(j.map(($)=>[$,Wc0($)]));return{values:B,make:($)=>(X)=>joA({...X,tag:B[$]})}}function joA(A){return{kind:"layer",name:A.service!==void 0?A.service.key:A.name,service:A.service,implementation:A.layer,dependencies:A.deps,tag:A.tag}}function zc0(A,j){return{kind:"unbound",name:A.key,service:A,dependencies:[],tag:j}}function taA(A){return{kind:"group",name:"group",dependencies:A}}function Zc0(A,j){let B=Vc0(j)?j:joA({...Fc0(A),layer:j,deps:[],tag:A.tag});if(A.name!==B.name)throw Error(`Cannot replace ${A.name} with ${B.name}`);if(A.tag!==B.tag)throw Error(`Cannot replace ${A.name} across tags`);return B}function Fc0(A){if(A.service!==void 0)return{service:A.service};return{name:A.name}}function Vc0(A){return"kind"in A&&"dependencies"in A}function BoA(A,j,B={}){let $=B.cache??new Map,X=new Set,q=[],Y=(E)=>{let K=B.resolve?.(E)??E,J=$.get(K);if(J!==void 0||$.has(K))return J;if(B.detectCycles!==!1&&X.has(K)){let U=q.indexOf(K);throw Error(`Cycle detected in layer tree: ${[...q.slice(U),K].map((Q)=>Q.name).join(" -> ")}`)}X.add(K),q.push(K);try{let U=j(K,{cache:$,visit:Y});if(!$.has(K))$.set(K,U);return U}finally{q.pop(),X.delete(K)}};return Y(A)}function Ic0(A,j,B){let $=new Map,X=a66(B);return{node:BoA(A,(Y,E)=>{if(Y.kind==="group")return{...Y,dependencies:Y.dependencies.map(E.visit)};if(Y.tag===j){let K=$.get(Y.name);if(K&&K!==Y)throw Error(`Tag ${j} has conflicting implementations for ${Y.name}`);return $.set(Y.name,eaA(Y,X)),taA([])}if(Y.kind==="unbound")return Y;return{...Y,dependencies:Y.dependencies.map(E.visit)}},{resolve:(Y)=>X.get(Y.name)??Y}),hoisted:taA(Array.from($.values()))}}function Oc0(A,j){let B=a66(j),$=new Map,X=(E)=>BoA(E,(K,J)=>{if(K.kind==="unbound")throw Error(`Unbound layer node: ${K.name}`);let U=K.dependencies.flatMap(AoA).map(J.visit),Q=K.implementation;return U.length===0?Q:Q.pipe(yA.provide(U))},{cache:$,resolve:(K)=>B.get(K.name)??K});return AoA(A).map((E)=>X(E)).reduce((E,K)=>K.pipe(yA.provideMerge(E)),yA.empty)}function a66(A){return A?.reduce((j,[B,$])=>{let X=eaA(Zc0(B,$),j),q=new Map([[B.name,X]]);for(let[Y,E]of j)j.set(Y,eaA(E,q));return j.set(B.name,X),j},new Map)??new Map}function eaA(A,j){if(j.size===0)return A;let B=new Map,$=new Set,X=[],q=(Y,E=!1)=>{let K=E?Y:j.get(Y.name)??Y,J=B.get(K);if(J!==void 0||B.has(K))return J;if($.has(K)){let U=X.indexOf(K);throw Error(`Cycle detected in layer tree: ${[...X.slice(U),K].map((Q)=>Q.name).join(" -> ")}`)}$.add(K),X.push(K);try{let U=K.dependencies.map((W)=>q(W)),Q=U.every((W,H)=>W===K.dependencies[H])?K:{...K,dependencies:U};return B.set(K,Q),Q}finally{X.pop(),$.delete(K)}};return q(A,!0)}function wc0(A,j){if(j.kind!=="unbound")throw Error(`Cannot check non-unbound layer node: ${j.name}`);return BoA(A,(B,$)=>{if(B===j)return!0;return B.dependencies.some($.visit)})}function AoA(A){return A.kind==="group"?A.dependencies.flatMap(AoA):[A]}var Wc0;var WW=x(()=>{MA();WW();Wc0=vm.nominal()});var gD={};wA(gD,{tags:()=>pAA,makeLocationNode:()=>j6,makeGlobalNode:()=>v7,Node:()=>gD});var pAA,v7,j6;var m6=x(()=>{WW();m6();pAA=H9.tags({location:["global"],global:[]}),v7=pAA.make("global"),j6=pAA.make("location")});var D7={};wA(D7,{node:()=>Rc0,make:()=>XoA,layerWith:()=>Cc0,Service:()=>Vk,Path:()=>YG,Global:()=>D7});import JC from"path";import Fk from"fs/promises";import s66 from"os";function XoA(A={}){return{home:YG.home,data:YG.data,cache:YG.cache,config:U4.OPENCODE_CONFIG_DIR??YG.config,state:YG.state,tmp:YG.tmp,bin:YG.bin,log:YG.log,repos:YG.repos,...A}}var lAA="opencode",$oA,o66,Dc0,t66,Mc0,Nc0,YG,Vk,Lc0,Rc0,Cc0=(A)=>yA.effect(Vk,I.sync(()=>Vk.of(XoA(A))));var _$=x(async()=>{V66();MA();saA();oV();m6();await _$();$oA=JC.join(xHA,lAA),o66=JC.join(F66,lAA),Dc0=JC.join(PHA,lAA),t66=JC.join(Z66,lAA),Mc0=JC.join(s66.tmpdir(),lAA),Nc0={get home(){return process.env.OPENCODE_TEST_HOME??s66.homedir()},data:$oA,bin:JC.join(o66,"bin"),log:JC.join($oA,"log"),repos:JC.join($oA,"repos"),cache:o66,config:Dc0,state:t66,tmp:Mc0},YG=Nc0;Zk.setGlobal({state:t66});await Promise.all([Fk.mkdir(YG.data,{recursive:!0}),Fk.mkdir(YG.config,{recursive:!0}),Fk.mkdir(YG.state,{recursive:!0}),Fk.mkdir(YG.tmp,{recursive:!0}),Fk.mkdir(YG.log,{recursive:!0}),Fk.mkdir(YG.bin,{recursive:!0}),Fk.mkdir(YG.repos,{recursive:!0})]);Vk=class Vk extends dA.Service()("@opencode/Global"){};Lc0=yA.effect(Vk,I.sync(()=>Vk.of(XoA()))),Rc0=v7({service:Vk,layer:Lc0,deps:[]})});var HX="0.6.0",Ik="fork";var e66=({onRequest:A,onSseError:j,onSseEvent:B,responseTransformer:$,responseValidator:X,sseDefaultRetryDelay:q,sseMaxRetryAttempts:Y,sseMaxRetryDelay:E,sseSleepFn:K,url:J,...U})=>{let Q,W=K??((F)=>new Promise((V)=>setTimeout(V,F)));return{stream:async function*(){let F=q??3000,V=0,O=U.signal??new AbortController().signal;while(!0){if(O.aborted)break;V++;let D=U.headers instanceof Headers?U.headers:new Headers(U.headers);if(Q!==void 0)D.set("Last-Event-ID",Q);try{let w={redirect:"follow",...U,body:U.serializedBody,headers:D,signal:O},M=new Request(J,w);if(A)M=await A(J,w);let _=await(U.fetch??globalThis.fetch)(M);if(!_.ok)throw Error(`SSE failed: ${_.status} ${_.statusText}`);if(!_.body)throw Error("No body in SSE response");let L=_.body.pipeThrough(new TextDecoderStream).getReader(),C="",N=()=>{try{L.cancel()}catch{}};O.addEventListener("abort",N);try{while(!0){let{done:y,value:T}=await L.read();if(y)break;C+=T,C=C.replace(/\r\n/g,`
249
249
  `).replace(/\r/g,`
250
250
  `);let m=C.split(`
251
251
 
@@ -2926,4 +2926,4 @@ Optional controls support result count, live crawling ('fallback' or 'preferred'
2926
2926
  The current year is ${new Date().getFullYear()}. Use this year when searching for recent information or current events.`,S70=z.Struct({query:z.String.annotate({description:"Websearch query"}),numResults:z.optional(W7.check(z.isLessThanOrEqualTo(rPj))).annotate({description:`Number of search results to return (default: 8, maximum: ${rPj})`}),livecrawl:z.optional(z.Literals(["fallback","preferred"])).annotate({description:"Live crawl mode - 'fallback': use live crawling as backup if cached unavailable, 'preferred': prioritize live crawling (default: 'fallback')"}),type:z.optional(z.Literals(["auto","fast","deep"])).annotate({description:"Search type - 'auto': balanced search (default), 'fast': quick results, 'deep': comprehensive search"}),contextMaxCharacters:z.optional(W7.check(z.isLessThanOrEqualTo(aPj))).annotate({description:`Maximum characters for context string optimized for models (default: 10000, maximum: ${aPj})`})}),k70=z.Literals(["exa","parallel"]);$o=class $o extends dA.Service()("@opencode/v2/WebSearchConfig"){};b70=yA.sync($o,()=>$o.of({provider:process.env.OPENCODE_WEBSEARCH_PROVIDER==="exa"||process.env.OPENCODE_WEBSEARCH_PROVIDER==="parallel"?process.env.OPENCODE_WEBSEARCH_PROVIDER:void 0,enableExa:WX("OPENCODE_EXPERIMENTAL")||WX("OPENCODE_ENABLE_EXA")||WX("OPENCODE_EXPERIMENTAL_EXA"),enableParallel:WX("OPENCODE_ENABLE_PARALLEL")||WX("OPENCODE_EXPERIMENTAL_PARALLEL"),exaApiKey:process.env.EXA_API_KEY,parallelApiKey:process.env.PARALLEL_API_KEY})),y70=j6({service:$o,layer:b70,deps:[]});gy1=z.Struct({result:z.Struct({content:z.Array(z.Struct({type:z.String,text:z.String}))})}),my1=z.decodeUnknownEffect(z.fromJsonString(gy1)),f70=I.fn("WebSearchTool.parseResponse")(function*(A){let j=A.trim(),B=j?yield*C70(j):void 0;if(B)return B;for(let $ of A.split(`
2927
2927
  `)){if(!$.startsWith("data: "))continue;let X=yield*C70($.substring(6));if(X)return X}return}),cy1=z.Struct({query:z.String,type:z.String,numResults:z.Number,livecrawl:z.String,contextMaxCharacters:z.optional(z.Number)}),uy1=z.Struct({objective:z.String,search_queries:z.Array(z.String),session_id:z.String}),ly1=z.Struct({provider:k70,text:z.String}),iy1=yA.effectDiscard(I.gen(function*(){let A=yield*j4.Service,j=yield*a1.HttpClient,B=yield*$o,$=yield*p7.Service;yield*A.register({[iPj]:m1.make({description:T70,input:S70,output:ly1,toModelOutput:({output:X})=>[{type:"text",text:X.text}],execute:(X,q)=>{let Y=v70(q.sessionID,B,B.provider);return I.gen(function*(){yield*$.assert({action:iPj,resources:[X.query],save:["*"],metadata:{...X,provider:Y},sessionID:q.sessionID,agent:q.agent,source:{type:"tool",messageID:q.assistantMessageID,callID:q.toolCallID}});let E=Y==="exa"?yield*_70(j,py1(B.exaApiKey),"web_search_exa",cy1,{query:X.query,type:X.type||"auto",numResults:X.numResults||8,livecrawl:X.livecrawl||"fallback",contextMaxCharacters:X.contextMaxCharacters}):yield*_70(j,P70,"web_search",uy1,{objective:X.query,search_queries:[X.query],session_id:q.sessionID},{"User-Agent":`opencode/${HX}`,...B.parallelApiKey?{Authorization:`Bearer ${B.parallelApiKey}`}:{}});return{provider:Y,text:E??x70}}).pipe(I.mapError(()=>new hB({message:`Unable to search the web for ${X.query}`})))}})}).pipe(I.orDie)})),ny1=j6({name:"tool/websearch",layer:iy1,deps:[x1.node,p7.node,Hb.httpClient,y70]})});var Q2A={};wA(Q2A,{toModelOutput:()=>c70,node:()=>ay1,name:()=>h70,WriteTool:()=>Q2A,Output:()=>m70,Input:()=>g70});var h70="write",g70,m70,c70=(A)=>`${A.existed?"Wrote":"Created"} file successfully: ${A.resource}`,ry1,ay1;var tPj=x(async()=>{pq();MA();m6();bd();G3();yE();await _j([tPj(),V_(),bq(),E3()]);g70=z.Struct({path:z.String.annotate({description:"File path to write. Relative paths resolve within the active Location. Absolute paths inside that Location are accepted; external absolute paths require external_directory approval."}),content:z.String.annotate({description:"Content to write to the file"})}),m70=z.Struct({operation:z.Literal("write"),target:z.String,resource:z.String,existed:z.Boolean}),ry1=yA.effectDiscard(I.gen(function*(){let A=yield*j4.Service,j=yield*Y5.Service,B=yield*BE.Service,$=yield*p7.Service;yield*A.register({[h70]:m1.withPermission(m1.make({description:"Write content to one file. Relative paths resolve within the active Location. Absolute paths inside the Location are accepted. Explicit external absolute paths require external_directory approval before edit approval.",input:g70,output:m70,toModelOutput:({output:X})=>[{type:"text",text:c70(X)}],execute:(X,q)=>I.gen(function*(){let Y={type:"tool",messageID:q.assistantMessageID,callID:q.toolCallID},E=yield*j.resolve({path:X.path,kind:"file"}),K=E.externalDirectory;if(K)yield*$.assert({...Y5.externalDirectoryPermission(K),sessionID:q.sessionID,agent:q.agent,source:Y});return yield*$.assert({action:"edit",resources:[E.resource],save:["*"],sessionID:q.sessionID,agent:q.agent,source:Y}),yield*B.writeTextPreservingBom({target:E,content:X.content})}).pipe(I.mapError(()=>new hB({message:`Unable to write ${X.path}`})))}),"edit")}).pipe(I.orDie)})),ay1=j6({name:"tool/write",layer:ry1,deps:[x1.node,Y5.node,BE.node,p7.node]})});var W2A={};wA(W2A,{node:()=>oy1,BuiltInTools:()=>W2A});var oy1;var ePj=x(async()=>{m6();MA();await _j([ePj(),d_j(),o_j(),t_j(),Axj(),Bxj(),$xj(),Kxj(),Uxj(),Wxj(),lPj(),sPj(),tPj()]);oy1=j6({name:"built-in-tools",layer:yA.empty,deps:[TGA.node,xGA.node,SGA.node,kGA.node,bGA.node,yGA.node,mGA.node,cGA.node,uGA.node,J2A.node,U2A.node,Q2A.node]})});function ATj(A=[]){return yA.effect(q$.Service,bHA.make((j)=>{let B=A.concat([[M6.node,M6.boundNode(j)]]),$=H9.hoist(sy1,gD.tags.values.global,B);return H9.compile($.node).pipe(yA.fresh,yA.tap(()=>I.logInfo("booting location services",{directory:j.directory,workspaceID:j.workspaceID})),yA.provide(H9.compile($.hoisted)))},{idleTimeToLive:"60 minutes"}))}var sy1,$a9;var yvA=x(async()=>{MA();NW();S6A();Rb();WW();m6();bd();Ta();await _j([LI(),WG(),PI(),bIA(),u7j(),D0A(),eJ(),h1(),V_(),I_(),bq(),KBA(),PB(),Td(),qGA(),ZyA(),xa(),PM(),wyA(),yt7(),yyA(),fyA(),SZ(),NyA(),c0A(),m_j(),ePj(),lyA(),E3(),FGA(),I_()]);sy1=H9.group([M6.node,jE.node,R0.node,sB.node,L2.node,Y$.node,k7.node,x5.node,QI.node,uW.node,XGA.node,bE.node,bE.refreshNode,F_.node,Z8.node,I0A.node,VQ.node,s1.node,YJ.node,_GA.node,Y5.node,BE.node,p7.node,bF.node,x1.node,x1.toolsNode,SI.node,dP.node,uP.node,qw.node,Y3.node,vE.node,W2A.node,rP.node,PK.node,bt7]);$a9=ATj()});var lh={};wA(lh,{build:()=>ty1,AppNodeBuilder:()=>lh});function ty1(A,j=[]){let B=j;if(H9.hasUnbound(A,q$.node)&&!ey1(j,q$.node)){let $=ATj(j),X=v7({service:q$.Service,layer:$,deps:[]});B=j.concat([[q$.node,X]])}return H9.compile(A,B)}function ey1(A,j){return A.some(([B])=>B.name===j.name)}var vvA=x(async()=>{WW();m6();await _j([yvA(),I_(),vvA()])});var ih={};wA(ih,{PtyTicket:()=>ih,ConnectToken:()=>Av1});var Av1;var fvA=x(()=>{fvA();MA();h7();Av1=z.Struct({ticket:z.String,expires_in:W7}).annotate({identifier:"PtyTicket.ConnectToken"})});var nh={};wA(nh,{node:()=>Gv1,make:()=>u70,Service:()=>H2A,PtyTicket:()=>nh,ConnectToken:()=>$v1});function Xv1(A,j){return A.ptyID===j.ptyID&&A.directory===j.directory&&A.workspaceID===j.workspaceID}var jv1,Bv1=1e4,$v1,H2A,qv1=()=>I.die("PtyTicket cache must be used via set/invalidateWhen, never get"),u70=(A=jv1)=>I.gen(function*(){let j=yield*hc.make({capacity:Bv1,lookup:qv1,timeToLive:A}),B=Math.max(1,Math.round(h0.toSeconds(h0.fromInputUnsafe(A))));return H2A.of({issue:I.fn("PtyTicket.issue")(function*($){let X=crypto.randomUUID();return yield*hc.set(j,X,$),{ticket:X,expires_in:B}}),consume:I.fn("PtyTicket.consume")(function*($){return yield*hc.invalidateWhen(j,$.ticket,(X)=>Xv1(X,$))})})}),Yv1,Gv1;var hvA=x(()=>{hvA();fvA();MA();m6();jv1=h0.seconds(60),$v1=ih.ConnectToken;H2A=class H2A extends dA.Service()("@opencode/PtyTicket"){};Yv1=yA.effect(H2A,u70()),Gv1=v7({service:H2A,layer:Yv1,deps:[]})});var z2A={};wA(z2A,{make:()=>Ev1,SessionRunCoordinator:()=>z2A});var Ev1=(A)=>I.gen(function*(){let j=new Map,B=yield*mJ.makeRuntime(),$=()=>({done:OB.makeUnsafe(),pendingWake:!1,stopping:!1}),X=(J,U,Q,W=!1)=>{let H=OB.makeUnsafe(),Z=B((W?I.yieldNow:OB.await(H)).pipe(I.andThen(I.suspend(()=>A.drain(J,Q))),I.onExit((F)=>I.sync(()=>q(J,U,F))),I.exit,I.asVoid));if(U.owner=Z,!W)OB.doneUnsafe(H,I.void)},q=(J,U,Q)=>{if(J8.isSuccess(Q)&&!U.stopping&&U.pendingWake){U.pendingWake=!1,X(J,U,!1,!0);return}let W=U.pendingWake?$():void 0;if(W===void 0)j.delete(J);else j.set(J,W),X(J,W,!1,!0);OB.doneUnsafe(U.done,Q)},Y=(J)=>I.uninterruptibleMask((U)=>{let Q=j.get(J);if(Q!==void 0){if(Q.stopping)return U(OB.await(Q.done).pipe(I.andThen(Y(J))));return U(OB.await(Q.done))}let W=$();return j.set(J,W),X(J,W,!0),U(OB.await(W.done))}),E=(J)=>I.sync(()=>{let U=j.get(J);if(U!==void 0){U.pendingWake=!0;return}let Q=$();j.set(J,Q),X(J,Q,!1)}),K=(J)=>I.suspend(()=>{let U=j.get(J);if(U?.owner===void 0)return I.void;return U.stopping=!0,U.pendingWake=!1,M$.interrupt(U.owner)});return{active:I.sync(()=>new Set(j.keys())),run:Y,wake:E,interrupt:K}});var jTj=x(()=>{jTj();MA()});var Z2A={};wA(Z2A,{node:()=>Jv1,SessionExecutionLocal:()=>Z2A});var Kv1,Jv1;var BTj=x(async()=>{MA();m6();jTj();await _j([I_(),CyA(),ad(),g0A(),BTj()]);Kv1=yA.effect(cW.Service,I.gen(function*(){let A=yield*YE.Service,j=yield*q$.Service,B=yield*z2A.make({drain:I.fnUntraced(function*($,X){let q=yield*A.get($);if(!q)return yield*I.die(`Session not found: ${$}`);return yield*OGA.Service.use((Y)=>Y.run({sessionID:$,force:X})).pipe(I.provide(j.get(q.location)),I.tapCause((Y)=>A0.hasInterruptsOnly(Y)?I.void:I.logError("Failed to drain Session",Y).pipe(I.annotateLogs({sessionID:$}))))})});return cW.Service.of({active:B.active,interrupt:B.interrupt,resume:B.run,wake:B.wake})})),Jv1=v7({service:cW.Service,layer:Kv1,deps:[YE.node,q$.node]})});var _7={};wA(_7,{status:()=>d70,isStreamUint8Array:()=>XTj,isStreamSse:()=>V2A,isStreamSchema:()=>JJ,isNoContent:()=>AT,getStreamMetadata:()=>Vv1,getStatusSuccess:()=>Kw,getStatusStream:()=>rh,getStatusError:()=>ah,getResponseEncoding:()=>CL,getPayloadEncoding:()=>cvA,asUint8Array:()=>Mv1,asText:()=>Dv1,asNoContent:()=>Hv1,asMultipartStream:()=>Ov1,asMultipart:()=>Iv1,asJson:()=>wv1,asFormUrlEncoded:()=>YTj,StreamUint8Array:()=>Fv1,StreamSse:()=>zv1,NoContent:()=>$Tj,MultipartTypeId:()=>i70,MultipartStreamTypeId:()=>n70,Empty:()=>gvA,Created:()=>Qv1,Accepted:()=>Wv1});function d70(A){let j=typeof A==="string"?Uv1[A]:A;return(B)=>B.annotate({httpApiStatus:j})}function Hv1(A){return(j)=>{return RQA.pipe(w7($G(j),D1({decode:A.decode,encode:z$})))}}function Vv1(A){return A._tag==="StreamSse"?{mode:A.mode,sseMode:A.sseMode,contentType:A.contentType,events:A.events,error:A.error}:{mode:A.mode,contentType:A.contentType}}function l70(A){switch(A){case"sse":return"text/event-stream";case"uint8array":return"application/octet-stream"}}function Iv1(A){return(j)=>j.pipe(ce(i70)).annotate({"~httpApiEncoding":{_tag:"Multipart",mode:"buffered",contentType:qTj("Multipart"),limits:A}})}function Ov1(A){return(j)=>j.pipe(ce(n70)).annotate({"~httpApiEncoding":{_tag:"Multipart",mode:"stream",contentType:qTj("Multipart"),limits:A}})}function mvA(A,j){return A.annotate({"~httpApiEncoding":{_tag:j._tag,contentType:j.contentType??qTj(j._tag)}})}function qTj(A){switch(A){case"Multipart":return"multipart/form-data";case"Json":return"application/json";case"FormUrlEncoded":return"application/x-www-form-urlencoded";case"Uint8Array":return"application/octet-stream";case"Text":return"text/plain"}}function wv1(A){return(j)=>mvA(j,{_tag:"Json",...A})}function YTj(A){return(j)=>mvA(j,{_tag:"FormUrlEncoded",...A})}function Dv1(A){return(j)=>mvA(j,{_tag:"Text",...A})}function Mv1(A){return(j)=>mvA(j,{_tag:"Uint8Array",...A})}function Lv1(A){return r70(A)??o70}function cvA(A,j){let B=r70(A);if(B)return B;return zW(j)?o70:Nv1}function CL(A){let j=Lv1(A);if(j._tag==="Multipart")throw Error("Multipart is not supported in response");return j}function Kw(A){return a70(A)??200}function rh(A){return Kw(A.ast)}function ah(A){return a70(A)??500}var Uv1,F2A="~effect/httpapi/HttpApiSchema/Stream",gvA=(A)=>RQA.pipe(d70(A)),$Tj,Qv1,Wv1,p70,zv1=(A)=>{let j=A.events??(A.data===void 0?void 0:s8({id:uV(sj),event:sj,data:Zv1(A.data)}));if(j===void 0)throw Error("StreamSse requires either an events schema or a data schema");return V7(p70.ast,{[F2A]:F2A,_tag:"StreamSse",mode:"sse",sseMode:A.events===void 0?"data":"events",contentType:A.contentType??l70("sse"),events:j,error:A.error??me})},Zv1=(A)=>{let j=xt(A.ast);return j===void 0?SD(A):SD(A).annotate({identifier:`${j}Stream`})},Fv1=(A)=>V7(p70.ast,{[F2A]:F2A,_tag:"StreamUint8Array",mode:"uint8array",contentType:A?.contentType??l70("uint8array")}),JJ=(A)=>pz(A)&&Gj(A,F2A),V2A=(A)=>JJ(A)&&A._tag==="StreamSse",XTj=(A)=>JJ(A)&&A._tag==="StreamUint8Array",i70="~effect/httpapi/HttpApiSchema/Multipart",n70="~effect/httpapi/HttpApiSchema/MultipartStream",AT=(A)=>{if(jJA(A))return!0;let j=T9(A);if(jJA(j))return!0;let B=A.encoding?.[0].to;if(B===void 0)return!1;return jJA(B)},r70,a70,o70,Nv1;var Xo=x(()=>{lj();y6();W9();YK();DR();k9();Nk();Uv1={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,OK:200,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};$Tj=gvA(204),Qv1=gvA(201),Wv1=gvA(202);p70=KY(Z0);r70=WdA("~httpApiEncoding"),a70=WdA("httpApiStatus"),o70={_tag:"Json",contentType:"application/json"},Nv1={_tag:"FormUrlEncoded",contentType:"application/x-www-form-urlencoded"}});var T6={};wA(T6,{put:()=>hv1,post:()=>fv1,patch:()=>gv1,options:()=>uv1,make:()=>jT,isHttpApiEndpoint:()=>Rv1,head:()=>cv1,getSuccessSchemas:()=>oh,getPayloadSchemas:()=>Cv1,getErrorSchemas:()=>sh,get:()=>vv1,delete:()=>mv1});function Cv1(A){let j=[];for(let{schemas:B}of A.payload.values())j.push(...B);return j}function oh(A){let j=Array.from(A.success);return k1(j)?j:[$Tj]}function sh(A){let j=new Set(A.error);for(let B of A.middlewares){let $=B;for(let X of $.error)j.add(X)}return Array.from(j)}function I2A(A){return Object.assign(Object.create(_v1),A)}function GTj(A,j){if(A===void 0)return;if(pz(A))return j(A);return j(s8(A))}function xv1(A,j,B){let $=new Map;if(A===void 0)return $;let X=Array.isArray(A)?A:pz(A)?[A]:[s8(A).pipe(YTj())],q=B?Tj:yv1;for(let Y of X){let E=cvA(Y.ast,j),K=$.get(E.contentType);if(K){if(K.encoding._tag!==E._tag)throw Error(`Multiple payload encodings for content-type: ${E.contentType}`);if(K.encoding._tag==="Multipart")throw Error(`Multiple multipart payloads for content-type: ${E.contentType}`);K.schemas.push(q(Y,j))}else $.set(E.contentType,{encoding:E,schemas:[q(Y,j)]})}return $}function Pv1(A,j,B){if(A===void 0)return new Set;let $=aE(A);return Sv1($,j),new Set(B?$:$.map((X)=>JJ(X)?X:e70(X)))}function Tv1(A,j){if(A===void 0)return new Set;let B=aE(A);for(let $ of B)if(JJ($))throw Error("Streaming schemas are not supported in error responses");return new Set(j?B:B.map(e70))}function Sv1(A,j){let B=new Map;for(let $ of A)if(JJ($)){kv1($,j);let X=rh($),q=s70(B,X);if(q.stream!==void 0)throw Error(`Multiple streaming success responses for status: ${X}`);if(q.noContent)throw Error(`Cannot combine no-content and streaming success responses for status: ${X}`);if(q.bufferedContentTypes.has(uvA($.contentType)))throw Error(`Cannot combine buffered and streaming success responses for status ${X} and content-type: ${$.contentType}`);B.set(X,{...q,stream:$})}else{let X=Kw($.ast),q=s70(B,X),Y=AT($.ast);if(q.stream!==void 0){if(Y)throw Error(`Cannot combine no-content and streaming success responses for status: ${X}`);let E=CL($.ast);if(uvA(E.contentType)===uvA(q.stream.contentType))throw Error(`Cannot combine buffered and streaming success responses for status ${X} and content-type: ${E.contentType}`)}if(!Y)q.bufferedContentTypes.add(uvA(CL($.ast).contentType));q.noContent=q.noContent||Y}}function uvA(A){let j=A.toLowerCase().trim(),B=j.indexOf(";");return B===-1?j:j.slice(0,B).trim()}function s70(A,j){let B=A.get(j);if(B===void 0)B={bufferedContentTypes:new Set,noContent:!1},A.set(j,B);return B}function kv1(A,j){if(j==="HEAD")throw Error("HEAD endpoints cannot declare streaming success responses");if(V2A(A)&&bv1(A.events.ast))throw Error(`SSE event name is reserved: ${t70}`)}function bv1(A){return KTj(T9(A),new Set)}function KTj(A,j){if(j.has(A))return!1;if(j.add(A),wS(A))return A.types.some(($)=>KTj($,j));if(ouA(A))return KTj(A.thunk(),j);if(!Pm(A))return!1;let B=A.propertySignatures.find(($)=>$.name==="event");return B!==void 0&&dvA(B.type,j)}function dvA(A,j){if(j.has(A))return!1;j.add(A);let B=T9(A);if(B!==A)return dvA(B,j);if(_m(A))return A.literal===t70;if(wS(A))return A.types.some(($)=>dvA($,j));if(ouA(A))return dvA(A.thunk(),j);return!1}function e70(A){switch(CL(A.ast)._tag){case"Json":return S3(A);case"FormUrlEncoded":return dV(A);case"Text":case"Uint8Array":return A}}function yv1(A,j){switch(cvA(A.ast,j)._tag){case"Json":return S3(A);case"FormUrlEncoded":return dV(A);case"Text":case"Uint8Array":case"Multipart":return A}}var ETj="~effect/httpapi/HttpApiEndpoint",Rv1=(A)=>Gj(A,ETj),_v1,jT=(A)=>(j,B,$)=>{let X=$?.disableCodecs??!1,q=X?Tj:dV;return I2A({name:j,path:B,method:A,params:GTj($?.params,q),query:GTj($?.query,q),headers:GTj($?.headers,q),payload:xv1($?.payload,A,X),success:Pv1($?.success,A,X),error:Tv1($?.error,X),annotations:rB(),middlewares:new Set})},t70="effect/httpapi/stream/failure",vv1,fv1,hv1,gv1,mv1,cv1,uv1;var O2A=x(()=>{V1();$7();lj();E8();y6();W9();YK();czA();Xo();_v1={[ETj]:ETj,pipe(){return c6(this,arguments)},prefix(A){return I2A({...this,path:Sk(this.path,A)})},middleware(A){return I2A({...this,middlewares:new Set([...this.middlewares,A])})},annotate(A,j){return I2A({...this,annotations:O8(this.annotations,A,j)})},annotateMerge(A){return I2A({...this,annotations:F5(this.annotations,A)})}};vv1=jT("GET"),fv1=jT("POST"),hv1=jT("PUT"),gv1=jT("PATCH"),mv1=jT("DELETE"),cv1=jT("HEAD"),uv1=jT("OPTIONS")});var w2A={};wA(w2A,{reflect:()=>UTj,make:()=>lv1,isHttpApi:()=>dv1,AdditionalSchemas:()=>pvA});var JTj="~effect/httpapi/HttpApi",dv1=(A)=>Gj(A,JTj),pv1,th=(A)=>{function j(){}return Object.setPrototypeOf(j,pv1),j.groups=A.groups,j.annotations=A.annotations,j},lv1=(A)=>th({identifier:A,groups:new Map,annotations:rB()}),UTj=(A,j)=>{let B=Object.values(A.groups);for(let $ of B){let X=F5(A.annotations,$.annotations);j.onGroup({group:$,mergedAnnotations:X});let q=Object.values($.endpoints);for(let Y of q){if(j.predicate&&!j.predicate({endpoint:Y,group:$}))continue;j.onEndpoint({group:$,endpoint:Y,middleware:Y.middlewares,mergedAnnotations:F5(X,Y.annotations),successes:A00(oh(Y),Kw),errors:A00(sh(Y),ah)})}}},A00=(A,j)=>{let B=new Map;return A.forEach($),B;function $(X){if(JJ(X))return;let q=X.ast,Y=j(q),E=B.get(Y);if(E===void 0)B.set(Y,[X]);else E.push(X)}},pvA;var QTj=x(()=>{$7();E8();y6();qV();O2A();Xo();pv1={[JTj]:JTj,pipe(){return c6(this,arguments)},add(...A){let j={...this.groups};for(let B of A)j[B.identifier]=B;return th({identifier:this.identifier,groups:j,annotations:this.annotations})},addHttpApi(A){let j={...this.groups};for(let B in A.groups){let $=A.groups[B];$.annotations=F5(A.annotations,$.annotations),j[B]=$}return th({identifier:this.identifier,groups:j,annotations:this.annotations})},prefix(A){return th({identifier:this.identifier,groups:aq(this.groups,(j)=>j.prefix(A)),annotations:this.annotations})},middleware(A){return th({identifier:this.identifier,groups:aq(this.groups,(j)=>j.middleware(A)),annotations:this.annotations})},annotate(A,j){return th({identifier:this.identifier,groups:this.groups,annotations:O8(this.annotations,A,j)})},annotateMerge(A){return th({identifier:this.identifier,groups:this.groups,annotations:F5(this.annotations,A)})}};pvA=class pvA extends G6()("effect/httpapi/HttpApi/AdditionalSchemas"){}});var iv1,WTj="~effect/httpapi/HttpApiError/HttpApiSchemaError",jz;var HTj=x(()=>{eE();rj();y6();qsA();BZ();iv1=zX({status:400});jz=class jz extends pEA("HttpApiSchemaError"){[WTj]=WTj;static is(A){return Gj(A,WTj)}static wrap(A,j){return p4(j,(B)=>new jz({kind:A,cause:B}))}name="HttpApiSchemaError";message=this.kind;[ZW](){return LA(iv1)}}});var UJ={};wA(UJ,{layerSchemaErrorTransform:()=>av1,layerClient:()=>ov1,isSecurity:()=>D2A,Service:()=>nv1});function rv1(A){if(A===void 0)return new Set;return new Set(Array.isArray(A)?A:[A])}var j00="~effect/httpapi/HttpApiMiddleware",zTj="~effect/httpapi/HttpApiMiddleware/Security",D2A=(A)=>Gj(A,zTj),nv1=()=>(A,j)=>{let B=globalThis.Error,$=B.stackTraceLimit;B.stackTraceLimit=2;let X=new B;B.stackTraceLimit=$;class q extends G6()(A){}let Y=q;if(Object.defineProperty(q,"stack",{get(){return X.stack}}),Y[j00]=j00,Y.error=rv1(j?.error),Y.requiredForClient=j?.requiredForClient??!1,j?.security!==void 0){if(Object.keys(j.security).length===0)throw Error("HttpApiMiddleware.Service: security object must not be empty");Y[zTj]=zTj,Y.security=j.security}return Y},av1=(A,j)=>v8(A,(B,$)=>n1(B,(X)=>jz.is(X)?j(X,$):sA(X))),ov1=(A,j)=>dQ(R6(function*(){let B=(yield*l4()).pipe(kg(j1)),$=D8(j)?yield*j:j;return h4(new Map([[`${A.key}/Client`,(X)=>YS($(X),(q)=>F5(B,q))]]))}));var lvA=x(()=>{$7();rj();aB();y6();V$();HTj()});var sv1,B00,$00,ba9;var X00=x(()=>{PlA();sv1=new Set([...ClA,"expected","contentMediaType","contentSchema"]),B00=RlA,$00=xlA,ba9=new Set([...sv1,"typeConstructor","generation","brands"])});var A6={};wA(A6,{fromApi:()=>ZTj,annotations:()=>Af1,Version:()=>rvA,Transform:()=>Go,Title:()=>qo,Summary:()=>N2A,Servers:()=>ovA,Override:()=>Yo,License:()=>avA,Identifier:()=>nvA,Format:()=>svA,ExternalDocs:()=>M2A,Exclude:()=>ivA,Description:()=>eh,Deprecated:()=>tvA});function Jq(A,j,B){let $=XV(A,j);if(P7($))B($.value)}function ZTj(A){let j=q00.get(A);if(j!==void 0)return j;let B={openapi:"3.1.0",info:{title:"Api",version:"0.0.1"},paths:{},components:{schemas:{},securitySchemes:{}},security:[],tags:[]},$=[];Jq(A.annotations,qo,(q)=>{B.info.title=q}),Jq(A.annotations,rvA,(q)=>{B.info.version=q}),Jq(A.annotations,eh,(q)=>{B.info.description=q}),Jq(A.annotations,avA,(q)=>{B.info.license=q}),Jq(A.annotations,N2A,(q)=>{B.info.summary=q}),Jq(A.annotations,ovA,(q)=>{B.servers=[...q]}),UTj(A,{onGroup({group:q}){if(e7(q.annotations,ivA))return;let Y={name:CT(q.annotations,qo,()=>q.identifier)};Jq(q.annotations,eh,(E)=>{Y.description=E}),Jq(q.annotations,M2A,(E)=>{Y.externalDocs=E}),Jq(q.annotations,Yo,(E)=>{Object.assign(Y,E)}),Jq(q.annotations,Go,(E)=>{Y=E(Y)}),B.tags.push(Y)},onEndpoint({endpoint:q,group:Y,mergedAnnotations:E,middleware:K}){if(e7(E,ivA))return;let J={tags:[CT(Y.annotations,qo,()=>Y.identifier)],operationId:CT(q.annotations,nvA,()=>Y.topLevel?q.name:`${Y.identifier}.${q.name}`),parameters:[],security:[],responses:{}},U=q.path.replace(/:(\w+)\??/g,"{$1}"),Q=q.method.toLowerCase();function W(O){if(O.size>0){let D={},w=!1;if(O.forEach(({encoding:M,schemas:R},_)=>{let L=R.filter((y)=>!AT(y.ast));if(L.length===0)return;w=!0;let C=L.map(xz),N=C.length===1?C[0]:new E2(C,"anyOf");$.push({_tag:"schema",ast:Y00(N,M._tag),path:["paths",U,Q,"requestBody","content",_,"schema"]}),D[_]={schema:{}}}),w)J.requestBody={content:D,required:!0}}}function H(O,D){for(let[w,{content:M,descriptions:R,streamContent:_}]of O){let L=R.size>0?Array.from(R).join(" | "):D();if(J.responses[w]={description:L},M!==void 0)M.forEach((C,N)=>{C.forEach((y,T)=>{let m=Array.from(y,xz),YA=m.length===1?m[0]:new E2(m,"anyOf");$.push({_tag:"schema",ast:Y00(YA,N),path:["paths",U,Q,"responses",String(w),"content",T,"schema"]}),J.responses[w].content??={},J.responses[w].content[T]={schema:{}}})});if(_!==void 0)_.forEach((C,N)=>{if(J.responses[w].content??={},V2A(C))$.push({_tag:"schema",ast:xz(C.events),path:["paths",U,Q,"responses",String(w),"content",N,"schema"]}),$.push({_tag:"schema",ast:xz(S3(oS(C.error,T3()))),path:["paths",U,Q,"responses",String(w),"content",N,"x-effect-stream","causeSchema"]}),$.push({_tag:"schema",ast:xz(C.error),path:["paths",U,Q,"responses",String(w),"content",N,"x-effect-stream","errorSchema"]}),J.responses[w].content[N]={schema:{},"x-effect-stream":{encoding:"sse",causeSchema:{},errorSchema:{},failureEvent:jf1}};else J.responses[w].content[N]={schema:{type:"string",format:"binary"},"x-effect-stream":{encoding:"uint8array"}}})}}function Z(O,D){if(O){let w=RS(O.ast);if(Pm(w))for(let M of w.propertySignatures)J.parameters.push({name:String(M.name),in:D,schema:{},required:D==="path"||!r4(M.type)}),$.push({_tag:"parameter",ast:M.type,path:["paths",U,Q,"parameters",String(J.parameters.length-1),"schema"]})}}Jq(q.annotations,eh,(O)=>{J.description=O}),Jq(q.annotations,N2A,(O)=>{J.summary=O}),Jq(q.annotations,tvA,(O)=>{J.deprecated=O}),Jq(q.annotations,M2A,(O)=>{J.externalDocs=O}),K.forEach((O)=>{if(!D2A(O))return;for(let[D,w]of Object.entries(O.security))F(D,w),J.security.push({[D]:[]})});function F(O,D){if(B.components.securitySchemes[O]!==void 0)return;B.components.securitySchemes[O]=$f1(D)}let V=zW(q.method);if(V)W(q.payload);if(Z(q.params,"path"),!V&&q.payload.size===1){let O=q.payload.values().next().value;Z(O.schemas[0],"query")}if(Z(q.headers,"header"),Z(q.query,"query"),H(Bf1(q),()=>"Success"),H(G00(sh(q),ah,E00),()=>"Error"),!B.paths[U])B.paths[U]={};Jq(q.annotations,Yo,(O)=>{Object.assign(J,O)}),Jq(q.annotations,Go,(O)=>{J=O(J)}),B.paths[U][Q]=J}}),Jq(A.annotations,pvA,(q)=>{q.forEach((Y)=>{let E=xt(Y.ast);if(E!==void 0){if(E in B.components.schemas)throw new globalThis.Error(`Duplicate component schema identifier: ${E}`);B.components.schemas[E]={},$.push({_tag:"schema",ast:Y.ast,path:["components","schemas",E]})}})});function X(q){return"/"+q.map(Xc).join("/")}if(k1($)){let q=B00(I5($,(K)=>K.ast)),Y=Wij($00(q)),E=$.map((K,J)=>{let U=X(K.path),Q=Y.schemas[J];return{op:"replace",path:U,value:Q}});Object.entries(Y.definitions).forEach(([K,J])=>{E.push({op:"add",path:X(["components","schemas",K]),value:J})}),B=lUA(E,B)}return Object.keys(B.components.schemas).forEach((q)=>{if(!klA.test(q))throw new globalThis.Error(`Invalid component schema key: ${q}`)}),Jq(A.annotations,Yo,(q)=>{Object.assign(B,q)}),Jq(A.annotations,Go,(q)=>{B=q(B)}),q00.set(A,B),B}function Bf1(A){return G00(oh(A),Kw,E00)}function G00(A,j,B){let $=new Map;return A.forEach(X),$;function X(K){if(JJ(K)){E(K);return}let J=K.ast,U=j(J);if(AT(J))q(U,B(K.ast)??"<No Content>");else Y(K,U,CL(J))}function q(K,J){let U=$.get(K);if(U===void 0)$.set(K,{descriptions:new Set([J]),content:void 0,streamContent:void 0});else if(J!==void 0)U.descriptions.add(J)}function Y(K,J,U){let Q=B(K.ast),W=$.get(J),{_tag:H,contentType:Z}=U;if(W===void 0)$.set(J,{descriptions:new Set(Q!==void 0?[Q]:[]),content:new Map([[H,new Map([[Z,new Set([K])]])]]),streamContent:void 0});else{if(Q!==void 0)W.descriptions.add(Q);if(W.content===void 0)W.content=new Map([[H,new Map([[Z,new Set([K])]])]]);else{let F=W.content.get(H);if(F===void 0)W.content.set(H,new Map([[Z,new Set([K])]]));else{let V=F.get(Z);if(V===void 0)F.set(Z,new Set([K]));else V.add(K)}}}}function E(K){let J=rh(K),U=$.get(J);if(U===void 0)$.set(J,{descriptions:new Set,content:void 0,streamContent:new Map([[K.contentType,K]])});else if(U.streamContent===void 0)U.streamContent=new Map([[K.contentType,K]]);else U.streamContent.set(K.contentType,K)}}function E00(A){return Mcj(A)??xt(A)}function Y00(A,j){switch(j){case"Uint8Array":return K00.ast;case"Text":return sj.ast;case"FormUrlEncoded":case"Json":return A;case"Multipart":return J00(A)}}function J00(A){if(AW(A)&&A.annotations?.typeConstructor?._tag==="effect/http/PersistedFile")return K00.ast;if(typeof A?.recur==="function")return A.recur(J00);return A}var nvA,qo,rvA,eh,avA,M2A,ovA,svA,N2A,tvA,Yo,ivA,Go,ev1=(A)=>{let j=Object.entries(A);return(B)=>{let $=rB();for(let[X,q]of j)if(B[X]!==void 0)$=O8($,q,B[X]);return $}},Af1,q00,jf1="effect/httpapi/stream/failure",K00,$f1=(A)=>{let j={};switch(Jq(A.annotations,eh,(B)=>{j.description=B}),A._tag){case"Basic":return{...j,type:"http",scheme:"basic"};case"Http":{let B=XV(A.annotations,svA).pipe(X4(($)=>({bearerFormat:$})),Q1);return{...j,type:"http",scheme:A.scheme,...B}}case"ApiKey":return{...j,type:"apiKey",name:A.key,in:A.in}}};var FTj=x(()=>{V1();$7();lj();SlA();blA();O7();W9();YK();X00();Nk();QTj();O2A();lvA();Xo();nvA=class nvA extends G6()("effect/httpapi/OpenApi/Identifier"){};qo=class qo extends G6()("effect/httpapi/OpenApi/Title"){};rvA=class rvA extends G6()("effect/httpapi/OpenApi/Version"){};eh=class eh extends G6()("effect/httpapi/OpenApi/Description"){};avA=class avA extends G6()("effect/httpapi/OpenApi/License"){};M2A=class M2A extends G6()("effect/httpapi/OpenApi/ExternalDocs"){};ovA=class ovA extends G6()("effect/httpapi/OpenApi/Servers"){};svA=class svA extends G6()("effect/httpapi/OpenApi/Format"){};N2A=class N2A extends G6()("effect/httpapi/OpenApi/Summary"){};tvA=class tvA extends G6()("effect/httpapi/OpenApi/Deprecated"){};Yo=class Yo extends G6()("effect/httpapi/OpenApi/Override"){};ivA=U7("effect/httpapi/OpenApi/Exclude",{defaultValue:CQ});Go=class Go extends G6()("effect/httpapi/OpenApi/Transform"){};Af1=ev1({identifier:nvA,title:qo,version:rvA,description:eh,license:avA,summary:N2A,deprecated:tvA,externalDocs:M2A,servers:ovA,format:svA,override:Yo,exclude:ivA,transform:Go}),q00=new WeakMap;K00=sj.annotate({format:"binary"})});var Y8={};wA(Y8,{securitySetCookie:()=>Gf1,securityDecode:()=>H00,layer:()=>Xf1,handlerToRoute:()=>Z00,group:()=>qf1,endpoint:()=>Yf1,HandlersTypeId:()=>W00});function Uf1(A){let j=new Map;return A.forEach(({encoding:B,schemas:$},X)=>{let q=o4(M1($));if(B._tag==="Multipart")j.set(X,{_tag:"Multipart",mode:B.mode,limits:B.limits,decode:q});else j.set(X,{_tag:B._tag,decode:q,nullOnEmpty:$.some((Y)=>kmj(T9(Y.ast)))})}),j}function Qf1(A,j,B){let $=zW(j.method),X=$?Hf1(j):"application/x-www-form-urlencoded",q=A.get(X);if(!q)return _k(`Unsupported content-type: ${X}`,{status:415});let{_tag:Y,decode:E}=q;switch(Y){case"Multipart":{if(q.mode==="buffered"){let J=r1(j.multipart);if(q.limits)J=i4(J,VsA(q.limits));return bA(J,E)}return LA(q.limits?gS(j.multipartStream,VsA(q.limits)):j.multipartStream)}case"Json":let K=r1(bA(j.text,(J)=>{if(J==="")return q.nullOnEmpty?LA(null):KcA;return LA(JSON.parse(J))}));return bA(K,E);case"Text":return bA(r1(j.text),E);case"FormUrlEncoded":{let J=$?iA(r1(j.urlParamsBody),LoA):LA(B);return bA(J,E)}case"Uint8Array":return bA(iA(r1(j.arrayBuffer),(J)=>new Uint8Array(J)),E)}}function z00(A,j,B,$,X){let q=xD(xf1(j)),Y=xD(Pf1(j)),E=OD(j.params,o4),K=OD(j.headers,o4),J=OD(j.query,o4),U=Vf1(j),W=j.payload.size>0&&!X?Uf1(j.payload):void 0;return zf1(A,j,B,R6(function*(){let Z=qY().context,F=T1(Z,N8),V=T1(Z,rD),O=T1(Z,XZ),D={request:F,endpoint:j,group:A};if(E)D.params=yield*jz.wrap("Params",E(V.params));if(K)D.headers=yield*jz.wrap("Headers",K(F.headers));if(J)D.query=yield*jz.wrap("Query",J(O));if(W){let R=Qf1(W,F,O);if(Tq(R))return R;if(R!==void 0)D.payload=yield*jz.wrap("Payload",R)}let w=yield*$(D);if(Tq(w))return w;let M=U?.(w,Z);if(M!==void 0)return yield*jz.wrap("Body",M);return yield*jz.wrap("Body",q(w))})).pipe(zcA,n1((H)=>{if(jz.is(H))return M5(H);return r1(Y(H))}),i4(B))}function Z00(A,j,B){let $=j.endpoint;return gzA($.method,$.path,z00(A,$,B,j.handler,j.isRaw),{uninterruptible:j.uninterruptible})}function Vf1(A){let j=If1(A);if(j===void 0)return;let B=Of1(A),$=rh(j),X=j.contentType;if(XTj(j))return(Y,E)=>{if(!Z0(Y))return B?void 0:Q00(Y);return LA(IC(gS(Y,E),{status:$,contentType:X}))};let q=wf1(j);return(Y,E)=>{if(!Z0(Y))return B?void 0:Q00(Y);return LA(IC(gS(Df1(Y,q),E),{status:$,contentType:X}))}}function If1(A){for(let j of A.success)if(JJ(j))return j}function Of1(A){for(let j of A.success)if(pz(j)&&!JJ(j))return!0;return A.success.size===0}function Q00(A){return sA(Rf1(new U8(uA(A),{message:"Expected a streaming response"})))}function wf1(A){let j=S3(oS(A.error,T3()));return{sseMode:A.sseMode,encodeEvents:xD(m8(A.events)),encodeCause:xD(SD(j))}}function Df1(A,j){return A.pipe(j.sseMode==="data"?iX((B)=>({id:void 0,event:"message",data:B})):Tj,FpA((B)=>r1(j.encodeEvents(B))),eJA((B)=>PR(Mf1(B,j))),iX(Lf1),et)}function Mf1(A,j){return j.encodeCause(A).pipe(r1,iA((B)=>({id:void 0,event:Nf1,data:B})))}function Lf1(A){return WVA.write({_tag:"Event",event:A.event,id:A.id,data:A.data})}function Rf1(A){return new KK(A)}function xf1(A){let j=oh(A).map(Cf1);return j.length===1?j[0]:M1(j)}function Pf1(A){let j=sh(A).map(_f1);if(j.length===0)return me;return j.length===1?j[0]:M1(j)}function F00(A){let j=new WeakMap;return(B)=>{let $=j.get(B.ast);if($!==void 0)return $;let X=Ff1.pipe(w7(B,Tf1(A,B)));return j.set(X.ast,X),X}}function Tf1(A,j){let B=j.ast,$=Sf1(A(B),CL(B),AT(B));return G2({decode:(X)=>sA(new VR(uA(X),{message:"Encode only schema"})),encode:$})}function Sf1(A,j,B){switch(j._tag){case"Json":return($)=>{if($===void 0||B)return LA(zX({status:A}));try{let X=JSON.stringify($);return LA(_k(X,{status:A,contentType:j.contentType}))}catch(X){return sA(new U8(uA($),{message:globalThis.String(X)}))}};case"Text":return($)=>LA(_k($,{status:A,contentType:j.contentType}));case"Uint8Array":return($)=>LA(soA($,{status:A,contentType:j.contentType}));case"FormUrlEncoded":return($)=>LA(eoA($,{status:A}).pipe(AsA("content-type",j.contentType)))}}var Xf1=(A,j)=>hzA(nj(function*(B){let $=yield*l4(),X=[],q=Array.from($.mapUnsafe.keys()).filter((Y)=>Y.startsWith("effect/httpapi/HttpApiGroup/"));for(let Y of Object.values(A.groups)){let E=$.mapUnsafe.get(Y.key)?.routes;if(E===void 0){let K=q.length===0?"none":q.join(", ");return yield*M5(`HttpApiGroup "${Y.identifier}" not found (key: "${Y.key}"). Did you forget to provide HttpApiBuilder.group(api, "${Y.identifier}", ...)? Available groups: ${K}`)}X.push(...E)}if(yield*B.addAll(X),j?.openapiPath){let Y=ZTj(A);yield*B.add("GET",j.openapiPath,LA(toA(Y)))}})),qf1=(A,j,B)=>dQ(R6(function*(){let $=(yield*l4()).pipe(kg(j1)),X=A.groups[j],q=B(Jf1(X)),Y=D8(q)?yield*q:q,E=[];for(let K of Y.handlers.values())E.push(Z00(X,K,$));return h4(new Map([[X.key,{routes:E,handlers:Y.handlers}]]))})),W00,Yf1=(A,j,B,$)=>N5((X)=>{let q=A.groups[j],Y=q.endpoints[B];return LA(z00(q,Y,kg(j1)(X),$,!1))}),H00=(A)=>{switch(A._tag){case"Http":return iA(N8,(j)=>O$((j.headers.authorization??"").slice(A.schemeLength+1)));case"ApiKey":{let j=A.in==="header"?A.key.toLowerCase():A.key,B=s8({[j]:sj}),$=A.in==="query"?DsA(B):A.in==="cookie"?OsA(B):wsA(B);return XS($,{onFailure:()=>O$(""),onSuccess:(X)=>O$(X[j])})}case"Basic":{let j={username:"",password:O$("")};return N8.pipe(bA((B)=>AK(Yt((B.headers.authorization??"").slice(Ef1)))),XS({onFailure:()=>j,onSuccess:(B)=>{let $=B.split(":");if($.length!==2)return j;return{username:$[0],password:O$($[1])}}}))}}},Gf1=(A,j,B)=>xsA(($,X)=>r1(BsA(X,A.key,Lm(j),{secure:!0,httpOnly:!0,...B}))),Ef1=6,Kf1,Jf1=(A)=>{let j=Object.create(Kf1);return j.group=A,j.handlers=new Map,j},Wf1=(A)=>A.headers["content-type"]?A.headers["content-type"].toLowerCase().trim():"application/json",Hf1=(A)=>{let j=Wf1(A),B=j.indexOf(";");return B===-1?j:j.slice(0,B).trim()},zf1=(A,j,B,$)=>{let X={group:A,endpoint:j};for(let q of j.middlewares){let Y=q,E=T1(B,Y);$=(D2A(Y)?Zf1(Y,E):E)($,X)}return $},U00,Zf1=(A,j)=>{let B=U00.get(j);if(B!==void 0)return B;let $=Object.entries(A.security).map(([q,Y])=>({decode:H00(Y),middleware:j[q]}));if($.length===0)return Tj;let X=nj(function*(q,Y){let E;for(let K=0;K<$.length;K++){let{decode:J,middleware:U}=$[K],Q=yield*ds(bA(J,(W)=>U(q,{credential:W,endpoint:Y.endpoint,group:Y.group})));if(A7(Q)){E=Q;continue}return Q.success}return yield*AK(E)});return U00.set(j,X),X},Ff1,Nf1="effect/httpapi/stream/failure",Cf1,_f1;var V00=x(()=>{$7();rj();Gt();K2();lj();hKA();aB();O7();E8();zS();q4();W9();YK();jD();DR();V$();k9();TUA();zVA();DjA();Nk();czA();qZ();qZ();BZ();xzA();tV();O2A();HTj();lvA();Xo();FTj();W00=Symbol.for("@effect/platform/HttpApiBuilder/Handlers"),Kf1={[W00]:{_Endpoints:Tj},pipe(){return c6(this,arguments)},handle(A,j,B){let $=this.group.endpoints[A];return this.handlers.set(A,{endpoint:$,handler:j,isRaw:!1,uninterruptible:B?.uninterruptible??!1}),this},handleRaw(A,j,B){let $=this.group.endpoints[A];return this.handlers.set(A,{endpoint:$,handler:j,isRaw:!0,uninterruptible:B?.uninterruptible??!1}),this}};U00=new WeakMap,Ff1=KY(Tq);Cf1=F00(Kw),_f1=F00(ah)});var S8={};wA(S8,{make:()=>yf1,isHttpApiGroup:()=>kf1});var VTj="~effect/httpapi/HttpApiGroup",kf1=(A)=>Gj(A,VTj),bf1,BT=(A)=>{function j(){}return Object.setPrototypeOf(j,bf1),j.key=`effect/httpapi/HttpApiGroup/${A.identifier}`,Object.assign(j,A)},yf1=(A,j)=>BT({identifier:A,topLevel:j?.topLevel??!1,endpoints:xhA(),annotations:rB()});var I00=x(()=>{$7();E8();y6();qV();bf1={[VTj]:VTj,add(...A){let j={...this.endpoints};for(let B of A)j[B.name]=B;return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:j,annotations:this.annotations})},prefix(A){return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:aq(this.endpoints,(j)=>j.prefix(A)),annotations:this.annotations})},middleware(A){return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:aq(this.endpoints,(j)=>j.middleware(A)),annotations:this.annotations})},annotateMerge(A){return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:this.endpoints,annotations:F5(this.annotations,A)})},annotate(A,j){return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:this.endpoints,annotations:O8(this.annotations,A,j)})},annotateEndpointsMerge(A){return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:aq(this.endpoints,(j)=>j.annotateMerge(A)),annotations:this.annotations})},annotateEndpoints(A,j){return BT({identifier:this.identifier,topLevel:this.topLevel,endpoints:aq(this.endpoints,(B)=>B.annotate(A,j)),annotations:this.annotations})},pipe(){return c6(this,arguments)}}});var RB=x(()=>{QTj();V00();O2A();I00();lvA();Xo();FTj()});var gG,L2A,R2A,Bz,DQ,C2A,WB,Ag,Jw,Eo,Ko,Jo,$z;var hX=x(()=>{MA();gG=class gG extends z.TaggedErrorClass()("InvalidRequestError",{message:z.String,kind:z.optional(z.String),field:z.optional(z.String)},{httpApiStatus:400}){};L2A=class L2A extends z.TaggedErrorClass()("UnauthorizedError",{message:z.String},{httpApiStatus:401}){};R2A=class R2A extends z.TaggedErrorClass()("ConflictError",{message:z.String,resource:z.optional(z.String)},{httpApiStatus:409}){};Bz=class Bz extends z.TaggedErrorClass()("ServiceUnavailableError",{message:z.String,service:z.optional(z.String)},{httpApiStatus:503}){};DQ=class DQ extends z.TaggedErrorClass()("UnknownError",{message:z.String,ref:z.optional(z.String)},{httpApiStatus:500}){};C2A=class C2A extends z.TaggedErrorClass()("ProviderNotFoundError",{providerID:z.String,message:z.String},{httpApiStatus:404}){};WB=class WB extends z.TaggedErrorClass()("SessionNotFoundError",{sessionID:z.String,message:z.String},{httpApiStatus:404}){};Ag=class Ag extends z.TaggedErrorClass()("MessageNotFoundError",{sessionID:z.String,messageID:z.String,message:z.String},{httpApiStatus:404}){};Jw=class Jw extends z.TaggedErrorClass()("InvalidCursorError",{message:z.String},{httpApiStatus:400}){};Eo=class Eo extends z.TaggedErrorClass()("PermissionNotFoundError",{requestID:z.String,message:z.String},{httpApiStatus:404}){};Ko=class Ko extends z.TaggedErrorClass()("QuestionNotFoundError",{requestID:z.String,message:z.String},{httpApiStatus:404}){};Jo=class Jo extends z.TaggedErrorClass()("ForbiddenError",{message:z.String},{httpApiStatus:403}){};$z=class $z extends z.TaggedErrorClass()("PtyNotFoundError",{ptyID:z.String,message:z.String},{httpApiStatus:404}){}});var Uo;var evA=x(()=>{RB();hX();Uo=class Uo extends UJ.Service()("@opencode/HttpApiSchemaError",{error:gG}){}});var vf1,O00;var w00=x(()=>{O_();Y_();MA();RB();hX();vf1=z.Struct({limit:z.optional(z.NumberFromString.check(z.isInt(),z.isGreaterThanOrEqualTo(1),z.isLessThanOrEqualTo(200))).annotate({description:"Maximum number of messages to return. When omitted, the endpoint returns its default page size."}),order:z.optional(z.Union([z.Literal("asc"),z.Literal("desc")])).annotate({description:"Message order for the first page. Use desc for newest first or asc for oldest first."}),cursor:z.optional(z.String.annotate({description:"Opaque pagination cursor returned as cursor.previous or cursor.next in the previous response. Do not combine with order."}))}).annotate({identifier:"SessionMessagesQuery"}),O00=S8.make("server.message").add(T6.get("session.messages","/api/session/:sessionID/message",{params:{sessionID:L8.ID},query:vf1,success:z.Struct({data:z.Array(d8.Message),cursor:z.Struct({previous:z.String.pipe(z.optional),next:z.String.pipe(z.optional)})}).annotate({identifier:"SessionMessagesResponse"}),error:[Jw,WB,DQ]}).annotateMerge(A6.annotations({identifier:"v2.session.messages",summary:"Get session messages",description:"Retrieve projected messages for a session. Items keep the requested order across pages; use cursor.next or cursor.previous to move through the ordered timeline."}))).annotateMerge(A6.annotations({title:"messages",description:"Experimental message routes."}))});var CB,_B,D00;var fE=x(()=>{eX();MA();RB();CB=z.Struct({location:z.optional(z.Struct({directory:z.optional(z.String),workspace:z.optional(z.String)}))}).annotate({identifier:"LocationQuery"}),_B=A6.annotations({transform:(A)=>{let j=A.parameters;if(!Array.isArray(j))return A;return{...A,parameters:j.map((B)=>B?.name==="location"&&B?.in==="query"?{...B,style:"deepObject",explode:!0}:B)}}}),D00=S8.make("server.location").add(T6.get("location.get","/api/location",{query:CB,success:YB.Info}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.location.get",summary:"Get location",description:"Resolve the requested location or the server default location."})))});var M00;var N00=x(()=>{FZ();eX();MA();RB();hX();fE();M00=S8.make("server.model").add(T6.get("model.list","/api/model",{query:CB,success:YB.response(z.Array(Y1.Info)),error:Bz}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.model.list",summary:"List models",description:"Retrieve available models ordered by release date."}))).annotateMerge(A6.annotations({title:"models",description:"Experimental model routes."}))});var L00;var R00=x(()=>{sk();eX();MA();RB();hX();fE();L00=S8.make("server.provider").add(T6.get("provider.list","/api/provider",{query:CB,success:YB.response(z.Array(_4.Info)),error:Bz}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.provider.list",summary:"List providers",description:"Retrieve active AI providers so clients can show provider availability and configuration."}))).add(T6.get("provider.get","/api/provider/:providerID",{params:{providerID:_4.ID},query:CB,success:YB.response(_4.Info),error:[C2A,Bz]}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.provider.get",summary:"Get provider",description:"Retrieve a single AI provider so clients can inspect its availability and endpoint settings."}))).annotateMerge(A6.annotations({title:"providers",description:"Experimental provider routes."}))});var _2A={};wA(_2A,{PromptInput:()=>_2A,Prompt:()=>ff1,FileAttachment:()=>C00});var C00,ff1;var ITj=x(()=>{ITj();MA();Dd();h7();C00=z.Struct({uri:z.String,name:z.String.pipe(nA),description:z.String.pipe(nA),source:z7A.pipe(nA)}).annotate({identifier:"PromptInput.FileAttachment"}).pipe(HB((A)=>({create:(j)=>A.make(j)}))),ff1=z.Struct({text:z.String,files:z.Array(C00).pipe(nA),agents:z.Array(kVA).pipe(nA)}).annotate({identifier:"PromptInput"})});var AfA,hf1,gf1,mf1,OTj=(A)=>A.mapFields((j)=>({...gV.omit(j,["limit"]),anchor:L8.ListAnchor})),cf1,x00,uf1,df1,_00="Invalid cursor",jg,pf1,lf1,if1,nf1,rf1,P00=(A)=>S8.make("server.session").add(T6.get("session.list","/api/session",{query:rf1,success:z.Struct({data:z.Array(L8.Info),cursor:z.Struct({previous:jg.pipe(z.optional),next:jg.pipe(z.optional)})}).annotate({identifier:"SessionsResponse"}),error:[Jw,gG]}).annotateMerge(A6.annotations({identifier:"v2.session.list",summary:"List sessions",description:"Retrieve sessions in the requested order. Items keep that order across pages; use cursor.next or cursor.previous to move through the ordered list."}))).add(T6.post("session.create","/api/session",{payload:z.Struct({id:L8.ID.pipe(z.optional),agent:w2.ID.pipe(z.optional),model:Y1.Ref.pipe(z.optional),location:YB.Ref.pipe(z.optional)}),success:z.Struct({data:L8.Info})}).annotateMerge(A6.annotations({identifier:"v2.session.create",summary:"Create session",description:"Create a session at the requested location."}))).add(T6.get("session.active","/api/session/active",{success:z.Struct({data:z.Record(L8.ID,pf1)})}).annotateMerge(A6.annotations({identifier:"v2.session.active",summary:"List active sessions",description:"Retrieve foreground Session drains currently owned by this OpenCode process. Sessions absent from the result are inactive."}))).add(T6.get("session.get","/api/session/:sessionID",{params:{sessionID:L8.ID},success:z.Struct({data:L8.Info}),error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.get",summary:"Get session",description:"Retrieve a session by ID."}))).add(T6.post("session.switchAgent","/api/session/:sessionID/agent",{params:{sessionID:L8.ID},payload:z.Struct({agent:w2.ID}),success:_7.NoContent,error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.switchAgent",summary:"Switch session agent",description:"Switch the agent used by subsequent provider turns."}))).add(T6.post("session.switchModel","/api/session/:sessionID/model",{params:{sessionID:L8.ID},payload:z.Struct({model:Y1.Ref}),success:_7.NoContent,error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.switchModel",summary:"Switch session model",description:"Switch the model used by subsequent provider turns."}))).add(T6.post("session.prompt","/api/session/:sessionID/prompt",{params:{sessionID:L8.ID},payload:z.Struct({id:d8.ID.pipe(z.optional),prompt:_2A.Prompt,delivery:id.Delivery.pipe(z.optional),resume:z.Boolean.pipe(z.optional)}),success:z.Struct({data:id.Admitted}),error:[R2A,WB]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.prompt",summary:"Send message",description:"Durably admit one session input and schedule agent-loop execution unless resume is false."}))).add(T6.post("session.compact","/api/session/:sessionID/compact",{params:{sessionID:L8.ID},success:_7.NoContent,error:[WB,Bz]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.compact",summary:"Compact session",description:"Compact a session conversation."}))).add(T6.post("session.wait","/api/session/:sessionID/wait",{params:{sessionID:L8.ID},success:_7.NoContent,error:[WB,Bz]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.wait",summary:"Wait for session",description:"Wait for a session agent loop to become idle."}))).add(T6.post("session.revert.stage","/api/session/:sessionID/revert/stage",{params:{sessionID:L8.ID},payload:z.Struct({messageID:d8.ID,files:z.Boolean.pipe(z.optional)}),success:z.Struct({data:RZ.State}),error:[Ag,WB,DQ]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.revert.stage",summary:"Stage session revert",description:"Stage or move a reversible session boundary and optionally apply its file changes."}))).add(T6.post("session.revert.clear","/api/session/:sessionID/revert/clear",{params:{sessionID:L8.ID},success:_7.NoContent,error:[WB,DQ]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.revert.clear",summary:"Clear staged revert"}))).add(T6.post("session.revert.commit","/api/session/:sessionID/revert/commit",{params:{sessionID:L8.ID},success:_7.NoContent,error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.revert.commit",summary:"Commit staged revert"}))).add(T6.get("session.context","/api/session/:sessionID/context",{params:{sessionID:L8.ID},success:z.Struct({data:z.Array(d8.Message)}),error:[WB,DQ]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.context",summary:"Get session context",description:"Retrieve the active context messages for a session (all messages after the last compaction)."}))).add(T6.get("session.history","/api/session/:sessionID/history",{params:{sessionID:L8.ID},query:if1,success:z.Struct({data:z.Array(h6.Durable),hasMore:z.Boolean}).annotate({identifier:"SessionHistory"}),error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.history",summary:"Get session history",description:"Read one finite page of public durable Session events after an exclusive aggregate sequence. Newly committed events may appear on later pages."}))).add(T6.get("session.events","/api/session/:sessionID/event",{params:{sessionID:L8.ID},query:{after:z.NumberFromString.pipe(z.decodeTo(i6),z.optional)},success:_7.StreamSse({data:h6.Durable}),error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.events",summary:"Subscribe to session events",description:"Replay durable events after an aggregate sequence, then continue with new durable events."}))).add(T6.post("session.interrupt","/api/session/:sessionID/interrupt",{params:{sessionID:L8.ID},success:_7.NoContent,error:WB}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.interrupt",summary:"Interrupt session execution",description:"Interrupt active execution owned by this OpenCode process. Idle interruption is a no-op."}))).add(T6.get("session.message","/api/session/:sessionID/message/:messageID",{params:{sessionID:L8.ID,messageID:d8.ID},success:z.Struct({data:d8.Message}),error:[WB,Ag]}).middleware(A).annotateMerge(A6.annotations({identifier:"v2.session.message",summary:"Get session message",description:"Retrieve one projected message owned by the Session."}))).annotateMerge(A6.annotations({title:"sessions",description:"Experimental session routes."}));var wTj=x(()=>{Y_();OOA();ITj();O_();NZ();h7();jOA();MA();RB();hX();tk();FZ();eX();Md();K_();AfA={workspace:lb.ID.pipe(z.optional),limit:z.NumberFromString.pipe(z.decodeTo(W7),z.optional).annotate({description:"Maximum number of sessions to return. Defaults to the newest 50 sessions."}),order:z.optional(z.Union([z.Literal("asc"),z.Literal("desc")])).annotate({description:"Session order for the first page. Use desc for newest first or asc for oldest first."}),search:z.optional(z.String)},hf1=z.Struct({...AfA,directory:J6}),gf1=z.Struct({...AfA,project:_5.ID,subpath:K0.pipe(z.optional)}),mf1=z.Struct(AfA),cf1=z.Union([OTj(hf1),OTj(gf1),OTj(mf1)]),x00=z.fromJsonString(cf1),uf1=z.encodeSync(x00),df1=z.decodeUnknownEffect(x00),jg=z.String.pipe(z.brand("SessionsCursor"),HB((A)=>{let j=A.make.bind(A);return{make:(B)=>j(NV.encodeBase64Url(uf1(B))),parse:(B)=>I.suspend(()=>{let $=NV.decodeBase64UrlString(B);return S1.isFailure($)?I.fail(_00):df1($.success).pipe(I.mapError(()=>_00))})}})),pf1=z.Struct({type:z.Literal("running")}).annotate({identifier:"SessionActive"}),lf1=W7.check(z.isLessThanOrEqualTo(100)),if1=z.Struct({limit:z.NumberFromString.pipe(z.decodeTo(lf1),z.optional),after:z.NumberFromString.pipe(z.decodeTo(i6),z.optional)}),nf1=jg.annotate({description:"Opaque pagination cursor returned as cursor.previous or cursor.next in the previous response."}),rf1=z.Struct({...AfA,directory:J6.pipe(z.optional),project:_5.ID.pipe(z.optional),subpath:K0.pipe(z.optional),cursor:nf1.pipe(z.optional)}).annotate({identifier:"SessionsQuery"})});var T00=(A,j)=>S8.make("server.permission").add(T6.get("permission.request.list","/api/permission/request",{query:CB,success:YB.response(z.Array(B8.Request))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.permission.request.list",summary:"List pending permission requests",description:"Retrieve pending permission requests for a location."}))).add(T6.get("permission.saved.list","/api/permission/saved",{query:z.Struct({projectID:_5.ID.pipe(z.optional)}),success:z.Struct({data:z.Array(xM.Info)})}).annotateMerge(A6.annotations({identifier:"v2.permission.saved.list",summary:"List saved permissions",description:"Retrieve saved permissions, optionally filtered by project."}))).add(T6.delete("permission.saved.remove","/api/permission/saved/:id",{params:{id:xM.ID},success:_7.NoContent}).annotateMerge(A6.annotations({identifier:"v2.permission.saved.remove",summary:"Remove saved permission",description:"Remove a saved permission by ID."}))).middleware(A).add(T6.post("session.permission.create","/api/session/:sessionID/permission",{params:{sessionID:L8.ID},payload:z.Struct({id:B8.ID.pipe(z.optional),action:B8.Request.fields.action,resources:B8.Request.fields.resources,save:B8.Request.fields.save,metadata:B8.Request.fields.metadata,source:B8.Request.fields.source,agent:w2.ID.pipe(z.optional)}),success:z.Struct({data:z.Struct({id:B8.ID,effect:B8.Effect})}),error:WB}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.permission.create",summary:"Create permission request",description:"Evaluate and, when approval is required, create a permission request for a session."}))).add(T6.get("session.permission.list","/api/session/:sessionID/permission",{params:{sessionID:L8.ID},success:z.Struct({data:z.Array(B8.Request)}),error:WB}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.permission.list",summary:"List session permission requests",description:"Retrieve pending permission requests owned by a session."}))).add(T6.get("session.permission.get","/api/session/:sessionID/permission/:requestID",{params:{sessionID:L8.ID,requestID:B8.ID},success:z.Struct({data:B8.Request}),error:[WB,Eo]}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.permission.get",summary:"Get permission request",description:"Retrieve a pending permission request owned by a session."}))).add(T6.post("session.permission.reply","/api/session/:sessionID/permission/:requestID/reply",{params:{sessionID:L8.ID,requestID:B8.ID},payload:z.Struct({reply:B8.Reply,message:z.String.pipe(z.optional)}),success:_7.NoContent,error:[WB,Eo]}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.permission.reply",summary:"Reply to pending permission request",description:"Respond to a pending permission request owned by a session."}))).annotateMerge(A6.annotations({title:"permissions",description:"Experimental permission routes."}));var S00=x(()=>{tk();eX();UM();COA();NZ();O_();MA();RB();hX();fE()});var af1,of1,k00;var b00=x(()=>{yb();eX();h7();MA();RB();fE();af1=z.Struct({...CB.fields,path:K0.pipe(z.optional)}),of1=z.Struct({...CB.fields,query:hW.FindInput.fields.query,type:hW.FindInput.fields.type,limit:z.NumberFromString.pipe(z.decodeTo(W7),z.optional)}),k00=S8.make("server.fs").add(T6.get("fs.read","/api/fs/read/*",{query:CB,success:z.Uint8Array.pipe(_7.asUint8Array())}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.fs.read",summary:"Read file",description:"Serve one file relative to the requested location."}))).add(T6.get("fs.list","/api/fs/list",{query:af1,success:YB.response(z.Array(hW.Entry))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.fs.list",summary:"List directory",description:"List direct children of one directory relative to the requested location."}))).add(T6.get("fs.find","/api/fs/find",{query:of1,success:YB.response(z.Array(hW.Entry))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.fs.find",summary:"Find files",description:"Find recursively ranked filesystem entries relative to the requested location."}))).annotateMerge(A6.annotations({title:"filesystem",description:"Experimental location-scoped filesystem routes."}))});var y00;var v00=x(()=>{YIA();eX();MA();RB();fE();y00=S8.make("server.command").add(T6.get("command.list","/api/command",{query:CB,success:YB.response(z.Array(Lb.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.command.list",summary:"List commands",description:"Retrieve currently registered commands."}))).annotateMerge(A6.annotations({title:"commands",description:"Experimental command routes."}))});var f00;var h00=x(()=>{dOA();eX();MA();RB();fE();f00=S8.make("server.skill").add(T6.get("skill.list","/api/skill",{query:CB,success:YB.response(z.Array(TZ.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.skill.list",summary:"List skills",description:"Retrieve currently registered skills."}))).annotateMerge(A6.annotations({title:"skills",description:"Experimental skill routes."}))});var x2A={};wA(x2A,{Updated:()=>g00,UpdateAvailable:()=>m00,InstallationEvent:()=>x2A,Definitions:()=>sf1});var g00,m00,sf1;var DTj=x(()=>{DTj();MA();H1();g00=Q6.define({type:"installation.updated",schema:{version:z.String}}),m00=Q6.define({type:"installation.update-available",schema:{version:z.String}}),sf1=Q6.inventory(g00,m00)});var P2A={};wA(P2A,{LegacyEvent:()=>P2A,Definitions:()=>tf1,CommandExecuted:()=>c00});var c00,tf1;var MTj=x(()=>{MTj();MA();H1();l3();L7A();c00=H0({type:"command.executed",schema:{name:z.String,sessionID:t0,arguments:z.String,messageID:yW.MessageID}}),tf1=$1(c00)});var u00=x(()=>{MTj()});var T2A={};wA(T2A,{Updated:()=>d00,LspEvent:()=>T2A,Definitions:()=>ef1});var d00,ef1;var NTj=x(()=>{NTj();H1();d00=Q6.define({type:"lsp.updated",schema:{}}),ef1=Q6.inventory(d00)});var S2A={};wA(S2A,{ToolsChanged:()=>p00,McpEvent:()=>S2A,Definitions:()=>Ah1,BrowserOpenFailed:()=>l00});var p00,l00,Ah1;var LTj=x(()=>{LTj();MA();H1();p00=Q6.define({type:"mcp.tools.changed",schema:{server:z.String}}),l00=Q6.define({type:"mcp.browser.open.failed",schema:{mcpName:z.String,url:z.String}}),Ah1=Q6.inventory(p00,l00)});var i00=x(()=>{vVA()});var k2A={};wA(k2A,{Tool:()=>e00,Request:()=>AB0,Reply:()=>Bh1,Replied:()=>jB0,Rejected:()=>BB0,QuestionV1:()=>k2A,Prompt:()=>jh1,Option:()=>o00,Info:()=>t00,ID:()=>jfA,Event:()=>$h1,Answer:()=>RTj});var jfA,o00,s00,t00,jh1,e00,AB0,RTj,Bh1,jB0,BB0,n00,r00,a00,$h1;var CTj=x(()=>{CTj();MA();H1();h7();l3();L7A();jfA=z.String.check(z.isStartsWith("que")).pipe(z.brand("QuestionID"),HB((A)=>({ascending:(j)=>A.make(j??"que_"+g9())}))),o00=z.Struct({label:z.String.annotate({description:"Display text (1-5 words, concise)"}),description:z.String.annotate({description:"Explanation of choice"})}).annotate({identifier:"QuestionOption"}),s00={question:z.String.annotate({description:"Complete question"}),header:z.String.annotate({description:"Very short label (max 30 chars)"}),options:z.Array(o00).annotate({description:"Available choices"}),multiple:z.optional(z.Boolean).annotate({description:"Allow selecting multiple choices"})},t00=z.Struct({...s00,custom:z.optional(z.Boolean).annotate({description:"Allow typing a custom answer (default: true)"})}).annotate({identifier:"QuestionInfo"}),jh1=z.Struct(s00).annotate({identifier:"QuestionPrompt"}),e00=z.Struct({messageID:yW.MessageID,callID:z.String}).annotate({identifier:"QuestionTool"}),AB0=z.Struct({id:jfA,sessionID:t0,questions:z.Array(t00).annotate({description:"Questions to ask"}),tool:z.optional(e00)}).annotate({identifier:"QuestionRequest"}),RTj=z.Array(z.String).annotate({identifier:"QuestionAnswer"}),Bh1=z.Struct({answers:z.Array(RTj).annotate({description:"User answers in order of questions (each answer is an array of selected labels)"})}).annotate({identifier:"QuestionReply"}),jB0=z.Struct({sessionID:t0,requestID:jfA,answers:z.Array(RTj)}).annotate({identifier:"QuestionReplied"}),BB0=z.Struct({sessionID:t0,requestID:jfA}).annotate({identifier:"QuestionRejected"}),n00=H0({type:"question.asked",schema:AB0.fields}),r00=H0({type:"question.replied",schema:jB0.fields}),a00=H0({type:"question.rejected",schema:BB0.fields}),$h1={Asked:n00,Replied:r00,Rejected:a00,Definitions:$1(n00,r00,a00)}});var $B0=x(()=>{CTj()});var b2A={};wA(b2A,{ServerEvent:()=>b2A,Disposed:()=>qB0,Definitions:()=>Xh1,Connected:()=>XB0});var XB0,qB0,Xh1;var _Tj=x(()=>{_Tj();H1();XB0=Q6.define({type:"server.connected",schema:{}}),qB0=Q6.define({type:"global.disposed",schema:{}}),Xh1=Q6.inventory(XB0,qB0)});var y2A={};wA(y2A,{SessionCompactionEvent:()=>y2A,Definitions:()=>qh1,Compacted:()=>YB0});var YB0,qh1;var xTj=x(()=>{xTj();H1();l3();YB0=Q6.define({type:"session.compacted",schema:{sessionID:t0}}),qh1=Q6.inventory(YB0)});var v2A={};wA(v2A,{Status:()=>EB0,SessionStatusEvent:()=>v2A,Info:()=>GB0,Idle:()=>KB0,Definitions:()=>Yh1});var GB0,EB0,KB0,Yh1;var PTj=x(()=>{PTj();MA();h7();H1();h7();l3();GB0=z.Union([z.Struct({type:z.Literal("idle")}),z.Struct({type:z.Literal("retry"),attempt:i6,message:z.String,action:nA(z.Struct({reason:z.String,provider:z.String,title:z.String,message:z.String,label:z.String,link:nA(z.String)})),next:i6}),z.Struct({type:z.Literal("busy")})]).annotate({identifier:"SessionStatus"}),EB0=Q6.define({type:"session.status",schema:{sessionID:t0,status:GB0}}),KB0=Q6.define({type:"session.idle",schema:{sessionID:t0}}),Yh1=Q6.inventory(EB0,KB0)});var f2A={};wA(f2A,{TuiEvent:()=>f2A,ToastShow:()=>QB0,SessionSelect:()=>WB0,PromptAppend:()=>JB0,Definitions:()=>Eh1,CommandExecute:()=>UB0});var Gh1=5000,JB0,UB0,QB0,WB0,Eh1;var TTj=x(()=>{TTj();MA();h7();H1();h7();l3();JB0=Q6.define({type:"tui.prompt.append",schema:{text:z.String}}),UB0=Q6.define({type:"tui.command.execute",schema:{command:z.Union([z.Literals(["session.list","session.new","session.share","session.interrupt","session.compact","session.page.up","session.page.down","session.line.up","session.line.down","session.half.page.up","session.half.page.down","session.first","session.last","prompt.clear","prompt.submit","agent.cycle"]),z.String])}}),QB0=Q6.define({type:"tui.toast.show",schema:{title:nA(z.String),message:z.String,variant:z.Literals(["info","success","warning","error"]),duration:W7.pipe(z.withDecodingDefault(I.succeed(Gh1))).annotate({description:"Duration in milliseconds"})}}),WB0=Q6.define({type:"tui.session.select",schema:{sessionID:t0.annotate({description:"Session ID to navigate to"})}}),Eh1=Q6.inventory(JB0,UB0,QB0,WB0)});var h2A={};wA(h2A,{VcsEvent:()=>h2A,Definitions:()=>Kh1,BranchUpdated:()=>HB0});var HB0,Kh1;var STj=x(()=>{STj();MA();h7();H1();HB0=Q6.define({type:"vcs.branch.updated",schema:{branch:nA(z.String)}}),Kh1=Q6.inventory(HB0)});var g2A={};wA(g2A,{WorktreeEvent:()=>g2A,Ready:()=>zB0,Failed:()=>ZB0,Definitions:()=>Jh1});var zB0,ZB0,Jh1;var kTj=x(()=>{kTj();MA();h7();H1();zB0=Q6.define({type:"worktree.ready",schema:{name:z.String,branch:nA(z.String)}}),ZB0=Q6.define({type:"worktree.failed",schema:{message:z.String}}),Jh1=Q6.inventory(zB0,ZB0)});var m2A={};wA(m2A,{ServerDefinitions:()=>Hh1,Latest:()=>zh1,EventManifest:()=>m2A,Durable:()=>R7A,Definitions:()=>IB0});var Uh1,Qh1,Wh1,FB0,VB0,Hh1,IB0,zh1;var bTj=x(()=>{bTj();xFA();C7A();H1();yb();uIA();DTj();ik();u00();NTj();LTj();ACA();UM();i00();xOA();NZ();EyA();Ra();UGA();$B0();n0A();_Tj();xTj();K_();PTj();vyA();qIA();TTj();STj();AOA();kTj();Uh1=yW.Event.Definitions.filter((A)=>A.durable!==void 0),Qh1=yW.Event.Definitions.filter((A)=>A.durable===void 0),Wh1=Q6.inventory(...Uh1,...h6.Definitions),FB0=Q6.inventory(...Tv.Event.Definitions,...z8.Event.Definitions,...ek.Event.Definitions,...Wh1),VB0=Q6.inventory(...hW.Event.Definitions,...KU.Event.Definitions,...B8.Event.Definitions,...M_.Event.Definitions,...YGA.Event.Definitions,...cb.Event.Definitions,...a$.Event.Definitions,...vX.Event.Definitions),Hh1=Q6.inventory(...FB0,...VB0,...DL.Event.Definitions),IB0=Q6.inventory(...FB0,...Qh1,...x2A.Definitions,...VB0,...DL.Event.Definitions,...T2A.Definitions,...Mb.Event.Definitions,...f2A.Definitions,...S2A.Definitions,...P2A.Definitions,..._5.Event.Definitions,...v2A.Definitions,...k2A.Event.Definitions,...y2A.Definitions,...h2A.Definitions,...pb.Definitions,...g2A.Definitions,...b2A.Definitions),zh1=Q6.latest(IB0)});var Zh1,Fh1=(A)=>z.Union([...A,...A.some((j)=>j.type==="server.connected")?[]:[z.Struct({...Zh1,type:z.Literal("server.connected"),data:z.Struct({})}).annotate({identifier:"V2Event.server.connected"})]]).annotate({identifier:"V2Event"}),Vh1=(A)=>{let j=Fh1(A);return{schema:j,group:S8.make("server.event").add(T6.get("event.subscribe","/api/event",{success:_7.StreamSse({data:j})}).annotateMerge(A6.annotations({identifier:"v2.event.subscribe",summary:"Subscribe to events",description:"Subscribe to native event payloads for the server."}))).annotateMerge(A6.annotations({title:"events",description:"Experimental event stream route."}))}},OB0,wB0,DB0;var yTj=x(()=>{H1();bTj();eX();MA();RB();Zh1={id:Q6.ID,metadata:z.optional(z.Record(z.String,z.Unknown)),durable:z.optional(z.Struct({aggregateID:z.String,seq:z.Int,version:z.Int})),location:z.optional(YB.Ref)},OB0=Vh1(m2A.ServerDefinitions),wB0=OB0.group,DB0=OB0.schema});var MB0;var NB0=x(()=>{tk();eX();MA();RB();fE();MB0=S8.make("server.agent").add(T6.get("agent.list","/api/agent",{query:CB,success:YB.response(z.Array(w2.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.agent.list",summary:"List agents",description:"Retrieve currently registered agents."})))});var LB0;var RB0=x(()=>{MA();RB();LB0=S8.make("server.health").add(T6.get("health.get","/api/health",{success:z.Struct({healthy:z.Literal(!0)})}).annotateMerge(A6.annotations({identifier:"v2.health.get",summary:"Check server health",description:"Check whether the API server is ready to accept requests."})))});function xB0(A){return Ih1.test(A.pathname)&&!!A.searchParams.get(BfA)}var BfA="ticket",CB0="x-opencode-ticket",_B0="1",Ih1,PB0;var $fA=x(()=>{Ra();fvA();eX();MA();RB();hX();fE();Ih1=/^\/api\/pty\/[^/]+\/connect$/;PB0=S8.make("server.pty").add(T6.get("pty.list","/api/pty",{query:CB,success:YB.response(z.Array(a$.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.pty.list",summary:"List PTY sessions",description:"List PTY sessions for a location, including exited sessions retained until removal."}))).add(T6.post("pty.create","/api/pty",{query:CB,payload:a$.CreateInput,success:YB.response(a$.Info)}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.pty.create",summary:"Create PTY session",description:"Create a pseudo-terminal session for a location."}))).add(T6.get("pty.get","/api/pty/:ptyID",{params:{ptyID:a$.ID},query:CB,success:YB.response(a$.Info),error:$z}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.pty.get",summary:"Get PTY session",description:"Get one PTY session, including its exit code once exited."}))).add(T6.put("pty.update","/api/pty/:ptyID",{params:{ptyID:a$.ID},query:CB,payload:a$.UpdateInput,success:YB.response(a$.Info),error:$z}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.pty.update",summary:"Update PTY session",description:"Update the title or viewport size of one PTY session."}))).add(T6.delete("pty.remove","/api/pty/:ptyID",{params:{ptyID:a$.ID},query:CB,success:_7.NoContent,error:$z}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.pty.remove",summary:"Remove PTY session",description:"Terminate and remove one PTY session."}))).add(T6.post("pty.connectToken","/api/pty/:ptyID/connect-token",{params:{ptyID:a$.ID},query:CB,success:YB.response(ih.ConnectToken),error:[Jo,$z]}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.pty.connectToken",summary:"Create PTY WebSocket token",description:"Create a short-lived single-use ticket for opening a PTY WebSocket connection."}))).add(T6.get("pty.connect","/api/pty/:ptyID/connect",{params:{ptyID:a$.ID},success:z.Boolean,error:[Jo,$z]}).annotateMerge(A6.annotations({identifier:"v2.pty.connect",summary:"Connect to PTY session",description:"Establish a WebSocket connection streaming PTY output and accepting terminal input.",transform:(A)=>({...A,parameters:[...A.parameters??[],...["location[directory]","location[workspace]","cursor",BfA].map((j)=>({in:"query",name:j,schema:{type:"string"}}))]})}))).annotateMerge(A6.annotations({title:"pty",description:"Experimental location-scoped PTY routes."}))});var TB0=(A,j)=>S8.make("server.question").add(T6.get("question.request.list","/api/question/request",{query:CB,success:YB.response(z.Array(vX.Request))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.question.request.list",summary:"List pending question requests",description:"Retrieve pending question requests for a location."}))).annotateMerge(A6.annotations({title:"questions",description:"Experimental question routes."})).middleware(A).add(T6.get("session.question.list","/api/session/:sessionID/question",{params:{sessionID:L8.ID},success:z.Struct({data:z.Array(vX.Request)}),error:WB}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.question.list",summary:"List session question requests",description:"Retrieve pending question requests owned by a session."}))).add(T6.post("session.question.reply","/api/session/:sessionID/question/:requestID/reply",{params:{sessionID:L8.ID,requestID:vX.ID},payload:vX.Reply,success:_7.NoContent,error:[WB,Ko]}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.question.reply",summary:"Reply to pending question request",description:"Answer a pending question request owned by a session."}))).add(T6.post("session.question.reject","/api/session/:sessionID/question/:requestID/reject",{params:{sessionID:L8.ID,requestID:vX.ID},success:_7.NoContent,error:[WB,Ko]}).middleware(j).annotateMerge(A6.annotations({identifier:"v2.session.question.reject",summary:"Reject pending question request",description:"Reject a pending question request owned by a session."}))).annotateMerge(A6.annotations({title:"session questions",description:"Experimental session question routes."}));var SB0=x(()=>{UGA();eX();O_();MA();RB();hX();fE()});var kB0;var bB0=x(()=>{eX();n0A();MA();RB();fE();kB0=S8.make("server.reference").add(T6.get("reference.list","/api/reference",{query:CB,success:YB.response(z.Array(KU.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.reference.list",summary:"List references",description:"List references available in the requested location."}))).annotateMerge(A6.annotations({title:"reference",description:"Location-scoped project references."}))});var $T;var XfA=x(()=>{RB();hX();$T=class $T extends UJ.Service()("@opencode/HttpApiAuthorization",{error:L2A}){}});var Oh1,yB0;var vB0=x(()=>{ik();eX();MA();RB();hX();fE();Oh1=z.Record(z.String,z.String),yB0=S8.make("server.integration").add(T6.get("integration.list","/api/integration",{query:CB,success:YB.response(z.Array(z8.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.list",summary:"List integrations",description:"Retrieve available integrations and their authentication methods."}))).add(T6.get("integration.get","/api/integration/:integrationID",{params:{integrationID:z8.ID},query:CB,success:YB.response(z.UndefinedOr(z8.Info))}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.get",summary:"Get integration",description:"Retrieve one integration and its authentication methods."}))).add(T6.post("integration.connect.key","/api/integration/:integrationID/connect/key",{params:{integrationID:z8.ID},query:CB,payload:z.Struct({key:z.String,label:z.optional(z.String)}),success:_7.NoContent,error:gG}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.connect.key",summary:"Connect with key",description:"Run a key authentication method and store the resulting credential."}))).add(T6.post("integration.connect.oauth","/api/integration/:integrationID/connect/oauth",{params:{integrationID:z8.ID},query:CB,payload:z.Struct({methodID:z8.MethodID,inputs:Oh1,label:z.optional(z.String)}),success:YB.response(z8.Attempt),error:gG}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.connect.oauth",summary:"Begin OAuth connection",description:"Start an OAuth attempt and return the authorization details."}))).add(T6.get("integration.attempt.status","/api/integration/attempt/:attemptID",{params:{attemptID:z8.AttemptID},query:CB,success:YB.response(z8.AttemptStatus)}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.attempt.status",summary:"Get OAuth attempt status",description:"Poll the current status of an OAuth attempt."}))).add(T6.post("integration.attempt.complete","/api/integration/attempt/:attemptID/complete",{params:{attemptID:z8.AttemptID},query:CB,payload:z.Struct({code:z.optional(z.String)}),success:_7.NoContent,error:gG}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.attempt.complete",summary:"Complete OAuth connection",description:"Complete a code-based OAuth attempt and store the resulting credential."}))).add(T6.delete("integration.attempt.cancel","/api/integration/attempt/:attemptID",{params:{attemptID:z8.AttemptID},query:CB,success:_7.NoContent}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.integration.attempt.cancel",summary:"Cancel OAuth connection",description:"Cancel an OAuth attempt and release its resources."}))).annotateMerge(A6.annotations({title:"integrations",description:"Integration discovery and authentication routes."}))});var fB0;var hB0=x(()=>{ojA();MA();RB();fE();fB0=S8.make("server.credential").add(T6.patch("credential.update","/api/credential/:credentialID",{params:{credentialID:lJ.ID},query:CB,payload:z.Struct({label:z.String}),success:_7.NoContent}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.credential.update",summary:"Update credential",description:"Update a stored credential label."}))).add(T6.delete("credential.remove","/api/credential/:credentialID",{params:{credentialID:lJ.ID},query:CB,success:_7.NoContent}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.credential.remove",summary:"Remove credential",description:"Remove a stored integration credential."})))});var vTj="/experimental/project/:projectID/copy",Qo,wh1,Dh1,gB0;var fTj=x(()=>{KyA();NZ();MA();RB();fE();Qo=class Qo extends z.ErrorClass("ProjectCopyError")({name:z.Literal("ProjectCopyError"),data:z.Struct({message:z.String,forceRequired:z.optional(z.Boolean)})},{httpApiStatus:400}){};wh1=z.Struct(gV.omit(tH.CreateInput.fields,["projectID","sourceDirectory"])),Dh1=z.Struct(gV.omit(tH.RemoveInput.fields,["projectID"])),gB0=S8.make("server.projectCopy").add(T6.post("projectCopy.create",vTj,{params:{projectID:_5.ID},query:CB,payload:wh1,success:tH.Copy,error:Qo}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.projectCopy.create"}))).add(T6.delete("projectCopy.remove",vTj,{params:{projectID:_5.ID},query:CB,payload:Dh1,success:_7.NoContent,error:Qo}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.projectCopy.remove"}))).add(T6.post("projectCopy.refresh",`${vTj}/refresh`,{params:{projectID:_5.ID},query:CB,success:_7.NoContent,error:Qo}).annotateMerge(_B).annotateMerge(A6.annotations({identifier:"v2.projectCopy.refresh"}))).annotateMerge(A6.annotations({title:"projectCopy",description:"Project copy management routes."}))});var Mh1=(A,j,B)=>w2A.make("server").add(LB0).add(D00.middleware(j)).add(MB0.middleware(j)).add(P00(B)).add(O00.middleware(B)).add(M00.middleware(j)).add(L00.middleware(j)).add(yB0.middleware(j)).add(fB0.middleware(j)).add(T00(j,B)).add(k00.middleware(j)).add(y00.middleware(j)).add(f00.middleware(j)).add(A).add(PB0.middleware(j)).add(TB0(j,B)).add(kB0.middleware(j)).add(gB0.middleware(j)).annotateMerge(A6.annotations({title:"opencode HttpApi",version:"0.0.1",description:"Experimental HttpApi surface for selected instance routes."})).middleware($T).middleware(Uo),mB0=(A)=>Mh1(wB0,A.locationMiddleware,A.sessionLocationMiddleware);var cB0=x(()=>{RB();evA();w00();N00();R00();wTj();S00();b00();v00();h00();yTj();NB0();RB0();$fA();SB0();bB0();XfA();fE();vB0();hB0();fTj()});function $4(A){return I.gen(function*(){let j=yield*M6.Service;return{location:new M6.Info({directory:j.directory,workspaceID:j.workspaceID,project:j.project}),data:yield*A}})}function Nh1(A){let j=new URL(A.url,"http://localhost").searchParams,B=j.get("location[workspace]")||A.headers["x-opencode-workspace"],$=j.get("location[directory]")||(A.headers["x-opencode-directory"]?Lh1(A.headers["x-opencode-directory"]):process.cwd());return M6.Ref.make({directory:J6.make($),workspaceID:B?RK.ID.make(B):void 0})}function Lh1(A){try{return decodeURIComponent(A)}catch{return A}}var c2A,uB0;var QJ=x(async()=>{wB();ib();MA();A$();RB();await _j([h1(),yvA()]);c2A=class c2A extends UJ.Service()("@opencode/HttpApiLocation"){};uB0=yA.effect(c2A,I.gen(function*(){let A=yield*q$.Service;return c2A.of((j)=>I.gen(function*(){let B=yield*dJ.HttpServerRequest;return yield*j.pipe(I.provide(A.get(Nh1(B))))}))}))});var u2A,Rh1,dB0;var hTj=x(async()=>{wB();bI();ib();c3();MA();A$();RB();hX();await _j([d3(),yvA(),h1(),By()]);u2A=class u2A extends UJ.Service()("@opencode/HttpApiSessionLocation",{error:[gG,WB]}){};Rh1=z.decodeUnknownEffect(GU.ID),dB0=yA.effect(u2A,I.gen(function*(){let{db:A}=yield*j8.Service,j=yield*q$.Service;return u2A.of((B)=>I.gen(function*(){let $=yield*OC.RouteContext,X=yield*Rh1($.params.sessionID).pipe(I.mapError(()=>new gG({message:"Invalid session ID",field:"sessionID"}))),q=yield*A.select({directory:C0.directory,workspaceID:C0.workspace_id}).from(C0).where(Sj(C0.id,X)).get().pipe(I.orDie);if(!q)return yield*new WB({sessionID:X,message:`Session not found: ${X}`});return yield*B.pipe(I.provide(j.get(M6.Ref.make({directory:J6.make(q.directory),workspaceID:q.workspaceID?RK.ID.make(q.workspaceID):void 0}))))}))}))});var k8;var Uq=x(async()=>{cB0();await _j([QJ(),hTj()]);k8=mB0({locationMiddleware:c2A,sessionLocationMiddleware:u2A})});var Ch1=50,_h1,xh1,gTj,pB0;var lB0=x(async()=>{XE();MA();RB();hX();await _j([By(),Uq()]);_h1=z.Struct({id:X0.ID,order:z.Union([z.Literal("asc"),z.Literal("desc")]),direction:z.Union([z.Literal("previous"),z.Literal("next")])}),xh1=z.decodeUnknownSync(_h1),gTj={encode(A,j,B){return Buffer.from(JSON.stringify({id:A.id,order:j,direction:B})).toString("base64url")},decode(A){return xh1(JSON.parse(Buffer.from(A,"base64url").toString("utf8")))}},pB0=Y8.group(k8,"server.message",(A)=>I.gen(function*(){let j=yield*GU.Service;return A.handle("session.messages",I.fn(function*(B){if(B.query.cursor&&B.query.order!==void 0)return yield*new Jw({message:"Cursor cannot be combined with order"});let $=yield*I.try({try:()=>B.query.cursor?gTj.decode(B.query.cursor):void 0,catch:()=>new Jw({message:"Invalid cursor"})}),X=$?.order??B.query.order??"desc",q=yield*j.messages({sessionID:B.params.sessionID,limit:B.query.limit??Ch1,order:X,cursor:$?{id:$.id,direction:$.direction}:void 0}).pipe(I.catchTag("Session.NotFoundError",(K)=>I.fail(new WB({sessionID:K.sessionID,message:`Session not found: ${K.sessionID}`}))),I.catchTag("Session.MessageDecodeError",(K)=>{let J=`err_${crypto.randomUUID().slice(0,8)}`;return I.logError("failed to decode session message").pipe(I.annotateLogs({ref:J,sessionID:K.sessionID,messageID:K.messageID}),I.andThen(I.fail(new DQ({message:"Unexpected server error. Check server logs for details.",ref:J}))))})),Y=q[0],E=q.at(-1);return{data:q,cursor:{previous:Y?gTj.encode(Y,X,"previous"):void 0,next:E?gTj.encode(E,X,"next"):void 0}}}))}))});var iB0;var nB0=x(async()=>{MA();RB();await _j([LI(),Uq(),QJ()]);iB0=Y8.group(k8,"server.model",(A)=>I.gen(function*(){return A.handle("model.list",I.fn(function*(){let j=yield*x5.Service;return yield*$4(j.model.available())}))}))});var rB0;var aB0=x(async()=>{MA();RB();hX();await _j([LI(),Uq(),QJ()]);rB0=Y8.group(k8,"server.provider",(A)=>I.gen(function*(){return A.handle("provider.list",I.fn(function*(){let j=yield*x5.Service;return yield*$4(j.provider.available())})).handle("provider.get",I.fn(function*(j){let $=yield*(yield*x5.Service).provider.get(j.params.providerID);if(!$)return yield*new C2A({providerID:j.params.providerID,message:`Provider not found: ${j.params.providerID}`});return yield*$4(I.succeed($))}))}))});var Ph1=50,Th1=50,oB0;var sB0=x(async()=>{MA();RB();wTj();hX();wB();await _j([By(),Uq()]);oB0=Y8.group(k8,"server.session",(A)=>I.gen(function*(){let j=yield*GU.Service;return A.handle("session.list",I.fn(function*(B){let $=B.query.cursor!==void 0?yield*jg.parse(B.query.cursor).pipe(I.mapError(()=>new Jw({message:"Invalid cursor"}))):B.query,X=yield*j.list({...$,workspaceID:$.workspace,limit:B.query.limit??Ph1}),q=X[0],Y=X.at(-1);return{data:X,cursor:{previous:q?jg.make({...$,anchor:{id:q.id,time:L0.toEpochMillis(q.time.created),direction:"previous"}}):void 0,next:Y?jg.make({...$,anchor:{id:Y.id,time:L0.toEpochMillis(Y.time.created),direction:"next"}}):void 0}}})).handle("session.create",I.fn(function*(B){return{data:yield*j.create({id:B.payload.id,agent:B.payload.agent,model:B.payload.model,location:B.payload.location??{directory:J6.make(process.cwd())}})}})).handle("session.active",I.fn(function*(){return{data:Object.fromEntries(Array.from(yield*j.active,(B)=>[B,{type:"running"}]))}})).handle("session.get",I.fn(function*(B){return{data:yield*j.get(B.params.sessionID).pipe(I.catchTag("Session.NotFoundError",($)=>new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})))}})).handle("session.switchAgent",I.fn(function*(B){return yield*j.switchAgent({sessionID:B.params.sessionID,agent:B.payload.agent}).pipe(I.catchTag("Session.NotFoundError",($)=>I.fail(new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})))),_7.NoContent.make()})).handle("session.switchModel",I.fn(function*(B){return yield*j.switchModel({sessionID:B.params.sessionID,model:B.payload.model}).pipe(I.catchTag("Session.NotFoundError",($)=>I.fail(new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})))),_7.NoContent.make()})).handle("session.prompt",I.fn(function*(B){return{data:yield*j.prompt({sessionID:B.params.sessionID,id:B.payload.id,prompt:B.payload.prompt,delivery:B.payload.delivery,resume:B.payload.resume}).pipe(I.catchTag("Session.NotFoundError",($)=>I.fail(new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`}))),I.catchTag("Session.PromptConflictError",($)=>I.fail(new R2A({message:`Prompt message ID conflicts with an existing durable record: ${$.messageID}`,resource:$.messageID}))))}})).handle("session.compact",I.fn(function*(B){return yield*j.compact({sessionID:B.params.sessionID}).pipe(I.catchTag("Session.NotFoundError",($)=>I.fail(new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`}))),I.catchTag("Session.OperationUnavailableError",($)=>I.fail(new Bz({message:`Session ${$.operation} is not available yet`,service:`session.${$.operation}`})))),_7.NoContent.make()})).handle("session.wait",I.fn(function*(B){return yield*j.wait(B.params.sessionID).pipe(I.catchTag("Session.NotFoundError",($)=>I.fail(new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`}))),I.catchTag("Session.OperationUnavailableError",($)=>I.fail(new Bz({message:`Session ${$.operation} is not available yet`,service:`session.${$.operation}`})))),_7.NoContent.make()})).handle("session.revert.stage",I.fn(function*(B){return{data:yield*j.revert.stage({...B.params,...B.payload}).pipe(I.catchTag("Session.NotFoundError",($)=>new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})),I.catchTag("Session.MessageNotFoundError",($)=>new Ag({sessionID:$.sessionID,messageID:$.messageID,message:`Message not found: ${$.messageID}`})),I.catchTag("Snapshot.Error",($)=>{let X=`err_${crypto.randomUUID().slice(0,8)}`;return I.logError("failed to stage session revert",{cause:$}).pipe(I.andThen(I.fail(new DQ({message:"Unexpected server error. Check server logs for details.",ref:X}))))}))}})).handle("session.revert.clear",I.fn(function*(B){return yield*j.revert.clear(B.params.sessionID).pipe(I.catchTag("Session.NotFoundError",($)=>new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})),I.catchTag("Snapshot.Error",($)=>{let X=`err_${crypto.randomUUID().slice(0,8)}`;return I.logError("failed to clear session revert",{cause:$}).pipe(I.andThen(I.fail(new DQ({message:"Unexpected server error. Check server logs for details.",ref:X}))))})),_7.NoContent.make()})).handle("session.revert.commit",I.fn(function*(B){return yield*j.revert.commit(B.params.sessionID).pipe(I.catchTag("Session.NotFoundError",($)=>new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`}))),_7.NoContent.make()})).handle("session.context",I.fn(function*(B){return{data:yield*j.context(B.params.sessionID).pipe(I.catchTag("Session.NotFoundError",($)=>I.fail(new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`}))),I.catchTag("Session.MessageDecodeError",($)=>{let X=`err_${crypto.randomUUID().slice(0,8)}`;return I.logError("failed to decode session message").pipe(I.annotateLogs({ref:X,sessionID:$.sessionID,messageID:$.messageID}),I.andThen(I.fail(new DQ({message:"Unexpected server error. Check server logs for details.",ref:X}))))}))}})).handle("session.history",I.fn(function*(B){return yield*j.history({sessionID:B.params.sessionID,after:B.query.after,limit:B.query.limit??Th1}).pipe(I.map(($)=>({data:$.events,hasMore:$.hasMore})),I.catchTag("Session.NotFoundError",($)=>new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})))})).handle("session.events",I.fn((B)=>I.succeed(j.events({sessionID:B.params.sessionID,after:B.query.after}).pipe(kj.orDie)))).handle("session.interrupt",I.fn(function*(B){return yield*j.interrupt(B.params.sessionID),_7.NoContent.make()})).handle("session.message",I.fn(function*(B){let $=yield*j.message(B.params);if($)return{data:$};return yield*new Ag({sessionID:B.params.sessionID,messageID:B.params.messageID,message:`Message not found: ${B.params.messageID}`})}))}))});function mTj(A){return new Eo({requestID:A,message:`Permission request not found: ${A}`})}var tB0;var eB0=x(async()=>{MA();RB();hX();await _j([h1(),bq(),td(),Uq(),QJ()]);tB0=Y8.group(k8,"server.permission",(A)=>I.gen(function*(){return A.handle("permission.request.list",I.fn(function*(){return yield*$4((yield*p7.Service).list())})).handle("session.permission.create",I.fn(function*(j){return{data:yield*(yield*p7.Service).ask({id:j.payload.id,sessionID:j.params.sessionID,action:j.payload.action,resources:j.payload.resources,save:j.payload.save,metadata:j.payload.metadata,source:j.payload.source,agent:j.payload.agent}).pipe(I.catchTag("Session.NotFoundError",($)=>new WB({sessionID:$.sessionID,message:`Session not found: ${$.sessionID}`})))}})).handle("session.permission.list",I.fn(function*(j){return{data:yield*(yield*p7.Service).forSession(j.params.sessionID)}})).handle("session.permission.get",I.fn(function*(j){let B=yield*(yield*p7.Service).get(j.params.requestID);if(!B||B.sessionID!==j.params.sessionID)return yield*mTj(j.params.requestID);return{data:B}})).handle("session.permission.reply",I.fn(function*(j){let B=yield*p7.Service,$=yield*B.get(j.params.requestID);if(!$||$.sessionID!==j.params.sessionID)return yield*mTj(j.params.requestID);return yield*B.reply({requestID:j.params.requestID,reply:j.payload.reply,message:j.payload.message}).pipe(I.catchTag("PermissionV2.NotFoundError",()=>mTj(j.params.requestID))),_7.NoContent.make()})).handle("permission.saved.list",I.fn(function*(j){let B=yield*M6.Service;return{data:yield*(yield*EU.Service).list({projectID:j.query.projectID??B.project.id})}})).handle("permission.saved.remove",I.fn(function*(j){return yield*(yield*EU.Service).remove(j.params.id),_7.NoContent.make()}))}))});var A80;var j80=x(async()=>{wB();MA();A$();RB();await _j([PI(),Uq(),QJ()]);A80=Y8.group(k8,"server.fs",(A)=>I.gen(function*(){return A.handleRaw("fs.read",(j)=>I.gen(function*(){let B=yield*(yield*Z8.Service).read({path:K0.make(decodeURIComponent(new URL(j.request.url,"http://localhost").pathname.slice(13)))});return P$.uint8Array(B.content,{contentType:B.mime})})).handle("fs.list",(j)=>$4(I.gen(function*(){return yield*(yield*Z8.Service).list(j.query)}))).handle("fs.find",(j)=>$4(I.gen(function*(){return yield*(yield*Z8.Service).find(j.query)})))}))});var B80;var $80=x(async()=>{Rb();RB();await _j([Uq(),QJ()]);B80=Y8.group(k8,"server.command",(A)=>A.handle("command.list",()=>$4(L2.Service.use((j)=>j.list()))))});var X80;var q80=x(async()=>{RB();await _j([SZ(),Uq(),QJ()]);X80=Y8.group(k8,"server.skill",(A)=>A.handle("skill.list",()=>$4(s1.Service.use((j)=>j.list()))))});function kh1(A){return{_tag:"Event",event:"message",id:void 0,data:JSON.stringify(z.encodeUnknownSync(DB0)(A))}}var Sh1=256,Y80;var G80=x(async()=>{yTj();MA();A$();RB();zVA();await _j([X$(),Uq()]);Y80=Y8.group(k8,"server.event",(A)=>I.gen(function*(){let j=yield*X7.Service;return A.handleRaw("event.subscribe",()=>I.gen(function*(){let B={id:X7.ID.create(),type:"server.connected",data:{}},$=kj.unwrap(I.gen(function*(){let q=yield*X7.allBounded(j,Sh1);return kj.make(B).pipe(kj.concat(q))})).pipe(kj.map(kh1),kj.pipeThroughChannel(HK6())),X=kj.tick("15 seconds").pipe(kj.map(()=>`: heartbeat
2928
2928
 
2929
- `));return P$.stream($.pipe(kj.merge(X,{haltStrategy:"left"}),kj.encodeText),{contentType:"text/event-stream",headers:{"Cache-Control":"no-cache, no-transform","X-Accel-Buffering":"no","X-Content-Type-Options":"nosniff"}})}))}))});var E80;var K80=x(async()=>{NW();MA();RB();await _j([Uq(),QJ()]);E80=Y8.group(k8,"server.agent",(A)=>A.handle("agent.list",()=>I.gen(function*(){return yield*$4(sB.Service.use((j)=>j.all()))})))});var J80;var U80=x(async()=>{MA();RB();await Uq();J80=Y8.group(k8,"server.health",(A)=>A.handle("health.get",()=>I.succeed({healthy:!0})))});var Bg={};wA(Bg,{metaFrame:()=>vh1,decodeInput:()=>hh1,chunks:()=>fh1,REPLAY_CHUNK:()=>cTj,PtyProtocol:()=>Bg});function vh1(A){let j=bh1.encode(JSON.stringify({cursor:A})),B=new Uint8Array(j.length+1);return B[0]=0,B.set(j,1),B}function fh1(A){let j=[];for(let B=0;B<A.length;B+=cTj)j.push(A.slice(B,B+cTj));return j}function hh1(A){if(typeof A==="string")return A;try{return yh1.decode(A instanceof ArrayBuffer?new Uint8Array(A):A)}catch{return}}var bh1,yh1,cTj=65536;var uTj=x(()=>{uTj();bh1=new TextEncoder,yh1=new TextDecoder("utf-8",{fatal:!0})});function mh1(A,j){if(!A)return!0;if(A.startsWith("http://localhost:"))return!0;if(A.startsWith("http://127.0.0.1:"))return!0;if(A.startsWith("oc://renderer"))return!0;if(A==="tauri://localhost"||A==="http://tauri.localhost"||A==="https://tauri.localhost")return!0;if(gh1.test(A))return!0;return j?.cors?.includes(A)??!1}function dTj(A,j,B){if(!A)return!0;if(j&&ch1(A,j))return!0;return mh1(A,B)}function ch1(A,j){try{return new URL(A).host===j}catch{return!1}}var gh1,Q80;var W80=x(()=>{MA();gh1=/^https:\/\/([a-z0-9-]+\.)*opencode\.ai$/,Q80=dA.Reference("@opencode/ServerCorsConfig",{defaultValue:()=>{return}})});var $g={};wA($g,{node:()=>uh1,layer:()=>H80,Service:()=>d2A,PtyEnvironment:()=>$g});var d2A,H80,uh1;var qfA=x(()=>{qfA();MA();m6();d2A=class d2A extends dA.Service()("@opencode/ServerPtyEnvironment"){};H80=yA.succeed(d2A,d2A.of({get:()=>I.succeed({})})),uh1=v7({service:d2A,layer:H80,deps:[]})});var z80,Z80;var F80=x(async()=>{uTj();hvA();MA();A$();RB();DzA();W80();hX();$fA();qfA();await _j([ZyA(),h1(),Uq(),QJ()]);z80=I.gen(function*(){let A=yield*M6.Service;return{directory:A.directory,workspaceID:A.workspaceID}}),Z80=Y8.group(k8,"server.pty",(A)=>I.gen(function*(){let j=yield*nh.Service,B=yield*Q80,$=yield*$g.Service;return A.handle("pty.list",I.fn(function*(){return yield*$4((yield*VQ.Service).list())})).handle("pty.create",I.fn(function*(X){let q=yield*VQ.Service,Y=yield*M6.Service,E=X.payload.cwd||Y.directory;return yield*$4(q.create({...X.payload,args:X.payload.args?[...X.payload.args]:void 0,cwd:E,env:{...X.payload.env,...yield*$.get({directory:Y.directory,cwd:E})}}))})).handle("pty.get",I.fn(function*(X){let q=yield*VQ.Service;return yield*$4(q.get(X.params.ptyID).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))))})).handle("pty.update",I.fn(function*(X){let q=yield*VQ.Service;return yield*$4(q.update(X.params.ptyID,{...X.payload,size:X.payload.size?{...X.payload.size}:void 0}).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))))})).handle("pty.remove",I.fn(function*(X){return yield*(yield*VQ.Service).remove(X.params.ptyID).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))),_7.NoContent.make()})).handle("pty.connectToken",I.fn(function*(X){let q=yield*dJ.HttpServerRequest;if(q.headers[CB0]!==_B0||!dTj(q.headers.origin,q.headers.host,B))return yield*new Jo({message:"Invalid PTY connect token request"});return yield*(yield*VQ.Service).get(X.params.ptyID).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))),yield*$4(j.issue({ptyID:X.params.ptyID,...yield*z80}))})).handleRaw("pty.connect",I.fn("PtyHandler.connect")(function*(X){let q=yield*VQ.Service;if(!(yield*q.get(X.params.ptyID).pipe(I.as(!0),I.catchTag("Pty.NotFoundError",()=>I.succeed(!1)))))return P$.empty({status:404});let E=new URL(X.request.url,"http://localhost"),K=E.searchParams.get(BfA);if(K){if(!(dTj(X.request.headers.origin,X.request.headers.host,B)?yield*j.consume({ticket:K,ptyID:X.params.ptyID,...yield*z80}):!1))return P$.empty({status:403})}let J=E.searchParams.get("cursor"),U=J===null?void 0:Number(J),Q=U!==void 0&&Number.isSafeInteger(U)&&U>=-1?U:void 0,W=yield*I.orDie(X.request.upgrade),H=yield*W.writer,Z=(D)=>W.runRaw(()=>I.void,{onOpen:H(D).pipe(I.catch(()=>I.void))}).pipe(I.timeout("1 second"),I.catchReason("SocketError","SocketCloseError",()=>I.void),I.catch(()=>I.void)),F=yield*J4.unbounded(),V=yield*q.attach(X.params.ptyID,{cursor:Q,onData:(D)=>J4.offerUnsafe(F,D),onEnd:()=>J4.offerUnsafe(F,new $u(1000))}).pipe(I.catchTags({"Pty.NotFoundError":()=>Z(new $u(4404,"session not found")).pipe(I.as(void 0)),"Pty.ExitedError":()=>Z(new $u(4404,"session exited")).pipe(I.as(void 0))}));if(!V)return P$.empty();for(let D of Bg.chunks(V.replay))J4.offerUnsafe(F,D);J4.offerUnsafe(F,Bg.metaFrame(V.cursor)),V.activate();let O=I.gen(function*(){while(!0){let D=yield*J4.take(F);if(yield*H(D),D instanceof $u)return}});return yield*I.race(O,W.runRaw((D)=>{let w=Bg.decodeInput(D);if(w!==void 0)V.write(w)})).pipe(I.catchReason("SocketError","SocketCloseError",()=>I.void),I.ensuring(I.sync(()=>V.detach())),I.orDie),P$.empty()}))}))});function pTj(A){return new Ko({requestID:A,message:`Question request not found: ${A}`})}var V80;var I80=x(async()=>{MA();RB();hX();await _j([xa(),Uq(),QJ()]);V80=Y8.group(k8,"server.question",(A)=>I.gen(function*(){let j=I.fnUntraced(function*(B,$,X){let q=yield*Y3.Service,Y=(yield*q.list()).find((E)=>E.id===$);if(!Y||Y.sessionID!==B)return yield*pTj($);return yield*X(q)});return A.handle("question.request.list",I.fn(function*(){return yield*$4((yield*Y3.Service).list())})).handle("session.question.list",I.fn(function*(B){return{data:(yield*(yield*Y3.Service).list()).filter((X)=>X.sessionID===B.params.sessionID)}})).handle("session.question.reply",I.fn(function*(B){return yield*j(B.params.sessionID,B.params.requestID,($)=>$.reply({requestID:B.params.requestID,answers:B.payload.answers}).pipe(I.catchTag("QuestionV2.NotFoundError",()=>pTj(B.params.requestID)))),_7.NoContent.make()})).handle("session.question.reject",I.fn(function*(B){return yield*j(B.params.sessionID,B.params.requestID,($)=>$.reject(B.params.requestID).pipe(I.catchTag("QuestionV2.NotFoundError",()=>pTj(B.params.requestID)))),_7.NoContent.make()}))}))});var O80;var w80=x(async()=>{RB();await _j([PM(),Uq(),QJ()]);O80=Y8.group(k8,"server.reference",(A)=>A.handle("reference.list",()=>$4(Y$.Service.use((j)=>j.list()))))});var D80;var M80=x(async()=>{MA();RB();await _j([h1(),Uq()]);D80=Y8.group(k8,"server.location",(A)=>A.handle("location.get",I.fn(function*(){let j=yield*M6.Service;return new M6.Info({directory:j.directory,workspaceID:j.workspaceID,project:j.project})})))});var N80=(A)=>A.pipe(I.mapError(()=>new gG({message:"Authentication failed",kind:"integration_authorization"}))),L80;var R80=x(async()=>{MA();RB();hX();await _j([eJ(),Uq(),QJ()]);L80=Y8.group(k8,"server.integration",(A)=>I.gen(function*(){return A.handle("integration.list",I.fn(function*(){let j=yield*k7.Service;return yield*$4(j.list())})).handle("integration.get",I.fn(function*(j){let B=yield*k7.Service;return yield*$4(B.get(j.params.integrationID))})).handle("integration.connect.key",I.fn(function*(j){let B=yield*k7.Service;return yield*N80(B.connection.key({integrationID:j.params.integrationID,key:j.payload.key,label:j.payload.label})),_7.NoContent.make()})).handle("integration.connect.oauth",I.fn(function*(j){let B=yield*k7.Service;return yield*$4(N80(B.connection.oauth({integrationID:j.params.integrationID,methodID:j.payload.methodID,inputs:j.payload.inputs,label:j.payload.label})))})).handle("integration.attempt.status",I.fn(function*(j){let B=yield*k7.Service;return yield*$4(B.attempt.status(j.params.attemptID))})).handle("integration.attempt.complete",I.fn(function*(j){return yield*(yield*k7.Service).attempt.complete({attemptID:j.params.attemptID,code:j.payload.code}).pipe(I.mapError(($)=>new gG({message:$._tag==="Integration.CodeRequired"?"Authorization code is required":"Authentication failed",kind:$._tag==="Integration.CodeRequired"?"integration_code_required":"integration_authorization"}))),_7.NoContent.make()})).handle("integration.attempt.cancel",I.fn(function*(j){return yield*(yield*k7.Service).attempt.cancel(j.params.attemptID),_7.NoContent.make()}))}))});var C80;var _80=x(async()=>{MA();RB();await _j([eJ(),Uq()]);C80=Y8.group(k8,"server.credential",(A)=>A.handle("credential.update",I.fn(function*(j){return yield*(yield*k7.Service).connection.update(j.params.credentialID,{label:j.payload.label}),_7.NoContent.make()})).handle("credential.remove",I.fn(function*(j){return yield*(yield*k7.Service).connection.remove(j.params.credentialID),_7.NoContent.make()})))});function lTj(A){return A.pipe(I.mapError((j)=>new Qo({name:"ProjectCopyError",data:{message:dh1(j),forceRequired:j instanceof $5.WorktreeError?j.forceRequired:void 0}})))}function dh1(A){if(A instanceof bE.SourceDirectoryNotFoundError)return`Project copy source not found: ${A.directory}`;if(A instanceof bE.DestinationExistsError)return`Project copy destination already exists: ${A.directory}`;if(A instanceof bE.DirectoryUnavailableError)return`Project copy directory unavailable: ${A.directory}`;if(A instanceof bE.InvalidDirectoryError)return`Invalid project copy directory: ${A.directory}`;if(A instanceof bE.StrategyUnavailableError)return`Project copy strategy unavailable: ${A.strategy}`;return A.message}var x80;var P80=x(async()=>{$_();MA();RB();fTj();await _j([h1(),qGA(),Uq()]);x80=Y8.group(k8,"server.projectCopy",(A)=>I.succeed(A.handle("projectCopy.create",(j)=>I.gen(function*(){let B=yield*bE.Service,$=yield*M6.Service;return yield*lTj(B.create({...j.payload,projectID:j.params.projectID,sourceDirectory:$.project.directory}))})).handle("projectCopy.remove",(j)=>bE.Service.use((B)=>lTj(B.remove({...j.payload,projectID:j.params.projectID})).pipe(I.as(_7.NoContent.make())))).handle("projectCopy.refresh",(j)=>bE.Service.use((B)=>lTj(B.refresh({projectID:j.params.projectID})).pipe(I.as(_7.NoContent.make()))))))});var T80;var S80=x(async()=>{MA();await _j([lB0(),nB0(),aB0(),sB0(),eB0(),j80(),$80(),q80(),G80(),K80(),U80(),F80(),I80(),w80(),M80(),R80(),_80(),P80()]);T80=yA.mergeAll(J80,D80,E80,oB0,pB0,iB0,rB0,L80,C80,tB0,A80,B80,X80,Y80,Z80,V80,O80,x80)});function iTj(){return{username:"",password:$Y.make("")}}function k80(A){return I.fromResult(NV.decodeBase64String(A)).pipe(I.match({onFailure:iTj,onSuccess:(j)=>{let B=j.indexOf(":");if(B===-1)return iTj();return{username:j.slice(0,B),password:$Y.make(j.slice(B+1))}}}))}function ih1(A){let B=new URL(A.url,"http://localhost").searchParams.get(ph1);if(B)return k80(B);let $=/^Basic\s+(.+)$/i.exec(A.headers.authorization??"");if($)return k80($[1]);return I.succeed(iTj())}var ph1="auth_token",lh1='Basic realm="Secure Area"',b80;var y80=x(()=>{rAA();hX();XfA();XfA();$fA();MA();A$();b80=yA.effect($T,I.gen(function*(){let A=yield*cJ.Config;if(!cJ.required(A))return $T.of((j)=>j);return $T.of((j)=>I.gen(function*(){let B=yield*dJ.HttpServerRequest;if(xB0(new URL(B.url,"http://localhost")))return yield*j;let $=yield*ih1(B);if(cJ.authorized($,A))return yield*j;return yield*Tk.appendPreResponseHandler((X,q)=>I.succeed(P$.setHeader(q,"www-authenticate",lh1))),yield*new L2A({message:"Authentication required"})}))}))});function nh1(A){if(A.length<=nTj)return A;return A.slice(0,nTj)+`... (${A.length-nTj} more chars)`}var nTj=1024,v80;var f80=x(()=>{MA();RB();hX();evA();evA();v80=UJ.layerSchemaErrorTransform(Uo,(A)=>{let j=nh1(A.cause.message);return I.logWarning("schema rejection").pipe(I.annotateLogs({kind:A.kind,reason:j}),I.andThen(I.fail(new gG({message:j,kind:A.kind}))))})});function rTj(A){return ah1(A?cJ.Config.configLayer({username:"opencode",password:Oj.some(A)}):cJ.Config.layer)}function ah1(A){let j=lh.build(rh1,[[cW.node,Z2A.node]]);return Y8.layer(k8,{openapiPath:"/openapi.json"}).pipe(yA.provide(T80),yA.provide(dB0),yA.provide(uB0),yA.provide(b80),yA.provide(v80),yA.provide(A),yA.provide(j))}var rh1,J05;var h80=x(async()=>{WW();oJ();hvA();RB();MA();rAA();y80();f80();qfA();await _j([d3(),vvA(),X$(),pC(),td(),By(),g0A(),I_(),BTj(),FGA(),Uq(),S80(),QJ(),hTj()]);rh1=H9.group([j8.node,X7.node,kW,bF.cleanupNode,GU.node,EU.node,nh.node,v$.node,$g.node,q$.node]);J05=rTj()});var m80={};wA(m80,{default:()=>sh1});import{createServer as oh1}from"http";function th1(A,j,B){if(Oj.isSome(j))return g80(A,j.value,B);let $=(X)=>g80(A,X,B).pipe(n1((q)=>X===65535?sA(q):$(X+1)));return $(4096)}function g80(A,j,B){return yA.build(OC.serve(rTj(B),{disableListenLog:!0,disableLogger:!0}).pipe(yA.provideMerge(UZA.layer(()=>oh1(),{port:j,host:A})),yA.provide(lh.build(H9.group([v$.node,EU.node]))))).pipe(iA(($)=>dA.get($,nD.HttpServer).address))}var sh1;var c80=x(async()=>{pjA();WW();MA();rj();A$();qI();await _j([pC(),vvA(),td(),h80(),QK(),YZ()]);sh1=oB.handler(JY.commands.serve,i5("cli.serve")(function*(A){return yield*$2(R6(function*(){let j=yield*FX.Service,B=yield*th1(A.hostname,A.port,yield*j.password());if(A.register)yield*j.register(B);return console.log(`server listening on ${nD.formatAddress(B)}`),yield*QR}))}))});ycA();var Fgj=zgj(({fiber:A,teardown:j})=>{let B=!1;A.addObserver((X)=>{process.removeListener("SIGINT",$),process.removeListener("SIGTERM",$),j(X,(q)=>{if(B||q!==0)process.exit(q)})});function $(){B=!0,A.interruptUnsafe(A.id)}process.on("SIGINT",$),process.on("SIGTERM",$)});var Vgj=Fgj;fnA();rj();_HA();await _j([QK(),YZ()]);var eh1=oB.handlers(oX,{$:()=>K16().then(() => E16),bench:()=>g3().then(() => h3).then((A)=>({default:A.raccoonBench})),cron:()=>g3().then(() => h3).then((A)=>({default:A.raccoonCron})),memory:()=>g3().then(() => h3).then((A)=>({default:A.raccoonMemory})),goal:()=>g3().then(() => h3).then((A)=>({default:A.raccoonGoal})),veriloop:()=>g3().then(() => h3).then((A)=>({default:A.raccoonVeriloop})),scope:()=>g3().then(() => h3).then((A)=>({default:A.raccoonScope})),config:()=>g3().then(() => h3).then((A)=>({default:A.raccoonConfig})),session:()=>g3().then(() => h3).then((A)=>({default:A.raccoonSession})),git:()=>g3().then(() => h3).then((A)=>({default:A.raccoonGit})),share:()=>g3().then(() => h3).then((A)=>({default:A.raccoonShare})),remote:()=>g3().then(() => h3).then((A)=>({default:A.raccoonRemote})),mcp:()=>g3().then(() => h3).then((A)=>({default:A.raccoonMCP})),worktree:()=>g3().then(() => h3).then((A)=>({default:A.raccoonWorktree})),backends:()=>g3().then(() => h3).then((A)=>({default:A.raccoonBackends})),api:()=>Q96().then(() => U96),debug:{agents:()=>H96().then(() => W96)},migrate:()=>Z96().then(() => z96),service:{start:()=>V96().then(() => F96),restart:()=>O96().then(() => I96),status:()=>D96().then(() => w96),stop:()=>N96().then(() => M96),password:()=>R96().then(() => L96)},serve:()=>c80().then(() => m80)});oB.run(oX,eh1,{version:"0.1.3"}).pipe(qS(FX.layer),qS(hQA),$2,Vgj);
2929
+ `));return P$.stream($.pipe(kj.merge(X,{haltStrategy:"left"}),kj.encodeText),{contentType:"text/event-stream",headers:{"Cache-Control":"no-cache, no-transform","X-Accel-Buffering":"no","X-Content-Type-Options":"nosniff"}})}))}))});var E80;var K80=x(async()=>{NW();MA();RB();await _j([Uq(),QJ()]);E80=Y8.group(k8,"server.agent",(A)=>A.handle("agent.list",()=>I.gen(function*(){return yield*$4(sB.Service.use((j)=>j.all()))})))});var J80;var U80=x(async()=>{MA();RB();await Uq();J80=Y8.group(k8,"server.health",(A)=>A.handle("health.get",()=>I.succeed({healthy:!0})))});var Bg={};wA(Bg,{metaFrame:()=>vh1,decodeInput:()=>hh1,chunks:()=>fh1,REPLAY_CHUNK:()=>cTj,PtyProtocol:()=>Bg});function vh1(A){let j=bh1.encode(JSON.stringify({cursor:A})),B=new Uint8Array(j.length+1);return B[0]=0,B.set(j,1),B}function fh1(A){let j=[];for(let B=0;B<A.length;B+=cTj)j.push(A.slice(B,B+cTj));return j}function hh1(A){if(typeof A==="string")return A;try{return yh1.decode(A instanceof ArrayBuffer?new Uint8Array(A):A)}catch{return}}var bh1,yh1,cTj=65536;var uTj=x(()=>{uTj();bh1=new TextEncoder,yh1=new TextDecoder("utf-8",{fatal:!0})});function mh1(A,j){if(!A)return!0;if(A.startsWith("http://localhost:"))return!0;if(A.startsWith("http://127.0.0.1:"))return!0;if(A.startsWith("oc://renderer"))return!0;if(A==="tauri://localhost"||A==="http://tauri.localhost"||A==="https://tauri.localhost")return!0;if(gh1.test(A))return!0;return j?.cors?.includes(A)??!1}function dTj(A,j,B){if(!A)return!0;if(j&&ch1(A,j))return!0;return mh1(A,B)}function ch1(A,j){try{return new URL(A).host===j}catch{return!1}}var gh1,Q80;var W80=x(()=>{MA();gh1=/^https:\/\/([a-z0-9-]+\.)*opencode\.ai$/,Q80=dA.Reference("@opencode/ServerCorsConfig",{defaultValue:()=>{return}})});var $g={};wA($g,{node:()=>uh1,layer:()=>H80,Service:()=>d2A,PtyEnvironment:()=>$g});var d2A,H80,uh1;var qfA=x(()=>{qfA();MA();m6();d2A=class d2A extends dA.Service()("@opencode/ServerPtyEnvironment"){};H80=yA.succeed(d2A,d2A.of({get:()=>I.succeed({})})),uh1=v7({service:d2A,layer:H80,deps:[]})});var z80,Z80;var F80=x(async()=>{uTj();hvA();MA();A$();RB();DzA();W80();hX();$fA();qfA();await _j([ZyA(),h1(),Uq(),QJ()]);z80=I.gen(function*(){let A=yield*M6.Service;return{directory:A.directory,workspaceID:A.workspaceID}}),Z80=Y8.group(k8,"server.pty",(A)=>I.gen(function*(){let j=yield*nh.Service,B=yield*Q80,$=yield*$g.Service;return A.handle("pty.list",I.fn(function*(){return yield*$4((yield*VQ.Service).list())})).handle("pty.create",I.fn(function*(X){let q=yield*VQ.Service,Y=yield*M6.Service,E=X.payload.cwd||Y.directory;return yield*$4(q.create({...X.payload,args:X.payload.args?[...X.payload.args]:void 0,cwd:E,env:{...X.payload.env,...yield*$.get({directory:Y.directory,cwd:E})}}))})).handle("pty.get",I.fn(function*(X){let q=yield*VQ.Service;return yield*$4(q.get(X.params.ptyID).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))))})).handle("pty.update",I.fn(function*(X){let q=yield*VQ.Service;return yield*$4(q.update(X.params.ptyID,{...X.payload,size:X.payload.size?{...X.payload.size}:void 0}).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))))})).handle("pty.remove",I.fn(function*(X){return yield*(yield*VQ.Service).remove(X.params.ptyID).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))),_7.NoContent.make()})).handle("pty.connectToken",I.fn(function*(X){let q=yield*dJ.HttpServerRequest;if(q.headers[CB0]!==_B0||!dTj(q.headers.origin,q.headers.host,B))return yield*new Jo({message:"Invalid PTY connect token request"});return yield*(yield*VQ.Service).get(X.params.ptyID).pipe(I.catchTag("Pty.NotFoundError",()=>new $z({ptyID:X.params.ptyID,message:`PTY session not found: ${X.params.ptyID}`}))),yield*$4(j.issue({ptyID:X.params.ptyID,...yield*z80}))})).handleRaw("pty.connect",I.fn("PtyHandler.connect")(function*(X){let q=yield*VQ.Service;if(!(yield*q.get(X.params.ptyID).pipe(I.as(!0),I.catchTag("Pty.NotFoundError",()=>I.succeed(!1)))))return P$.empty({status:404});let E=new URL(X.request.url,"http://localhost"),K=E.searchParams.get(BfA);if(K){if(!(dTj(X.request.headers.origin,X.request.headers.host,B)?yield*j.consume({ticket:K,ptyID:X.params.ptyID,...yield*z80}):!1))return P$.empty({status:403})}let J=E.searchParams.get("cursor"),U=J===null?void 0:Number(J),Q=U!==void 0&&Number.isSafeInteger(U)&&U>=-1?U:void 0,W=yield*I.orDie(X.request.upgrade),H=yield*W.writer,Z=(D)=>W.runRaw(()=>I.void,{onOpen:H(D).pipe(I.catch(()=>I.void))}).pipe(I.timeout("1 second"),I.catchReason("SocketError","SocketCloseError",()=>I.void),I.catch(()=>I.void)),F=yield*J4.unbounded(),V=yield*q.attach(X.params.ptyID,{cursor:Q,onData:(D)=>J4.offerUnsafe(F,D),onEnd:()=>J4.offerUnsafe(F,new $u(1000))}).pipe(I.catchTags({"Pty.NotFoundError":()=>Z(new $u(4404,"session not found")).pipe(I.as(void 0)),"Pty.ExitedError":()=>Z(new $u(4404,"session exited")).pipe(I.as(void 0))}));if(!V)return P$.empty();for(let D of Bg.chunks(V.replay))J4.offerUnsafe(F,D);J4.offerUnsafe(F,Bg.metaFrame(V.cursor)),V.activate();let O=I.gen(function*(){while(!0){let D=yield*J4.take(F);if(yield*H(D),D instanceof $u)return}});return yield*I.race(O,W.runRaw((D)=>{let w=Bg.decodeInput(D);if(w!==void 0)V.write(w)})).pipe(I.catchReason("SocketError","SocketCloseError",()=>I.void),I.ensuring(I.sync(()=>V.detach())),I.orDie),P$.empty()}))}))});function pTj(A){return new Ko({requestID:A,message:`Question request not found: ${A}`})}var V80;var I80=x(async()=>{MA();RB();hX();await _j([xa(),Uq(),QJ()]);V80=Y8.group(k8,"server.question",(A)=>I.gen(function*(){let j=I.fnUntraced(function*(B,$,X){let q=yield*Y3.Service,Y=(yield*q.list()).find((E)=>E.id===$);if(!Y||Y.sessionID!==B)return yield*pTj($);return yield*X(q)});return A.handle("question.request.list",I.fn(function*(){return yield*$4((yield*Y3.Service).list())})).handle("session.question.list",I.fn(function*(B){return{data:(yield*(yield*Y3.Service).list()).filter((X)=>X.sessionID===B.params.sessionID)}})).handle("session.question.reply",I.fn(function*(B){return yield*j(B.params.sessionID,B.params.requestID,($)=>$.reply({requestID:B.params.requestID,answers:B.payload.answers}).pipe(I.catchTag("QuestionV2.NotFoundError",()=>pTj(B.params.requestID)))),_7.NoContent.make()})).handle("session.question.reject",I.fn(function*(B){return yield*j(B.params.sessionID,B.params.requestID,($)=>$.reject(B.params.requestID).pipe(I.catchTag("QuestionV2.NotFoundError",()=>pTj(B.params.requestID)))),_7.NoContent.make()}))}))});var O80;var w80=x(async()=>{RB();await _j([PM(),Uq(),QJ()]);O80=Y8.group(k8,"server.reference",(A)=>A.handle("reference.list",()=>$4(Y$.Service.use((j)=>j.list()))))});var D80;var M80=x(async()=>{MA();RB();await _j([h1(),Uq()]);D80=Y8.group(k8,"server.location",(A)=>A.handle("location.get",I.fn(function*(){let j=yield*M6.Service;return new M6.Info({directory:j.directory,workspaceID:j.workspaceID,project:j.project})})))});var N80=(A)=>A.pipe(I.mapError(()=>new gG({message:"Authentication failed",kind:"integration_authorization"}))),L80;var R80=x(async()=>{MA();RB();hX();await _j([eJ(),Uq(),QJ()]);L80=Y8.group(k8,"server.integration",(A)=>I.gen(function*(){return A.handle("integration.list",I.fn(function*(){let j=yield*k7.Service;return yield*$4(j.list())})).handle("integration.get",I.fn(function*(j){let B=yield*k7.Service;return yield*$4(B.get(j.params.integrationID))})).handle("integration.connect.key",I.fn(function*(j){let B=yield*k7.Service;return yield*N80(B.connection.key({integrationID:j.params.integrationID,key:j.payload.key,label:j.payload.label})),_7.NoContent.make()})).handle("integration.connect.oauth",I.fn(function*(j){let B=yield*k7.Service;return yield*$4(N80(B.connection.oauth({integrationID:j.params.integrationID,methodID:j.payload.methodID,inputs:j.payload.inputs,label:j.payload.label})))})).handle("integration.attempt.status",I.fn(function*(j){let B=yield*k7.Service;return yield*$4(B.attempt.status(j.params.attemptID))})).handle("integration.attempt.complete",I.fn(function*(j){return yield*(yield*k7.Service).attempt.complete({attemptID:j.params.attemptID,code:j.payload.code}).pipe(I.mapError(($)=>new gG({message:$._tag==="Integration.CodeRequired"?"Authorization code is required":"Authentication failed",kind:$._tag==="Integration.CodeRequired"?"integration_code_required":"integration_authorization"}))),_7.NoContent.make()})).handle("integration.attempt.cancel",I.fn(function*(j){return yield*(yield*k7.Service).attempt.cancel(j.params.attemptID),_7.NoContent.make()}))}))});var C80;var _80=x(async()=>{MA();RB();await _j([eJ(),Uq()]);C80=Y8.group(k8,"server.credential",(A)=>A.handle("credential.update",I.fn(function*(j){return yield*(yield*k7.Service).connection.update(j.params.credentialID,{label:j.payload.label}),_7.NoContent.make()})).handle("credential.remove",I.fn(function*(j){return yield*(yield*k7.Service).connection.remove(j.params.credentialID),_7.NoContent.make()})))});function lTj(A){return A.pipe(I.mapError((j)=>new Qo({name:"ProjectCopyError",data:{message:dh1(j),forceRequired:j instanceof $5.WorktreeError?j.forceRequired:void 0}})))}function dh1(A){if(A instanceof bE.SourceDirectoryNotFoundError)return`Project copy source not found: ${A.directory}`;if(A instanceof bE.DestinationExistsError)return`Project copy destination already exists: ${A.directory}`;if(A instanceof bE.DirectoryUnavailableError)return`Project copy directory unavailable: ${A.directory}`;if(A instanceof bE.InvalidDirectoryError)return`Invalid project copy directory: ${A.directory}`;if(A instanceof bE.StrategyUnavailableError)return`Project copy strategy unavailable: ${A.strategy}`;return A.message}var x80;var P80=x(async()=>{$_();MA();RB();fTj();await _j([h1(),qGA(),Uq()]);x80=Y8.group(k8,"server.projectCopy",(A)=>I.succeed(A.handle("projectCopy.create",(j)=>I.gen(function*(){let B=yield*bE.Service,$=yield*M6.Service;return yield*lTj(B.create({...j.payload,projectID:j.params.projectID,sourceDirectory:$.project.directory}))})).handle("projectCopy.remove",(j)=>bE.Service.use((B)=>lTj(B.remove({...j.payload,projectID:j.params.projectID})).pipe(I.as(_7.NoContent.make())))).handle("projectCopy.refresh",(j)=>bE.Service.use((B)=>lTj(B.refresh({projectID:j.params.projectID})).pipe(I.as(_7.NoContent.make()))))))});var T80;var S80=x(async()=>{MA();await _j([lB0(),nB0(),aB0(),sB0(),eB0(),j80(),$80(),q80(),G80(),K80(),U80(),F80(),I80(),w80(),M80(),R80(),_80(),P80()]);T80=yA.mergeAll(J80,D80,E80,oB0,pB0,iB0,rB0,L80,C80,tB0,A80,B80,X80,Y80,Z80,V80,O80,x80)});function iTj(){return{username:"",password:$Y.make("")}}function k80(A){return I.fromResult(NV.decodeBase64String(A)).pipe(I.match({onFailure:iTj,onSuccess:(j)=>{let B=j.indexOf(":");if(B===-1)return iTj();return{username:j.slice(0,B),password:$Y.make(j.slice(B+1))}}}))}function ih1(A){let B=new URL(A.url,"http://localhost").searchParams.get(ph1);if(B)return k80(B);let $=/^Basic\s+(.+)$/i.exec(A.headers.authorization??"");if($)return k80($[1]);return I.succeed(iTj())}var ph1="auth_token",lh1='Basic realm="Secure Area"',b80;var y80=x(()=>{rAA();hX();XfA();XfA();$fA();MA();A$();b80=yA.effect($T,I.gen(function*(){let A=yield*cJ.Config;if(!cJ.required(A))return $T.of((j)=>j);return $T.of((j)=>I.gen(function*(){let B=yield*dJ.HttpServerRequest;if(xB0(new URL(B.url,"http://localhost")))return yield*j;let $=yield*ih1(B);if(cJ.authorized($,A))return yield*j;return yield*Tk.appendPreResponseHandler((X,q)=>I.succeed(P$.setHeader(q,"www-authenticate",lh1))),yield*new L2A({message:"Authentication required"})}))}))});function nh1(A){if(A.length<=nTj)return A;return A.slice(0,nTj)+`... (${A.length-nTj} more chars)`}var nTj=1024,v80;var f80=x(()=>{MA();RB();hX();evA();evA();v80=UJ.layerSchemaErrorTransform(Uo,(A)=>{let j=nh1(A.cause.message);return I.logWarning("schema rejection").pipe(I.annotateLogs({kind:A.kind,reason:j}),I.andThen(I.fail(new gG({message:j,kind:A.kind}))))})});function rTj(A){return ah1(A?cJ.Config.configLayer({username:"opencode",password:Oj.some(A)}):cJ.Config.layer)}function ah1(A){let j=lh.build(rh1,[[cW.node,Z2A.node]]);return Y8.layer(k8,{openapiPath:"/openapi.json"}).pipe(yA.provide(T80),yA.provide(dB0),yA.provide(uB0),yA.provide(b80),yA.provide(v80),yA.provide(A),yA.provide(j))}var rh1,J05;var h80=x(async()=>{WW();oJ();hvA();RB();MA();rAA();y80();f80();qfA();await _j([d3(),vvA(),X$(),pC(),td(),By(),g0A(),I_(),BTj(),FGA(),Uq(),S80(),QJ(),hTj()]);rh1=H9.group([j8.node,X7.node,kW,bF.cleanupNode,GU.node,EU.node,nh.node,v$.node,$g.node,q$.node]);J05=rTj()});var m80={};wA(m80,{default:()=>sh1});import{createServer as oh1}from"http";function th1(A,j,B){if(Oj.isSome(j))return g80(A,j.value,B);let $=(X)=>g80(A,X,B).pipe(n1((q)=>X===65535?sA(q):$(X+1)));return $(4096)}function g80(A,j,B){return yA.build(OC.serve(rTj(B),{disableListenLog:!0,disableLogger:!0}).pipe(yA.provideMerge(UZA.layer(()=>oh1(),{port:j,host:A})),yA.provide(lh.build(H9.group([v$.node,EU.node]))))).pipe(iA(($)=>dA.get($,nD.HttpServer).address))}var sh1;var c80=x(async()=>{pjA();WW();MA();rj();A$();qI();await _j([pC(),vvA(),td(),h80(),QK(),YZ()]);sh1=oB.handler(JY.commands.serve,i5("cli.serve")(function*(A){return yield*$2(R6(function*(){let j=yield*FX.Service,B=yield*th1(A.hostname,A.port,yield*j.password());if(A.register)yield*j.register(B);return console.log(`server listening on ${nD.formatAddress(B)}`),yield*QR}))}))});ycA();var Fgj=zgj(({fiber:A,teardown:j})=>{let B=!1;A.addObserver((X)=>{process.removeListener("SIGINT",$),process.removeListener("SIGTERM",$),j(X,(q)=>{if(B||q!==0)process.exit(q)})});function $(){B=!0,A.interruptUnsafe(A.id)}process.on("SIGINT",$),process.on("SIGTERM",$)});var Vgj=Fgj;fnA();rj();_HA();await _j([QK(),YZ()]);var eh1=oB.handlers(oX,{$:()=>K16().then(() => E16),bench:()=>g3().then(() => h3).then((A)=>({default:A.raccoonBench})),cron:()=>g3().then(() => h3).then((A)=>({default:A.raccoonCron})),memory:()=>g3().then(() => h3).then((A)=>({default:A.raccoonMemory})),goal:()=>g3().then(() => h3).then((A)=>({default:A.raccoonGoal})),veriloop:()=>g3().then(() => h3).then((A)=>({default:A.raccoonVeriloop})),scope:()=>g3().then(() => h3).then((A)=>({default:A.raccoonScope})),config:()=>g3().then(() => h3).then((A)=>({default:A.raccoonConfig})),session:()=>g3().then(() => h3).then((A)=>({default:A.raccoonSession})),git:()=>g3().then(() => h3).then((A)=>({default:A.raccoonGit})),share:()=>g3().then(() => h3).then((A)=>({default:A.raccoonShare})),remote:()=>g3().then(() => h3).then((A)=>({default:A.raccoonRemote})),mcp:()=>g3().then(() => h3).then((A)=>({default:A.raccoonMCP})),worktree:()=>g3().then(() => h3).then((A)=>({default:A.raccoonWorktree})),backends:()=>g3().then(() => h3).then((A)=>({default:A.raccoonBackends})),api:()=>Q96().then(() => U96),debug:{agents:()=>H96().then(() => W96)},migrate:()=>Z96().then(() => z96),service:{start:()=>V96().then(() => F96),restart:()=>O96().then(() => I96),status:()=>D96().then(() => w96),stop:()=>N96().then(() => M96),password:()=>R96().then(() => L96)},serve:()=>c80().then(() => m80)});oB.run(oX,eh1,{version:"0.6.0"}).pipe(qS(FX.layer),qS(hQA),$2,Vgj);
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "openfork",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
- "description": "OpenFork — AI development CLI with Raccoon features. Flattened commands, monochrome theme.",
6
+ "description": "OpenFork — AI development CLI with monochrome theme.",
7
7
  "bin": {
8
8
  "openfork": "bin/openfork.cjs"
9
9
  },