clawmini 0.0.5 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/daemon/index.mjs +1 -2
- package/dist/daemon/index.mjs.map +1 -1
- package/dist/web/_app/immutable/chunks/{C20lZMGz.js → G_zz-Gou.js} +1 -1
- package/dist/web/_app/immutable/chunks/bBmtyQMj.js +1 -0
- package/{web/.svelte-kit/output/client/_app/immutable/entry/app.BgB5VkRU.js → dist/web/_app/immutable/entry/app.CJmSwntr.js} +2 -2
- package/dist/web/_app/immutable/entry/start.ZpUrT2ak.js +1 -0
- package/dist/web/_app/immutable/nodes/{0.C9oFZP9h.js → 0.CYS8iApT.js} +1 -1
- package/dist/web/_app/immutable/nodes/{1.BON2Wk6k.js → 1.Bli0Hqzn.js} +1 -1
- package/dist/web/_app/immutable/nodes/{3.CIs4tjjw.js → 3.Dr0ot9sV.js} +1 -1
- package/dist/web/_app/immutable/nodes/{4.DLarELN4.js → 4.oBhvQhcA.js} +1 -1
- package/dist/web/_app/immutable/nodes/{5.CE_QKy_3.js → 5.BBGQ_i84.js} +1 -1
- package/dist/web/_app/version.json +1 -1
- package/dist/web/index.html +6 -6
- package/package.json +1 -1
- package/src/cli/e2e/messages.test.ts +5 -2
- package/src/daemon/utils/spawn.ts +2 -1
- package/templates/environments/macos/sandbox.sb +8 -0
- package/templates/environments/macos-proxy/allowlist.txt +4 -0
- package/templates/environments/macos-proxy/proxy.mjs +25 -20
- package/templates/environments/macos-proxy/sandbox.sb +8 -0
- package/templates/gemini/.gemini/settings.json +6 -1
- package/templates/gemini/settings.json +4 -4
- package/templates/gemini-claw/.gemini/settings.json +6 -1
- package/templates/gemini-claw/GEMINI.md +1 -1
- package/templates/gemini-claw/settings.json +4 -4
- package/web/.svelte-kit/generated/server/internal.js +1 -1
- package/web/.svelte-kit/output/client/.vite/manifest.json +29 -29
- package/web/.svelte-kit/output/client/_app/immutable/chunks/{C20lZMGz.js → G_zz-Gou.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/bBmtyQMj.js +1 -0
- package/{dist/web/_app/immutable/entry/app.BgB5VkRU.js → web/.svelte-kit/output/client/_app/immutable/entry/app.CJmSwntr.js} +2 -2
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.ZpUrT2ak.js +1 -0
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{0.C9oFZP9h.js → 0.CYS8iApT.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{1.BON2Wk6k.js → 1.Bli0Hqzn.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{3.CIs4tjjw.js → 3.Dr0ot9sV.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{4.DLarELN4.js → 4.oBhvQhcA.js} +1 -1
- package/web/.svelte-kit/output/client/_app/immutable/nodes/{5.CE_QKy_3.js → 5.BBGQ_i84.js} +1 -1
- package/web/.svelte-kit/output/client/_app/version.json +1 -1
- package/web/.svelte-kit/output/server/chunks/internal.js +1 -1
- package/web/.svelte-kit/output/server/manifest-full.js +1 -1
- package/web/.svelte-kit/output/server/manifest.js +1 -1
- package/web/.svelte-kit/output/server/nodes/0.js +1 -1
- package/web/.svelte-kit/output/server/nodes/1.js +1 -1
- package/web/.svelte-kit/output/server/nodes/3.js +1 -1
- package/web/.svelte-kit/output/server/nodes/4.js +1 -1
- package/web/.svelte-kit/output/server/nodes/5.js +1 -1
- package/dist/web/_app/immutable/chunks/C9lbZ-kT.js +0 -1
- package/dist/web/_app/immutable/entry/start.DuxJo6av.js +0 -1
- package/web/.svelte-kit/output/client/_app/immutable/chunks/C9lbZ-kT.js +0 -1
- package/web/.svelte-kit/output/client/_app/immutable/entry/start.DuxJo6av.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{b as Kt,c as at,a as w,f as L,t as Jt}from"../chunks/BmRlVmv6.js";import{a as Ar}from"../chunks/DhD271EB.js";import{h as Rt,i as Hn,M as ft,t as ue,d as Bn,L as Rr,aO as Lr,k as Gn,S as Ir,aD as Cr,aK as Dr,aE as Or,J as Mr,aP as Nr,aQ as Pr,f as Ce,p as Ft,a as Ut,F as zr,r as y,w as u,G as un,c as S,I as Ne,l as Wn,n as st,D as O,aN as en,s as q,C as qe}from"../chunks/CME08kGM.js";import{s as ke,d as $r,e as qn,a as tn}from"../chunks/DMtIqaiV.js";import{l as mn,s as kn,p as nn,b as or,r as Fr,i as J}from"../chunks/B6YN0Nuq.js";import{I as xn,s as bn,a as Ur,d as Hr,c as Br,e as jn,B as Lt,h as je}from"../chunks/CK9JZLaG.js";import{i as It}from"../chunks/C9lbZ-kT.js";import{a as Ze}from"../chunks/DsIToJCP.js";import"../chunks/Ck3rYNON.js";function Gr(s,e,n=!1,r=!1,t=!1,o=!1){var i=s,p="";if(n){var c=s;Rt&&(i=Hn(ft(c)))}ue(()=>{var g=Rr;if(p===(p=e()??"")){Rt&&Bn();return}if(n&&!Rt){g.nodes=null,c.innerHTML=p,p!==""&&Kt(ft(c),c.lastChild);return}if(g.nodes!==null&&(Lr(g.nodes.start,g.nodes.end),g.nodes=null),p!==""){if(Rt){Gn.data;for(var f=Bn(),b=f;f!==null&&(f.nodeType!==Ir||f.data!=="");)b=f,f=Cr(f);if(f===null)throw Dr(),Or;Kt(Gn,b),i=Hn(f);return}var v=r?Nr:t?Pr:void 0,C=Mr(r?"svg":t?"math":"template",v);C.innerHTML=p;var E=r||t?C:C.content;if(Kt(ft(E),E.lastChild),r||t)for(;ft(E);)i.before(ft(E));else i.before(E)}})}function Wr(s,e){const n=mn(e,["children","$$slots","$$events","$$legacy"]);const r=[["circle",{cx:"12",cy:"12",r:"10"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16"}]];xn(s,kn({name:"circle-alert"},()=>n,{get iconNode(){return r},children:(t,o)=>{var i=at(),p=Ce(i);bn(p,e,"default",{}),w(t,i)},$$slots:{default:!0}}))}function qr(s,e){const n=mn(e,["children","$$slots","$$events","$$legacy"]);const r=[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M12 6v6l4 2"}]];xn(s,kn({name:"clock"},()=>n,{get iconNode(){return r},children:(t,o)=>{var i=at(),p=Ce(i);bn(p,e,"default",{}),w(t,i)},$$slots:{default:!0}}))}function jr(s,e){const n=mn(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]];xn(s,kn({name:"send"},()=>n,{get iconNode(){return r},children:(t,o)=>{var i=at(),p=Ce(i);bn(p,e,"default",{}),w(t,i)},$$slots:{default:!0}}))}const Zr=async({params:s,fetch:e,depends:n})=>{const{id:r}=s;n(`app:chat:${r}`);try{const t=await e(`/api/chats/${r}`);if(t.ok){const o=await t.json();return{id:r,messages:o}}}catch(t){console.error(t)}return{id:r,messages:[]}},Za=Object.freeze(Object.defineProperty({__proto__:null,load:Zr},Symbol.toStringTag,{value:"Module"}));var Yr=L("<textarea></textarea>");function Xr(s,e){Ft(e,!0);let n=nn(e,"ref",15,null),r=nn(e,"value",15),t=nn(e,"data-slot",3,"textarea"),o=Fr(e,["$$slots","$$events","$$legacy","ref","value","class","data-slot"]);var i=Yr();zr(i),Ur(i,p=>({"data-slot":t(),class:p,...o}),[()=>Br("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e.class)]),or(i,p=>n(p),()=>n()),Hr(i,r),w(s,i),Ut()}function vn(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Ve=vn();function lr(s){Ve=s}var Ye={exec:()=>null};function A(s,e=""){let n=typeof s=="string"?s:s.source,r={replace:(t,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(pe.caret,"$1"),n=n.replace(t,i),r},getRegex:()=>new RegExp(n,e)};return r}var Vr=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),pe={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:s=>new RegExp(`^( {0,3}${s})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}#`),htmlBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}>`)},Qr=/^(?:[ \t]*(?:\n|$))+/,Kr=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Jr=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,yt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,es=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,_n=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,cr=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,ur=A(cr).replace(/bull/g,_n).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),ts=A(cr).replace(/bull/g,_n).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),wn=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,ns=/^[^\n]+/,Tn=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,rs=A(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Tn).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ss=A(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,_n).getRegex(),Ht="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",yn=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,as=A("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",yn).replace("tag",Ht).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),pr=A(wn).replace("hr",yt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ht).getRegex(),is=A(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",pr).getRegex(),Sn={blockquote:is,code:Kr,def:rs,fences:Jr,heading:es,hr:yt,html:as,lheading:ur,list:ss,newline:Qr,paragraph:pr,table:Ye,text:ns},Zn=A("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",yt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ht).getRegex(),os={...Sn,lheading:ts,table:Zn,paragraph:A(wn).replace("hr",yt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Zn).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ht).getRegex()},ls={...Sn,html:A(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",yn).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Ye,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:A(wn).replace("hr",yt).replace("heading",` *#{1,6} *[^
|
|
1
|
+
import{b as Kt,c as at,a as w,f as L,t as Jt}from"../chunks/BmRlVmv6.js";import{a as Ar}from"../chunks/DhD271EB.js";import{h as Rt,i as Hn,M as ft,t as ue,d as Bn,L as Rr,aO as Lr,k as Gn,S as Ir,aD as Cr,aK as Dr,aE as Or,J as Mr,aP as Nr,aQ as Pr,f as Ce,p as Ft,a as Ut,F as zr,r as y,w as u,G as un,c as S,I as Ne,l as Wn,n as st,D as O,aN as en,s as q,C as qe}from"../chunks/CME08kGM.js";import{s as ke,d as $r,e as qn,a as tn}from"../chunks/DMtIqaiV.js";import{l as mn,s as kn,p as nn,b as or,r as Fr,i as J}from"../chunks/B6YN0Nuq.js";import{I as xn,s as bn,a as Ur,d as Hr,c as Br,e as jn,B as Lt,h as je}from"../chunks/CK9JZLaG.js";import{i as It}from"../chunks/bBmtyQMj.js";import{a as Ze}from"../chunks/DsIToJCP.js";import"../chunks/Ck3rYNON.js";function Gr(s,e,n=!1,r=!1,t=!1,o=!1){var i=s,p="";if(n){var c=s;Rt&&(i=Hn(ft(c)))}ue(()=>{var g=Rr;if(p===(p=e()??"")){Rt&&Bn();return}if(n&&!Rt){g.nodes=null,c.innerHTML=p,p!==""&&Kt(ft(c),c.lastChild);return}if(g.nodes!==null&&(Lr(g.nodes.start,g.nodes.end),g.nodes=null),p!==""){if(Rt){Gn.data;for(var f=Bn(),b=f;f!==null&&(f.nodeType!==Ir||f.data!=="");)b=f,f=Cr(f);if(f===null)throw Dr(),Or;Kt(Gn,b),i=Hn(f);return}var v=r?Nr:t?Pr:void 0,C=Mr(r?"svg":t?"math":"template",v);C.innerHTML=p;var E=r||t?C:C.content;if(Kt(ft(E),E.lastChild),r||t)for(;ft(E);)i.before(ft(E));else i.before(E)}})}function Wr(s,e){const n=mn(e,["children","$$slots","$$events","$$legacy"]);const r=[["circle",{cx:"12",cy:"12",r:"10"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16"}]];xn(s,kn({name:"circle-alert"},()=>n,{get iconNode(){return r},children:(t,o)=>{var i=at(),p=Ce(i);bn(p,e,"default",{}),w(t,i)},$$slots:{default:!0}}))}function qr(s,e){const n=mn(e,["children","$$slots","$$events","$$legacy"]);const r=[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M12 6v6l4 2"}]];xn(s,kn({name:"clock"},()=>n,{get iconNode(){return r},children:(t,o)=>{var i=at(),p=Ce(i);bn(p,e,"default",{}),w(t,i)},$$slots:{default:!0}}))}function jr(s,e){const n=mn(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]];xn(s,kn({name:"send"},()=>n,{get iconNode(){return r},children:(t,o)=>{var i=at(),p=Ce(i);bn(p,e,"default",{}),w(t,i)},$$slots:{default:!0}}))}const Zr=async({params:s,fetch:e,depends:n})=>{const{id:r}=s;n(`app:chat:${r}`);try{const t=await e(`/api/chats/${r}`);if(t.ok){const o=await t.json();return{id:r,messages:o}}}catch(t){console.error(t)}return{id:r,messages:[]}},Za=Object.freeze(Object.defineProperty({__proto__:null,load:Zr},Symbol.toStringTag,{value:"Module"}));var Yr=L("<textarea></textarea>");function Xr(s,e){Ft(e,!0);let n=nn(e,"ref",15,null),r=nn(e,"value",15),t=nn(e,"data-slot",3,"textarea"),o=Fr(e,["$$slots","$$events","$$legacy","ref","value","class","data-slot"]);var i=Yr();zr(i),Ur(i,p=>({"data-slot":t(),class:p,...o}),[()=>Br("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e.class)]),or(i,p=>n(p),()=>n()),Hr(i,r),w(s,i),Ut()}function vn(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Ve=vn();function lr(s){Ve=s}var Ye={exec:()=>null};function A(s,e=""){let n=typeof s=="string"?s:s.source,r={replace:(t,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(pe.caret,"$1"),n=n.replace(t,i),r},getRegex:()=>new RegExp(n,e)};return r}var Vr=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),pe={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:s=>new RegExp(`^( {0,3}${s})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}#`),htmlBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:s=>new RegExp(`^ {0,${Math.min(3,s-1)}}>`)},Qr=/^(?:[ \t]*(?:\n|$))+/,Kr=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Jr=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,yt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,es=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,_n=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,cr=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,ur=A(cr).replace(/bull/g,_n).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),ts=A(cr).replace(/bull/g,_n).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),wn=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,ns=/^[^\n]+/,Tn=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,rs=A(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Tn).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ss=A(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,_n).getRegex(),Ht="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",yn=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,as=A("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",yn).replace("tag",Ht).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),pr=A(wn).replace("hr",yt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ht).getRegex(),is=A(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",pr).getRegex(),Sn={blockquote:is,code:Kr,def:rs,fences:Jr,heading:es,hr:yt,html:as,lheading:ur,list:ss,newline:Qr,paragraph:pr,table:Ye,text:ns},Zn=A("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",yt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ht).getRegex(),os={...Sn,lheading:ts,table:Zn,paragraph:A(wn).replace("hr",yt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Zn).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ht).getRegex()},ls={...Sn,html:A(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",yn).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Ye,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:A(wn).replace("hr",yt).replace("heading",` *#{1,6} *[^
|
|
2
2
|
]`).replace("lheading",ur).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},cs=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,us=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,dr=/^( {2,}|\\)\n(?!\s*$)/,ps=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,it=/[\p{P}\p{S}]/u,Bt=/[\s\p{P}\p{S}]/u,En=/[^\s\p{P}\p{S}]/u,ds=A(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Bt).getRegex(),hr=/(?!~)[\p{P}\p{S}]/u,hs=/(?!~)[\s\p{P}\p{S}]/u,fs=/(?:[^\s\p{P}\p{S}]|~)/u,gs=A(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Vr?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),fr=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,ms=A(fr,"u").replace(/punct/g,it).getRegex(),ks=A(fr,"u").replace(/punct/g,hr).getRegex(),gr="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",xs=A(gr,"gu").replace(/notPunctSpace/g,En).replace(/punctSpace/g,Bt).replace(/punct/g,it).getRegex(),bs=A(gr,"gu").replace(/notPunctSpace/g,fs).replace(/punctSpace/g,hs).replace(/punct/g,hr).getRegex(),vs=A("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,En).replace(/punctSpace/g,Bt).replace(/punct/g,it).getRegex(),_s=A(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,it).getRegex(),ws="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",Ts=A(ws,"gu").replace(/notPunctSpace/g,En).replace(/punctSpace/g,Bt).replace(/punct/g,it).getRegex(),ys=A(/\\(punct)/,"gu").replace(/punct/g,it).getRegex(),Ss=A(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Es=A(yn).replace("(?:-->|$)","-->").getRegex(),As=A("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Es).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Pt=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,Rs=A(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Pt).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mr=A(/^!?\[(label)\]\[(ref)\]/).replace("label",Pt).replace("ref",Tn).getRegex(),kr=A(/^!?\[(ref)\](?:\[\])?/).replace("ref",Tn).getRegex(),Ls=A("reflink|nolink(?!\\()","g").replace("reflink",mr).replace("nolink",kr).getRegex(),Yn=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,An={_backpedal:Ye,anyPunctuation:ys,autolink:Ss,blockSkip:gs,br:dr,code:us,del:Ye,delLDelim:Ye,delRDelim:Ye,emStrongLDelim:ms,emStrongRDelimAst:xs,emStrongRDelimUnd:vs,escape:cs,link:Rs,nolink:kr,punctuation:ds,reflink:mr,reflinkSearch:Ls,tag:As,text:ps,url:Ye},Is={...An,link:A(/^!?\[(label)\]\((.*?)\)/).replace("label",Pt).getRegex(),reflink:A(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Pt).getRegex()},pn={...An,emStrongRDelimAst:bs,emStrongLDelim:ks,delLDelim:_s,delRDelim:Ts,url:A(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Yn).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:A(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Yn).getRegex()},Cs={...pn,br:A(dr).replace("{2,}","*").getRegex(),text:A(pn.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Ct={normal:Sn,gfm:os,pedantic:ls},gt={normal:An,gfm:pn,breaks:Cs,pedantic:Is},Ds={"&":"&","<":"<",">":">",'"':""","'":"'"},Xn=s=>Ds[s];function Le(s,e){if(e){if(pe.escapeTest.test(s))return s.replace(pe.escapeReplace,Xn)}else if(pe.escapeTestNoEncode.test(s))return s.replace(pe.escapeReplaceNoEncode,Xn);return s}function Vn(s){try{s=encodeURI(s).replace(pe.percentDecode,"%")}catch{return null}return s}function Qn(s,e){let n=s.replace(pe.findPipe,(o,i,p)=>{let c=!1,g=i;for(;--g>=0&&p[g]==="\\";)c=!c;return c?"|":" |"}),r=n.split(pe.splitPipe),t=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length<e;)r.push("");for(;t<r.length;t++)r[t]=r[t].trim().replace(pe.slashPipe,"|");return r}function mt(s,e,n){let r=s.length;if(r===0)return"";let t=0;for(;t<r&&s.charAt(r-t-1)===e;)t++;return s.slice(0,r-t)}function Os(s,e){if(s.indexOf(e[1])===-1)return-1;let n=0;for(let r=0;r<s.length;r++)if(s[r]==="\\")r++;else if(s[r]===e[0])n++;else if(s[r]===e[1]&&(n--,n<0))return r;return n>0?-2:-1}function Ms(s,e=0){let n=e,r="";for(let t of s)if(t===" "){let o=4-n%4;r+=" ".repeat(o),n+=o}else r+=t,n++;return r}function Kn(s,e,n,r,t){let o=e.href,i=e.title||null,p=s[1].replace(t.other.outputLinkReplace,"$1");r.state.inLink=!0;let c={type:s[0].charAt(0)==="!"?"image":"link",raw:n,href:o,title:i,text:p,tokens:r.inlineTokens(p)};return r.state.inLink=!1,c}function Ns(s,e,n){let r=s.match(n.other.indentCodeCompensation);if(r===null)return e;let t=r[1];return e.split(`
|
|
3
3
|
`).map(o=>{let i=o.match(n.other.beginningSpace);if(i===null)return o;let[p]=i;return p.length>=t.length?o.slice(t.length):o}).join(`
|
|
4
4
|
`)}var zt=class{options;rules;lexer;constructor(s){this.options=s||Ve}space(s){let e=this.rules.block.newline.exec(s);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(s){let e=this.rules.block.code.exec(s);if(e){let n=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:mt(n,`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as W,a as l,f as w,t as D}from"../chunks/BmRlVmv6.js";import{f as z,p as be,t as j,a as _e,c as r,D as v,w as e,I as J,s as o,r as a,C as N,G as xe}from"../chunks/CME08kGM.js";import{s as M,e as ye}from"../chunks/DMtIqaiV.js";import{l as oe,s as se,i as T}from"../chunks/B6YN0Nuq.js";import{I as de,s as ie,B as H,f as we,g as $e,e as Se}from"../chunks/CK9JZLaG.js";import{i as re}from"../chunks/
|
|
1
|
+
import{c as W,a as l,f as w,t as D}from"../chunks/BmRlVmv6.js";import{f as z,p as be,t as j,a as _e,c as r,D as v,w as e,I as J,s as o,r as a,C as N,G as xe}from"../chunks/CME08kGM.js";import{s as M,e as ye}from"../chunks/DMtIqaiV.js";import{l as oe,s as se,i as T}from"../chunks/B6YN0Nuq.js";import{I as de,s as ie,B as H,f as we,g as $e,e as Se}from"../chunks/CK9JZLaG.js";import{i as re}from"../chunks/bBmtyQMj.js";import{P as ke,I as U}from"../chunks/Drm9vgeP.js";import"../chunks/Ck3rYNON.js";function je($,c){const b=oe(c,["children","$$slots","$$events","$$legacy"]);const u=[["path",{d:"m12 19-7-7 7-7"}],["path",{d:"M19 12H5"}]];de($,se({name:"arrow-left"},()=>b,{get iconNode(){return u},children:(h,m)=>{var p=W(),g=z(p);ie(g,c,"default",{}),l(h,p)},$$slots:{default:!0}}))}function Je($,c){const b=oe(c,["children","$$slots","$$events","$$legacy"]);const u=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];de($,se({name:"trash-2"},()=>b,{get iconNode(){return u},children:(h,m)=>{var p=W(),g=z(p);ie(g,c,"default",{}),l(h,p)},$$slots:{default:!0}}))}const Me=async({params:$,fetch:c,depends:b})=>{const{id:u}=$;b(`app:chat:${u}:cron`);let h=[];try{const m=await c(`/api/chats/${u}/cron`);m.ok&&(h=await m.json())}catch(m){console.error("Failed to load cron jobs:",m)}return{id:u,cronJobs:h}},Le=Object.freeze(Object.defineProperty({__proto__:null,load:Me},Symbol.toStringTag,{value:"Module"}));var Te=w("<!> Add Job",1),Ee=w('<div class="p-3 bg-destructive/10 text-destructive text-sm rounded-md border border-destructive/20"> </div>'),Ie=w(`<form class="p-4 border rounded-lg space-y-4 bg-card text-card-foreground shadow-sm"><div class="grid grid-cols-2 gap-4"><div class="space-y-2"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="jobId">Job ID</label> <!></div> <div class="space-y-2"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="jobType">Schedule Type</label> <select id="jobType" class="flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"><option>Cron Expression</option><option>Every (e.g. '1h', '30m')</option><option>At (ISO Date/Time)</option></select></div> <div class="space-y-2 col-span-2"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="jobSchedule">Schedule Expression</label> <!></div> <div class="space-y-2 col-span-2"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="jobMessage">Message / Command</label> <!></div></div> <div class="flex justify-end gap-2 pt-2"><!> <!></div></form>`),Pe=w('<div class="p-8 text-center text-muted-foreground border rounded-lg border-dashed">No cron jobs configured for this chat.</div>'),Ce=w('<!> <span class="sr-only">Delete</span>',1),De=w('<div class="flex items-center justify-between p-4 border rounded-lg bg-card text-card-foreground shadow-sm"><div class="space-y-1.5 overflow-hidden"><div class="font-medium flex items-center gap-2"><span class="truncate"> </span> <span class="shrink-0 px-2 py-0.5 text-[10px] uppercase font-bold tracking-wider rounded-full bg-secondary text-secondary-foreground"><!> <!> <!></span></div> <div class="text-sm text-muted-foreground font-mono bg-muted/50 p-1.5 rounded-md truncate"> </div></div> <!></div>'),Ne=w('<div class="grid gap-4"></div>'),ze=w('<div class="flex-1 overflow-y-auto p-6 h-full bg-background text-foreground"><div class="max-w-4xl mx-auto space-y-8"><div class="flex items-center gap-4"><a class="p-2 -ml-2 rounded-full hover:bg-muted text-muted-foreground hover:text-foreground transition-colors" title="Back to Chat"><!></a> <h1 class="text-2xl font-bold tracking-tight">Chat Settings</h1></div> <section class="space-y-4"><div class="flex items-center justify-between"><h2 class="text-xl font-semibold">Cron Jobs</h2> <!></div> <!> <!> <!></section></div></div>');function Ze($,c){be(c,!0);let b=xe(()=>c.data.cronJobs),u=J(!1),h=J(""),m=J(""),p=J(""),g=J("cron"),A=J(!1),O=J("");async function ne(s){if(confirm("Are you sure you want to delete this job?"))try{if(!(await fetch(`/api/chats/${c.data.id}/cron/${s}`,{method:"DELETE"})).ok)throw new Error("Failed to delete job");await re(`app:chat:${c.data.id}:cron`)}catch(t){alert(t instanceof Error?t.message:String(t))}}async function le(s){s.preventDefault(),v(A,!0),v(O,"");try{const t={id:e(h),message:e(m),schedule:{}};e(g)==="cron"?t.schedule.cron=e(p):e(g)==="every"?t.schedule.every=e(p):e(g)==="at"&&(t.schedule.at=e(p));const n=await fetch(`/api/chats/${c.data.id}/cron`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const d=await n.json();throw new Error(d.error||"Failed to add job")}v(u,!1),v(h,""),v(m,""),v(p,""),v(g,"cron"),await re(`app:chat:${c.data.id}:cron`)}catch(t){v(O,t instanceof Error?t.message:String(t),!0)}finally{v(A,!1)}}var V=ze(),X=r(V),G=r(X),L=r(G),ce=r(L);je(ce,{class:"w-5 h-5"}),a(L),N(2),a(G);var Y=o(G,2),Z=r(Y),ve=o(r(Z),2);H(ve,{variant:"outline",size:"sm",onclick:()=>v(u,!e(u)),children:(s,t)=>{var n=Te(),d=z(n);ke(d,{class:"w-4 h-4 mr-2"}),N(),l(s,n)},$$slots:{default:!0}}),a(Z);var ee=o(Z,2);{var ue=s=>{var t=Ee(),n=r(t,!0);a(t),j(()=>M(n,e(O))),l(s,t)};T(ee,s=>{e(O)&&s(ue)})}var te=o(ee,2);{var fe=s=>{var t=Ie(),n=r(t),d=r(n),_=o(r(d),2);U(_,{id:"jobId",placeholder:"e.g. daily-standup",required:!0,get value(){return e(h)},set value(f){v(h,f,!0)}}),a(d);var x=o(d,2),S=o(r(x),2),k=r(S);k.value=k.__value="cron";var I=o(k);I.value=I.__value="every";var P=o(I);P.value=P.__value="at",a(S),a(x);var E=o(x,2),K=o(r(E),2);U(K,{id:"jobSchedule",placeholder:"e.g. * * * * *, 1h, or 2024-01-01T12:00:00Z",required:!0,get value(){return e(p)},set value(f){v(p,f,!0)}}),a(E);var C=o(E,2),Q=o(r(C),2);U(Q,{id:"jobMessage",placeholder:"Command to run...",required:!0,get value(){return e(m)},set value(f){v(m,f,!0)}}),a(C),a(n);var q=o(n,2),B=r(q);H(B,{type:"button",variant:"ghost",onclick:()=>v(u,!1),children:(f,R)=>{N();var i=D("Cancel");l(f,i)},$$slots:{default:!0}});var F=o(B,2);H(F,{type:"submit",get disabled(){return e(A)},children:(f,R)=>{N();var i=D();j(()=>M(i,e(A)?"Saving...":"Save Job")),l(f,i)},$$slots:{default:!0}}),a(q),a(t),ye("submit",t,le),$e(S,()=>e(g),f=>v(g,f)),l(s,t)};T(te,s=>{e(u)&&s(fe)})}var pe=o(te,2);{var he=s=>{var t=W(),n=z(t);{var d=_=>{var x=Pe();l(_,x)};T(n,_=>{e(u)||_(d)})}l(s,t)},me=s=>{var t=Ne();Se(t,21,()=>e(b),n=>n.id,(n,d)=>{var _=De(),x=r(_),S=r(x),k=r(S),I=r(k,!0);a(k);var P=o(k,2),E=r(P);{var K=i=>{var y=D();j(()=>M(y,`cron: ${e(d).schedule.cron??""}`)),l(i,y)};T(E,i=>{e(d).schedule.cron&&i(K)})}var C=o(E,2);{var Q=i=>{var y=D();j(()=>M(y,`every: ${e(d).schedule.every??""}`)),l(i,y)};T(C,i=>{e(d).schedule.every&&i(Q)})}var q=o(C,2);{var B=i=>{var y=D();j(()=>M(y,`at: ${e(d).schedule.at??""}`)),l(i,y)};T(q,i=>{e(d).schedule.at&&i(B)})}a(P),a(S);var F=o(S,2),f=r(F);a(F),a(x);var R=o(x,2);H(R,{variant:"ghost",size:"icon",class:"shrink-0 text-destructive hover:bg-destructive/10 hover:text-destructive",onclick:()=>ne(e(d).id),children:(i,y)=>{var ae=Ce(),ge=z(ae);Je(ge,{class:"w-4 h-4"}),N(2),l(i,ae)},$$slots:{default:!0}}),a(_),j(()=>{M(I,e(d).id),M(f,`$ ${e(d).message??""}`)}),l(n,_)}),a(t),l(s,t)};T(pe,s=>{!e(b)||e(b).length===0?s(he):s(me,-1)})}a(Y),a(X),a(V),j(()=>we(L,"href",`/chats/${c.data.id??""}`)),l($,V),_e()}export{Ze as component,Le as universal};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"
|
|
1
|
+
{"version":"1774990913507"}
|
package/dist/web/index.html
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="utf-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1, interactive-widget=resizes-content" />
|
|
6
|
-
<link href="/_app/immutable/entry/start.
|
|
7
|
-
<link href="/_app/immutable/chunks/
|
|
6
|
+
<link href="/_app/immutable/entry/start.ZpUrT2ak.js" rel="modulepreload">
|
|
7
|
+
<link href="/_app/immutable/chunks/bBmtyQMj.js" rel="modulepreload">
|
|
8
8
|
<link href="/_app/immutable/chunks/CME08kGM.js" rel="modulepreload">
|
|
9
9
|
<link href="/_app/immutable/chunks/DhD271EB.js" rel="modulepreload">
|
|
10
|
-
<link href="/_app/immutable/entry/app.
|
|
10
|
+
<link href="/_app/immutable/entry/app.CJmSwntr.js" rel="modulepreload">
|
|
11
11
|
<link href="/_app/immutable/chunks/DMtIqaiV.js" rel="modulepreload">
|
|
12
12
|
<link href="/_app/immutable/chunks/BmRlVmv6.js" rel="modulepreload">
|
|
13
13
|
<link href="/_app/immutable/chunks/B6YN0Nuq.js" rel="modulepreload">
|
|
@@ -18,15 +18,15 @@
|
|
|
18
18
|
<div style="display: contents">
|
|
19
19
|
<script>
|
|
20
20
|
{
|
|
21
|
-
|
|
21
|
+
__sveltekit_1pko3tl = {
|
|
22
22
|
base: ""
|
|
23
23
|
};
|
|
24
24
|
|
|
25
25
|
const element = document.currentScript.parentElement;
|
|
26
26
|
|
|
27
27
|
Promise.all([
|
|
28
|
-
import("/_app/immutable/entry/start.
|
|
29
|
-
import("/_app/immutable/entry/app.
|
|
28
|
+
import("/_app/immutable/entry/start.ZpUrT2ak.js"),
|
|
29
|
+
import("/_app/immutable/entry/app.CJmSwntr.js")
|
|
30
30
|
]).then(([kit, app]) => {
|
|
31
31
|
kit.start(app, element);
|
|
32
32
|
});
|
package/package.json
CHANGED
|
@@ -19,8 +19,11 @@ describe('E2E Messages Tests', () => {
|
|
|
19
19
|
expect(code).toBe(0);
|
|
20
20
|
expect(stdout).toContain('Message sent successfully.');
|
|
21
21
|
|
|
22
|
-
const
|
|
23
|
-
|
|
22
|
+
const chatLog = fs.readFileSync(
|
|
23
|
+
path.resolve(e2eDir, '.clawmini/chats/default/chat.jsonl'),
|
|
24
|
+
'utf8'
|
|
25
|
+
);
|
|
26
|
+
expect(chatLog).toContain('e2e test message');
|
|
24
27
|
});
|
|
25
28
|
|
|
26
29
|
it('should send a message to a specific chat', async () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { spawn } from 'node:child_process';
|
|
2
2
|
import type { RunCommandFn } from '../agent/types.js';
|
|
3
3
|
|
|
4
|
-
const LOG_TO_TERMINAL =
|
|
4
|
+
const LOG_TO_TERMINAL = false;
|
|
5
5
|
|
|
6
6
|
export const runCommand: RunCommandFn = async ({
|
|
7
7
|
command,
|
|
@@ -11,6 +11,7 @@ export const runCommand: RunCommandFn = async ({
|
|
|
11
11
|
signal,
|
|
12
12
|
}: Parameters<RunCommandFn>[0] & { logToTerminal?: boolean }) => {
|
|
13
13
|
return new Promise<{ stdout: string; stderr: string; exitCode: number }>((resolve, reject) => {
|
|
14
|
+
console.log('RUN: ', command);
|
|
14
15
|
const p = spawn(command, { shell: true, cwd, env, signal });
|
|
15
16
|
|
|
16
17
|
if (stdin && p.stdin) {
|
|
@@ -18,4 +18,12 @@
|
|
|
18
18
|
(literal "/dev/null")
|
|
19
19
|
(literal "/dev/ptmx")
|
|
20
20
|
(regex #"^/dev/ttys[0-9]*$")
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
;; deny access to .clawmini folder
|
|
24
|
+
(deny file-read*
|
|
25
|
+
(subpath (string-append (param "WORKSPACE") "/.clawmini"))
|
|
26
|
+
)
|
|
27
|
+
(deny file-write*
|
|
28
|
+
(subpath (string-append (param "WORKSPACE") "/.clawmini"))
|
|
21
29
|
)
|
|
@@ -15,13 +15,12 @@ function isAllowed(hostname) {
|
|
|
15
15
|
return hostname === 'generativelanguage.googleapis.com';
|
|
16
16
|
}
|
|
17
17
|
const content = fs.readFileSync(allowlistPath, 'utf8');
|
|
18
|
-
const allowedDomains = content
|
|
19
|
-
.
|
|
20
|
-
.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
);
|
|
18
|
+
const allowedDomains = content
|
|
19
|
+
.split('\n')
|
|
20
|
+
.map((line) => line.trim())
|
|
21
|
+
.filter((line) => line.length > 0 && !line.startsWith('#'));
|
|
22
|
+
|
|
23
|
+
return allowedDomains.some((domain) => hostname === domain || hostname.endsWith(`.${domain}`));
|
|
25
24
|
} catch (err) {
|
|
26
25
|
console.error('Error reading allowlist:', err);
|
|
27
26
|
return false;
|
|
@@ -32,20 +31,24 @@ const server = http.createServer((req, res) => {
|
|
|
32
31
|
try {
|
|
33
32
|
const url = new URL(req.url);
|
|
34
33
|
if (!isAllowed(url.hostname)) {
|
|
35
|
-
console.log(`[HTTP] Blocked: ${url.hostname}`);
|
|
34
|
+
console.log(`[${new Date().toISOString()}] [HTTP] Blocked: ${url.hostname}`);
|
|
36
35
|
res.writeHead(403);
|
|
37
36
|
res.end('Domain not allowed by proxy allowlist\n');
|
|
38
37
|
return;
|
|
39
38
|
}
|
|
40
|
-
console.log(`[HTTP] Allowed: ${url.hostname}`);
|
|
41
|
-
|
|
42
|
-
const proxyReq = http.request(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
39
|
+
// console.log(`[HTTP] Allowed: ${url.hostname}`);
|
|
40
|
+
|
|
41
|
+
const proxyReq = http.request(
|
|
42
|
+
url,
|
|
43
|
+
{
|
|
44
|
+
method: req.method,
|
|
45
|
+
headers: req.headers,
|
|
46
|
+
},
|
|
47
|
+
(proxyRes) => {
|
|
48
|
+
res.writeHead(proxyRes.statusCode, proxyRes.headers);
|
|
49
|
+
proxyRes.pipe(res, { end: true });
|
|
50
|
+
}
|
|
51
|
+
);
|
|
49
52
|
req.pipe(proxyReq, { end: true });
|
|
50
53
|
proxyReq.on('error', (err) => {
|
|
51
54
|
res.writeHead(500);
|
|
@@ -61,13 +64,15 @@ server.on('connect', (req, clientSocket, head) => {
|
|
|
61
64
|
try {
|
|
62
65
|
const { port, hostname } = new URL(`http://${req.url}`);
|
|
63
66
|
if (!isAllowed(hostname)) {
|
|
64
|
-
|
|
67
|
+
// Log the domain and timestamp
|
|
68
|
+
console.log(`[${new Date().toISOString()}] [HTTPS] Blocked: ${hostname}`);
|
|
65
69
|
clientSocket.write('HTTP/1.1 403 Forbidden\r\n\r\nDomain not allowed by proxy allowlist\n');
|
|
66
70
|
clientSocket.end();
|
|
67
71
|
return;
|
|
68
72
|
}
|
|
69
|
-
|
|
70
|
-
|
|
73
|
+
// Only log blocked domains for now
|
|
74
|
+
// console.log(`[HTTPS] Allowed: ${hostname}`);
|
|
75
|
+
|
|
71
76
|
const serverSocket = net.connect(port || 443, hostname, () => {
|
|
72
77
|
clientSocket.write('HTTP/1.1 200 Connection Established\r\n\r\n');
|
|
73
78
|
serverSocket.write(head);
|
|
@@ -20,6 +20,14 @@
|
|
|
20
20
|
(regex #"^/dev/ttys[0-9]*$")
|
|
21
21
|
)
|
|
22
22
|
|
|
23
|
+
;; deny access to .clawmini folder
|
|
24
|
+
(deny file-read*
|
|
25
|
+
(subpath (string-append (param "WORKSPACE") "/.clawmini"))
|
|
26
|
+
)
|
|
27
|
+
(deny file-write*
|
|
28
|
+
(subpath (string-append (param "WORKSPACE") "/.clawmini"))
|
|
29
|
+
)
|
|
30
|
+
|
|
23
31
|
;; deny all network EXCEPT local proxy and basic network operations
|
|
24
32
|
(deny network-outbound)
|
|
25
33
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"apiTokenEnvVar": "GEMINI_CLI_CLAW_API_TOKEN",
|
|
3
3
|
"commands": {
|
|
4
|
-
"new": "gemini --output-format json --model $MODEL -p \"$CLAW_CLI_MESSAGE\"",
|
|
5
|
-
"append": "gemini --output-format json --model $MODEL --resume $SESSION_ID -p \"$CLAW_CLI_MESSAGE\"",
|
|
4
|
+
"new": "gemini --yolo --output-format json --model $MODEL -p \"$CLAW_CLI_MESSAGE\"",
|
|
5
|
+
"append": "gemini --yolo --output-format json --model $MODEL --resume $SESSION_ID -p \"$CLAW_CLI_MESSAGE\"",
|
|
6
6
|
"getSessionId": "jq -r '.session_id'",
|
|
7
7
|
"getMessageContent": "jq -r '.response'"
|
|
8
8
|
},
|
|
9
9
|
"env": {
|
|
10
|
-
"MODEL": "gemini-3.1-pro-preview
|
|
10
|
+
"MODEL": "gemini-3.1-pro-preview",
|
|
11
11
|
"GEMINI_API_KEY": true
|
|
12
12
|
},
|
|
13
13
|
"skillsDir": ".gemini/skills/",
|
|
@@ -22,4 +22,4 @@
|
|
|
22
22
|
"retries": 3
|
|
23
23
|
}
|
|
24
24
|
]
|
|
25
|
-
}
|
|
25
|
+
}
|
|
@@ -2,7 +2,7 @@ This folder is home. Treat it that way.
|
|
|
2
2
|
|
|
3
3
|
## First Run
|
|
4
4
|
|
|
5
|
-
If `BOOTSTRAP.md` exists, that's your birth certificate. Follow it, figure out who you are, then delete it. You won't need it again. You can remove this instruction from `GEMINI.md` when complete.
|
|
5
|
+
If `BOOTSTRAP.md` exists, that's your birth certificate. Follow it, figure out who you are, then delete it. You won't need it again. You can remove this instruction from `GEMINI.md` when complete. Do not use a subagent for this.
|
|
6
6
|
|
|
7
7
|
## Every Session
|
|
8
8
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"apiTokenEnvVar": "GEMINI_CLI_CLAW_API_TOKEN",
|
|
3
3
|
"commands": {
|
|
4
|
-
"new": "gemini --output-format json --model $MODEL -p \"$CLAW_CLI_MESSAGE\"",
|
|
5
|
-
"append": "gemini --output-format json --model $MODEL --resume $SESSION_ID -p \"$CLAW_CLI_MESSAGE\"",
|
|
4
|
+
"new": "gemini --yolo --output-format json --model $MODEL -p \"$CLAW_CLI_MESSAGE\"",
|
|
5
|
+
"append": "gemini --yolo --output-format json --model $MODEL --resume $SESSION_ID -p \"$CLAW_CLI_MESSAGE\"",
|
|
6
6
|
"getSessionId": "jq -r '.session_id'",
|
|
7
7
|
"getMessageContent": "jq -r '.response'"
|
|
8
8
|
},
|
|
9
9
|
"env": {
|
|
10
|
-
"MODEL": "gemini-3.1-pro-preview
|
|
10
|
+
"MODEL": "gemini-3.1-pro-preview",
|
|
11
11
|
"GEMINI_SYSTEM_MD": "true",
|
|
12
12
|
"GEMINI_API_KEY": true
|
|
13
13
|
},
|
|
@@ -26,4 +26,4 @@
|
|
|
26
26
|
"retries": 3
|
|
27
27
|
}
|
|
28
28
|
]
|
|
29
|
-
}
|
|
29
|
+
}
|
|
@@ -25,7 +25,7 @@ export const options = {
|
|
|
25
25
|
app: ({ head, body, assets, nonce, env }) => "<!doctype html>\n<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\" />\n\t\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, interactive-widget=resizes-content\" />\n\t\t" + head + "\n\t</head>\n\t<body data-sveltekit-preload-data=\"hover\">\n\t\t<div style=\"display: contents\">" + body + "</div>\n\t</body>\n</html>\n",
|
|
26
26
|
error: ({ status, message }) => "<!doctype html>\n<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\" />\n\t\t<title>" + message + "</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\t--bg: white;\n\t\t\t\t--fg: #222;\n\t\t\t\t--divider: #ccc;\n\t\t\t\tbackground: var(--bg);\n\t\t\t\tcolor: var(--fg);\n\t\t\t\tfont-family:\n\t\t\t\t\tsystem-ui,\n\t\t\t\t\t-apple-system,\n\t\t\t\t\tBlinkMacSystemFont,\n\t\t\t\t\t'Segoe UI',\n\t\t\t\t\tRoboto,\n\t\t\t\t\tOxygen,\n\t\t\t\t\tUbuntu,\n\t\t\t\t\tCantarell,\n\t\t\t\t\t'Open Sans',\n\t\t\t\t\t'Helvetica Neue',\n\t\t\t\t\tsans-serif;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t\theight: 100vh;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t.error {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tmax-width: 32rem;\n\t\t\t\tmargin: 0 1rem;\n\t\t\t}\n\n\t\t\t.status {\n\t\t\t\tfont-weight: 200;\n\t\t\t\tfont-size: 3rem;\n\t\t\t\tline-height: 1;\n\t\t\t\tposition: relative;\n\t\t\t\ttop: -0.05rem;\n\t\t\t}\n\n\t\t\t.message {\n\t\t\t\tborder-left: 1px solid var(--divider);\n\t\t\t\tpadding: 0 0 0 1rem;\n\t\t\t\tmargin: 0 0 0 1rem;\n\t\t\t\tmin-height: 2.5rem;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t}\n\n\t\t\t.message h1 {\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 1em;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t@media (prefers-color-scheme: dark) {\n\t\t\t\tbody {\n\t\t\t\t\t--bg: #222;\n\t\t\t\t\t--fg: #ddd;\n\t\t\t\t\t--divider: #666;\n\t\t\t\t}\n\t\t\t}\n\t\t</style>\n\t</head>\n\t<body>\n\t\t<div class=\"error\">\n\t\t\t<span class=\"status\">" + status + "</span>\n\t\t\t<div class=\"message\">\n\t\t\t\t<h1>" + message + "</h1>\n\t\t\t</div>\n\t\t</div>\n\t</body>\n</html>\n"
|
|
27
27
|
},
|
|
28
|
-
version_hash: "
|
|
28
|
+
version_hash: "1pko3tl"
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
export async function get_hooks() {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"../node_modules/@sveltejs/kit/src/runtime/client/entry.js": {
|
|
3
|
-
"file": "_app/immutable/entry/start.
|
|
3
|
+
"file": "_app/immutable/entry/start.ZpUrT2ak.js",
|
|
4
4
|
"name": "entry/start",
|
|
5
5
|
"src": "../node_modules/@sveltejs/kit/src/runtime/client/entry.js",
|
|
6
6
|
"isEntry": true,
|
|
7
7
|
"imports": [
|
|
8
|
-
"
|
|
8
|
+
"_bBmtyQMj.js"
|
|
9
9
|
]
|
|
10
10
|
},
|
|
11
11
|
".svelte-kit/generated/client-optimized/app.js": {
|
|
12
|
-
"file": "_app/immutable/entry/app.
|
|
12
|
+
"file": "_app/immutable/entry/app.CJmSwntr.js",
|
|
13
13
|
"name": "entry/app",
|
|
14
14
|
"src": ".svelte-kit/generated/client-optimized/app.js",
|
|
15
15
|
"isEntry": true,
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
]
|
|
32
32
|
},
|
|
33
33
|
".svelte-kit/generated/client-optimized/nodes/0.js": {
|
|
34
|
-
"file": "_app/immutable/nodes/0.
|
|
34
|
+
"file": "_app/immutable/nodes/0.CYS8iApT.js",
|
|
35
35
|
"name": "nodes/0",
|
|
36
36
|
"src": ".svelte-kit/generated/client-optimized/nodes/0.js",
|
|
37
37
|
"isEntry": true,
|
|
@@ -45,9 +45,9 @@
|
|
|
45
45
|
"_CK9JZLaG.js",
|
|
46
46
|
"_Zeh-C-mx.js",
|
|
47
47
|
"_Ck-be5J2.js",
|
|
48
|
-
"
|
|
48
|
+
"_G_zz-Gou.js",
|
|
49
49
|
"_Drm9vgeP.js",
|
|
50
|
-
"
|
|
50
|
+
"_bBmtyQMj.js",
|
|
51
51
|
"_Ck3rYNON.js",
|
|
52
52
|
"_DsIToJCP.js"
|
|
53
53
|
],
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
]
|
|
57
57
|
},
|
|
58
58
|
".svelte-kit/generated/client-optimized/nodes/1.js": {
|
|
59
|
-
"file": "_app/immutable/nodes/1.
|
|
59
|
+
"file": "_app/immutable/nodes/1.Bli0Hqzn.js",
|
|
60
60
|
"name": "nodes/1",
|
|
61
61
|
"src": ".svelte-kit/generated/client-optimized/nodes/1.js",
|
|
62
62
|
"isEntry": true,
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"_CME08kGM.js",
|
|
68
68
|
"_DMtIqaiV.js",
|
|
69
69
|
"_DpuLqk8d.js",
|
|
70
|
-
"
|
|
70
|
+
"_G_zz-Gou.js"
|
|
71
71
|
]
|
|
72
72
|
},
|
|
73
73
|
".svelte-kit/generated/client-optimized/nodes/2.js": {
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
]
|
|
83
83
|
},
|
|
84
84
|
".svelte-kit/generated/client-optimized/nodes/3.js": {
|
|
85
|
-
"file": "_app/immutable/nodes/3.
|
|
85
|
+
"file": "_app/immutable/nodes/3.Dr0ot9sV.js",
|
|
86
86
|
"name": "nodes/3",
|
|
87
87
|
"src": ".svelte-kit/generated/client-optimized/nodes/3.js",
|
|
88
88
|
"isEntry": true,
|
|
@@ -94,14 +94,14 @@
|
|
|
94
94
|
"_B6YN0Nuq.js",
|
|
95
95
|
"_CK9JZLaG.js",
|
|
96
96
|
"_Zeh-C-mx.js",
|
|
97
|
-
"
|
|
97
|
+
"_bBmtyQMj.js",
|
|
98
98
|
"_Drm9vgeP.js",
|
|
99
99
|
"_Ck-be5J2.js",
|
|
100
100
|
"_Ck3rYNON.js"
|
|
101
101
|
]
|
|
102
102
|
},
|
|
103
103
|
".svelte-kit/generated/client-optimized/nodes/4.js": {
|
|
104
|
-
"file": "_app/immutable/nodes/4.
|
|
104
|
+
"file": "_app/immutable/nodes/4.oBhvQhcA.js",
|
|
105
105
|
"name": "nodes/4",
|
|
106
106
|
"src": ".svelte-kit/generated/client-optimized/nodes/4.js",
|
|
107
107
|
"isEntry": true,
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
"_DMtIqaiV.js",
|
|
114
114
|
"_B6YN0Nuq.js",
|
|
115
115
|
"_CK9JZLaG.js",
|
|
116
|
-
"
|
|
116
|
+
"_bBmtyQMj.js",
|
|
117
117
|
"_DsIToJCP.js",
|
|
118
118
|
"_Ck3rYNON.js"
|
|
119
119
|
],
|
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
]
|
|
123
123
|
},
|
|
124
124
|
".svelte-kit/generated/client-optimized/nodes/5.js": {
|
|
125
|
-
"file": "_app/immutable/nodes/5.
|
|
125
|
+
"file": "_app/immutable/nodes/5.BBGQ_i84.js",
|
|
126
126
|
"name": "nodes/5",
|
|
127
127
|
"src": ".svelte-kit/generated/client-optimized/nodes/5.js",
|
|
128
128
|
"isEntry": true,
|
|
@@ -133,7 +133,7 @@
|
|
|
133
133
|
"_DMtIqaiV.js",
|
|
134
134
|
"_B6YN0Nuq.js",
|
|
135
135
|
"_CK9JZLaG.js",
|
|
136
|
-
"
|
|
136
|
+
"_bBmtyQMj.js",
|
|
137
137
|
"_Drm9vgeP.js",
|
|
138
138
|
"_Ck3rYNON.js"
|
|
139
139
|
]
|
|
@@ -152,21 +152,6 @@
|
|
|
152
152
|
"_CME08kGM.js"
|
|
153
153
|
]
|
|
154
154
|
},
|
|
155
|
-
"_C20lZMGz.js": {
|
|
156
|
-
"file": "_app/immutable/chunks/C20lZMGz.js",
|
|
157
|
-
"name": "index",
|
|
158
|
-
"imports": [
|
|
159
|
-
"_C9lbZ-kT.js"
|
|
160
|
-
]
|
|
161
|
-
},
|
|
162
|
-
"_C9lbZ-kT.js": {
|
|
163
|
-
"file": "_app/immutable/chunks/C9lbZ-kT.js",
|
|
164
|
-
"name": "entry",
|
|
165
|
-
"imports": [
|
|
166
|
-
"_CME08kGM.js",
|
|
167
|
-
"_DhD271EB.js"
|
|
168
|
-
]
|
|
169
|
-
},
|
|
170
155
|
"_CK9JZLaG.js": {
|
|
171
156
|
"file": "_app/immutable/chunks/CK9JZLaG.js",
|
|
172
157
|
"name": "Icon",
|
|
@@ -243,6 +228,13 @@
|
|
|
243
228
|
"_CME08kGM.js"
|
|
244
229
|
]
|
|
245
230
|
},
|
|
231
|
+
"_G_zz-Gou.js": {
|
|
232
|
+
"file": "_app/immutable/chunks/G_zz-Gou.js",
|
|
233
|
+
"name": "index",
|
|
234
|
+
"imports": [
|
|
235
|
+
"_bBmtyQMj.js"
|
|
236
|
+
]
|
|
237
|
+
},
|
|
246
238
|
"_Zeh-C-mx.js": {
|
|
247
239
|
"file": "_app/immutable/chunks/Zeh-C-mx.js",
|
|
248
240
|
"name": "svelte-component",
|
|
@@ -250,5 +242,13 @@
|
|
|
250
242
|
"_CME08kGM.js",
|
|
251
243
|
"_B6YN0Nuq.js"
|
|
252
244
|
]
|
|
245
|
+
},
|
|
246
|
+
"_bBmtyQMj.js": {
|
|
247
|
+
"file": "_app/immutable/chunks/bBmtyQMj.js",
|
|
248
|
+
"name": "entry",
|
|
249
|
+
"imports": [
|
|
250
|
+
"_CME08kGM.js",
|
|
251
|
+
"_DhD271EB.js"
|
|
252
|
+
]
|
|
253
253
|
}
|
|
254
254
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as e,p as r}from"./
|
|
1
|
+
import{s as e,p as r}from"./bBmtyQMj.js";const t={get error(){return r.error},get status(){return r.status},get url(){return r.url}};e.updated.check;const a=t;export{a as p};
|