pi-yun 0.2.0 → 0.2.1
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/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +18 -18
- package/.next/build-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +1 -1
- package/.next/required-server-files.js +1 -1
- package/.next/required-server-files.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +4 -4
- package/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -3
- package/.next/server/app/api/agent/[id]/events/route.js +1 -1
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent/running/route.js.nft.json +1 -1
- package/.next/server/app/api/app-update/route.js +1 -1
- package/.next/server/app/api/cwd/browse/route.js.nft.json +2 -2
- package/.next/server/app/api/cwd/validate/route.js +1 -1
- package/.next/server/app/api/cwd/validate/route.js.nft.json +2 -2
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/file-index/route.js.nft.json +1 -1
- package/.next/server/app/api/files/[...path]/route.js +1 -1
- package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/git/diff/route.js +1 -6
- package/.next/server/app/api/git/diff/route.js.nft.json +1 -1
- package/.next/server/app/api/git/status/route.js +1 -6
- package/.next/server/app/api/git/status/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +1 -1
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/sign-in/route.js +1 -1
- package/.next/server/app/api/mcp/sign-in/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/test/route.js +1 -1
- package/.next/server/app/api/mcp/test/route.js.nft.json +1 -1
- package/.next/server/app/api/models/default/route.js +1 -1
- package/.next/server/app/api/models/default/route.js.nft.json +2 -2
- package/.next/server/app/api/models/enabled/route.js +1 -1
- package/.next/server/app/api/models/enabled/route.js.nft.json +2 -2
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models/route.js.nft.json +1 -1
- package/.next/server/app/api/open-in-explorer/route.js +1 -1
- package/.next/server/app/api/open-in-explorer/route.js.nft.json +1 -1
- package/.next/server/app/api/plugins/check/route.js +1 -1
- package/.next/server/app/api/plugins/check/route.js.nft.json +1 -1
- package/.next/server/app/api/plugins/route.js +1 -1
- package/.next/server/app/api/plugins/route.js.nft.json +1 -1
- package/.next/server/app/api/project-trust/route.js +1 -1
- package/.next/server/app/api/project-trust/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/fork/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
- package/.next/server/app/api/sessions/delete/route.js +1 -1
- package/.next/server/app/api/sessions/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/sessions/stats/route.js +1 -1
- package/.next/server/app/api/sessions/stats/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/ui-state/route.js +1 -1
- package/.next/server/app/api/sessions/ui-state/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/content/route.js +1 -1
- package/.next/server/app/api/skills/content/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/install/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route.js +1 -1
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js.nft.json +1 -1
- package/.next/server/app/api/subagents/[id]/route.js +1 -1
- package/.next/server/app/api/subagents/profiles/route.js +1 -1
- package/.next/server/app/api/subagents/profiles/route.js.nft.json +1 -1
- package/.next/server/app/api/terminal/route.js +1 -1
- package/.next/server/app/api/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +7 -7
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +7 -7
- package/.next/server/app/index.segments/_full.segment.rsc +7 -7
- package/.next/server/app/index.segments/_tree.segment.rsc +4 -4
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +1 -1
- package/.next/server/app/login.rsc +5 -5
- package/.next/server/app/login.segments/_full.segment.rsc +5 -5
- package/.next/server/app/login.segments/_tree.segment.rsc +3 -3
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/page.js +24 -24
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/pet-preview/page_client-reference-manifest.js +1 -1
- package/.next/server/app/pet-preview.html +1 -1
- package/.next/server/app/pet-preview.rsc +5 -5
- package/.next/server/app/pet-preview.segments/_full.segment.rsc +5 -5
- package/.next/server/app/pet-preview.segments/_tree.segment.rsc +3 -3
- package/.next/server/app/pet-preview.segments/pet-preview/__PAGE__.segment.rsc +5 -5
- package/.next/server/app-paths-manifest.json +18 -18
- package/.next/server/chunks/1351.js +1 -1
- package/.next/server/chunks/1906.js +1 -1
- package/.next/server/chunks/2243.js +1 -1
- package/.next/server/chunks/2498.js +1 -1
- package/.next/server/chunks/27.js +1 -1
- package/.next/server/chunks/3374.js +6 -0
- package/.next/server/chunks/4698.js +1 -1
- package/.next/server/chunks/5000.js +1 -0
- package/.next/server/chunks/5787.js +1 -1
- package/.next/server/chunks/7365.js +1 -0
- package/.next/server/chunks/8952.js +1 -0
- package/.next/server/chunks/9165.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/static/chunks/1278-887d8dd9f4ab60fa.js +1 -0
- package/.next/static/chunks/5455.0653c79e4997724a.js +1 -0
- package/.next/static/chunks/app/{layout-955e68ada9a4c00a.js → layout-b707963fa7205d6d.js} +1 -1
- package/.next/static/chunks/app/page-4232d828a32cfeb9.js +228 -0
- package/.next/static/chunks/{webpack-8f20f0fe6235d33b.js → webpack-7f5c25954b44b5fb.js} +1 -1
- package/.next/static/css/3d221be0a6116b3b.css +1 -0
- package/.next/static/css/40f42d513e985a7c.css +1 -0
- package/.next/static/css/{785537d6385160c9.css → d986dbac15b9ebaa.css} +1 -1
- package/.next/trace +8 -8
- package/.next/trace-build +1 -1
- package/README.md +208 -207
- package/package.json +1 -1
- package/.next/server/chunks/2069.js +0 -1
- package/.next/static/chunks/1278-18f6ec77eb77312f.js +0 -1
- package/.next/static/chunks/5455.af2fa5ae4e041807.js +0 -1
- package/.next/static/chunks/app/page-7e30ceb131511d62.js +0 -228
- package/.next/static/css/34a258ef601979e9.css +0 -1
- package/.next/static/css/4cb902f98aeb9119.css +0 -1
- /package/.next/static/{6G0fewP2uW-xnL4J9JTfK → iKNuUVRZa7JT6IPMMtnRe}/_buildManifest.js +0 -0
- /package/.next/static/{6G0fewP2uW-xnL4J9JTfK → iKNuUVRZa7JT6IPMMtnRe}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=7365,exports.ids=[7365],exports.modules={10879:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$q:()=>x,Vy:()=>v,bA:()=>y,ej:()=>u,yh:()=>C});var e=c(73024),f=c(76760),g=c(75430),h=c(80974),i=c.n(h),j=c(8102),k=c(63108),l=c(37431),m=c(12069),n=a([g]);g=(n.then?(await n)():n)[0];let z=new Set(["version","revision","sessions","projects","removedProjects","projectOrder","projectNames","__proto__"]),A=Symbol.for("pi-web:session-ui-state-write-queue"),B={realpath:!1,stale:1e4,retries:{retries:10,factor:2,minTimeout:25,maxTimeout:500},onCompromised:a=>{console.warn(`[pi-web] the session UI state lock was compromised: ${a.message}`)}};class C extends Error{constructor(a="Another process holds the session UI state lock"){super(a),this.name="SessionUiStateLockedError"}}function o(){return globalThis.__piWebSessionUiStateCache??={reads:new Map,revisions:new Map}}function p(a,b){let c=o().revisions;b>(c.get(a)??-1)&&c.set(a,b)}function q(a){return structuredClone(a)}function r(a=(0,g.getAgentDir)()){return(0,f.join)(a,"pi-web-session-state.json")}function s(a){let b;try{b=JSON.parse(a)}catch{return{ok:!1}}let c=(0,m.Jx)(b);return c?{ok:!0,state:c,raw:b}:{ok:!1}}function t(a){let b,c;try{b=(0,e.statSync)(a)}catch(c){let b=c?.code;if("ENOENT"===b||"ENOTDIR"===b)return o().reads.delete(a),(0,m.ly)();throw c}let d=o().reads.get(a);if(d&&d.mtimeMs===b.mtimeMs&&d.size===b.size&&d.ino===b.ino)return d.state;let f=(0,l.y)(a,4194304);if(void 0===f)return o().reads.delete(a),(0,m.ly)();let g=s(f);return g.ok?(c=g.state,p(a,c.revision)):(console.warn(`[pi-web] ${a} is not valid session UI state; reading it as empty until the next change sets it aside`),c=(0,m.ly)()),o().reads.set(a,{mtimeMs:b.mtimeMs,size:b.size,ino:b.ino,state:c}),c}function u(a){try{return q(t(a??r()))}catch(a){return console.warn(`[pi-web] could not read the session UI state: ${a instanceof Error?a.message:String(a)}`),(0,m.ly)()}}function v(a){try{return t(a??r()).revision}catch{return null}}function w(a,b){return(0,k.T)(A,a,async()=>{let c;(0,e.mkdirSync)((0,f.dirname)(a),{recursive:!0});try{c=await i().lock(a,B)}catch(a){if("ELOCKED"===a?.code)throw new C;throw a}try{let c,d=o().revisions.get(a)??0,f=(0,l.y)(a,4194304),g={},h=!1;if(void 0===f)c={...(0,m.ly)(),revision:d};else{let b=s(f);if(b.ok)for(let[a,d]of(c=b.state,Object.entries(b.raw)))z.has(a)||(g[a]=d);else{let b=`${a}.corrupt-${Date.now()}`;try{(0,e.renameSync)(a,b),console.warn(`[pi-web] ${a} could not be parsed; moved it to ${b} and started from an empty session UI state`)}catch(b){console.warn(`[pi-web] ${a} could not be parsed and could not be moved aside (${b instanceof Error?b.message:String(b)}); starting from an empty session UI state`)}c={...(0,m.ly)(),revision:d+1},h=!0}}let i=b(c);if(!i.changed&&!h)return q(c);let k={...i.state,version:m.fS,revision:c.revision+ +!!i.changed},n={version:k.version,revision:k.revision,sessions:k.sessions,projects:k.projects,...k.removedProjects&&Object.keys(k.removedProjects).length>0?{removedProjects:k.removedProjects}:{},...k.projectOrder?.length?{projectOrder:k.projectOrder}:{},...k.projectNames&&Object.keys(k.projectNames).length>0?{projectNames:k.projectNames}:{},...g};(0,j.$)(a,JSON.stringify(n,null,2)+"\n"),p(a,k.revision);try{let b=(0,e.statSync)(a);o().reads.set(a,{mtimeMs:b.mtimeMs,size:b.size,ino:b.ino,state:q(k)})}catch{o().reads.delete(a)}return q(k)}finally{try{await c()}catch{}}})}function x(a,b){let c;try{c=b??r()}catch(a){return Promise.reject(a)}return w(c,b=>(0,m.D7)(b,a,Date.now()))}async function y(a,b){let c=b??r(),d=[...new Set(a)];if(0===d.length)return;let e=a=>d.some(b=>Object.prototype.hasOwnProperty.call(a.sessions,b));e(t(c))&&await w(c,a=>{if(!e(a))return{state:a,changed:!1};let b={...a.sessions};for(let a of d)delete b[a];return{state:{...a,sessions:b},changed:!0}})}d()}catch(a){d(a)}})},19038:(a,b,c)=>{c.d(b,{CU:()=>l,S7:()=>u});var d=c(79646),e=c(79748),f=c(21820),g=c(33873),h=c(28354);let i=process.env.SKILLS_API_URL||"https://skills.sh",j=(0,h.promisify)(d.execFile);class k extends Error{constructor(a){super(`HTTP ${a}`),this.status=a}}function l(a){let b=n(a.skillPath??""),c=b?`${a.source}/${b}`:a.source,d=a.ref?`#${encodeURIComponent(a.ref)}`:"",e=["skills","add",`${c}${d}`,"--skill",m(a.package),"-y","--agent","pi"];return"global"===a.scope&&e.push("-g"),e}function m(a){let b=a.lastIndexOf("@");return b>=0?a.slice(b+1):a}function n(a){let b=a.replace(/\\/g,"/");return b.toLowerCase().endsWith("/skill.md")?b=b.slice(0,-9):b.toLowerCase().endsWith("skill.md")&&(b=b.slice(0,-8)),b.replace(/\/$/,"")}function o(a,b,c,d){return{package:a.package,scope:a.scope,state:b,currentVersion:a.versionHash,latestVersion:c,message:d}}async function p(a,b,c){let d=await b(a,{cache:"no-store",headers:c,signal:AbortSignal.timeout(15e3)});if(!d.ok)throw new k(d.status);return d.json()}async function q(a){let b=`https://github.com/${a.source}.git`,c=a.ref||"HEAD",d=n(a.skillPath),h=await (0,e.mkdtemp)((0,g.join)((0,f.tmpdir)(),"pi-web-skill-check-"));try{await j("git",["init","--bare",h],{timeout:3e4}),await j("git",[`--git-dir=${h}`,"fetch","--depth=1","--filter=blob:none","--no-tags",b,c],{timeout:3e4});let a=d?`FETCH_HEAD:${d}`:"FETCH_HEAD^{tree}",{stdout:e}=await j("git",[`--git-dir=${h}`,"rev-parse",a],{timeout:3e4}),f=e.trim();if(!/^[0-9a-f]{40}$/i.test(f))throw Error("Invalid Git tree hash");return f}finally{await (0,e.rm)(h,{recursive:!0,force:!0})}}async function r(a,b){let c,d=a.ref||"HEAD",e=`https://api.github.com/repos/${a.source}/git/trees/${encodeURIComponent(d)}?recursive=1`,f={Accept:"application/vnd.github.v3+json","User-Agent":"pi-web"};b.githubToken&&(f.Authorization=`Bearer ${b.githubToken}`);let g=n(a.skillPath);try{let a=await p(e,b.fetcher,f);if(c="string"!=typeof a.sha||g?void 0:a.sha,g&&Array.isArray(a.tree)){let b=a.tree.find(a=>"tree"===a.type&&a.path===g);b&&"string"==typeof b.sha&&(c=b.sha)}}catch(d){if(!(d instanceof k)||![401,403,429].includes(d.status))throw d;c=await b.resolveGitTreeHash(a)}return c?o(a,c===a.versionHash?"up-to-date":"update-available",c):o(a,"error",void 0,"Remote skill path was not found.")}async function s(a,b){let[c,d]=a.source.split("/"),e=m(a.package).toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,""),f=`${b.skillsApiBase}/api/download/${encodeURIComponent(c)}/${encodeURIComponent(d)}/${encodeURIComponent(e)}`,g=await p(f,b.fetcher),h="string"==typeof g.hash?g.hash:void 0;return h?o(a,h===a.versionHash?"up-to-date":"update-available",h):o(a,"error",void 0,"skills.sh did not return a version hash.")}async function t(a,b={}){if(!a.canCheckForUpdates||!a.versionHash||!a.skillPath)return o(a,"unsupported",void 0,"This lock entry cannot be checked automatically.");let c={...b,fetcher:b.fetcher??fetch,skillsApiBase:b.skillsApiBase??i,resolveGitTreeHash:b.resolveGitTreeHash??q};try{return"global"===a.scope?await r(a,c):await s(a,c)}catch(b){return o(a,"error",void 0,b instanceof Error?b.message:String(b))}}async function u(a,b={}){let c=b.fetcher??fetch,d=new Map,e=async(a,b)=>{let e=d.get(a);return e||(e=c(a,b),d.set(a,e)),(await e).clone()};return Promise.all(a.map(a=>t(a,{...b,fetcher:e})))}},21278:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{y:()=>i});var e=c(75430),f=c(75805),g=c(72498),h=a([e,g]);async function i(a){let b=(0,e.getAgentDir)(),c=new e.DefaultResourceLoader({cwd:a,agentDir:b,noExtensions:!0});await c.reload((0,g.Fk)(a,b));let{skills:d,diagnostics:h}=c.getSkills();return{skills:(0,f._)(d,{cwd:a,agentDir:b}),diagnostics:h,projectResourcesLoaded:(0,g.Y1)(a,b).trusted}}[e,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},75805:(a,b,c)=>{c.d(b,{_:()=>j});var d=c(29021),e=c(21820),f=c(33873);function g(a){try{let b=JSON.parse((0,d.readFileSync)(a,"utf8"));return b.skills&&"object"==typeof b.skills?b.skills:{}}catch{return{}}}function h(a,b){let c=(0,f.relative)((0,f.resolve)(b),(0,f.resolve)(a));return""!==c&&".."!==c&&!c.startsWith(`..${f.sep}`)&&!(0,f.isAbsolute)(c)}function i(a,b,c){var d;let e=function(a,b){if(a[b])return a[b];let c=b.toLowerCase(),d=Object.keys(a).find(a=>a.toLowerCase()===c);return d?a[d]:void 0}(a,b);if(!e||"string"!=typeof e.source||!e.source.trim())return;let f="string"==typeof e.sourceType?e.sourceType:void 0,g=(d=e.source.trim(),"github"!==f?d.replace(/\/$/,""):d.replace(/^git\+/,"").replace(/^https?:\/\/github\.com\//,"").replace(/^git@github\.com:/,"").replace(/\.git$/,"").replace(/\/$/,""));if(!g)return;let h="string"==typeof e.skillPath?e.skillPath:void 0,i="string"==typeof e.ref?e.ref:void 0,j="global"===c?e.skillFolderHash:e.computedHash,k="string"==typeof j&&j?j:void 0,l="github"===f&&/^[\w.-]+\/[\w.-]+$/.test(g);return{package:`${g}@${b}`,scope:c,source:g,sourceType:f,skillsShUrl:"local"===f?void 0:function(a,b){if(!a||a.includes("://")||a.startsWith("git@"))return;let c=a.split("/").filter(Boolean).map(encodeURIComponent).join("/");if(c)return`https://skills.sh/${c}/${encodeURIComponent(b)}`}(g,b),...h&&{skillPath:h},...i&&{ref:i},...k&&{versionHash:k},canCheckForUpdates:!!(l&&h&&k&&("global"===c||!i))}}function j(a,{cwd:b,agentDir:c,globalLockPath:k=function({homeDir:a=(0,e.homedir)(),xdgStateHome:b=process.env.XDG_STATE_HOME}={}){return b?(0,f.join)(b,"skills",".skill-lock.json"):(0,f.join)(a,".agents",".skill-lock.json")}(),projectLockPath:l=(0,f.join)(b,"skills-lock.json")}){let m=g(k),n=g(l),o=(0,f.join)(c,"skills"),p=(0,f.join)(b,".pi","skills");return a.map(a=>{if(!(0,d.existsSync)(a.filePath))return a;let b=h(a.filePath,o)?i(m,a.name,"global"):h(a.filePath,p)?i(n,a.name,"project"):void 0;return b?{...a,install:b}:a})}},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>m,B7:()=>n,mc:()=>l,uK:()=>j.uK,wz:()=>e.wz});var e=c(25252),f=c(82536),g=c(40402),h=c(10879),i=c(12069),j=c(58864),k=a([g,h]);async function l(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,g.dQ)(),d=new Set;for(let a of c)a.cwd&&d.add((0,e.Nw)(a.cwd)),a.projectRoot&&d.add((0,e.Nw)(a.projectRoot));for(let a of(0,e.HM)())d.add(a);let f=(0,h.ej)();for(let[a,b]of Object.entries(f.projects))(0,i.KV)(f,a)||d.add((0,e.Nw)(b.root));return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function m(a,b){return(0,f.o4)(a,b)}function n(a,b){return(0,f.xk)(a,b)}[g,h]=k.then?(await k)():k,d()}catch(a){d(a)}})}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=8952,exports.ids=[8952],exports.modules={10879:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$q:()=>x,Vy:()=>v,bA:()=>y,ej:()=>u,yh:()=>C});var e=c(73024),f=c(76760),g=c(75430),h=c(80974),i=c.n(h),j=c(8102),k=c(63108),l=c(37431),m=c(12069),n=a([g]);g=(n.then?(await n)():n)[0];let z=new Set(["version","revision","sessions","projects","removedProjects","projectOrder","projectNames","__proto__"]),A=Symbol.for("pi-web:session-ui-state-write-queue"),B={realpath:!1,stale:1e4,retries:{retries:10,factor:2,minTimeout:25,maxTimeout:500},onCompromised:a=>{console.warn(`[pi-web] the session UI state lock was compromised: ${a.message}`)}};class C extends Error{constructor(a="Another process holds the session UI state lock"){super(a),this.name="SessionUiStateLockedError"}}function o(){return globalThis.__piWebSessionUiStateCache??={reads:new Map,revisions:new Map}}function p(a,b){let c=o().revisions;b>(c.get(a)??-1)&&c.set(a,b)}function q(a){return structuredClone(a)}function r(a=(0,g.getAgentDir)()){return(0,f.join)(a,"pi-web-session-state.json")}function s(a){let b;try{b=JSON.parse(a)}catch{return{ok:!1}}let c=(0,m.Jx)(b);return c?{ok:!0,state:c,raw:b}:{ok:!1}}function t(a){let b,c;try{b=(0,e.statSync)(a)}catch(c){let b=c?.code;if("ENOENT"===b||"ENOTDIR"===b)return o().reads.delete(a),(0,m.ly)();throw c}let d=o().reads.get(a);if(d&&d.mtimeMs===b.mtimeMs&&d.size===b.size&&d.ino===b.ino)return d.state;let f=(0,l.y)(a,4194304);if(void 0===f)return o().reads.delete(a),(0,m.ly)();let g=s(f);return g.ok?(c=g.state,p(a,c.revision)):(console.warn(`[pi-web] ${a} is not valid session UI state; reading it as empty until the next change sets it aside`),c=(0,m.ly)()),o().reads.set(a,{mtimeMs:b.mtimeMs,size:b.size,ino:b.ino,state:c}),c}function u(a){try{return q(t(a??r()))}catch(a){return console.warn(`[pi-web] could not read the session UI state: ${a instanceof Error?a.message:String(a)}`),(0,m.ly)()}}function v(a){try{return t(a??r()).revision}catch{return null}}function w(a,b){return(0,k.T)(A,a,async()=>{let c;(0,e.mkdirSync)((0,f.dirname)(a),{recursive:!0});try{c=await i().lock(a,B)}catch(a){if("ELOCKED"===a?.code)throw new C;throw a}try{let c,d=o().revisions.get(a)??0,f=(0,l.y)(a,4194304),g={},h=!1;if(void 0===f)c={...(0,m.ly)(),revision:d};else{let b=s(f);if(b.ok)for(let[a,d]of(c=b.state,Object.entries(b.raw)))z.has(a)||(g[a]=d);else{let b=`${a}.corrupt-${Date.now()}`;try{(0,e.renameSync)(a,b),console.warn(`[pi-web] ${a} could not be parsed; moved it to ${b} and started from an empty session UI state`)}catch(b){console.warn(`[pi-web] ${a} could not be parsed and could not be moved aside (${b instanceof Error?b.message:String(b)}); starting from an empty session UI state`)}c={...(0,m.ly)(),revision:d+1},h=!0}}let i=b(c);if(!i.changed&&!h)return q(c);let k={...i.state,version:m.fS,revision:c.revision+ +!!i.changed},n={version:k.version,revision:k.revision,sessions:k.sessions,projects:k.projects,...k.removedProjects&&Object.keys(k.removedProjects).length>0?{removedProjects:k.removedProjects}:{},...k.projectOrder?.length?{projectOrder:k.projectOrder}:{},...k.projectNames&&Object.keys(k.projectNames).length>0?{projectNames:k.projectNames}:{},...g};(0,j.$)(a,JSON.stringify(n,null,2)+"\n"),p(a,k.revision);try{let b=(0,e.statSync)(a);o().reads.set(a,{mtimeMs:b.mtimeMs,size:b.size,ino:b.ino,state:q(k)})}catch{o().reads.delete(a)}return q(k)}finally{try{await c()}catch{}}})}function x(a,b){let c;try{c=b??r()}catch(a){return Promise.reject(a)}return w(c,b=>(0,m.D7)(b,a,Date.now()))}async function y(a,b){let c=b??r(),d=[...new Set(a)];if(0===d.length)return;let e=a=>d.some(b=>Object.prototype.hasOwnProperty.call(a.sessions,b));e(t(c))&&await w(c,a=>{if(!e(a))return{state:a,changed:!1};let b={...a.sessions};for(let a of d)delete b[a];return{state:{...a,sessions:b},changed:!0}})}d()}catch(a){d(a)}})},21361:(a,b,c)=>{c.d(b,{f:()=>g});var d=c(29021),e=c(33873),f=c(19771);function g(a,b,c={}){let h=function(a,b={}){let c=b.nodeDir??(0,e.dirname)(f.execPath),g=b.fileExists??d.existsSync;for(let b of[(0,e.join)(c,"node_modules","npm","bin",`${a}-cli.js`),(0,e.join)(c,"..","lib","node_modules","npm","bin",`${a}-cli.js`)])try{if(g(b))return b}catch{}return null}(a,c);return h?{command:f.execPath,args:[h,...b]}:{command:a,args:b}}},65742:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Q:()=>u,t:()=>p});var e=c(79646),f=c(29021),g=c(33873),h=c(28354),i=c(75430),j=c(43618),k=c(21361),l=c(38363),m=c(72498),n=a([i,m]);[i,m]=n.then?(await n)():n;let v=(0,h.promisify)(e.execFile);function o(a){return"project"===a?"project":"global"}function p(a){let b=(0,l.e)(a);return b?null===(0,j.valid)(b.version??""):!!(a.startsWith("git:")||/^(https?|ssh|git):\/\//i.test(a))&&!function(a){let b=a.startsWith("git:")?a.slice(4).trim():a.trim(),c=b.match(/^git@[^:]+:(.+)$/)?.[1];if(c)return c.includes("@");if(b.includes("://"))try{return new URL(b).pathname.replace(/^\/+/,"").includes("@")}catch{return!1}let d=b.indexOf("/");return d>=0&&b.slice(d+1).includes("@")}(a)}function q(a,b,c){let d=(0,l.e)(a.source);return{source:a.source,scope:o(a.scope),displayName:d?.name??a.source,type:d?"npm":"git",state:b,message:c}}async function r(a,b,c){let d="npm"===a?(0,k.f)("npm",b):{command:a,args:b},{stdout:e}=await v(d.command,d.args,{cwd:c.cwd,env:c.env?{...process.env,...c.env}:process.env,encoding:"utf8",timeout:1e4});return e}async function s(a,b,c,d){if(!a.installedPath||!(0,f.existsSync)(a.installedPath))return q(a,"error","Package is not installed.");let e=(0,l.e)(a.source);if(!e)return q(a,"unsupported");let[h="npm",...i]=c??[];if(!h)return q(a,"error","Invalid npmCommand.");let k=function(a){let b=JSON.parse((0,f.readFileSync)((0,g.join)(a,"package.json"),"utf8"));if("string"!=typeof b.version||!(0,j.valid)(b.version))throw Error("Installed package version is unavailable.");return b.version}(a.installedPath),m=await d(h,[...i,"view",e.spec,"version","--json"],{cwd:b}),n=e.version?(0,j.validRange)(e.version)??void 0:void 0,o=function(a,b){let c=JSON.parse(a.trim());if("string"==typeof c&&(0,j.valid)(c))return c;if(Array.isArray(c)){let a=c.filter(a=>"string"==typeof a&&null!==(0,j.valid)(a)),d=b?(0,j.maxSatisfying)(a,b):a.sort(j.rcompare)[0];if(d)return d}throw Error("Unexpected response from npm view.")}(m,n);return q(a,(0,j.gt)(o,k)?"update-available":"up-to-date")}async function t(a,b){if(!a.installedPath||!(0,f.existsSync)(a.installedPath))return q(a,"error","Package is not installed.");let c={cwd:a.installedPath,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}},d=(await b("git",["rev-parse","HEAD"],c)).trim(),e=await b("git",["rev-parse","--abbrev-ref","@{upstream}"],c).then(a=>a.trim()).catch(()=>""),g=e.startsWith("origin/")?`refs/heads/${e.slice(7)}`:"HEAD",h=await b("git",["ls-remote","origin",g],c),i=h.match(/^([0-9a-f]{40,64})\s+/m)?.[1];if(!i)throw Error(`Failed to determine remote ${g}.`);return q(a,d===i?"up-to-date":"update-available")}async function u(a,b,c={}){let d=c.packages,e=c.npmCommand;if(!d){let b=(0,i.getAgentDir)(),c=(0,m.Y1)(a,b),f=i.SettingsManager.create(a,b,{projectTrusted:c.trusted});d=new i.DefaultPackageManager({cwd:a,agentDir:b,settingsManager:f}).listConfiguredPackages(),e??=f.getNpmCommand()}let f=d.filter(a=>!b?.source||a.source===b.source&&o(a.scope)===b.scope),g=c.runCommand??r;return Promise.all(f.map(async b=>{if(!p(b.source))return q(b,"unsupported","Pinned or local packages cannot be checked automatically.");if(/^(1|true|yes)$/i.test(process.env.PI_OFFLINE??""))return q(b,"error","Update checks are disabled while PI_OFFLINE=1.");try{return(0,l.e)(b.source)?await s(b,a,e,g):await t(b,g)}catch(a){return q(b,"error",a instanceof Error?a.message:String(a))}}))}d()}catch(a){d(a)}})},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>m,B7:()=>n,mc:()=>l,uK:()=>j.uK,wz:()=>e.wz});var e=c(25252),f=c(82536),g=c(40402),h=c(10879),i=c(12069),j=c(58864),k=a([g,h]);async function l(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,g.dQ)(),d=new Set;for(let a of c)a.cwd&&d.add((0,e.Nw)(a.cwd)),a.projectRoot&&d.add((0,e.Nw)(a.projectRoot));for(let a of(0,e.HM)())d.add(a);let f=(0,h.ej)();for(let[a,b]of Object.entries(f.projects))(0,i.KV)(f,a)||d.add((0,e.Nw)(b.root));return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function m(a,b){return(0,f.o4)(a,b)}function n(a,b){return(0,f.xk)(a,b)}[g,h]=k.then?(await k)():k,d()}catch(a){d(a)}})}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=9165,exports.ids=[9165],exports.modules={29165:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Dr:()=>y,Kb:()=>u,X2:()=>t,eD:()=>w,eP:()=>x,ks:()=>v});var e=c(73024),f=c(48161),g=c(76760),h=c(75430),i=c(2650),j=c(80547),k=c(57736),l=c(43084),m=c(49507),n=c(72498),o=c(66544),p=a([h,i,j,k,l,m,n]);function q(a){return a instanceof Error?a.message:String(a)}function r(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function s(a,b,c,d={}){return{status:a,body:{error:c,reason:b,...d}}}function t(a){return r(a)&&"number"==typeof a.status&&r(a.body)}function u(a){let{agentDir:b,project:c,internals:d,scope:e,name:f}=a,g=(0,k.vf)({agentDir:b,project:c,internals:d,scope:e,name:f});return g?void 0!==g.info.invalidError?g.info.invalidError:g.config?{config:g.config,configKey:g.info.configKey}:`MCP server "${f}" cannot be read`:`MCP server "${f}" is not listed`}async function v(a){if("string"!=typeof a||!a.trim()||!(0,g.isAbsolute)(a))return s(400,"cwd-invalid","cwd must be an absolute path");let b=await (0,j.mc)();if(!(0,j.B7)(a,b))return s(403,"cwd-denied","Access denied");let c=(0,g.resolve)(a),d=!1;try{d=(0,e.statSync)(c).isDirectory()}catch{}return d?{cwd:c,allowedRoots:b}:s(400,"cwd-not-directory","cwd must be a directory")}async function w(a){if((0,i.cu)())return s(409,"mcp-off",`${i.B6} is set, so Pi Web ${a}`);let b=await (0,m.U)();return b.ok?b:s(409,"mcp-off",`Pi Web cannot load the SDK's MCP modules: ${b.reason}`)}function x(a,b,c="The project is not trusted, so Pi Web does not start its MCP servers"){try{let d=(0,n.Y1)(a,b);if(void 0!==d.decisionError)return s(409,"trust-unreadable",d.decisionError);if(!0!==d.decision)return s(403,"project-untrusted",c);return}catch(a){return s(409,"trust-unreadable",q(a))}}async function y(a){var b;let c,d;if(!(0,o.EN)(a))return s(403,"request-denied","Untrusted API request");if(!(0,o.E2)(a))return s(415,"content-type","Content-Type must be application/json");try{c=await a.json()}catch{return s(400,"invalid-request","Invalid JSON body")}if(!r(c))return s(400,"invalid-request","Expected a JSON object");let e=(b=c.scope,"global"===b||"project"===b?b:void 0),g="string"==typeof c.name&&c.name.length>0&&c.name.length<=1024?c.name:void 0;if(!e||void 0===g)return s(400,"invalid-request",'scope must be "global" or "project", and name a server name');if(void 0!==c.cwd&&null!==c.cwd){let a=await v(c.cwd);if(t(a))return a;d=a}if("project"===e&&!d)return s(400,"invalid-request","A project server needs the project's cwd");let i=await w("connects no MCP server");if(t(i))return i;let j=(0,h.getAgentDir)();if("project"===e&&d){let a=x(d.cwd,j);if(a)return a}try{let a=(0,k.eS)({agentDir:j,scope:e,name:g,project:d});if(!a.ok){let b={path:a.path,..."server-missing"===a.reason?{name:g}:{}};if("unreadable"===a.reason)return s(500,"internal",a.error,b);return s(409,a.reason,a.error,b)}if(!r(a.value))return s(409,"entry-not-object",`${a.sourcePath} defines MCP server "${g}" as something other than an object`,{name:g});let b=u({agentDir:j,project:d,internals:i,scope:e,name:g});if("string"==typeof b)return s(409,"server-invalid",b,{name:g});let{config:c,configKey:h}=b;if((0,l.tF)(c,i))return s(409,"web-password",`"${g}" references PI_WEB_PASSWORD, so Pi Web does not connect it`,{name:g});return{scope:e,name:g,...d?{project:d}:{},agentDir:j,internals:i,sourcePath:a.sourcePath,configKey:h,config:c,cwd:d?.cwd??(0,f.homedir)()}}catch(a){return s(500,"internal",q(a))}}[h,i,j,k,l,m,n]=p.then?(await p)():p,d()}catch(a){d(a)}})},57736:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{B1:()=>w,Nv:()=>P,UQ:()=>F,Vy:()=>V,Y6:()=>S,Y_:()=>l.Y,eS:()=>R,fz:()=>B,nu:()=>G,q_:()=>U,vN:()=>m.vN,vf:()=>Q});var e=c(73024),f=c(76760),g=c(75430),h=c(2650),i=c(41228),j=c(10674),k=c(76609),l=c(11784),m=c(85825),n=c(3140),o=c(9993),p=c(66479),q=c(43084),r=c(58864),s=c(82536),t=c(49507),u=c(72498),v=a([g,h,i,j,q,t,u]);function w(a){return(0,f.join)(a,"mcp.json")}[g,h,i,j,q,t,u]=v.then?(await v)():v;let V=1048576,W=e.constants.O_RDONLY|(e.constants.O_NONBLOCK||0)|(e.constants.O_NOFOLLOW||0);function x(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function y(a){return a instanceof Error?a.message:String(a)}function z(a){try{return(0,e.realpathSync)(a)}catch{return(0,f.resolve)(a)}}function A(a,b,c){a.problems.push({reason:b,error:c})}function B(a,b){let c;try{c=(0,e.openSync)(a,W);let d=(0,e.fstatSync)(c),f=511&d.mode;if(!d.isFile())return{ok:!1,reason:"not-a-file",error:"not a regular file"};if(void 0===b)return{ok:!0,text:(0,e.readFileSync)(c,"utf8"),mode:f};if(d.size>b)return{ok:!1,reason:"too-large",error:`larger than ${b} bytes`};let g=b+1,h=[],i=0;for(;i<g;){let a=Buffer.alloc(Math.min(g-i,65536)),b=(0,e.readSync)(c,a,0,a.length,null);if(0===b)break;h.push(a.subarray(0,b)),i+=b}if(i>b)return{ok:!1,reason:"too-large",error:`larger than ${b} bytes`};return{ok:!0,text:Buffer.concat(h,i).toString("utf8"),mode:f}}catch(b){let a=b?.code;return{ok:!1,reason:"unreadable",error:y(b),...a?{code:a}:{}}}finally{void 0!==c&&(0,e.closeSync)(c)}}function C(a,b,c){let d=B(a,c);if(b.exists=!0,d.ok)return d.text;A(b,d.reason,d.error)}function D(a){let b,c=w(a),d={scope:"global",path:c,exists:!1,problems:[]};try{b=(0,e.realpathSync)(c)}catch(a){return"ENOENT"!==a?.code&&(d.exists=!0,A(d,"unreadable",y(a))),{info:d}}return(0,r.Eb)(b,(0,f.join)(z(a),"mcp.json"))||(d.realPath=b),{info:d,text:C(b,d,void 0)}}function E(a){try{return(0,e.lstatSync)(a).isSymbolicLink()}catch{return!1}}function F(a,b){let c,d=(0,f.join)(a,g.CONFIG_DIR_NAME,"mcp.json");if((0,s.TU)(d))return{kind:"refused",path:d,reason:"unreadable",error:"the path has a .. segment"};try{c=(0,e.realpathSync)(d)}catch(a){if(E(d))return{kind:"refused",path:d,reason:"link-dangling",error:"a symbolic link to nothing"};if("ENOENT"!==a?.code)return{kind:"refused",path:d,reason:"unreadable",error:y(a)};return{kind:"missing",path:d}}return(0,s.o4)(c,(0,s.qy)(b))?{kind:"found",path:d,realPath:c}:{kind:"refused",path:d,realPath:c,reason:"link-outside",error:"a symbolic link outside the folders Pi Web may read"}}function G(a,b){let c,d=(0,f.join)(a,g.CONFIG_DIR_NAME);if((0,s.TU)(d))return{ok:!1,reason:"unreadable",error:"the path has a .. segment"};try{c=(0,e.realpathSync)(d)}catch(b){if(E(d))return{ok:!1,reason:"link-dangling",error:"a symbolic link to nothing"};if("ENOENT"!==b?.code)return{ok:!1,reason:"unreadable",error:y(b)};try{c=(0,f.join)((0,e.realpathSync)(a),g.CONFIG_DIR_NAME)}catch(a){return{ok:!1,reason:"unreadable",error:y(a)}}}return(0,s.o4)(c,(0,s.qy)(b))?{ok:!0,realPath:(0,f.join)(c,"mcp.json")}:{ok:!1,reason:"link-outside",error:"a symbolic link outside the folders Pi Web may read"}}function H(a,b){let c=F(a,b),d={scope:"project",path:c.path,exists:!1,problems:[]};if("missing"===c.kind)return{info:d};let e=c.realPath;return(void 0===e||(0,r.Eb)(e,(0,f.join)(z(a),g.CONFIG_DIR_NAME,"mcp.json"))||(d.realPath=e),"refused"===c.kind)?(d.exists=!0,A(d,c.reason,c.error),{info:d}):{info:d,text:C(c.realPath,d,V)}}function I(a,b){let c;try{c=JSON.parse(b)}catch(c){return A(a,"unparsable",(0,l.Y)(c,b)),[]}if(!x(c)||void 0!==c.mcpServers&&!x(c.mcpServers))return A(a,"invalid-shape",'expected an object with an "mcpServers" object'),[];"boolean"==typeof c.autoEnableCodemode?a.autoEnableCodemode=c.autoEnableCodemode:void 0!==c.autoEnableCodemode&&A(a,"auto-enable-codemode-invalid","autoEnableCodemode must be a boolean");let d=Object.entries(x(c.mcpServers)?c.mcpServers:{});return"project"===a.scope&&d.length>200?(A(a,"too-many-servers",`declares ${d.length} servers, more than 200`),[]):d}let X=/\$(?:[$!]|\{([^}]*)\}|([A-Za-z_][A-Za-z0-9_]*))/g,Y=/^[A-Za-z_][A-Za-z0-9_]*$/;function J(a){let b=[];for(let[,c,d]of a.matchAll(X)){let a=void 0!==c?Y.test(c)?c:void 0:d;void 0===a||b.includes(a)||b.push(a)}return b}function K({kind:a,name:b}){return void 0===b?{kind:a}:{kind:a,name:b}}function L(a,b,c,d,{internals:e,authState:f,revealProjectCommands:g}){let h,i=e?.validateMcpServerConfig(a,b),j=x(b)?b:{},l="";try{l=(0,k.U2)(b,i)}catch(b){h=`server "${a}": cannot be read: ${y(b)}`}let m={name:a,scope:c,sourcePath:d,configKey:l,enabled:!1!==j.enabled,validated:void 0!==e,envNames:x(j.env)?Object.keys(j.env):[],headerNames:x(j.headers)?Object.keys(j.headers):[],usesOAuth:!1,commandFields:[],variableReferences:[],masked:!1};"string"==typeof i&&(m.invalidError=i),x(b)||(m.notAnObject=!0);let p=function(a,b){if(b){let{type:b}=a;return"string"==typeof a.url&&(void 0===b||"http"===b||"streamable-http"===b)?"http":"string"==typeof a.command&&(void 0===b||"stdio"===b)?"stdio":void 0}return"url"in a?"http":"command"in a?"stdio":void 0}(j,"string"==typeof i);if(p&&(m.transport=p),void 0!==i&&"string"!=typeof i){m.exposure=i.exposure??"codemode";let a=i.toolExposure?Object.keys(i.toolExposure).length:0;a>0&&(m.toolExposureCount=a)}"string"==typeof j.description&&j.description.trim()&&(m.description=j.description);let r="project"===c&&g;if("string"==typeof j.command){let a=r?{value:j.command,masked:!1}:(0,n.Iq)(j.command);m.command=a.value,m.masked||=a.masked}if(Array.isArray(j.args)){let a=j.args.filter(a=>"string"==typeof a),b=r?{args:a,masked:!1}:(0,n.oF)(a);m.args=b.args,m.masked||=b.masked}if("string"==typeof j.cwd&&(m.cwd=j.cwd),"string"==typeof j.url){let a=(0,n.yP)(j.url);m.url=a.value,m.masked||=a.masked}if("http"===p&&x(j.auth)&&"string"==typeof j.auth.provider&&j.auth.provider&&(m.authProvider=j.auth.provider),m.usesOAuth="http"===p&&!j.auth&&!m.headerNames.some(a=>"authorization"===a.toLowerCase()),m.usesOAuth&&f&&"string"==typeof j.url){let b=function(a,b,c){let d;try{d=(0,o.n_)(b,c)}catch{return}let e=a.get(d.key)??a.get(d.legacyKey);return{signedIn:e?.signedIn??!1,stored:void 0!==e}}(f,a,j.url);b&&(m.signedIn=b.signedIn,m.oauthStateStored=b.stored)}let s=e?a=>e.isCommandConfigValue(a):a=>a.startsWith("!"),t=(0,q.xW)(j);m.commandFields=t.filter(a=>s(a.value)).map(K);let u=e?a=>e.getConfigValueEnvVarNames(a):J;m.variableReferences=t.filter(a=>!s(a.value)).map(a=>({...K(a),variables:u(a.value)})).filter(a=>a.variables.length>0);let v=e?(0,q.tF)(j,e):t.find(a=>a.value.toUpperCase().includes(q.aS));v&&(m.webPasswordField=K(v));let w="url"in j&&!!j.auth,z={info:m,sendsProviderToken:w,value:b,...void 0!==i&&"string"!=typeof i?{config:i}:{}};return void 0!==h?(m.invalidError??=h,{...z,loads:!1}):{...z,loads:e?"string"!=typeof i:x(b)}}function M(a){return`mcp__${a.replace(/-/g,"_")}`}function N(a){let b=new Set;for(let c of a){if(!c.loads||c.info.override)continue;let{info:a}=c,d=[...b].find(b=>b!==a.name&&M(b)===M(a.name));if(void 0!==d){a.invalidError=`server "${a.name}" conflicts with "${d}"`,c.loads=!1;continue}if("project"===a.scope&&c.sendsProviderToken){a.invalidError=`server "${a.name}": auth is only allowed in the global mcp.json`,c.loads=!1;continue}b.add(a.name)}}function O(a){let b={internals:a.internals,authState:function(a){let b=(0,f.join)(a,"mcp-auth.json"),c=new Map;if(!(0,e.existsSync)(b))return c;try{let a=(0,e.readFileSync)(b,"utf8");if(!a.trim())return c;let d=JSON.parse(a);if(!x(d))return c;for(let[a,b]of Object.entries(d))c.set(a,{signedIn:x(b)&&x(b.tokens)&&"string"==typeof b.tokens.access_token});return c}catch{return}}(a.agentDir),revealProjectCommands:!0===a.projectUntrusted},c=[],d=[],g=D(a.agentDir);if(c.push(g.info),void 0!==g.text)for(let[a,c]of I(g.info,g.text))d.push(L(a,c,"global",g.info.path,b));if(a.internals&&N(d),a.project){let e=new Map(d.filter(a=>a.loads).map(a=>[a.info.name,a])),f=H(a.project.cwd,a.project.allowedRoots);if(c.push(f.info),void 0!==f.text)for(let[a,c]of I(f.info,f.text))d.push(x(c)&&(0,m.vN)(c)?function(a,b,c,d,e){let f=m.lW.filter(a=>Object.hasOwn(b,a)),g=(0,m.vR)(a,b,void 0!==c);if(void 0!==g||void 0===c){let c=L(a,b,"project",d,e);return c.info.invalidError=g,c.info.override={keys:f},{...c,loads:!1}}let h={...c.config??(x(c.value)?c.value:{}),...b},i=L(a,h,"project",d,{...e,revealProjectCommands:!1});return i.info.override={keys:f},i}(a,c,e.get(a),f.info.path,b):L(a,c,"project",f.info.path,b));a.internals&&N(d)}let h=d.filter(({info:a,loads:b})=>"project"===a.scope&&b),i=new Set(h.filter(({info:a})=>!a.override).map(({info:a})=>a.name)),j=new Set(h.filter(({info:a})=>a.override).map(({info:a})=>a.name)),k=new Set;for(let{info:a}of d)"global"===a.scope&&(i.has(a.name)&&(a.shadowedByProject=!0,k.add(a.name)),j.has(a.name)&&(a.overriddenByProject=!0));for(let{info:a}of d)"project"===a.scope&&k.has(a.name)&&(a.replacesGlobal=!0);return{files:c,described:d}}function P(a){let{files:b,described:c}=O(a);return{files:b,servers:c.map(({info:a})=>a)}}function Q(a){let b=O(a).described.find(({info:b})=>b.scope===a.scope&&b.name===a.name);if(b)return void 0===b.info.invalidError&&b.config?{info:b.info,config:b.config}:{info:b.info}}function R(a){let{scope:b,name:c,project:d}=a;if("project"===b&&!d)throw Error("a project entry needs the project");let{info:e,text:f}="global"!==b&&d?H(d.cwd,d.allowedRoots):D(a.agentDir),g=void 0===f?[]:I(e,f);for(let a of e.problems)if("auto-enable-codemode-invalid"!==a.reason)return{ok:!1,reason:a.reason,error:a.error,path:e.path};let h=g.find(([a])=>a===c);return h?{ok:!0,value:h[1],sourcePath:e.path}:{ok:!1,reason:"server-missing",error:`${e.path} does not define MCP server "${c}"`,path:e.path}}async function S(a){let b=await (0,t.U)(),{files:c,servers:d}=P({agentDir:a.agentDir,project:{cwd:a.cwd,allowedRoots:a.allowedRoots},internals:b.ok?b:void 0,projectUntrusted:!function(a,b){try{return!0===(0,u.Y1)(a,b).decision}catch{return!1}}(a.cwd,a.agentDir)}),e=c.find(a=>"project"===a.scope);if(!e)throw Error("the project file was not read");return{file:e,servers:d.filter(a=>"project"===a.scope)}}async function T(a,b,c){let d=await (0,h.t1)(),e={sandbox:d.checked?d.available?{state:"available"}:{state:"unavailable",error:d.reason}:{state:"not-checked"},builtinDisabled:b?.enabled===!1};b?.settingsPath&&(e.builtinSettingsPath=b.settingsPath);let f=b?.global??b;f?.enabled===!1&&(e.globalBuiltinSettingsPath=f.settingsPath??(0,j.WD)(a));try{e.preference=await (0,i.wS)((0,j.WD)(a))}catch(a){e.preferenceError=y(a)}let g=void 0===c?void 0:(0,i.Gc)(c);g&&(e.projectOverride=g);try{let b=(0,j.WD)(a),{mode:d,inlineBudget:f}=await (0,i.yH)(b);e.mode={...d,settingsPath:b};let g=void 0===c?void 0:(0,i.Rt)(c);g&&(e.mode.projectOverride=g),e.inlineBudget={...f,settingsPath:b,default:i.lU,max:i.mz};let h=void 0===c?void 0:(0,i.Uf)(c);h&&(e.inlineBudget.projectOverride=h)}catch(a){e.modeError=y(a),e.inlineBudgetError=e.modeError}return e}async function U(a){var b,c;let d,e,f,{agentDir:g,project:i,environment:j=process.env}=a,k=await (0,t.U)();if(i){d={cwd:i.cwd};try{d.trust=(0,u.Y1)(i.cwd,g)}catch(a){d.trustError=y(a)}let a=d.trust;if(a&&!a.requiresTrust&&null===a.decision&&void 0===a.decisionError){let a=(0,u.$C)(i.cwd,{agentDir:g,knownFolders:i.allowedRoots});d.trustFolder=a?{allowed:!1,reason:"trust-too-broad",breadth:a}:(0,u.mT)(i.cwd)?{allowed:!1,reason:"folder-not-fresh"}:{allowed:!0}}}let l=d?.trust?.trusted===!0;try{e=await (0,h.Vq)({agentDir:g,cwd:i?.cwd,projectTrusted:l})}catch(a){console.warn(`[pi-web] cannot read the extensions settings for Settings › MCP: ${y(a)}`)}let{files:m,servers:n}=P({agentDir:g,project:i,internals:k.ok?k:void 0,projectUntrusted:d?.trust?.decision!==!0}),o=m.filter(a=>!a.problems.some(a=>"auto-enable-codemode-invalid"!==a.reason));return{mcp:(b=e?.mcp,(0,h.cu)(j)?{available:!1,reason:"operator-disabled",error:`${h.B6} is set`}:k.ok?b&&!b.enabled?{available:!1,reason:"builtin-disabled",error:"the extensions setting turns builtin:mcp off",...b.settingsPath?{settingsPath:b.settingsPath}:{}}:{available:!0}:{available:!1,reason:"internals-unavailable",error:"Pi Web cannot load the SDK's MCP modules",detail:k.reason}),codemode:await T(g,e?.codemode,i&&l?i.cwd:void 0),files:m,servers:(0,p.Tx)(n,o),...e?.["tool-search"].enabled===!1?{toolSearchDisabled:e["tool-search"].settingsPath?{settingsPath:e["tool-search"].settingsPath}:{}}:{},...d?{project:d}:{},...(c=i?.cwd,(f=(0,p.Ul)(c))?{hostInactive:f}:{})}}d()}catch(a){d(a)}})},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>k,B7:()=>l,mc:()=>j,uK:()=>h.uK,wz:()=>e.wz});var e=c(25252),f=c(82536),g=c(40402),h=c(58864),i=a([g]);async function j(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,g.dQ)(),d=new Set;for(let a of c)a.cwd&&d.add((0,e.Nw)(a.cwd)),a.projectRoot&&d.add((0,e.Nw)(a.projectRoot));for(let a of(0,e.HM)())d.add(a);return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function k(a,b){return(0,f.o4)(a,b)}function l(a,b){return(0,f.xk)(a,b)}g=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})}};
|
|
1
|
+
"use strict";exports.id=9165,exports.ids=[9165],exports.modules={10879:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$q:()=>x,Vy:()=>v,bA:()=>y,ej:()=>u,yh:()=>C});var e=c(73024),f=c(76760),g=c(75430),h=c(80974),i=c.n(h),j=c(8102),k=c(63108),l=c(37431),m=c(12069),n=a([g]);g=(n.then?(await n)():n)[0];let z=new Set(["version","revision","sessions","projects","removedProjects","projectOrder","projectNames","__proto__"]),A=Symbol.for("pi-web:session-ui-state-write-queue"),B={realpath:!1,stale:1e4,retries:{retries:10,factor:2,minTimeout:25,maxTimeout:500},onCompromised:a=>{console.warn(`[pi-web] the session UI state lock was compromised: ${a.message}`)}};class C extends Error{constructor(a="Another process holds the session UI state lock"){super(a),this.name="SessionUiStateLockedError"}}function o(){return globalThis.__piWebSessionUiStateCache??={reads:new Map,revisions:new Map}}function p(a,b){let c=o().revisions;b>(c.get(a)??-1)&&c.set(a,b)}function q(a){return structuredClone(a)}function r(a=(0,g.getAgentDir)()){return(0,f.join)(a,"pi-web-session-state.json")}function s(a){let b;try{b=JSON.parse(a)}catch{return{ok:!1}}let c=(0,m.Jx)(b);return c?{ok:!0,state:c,raw:b}:{ok:!1}}function t(a){let b,c;try{b=(0,e.statSync)(a)}catch(c){let b=c?.code;if("ENOENT"===b||"ENOTDIR"===b)return o().reads.delete(a),(0,m.ly)();throw c}let d=o().reads.get(a);if(d&&d.mtimeMs===b.mtimeMs&&d.size===b.size&&d.ino===b.ino)return d.state;let f=(0,l.y)(a,4194304);if(void 0===f)return o().reads.delete(a),(0,m.ly)();let g=s(f);return g.ok?(c=g.state,p(a,c.revision)):(console.warn(`[pi-web] ${a} is not valid session UI state; reading it as empty until the next change sets it aside`),c=(0,m.ly)()),o().reads.set(a,{mtimeMs:b.mtimeMs,size:b.size,ino:b.ino,state:c}),c}function u(a){try{return q(t(a??r()))}catch(a){return console.warn(`[pi-web] could not read the session UI state: ${a instanceof Error?a.message:String(a)}`),(0,m.ly)()}}function v(a){try{return t(a??r()).revision}catch{return null}}function w(a,b){return(0,k.T)(A,a,async()=>{let c;(0,e.mkdirSync)((0,f.dirname)(a),{recursive:!0});try{c=await i().lock(a,B)}catch(a){if("ELOCKED"===a?.code)throw new C;throw a}try{let c,d=o().revisions.get(a)??0,f=(0,l.y)(a,4194304),g={},h=!1;if(void 0===f)c={...(0,m.ly)(),revision:d};else{let b=s(f);if(b.ok)for(let[a,d]of(c=b.state,Object.entries(b.raw)))z.has(a)||(g[a]=d);else{let b=`${a}.corrupt-${Date.now()}`;try{(0,e.renameSync)(a,b),console.warn(`[pi-web] ${a} could not be parsed; moved it to ${b} and started from an empty session UI state`)}catch(b){console.warn(`[pi-web] ${a} could not be parsed and could not be moved aside (${b instanceof Error?b.message:String(b)}); starting from an empty session UI state`)}c={...(0,m.ly)(),revision:d+1},h=!0}}let i=b(c);if(!i.changed&&!h)return q(c);let k={...i.state,version:m.fS,revision:c.revision+ +!!i.changed},n={version:k.version,revision:k.revision,sessions:k.sessions,projects:k.projects,...k.removedProjects&&Object.keys(k.removedProjects).length>0?{removedProjects:k.removedProjects}:{},...k.projectOrder?.length?{projectOrder:k.projectOrder}:{},...k.projectNames&&Object.keys(k.projectNames).length>0?{projectNames:k.projectNames}:{},...g};(0,j.$)(a,JSON.stringify(n,null,2)+"\n"),p(a,k.revision);try{let b=(0,e.statSync)(a);o().reads.set(a,{mtimeMs:b.mtimeMs,size:b.size,ino:b.ino,state:q(k)})}catch{o().reads.delete(a)}return q(k)}finally{try{await c()}catch{}}})}function x(a,b){let c;try{c=b??r()}catch(a){return Promise.reject(a)}return w(c,b=>(0,m.D7)(b,a,Date.now()))}async function y(a,b){let c=b??r(),d=[...new Set(a)];if(0===d.length)return;let e=a=>d.some(b=>Object.prototype.hasOwnProperty.call(a.sessions,b));e(t(c))&&await w(c,a=>{if(!e(a))return{state:a,changed:!1};let b={...a.sessions};for(let a of d)delete b[a];return{state:{...a,sessions:b},changed:!0}})}d()}catch(a){d(a)}})},29165:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Dr:()=>y,Kb:()=>u,X2:()=>t,eD:()=>w,eP:()=>x,ks:()=>v});var e=c(73024),f=c(48161),g=c(76760),h=c(75430),i=c(2650),j=c(80547),k=c(57736),l=c(43084),m=c(49507),n=c(72498),o=c(66544),p=a([h,i,j,k,l,m,n]);function q(a){return a instanceof Error?a.message:String(a)}function r(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function s(a,b,c,d={}){return{status:a,body:{error:c,reason:b,...d}}}function t(a){return r(a)&&"number"==typeof a.status&&r(a.body)}function u(a){let{agentDir:b,project:c,internals:d,scope:e,name:f}=a,g=(0,k.vf)({agentDir:b,project:c,internals:d,scope:e,name:f});return g?void 0!==g.info.invalidError?g.info.invalidError:g.config?{config:g.config,configKey:g.info.configKey}:`MCP server "${f}" cannot be read`:`MCP server "${f}" is not listed`}async function v(a){if("string"!=typeof a||!a.trim()||!(0,g.isAbsolute)(a))return s(400,"cwd-invalid","cwd must be an absolute path");let b=await (0,j.mc)();if(!(0,j.B7)(a,b))return s(403,"cwd-denied","Access denied");let c=(0,g.resolve)(a),d=!1;try{d=(0,e.statSync)(c).isDirectory()}catch{}return d?{cwd:c,allowedRoots:b}:s(400,"cwd-not-directory","cwd must be a directory")}async function w(a){if((0,i.cu)())return s(409,"mcp-off",`${i.B6} is set, so Pi Web ${a}`);let b=await (0,m.U)();return b.ok?b:s(409,"mcp-off",`Pi Web cannot load the SDK's MCP modules: ${b.reason}`)}function x(a,b,c="The project is not trusted, so Pi Web does not start its MCP servers"){try{let d=(0,n.Y1)(a,b);if(void 0!==d.decisionError)return s(409,"trust-unreadable",d.decisionError);if(!0!==d.decision)return s(403,"project-untrusted",c);return}catch(a){return s(409,"trust-unreadable",q(a))}}async function y(a){var b;let c,d;if(!(0,o.EN)(a))return s(403,"request-denied","Untrusted API request");if(!(0,o.E2)(a))return s(415,"content-type","Content-Type must be application/json");try{c=await a.json()}catch{return s(400,"invalid-request","Invalid JSON body")}if(!r(c))return s(400,"invalid-request","Expected a JSON object");let e=(b=c.scope,"global"===b||"project"===b?b:void 0),g="string"==typeof c.name&&c.name.length>0&&c.name.length<=1024?c.name:void 0;if(!e||void 0===g)return s(400,"invalid-request",'scope must be "global" or "project", and name a server name');if(void 0!==c.cwd&&null!==c.cwd){let a=await v(c.cwd);if(t(a))return a;d=a}if("project"===e&&!d)return s(400,"invalid-request","A project server needs the project's cwd");let i=await w("connects no MCP server");if(t(i))return i;let j=(0,h.getAgentDir)();if("project"===e&&d){let a=x(d.cwd,j);if(a)return a}try{let a=(0,k.eS)({agentDir:j,scope:e,name:g,project:d});if(!a.ok){let b={path:a.path,..."server-missing"===a.reason?{name:g}:{}};if("unreadable"===a.reason)return s(500,"internal",a.error,b);return s(409,a.reason,a.error,b)}if(!r(a.value))return s(409,"entry-not-object",`${a.sourcePath} defines MCP server "${g}" as something other than an object`,{name:g});let b=u({agentDir:j,project:d,internals:i,scope:e,name:g});if("string"==typeof b)return s(409,"server-invalid",b,{name:g});let{config:c,configKey:h}=b;if((0,l.tF)(c,i))return s(409,"web-password",`"${g}" references PI_WEB_PASSWORD, so Pi Web does not connect it`,{name:g});return{scope:e,name:g,...d?{project:d}:{},agentDir:j,internals:i,sourcePath:a.sourcePath,configKey:h,config:c,cwd:d?.cwd??(0,f.homedir)()}}catch(a){return s(500,"internal",q(a))}}[h,i,j,k,l,m,n]=p.then?(await p)():p,d()}catch(a){d(a)}})},57736:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{B1:()=>w,Nv:()=>P,UQ:()=>F,Vy:()=>V,Y6:()=>S,Y_:()=>l.Y,eS:()=>R,fz:()=>B,nu:()=>G,q_:()=>U,vN:()=>m.vN,vf:()=>Q});var e=c(73024),f=c(76760),g=c(75430),h=c(2650),i=c(41228),j=c(10674),k=c(76609),l=c(11784),m=c(85825),n=c(3140),o=c(9993),p=c(66479),q=c(43084),r=c(58864),s=c(82536),t=c(49507),u=c(72498),v=a([g,h,i,j,q,t,u]);function w(a){return(0,f.join)(a,"mcp.json")}[g,h,i,j,q,t,u]=v.then?(await v)():v;let V=1048576,W=e.constants.O_RDONLY|(e.constants.O_NONBLOCK||0)|(e.constants.O_NOFOLLOW||0);function x(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function y(a){return a instanceof Error?a.message:String(a)}function z(a){try{return(0,e.realpathSync)(a)}catch{return(0,f.resolve)(a)}}function A(a,b,c){a.problems.push({reason:b,error:c})}function B(a,b){let c;try{c=(0,e.openSync)(a,W);let d=(0,e.fstatSync)(c),f=511&d.mode;if(!d.isFile())return{ok:!1,reason:"not-a-file",error:"not a regular file"};if(void 0===b)return{ok:!0,text:(0,e.readFileSync)(c,"utf8"),mode:f};if(d.size>b)return{ok:!1,reason:"too-large",error:`larger than ${b} bytes`};let g=b+1,h=[],i=0;for(;i<g;){let a=Buffer.alloc(Math.min(g-i,65536)),b=(0,e.readSync)(c,a,0,a.length,null);if(0===b)break;h.push(a.subarray(0,b)),i+=b}if(i>b)return{ok:!1,reason:"too-large",error:`larger than ${b} bytes`};return{ok:!0,text:Buffer.concat(h,i).toString("utf8"),mode:f}}catch(b){let a=b?.code;return{ok:!1,reason:"unreadable",error:y(b),...a?{code:a}:{}}}finally{void 0!==c&&(0,e.closeSync)(c)}}function C(a,b,c){let d=B(a,c);if(b.exists=!0,d.ok)return d.text;A(b,d.reason,d.error)}function D(a){let b,c=w(a),d={scope:"global",path:c,exists:!1,problems:[]};try{b=(0,e.realpathSync)(c)}catch(a){return"ENOENT"!==a?.code&&(d.exists=!0,A(d,"unreadable",y(a))),{info:d}}return(0,r.Eb)(b,(0,f.join)(z(a),"mcp.json"))||(d.realPath=b),{info:d,text:C(b,d,void 0)}}function E(a){try{return(0,e.lstatSync)(a).isSymbolicLink()}catch{return!1}}function F(a,b){let c,d=(0,f.join)(a,g.CONFIG_DIR_NAME,"mcp.json");if((0,s.TU)(d))return{kind:"refused",path:d,reason:"unreadable",error:"the path has a .. segment"};try{c=(0,e.realpathSync)(d)}catch(a){if(E(d))return{kind:"refused",path:d,reason:"link-dangling",error:"a symbolic link to nothing"};if("ENOENT"!==a?.code)return{kind:"refused",path:d,reason:"unreadable",error:y(a)};return{kind:"missing",path:d}}return(0,s.o4)(c,(0,s.qy)(b))?{kind:"found",path:d,realPath:c}:{kind:"refused",path:d,realPath:c,reason:"link-outside",error:"a symbolic link outside the folders Pi Web may read"}}function G(a,b){let c,d=(0,f.join)(a,g.CONFIG_DIR_NAME);if((0,s.TU)(d))return{ok:!1,reason:"unreadable",error:"the path has a .. segment"};try{c=(0,e.realpathSync)(d)}catch(b){if(E(d))return{ok:!1,reason:"link-dangling",error:"a symbolic link to nothing"};if("ENOENT"!==b?.code)return{ok:!1,reason:"unreadable",error:y(b)};try{c=(0,f.join)((0,e.realpathSync)(a),g.CONFIG_DIR_NAME)}catch(a){return{ok:!1,reason:"unreadable",error:y(a)}}}return(0,s.o4)(c,(0,s.qy)(b))?{ok:!0,realPath:(0,f.join)(c,"mcp.json")}:{ok:!1,reason:"link-outside",error:"a symbolic link outside the folders Pi Web may read"}}function H(a,b){let c=F(a,b),d={scope:"project",path:c.path,exists:!1,problems:[]};if("missing"===c.kind)return{info:d};let e=c.realPath;return(void 0===e||(0,r.Eb)(e,(0,f.join)(z(a),g.CONFIG_DIR_NAME,"mcp.json"))||(d.realPath=e),"refused"===c.kind)?(d.exists=!0,A(d,c.reason,c.error),{info:d}):{info:d,text:C(c.realPath,d,V)}}function I(a,b){let c;try{c=JSON.parse(b)}catch(c){return A(a,"unparsable",(0,l.Y)(c,b)),[]}if(!x(c)||void 0!==c.mcpServers&&!x(c.mcpServers))return A(a,"invalid-shape",'expected an object with an "mcpServers" object'),[];"boolean"==typeof c.autoEnableCodemode?a.autoEnableCodemode=c.autoEnableCodemode:void 0!==c.autoEnableCodemode&&A(a,"auto-enable-codemode-invalid","autoEnableCodemode must be a boolean");let d=Object.entries(x(c.mcpServers)?c.mcpServers:{});return"project"===a.scope&&d.length>200?(A(a,"too-many-servers",`declares ${d.length} servers, more than 200`),[]):d}let X=/\$(?:[$!]|\{([^}]*)\}|([A-Za-z_][A-Za-z0-9_]*))/g,Y=/^[A-Za-z_][A-Za-z0-9_]*$/;function J(a){let b=[];for(let[,c,d]of a.matchAll(X)){let a=void 0!==c?Y.test(c)?c:void 0:d;void 0===a||b.includes(a)||b.push(a)}return b}function K({kind:a,name:b}){return void 0===b?{kind:a}:{kind:a,name:b}}function L(a,b,c,d,{internals:e,authState:f,revealProjectCommands:g}){let h,i=e?.validateMcpServerConfig(a,b),j=x(b)?b:{},l="";try{l=(0,k.U2)(b,i)}catch(b){h=`server "${a}": cannot be read: ${y(b)}`}let m={name:a,scope:c,sourcePath:d,configKey:l,enabled:!1!==j.enabled,validated:void 0!==e,envNames:x(j.env)?Object.keys(j.env):[],headerNames:x(j.headers)?Object.keys(j.headers):[],usesOAuth:!1,commandFields:[],variableReferences:[],masked:!1};"string"==typeof i&&(m.invalidError=i),x(b)||(m.notAnObject=!0);let p=function(a,b){if(b){let{type:b}=a;return"string"==typeof a.url&&(void 0===b||"http"===b||"streamable-http"===b)?"http":"string"==typeof a.command&&(void 0===b||"stdio"===b)?"stdio":void 0}return"url"in a?"http":"command"in a?"stdio":void 0}(j,"string"==typeof i);if(p&&(m.transport=p),void 0!==i&&"string"!=typeof i){m.exposure=i.exposure??"codemode";let a=i.toolExposure?Object.keys(i.toolExposure).length:0;a>0&&(m.toolExposureCount=a)}"string"==typeof j.description&&j.description.trim()&&(m.description=j.description);let r="project"===c&&g;if("string"==typeof j.command){let a=r?{value:j.command,masked:!1}:(0,n.Iq)(j.command);m.command=a.value,m.masked||=a.masked}if(Array.isArray(j.args)){let a=j.args.filter(a=>"string"==typeof a),b=r?{args:a,masked:!1}:(0,n.oF)(a);m.args=b.args,m.masked||=b.masked}if("string"==typeof j.cwd&&(m.cwd=j.cwd),"string"==typeof j.url){let a=(0,n.yP)(j.url);m.url=a.value,m.masked||=a.masked}if("http"===p&&x(j.auth)&&"string"==typeof j.auth.provider&&j.auth.provider&&(m.authProvider=j.auth.provider),m.usesOAuth="http"===p&&!j.auth&&!m.headerNames.some(a=>"authorization"===a.toLowerCase()),m.usesOAuth&&f&&"string"==typeof j.url){let b=function(a,b,c){let d;try{d=(0,o.n_)(b,c)}catch{return}let e=a.get(d.key)??a.get(d.legacyKey);return{signedIn:e?.signedIn??!1,stored:void 0!==e}}(f,a,j.url);b&&(m.signedIn=b.signedIn,m.oauthStateStored=b.stored)}let s=e?a=>e.isCommandConfigValue(a):a=>a.startsWith("!"),t=(0,q.xW)(j);m.commandFields=t.filter(a=>s(a.value)).map(K);let u=e?a=>e.getConfigValueEnvVarNames(a):J;m.variableReferences=t.filter(a=>!s(a.value)).map(a=>({...K(a),variables:u(a.value)})).filter(a=>a.variables.length>0);let v=e?(0,q.tF)(j,e):t.find(a=>a.value.toUpperCase().includes(q.aS));v&&(m.webPasswordField=K(v));let w="url"in j&&!!j.auth,z={info:m,sendsProviderToken:w,value:b,...void 0!==i&&"string"!=typeof i?{config:i}:{}};return void 0!==h?(m.invalidError??=h,{...z,loads:!1}):{...z,loads:e?"string"!=typeof i:x(b)}}function M(a){return`mcp__${a.replace(/-/g,"_")}`}function N(a){let b=new Set;for(let c of a){if(!c.loads||c.info.override)continue;let{info:a}=c,d=[...b].find(b=>b!==a.name&&M(b)===M(a.name));if(void 0!==d){a.invalidError=`server "${a.name}" conflicts with "${d}"`,c.loads=!1;continue}if("project"===a.scope&&c.sendsProviderToken){a.invalidError=`server "${a.name}": auth is only allowed in the global mcp.json`,c.loads=!1;continue}b.add(a.name)}}function O(a){let b={internals:a.internals,authState:function(a){let b=(0,f.join)(a,"mcp-auth.json"),c=new Map;if(!(0,e.existsSync)(b))return c;try{let a=(0,e.readFileSync)(b,"utf8");if(!a.trim())return c;let d=JSON.parse(a);if(!x(d))return c;for(let[a,b]of Object.entries(d))c.set(a,{signedIn:x(b)&&x(b.tokens)&&"string"==typeof b.tokens.access_token});return c}catch{return}}(a.agentDir),revealProjectCommands:!0===a.projectUntrusted},c=[],d=[],g=D(a.agentDir);if(c.push(g.info),void 0!==g.text)for(let[a,c]of I(g.info,g.text))d.push(L(a,c,"global",g.info.path,b));if(a.internals&&N(d),a.project){let e=new Map(d.filter(a=>a.loads).map(a=>[a.info.name,a])),f=H(a.project.cwd,a.project.allowedRoots);if(c.push(f.info),void 0!==f.text)for(let[a,c]of I(f.info,f.text))d.push(x(c)&&(0,m.vN)(c)?function(a,b,c,d,e){let f=m.lW.filter(a=>Object.hasOwn(b,a)),g=(0,m.vR)(a,b,void 0!==c);if(void 0!==g||void 0===c){let c=L(a,b,"project",d,e);return c.info.invalidError=g,c.info.override={keys:f},{...c,loads:!1}}let h={...c.config??(x(c.value)?c.value:{}),...b},i=L(a,h,"project",d,{...e,revealProjectCommands:!1});return i.info.override={keys:f},i}(a,c,e.get(a),f.info.path,b):L(a,c,"project",f.info.path,b));a.internals&&N(d)}let h=d.filter(({info:a,loads:b})=>"project"===a.scope&&b),i=new Set(h.filter(({info:a})=>!a.override).map(({info:a})=>a.name)),j=new Set(h.filter(({info:a})=>a.override).map(({info:a})=>a.name)),k=new Set;for(let{info:a}of d)"global"===a.scope&&(i.has(a.name)&&(a.shadowedByProject=!0,k.add(a.name)),j.has(a.name)&&(a.overriddenByProject=!0));for(let{info:a}of d)"project"===a.scope&&k.has(a.name)&&(a.replacesGlobal=!0);return{files:c,described:d}}function P(a){let{files:b,described:c}=O(a);return{files:b,servers:c.map(({info:a})=>a)}}function Q(a){let b=O(a).described.find(({info:b})=>b.scope===a.scope&&b.name===a.name);if(b)return void 0===b.info.invalidError&&b.config?{info:b.info,config:b.config}:{info:b.info}}function R(a){let{scope:b,name:c,project:d}=a;if("project"===b&&!d)throw Error("a project entry needs the project");let{info:e,text:f}="global"!==b&&d?H(d.cwd,d.allowedRoots):D(a.agentDir),g=void 0===f?[]:I(e,f);for(let a of e.problems)if("auto-enable-codemode-invalid"!==a.reason)return{ok:!1,reason:a.reason,error:a.error,path:e.path};let h=g.find(([a])=>a===c);return h?{ok:!0,value:h[1],sourcePath:e.path}:{ok:!1,reason:"server-missing",error:`${e.path} does not define MCP server "${c}"`,path:e.path}}async function S(a){let b=await (0,t.U)(),{files:c,servers:d}=P({agentDir:a.agentDir,project:{cwd:a.cwd,allowedRoots:a.allowedRoots},internals:b.ok?b:void 0,projectUntrusted:!function(a,b){try{return!0===(0,u.Y1)(a,b).decision}catch{return!1}}(a.cwd,a.agentDir)}),e=c.find(a=>"project"===a.scope);if(!e)throw Error("the project file was not read");return{file:e,servers:d.filter(a=>"project"===a.scope)}}async function T(a,b,c){let d=await (0,h.t1)(),e={sandbox:d.checked?d.available?{state:"available"}:{state:"unavailable",error:d.reason}:{state:"not-checked"},builtinDisabled:b?.enabled===!1};b?.settingsPath&&(e.builtinSettingsPath=b.settingsPath);let f=b?.global??b;f?.enabled===!1&&(e.globalBuiltinSettingsPath=f.settingsPath??(0,j.WD)(a));try{e.preference=await (0,i.wS)((0,j.WD)(a))}catch(a){e.preferenceError=y(a)}let g=void 0===c?void 0:(0,i.Gc)(c);g&&(e.projectOverride=g);try{let b=(0,j.WD)(a),{mode:d,inlineBudget:f}=await (0,i.yH)(b);e.mode={...d,settingsPath:b};let g=void 0===c?void 0:(0,i.Rt)(c);g&&(e.mode.projectOverride=g),e.inlineBudget={...f,settingsPath:b,default:i.lU,max:i.mz};let h=void 0===c?void 0:(0,i.Uf)(c);h&&(e.inlineBudget.projectOverride=h)}catch(a){e.modeError=y(a),e.inlineBudgetError=e.modeError}return e}async function U(a){var b,c;let d,e,f,{agentDir:g,project:i,environment:j=process.env}=a,k=await (0,t.U)();if(i){d={cwd:i.cwd};try{d.trust=(0,u.Y1)(i.cwd,g)}catch(a){d.trustError=y(a)}let a=d.trust;if(a&&!a.requiresTrust&&null===a.decision&&void 0===a.decisionError){let a=(0,u.$C)(i.cwd,{agentDir:g,knownFolders:i.allowedRoots});d.trustFolder=a?{allowed:!1,reason:"trust-too-broad",breadth:a}:(0,u.mT)(i.cwd)?{allowed:!1,reason:"folder-not-fresh"}:{allowed:!0}}}let l=d?.trust?.trusted===!0;try{e=await (0,h.Vq)({agentDir:g,cwd:i?.cwd,projectTrusted:l})}catch(a){console.warn(`[pi-web] cannot read the extensions settings for Settings › MCP: ${y(a)}`)}let{files:m,servers:n}=P({agentDir:g,project:i,internals:k.ok?k:void 0,projectUntrusted:d?.trust?.decision!==!0}),o=m.filter(a=>!a.problems.some(a=>"auto-enable-codemode-invalid"!==a.reason));return{mcp:(b=e?.mcp,(0,h.cu)(j)?{available:!1,reason:"operator-disabled",error:`${h.B6} is set`}:k.ok?b&&!b.enabled?{available:!1,reason:"builtin-disabled",error:"the extensions setting turns builtin:mcp off",...b.settingsPath?{settingsPath:b.settingsPath}:{}}:{available:!0}:{available:!1,reason:"internals-unavailable",error:"Pi Web cannot load the SDK's MCP modules",detail:k.reason}),codemode:await T(g,e?.codemode,i&&l?i.cwd:void 0),files:m,servers:(0,p.Tx)(n,o),...e?.["tool-search"].enabled===!1?{toolSearchDisabled:e["tool-search"].settingsPath?{settingsPath:e["tool-search"].settingsPath}:{}}:{},...d?{project:d}:{},...(c=i?.cwd,(f=(0,p.Ul)(c))?{hostInactive:f}:{})}}d()}catch(a){d(a)}})},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>m,B7:()=>n,mc:()=>l,uK:()=>j.uK,wz:()=>e.wz});var e=c(25252),f=c(82536),g=c(40402),h=c(10879),i=c(12069),j=c(58864),k=a([g,h]);async function l(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,g.dQ)(),d=new Set;for(let a of c)a.cwd&&d.add((0,e.Nw)(a.cwd)),a.projectRoot&&d.add((0,e.Nw)(a.projectRoot));for(let a of(0,e.HM)())d.add(a);let f=(0,h.ej)();for(let[a,b]of Object.entries(f.projects))(0,i.KV)(f,a)||d.add((0,e.Nw)(b.root));return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function m(a,b){return(0,f.o4)(a,b)}function n(a,b){return(0,f.xk)(a,b)}[g,h]=k.then?(await k)():k,d()}catch(a){d(a)}})}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/
|
|
1
|
+
globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/iKNuUVRZa7JT6IPMMtnRe/_buildManifest.js","static/iKNuUVRZa7JT6IPMMtnRe/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-7f5c25954b44b5fb.js","static/chunks/4bd1b696-8a4ab4fdf0ae305a.js","static/chunks/3794-6f271a1eb27dfa20.js","static/chunks/main-app-a9b79d5b2e6391f2.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__REACT_LOADABLE_MANIFEST='{"app\\\\pet-preview\\\\page.tsx -> @/components/PetModelPreviewScene":{"id":16451,"files":["static/chunks/b536a0f1.4d27c1da07bf419e.js","static/chunks/bd904a5c.e6092d6d516b725a.js","static/chunks/393.af859e257b3c6844.js","static/chunks/6451.f1dfbea3f63637a1.js"]},"components\\\\MermaidBlock.tsx -> mermaid":{"id":43328,"files":["static/chunks/26d302b2.cd19dc0940cb3e75.js","static/chunks/ea233666.528d9a11a2c6fe2f.js","static/chunks/3308.935f7625e681e15a.js"]},"components\\\\PetLivingPortrait.tsx -> ./PetPortraitMotion":{"id":75455,"files":["static/chunks/5455.af2fa5ae4e041807.js"]},"hooks\\\\useAgentSession.ts -> @/lib/tool-presets":{"id":14755,"files":[]},"lib\\\\prism-languages.ts -> refractor/all":{"id":61326,"files":["static/chunks/1326.72decfb808c97abe.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/architecture-7GRP2DOG.mjs":{"id":84263,"files":["static/chunks/4263.ffa8d9bd8a0faaae.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/cynefin-OW5HDTMX.mjs":{"id":93016,"files":["static/chunks/3016.406e568aa95ff867.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/eventmodeling-NTZA5JFV.mjs":{"id":78803,"files":["static/chunks/8803.75bde095fe3613f5.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/gitGraph-4MIJSDKK.mjs":{"id":50331,"files":["static/chunks/331.fc5d78e1e91daf43.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/info-A6RAGUB7.mjs":{"id":23831,"files":["static/chunks/3831.25ae62d10dccc27a.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/packet-AYTQ26CC.mjs":{"id":99389,"files":["static/chunks/9389.906fe7aa9cd6a170.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/pie-WAS4IAKB.mjs":{"id":13510,"files":["static/chunks/3510.5d4d1c79533e080c.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/radar-RG4KPBEZ.mjs":{"id":53189,"files":["static/chunks/3189.b048866768087750.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-74A4TZTK.mjs":{"id":82585,"files":["static/chunks/2585.4d6aa847c780c666.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-abnf-HS5TGJTU.mjs":{"id":83064,"files":["static/chunks/3064.3a2a1e7cd4fdca5f.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-ebnf-LZEXJU2U.mjs":{"id":72968,"files":["static/chunks/587.d52737d7288c11b4.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-peg-WCYAUIDC.mjs":{"id":5354,"files":["static/chunks/5354.b559c717a607dc5c.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/treeView-Q6P3EWNA.mjs":{"id":10364,"files":["static/chunks/364.ce5400a9dd70b9dc.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/treemap-WGGIJYW6.mjs":{"id":92600,"files":["static/chunks/2600.45ba17a0f756fc31.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/wardley-WFR3VGLG.mjs":{"id":98216,"files":["static/chunks/8216.64a72d4d35ea7be0.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-2E4U76K2.mjs -> ./sizeCapture-INFHLROL.mjs":{"id":53789,"files":["static/chunks/3789.c418b69121761983.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-DU6HZSFF.mjs -> katex":{"id":71876,"files":[]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-TLUHSLCS.mjs -> ./cose-bilkent-JH36ORCC.mjs":{"id":50370,"files":["static/chunks/90542734.90283a0c0c838d51.js","static/chunks/370.a485dd5092c76362.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-TLUHSLCS.mjs -> ./dagre-GXQ25YYZ.mjs":{"id":20966,"files":["static/chunks/2768.1a75ba9e2be767cf.js","static/chunks/966.7ab226a15142fae2.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-TLUHSLCS.mjs -> ./swimlanes-42K2YHIH.mjs":{"id":58070,"files":["static/chunks/52733464.74fafefbfa340fc8.js","static/chunks/2619.9431a3f48da8eef4.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/abnfDiagram-VCTEODGH.mjs":{"id":80872,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/872.96937e758ddce860.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/architectureDiagram-5GKGNRK7.mjs":{"id":49884,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/90542734.90283a0c0c838d51.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/9884.fca67f18c0fb2808.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/blockDiagram-I7D4REHJ.mjs":{"id":14159,"files":["static/chunks/4159.8f53338a07b26845.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/c4Diagram-7LVT6UL2.mjs":{"id":71974,"files":["static/chunks/a339c874.7657a67d1b0d46c1.js","static/chunks/790.45f73b5eb2e089eb.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/classDiagram-ZZMXUADV.mjs":{"id":830,"files":["static/chunks/405.7027b68fbb48582a.js","static/chunks/830.a6da04c322e3204a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/classDiagram-v2-VYDZK3BY.mjs":{"id":42280,"files":["static/chunks/405.7027b68fbb48582a.js","static/chunks/2280.e03ab3748922284c.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/cynefinDiagram-5FMLGOSQ.mjs":{"id":71519,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/1519.2f596e5f5af9ef57.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-S7CK7UJ4.mjs":{"id":28663,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/8663.7deb45d41d190483.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-UQ7AKVKN.mjs":{"id":32931,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/2931.c5527c92f7264e9a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-VSXAHHWV.mjs":{"id":57806,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/7806.a903780fcfa3a30e.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-VX7I27RA.mjs":{"id":11213,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/1213.4848a5579bece837.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-Z3DM3KII.mjs":{"id":83217,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/3217.457eee26edea225c.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/ebnfDiagram-PWID7BFC.mjs":{"id":73174,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/3174.03fbed7b7d7a8256.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/erDiagram-RLTQ6QDP.mjs":{"id":49472,"files":["static/chunks/9472.08db7006e4a030a4.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/flowDiagram-HODETNUW.mjs":{"id":47997,"files":["static/chunks/60c48509.2ba44b5cbe52c6e7.js","static/chunks/9647.29c5a9819b36fcda.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/ganttDiagram-EL5Y4UJY.mjs":{"id":14208,"files":["static/chunks/4208.e3c7f2d5c26dcf2e.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/gitGraphDiagram-WWUBYQGX.mjs":{"id":15949,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/5949.54e8a766895688d7.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/infoDiagram-27XIBGKW.mjs":{"id":60514,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/514.b804c51b26f5e126.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/ishikawaDiagram-5VMMS53U.mjs":{"id":59379,"files":["static/chunks/9379.979bec4531e0611a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/journeyDiagram-3NMN7TZE.mjs":{"id":56361,"files":["static/chunks/6361.4b1fa56fca9b6356.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/kanban-definition-UXKFOSKX.mjs":{"id":54592,"files":["static/chunks/4592.507c41f345e21bee.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/mindmap-definition-YA3MSWOX.mjs":{"id":93052,"files":["static/chunks/3052.5da5bde6a131930a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/pegDiagram-XKGWAZYB.mjs":{"id":57236,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/7236.55a9728d35f5b8a6.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/pieDiagram-E7YTZNPT.mjs":{"id":95448,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/5448.23a76c3983fec0f6.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/quadrantDiagram-AXDQQJYC.mjs":{"id":85270,"files":["static/chunks/5270.2b9a21b6ce8fd8d2.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/railroadDiagram-O6MQD6OU.mjs":{"id":26968,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/6968.b80277c724dbc96e.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/requirementDiagram-BXWQKSXE.mjs":{"id":38501,"files":["static/chunks/8501.3b0a97ac3e782a0f.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/sankeyDiagram-P5KCCOFB.mjs":{"id":44561,"files":["static/chunks/4561.70303588b0cd3621.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/sequenceDiagram-WJ2MYXX4.mjs":{"id":51901,"files":["static/chunks/e413bedd.1332b3d1558778d6.js","static/chunks/4035.f5bcc2e4f0beee2b.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/stateDiagram-D77RDMKH.mjs":{"id":67390,"files":["static/chunks/2768.1a75ba9e2be767cf.js","static/chunks/8378.6acf715f56997572.js","static/chunks/7390.bc7f4ed9f76fe9e1.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/stateDiagram-v2-MP3YSRHH.mjs":{"id":52589,"files":["static/chunks/8378.6acf715f56997572.js","static/chunks/2589.e456c324416f9615.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/swimlanesDiagram-VR7AAH4N.mjs":{"id":47113,"files":["static/chunks/60c48509.2ba44b5cbe52c6e7.js","static/chunks/975.710b5962d34d4598.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/timeline-definition-24CTP7MA.mjs":{"id":5909,"files":["static/chunks/5909.172aa3edf289b590.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/vennDiagram-4TSXK5OY.mjs":{"id":4020,"files":["static/chunks/4020.3cc19c463c49f969.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/wardleyDiagram-VM6X3IG4.mjs":{"id":12521,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/2521.2ba812532f472610.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/xychartDiagram-S5SC5T6Z.mjs":{"id":44799,"files":["static/chunks/4799.1d3f2e30954503b8.js"]},"node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_app":{"id":41966,"files":["static/chunks/1966.f39c40f8eb9f3c5a.js"]},"node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_error":{"id":3899,"files":["static/chunks/3899.040cf000a0a52ee8.js"]}}';
|
|
1
|
+
self.__REACT_LOADABLE_MANIFEST='{"app\\\\pet-preview\\\\page.tsx -> @/components/PetModelPreviewScene":{"id":16451,"files":["static/chunks/b536a0f1.4d27c1da07bf419e.js","static/chunks/bd904a5c.e6092d6d516b725a.js","static/chunks/393.af859e257b3c6844.js","static/chunks/6451.f1dfbea3f63637a1.js"]},"components\\\\MermaidBlock.tsx -> mermaid":{"id":43328,"files":["static/chunks/26d302b2.cd19dc0940cb3e75.js","static/chunks/ea233666.528d9a11a2c6fe2f.js","static/chunks/3308.935f7625e681e15a.js"]},"components\\\\PetLivingPortrait.tsx -> ./PetPortraitMotion":{"id":75455,"files":["static/chunks/5455.0653c79e4997724a.js"]},"hooks\\\\useAgentSession.ts -> @/lib/tool-presets":{"id":14755,"files":[]},"lib\\\\prism-languages.ts -> refractor/all":{"id":61326,"files":["static/chunks/1326.72decfb808c97abe.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/architecture-7GRP2DOG.mjs":{"id":84263,"files":["static/chunks/4263.ffa8d9bd8a0faaae.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/cynefin-OW5HDTMX.mjs":{"id":93016,"files":["static/chunks/3016.406e568aa95ff867.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/eventmodeling-NTZA5JFV.mjs":{"id":78803,"files":["static/chunks/8803.75bde095fe3613f5.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/gitGraph-4MIJSDKK.mjs":{"id":50331,"files":["static/chunks/331.fc5d78e1e91daf43.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/info-A6RAGUB7.mjs":{"id":23831,"files":["static/chunks/3831.25ae62d10dccc27a.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/packet-AYTQ26CC.mjs":{"id":99389,"files":["static/chunks/9389.906fe7aa9cd6a170.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/pie-WAS4IAKB.mjs":{"id":13510,"files":["static/chunks/3510.5d4d1c79533e080c.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/radar-RG4KPBEZ.mjs":{"id":53189,"files":["static/chunks/3189.b048866768087750.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-74A4TZTK.mjs":{"id":82585,"files":["static/chunks/2585.4d6aa847c780c666.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-abnf-HS5TGJTU.mjs":{"id":83064,"files":["static/chunks/3064.3a2a1e7cd4fdca5f.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-ebnf-LZEXJU2U.mjs":{"id":72968,"files":["static/chunks/587.d52737d7288c11b4.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/railroad-peg-WCYAUIDC.mjs":{"id":5354,"files":["static/chunks/5354.b559c717a607dc5c.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/treeView-Q6P3EWNA.mjs":{"id":10364,"files":["static/chunks/364.ce5400a9dd70b9dc.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/treemap-WGGIJYW6.mjs":{"id":92600,"files":["static/chunks/2600.45ba17a0f756fc31.js"]},"node_modules\\\\@mermaid-js\\\\parser\\\\dist\\\\mermaid-parser.core.mjs -> ./chunks/mermaid-parser.core/wardley-WFR3VGLG.mjs":{"id":98216,"files":["static/chunks/8216.64a72d4d35ea7be0.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-2E4U76K2.mjs -> ./sizeCapture-INFHLROL.mjs":{"id":53789,"files":["static/chunks/3789.c418b69121761983.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-DU6HZSFF.mjs -> katex":{"id":71876,"files":[]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-TLUHSLCS.mjs -> ./cose-bilkent-JH36ORCC.mjs":{"id":50370,"files":["static/chunks/90542734.90283a0c0c838d51.js","static/chunks/370.a485dd5092c76362.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-TLUHSLCS.mjs -> ./dagre-GXQ25YYZ.mjs":{"id":20966,"files":["static/chunks/2768.1a75ba9e2be767cf.js","static/chunks/966.7ab226a15142fae2.js"]},"node_modules\\\\mermaid\\\\dist\\\\chunks\\\\mermaid.core\\\\chunk-TLUHSLCS.mjs -> ./swimlanes-42K2YHIH.mjs":{"id":58070,"files":["static/chunks/52733464.74fafefbfa340fc8.js","static/chunks/2619.9431a3f48da8eef4.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/abnfDiagram-VCTEODGH.mjs":{"id":80872,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/872.96937e758ddce860.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/architectureDiagram-5GKGNRK7.mjs":{"id":49884,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/90542734.90283a0c0c838d51.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/9884.fca67f18c0fb2808.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/blockDiagram-I7D4REHJ.mjs":{"id":14159,"files":["static/chunks/4159.8f53338a07b26845.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/c4Diagram-7LVT6UL2.mjs":{"id":71974,"files":["static/chunks/a339c874.7657a67d1b0d46c1.js","static/chunks/790.45f73b5eb2e089eb.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/classDiagram-ZZMXUADV.mjs":{"id":830,"files":["static/chunks/405.7027b68fbb48582a.js","static/chunks/830.a6da04c322e3204a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/classDiagram-v2-VYDZK3BY.mjs":{"id":42280,"files":["static/chunks/405.7027b68fbb48582a.js","static/chunks/2280.e03ab3748922284c.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/cynefinDiagram-5FMLGOSQ.mjs":{"id":71519,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/1519.2f596e5f5af9ef57.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-S7CK7UJ4.mjs":{"id":28663,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/8663.7deb45d41d190483.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-UQ7AKVKN.mjs":{"id":32931,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/2931.c5527c92f7264e9a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-VSXAHHWV.mjs":{"id":57806,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/7806.a903780fcfa3a30e.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-VX7I27RA.mjs":{"id":11213,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/1213.4848a5579bece837.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/diagram-Z3DM3KII.mjs":{"id":83217,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/3217.457eee26edea225c.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/ebnfDiagram-PWID7BFC.mjs":{"id":73174,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/3174.03fbed7b7d7a8256.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/erDiagram-RLTQ6QDP.mjs":{"id":49472,"files":["static/chunks/9472.08db7006e4a030a4.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/flowDiagram-HODETNUW.mjs":{"id":47997,"files":["static/chunks/60c48509.2ba44b5cbe52c6e7.js","static/chunks/9647.29c5a9819b36fcda.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/ganttDiagram-EL5Y4UJY.mjs":{"id":14208,"files":["static/chunks/4208.e3c7f2d5c26dcf2e.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/gitGraphDiagram-WWUBYQGX.mjs":{"id":15949,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/5949.54e8a766895688d7.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/infoDiagram-27XIBGKW.mjs":{"id":60514,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/514.b804c51b26f5e126.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/ishikawaDiagram-5VMMS53U.mjs":{"id":59379,"files":["static/chunks/9379.979bec4531e0611a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/journeyDiagram-3NMN7TZE.mjs":{"id":56361,"files":["static/chunks/6361.4b1fa56fca9b6356.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/kanban-definition-UXKFOSKX.mjs":{"id":54592,"files":["static/chunks/4592.507c41f345e21bee.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/mindmap-definition-YA3MSWOX.mjs":{"id":93052,"files":["static/chunks/3052.5da5bde6a131930a.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/pegDiagram-XKGWAZYB.mjs":{"id":57236,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/7236.55a9728d35f5b8a6.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/pieDiagram-E7YTZNPT.mjs":{"id":95448,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/5448.23a76c3983fec0f6.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/quadrantDiagram-AXDQQJYC.mjs":{"id":85270,"files":["static/chunks/5270.2b9a21b6ce8fd8d2.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/railroadDiagram-O6MQD6OU.mjs":{"id":26968,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/6774.07517a60a602aadd.js","static/chunks/6968.b80277c724dbc96e.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/requirementDiagram-BXWQKSXE.mjs":{"id":38501,"files":["static/chunks/8501.3b0a97ac3e782a0f.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/sankeyDiagram-P5KCCOFB.mjs":{"id":44561,"files":["static/chunks/4561.70303588b0cd3621.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/sequenceDiagram-WJ2MYXX4.mjs":{"id":51901,"files":["static/chunks/e413bedd.1332b3d1558778d6.js","static/chunks/4035.f5bcc2e4f0beee2b.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/stateDiagram-D77RDMKH.mjs":{"id":67390,"files":["static/chunks/2768.1a75ba9e2be767cf.js","static/chunks/8378.6acf715f56997572.js","static/chunks/7390.bc7f4ed9f76fe9e1.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/stateDiagram-v2-MP3YSRHH.mjs":{"id":52589,"files":["static/chunks/8378.6acf715f56997572.js","static/chunks/2589.e456c324416f9615.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/swimlanesDiagram-VR7AAH4N.mjs":{"id":47113,"files":["static/chunks/60c48509.2ba44b5cbe52c6e7.js","static/chunks/975.710b5962d34d4598.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/timeline-definition-24CTP7MA.mjs":{"id":5909,"files":["static/chunks/5909.172aa3edf289b590.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/vennDiagram-4TSXK5OY.mjs":{"id":4020,"files":["static/chunks/4020.3cc19c463c49f969.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/wardleyDiagram-VM6X3IG4.mjs":{"id":12521,"files":["static/chunks/3a7aa434.9780f397da64eb81.js","static/chunks/8863.582d77dad0e1cc29.js","static/chunks/2521.2ba812532f472610.js"]},"node_modules\\\\mermaid\\\\dist\\\\mermaid.core.mjs -> ./chunks/mermaid.core/xychartDiagram-S5SC5T6Z.mjs":{"id":44799,"files":["static/chunks/4799.1d3f2e30954503b8.js"]},"node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_app":{"id":41966,"files":["static/chunks/1966.f39c40f8eb9f3c5a.js"]},"node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_error":{"id":3899,"files":["static/chunks/3899.040cf000a0a52ee8.js"]}}';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" translate="no" class="__variable_9e44ca notranslate"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/9bcd6051db4f8890.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/0ba51581376fe049.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/785537d6385160c9.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/34a258ef601979e9.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-8f20f0fe6235d33b.js"/><script src="/_next/static/chunks/4bd1b696-8a4ab4fdf0ae305a.js" async=""></script><script src="/_next/static/chunks/3794-6f271a1eb27dfa20.js" async=""></script><script src="/_next/static/chunks/main-app-a9b79d5b2e6391f2.js" async=""></script><script src="/_next/static/chunks/app/layout-955e68ada9a4c00a.js" async=""></script><meta name="robots" content="noindex"/><meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#1a1a1a" media="(prefers-color-scheme: dark)"/><title>PI-YUN</title><meta name="description" content="PI-YUN interface for the pi coding agent"/><meta name="application-name" content="PI-YUN"/><link rel="manifest" href="/manifest.webmanifest"/><meta name="format-detection" content="telephone=no"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="PI-YUN"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><link rel="icon" href="/favicon.ico?49f1942df4a62dcc" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/icons/yun-mark-192.png" sizes="192x192" type="image/png"/><link rel="apple-touch-icon" href="/icons/yun-mark-apple-touch.png" sizes="180x180" type="image/png"/><meta name="google" content="notranslate"/><title>404: This page could not be found.</title><script>(function(){var t="auto";try{var s=localStorage.getItem("pi-theme");if(["auto","light","mist","lilac","sand","rose","dark","pine","dusk","ember","slate","contrast-light","contrast-dark","zenburn"].includes(s))t=s}catch(e){}if(t==="auto")t=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";var r=document.documentElement;r.dataset.theme=t;r.classList.toggle("dark",["dark","pine","dusk","ember","slate","contrast-dark","zenburn"].includes(t))})();</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body translate="no" class="notranslate"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-8f20f0fe6235d33b.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[57788,[\"7177\",\"static/chunks/app/layout-955e68ada9a4c00a.js\"],\"PwaRegistration\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[90484,[],\"ViewportBoundary\"]\nb:I[90484,[],\"MetadataBoundary\"]\nd:I[27123,[],\"default\",1]\n:HL[\"/_next/static/css/9bcd6051db4f8890.css\",\"style\"]\n:HL[\"/_next/static/css/0ba51581376fe049.css\",\"style\"]\n:HL[\"/_next/static/css/785537d6385160c9.css\",\"style\"]\n:HL[\"/_next/static/css/34a258ef601979e9.css\",\"style\"]\n8:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/9bcd6051db4f8890.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/0ba51581376fe049.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/785537d6385160c9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/34a258ef601979e9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"translate\":\"no\",\"className\":\"__variable_9e44ca notranslate\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"name\":\"google\",\"content\":\"notranslate\"}],[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){var t=\\\"auto\\\";try{var s=localStorage.getItem(\\\"pi-theme\\\");if([\\\"auto\\\",\\\"light\\\",\\\"mist\\\",\\\"lilac\\\",\\\"sand\\\",\\\"rose\\\",\\\"dark\\\",\\\"pine\\\",\\\"dusk\\\",\\\"ember\\\",\\\"slate\\\",\\\"contrast-light\\\",\\\"contrast-dark\\\",\\\"zenburn\\\"].includes(s))t=s}catch(e){}if(t===\\\"auto\\\")t=window.matchMedia(\\\"(prefers-color-scheme: dark)\\\").matches?\\\"dark\\\":\\\"light\\\";var r=document.documentElement;r.dataset.theme=t;r.classList.toggle(\\\"dark\\\",[\\\"dark\\\",\\\"pine\\\",\\\"dusk\\\",\\\"ember\\\",\\\"slate\\\",\\\"contrast-dark\\\",\\\"zenburn\\\"].includes(t))})();\"}}]]}],[\"$\",\"body\",null,{\"translate\":\"no\",\"className\":\"notranslate\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L4\",null,{}],false]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"6G0fewP2uW-xnL4J9JTfK\"}\n8:C\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#ffffff\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#1a1a1a\",\"media\":\"(prefers-color-scheme: dark)\"}]]\ne:I[86869,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"PI-YUN\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"PI-YUN interface for the pi coding agent\"}],[\"$\",\"meta\",\"2\",{\"name\":\"application-name\",\"content\":\"PI-YUN\"}],[\"$\",\"link\",\"3\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"4\",{\"name\":\"format-detection\",\"content\":\"telephone=no\"}],[\"$\",\"meta\",\"5\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"6\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"PI-YUN\"}],[\"$\",\"meta\",\"7\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?49f1942df4a62dcc\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/icons/yun-mark-192.png\",\"sizes\":\"192x192\",\"type\":\"image/png\"}],[\"$\",\"link\",\"10\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icons/yun-mark-apple-touch.png\",\"sizes\":\"180x180\",\"type\":\"image/png\"}],[\"$\",\"$Le\",\"11\",{}]]\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><html lang="en" translate="no" class="__variable_9e44ca notranslate"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/9bcd6051db4f8890.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/0ba51581376fe049.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/d986dbac15b9ebaa.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/3d221be0a6116b3b.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-7f5c25954b44b5fb.js"/><script src="/_next/static/chunks/4bd1b696-8a4ab4fdf0ae305a.js" async=""></script><script src="/_next/static/chunks/3794-6f271a1eb27dfa20.js" async=""></script><script src="/_next/static/chunks/main-app-a9b79d5b2e6391f2.js" async=""></script><script src="/_next/static/chunks/app/layout-b707963fa7205d6d.js" async=""></script><meta name="robots" content="noindex"/><meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#1a1a1a" media="(prefers-color-scheme: dark)"/><title>PI-YUN</title><meta name="description" content="PI-YUN interface for the pi coding agent"/><meta name="application-name" content="PI-YUN"/><link rel="manifest" href="/manifest.webmanifest"/><meta name="format-detection" content="telephone=no"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="PI-YUN"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><link rel="icon" href="/favicon.ico?49f1942df4a62dcc" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/icons/yun-mark-192.png" sizes="192x192" type="image/png"/><link rel="apple-touch-icon" href="/icons/yun-mark-apple-touch.png" sizes="180x180" type="image/png"/><meta name="google" content="notranslate"/><title>404: This page could not be found.</title><script>(function(){var t="auto";try{var s=localStorage.getItem("pi-theme");if(["auto","light","mist","lilac","sand","rose","dark","pine","dusk","ember","slate","contrast-light","contrast-dark","zenburn"].includes(s))t=s}catch(e){}if(t==="auto")t=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";var r=document.documentElement;r.dataset.theme=t;r.classList.toggle("dark",["dark","pine","dusk","ember","slate","contrast-dark","zenburn"].includes(t))})();</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body translate="no" class="notranslate"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-7f5c25954b44b5fb.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[57788,[\"7177\",\"static/chunks/app/layout-b707963fa7205d6d.js\"],\"PwaRegistration\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n9:I[90484,[],\"ViewportBoundary\"]\nb:I[90484,[],\"MetadataBoundary\"]\nd:I[27123,[],\"default\",1]\n:HL[\"/_next/static/css/9bcd6051db4f8890.css\",\"style\"]\n:HL[\"/_next/static/css/0ba51581376fe049.css\",\"style\"]\n:HL[\"/_next/static/css/d986dbac15b9ebaa.css\",\"style\"]\n:HL[\"/_next/static/css/3d221be0a6116b3b.css\",\"style\"]\n8:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/9bcd6051db4f8890.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/0ba51581376fe049.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/d986dbac15b9ebaa.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/3d221be0a6116b3b.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"translate\":\"no\",\"className\":\"__variable_9e44ca notranslate\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"name\":\"google\",\"content\":\"notranslate\"}],[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){var t=\\\"auto\\\";try{var s=localStorage.getItem(\\\"pi-theme\\\");if([\\\"auto\\\",\\\"light\\\",\\\"mist\\\",\\\"lilac\\\",\\\"sand\\\",\\\"rose\\\",\\\"dark\\\",\\\"pine\\\",\\\"dusk\\\",\\\"ember\\\",\\\"slate\\\",\\\"contrast-light\\\",\\\"contrast-dark\\\",\\\"zenburn\\\"].includes(s))t=s}catch(e){}if(t===\\\"auto\\\")t=window.matchMedia(\\\"(prefers-color-scheme: dark)\\\").matches?\\\"dark\\\":\\\"light\\\";var r=document.documentElement;r.dataset.theme=t;r.classList.toggle(\\\"dark\\\",[\\\"dark\\\",\\\"pine\\\",\\\"dusk\\\",\\\"ember\\\",\\\"slate\\\",\\\"contrast-dark\\\",\\\"zenburn\\\"].includes(t))})();\"}}]]}],[\"$\",\"body\",null,{\"translate\":\"no\",\"className\":\"notranslate\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L4\",null,{}],false]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,\"$8\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"iKNuUVRZa7JT6IPMMtnRe\"}\n8:C\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#ffffff\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#1a1a1a\",\"media\":\"(prefers-color-scheme: dark)\"}]]\ne:I[86869,[],\"IconMark\"]\n7:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"PI-YUN\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"PI-YUN interface for the pi coding agent\"}],[\"$\",\"meta\",\"2\",{\"name\":\"application-name\",\"content\":\"PI-YUN\"}],[\"$\",\"link\",\"3\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"4\",{\"name\":\"format-detection\",\"content\":\"telephone=no\"}],[\"$\",\"meta\",\"5\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"6\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"PI-YUN\"}],[\"$\",\"meta\",\"7\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?49f1942df4a62dcc\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/icons/yun-mark-192.png\",\"sizes\":\"192x192\",\"type\":\"image/png\"}],[\"$\",\"link\",\"10\",{\"rel\":\"apple-touch-icon\",\"href\":\"/icons/yun-mark-apple-touch.png\",\"sizes\":\"180x180\",\"type\":\"image/png\"}],[\"$\",\"$Le\",\"11\",{}]]\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-7f5c25954b44b5fb.js"/><script src="/_next/static/chunks/4bd1b696-8a4ab4fdf0ae305a.js" async=""></script><script src="/_next/static/chunks/3794-6f271a1eb27dfa20.js" async=""></script><script src="/_next/static/chunks/main-app-a9b79d5b2e6391f2.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-7f5c25954b44b5fb.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[27123,[],\"default\",1]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"iKNuUVRZa7JT6IPMMtnRe\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\nb:[]\n"])</script></body></html>
|