@seqyuan/ennote 0.14.0 → 0.15.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.
Files changed (44) hide show
  1. package/out/404.html +1 -1
  2. package/out/__next.__PAGE__.txt +3 -3
  3. package/out/__next._full.txt +13 -13
  4. package/out/__next._head.txt +4 -4
  5. package/out/__next._index.txt +7 -7
  6. package/out/__next._tree.txt +2 -2
  7. package/out/_next/static/chunks/0j5p~dc9hcv56.js +8 -0
  8. package/out/_next/static/chunks/0pzgp1v~.454n.css +1 -0
  9. package/out/_next/static/chunks/0qpe-en7gygy..js +1 -0
  10. package/out/_not-found/__next._full.txt +12 -12
  11. package/out/_not-found/__next._head.txt +4 -4
  12. package/out/_not-found/__next._index.txt +7 -7
  13. package/out/_not-found/__next._not-found.__PAGE__.txt +2 -2
  14. package/out/_not-found/__next._not-found.txt +3 -3
  15. package/out/_not-found/__next._tree.txt +2 -2
  16. package/out/_not-found.html +1 -1
  17. package/out/_not-found.txt +12 -12
  18. package/out/graphs/__next._full.txt +13 -13
  19. package/out/graphs/__next._head.txt +4 -4
  20. package/out/graphs/__next._index.txt +7 -7
  21. package/out/graphs/__next._tree.txt +2 -2
  22. package/out/graphs/__next.graphs.__PAGE__.txt +3 -3
  23. package/out/graphs/__next.graphs.txt +3 -3
  24. package/out/graphs.html +1 -1
  25. package/out/graphs.txt +13 -13
  26. package/out/heroes/__next._full.txt +13 -13
  27. package/out/heroes/__next._head.txt +4 -4
  28. package/out/heroes/__next._index.txt +7 -7
  29. package/out/heroes/__next._tree.txt +2 -2
  30. package/out/heroes/__next.heroes.__PAGE__.txt +3 -3
  31. package/out/heroes/__next.heroes.txt +3 -3
  32. package/out/heroes.html +1 -1
  33. package/out/heroes.txt +13 -13
  34. package/out/index.html +2 -2
  35. package/out/index.txt +13 -13
  36. package/package.json +1 -1
  37. package/skills/generative-canvas/SKILL.md +121 -0
  38. package/skills/generative-canvas/skill.json +7 -0
  39. package/out/_next/static/chunks/06_y.lv_svbtb.css +0 -1
  40. package/out/_next/static/chunks/083xw1nubbiw6.js +0 -1
  41. package/out/_next/static/chunks/0u~0j2k3ooiya.js +0 -8
  42. /package/out/_next/static/{g1rJaZRqv7r0ZY4hnAnlq → QzO4obvIvhjjd6K9KPuvm}/_buildManifest.js +0 -0
  43. /package/out/_next/static/{g1rJaZRqv7r0ZY4hnAnlq → QzO4obvIvhjjd6K9KPuvm}/_clientMiddlewareManifest.js +0 -0
  44. /package/out/_next/static/{g1rJaZRqv7r0ZY4hnAnlq → QzO4obvIvhjjd6K9KPuvm}/_ssgManifest.js +0 -0
package/out/index.html CHANGED
@@ -1,2 +1,2 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/0o7ckb1vvjz_t.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/06_y.lv_svbtb.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0mysj884b2.c5.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/07jz6e~ba22te.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0j-yjan8jn-8-.js"/><script src="/_next/static/chunks/0398hkm93nbvg.js" async=""></script><script src="/_next/static/chunks/0-j.wjqnc6zff.js" async=""></script><script src="/_next/static/chunks/turbopack-0~_.ya0bk7q2w.js" async=""></script><script src="/_next/static/chunks/0_yt3a8a9j1yd.js" async=""></script><script src="/_next/static/chunks/0e~k9df0bajhc.js" async=""></script><script src="/_next/static/chunks/083xw1nubbiw6.js" async=""></script><script src="/_next/static/chunks/0twsdyb7~zp7n.js" async=""></script><script src="/_next/static/chunks/0u~0j2k3ooiya.js" async=""></script><title>Ennote</title><meta name="description" content="Auditable local agent runtime built around Agent Flow"/><link rel="icon" href="/icon.png?icon.0l6z533ta5iiy.png" sizes="64x64" type="image/png"/><script id="theme-init">(function(){try{var t=localStorage.getItem("ennote-theme");var d=t==="dark"||(t!=="light"&&matchMedia("(prefers-color-scheme:dark)").matches);document.documentElement.classList.toggle("dark",d);document.documentElement.dataset.theme=d?"dark":"light"}catch(e){}})();</script><script id="locale-init">(function(){try{var l=localStorage.getItem("ennote-locale");document.documentElement.lang=(l==="zh-CN")?"zh-CN":"en"}catch(e){}})();</script><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body style="height:100dvh;display:flex;flex-direction:column"><div hidden=""><!--$--><!--/$--></div><!--$?--><template id="B:0"></template><!--/$--><!--$--><!--/$--><script>requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/0j-yjan8jn-8-.js" id="_R_" async=""></script><div hidden id="S:0"><div class="app-shell" data-testid="ennote-shell"><div class="sidebar-overlay-backdrop" data-open="true"></div><div class="sidebar-container sidebar-open" id="workspace-navigation" style="width:280px;min-width:280px;transition:none"><aside class="sidebar quiet-bars" aria-label="Projects and sessions"><div class="sidebar-logo-row"><div class="sidebar-brand"><span class="sidebar-brand-identity"><span class="brand-mark"><svg width="20" height="20" viewBox="0 0 32 32" fill="none" aria-hidden="true" focusable="false"><rect x="1" y="1" width="30" height="30" rx="9" fill="currentColor" opacity="0.10"></rect><path d="M11 9.5h10.5M11 16h8M11 22.5h10.5M11 9.5v13" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="sidebar-brand-name">Ennote</span></span></div><button type="button" class="sidebar-collapse-toggle" title="Collapse sidebar" aria-label="Collapse navigation" aria-expanded="true" aria-controls="workspace-navigation"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button><button type="button" class="sidebar-close-nav navigation-close" aria-label="Close navigation"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><button type="button" class="sidebar-new-session" disabled="" aria-label="New chat" title="Select a project first"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square-plus" aria-hidden="true"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path><path d="M12 8v6"></path><path d="M9 11h6"></path></svg><span>New Chat</span></button><nav class="sidebar-nav" aria-label="Workspace"><button type="button" class="sidebar-nav-item "><span class="nav-icon"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot" aria-hidden="true"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg></span><span>Heroes</span></button><button type="button" class="sidebar-nav-item "><span class="nav-icon"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-workflow" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg></span><span>Graphs</span></button></nav><div class="sidebar-workspace-head"><span class="workspace-label">Workspaces</span><div class="workspace-search-slot"><div class="workspace-search"><button type="button" class="workspace-action-button workspace-search-button" aria-label="Search sessions" aria-expanded="false" title="Search sessions"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><input type="text" tabindex="-1" placeholder="Search sessions" aria-label="Search sessions" value=""/></div></div><div class="workspace-head-actions"><button type="button" class="workspace-action-button" aria-label="Add workspace" title="Add workspace"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-plus" aria-hidden="true"><path d="M12 10v6"></path><path d="M9 13h6"></path><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg></button></div></div><div class="sidebar-project-selector ProjectSelector-module__RVW5Pa__root"><button type="button" class="ProjectSelector-module__RVW5Pa__trigger" title="Select project" aria-haspopup="menu" aria-expanded="false"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder ProjectSelector-module__RVW5Pa__folder" aria-hidden="true"><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg><span class="ProjectSelector-module__RVW5Pa__label">Select project…</span><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down ProjectSelector-module__RVW5Pa__chevron" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="sidebar-empty-project"><div>Choose a project to start.</div></div><span class="sr-only" role="status" aria-live="polite"></span><div class="sidebar-settings"><button type="button" class="sidebar-settings-trigger" aria-haspopup="dialog" aria-expanded="false"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings2 lucide-settings-2" aria-hidden="true"><path d="M14 17H5"></path><path d="M19 7h-9"></path><circle cx="17" cy="17" r="3"></circle><circle cx="7" cy="7" r="3"></circle></svg><span>Settings</span></button></div></aside></div><div role="separator" aria-label="Resize sidebar" aria-orientation="vertical" aria-valuemin="264" aria-valuemax="420" aria-valuenow="280" tabindex="0" class="resize-handle" data-side="right" style="align-self:stretch;cursor:col-resize;display:flex;flex-shrink:0;justify-content:center;margin-left:-5px;margin-right:-5px;position:relative;touch-action:none;width:10px;z-index:var(--layer-drag-overlay)"><div class="resize-handle-line"></div></div><div class="workspace-content"><div class="app-topbar"><button type="button" aria-label="Hide navigation" title="Hide sidebar" class="primitives-module__BWnyvW__iconButton" aria-expanded="true" aria-controls="workspace-navigation"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button><div class="topbar-title-area"><div class="topbar-title-group"><div class="topbar-session-title" title="No session">No session</div></div></div><button type="button" aria-label="Switch to dark mode" title="Switch to dark mode" class="primitives-module__BWnyvW__iconButton" aria-pressed="false"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><button type="button" aria-label="Show panel" title="Show panel" class="primitives-module__BWnyvW__iconButton"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></button><div class="attention-panel"><button type="button" class="attention-bell" aria-label="Attention (0)" title="Attention"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bell" aria-hidden="true"><path d="M10.268 21a2 2 0 0 0 3.464 0"></path><path d="M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326"></path></svg></button></div></div><main class="chat-area" data-phase="welcome"><div class="composer-seat"><div class="composer-stack composer-welcome"><svg class="composer-welcome-glow" viewBox="0 0 1051 468" fill="none" aria-hidden="true"><defs><filter id="empty-glow-_R_1ukdbtb_" x="0" y="0" width="1051" height="468" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend><feGaussianBlur stdDeviation="50" result="effect1_foregroundBlur"></feGaussianBlur></filter></defs><g filter="url(#empty-glow-_R_1ukdbtb_)"><ellipse cx="525.5" cy="234" rx="425.5" ry="134" fill="var(--accent)" fill-opacity="0.08"></ellipse></g></svg><div class="welcome-stage" data-testid="welcome-stage"><div class="welcome-stage-headline"><span class="welcome-stage-mark" aria-hidden="true"><svg width="28" height="28" viewBox="0 0 32 32" fill="none" aria-hidden="true" focusable="false"><rect x="1" y="1" width="30" height="30" rx="9" fill="currentColor" opacity="0.10"></rect><path d="M11 9.5h10.5M11 16h8M11 22.5h10.5M11 9.5v13" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><h1 class="welcome-stage-title">Into the Unknown</h1><span class="welcome-stage-preview">Preview</span><button type="button" class="welcome-stage-settings">No model configured — open Settings to add a provider and model.</button></div></div><div class="welcome-workspace-row"><div class="workspace-chip-wrap"><button type="button" class="workspace-chip" title="Choose project…" aria-label="Select project…" aria-haspopup="menu" aria-expanded="false"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.35" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M1.5 5A1.5 1.5 0 0 1 3 3.5h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6.5L13.6 11A1.5 1.5 0 0 1 12.1 12.5H3A1.5 1.5 0 0 1 1.5 11V5Z"></path></svg><span class="workspace-chip-label">Choose project…</span><svg class="workspace-chip-chevron" width="12" height="12" viewBox="0 0 12 12" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 4.5L6 7.5L9 4.5"></path></svg></button></div></div><div class="composer-shell"><form class="composer"><div class="composer-resizer" role="separator" aria-orientation="horizontal" aria-label="Resize message input" tabindex="0"></div><div class="composer-editor composer-no-session"><textarea rows="1" readOnly="" placeholder="Choose a workspace to start" aria-label="Message the agent"></textarea><input class="sr-only" type="file" accept="image/png,image/jpeg,image/gif,image/webp" disabled=""/><input class="sr-only" type="file" multiple="" accept="image/png,image/jpeg,image/gif,image/webp,text/*,.md,.mdx,.json,.yaml,.yml,.toml,.csv,.tsv,.js,.jsx,.ts,.tsx,.py,.r,.go,.rs,.java,.c,.cpp,.h,.hpp,.css,.html,.xml,.sh,.sql" disabled=""/><div class="composer-toolbar-row"><div class="composer-tools"><button type="button" class="composer-plus" aria-expanded="false" aria-haspopup="dialog" aria-label="Insert a hero, graph, skill, or file" title="Insert a hero, graph, skill, or file" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button></div><div class="composer-trailing"><button type="submit" class="composer-primary" aria-label="Send" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up" aria-hidden="true"><path d="m5 12 7-7 7 7"></path><path d="M12 19V5"></path></svg></button></div></div></div><div class="composer-context-bar" aria-label="Run configuration"><div class="permission-chip"><button type="button" class="permission-chip-trigger" aria-label="Permission mode: Read-only" aria-haspopup="menu" aria-expanded="false" disabled=""><span class="permission-chip-icon" aria-hidden="true"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><path d="M8.20554 0.899994L14.7901 3.36857V7.01026C14.7901 12 11.0466 14.2103 8.20554 15.3C5.36446 14.2103 1.62012 12 1.62012 7.01026V3.36857L8.20554 0.899994Z" stroke="currentColor" stroke-width="1.31831" stroke-linejoin="round"></path><path d="M12.1654 5.7552L8.9447 9.41475C8.73044 9.65816 8.53628 9.8804 8.35774 10.0423C8.1713 10.2114 7.94235 10.3717 7.64016 10.4254C7.48207 10.4535 7.32 10.4552 7.16151 10.4294C6.85843 10.3801 6.62728 10.2223 6.43836 10.0559C6.25752 9.89653 6.06037 9.67732 5.84264 9.43705L4.72925 8.20897L5.63557 7.38707L6.74897 8.61594C6.98603 8.87755 7.12974 9.03533 7.24673 9.13839C7.31033 9.19443 7.34485 9.21476 7.35823 9.22122C7.38068 9.22484 7.40352 9.22515 7.42593 9.22122C7.40522 9.22502 7.42893 9.23294 7.53583 9.136C7.65132 9.03126 7.79316 8.87139 8.02643 8.60638L11.2479 4.94763L12.1654 5.7552Z" fill="currentColor"></path></svg></span><span class="permission-chip-label">Read-only</span><svg class="permission-chip-chevron" width="14" height="14" viewBox="0 0 14 14" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3.5 5.25L7 8.75L10.5 5.25"></path></svg></button></div><span class="composer-context-spacer" aria-hidden="true"></span><div class="model-select"><button type="button" class="model-select-trigger" aria-label="Select model" aria-haspopup="menu" aria-expanded="false" title="Select model" disabled=""><span class="model-select-trigger-label">Select model</span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down model-select-chevron" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></form><div class="composer-status-line"></div></div></div></div></main></div><div class="right-panel-container right-panel-closed" style="width:680px;min-width:680px"><button type="button" class="right-panel-back-button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Back to conversation</button><div class="RightPanelLanes-module__CJ4Bja__lanes" data-mode="single" data-testid="right-panel-lanes"><div class="RightPanelLanes-module__CJ4Bja__primary" style="flex:1 1 auto" data-testid="right-panel-primary"><div class="right-panel-strip"><div role="tablist" aria-label="Workspace panel tabs" class="TabBar-module__VnsErG__bar"><div role="tab" tabindex="0" aria-selected="true" draggable="false" class="TabBar-module__VnsErG__tab" data-active="true"><span class="TabBar-module__VnsErG__icon"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder" aria-hidden="true"><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg></span><span class="TabBar-module__VnsErG__label" title="Files">Files</span><button type="button" class="TabBar-module__VnsErG__close" title="Close" aria-label="Close Files"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><div role="tab" tabindex="-1" aria-selected="false" draggable="false" class="TabBar-module__VnsErG__tab"><span class="TabBar-module__VnsErG__icon"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-workflow" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg></span><span class="TabBar-module__VnsErG__label" title="Graphs">Graphs</span><button type="button" class="TabBar-module__VnsErG__close" title="Close" aria-label="Close Graphs"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><div role="tab" tabindex="-1" aria-selected="false" draggable="false" class="TabBar-module__VnsErG__tab"><span class="TabBar-module__VnsErG__icon"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-wrench" aria-hidden="true"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z"></path></svg></span><span class="TabBar-module__VnsErG__label" title="Status">Status</span><button type="button" class="TabBar-module__VnsErG__close" title="Close" aria-label="Close Status"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div></div><button type="button" class="right-panel-strip-action" aria-pressed="false" aria-label="Pin this channel" title="Pin this channel"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></button></div><div class="RightPanelLanes-module__CJ4Bja__body"><div class="right-panel-channel-slot"><div class="file-tree-panel"><div class="file-tree-header"><div class="file-tree-heading">Files</div><div class="file-tree-path" title="/workspace">No project selected</div><div class="file-tree-actions"><button type="button" class="file-tree-action" aria-label="New file" title="New file" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-plus" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M9 15h6"></path><path d="M12 18v-6"></path></svg></button><button type="button" class="file-tree-action" aria-label="New folder" title="New folder" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-plus" aria-hidden="true"><path d="M12 10v6"></path><path d="M9 13h6"></path><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg></button></div><label class="file-filter"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><span class="sr-only">Filter files</span><input placeholder="Filter files..." disabled="" value=""/></label></div><div class="file-tree-list"><div class="file-tree-empty">Select a project to browse files.</div></div></div></div></div></div></div></div></div></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
2
- $RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[26356,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"WorkerGenerationGuard\"]\n3:I[27437,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"LocaleProvider\"]\n4:I[85026,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"WorkspaceProvider\"]\n5:I[39756,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"default\"]\n6:I[37457,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"default\"]\n7:\"$Sreact.suspense\"\n8:I[59665,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\",\"/_next/static/chunks/0twsdyb7~zp7n.js\",\"/_next/static/chunks/0u~0j2k3ooiya.js\"],\"AppShell\"]\n9:I[97367,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"OutletBoundary\"]\nb:I[97367,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"ViewportBoundary\"]\nd:I[97367,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"MetadataBoundary\"]\nf:I[68027,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0o7ckb1vvjz_t.css\",\"style\"]\n:HL[\"/_next/static/chunks/06_y.lv_svbtb.css\",\"style\"]\n:HL[\"/_next/static/chunks/0mysj884b2.c5.css\",\"style\"]\n:HL[\"/_next/static/chunks/07jz6e~ba22te.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0o7ckb1vvjz_t.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/06_y.lv_svbtb.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0mysj884b2.c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0e~k9df0bajhc.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/083xw1nubbiw6.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"script\",null,{\"id\":\"theme-init\",\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var t=localStorage.getItem(\\\"ennote-theme\\\");var d=t===\\\"dark\\\"||(t!==\\\"light\\\"\u0026\u0026matchMedia(\\\"(prefers-color-scheme:dark)\\\").matches);document.documentElement.classList.toggle(\\\"dark\\\",d);document.documentElement.dataset.theme=d?\\\"dark\\\":\\\"light\\\"}catch(e){}})();\"}}],[\"$\",\"script\",null,{\"id\":\"locale-init\",\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var l=localStorage.getItem(\\\"ennote-locale\\\");document.documentElement.lang=(l===\\\"zh-CN\\\")?\\\"zh-CN\\\":\\\"en\\\"}catch(e){}})();\"}}]]}],[\"$\",\"body\",null,{\"style\":{\"height\":\"100dvh\",\"display\":\"flex\",\"flexDirection\":\"column\"},\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"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.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$7\",null,{\"children\":[\"$\",\"$L8\",null,{}]}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/07jz6e~ba22te.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0twsdyb7~zp7n.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0u~0j2k3ooiya.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Le\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0o7ckb1vvjz_t.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/06_y.lv_svbtb.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0mysj884b2.c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"g1rJaZRqv7r0ZY4hnAnlq\"}\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[27201,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/083xw1nubbiw6.js\"],\"IconMark\"]\na:null\ne:[[\"$\",\"title\",\"0\",{\"children\":\"Ennote\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Auditable local agent runtime built around Agent Flow\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.png?icon.0l6z533ta5iiy.png\",\"sizes\":\"64x64\",\"type\":\"image/png\"}],[\"$\",\"$L10\",\"3\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/0o7ckb1vvjz_t.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0pzgp1v~.454n.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/0mysj884b2.c5.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/07jz6e~ba22te.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0j-yjan8jn-8-.js"/><script src="/_next/static/chunks/0398hkm93nbvg.js" async=""></script><script src="/_next/static/chunks/0-j.wjqnc6zff.js" async=""></script><script src="/_next/static/chunks/turbopack-0~_.ya0bk7q2w.js" async=""></script><script src="/_next/static/chunks/0_yt3a8a9j1yd.js" async=""></script><script src="/_next/static/chunks/0e~k9df0bajhc.js" async=""></script><script src="/_next/static/chunks/0qpe-en7gygy..js" async=""></script><script src="/_next/static/chunks/0twsdyb7~zp7n.js" async=""></script><script src="/_next/static/chunks/0j5p~dc9hcv56.js" async=""></script><title>Ennote</title><meta name="description" content="Auditable local agent runtime built around Agent Flow"/><link rel="icon" href="/icon.png?icon.0l6z533ta5iiy.png" sizes="64x64" type="image/png"/><script id="theme-init">(function(){try{var t=localStorage.getItem("ennote-theme");var d=t==="dark"||(t!=="light"&&matchMedia("(prefers-color-scheme:dark)").matches);document.documentElement.classList.toggle("dark",d);document.documentElement.dataset.theme=d?"dark":"light"}catch(e){}})();</script><script id="locale-init">(function(){try{var l=localStorage.getItem("ennote-locale");document.documentElement.lang=(l==="zh-CN")?"zh-CN":"en"}catch(e){}})();</script><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body style="height:100dvh;display:flex;flex-direction:column"><div hidden=""><!--$--><!--/$--></div><!--$?--><template id="B:0"></template><!--/$--><!--$--><!--/$--><script>requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/0j-yjan8jn-8-.js" id="_R_" async=""></script><div hidden id="S:0"><div class="app-shell" data-testid="ennote-shell"><div class="sidebar-overlay-backdrop" data-open="true"></div><div class="sidebar-container sidebar-open" id="workspace-navigation" style="width:280px;min-width:280px;transition:none"><aside class="sidebar quiet-bars" aria-label="Projects and sessions"><div class="sidebar-logo-row"><div class="sidebar-brand"><span class="sidebar-brand-identity"><span class="brand-mark"><svg width="20" height="20" viewBox="0 0 32 32" fill="none" aria-hidden="true" focusable="false"><rect x="1" y="1" width="30" height="30" rx="9" fill="currentColor" opacity="0.10"></rect><path d="M11 9.5h10.5M11 16h8M11 22.5h10.5M11 9.5v13" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="sidebar-brand-name">Ennote</span></span></div><button type="button" class="sidebar-collapse-toggle" title="Collapse sidebar" aria-label="Collapse navigation" aria-expanded="true" aria-controls="workspace-navigation"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button><button type="button" class="sidebar-close-nav navigation-close" aria-label="Close navigation"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><button type="button" class="sidebar-new-session" disabled="" aria-label="New chat" title="Select a project first"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square-plus" aria-hidden="true"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path><path d="M12 8v6"></path><path d="M9 11h6"></path></svg><span>New Chat</span></button><nav class="sidebar-nav" aria-label="Workspace"><button type="button" class="sidebar-nav-item "><span class="nav-icon"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot" aria-hidden="true"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg></span><span>Heroes</span></button><button type="button" class="sidebar-nav-item "><span class="nav-icon"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-workflow" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg></span><span>Graphs</span></button></nav><div class="sidebar-workspace-head"><span class="workspace-label">Workspaces</span><div class="workspace-search-slot"><div class="workspace-search"><button type="button" class="workspace-action-button workspace-search-button" aria-label="Search sessions" aria-expanded="false" title="Search sessions"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg></button><input type="text" tabindex="-1" placeholder="Search sessions" aria-label="Search sessions" value=""/></div></div><div class="workspace-head-actions"><button type="button" class="workspace-action-button" aria-label="Add workspace" title="Add workspace"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-plus" aria-hidden="true"><path d="M12 10v6"></path><path d="M9 13h6"></path><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg></button></div></div><div class="sidebar-project-selector ProjectSelector-module__RVW5Pa__root"><button type="button" class="ProjectSelector-module__RVW5Pa__trigger" title="Select project" aria-haspopup="menu" aria-expanded="false"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder ProjectSelector-module__RVW5Pa__folder" aria-hidden="true"><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg><span class="ProjectSelector-module__RVW5Pa__label">Select project…</span><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down ProjectSelector-module__RVW5Pa__chevron" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><div class="sidebar-empty-project"><div>Choose a project to start.</div></div><span class="sr-only" role="status" aria-live="polite"></span><div class="sidebar-settings"><button type="button" class="sidebar-settings-trigger" aria-haspopup="dialog" aria-expanded="false"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings2 lucide-settings-2" aria-hidden="true"><path d="M14 17H5"></path><path d="M19 7h-9"></path><circle cx="17" cy="17" r="3"></circle><circle cx="7" cy="7" r="3"></circle></svg><span>Settings</span></button></div></aside></div><div role="separator" aria-label="Resize sidebar" aria-orientation="vertical" aria-valuemin="264" aria-valuemax="420" aria-valuenow="280" tabindex="0" class="resize-handle" data-side="right" style="align-self:stretch;cursor:col-resize;display:flex;flex-shrink:0;justify-content:center;margin-left:-5px;margin-right:-5px;position:relative;touch-action:none;width:10px;z-index:var(--layer-drag-overlay)"><div class="resize-handle-line"></div></div><div class="workspace-content"><div class="app-topbar"><button type="button" aria-label="Hide navigation" title="Hide sidebar" class="primitives-module__BWnyvW__iconButton" aria-expanded="true" aria-controls="workspace-navigation"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-left" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M9 3v18"></path></svg></button><div class="topbar-title-area"><div class="topbar-title-group"><div class="topbar-session-title" title="No session">No session</div></div></div><button type="button" aria-label="Switch to dark mode" title="Switch to dark mode" class="primitives-module__BWnyvW__iconButton" aria-pressed="false"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></button><button type="button" aria-label="Show panel" title="Show panel" class="primitives-module__BWnyvW__iconButton"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></button><div class="attention-panel"><button type="button" class="attention-bell" aria-label="Attention (0)" title="Attention"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bell" aria-hidden="true"><path d="M10.268 21a2 2 0 0 0 3.464 0"></path><path d="M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326"></path></svg></button></div></div><main class="chat-area" data-phase="welcome"><div class="composer-seat"><div class="composer-stack composer-welcome"><svg class="composer-welcome-glow" viewBox="0 0 1051 468" fill="none" aria-hidden="true"><defs><filter id="empty-glow-_R_1ukdbtb_" x="0" y="0" width="1051" height="468" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend><feGaussianBlur stdDeviation="50" result="effect1_foregroundBlur"></feGaussianBlur></filter></defs><g filter="url(#empty-glow-_R_1ukdbtb_)"><ellipse cx="525.5" cy="234" rx="425.5" ry="134" fill="var(--accent)" fill-opacity="0.08"></ellipse></g></svg><div class="welcome-stage" data-testid="welcome-stage"><div class="welcome-stage-headline"><span class="welcome-stage-mark" aria-hidden="true"><svg width="28" height="28" viewBox="0 0 32 32" fill="none" aria-hidden="true" focusable="false"><rect x="1" y="1" width="30" height="30" rx="9" fill="currentColor" opacity="0.10"></rect><path d="M11 9.5h10.5M11 16h8M11 22.5h10.5M11 9.5v13" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><h1 class="welcome-stage-title">Into the Unknown</h1><span class="welcome-stage-preview">Preview</span><button type="button" class="welcome-stage-settings">No model configured — open Settings to add a provider and model.</button></div></div><div class="welcome-workspace-row"><div class="workspace-chip-wrap"><button type="button" class="workspace-chip" title="Choose project…" aria-label="Select project…" aria-haspopup="menu" aria-expanded="false"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.35" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M1.5 5A1.5 1.5 0 0 1 3 3.5h3l1.2 1.5H13A1.5 1.5 0 0 1 14.5 6.5L13.6 11A1.5 1.5 0 0 1 12.1 12.5H3A1.5 1.5 0 0 1 1.5 11V5Z"></path></svg><span class="workspace-chip-label">Choose project…</span><svg class="workspace-chip-chevron" width="12" height="12" viewBox="0 0 12 12" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 4.5L6 7.5L9 4.5"></path></svg></button></div></div><div class="composer-shell"><form class="composer"><div class="composer-resizer" role="separator" aria-orientation="horizontal" aria-label="Resize message input" tabindex="0"></div><div class="composer-editor composer-no-session"><textarea rows="1" readOnly="" placeholder="Choose a workspace to start" aria-label="Message the agent"></textarea><input class="sr-only" type="file" accept="image/png,image/jpeg,image/gif,image/webp" disabled=""/><input class="sr-only" type="file" multiple="" accept="image/png,image/jpeg,image/gif,image/webp,text/*,.md,.mdx,.json,.yaml,.yml,.toml,.csv,.tsv,.js,.jsx,.ts,.tsx,.py,.r,.go,.rs,.java,.c,.cpp,.h,.hpp,.css,.html,.xml,.sh,.sql" disabled=""/><div class="composer-toolbar-row"><div class="composer-tools"><button type="button" class="composer-plus" aria-expanded="false" aria-haspopup="dialog" aria-label="Insert a hero, graph, skill, or file" title="Insert a hero, graph, skill, or file" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button></div><div class="composer-trailing"><button type="submit" class="composer-primary" aria-label="Send" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up" aria-hidden="true"><path d="m5 12 7-7 7 7"></path><path d="M12 19V5"></path></svg></button></div></div></div><div class="composer-context-bar" aria-label="Run configuration"><div class="permission-chip"><button type="button" class="permission-chip-trigger" aria-label="Permission mode: Read-only" aria-haspopup="menu" aria-expanded="false" disabled=""><span class="permission-chip-icon" aria-hidden="true"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><path d="M8.20554 0.899994L14.7901 3.36857V7.01026C14.7901 12 11.0466 14.2103 8.20554 15.3C5.36446 14.2103 1.62012 12 1.62012 7.01026V3.36857L8.20554 0.899994Z" stroke="currentColor" stroke-width="1.31831" stroke-linejoin="round"></path><path d="M12.1654 5.7552L8.9447 9.41475C8.73044 9.65816 8.53628 9.8804 8.35774 10.0423C8.1713 10.2114 7.94235 10.3717 7.64016 10.4254C7.48207 10.4535 7.32 10.4552 7.16151 10.4294C6.85843 10.3801 6.62728 10.2223 6.43836 10.0559C6.25752 9.89653 6.06037 9.67732 5.84264 9.43705L4.72925 8.20897L5.63557 7.38707L6.74897 8.61594C6.98603 8.87755 7.12974 9.03533 7.24673 9.13839C7.31033 9.19443 7.34485 9.21476 7.35823 9.22122C7.38068 9.22484 7.40352 9.22515 7.42593 9.22122C7.40522 9.22502 7.42893 9.23294 7.53583 9.136C7.65132 9.03126 7.79316 8.87139 8.02643 8.60638L11.2479 4.94763L12.1654 5.7552Z" fill="currentColor"></path></svg></span><span class="permission-chip-label">Read-only</span><svg class="permission-chip-chevron" width="14" height="14" viewBox="0 0 14 14" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3.5 5.25L7 8.75L10.5 5.25"></path></svg></button></div><span class="composer-context-spacer" aria-hidden="true"></span><div class="model-select"><button type="button" class="model-select-trigger" aria-label="Select model" aria-haspopup="menu" aria-expanded="false" title="Select model" disabled=""><span class="model-select-trigger-label">Select model</span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down model-select-chevron" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></form><div class="composer-status-line"></div></div></div></div></main></div><div class="right-panel-container right-panel-closed" style="width:680px;min-width:680px"><button type="button" class="right-panel-back-button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Back to conversation</button><div class="RightPanelLanes-module__CJ4Bja__lanes" data-mode="single" data-testid="right-panel-lanes"><div class="RightPanelLanes-module__CJ4Bja__primary" style="flex:1 1 auto" data-testid="right-panel-primary"><div class="right-panel-strip"><div role="tablist" aria-label="Workspace panel tabs" class="TabBar-module__VnsErG__bar"><div role="tab" tabindex="0" aria-selected="true" draggable="false" class="TabBar-module__VnsErG__tab" data-active="true"><span class="TabBar-module__VnsErG__icon"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder" aria-hidden="true"><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg></span><span class="TabBar-module__VnsErG__label" title="Files">Files</span><button type="button" class="TabBar-module__VnsErG__close" title="Close" aria-label="Close Files"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><div role="tab" tabindex="-1" aria-selected="false" draggable="false" class="TabBar-module__VnsErG__tab"><span class="TabBar-module__VnsErG__icon"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-workflow" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg></span><span class="TabBar-module__VnsErG__label" title="Graphs">Graphs</span><button type="button" class="TabBar-module__VnsErG__close" title="Close" aria-label="Close Graphs"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div><div role="tab" tabindex="-1" aria-selected="false" draggable="false" class="TabBar-module__VnsErG__tab"><span class="TabBar-module__VnsErG__icon"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-wrench" aria-hidden="true"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z"></path></svg></span><span class="TabBar-module__VnsErG__label" title="Status">Status</span><button type="button" class="TabBar-module__VnsErG__close" title="Close" aria-label="Close Status"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div></div><button type="button" class="right-panel-strip-action" aria-pressed="false" aria-label="Pin this channel" title="Pin this channel"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></button></div><div class="RightPanelLanes-module__CJ4Bja__body"><div class="right-panel-channel-slot"><div class="file-tree-panel"><div class="file-tree-header"><div class="file-tree-heading">Files</div><div class="file-tree-path" title="/workspace">No project selected</div><div class="file-tree-actions"><button type="button" class="file-tree-action" aria-label="New file" title="New file" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-plus" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M9 15h6"></path><path d="M12 18v-6"></path></svg></button><button type="button" class="file-tree-action" aria-label="New folder" title="New folder" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-folder-plus" aria-hidden="true"><path d="M12 10v6"></path><path d="M9 13h6"></path><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"></path></svg></button></div><label class="file-filter"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-search" aria-hidden="true"><path d="m21 21-4.34-4.34"></path><circle cx="11" cy="11" r="8"></circle></svg><span class="sr-only">Filter files</span><input placeholder="Filter files..." disabled="" value=""/></label></div><div class="file-tree-list"><div class="file-tree-empty">Select a project to browse files.</div></div></div></div></div></div></div></div></div></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
2
+ $RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[26356,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"WorkerGenerationGuard\"]\n3:I[27437,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"LocaleProvider\"]\n4:I[85026,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"WorkspaceProvider\"]\n5:I[39756,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"default\"]\n6:I[37457,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"default\"]\n7:\"$Sreact.suspense\"\n8:I[59665,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\",\"/_next/static/chunks/0twsdyb7~zp7n.js\",\"/_next/static/chunks/0j5p~dc9hcv56.js\"],\"AppShell\"]\n9:I[97367,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"OutletBoundary\"]\nb:I[97367,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"ViewportBoundary\"]\nd:I[97367,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"MetadataBoundary\"]\nf:I[68027,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0o7ckb1vvjz_t.css\",\"style\"]\n:HL[\"/_next/static/chunks/0pzgp1v~.454n.css\",\"style\"]\n:HL[\"/_next/static/chunks/0mysj884b2.c5.css\",\"style\"]\n:HL[\"/_next/static/chunks/07jz6e~ba22te.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0o7ckb1vvjz_t.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0pzgp1v~.454n.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0mysj884b2.c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0e~k9df0bajhc.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/0qpe-en7gygy..js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"script\",null,{\"id\":\"theme-init\",\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var t=localStorage.getItem(\\\"ennote-theme\\\");var d=t===\\\"dark\\\"||(t!==\\\"light\\\"\u0026\u0026matchMedia(\\\"(prefers-color-scheme:dark)\\\").matches);document.documentElement.classList.toggle(\\\"dark\\\",d);document.documentElement.dataset.theme=d?\\\"dark\\\":\\\"light\\\"}catch(e){}})();\"}}],[\"$\",\"script\",null,{\"id\":\"locale-init\",\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var l=localStorage.getItem(\\\"ennote-locale\\\");document.documentElement.lang=(l===\\\"zh-CN\\\")?\\\"zh-CN\\\":\\\"en\\\"}catch(e){}})();\"}}]]}],[\"$\",\"body\",null,{\"style\":{\"height\":\"100dvh\",\"display\":\"flex\",\"flexDirection\":\"column\"},\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"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.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$7\",null,{\"children\":[\"$\",\"$L8\",null,{}]}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/07jz6e~ba22te.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0twsdyb7~zp7n.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0j5p~dc9hcv56.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Ld\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Le\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0o7ckb1vvjz_t.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0pzgp1v~.454n.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0mysj884b2.c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"QzO4obvIvhjjd6K9KPuvm\"}\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[27201,[\"/_next/static/chunks/0_yt3a8a9j1yd.js\",\"/_next/static/chunks/0e~k9df0bajhc.js\",\"/_next/static/chunks/0qpe-en7gygy..js\"],\"IconMark\"]\na:null\ne:[[\"$\",\"title\",\"0\",{\"children\":\"Ennote\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Auditable local agent runtime built around Agent Flow\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.png?icon.0l6z533ta5iiy.png\",\"sizes\":\"64x64\",\"type\":\"image/png\"}],[\"$\",\"$L10\",\"3\",{}]]\n"])</script></body></html>
package/out/index.txt CHANGED
@@ -1,21 +1,21 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[26356,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"WorkerGenerationGuard"]
3
- 3:I[27437,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"LocaleProvider"]
4
- 4:I[85026,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"WorkspaceProvider"]
5
- 5:I[39756,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"default"]
6
- 6:I[37457,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"default"]
2
+ 2:I[26356,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"WorkerGenerationGuard"]
3
+ 3:I[27437,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"LocaleProvider"]
4
+ 4:I[85026,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"WorkspaceProvider"]
5
+ 5:I[39756,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"default"]
6
+ 6:I[37457,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"default"]
7
7
  7:"$Sreact.suspense"
8
- 8:I[59665,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js","/_next/static/chunks/0twsdyb7~zp7n.js","/_next/static/chunks/0u~0j2k3ooiya.js"],"AppShell"]
9
- 9:I[97367,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"OutletBoundary"]
10
- b:I[97367,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"ViewportBoundary"]
11
- d:I[97367,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"MetadataBoundary"]
12
- f:I[68027,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"default",1]
8
+ 8:I[59665,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js","/_next/static/chunks/0twsdyb7~zp7n.js","/_next/static/chunks/0j5p~dc9hcv56.js"],"AppShell"]
9
+ 9:I[97367,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"OutletBoundary"]
10
+ b:I[97367,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"ViewportBoundary"]
11
+ d:I[97367,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"MetadataBoundary"]
12
+ f:I[68027,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"default",1]
13
13
  :HL["/_next/static/chunks/0o7ckb1vvjz_t.css","style"]
14
- :HL["/_next/static/chunks/06_y.lv_svbtb.css","style"]
14
+ :HL["/_next/static/chunks/0pzgp1v~.454n.css","style"]
15
15
  :HL["/_next/static/chunks/0mysj884b2.c5.css","style"]
16
16
  :HL["/_next/static/chunks/07jz6e~ba22te.css","style"]
17
- 0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0o7ckb1vvjz_t.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/06_y.lv_svbtb.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","2",{"rel":"stylesheet","href":"/_next/static/chunks/0mysj884b2.c5.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0_yt3a8a9j1yd.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0e~k9df0bajhc.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/083xw1nubbiw6.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","script",null,{"id":"theme-init","dangerouslySetInnerHTML":{"__html":"(function(){try{var t=localStorage.getItem(\"ennote-theme\");var d=t===\"dark\"||(t!==\"light\"&&matchMedia(\"(prefers-color-scheme:dark)\").matches);document.documentElement.classList.toggle(\"dark\",d);document.documentElement.dataset.theme=d?\"dark\":\"light\"}catch(e){}})();"}}],["$","script",null,{"id":"locale-init","dangerouslySetInnerHTML":{"__html":"(function(){try{var l=localStorage.getItem(\"ennote-locale\");document.documentElement.lang=(l===\"zh-CN\")?\"zh-CN\":\"en\"}catch(e){}})();"}}]]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"children":["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","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."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[["$","$7",null,{"children":["$","$L8",null,{}]}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/07jz6e~ba22te.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0twsdyb7~zp7n.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0u~0j2k3ooiya.js","async":true,"nonce":"$undefined"}]],["$","$L9",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$7",null,{"name":"Next.Metadata","children":"$Le"}]}]}],null]}],false]],"m":"$undefined","G":["$f",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0o7ckb1vvjz_t.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/06_y.lv_svbtb.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","2",{"rel":"stylesheet","href":"/_next/static/chunks/0mysj884b2.c5.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"g1rJaZRqv7r0ZY4hnAnlq"}
17
+ 0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0o7ckb1vvjz_t.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/0pzgp1v~.454n.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","2",{"rel":"stylesheet","href":"/_next/static/chunks/0mysj884b2.c5.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0_yt3a8a9j1yd.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0e~k9df0bajhc.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/0qpe-en7gygy..js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":[["$","head",null,{"children":[["$","script",null,{"id":"theme-init","dangerouslySetInnerHTML":{"__html":"(function(){try{var t=localStorage.getItem(\"ennote-theme\");var d=t===\"dark\"||(t!==\"light\"&&matchMedia(\"(prefers-color-scheme:dark)\").matches);document.documentElement.classList.toggle(\"dark\",d);document.documentElement.dataset.theme=d?\"dark\":\"light\"}catch(e){}})();"}}],["$","script",null,{"id":"locale-init","dangerouslySetInnerHTML":{"__html":"(function(){try{var l=localStorage.getItem(\"ennote-locale\");document.documentElement.lang=(l===\"zh-CN\")?\"zh-CN\":\"en\"}catch(e){}})();"}}]]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L2",null,{"children":["$","$L3",null,{"children":["$","$L4",null,{"children":["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","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."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[["$","$7",null,{"children":["$","$L8",null,{}]}],[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/07jz6e~ba22te.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/0twsdyb7~zp7n.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/0j5p~dc9hcv56.js","async":true,"nonce":"$undefined"}]],["$","$L9",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$Lb",null,{"children":"$Lc"}],["$","div",null,{"hidden":true,"children":["$","$Ld",null,{"children":["$","$7",null,{"name":"Next.Metadata","children":"$Le"}]}]}],null]}],false]],"m":"$undefined","G":["$f",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/0o7ckb1vvjz_t.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/0pzgp1v~.454n.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","2",{"rel":"stylesheet","href":"/_next/static/chunks/0mysj884b2.c5.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"QzO4obvIvhjjd6K9KPuvm"}
18
18
  c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
19
- 10:I[27201,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/083xw1nubbiw6.js"],"IconMark"]
19
+ 10:I[27201,["/_next/static/chunks/0_yt3a8a9j1yd.js","/_next/static/chunks/0e~k9df0bajhc.js","/_next/static/chunks/0qpe-en7gygy..js"],"IconMark"]
20
20
  a:null
21
21
  e:[["$","title","0",{"children":"Ennote"}],["$","meta","1",{"name":"description","content":"Auditable local agent runtime built around Agent Flow"}],["$","link","2",{"rel":"icon","href":"/icon.png?icon.0l6z533ta5iiy.png","sizes":"64x64","type":"image/png"}],["$","$L10","3",{}]]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seqyuan/ennote",
3
- "version": "0.14.0",
3
+ "version": "0.15.1",
4
4
  "description": "Auditable local agent runtime built around Agent Flow",
5
5
  "repository": {
6
6
  "type": "git",
@@ -0,0 +1,121 @@
1
+ # Generative Canvas
2
+
3
+ A **widget** is an HTML page the reader sees live in the conversation: an SVG
4
+ diagram, an interactive chart, a calculator, a parameter explorer. Unlike a
5
+ `static_html` artifact it may run scripts — inside an isolated frame with no
6
+ network, no cookies and no access to the Workspace.
7
+
8
+ Use it when the answer is a picture the user should be able to poke at. Do not use
9
+ it for ordinary prose, tables, or files.
10
+
11
+ ## How to publish one
12
+
13
+ 1. Write the page into the Workspace with `write` (or generate it with a script and
14
+ `publish_artifact` the result):
15
+
16
+ ```
17
+ write({ path: "/workspace/canvas.html", content: "<!doctype html>…" })
18
+ ```
19
+
20
+ 2. Publish it, naming the kind:
21
+
22
+ ```
23
+ publish_artifact({ path: "/workspace/canvas.html", kind: "widget" })
24
+ ```
25
+
26
+ `kind: "widget"` is required. Without it an `.html` file is published as
27
+ `static_html`, which is sanitized into a script-free document — your SVG and your
28
+ script would both disappear.
29
+
30
+ ## Hard limits
31
+
32
+ | Limit | Value | Why |
33
+ |---|---|---|
34
+ | Size | **128 KiB** | it travels to phones over a bounded channel; this is not a document download |
35
+ | Extension | `.html` / `.htm`, UTF-8, starts with a tag | classification |
36
+ | Scripts | inline, or from `cdnjs.cloudflare.com`, `cdn.jsdelivr.net`, `unpkg.com`, `esm.sh` | the only allowed hosts |
37
+ | Network | **none** — no `fetch`, no `XHR`, no WebSocket, no remote images | the frame is sandboxed |
38
+ | Images | inline SVG, `data:` or `blob:` | remote `img` is blocked on purpose |
39
+ | `eval` / `new Function` | blocked | no `unsafe-eval` |
40
+ | Width | 320–900 px, fluid | the frame is a message, not a screen |
41
+ | Height | measured and reported; capped at 900 px in the timeline | beyond that it scrolls inside the frame |
42
+
43
+ If a widget needs data, **you** read it and inline a bounded snapshot:
44
+
45
+ ```
46
+ read({ path: "/workspace/markers.csv" }) → embed at most a few hundred rows
47
+ ```
48
+
49
+ A widget cannot read anything itself. Inlining is also what makes it auditable: the
50
+ published bytes carry the data that produced the picture.
51
+
52
+ ## Structure
53
+
54
+ ```html
55
+ <!doctype html>
56
+ <style>
57
+ .card { background: var(--color-background-secondary); color: var(--color-text-primary);
58
+ border: 1px solid var(--color-border-secondary); border-radius: var(--radius-md); }
59
+ </style>
60
+ <div class="card">
61
+ <svg viewBox="0 0 640 320" width="100%" height="320">…</svg>
62
+ </div>
63
+ <script>
64
+ // runs after the markup; keep it at the end
65
+ </script>
66
+ ```
67
+
68
+ Rules of thumb:
69
+
70
+ - **Self-contained first.** Inline SVG and inline CSS beat a CDN. Use Chart.js (from
71
+ `cdnjs.cloudflare.com`) only when a real chart is needed, and never a chart library
72
+ for something four `<rect>`s can draw.
73
+ - **Never fix a pixel width.** Use `width="100%"` and a `viewBox`; the frame is
74
+ narrow on a phone.
75
+ - **Put `<script>` at the very end.** Scripts before the content delay the first
76
+ paint and the height report.
77
+ - **Stay under a few hundred DOM nodes.** A canvas that repaints constantly will
78
+ visibly cost a phone battery.
79
+
80
+ ## Theme
81
+
82
+ The frame receives these CSS custom properties, already resolved for the current
83
+ light/dark theme. Use them instead of literal colors so the widget belongs to the
84
+ app:
85
+
86
+ | Property | Use |
87
+ |---|---|
88
+ | `--color-background-primary` / `-secondary` / `-tertiary` | page, card, inset |
89
+ | `--color-text-primary` / `-secondary` / `-tertiary` | headings, body, captions |
90
+ | `--color-border-primary` / `-secondary` / `-tertiary` | box edges |
91
+ | `--color-accent` | the one thing to look at |
92
+ | `--color-background-success` / `-warning` / `-danger` / `-info` | status fills |
93
+ | `--color-text-success` / `-warning` / `-danger` / `-info` | status text |
94
+ | `--color-chart-1` … `--color-chart-6` | categorical series |
95
+ | `--font-sans` / `--font-mono` | typography |
96
+ | `--radius-sm` / `-md` / `-lg` | corners |
97
+
98
+ Body text at 14 px, captions no smaller than 11 px. The theme can change while the
99
+ widget is on screen; anything styled with these properties follows automatically.
100
+
101
+ ## Picking a form
102
+
103
+ | The question is about | Draw |
104
+ |---|---|
105
+ | a process, pipeline, or decision path | flowchart: boxes, arrows, one decision shape |
106
+ | change over time | line chart, or a timeline with labelled events |
107
+ | composition, proportions | stacked bar or a small multiple; a pie only for two or three parts |
108
+ | ranking | sorted horizontal bars, labels at the left |
109
+ | relationships | node-link diagram, at most ~15 nodes |
110
+ | a comparison of two things | two matching columns with the same rows |
111
+
112
+ Every widget needs a caption inside the page saying what it shows and in what
113
+ units. A picture with no units is decoration.
114
+
115
+ ## Failure is visible
116
+
117
+ A script that throws, or a dependency that cannot load, degrades the widget in
118
+ place: the reader sees the drawing plus a notice and a link to the source. Nothing
119
+ you publish can break the conversation, the panel, or a later message. That is a
120
+ safety net, not a licence — publish a page you have reasoned about, not one that
121
+ might hang.
@@ -0,0 +1,7 @@
1
+ {
2
+ "id": "generative-canvas",
3
+ "version": "0.1.0",
4
+ "description": "Publish an interactive HTML canvas (SVG diagram, chart, calculator) as a widget artifact",
5
+ "prompt": "SKILL.md",
6
+ "allowedTools": ["read", "write", "publish_artifact", "ls", "grep", "find"]
7
+ }