@maudecode/talaria-web 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/contract_versions.json +18 -0
- package/dist/api/auth-raw.d.ts +9 -0
- package/dist/api/auth-raw.js +134 -0
- package/dist/api/auth-raw.js.map +1 -0
- package/dist/api/automation-raw.d.ts +16 -0
- package/dist/api/automation-raw.js +340 -0
- package/dist/api/automation-raw.js.map +1 -0
- package/dist/api/automation-router.d.ts +788 -0
- package/dist/api/automation-router.js +248 -0
- package/dist/api/automation-router.js.map +1 -0
- package/dist/api/chat-router.d.ts +375 -0
- package/dist/api/chat-router.js +446 -0
- package/dist/api/chat-router.js.map +1 -0
- package/dist/api/git-router.d.ts +681 -0
- package/dist/api/git-router.js +275 -0
- package/dist/api/git-router.js.map +1 -0
- package/dist/api/raw-routes.d.ts +10 -0
- package/dist/api/raw-routes.js +466 -0
- package/dist/api/raw-routes.js.map +1 -0
- package/dist/api/router.d.ts +226 -0
- package/dist/api/router.js +331 -0
- package/dist/api/router.js.map +1 -0
- package/dist/api/session-visibility.d.ts +12 -0
- package/dist/api/session-visibility.js +51 -0
- package/dist/api/session-visibility.js.map +1 -0
- package/dist/api/sessions-router.d.ts +1728 -0
- package/dist/api/sessions-router.js +815 -0
- package/dist/api/sessions-router.js.map +1 -0
- package/dist/api/settings-router.d.ts +592 -0
- package/dist/api/settings-router.js +474 -0
- package/dist/api/settings-router.js.map +1 -0
- package/dist/api/sse-routes.d.ts +51 -0
- package/dist/api/sse-routes.js +602 -0
- package/dist/api/sse-routes.js.map +1 -0
- package/dist/api/tools-raw.d.ts +5 -0
- package/dist/api/tools-raw.js +291 -0
- package/dist/api/tools-raw.js.map +1 -0
- package/dist/api/tools-router.d.ts +494 -0
- package/dist/api/tools-router.js +349 -0
- package/dist/api/tools-router.js.map +1 -0
- package/dist/app.d.ts +4787 -0
- package/dist/app.js +453 -0
- package/dist/app.js.map +1 -0
- package/dist/auth/cookies.d.ts +17 -0
- package/dist/auth/cookies.js +42 -0
- package/dist/auth/cookies.js.map +1 -0
- package/dist/auth/crypto.d.ts +9 -0
- package/dist/auth/crypto.js +38 -0
- package/dist/auth/crypto.js.map +1 -0
- package/dist/auth/gate.d.ts +39 -0
- package/dist/auth/gate.js +406 -0
- package/dist/auth/gate.js.map +1 -0
- package/dist/auth/oidc.d.ts +138 -0
- package/dist/auth/oidc.js +836 -0
- package/dist/auth/oidc.js.map +1 -0
- package/dist/auth/passkeys.d.ts +49 -0
- package/dist/auth/passkeys.js +310 -0
- package/dist/auth/passkeys.js.map +1 -0
- package/dist/auth/store.d.ts +116 -0
- package/dist/auth/store.js +485 -0
- package/dist/auth/store.js.map +1 -0
- package/dist/bin/talaria-web-mcp.d.ts +2 -0
- package/dist/bin/talaria-web-mcp.js +12 -0
- package/dist/bin/talaria-web-mcp.js.map +1 -0
- package/dist/bin/talaria-web.d.ts +2 -0
- package/dist/bin/talaria-web.js +87 -0
- package/dist/bin/talaria-web.js.map +1 -0
- package/dist/cli/ctl.d.ts +58 -0
- package/dist/cli/ctl.js +643 -0
- package/dist/cli/ctl.js.map +1 -0
- package/dist/cli/dotenv.d.ts +30 -0
- package/dist/cli/dotenv.js +115 -0
- package/dist/cli/dotenv.js.map +1 -0
- package/dist/cli/launcher.d.ts +49 -0
- package/dist/cli/launcher.js +213 -0
- package/dist/cli/launcher.js.map +1 -0
- package/dist/cli/supervise.d.ts +10 -0
- package/dist/cli/supervise.js +33 -0
- package/dist/cli/supervise.js.map +1 -0
- package/dist/cli/web-root.d.ts +2 -0
- package/dist/cli/web-root.js +23 -0
- package/dist/cli/web-root.js.map +1 -0
- package/dist/config/agent-config.d.ts +109 -0
- package/dist/config/agent-config.js +632 -0
- package/dist/config/agent-config.js.map +1 -0
- package/dist/config.d.ts +36 -0
- package/dist/config.js +105 -0
- package/dist/config.js.map +1 -0
- package/dist/fs/atomic.d.ts +7 -0
- package/dist/fs/atomic.js +68 -0
- package/dist/fs/atomic.js.map +1 -0
- package/dist/http/addresses.d.ts +5 -0
- package/dist/http/addresses.js +68 -0
- package/dist/http/addresses.js.map +1 -0
- package/dist/http/capped.d.ts +2 -0
- package/dist/http/capped.js +22 -0
- package/dist/http/capped.js.map +1 -0
- package/dist/http/context.d.ts +281 -0
- package/dist/http/context.js +327 -0
- package/dist/http/context.js.map +1 -0
- package/dist/http/csp.d.ts +11 -0
- package/dist/http/csp.js +51 -0
- package/dist/http/csp.js.map +1 -0
- package/dist/http/origin.d.ts +39 -0
- package/dist/http/origin.js +183 -0
- package/dist/http/origin.js.map +1 -0
- package/dist/http/pinned.d.ts +18 -0
- package/dist/http/pinned.js +62 -0
- package/dist/http/pinned.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/server.d.ts +29 -0
- package/dist/mcp/server.js +221 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/onboarding.d.ts +57 -0
- package/dist/onboarding.js +381 -0
- package/dist/onboarding.js.map +1 -0
- package/dist/profiles/profiles.d.ts +96 -0
- package/dist/profiles/profiles.js +476 -0
- package/dist/profiles/profiles.js.map +1 -0
- package/dist/projects.d.ts +36 -0
- package/dist/projects.js +102 -0
- package/dist/projects.js.map +1 -0
- package/dist/providers/catalog.d.ts +118 -0
- package/dist/providers/catalog.js +868 -0
- package/dist/providers/catalog.js.map +1 -0
- package/dist/providers/env-file.d.ts +6 -0
- package/dist/providers/env-file.js +106 -0
- package/dist/providers/env-file.js.map +1 -0
- package/dist/providers/runtime-env.d.ts +20 -0
- package/dist/providers/runtime-env.js +85 -0
- package/dist/providers/runtime-env.js.map +1 -0
- package/dist/providers/tables.d.ts +54 -0
- package/dist/providers/tables.js +54 -0
- package/dist/providers/tables.js.map +1 -0
- package/dist/redact.d.ts +23 -0
- package/dist/redact.js +337 -0
- package/dist/redact.js.map +1 -0
- package/dist/release.d.ts +16 -0
- package/dist/release.js +114 -0
- package/dist/release.js.map +1 -0
- package/dist/runtime.d.ts +21 -0
- package/dist/runtime.js +680 -0
- package/dist/runtime.js.map +1 -0
- package/dist/server.d.ts +20 -0
- package/dist/server.js +90 -0
- package/dist/server.js.map +1 -0
- package/dist/sessions/anchor.d.ts +43 -0
- package/dist/sessions/anchor.js +311 -0
- package/dist/sessions/anchor.js.map +1 -0
- package/dist/sessions/cli-sessions.d.ts +27 -0
- package/dist/sessions/cli-sessions.js +158 -0
- package/dist/sessions/cli-sessions.js.map +1 -0
- package/dist/sessions/completions.d.ts +62 -0
- package/dist/sessions/completions.js +332 -0
- package/dist/sessions/completions.js.map +1 -0
- package/dist/sessions/drafts.d.ts +26 -0
- package/dist/sessions/drafts.js +117 -0
- package/dist/sessions/drafts.js.map +1 -0
- package/dist/sessions/events.d.ts +32 -0
- package/dist/sessions/events.js +80 -0
- package/dist/sessions/events.js.map +1 -0
- package/dist/sessions/export.d.ts +4 -0
- package/dist/sessions/export.js +186 -0
- package/dist/sessions/export.js.map +1 -0
- package/dist/sessions/gateway-watcher.d.ts +58 -0
- package/dist/sessions/gateway-watcher.js +199 -0
- package/dist/sessions/gateway-watcher.js.map +1 -0
- package/dist/sessions/journal.d.ts +103 -0
- package/dist/sessions/journal.js +543 -0
- package/dist/sessions/journal.js.map +1 -0
- package/dist/sessions/list.d.ts +130 -0
- package/dist/sessions/list.js +846 -0
- package/dist/sessions/list.js.map +1 -0
- package/dist/sessions/merge.d.ts +57 -0
- package/dist/sessions/merge.js +517 -0
- package/dist/sessions/merge.js.map +1 -0
- package/dist/sessions/pending.d.ts +69 -0
- package/dist/sessions/pending.js +271 -0
- package/dist/sessions/pending.js.map +1 -0
- package/dist/sessions/reasoning-titles.d.ts +31 -0
- package/dist/sessions/reasoning-titles.js +143 -0
- package/dist/sessions/reasoning-titles.js.map +1 -0
- package/dist/sessions/relay.d.ts +131 -0
- package/dist/sessions/relay.js +577 -0
- package/dist/sessions/relay.js.map +1 -0
- package/dist/sessions/service.d.ts +189 -0
- package/dist/sessions/service.js +1344 -0
- package/dist/sessions/service.js.map +1 -0
- package/dist/sessions/session.d.ts +131 -0
- package/dist/sessions/session.js +505 -0
- package/dist/sessions/session.js.map +1 -0
- package/dist/sessions/shares.d.ts +31 -0
- package/dist/sessions/shares.js +267 -0
- package/dist/sessions/shares.js.map +1 -0
- package/dist/sessions/state-db.d.ts +52 -0
- package/dist/sessions/state-db.js +641 -0
- package/dist/sessions/state-db.js.map +1 -0
- package/dist/sessions/state-saved.d.ts +13 -0
- package/dist/sessions/state-saved.js +47 -0
- package/dist/sessions/state-saved.js.map +1 -0
- package/dist/sessions/store.d.ts +124 -0
- package/dist/sessions/store.js +790 -0
- package/dist/sessions/store.js.map +1 -0
- package/dist/sessions/streams.d.ts +90 -0
- package/dist/sessions/streams.js +200 -0
- package/dist/sessions/streams.js.map +1 -0
- package/dist/sessions/titles.d.ts +17 -0
- package/dist/sessions/titles.js +231 -0
- package/dist/sessions/titles.js.map +1 -0
- package/dist/sessions/todo.d.ts +8 -0
- package/dist/sessions/todo.js +72 -0
- package/dist/sessions/todo.js.map +1 -0
- package/dist/sessions/turn-context.d.ts +27 -0
- package/dist/sessions/turn-context.js +136 -0
- package/dist/sessions/turn-context.js.map +1 -0
- package/dist/sessions/turn.d.ts +178 -0
- package/dist/sessions/turn.js +1357 -0
- package/dist/sessions/turn.js.map +1 -0
- package/dist/sessions/window.d.ts +10 -0
- package/dist/sessions/window.js +151 -0
- package/dist/sessions/window.js.map +1 -0
- package/dist/settings.d.ts +57 -0
- package/dist/settings.js +481 -0
- package/dist/settings.js.map +1 -0
- package/dist/sidecar/client.d.ts +75 -0
- package/dist/sidecar/client.js +252 -0
- package/dist/sidecar/client.js.map +1 -0
- package/dist/sidecar/discover.d.ts +22 -0
- package/dist/sidecar/discover.js +146 -0
- package/dist/sidecar/discover.js.map +1 -0
- package/dist/sidecar/fake.d.ts +37 -0
- package/dist/sidecar/fake.js +79 -0
- package/dist/sidecar/fake.js.map +1 -0
- package/dist/spa.d.ts +42 -0
- package/dist/spa.js +145 -0
- package/dist/spa.js.map +1 -0
- package/dist/startup.d.ts +19 -0
- package/dist/startup.js +44 -0
- package/dist/startup.js.map +1 -0
- package/dist/test/harness.d.ts +41 -0
- package/dist/test/harness.js +123 -0
- package/dist/test/harness.js.map +1 -0
- package/dist/text/diff.d.ts +16 -0
- package/dist/text/diff.js +122 -0
- package/dist/text/diff.js.map +1 -0
- package/dist/text/markdown.d.ts +8 -0
- package/dist/text/markdown.js +185 -0
- package/dist/text/markdown.js.map +1 -0
- package/dist/tools/crons.d.ts +51 -0
- package/dist/tools/crons.js +317 -0
- package/dist/tools/crons.js.map +1 -0
- package/dist/tools/extensions.d.ts +92 -0
- package/dist/tools/extensions.js +1096 -0
- package/dist/tools/extensions.js.map +1 -0
- package/dist/tools/health.d.ts +21 -0
- package/dist/tools/health.js +334 -0
- package/dist/tools/health.js.map +1 -0
- package/dist/tools/hygiene.d.ts +29 -0
- package/dist/tools/hygiene.js +112 -0
- package/dist/tools/hygiene.js.map +1 -0
- package/dist/tools/insights.d.ts +3 -0
- package/dist/tools/insights.js +92 -0
- package/dist/tools/insights.js.map +1 -0
- package/dist/tools/kanban.d.ts +25 -0
- package/dist/tools/kanban.js +79 -0
- package/dist/tools/kanban.js.map +1 -0
- package/dist/tools/mcp-health.d.ts +28 -0
- package/dist/tools/mcp-health.js +207 -0
- package/dist/tools/mcp-health.js.map +1 -0
- package/dist/tools/mcp.d.ts +34 -0
- package/dist/tools/mcp.js +269 -0
- package/dist/tools/mcp.js.map +1 -0
- package/dist/tools/memory.d.ts +20 -0
- package/dist/tools/memory.js +216 -0
- package/dist/tools/memory.js.map +1 -0
- package/dist/tools/skills.d.ts +43 -0
- package/dist/tools/skills.js +193 -0
- package/dist/tools/skills.js.map +1 -0
- package/dist/tools/terminal.d.ts +96 -0
- package/dist/tools/terminal.js +324 -0
- package/dist/tools/terminal.js.map +1 -0
- package/dist/tools/updates.d.ts +151 -0
- package/dist/tools/updates.js +1151 -0
- package/dist/tools/updates.js.map +1 -0
- package/dist/util.d.ts +6 -0
- package/dist/util.js +40 -0
- package/dist/util.js.map +1 -0
- package/dist/workspace/fs.d.ts +61 -0
- package/dist/workspace/fs.js +555 -0
- package/dist/workspace/fs.js.map +1 -0
- package/dist/workspace/git.d.ts +204 -0
- package/dist/workspace/git.js +1236 -0
- package/dist/workspace/git.js.map +1 -0
- package/dist/workspace/media.d.ts +47 -0
- package/dist/workspace/media.js +448 -0
- package/dist/workspace/media.js.map +1 -0
- package/dist/workspace/paths.d.ts +6 -0
- package/dist/workspace/paths.js +41 -0
- package/dist/workspace/paths.js.map +1 -0
- package/dist/workspace/rollback.d.ts +29 -0
- package/dist/workspace/rollback.js +337 -0
- package/dist/workspace/rollback.js.map +1 -0
- package/dist/workspace/unzip.d.ts +9 -0
- package/dist/workspace/unzip.js +61 -0
- package/dist/workspace/unzip.js.map +1 -0
- package/dist/workspace/upload.d.ts +40 -0
- package/dist/workspace/upload.js +215 -0
- package/dist/workspace/upload.js.map +1 -0
- package/dist/workspace/workspaces.d.ts +84 -0
- package/dist/workspace/workspaces.js +663 -0
- package/dist/workspace/workspaces.js.map +1 -0
- package/dist/workspace/worktrees.d.ts +14 -0
- package/dist/workspace/worktrees.js +171 -0
- package/dist/workspace/worktrees.js.map +1 -0
- package/dist/workspace/zip.d.ts +16 -0
- package/dist/workspace/zip.js +205 -0
- package/dist/workspace/zip.js.map +1 -0
- package/package.json +54 -0
- package/sidecar/agent_dependency.json +11 -0
- package/sidecar/scripts/record-fixtures.py +72 -0
- package/sidecar/scripts/replay_sidecar.py +113 -0
- package/sidecar/scripts/test.sh +22 -0
- package/sidecar/talaria_sidecar/__init__.py +10 -0
- package/sidecar/talaria_sidecar/__main__.py +46 -0
- package/sidecar/talaria_sidecar/errors.py +41 -0
- package/sidecar/talaria_sidecar/home.py +103 -0
- package/sidecar/talaria_sidecar/methods/__init__.py +37 -0
- package/sidecar/talaria_sidecar/methods/aux.py +160 -0
- package/sidecar/talaria_sidecar/methods/chat.py +791 -0
- package/sidecar/talaria_sidecar/methods/commands.py +340 -0
- package/sidecar/talaria_sidecar/methods/config.py +131 -0
- package/sidecar/talaria_sidecar/methods/cron.py +558 -0
- package/sidecar/talaria_sidecar/methods/gateway.py +106 -0
- package/sidecar/talaria_sidecar/methods/goals.py +225 -0
- package/sidecar/talaria_sidecar/methods/kanban.py +723 -0
- package/sidecar/talaria_sidecar/methods/mcp.py +65 -0
- package/sidecar/talaria_sidecar/methods/process.py +155 -0
- package/sidecar/talaria_sidecar/methods/profiles.py +254 -0
- package/sidecar/talaria_sidecar/methods/providers.py +241 -0
- package/sidecar/talaria_sidecar/methods/runtime.py +68 -0
- package/sidecar/talaria_sidecar/methods/skills.py +262 -0
- package/sidecar/talaria_sidecar/methods/state_db.py +418 -0
- package/sidecar/talaria_sidecar/methods/stt.py +131 -0
- package/sidecar/talaria_sidecar/methods/text.py +85 -0
- package/sidecar/talaria_sidecar/methods/usage.py +59 -0
- package/sidecar/talaria_sidecar/methods/worktree.py +71 -0
- package/sidecar/talaria_sidecar/rpc.py +218 -0
- package/sidecar/talaria_sidecar/runtime.py +330 -0
- package/static/brand/apple-touch-icon.png +0 -0
- package/static/brand/brandmark.svg +12 -0
- package/static/brand/favicon-192.png +0 -0
- package/static/brand/favicon-32.png +0 -0
- package/static/brand/favicon-512.png +0 -0
- package/static/brand/favicon-512.svg +14 -0
- package/static/brand/favicon-dark.svg +14 -0
- package/static/brand/favicon-light.svg +14 -0
- package/static/brand/favicon.ico +0 -0
- package/static/brand/favicon.svg +14 -0
- package/static/dist/FILES.txt +515 -0
- package/static/dist/assets/AppShell-gs0grlbs.js +1 -0
- package/static/dist/assets/ChatPage-gi1xlz52.js +18 -0
- package/static/dist/assets/ChatPage-gmu5c7lf.css +1 -0
- package/static/dist/assets/HubRoute-qs9vzuh0.js +2 -0
- package/static/dist/assets/InterVariable-nonokl6i.woff2 +0 -0
- package/static/dist/assets/KaTeX_AMS-Regular-e1why8ff.woff2 +0 -0
- package/static/dist/assets/KaTeX_AMS-Regular-mec5w1mt.woff +0 -0
- package/static/dist/assets/KaTeX_AMS-Regular-mos1wgtv.ttf +0 -0
- package/static/dist/assets/KaTeX_Caligraphic-Bold-axibvb5b.ttf +0 -0
- package/static/dist/assets/KaTeX_Caligraphic-Bold-eccvbn5c.woff +0 -0
- package/static/dist/assets/KaTeX_Caligraphic-Bold-n63xiolk.woff2 +0 -0
- package/static/dist/assets/KaTeX_Caligraphic-Regular-c5dvswgu.ttf +0 -0
- package/static/dist/assets/KaTeX_Caligraphic-Regular-iz5gexw5.woff +0 -0
- package/static/dist/assets/KaTeX_Caligraphic-Regular-npwmqylf.woff2 +0 -0
- package/static/dist/assets/KaTeX_Fraktur-Bold-ftsn4fxp.ttf +0 -0
- package/static/dist/assets/KaTeX_Fraktur-Bold-gokmhdpe.woff +0 -0
- package/static/dist/assets/KaTeX_Fraktur-Bold-ikhebgtj.woff2 +0 -0
- package/static/dist/assets/KaTeX_Fraktur-Regular-hzce8q9o.ttf +0 -0
- package/static/dist/assets/KaTeX_Fraktur-Regular-i0egury6.woff2 +0 -0
- package/static/dist/assets/KaTeX_Fraktur-Regular-okwm110b.woff +0 -0
- package/static/dist/assets/KaTeX_Main-Bold-c5g2m5kh.ttf +0 -0
- package/static/dist/assets/KaTeX_Main-Bold-ktk38ybk.woff2 +0 -0
- package/static/dist/assets/KaTeX_Main-Bold-ureqgmzo.woff +0 -0
- package/static/dist/assets/KaTeX_Main-BoldItalic-bd0upj71.woff +0 -0
- package/static/dist/assets/KaTeX_Main-BoldItalic-oj033t4i.woff2 +0 -0
- package/static/dist/assets/KaTeX_Main-BoldItalic-opttanob.ttf +0 -0
- package/static/dist/assets/KaTeX_Main-Italic-2p4bq1jf.woff2 +0 -0
- package/static/dist/assets/KaTeX_Main-Italic-dj86j9xo.ttf +0 -0
- package/static/dist/assets/KaTeX_Main-Italic-esmxqs8d.woff +0 -0
- package/static/dist/assets/KaTeX_Main-Regular-c978jrkj.ttf +0 -0
- package/static/dist/assets/KaTeX_Main-Regular-hbkzldb8.woff2 +0 -0
- package/static/dist/assets/KaTeX_Main-Regular-n865mmt0.woff +0 -0
- package/static/dist/assets/KaTeX_Math-BoldItalic-cbkxiib1.woff +0 -0
- package/static/dist/assets/KaTeX_Math-BoldItalic-hcom2j4y.ttf +0 -0
- package/static/dist/assets/KaTeX_Math-BoldItalic-jdo1yxu8.woff2 +0 -0
- package/static/dist/assets/KaTeX_Math-Italic-b5lfnctb.ttf +0 -0
- package/static/dist/assets/KaTeX_Math-Italic-cz4b2ure.woff2 +0 -0
- package/static/dist/assets/KaTeX_Math-Italic-lo894bvj.woff +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Bold-h55uj19s.ttf +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Bold-m9bkcp3c.woff +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Bold-otxc8itm.woff2 +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Italic-bp85cocg.ttf +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Italic-g42k16nn.woff +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Italic-k4kksncm.woff2 +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Regular-evq9548m.ttf +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Regular-izeggh93.woff +0 -0
- package/static/dist/assets/KaTeX_SansSerif-Regular-ltw53ck4.woff2 +0 -0
- package/static/dist/assets/KaTeX_Script-Regular-k8v4ghws.ttf +0 -0
- package/static/dist/assets/KaTeX_Script-Regular-o2nd302f.woff +0 -0
- package/static/dist/assets/KaTeX_Script-Regular-oybd33cp.woff2 +0 -0
- package/static/dist/assets/KaTeX_Size1-Regular-cjccv44r.woff2 +0 -0
- package/static/dist/assets/KaTeX_Size1-Regular-k13yopgz.woff +0 -0
- package/static/dist/assets/KaTeX_Size1-Regular-naiuhmx7.ttf +0 -0
- package/static/dist/assets/KaTeX_Size2-Regular-cnnxwlt7.woff +0 -0
- package/static/dist/assets/KaTeX_Size2-Regular-hlh6jazj.ttf +0 -0
- package/static/dist/assets/KaTeX_Size2-Regular-onxq3bzc.woff2 +0 -0
- package/static/dist/assets/KaTeX_Size3-Regular-i00haf83.woff +0 -0
- package/static/dist/assets/KaTeX_Size3-Regular-nk2kx36d.ttf +0 -0
- package/static/dist/assets/KaTeX_Size4-Regular-effsfy3y.woff +0 -0
- package/static/dist/assets/KaTeX_Size4-Regular-myjqyche.ttf +0 -0
- package/static/dist/assets/KaTeX_Size4-Regular-nv9nppzf.woff2 +0 -0
- package/static/dist/assets/KaTeX_Typewriter-Regular-iqvr3vwu.woff2 +0 -0
- package/static/dist/assets/KaTeX_Typewriter-Regular-kzj4h457.woff +0 -0
- package/static/dist/assets/KaTeX_Typewriter-Regular-owzsy8p5.ttf +0 -0
- package/static/dist/assets/Markdown-bt9bqd6a.js +598 -0
- package/static/dist/assets/Markdown-lwviulmg.css +1 -0
- package/static/dist/assets/RightPanel-dn19xu42.js +1 -0
- package/static/dist/assets/Select-y7wtf85g.js +1 -0
- package/static/dist/assets/SessionListPanel-igwdj9xr.js +1 -0
- package/static/dist/assets/SettingsLayout-n6mu0ghg.js +1 -0
- package/static/dist/assets/States-oil2issf.js +1 -0
- package/static/dist/assets/Toaster-jtn59pjm.js +1 -0
- package/static/dist/assets/_app-k4jrkgfa.js +1 -0
- package/static/dist/assets/_app.ext._extensionId-mmf1mepm.js +1 -0
- package/static/dist/assets/_app.index-mb41nf00.js +1 -0
- package/static/dist/assets/_app.insights-mz5cep8m.js +1 -0
- package/static/dist/assets/_app.kanban-ocgw506i.js +1 -0
- package/static/dist/assets/_app.logs-lstmoju6.js +1 -0
- package/static/dist/assets/_app.memory-dishj9ra.js +1 -0
- package/static/dist/assets/_app.profiles-dynpvsio.js +1 -0
- package/static/dist/assets/_app.session._sessionId-kevi4qd2.js +1 -0
- package/static/dist/assets/_app.settings-c2czm9v4.js +1 -0
- package/static/dist/assets/_app.settings._section-exwflld7.js +1 -0
- package/static/dist/assets/_app.skills-j5jh2nug.js +1 -0
- package/static/dist/assets/_app.tasks-b99d98fo.js +2 -0
- package/static/dist/assets/_app.todos-ma8urvn3.js +1 -0
- package/static/dist/assets/_app.workspaces-l86cxeod.js +1 -0
- package/static/dist/assets/abap-ij37pki6.js +1 -0
- package/static/dist/assets/abnfDiagram-VCTEODGH-hvrr25lb.js +1 -0
- package/static/dist/assets/actionscript-3-dz7y3j1x.js +1 -0
- package/static/dist/assets/ada-k9zgv987.js +1 -0
- package/static/dist/assets/andromeeda-c2n0n86o.js +1 -0
- package/static/dist/assets/angular-html-nu6l31w3.js +1 -0
- package/static/dist/assets/angular-ts-fbx4f8mm.js +1 -0
- package/static/dist/assets/apache-binppq6z.js +1 -0
- package/static/dist/assets/apex-h8illjly.js +1 -0
- package/static/dist/assets/apl-bx2xr7dh.js +1 -0
- package/static/dist/assets/applescript-h0ok5sww.js +1 -0
- package/static/dist/assets/ara-dlpjioua.js +1 -0
- package/static/dist/assets/arc-7popfhbk.js +1 -0
- package/static/dist/assets/architecture-7GRP2DOG-mqft9w2p.js +1 -0
- package/static/dist/assets/architectureDiagram-5GKGNRK7-b3r0z8sq.js +36 -0
- package/static/dist/assets/array-f36850hm.js +1 -0
- package/static/dist/assets/asciidoc-lx0cuujr.js +1 -0
- package/static/dist/assets/asm-j5diz3sz.js +1 -0
- package/static/dist/assets/astro-g77i97cb.js +1 -0
- package/static/dist/assets/aurora-x-h2hngdsl.js +1 -0
- package/static/dist/assets/awk-fecghegf.js +1 -0
- package/static/dist/assets/ayu-dark-nvvuggz9.js +1 -0
- package/static/dist/assets/ayu-light-k5fxgplt.js +1 -0
- package/static/dist/assets/ayu-mirage-gltrvhcx.js +1 -0
- package/static/dist/assets/ballerina-hk9oga18.js +1 -0
- package/static/dist/assets/bat-ghs7lag5.js +1 -0
- package/static/dist/assets/beancount-pc6q2dmq.js +1 -0
- package/static/dist/assets/berry-l96jp8n4.js +1 -0
- package/static/dist/assets/bibtex-jxn7maz2.js +1 -0
- package/static/dist/assets/bicep-i1yv3ngd.js +1 -0
- package/static/dist/assets/bird2-k3aagqn0.js +1 -0
- package/static/dist/assets/blade-boo0u92y.js +1 -0
- package/static/dist/assets/blockDiagram-I7D4REHJ-hd3gw0cj.js +129 -0
- package/static/dist/assets/bsl-f8m1ja7w.js +1 -0
- package/static/dist/assets/c-cat0w3sc.js +1 -0
- package/static/dist/assets/c3-j6ile59o.js +1 -0
- package/static/dist/assets/c4Diagram-7LVT6UL2-jlmbjiji.js +38 -0
- package/static/dist/assets/cadence-e3x2pgsu.js +1 -0
- package/static/dist/assets/cairo-mblac9dt.js +1 -0
- package/static/dist/assets/catppuccin-frappe-dj7qsd4s.js +1 -0
- package/static/dist/assets/catppuccin-latte-oh2bx7qn.js +1 -0
- package/static/dist/assets/catppuccin-macchiato-m3xyazph.js +1 -0
- package/static/dist/assets/catppuccin-mocha-m3rjj89j.js +1 -0
- package/static/dist/assets/channel-ix8cxdld.js +1 -0
- package/static/dist/assets/chunk-2Q5K7J3B-k08c29qw.js +1 -0
- package/static/dist/assets/chunk-4HAMMTFA-oydbpsin.js +62 -0
- package/static/dist/assets/chunk-5VM5RSS4-br0zxsux.js +15 -0
- package/static/dist/assets/chunk-75Z2AOVW-j633otj1.js +2 -0
- package/static/dist/assets/chunk-DU6HZSFF-ods2l027.js +128 -0
- package/static/dist/assets/chunk-F27PBJKO-ln4n2cwt.js +1 -0
- package/static/dist/assets/chunk-FOHPRMQF-opuflp73.js +161 -0
- package/static/dist/assets/chunk-GMAD6QVW-fpz133eh.js +72 -0
- package/static/dist/assets/chunk-GVQU2GXP-abs9ixiy.js +1 -0
- package/static/dist/assets/chunk-IMKFNOWR-j9vukdy1.js +231 -0
- package/static/dist/assets/chunk-JWPE2WC7-mw03m5s9.js +1 -0
- package/static/dist/assets/chunk-L3NEJ4N5-cfyw87r3.js +1 -0
- package/static/dist/assets/chunk-OSK3NFVY-baja78wr.js +10 -0
- package/static/dist/assets/chunk-P2QGCYS3-g66xby8h.js +1 -0
- package/static/dist/assets/chunk-POPQ4Y6H-osqu864t.js +1 -0
- package/static/dist/assets/chunk-PWAF6VOD-egejasv1.js +1 -0
- package/static/dist/assets/chunk-SHT3W25Y-l014h8zz.js +168 -0
- package/static/dist/assets/chunk-SVP7TREG-n3z10bp3.js +88 -0
- package/static/dist/assets/chunk-TICWLB2K-bzozkjc0.js +206 -0
- package/static/dist/assets/chunk-XXDRQBXY-n40pf9vy.js +1 -0
- package/static/dist/assets/chunk-Y2CYZVJY-n9gs7k4d.js +1 -0
- package/static/dist/assets/clarity-bdn1d8fx.js +1 -0
- package/static/dist/assets/classDiagram-ZZMXUADV-c210y3il.js +1 -0
- package/static/dist/assets/classDiagram-v2-VYDZK3BY-c210y3il.js +1 -0
- package/static/dist/assets/clojure-n5b9o4lq.js +1 -0
- package/static/dist/assets/cmake-f68p68h5.js +1 -0
- package/static/dist/assets/cobol-go622aep.js +1 -0
- package/static/dist/assets/codeowners-lgfjmw2s.js +1 -0
- package/static/dist/assets/codeql-cojlysyb.js +1 -0
- package/static/dist/assets/coffee-jwo1xjhq.js +1 -0
- package/static/dist/assets/common-lisp-ko58h8pe.js +1 -0
- package/static/dist/assets/copied-cjsttec1.js +1 -0
- package/static/dist/assets/coq-gns70ukp.js +1 -0
- package/static/dist/assets/cose-bilkent-JH36ORCC-eclcy6ja.js +1 -0
- package/static/dist/assets/cpp-nre7j0kq.js +1 -0
- package/static/dist/assets/crystal-lviso2je.js +1 -0
- package/static/dist/assets/csharp-kkz9hcxp.js +1 -0
- package/static/dist/assets/css-ywz9j4hb.js +1 -0
- package/static/dist/assets/csv-ol0sxk26.js +1 -0
- package/static/dist/assets/cue-h5naoluy.js +1 -0
- package/static/dist/assets/cynefin-OW5HDTMX-elpt7h1j.js +1 -0
- package/static/dist/assets/cynefinDiagram-5FMLGOSQ-5mzl5pi2.js +62 -0
- package/static/dist/assets/cypher-j2an42no.js +1 -0
- package/static/dist/assets/cytoscape.esm-bqu53u12.js +321 -0
- package/static/dist/assets/d-crxkca3p.js +1 -0
- package/static/dist/assets/dagre-GXQ25YYZ-ihwlhmfl.js +4 -0
- package/static/dist/assets/dagre-lkoknbjn.js +1 -0
- package/static/dist/assets/dark-plus-kin19s9x.js +1 -0
- package/static/dist/assets/dart-nsg0xvqh.js +1 -0
- package/static/dist/assets/dax-f82777dv.js +1 -0
- package/static/dist/assets/defaultLocale-eeoev87l.js +1 -0
- package/static/dist/assets/desktop-nvg88bea.js +1 -0
- package/static/dist/assets/diagram-S7CK7UJ4-4z90agaz.js +30 -0
- package/static/dist/assets/diagram-UQ7AKVKN-eifw0lg7.js +41 -0
- package/static/dist/assets/diagram-VSXAHHWV-ksh3sjqv.js +3 -0
- package/static/dist/assets/diagram-VX7I27RA-ett72f71.js +24 -0
- package/static/dist/assets/diagram-Z3DM3KII-l8scp8nu.js +24 -0
- package/static/dist/assets/diff-c5xjoml2.js +1 -0
- package/static/dist/assets/dist-c4c2m3kv.js +1 -0
- package/static/dist/assets/docker-s0pf2u92.js +1 -0
- package/static/dist/assets/dotenv-d2gvqxc1.js +1 -0
- package/static/dist/assets/dracula-eicfho73.js +1 -0
- package/static/dist/assets/dracula-soft-doslejd2.js +1 -0
- package/static/dist/assets/dream-maker-mz8d3pqb.js +1 -0
- package/static/dist/assets/ebnfDiagram-PWID7BFC-f0pxcmit.js +1 -0
- package/static/dist/assets/edge-dvv35byi.js +1 -0
- package/static/dist/assets/elixir-i2f1ki1g.js +1 -0
- package/static/dist/assets/elm-cpepyjm4.js +1 -0
- package/static/dist/assets/emacs-lisp-lhl63kmy.js +1 -0
- package/static/dist/assets/endpoints-ipnv1hd4.js +64 -0
- package/static/dist/assets/erDiagram-RLTQ6QDP-f47m5xh0.js +99 -0
- package/static/dist/assets/erb-idlyfheg.js +1 -0
- package/static/dist/assets/erlang-kbk8e1kh.js +1 -0
- package/static/dist/assets/eventmodeling-NTZA5JFV-d9b5a0ia.js +1 -0
- package/static/dist/assets/everforest-dark-cv4maom7.js +1 -0
- package/static/dist/assets/everforest-light-njdw7fx6.js +1 -0
- package/static/dist/assets/fennel-mm8r79co.js +1 -0
- package/static/dist/assets/fish-em0xdaat.js +1 -0
- package/static/dist/assets/flowDiagram-HODETNUW-kfxxsyrk.js +1 -0
- package/static/dist/assets/fluent-kzq1mil2.js +1 -0
- package/static/dist/assets/fortran-fixed-form-lwddxd99.js +1 -0
- package/static/dist/assets/fortran-free-form-jao3bzvo.js +1 -0
- package/static/dist/assets/fsharp-ouam7w4k.js +1 -0
- package/static/dist/assets/ganttDiagram-EL5Y4UJY-bmktjdi0.js +292 -0
- package/static/dist/assets/gdresource-gawivel9.js +1 -0
- package/static/dist/assets/gdscript-kcamxf4c.js +1 -0
- package/static/dist/assets/gdshader-hx54new5.js +1 -0
- package/static/dist/assets/genie-i5n3m91v.js +1 -0
- package/static/dist/assets/gherkin-lxn181dy.js +1 -0
- package/static/dist/assets/git-commit-e6qgtuh5.js +1 -0
- package/static/dist/assets/git-rebase-d9lpfpbn.js +1 -0
- package/static/dist/assets/gitGraph-4MIJSDKK-j2ueg258.js +1 -0
- package/static/dist/assets/gitGraphDiagram-WWUBYQGX-ms6586v9.js +106 -0
- package/static/dist/assets/github-dark-default-m0qs6qki.js +1 -0
- package/static/dist/assets/github-dark-dimmed-g0vz4qee.js +1 -0
- package/static/dist/assets/github-dark-high-contrast-hugubo52.js +1 -0
- package/static/dist/assets/github-dark-ljlyim8s.js +1 -0
- package/static/dist/assets/github-light-default-fgfak5mv.js +1 -0
- package/static/dist/assets/github-light-high-contrast-hka6wb3r.js +1 -0
- package/static/dist/assets/github-light-jhyi45t4.js +1 -0
- package/static/dist/assets/gleam-ix1dym3g.js +1 -0
- package/static/dist/assets/glimmer-js-39i0urfb.js +1 -0
- package/static/dist/assets/glimmer-ts-gdtd6n73.js +1 -0
- package/static/dist/assets/glsl-o1djm5pp.js +1 -0
- package/static/dist/assets/gn-cbzhsgl9.js +1 -0
- package/static/dist/assets/gnuplot-dr8f9gvm.js +1 -0
- package/static/dist/assets/go-enhtrrw8.js +1 -0
- package/static/dist/assets/graphlib-mrng1xrk.js +1 -0
- package/static/dist/assets/graphql-kj6rz55t.js +1 -0
- package/static/dist/assets/groovy-jff59t9e.js +1 -0
- package/static/dist/assets/gruvbox-dark-hard-lgsj7y5r.js +1 -0
- package/static/dist/assets/gruvbox-dark-medium-ezt86wrc.js +1 -0
- package/static/dist/assets/gruvbox-dark-soft-1a3jfdlm.js +1 -0
- package/static/dist/assets/gruvbox-light-hard-d82lddjc.js +1 -0
- package/static/dist/assets/gruvbox-light-medium-d3ffitv3.js +1 -0
- package/static/dist/assets/gruvbox-light-soft-e5gf7i2q.js +1 -0
- package/static/dist/assets/hack-pe1qqr2i.js +1 -0
- package/static/dist/assets/haml-cknnbcqs.js +1 -0
- package/static/dist/assets/handlebars-hwq64orh.js +1 -0
- package/static/dist/assets/haskell-o7nor2z2.js +1 -0
- package/static/dist/assets/haxe-4rwdh42h.js +1 -0
- package/static/dist/assets/hcl-nnng763h.js +1 -0
- package/static/dist/assets/highlighted-body-KPVGNVTW-ev52d2si.js +1 -0
- package/static/dist/assets/hjson-kscwmuzk.js +1 -0
- package/static/dist/assets/hlsl-kopkvwox.js +1 -0
- package/static/dist/assets/horizon-bright-gn4aqinx.js +1 -0
- package/static/dist/assets/horizon-h5nzrwlb.js +1 -0
- package/static/dist/assets/houston-kifsbmbx.js +1 -0
- package/static/dist/assets/html-derivative-h2i2pyjc.js +1 -0
- package/static/dist/assets/html-ha05xtvt.js +1 -0
- package/static/dist/assets/http-cf94zu27.js +1 -0
- package/static/dist/assets/hurl-lslax568.js +1 -0
- package/static/dist/assets/hxml-g52gxet6.js +1 -0
- package/static/dist/assets/hy-jc9www1l.js +1 -0
- package/static/dist/assets/imba-n9x1ej2f.js +1 -0
- package/static/dist/assets/index-bz7g7rhx.css +2 -0
- package/static/dist/assets/index-hywfjw88.js +11 -0
- package/static/dist/assets/info-A6RAGUB7-j717vyt7.js +1 -0
- package/static/dist/assets/infoDiagram-27XIBGKW-dsbpib36.js +2 -0
- package/static/dist/assets/ini-hg6eosim.js +1 -0
- package/static/dist/assets/init-ljpdkjra.js +1 -0
- package/static/dist/assets/ishikawaDiagram-5VMMS53U-n0sz3i2d.js +70 -0
- package/static/dist/assets/java-ndjf2o89.js +1 -0
- package/static/dist/assets/javascript-coftlwy3.js +1 -0
- package/static/dist/assets/jinja-etei9wy7.js +1 -0
- package/static/dist/assets/jison-hyekgft1.js +1 -0
- package/static/dist/assets/journeyDiagram-3NMN7TZE-mcxz1mme.js +139 -0
- package/static/dist/assets/json-lok0yaho.js +1 -0
- package/static/dist/assets/json5-e4tr07tg.js +1 -0
- package/static/dist/assets/jsonc-jbmkhoep.js +1 -0
- package/static/dist/assets/jsonl-j35ke6at.js +1 -0
- package/static/dist/assets/jsonnet-iewuy86o.js +1 -0
- package/static/dist/assets/jssm-m1449zlc.js +1 -0
- package/static/dist/assets/jsx-b64w0nbx.js +1 -0
- package/static/dist/assets/jsx-runtime-eu92a5pu.js +1 -0
- package/static/dist/assets/julia-jxxzz2yn.js +1 -0
- package/static/dist/assets/just-mc29iw9t.js +1 -0
- package/static/dist/assets/kanagawa-dragon-i9mmmgud.js +1 -0
- package/static/dist/assets/kanagawa-lotus-ev5oro17.js +1 -0
- package/static/dist/assets/kanagawa-wave-i06560uw.js +1 -0
- package/static/dist/assets/kanban-definition-UXKFOSKX-n6hq2lyc.js +89 -0
- package/static/dist/assets/kdl-kgzv1x9e.js +1 -0
- package/static/dist/assets/kotlin-nmx05b3f.js +1 -0
- package/static/dist/assets/kusto-fawmdms4.js +1 -0
- package/static/dist/assets/laserwave-goebpayr.js +1 -0
- package/static/dist/assets/latex-pafa03ft.js +1 -0
- package/static/dist/assets/lazyRouteComponent-faquioun.js +1 -0
- package/static/dist/assets/lean-jom31nm3.js +1 -0
- package/static/dist/assets/less-mwvscr3d.js +1 -0
- package/static/dist/assets/light-plus-mws1g85f.js +1 -0
- package/static/dist/assets/line-h5xq20s4.js +1 -0
- package/static/dist/assets/linear-becwlnhk.js +1 -0
- package/static/dist/assets/link-ib4prsn5.js +1 -0
- package/static/dist/assets/liquid-hz5c2pov.js +1 -0
- package/static/dist/assets/llvm-j5wmr3g9.js +1 -0
- package/static/dist/assets/log-eur4gurm.js +1 -0
- package/static/dist/assets/login-mvjys1ol.js +1 -0
- package/static/dist/assets/logo-j3h8r0pu.js +1 -0
- package/static/dist/assets/lua-leyf8mlb.js +1 -0
- package/static/dist/assets/luau-im5d6q8k.js +1 -0
- package/static/dist/assets/make-npl27xqy.js +1 -0
- package/static/dist/assets/markdown-fibv6lrm.js +1 -0
- package/static/dist/assets/marko-cn1fzpdv.js +1 -0
- package/static/dist/assets/matchContext-f8oy3lo7.js +1 -0
- package/static/dist/assets/material-theme-darker-dhm8zmok.js +1 -0
- package/static/dist/assets/material-theme-gdimc61s.js +1 -0
- package/static/dist/assets/material-theme-lighter-c1fszbb2.js +1 -0
- package/static/dist/assets/material-theme-ocean-iakojpmy.js +1 -0
- package/static/dist/assets/material-theme-palenight-hgxmykmi.js +1 -0
- package/static/dist/assets/matlab-o6nvvbf2.js +1 -0
- package/static/dist/assets/mdc-huhy88df.js +1 -0
- package/static/dist/assets/mdx-mmgeh26h.js +1 -0
- package/static/dist/assets/mermaid-HWGCJPDP-gmnkgf1n.js +1 -0
- package/static/dist/assets/mermaid-f9ad87lb.js +1 -0
- package/static/dist/assets/mermaid-parser.core-n9cuu5ue.js +7 -0
- package/static/dist/assets/min-dark-e5sicuw2.js +1 -0
- package/static/dist/assets/min-light-gst87fvf.js +1 -0
- package/static/dist/assets/mindmap-definition-YA3MSWOX-gta3u7z4.js +96 -0
- package/static/dist/assets/mipsasm-etoqqos6.js +1 -0
- package/static/dist/assets/mojo-fyyk0b1z.js +1 -0
- package/static/dist/assets/monokai-jl389a9o.js +1 -0
- package/static/dist/assets/moonbit-je86hbgx.js +1 -0
- package/static/dist/assets/move-g7w7k042.js +1 -0
- package/static/dist/assets/narrat-d1cszt6i.js +1 -0
- package/static/dist/assets/nextflow-fpd3eqgm.js +1 -0
- package/static/dist/assets/nextflow-groovy-nc95p6pm.js +1 -0
- package/static/dist/assets/nginx-e7lvhsmn.js +1 -0
- package/static/dist/assets/night-owl-light-b2j1bc8t.js +1 -0
- package/static/dist/assets/night-owl-nm3cgqfv.js +1 -0
- package/static/dist/assets/nim-dun5d8mk.js +1 -0
- package/static/dist/assets/nix-sxazvl0w.js +1 -0
- package/static/dist/assets/nord-jiiendyo.js +1 -0
- package/static/dist/assets/not-found-ccnnac39.js +1 -0
- package/static/dist/assets/nushell-nbi9xmdg.js +1 -0
- package/static/dist/assets/objective-c-oshe4ycx.js +1 -0
- package/static/dist/assets/objective-cpp-go29ofq1.js +1 -0
- package/static/dist/assets/ocaml-56kivtnr.js +1 -0
- package/static/dist/assets/odin-g772bhi5.js +1 -0
- package/static/dist/assets/onboarding-l6quy6gz.js +1 -0
- package/static/dist/assets/one-dark-pro-ext74l87.js +1 -0
- package/static/dist/assets/one-light-o5mlsn8i.js +1 -0
- package/static/dist/assets/openscad-e9e9mfyg.js +1 -0
- package/static/dist/assets/ordinal-d88pfdla.js +1 -0
- package/static/dist/assets/packet-AYTQ26CC-bpzuq5n6.js +1 -0
- package/static/dist/assets/pascal-dmg2rs6d.js +1 -0
- package/static/dist/assets/passkeys-ktie3sr0.js +1 -0
- package/static/dist/assets/path-b509aej0.js +1 -0
- package/static/dist/assets/pegDiagram-XKGWAZYB-juye13e5.js +1 -0
- package/static/dist/assets/perl-bj3oqtet.js +1 -0
- package/static/dist/assets/php-buzp12r0.js +1 -0
- package/static/dist/assets/pie-WAS4IAKB-odhb8buq.js +1 -0
- package/static/dist/assets/pieDiagram-E7YTZNPT-mgb14ksh.js +39 -0
- package/static/dist/assets/pkl-co2grztk.js +1 -0
- package/static/dist/assets/plastic-mm7c7uq7.js +1 -0
- package/static/dist/assets/plsql-l0i9f33n.js +1 -0
- package/static/dist/assets/po-f3ga9osn.js +1 -0
- package/static/dist/assets/poimandres-mnwq5v4d.js +1 -0
- package/static/dist/assets/polar-ldicpe6g.js +1 -0
- package/static/dist/assets/postcss-fgpvnt75.js +1 -0
- package/static/dist/assets/powerquery-mflxo46x.js +1 -0
- package/static/dist/assets/powershell-oado4mxi.js +1 -0
- package/static/dist/assets/prepaint-f14kbd49.js +21 -0
- package/static/dist/assets/prisma-go1e7wq8.js +1 -0
- package/static/dist/assets/prolog-cbjal8aj.js +1 -0
- package/static/dist/assets/proto-lrhov7xc.js +1 -0
- package/static/dist/assets/pug-mjad7he9.js +1 -0
- package/static/dist/assets/puppet-h22szrmn.js +1 -0
- package/static/dist/assets/purescript-dwpj7hdb.js +1 -0
- package/static/dist/assets/python-b767fgue.js +1 -0
- package/static/dist/assets/qml-d1gdp10s.js +1 -0
- package/static/dist/assets/qmldir-lsawched.js +1 -0
- package/static/dist/assets/qss-lyvmg4f4.js +1 -0
- package/static/dist/assets/quadrantDiagram-AXDQQJYC-cg36naog.js +7 -0
- package/static/dist/assets/r-o3r9c7ao.js +1 -0
- package/static/dist/assets/racket-nbfqjw5h.js +1 -0
- package/static/dist/assets/radar-RG4KPBEZ-lgzfpnef.js +1 -0
- package/static/dist/assets/railroad-74A4TZTK-gmglc3ua.js +1 -0
- package/static/dist/assets/railroad-abnf-HS5TGJTU-5mjl5wpv.js +1 -0
- package/static/dist/assets/railroad-ebnf-LZEXJU2U-bfram8v8.js +1 -0
- package/static/dist/assets/railroad-peg-WCYAUIDC-nwfczn88.js +1 -0
- package/static/dist/assets/railroadDiagram-O6MQD6OU-cmxwjt73.js +1 -0
- package/static/dist/assets/raku-hcy6uwm6.js +1 -0
- package/static/dist/assets/razor-ilc585yr.js +1 -0
- package/static/dist/assets/red-if4jt303.js +1 -0
- package/static/dist/assets/refresh-cw-mf192q3f.js +1 -0
- package/static/dist/assets/reg-ivi9d1my.js +1 -0
- package/static/dist/assets/regexp-mpjtcvwm.js +1 -0
- package/static/dist/assets/rel-gqpkg3ta.js +1 -0
- package/static/dist/assets/requirementDiagram-BXWQKSXE-ir0s2mek.js +84 -0
- package/static/dist/assets/riscv-j1f2yjp2.js +1 -0
- package/static/dist/assets/rolldown-runtime-b9miacsj.js +1 -0
- package/static/dist/assets/ron-bjqasg78.js +1 -0
- package/static/dist/assets/root-mbklpuv4.js +1 -0
- package/static/dist/assets/rose-pine-dawn-nlpzqzob.js +1 -0
- package/static/dist/assets/rose-pine-grpwpg67.js +1 -0
- package/static/dist/assets/rose-pine-moon-b9yyevxr.js +1 -0
- package/static/dist/assets/rosmsg-hv3wcot6.js +1 -0
- package/static/dist/assets/rough.esm-on4k4je3.js +1 -0
- package/static/dist/assets/rst-jrkwjdyi.js +1 -0
- package/static/dist/assets/ruby-n4tjcbpz.js +1 -0
- package/static/dist/assets/rust-jqduclx1.js +1 -0
- package/static/dist/assets/sankeyDiagram-P5KCCOFB-jo7jcdq0.js +40 -0
- package/static/dist/assets/sas-hjo6y93k.js +1 -0
- package/static/dist/assets/sass-m1yncbwu.js +1 -0
- package/static/dist/assets/saved-g777hp1t.js +1 -0
- package/static/dist/assets/scala-l9ahg4e9.js +1 -0
- package/static/dist/assets/scheme-mlodf39l.js +1 -0
- package/static/dist/assets/scss-ncidjv48.js +1 -0
- package/static/dist/assets/sdbl-bwg2t5pt.js +1 -0
- package/static/dist/assets/search-i2kfogyx.js +1 -0
- package/static/dist/assets/sequenceDiagram-WJ2MYXX4-n0pf6xk5.js +162 -0
- package/static/dist/assets/settings_section_extensions_title-hgvh507l.js +1 -0
- package/static/dist/assets/shaderlab-be89ch6g.js +1 -0
- package/static/dist/assets/share._token-il3y6js2.js +2 -0
- package/static/dist/assets/shellscript-m8whjpqd.js +1 -0
- package/static/dist/assets/shellsession-i5bj6syz.js +1 -0
- package/static/dist/assets/sizeCapture-INFHLROL-g612l48j.js +1 -0
- package/static/dist/assets/slack-dark-ny9l0r7b.js +1 -0
- package/static/dist/assets/slack-ochin-g98102hs.js +1 -0
- package/static/dist/assets/sliders-horizontal-kd99ffvl.js +1 -0
- package/static/dist/assets/smalltalk-g9lpwisn.js +1 -0
- package/static/dist/assets/snazzy-light-dlu9q2m5.js +1 -0
- package/static/dist/assets/solarized-dark-mx1nd4sm.js +1 -0
- package/static/dist/assets/solarized-light-mqzd33fz.js +1 -0
- package/static/dist/assets/solidity-ih313ji4.js +1 -0
- package/static/dist/assets/soy-hhh36ysq.js +1 -0
- package/static/dist/assets/sparql-pewjbauq.js +1 -0
- package/static/dist/assets/splunk-d8q89juf.js +1 -0
- package/static/dist/assets/sql-j21bzcl6.js +1 -0
- package/static/dist/assets/src-hjyib4mu.js +1 -0
- package/static/dist/assets/ssh-config-fzxlymn8.js +1 -0
- package/static/dist/assets/stata-bbu2onh1.js +1 -0
- package/static/dist/assets/stateDiagram-D77RDMKH-olbrwyv9.js +1 -0
- package/static/dist/assets/stateDiagram-v2-MP3YSRHH-dnzlmdpu.js +1 -0
- package/static/dist/assets/stylus-hifjg0ye.js +1 -0
- package/static/dist/assets/surrealql-l5vczuco.js +1 -0
- package/static/dist/assets/svelte-idn422g6.js +1 -0
- package/static/dist/assets/swift-n11rc3v3.js +1 -0
- package/static/dist/assets/swimlanes-42K2YHIH-od14zrw6.js +1 -0
- package/static/dist/assets/swimlanesDiagram-VR7AAH4N-ck0eqqdp.js +8 -0
- package/static/dist/assets/synthwave-84-clkt7319.js +1 -0
- package/static/dist/assets/system-verilog-l8k1po2l.js +1 -0
- package/static/dist/assets/systemd-d1zoxedb.js +1 -0
- package/static/dist/assets/talonscript-j9gt5qb1.js +1 -0
- package/static/dist/assets/tasl-meer3lyk.js +1 -0
- package/static/dist/assets/tcl-jdc54rsg.js +1 -0
- package/static/dist/assets/templ-e22qou3c.js +1 -0
- package/static/dist/assets/terraform-oav3wzsy.js +1 -0
- package/static/dist/assets/tex-deqpc5ee.js +1 -0
- package/static/dist/assets/timeline-definition-24CTP7MA-l0qokmnb.js +120 -0
- package/static/dist/assets/todoStore-la6uyqzj.js +1 -0
- package/static/dist/assets/tokyo-night-cnyqlmc2.js +1 -0
- package/static/dist/assets/toml-jj1ee1k1.js +1 -0
- package/static/dist/assets/trash-bxz1k9cw.js +1 -0
- package/static/dist/assets/treeView-Q6P3EWNA-hma3ip8m.js +1 -0
- package/static/dist/assets/treemap-WGGIJYW6-bghjng5m.js +1 -0
- package/static/dist/assets/ts-tags-ctnibc27.js +1 -0
- package/static/dist/assets/tsv-cxbgj4wh.js +1 -0
- package/static/dist/assets/tsx-i163n32g.js +1 -0
- package/static/dist/assets/turtle-g1kfgpwv.js +1 -0
- package/static/dist/assets/twig-x0fi7wm8.js +1 -0
- package/static/dist/assets/typescript-g18c34xz.js +1 -0
- package/static/dist/assets/typespec-hokgy7ic.js +1 -0
- package/static/dist/assets/typst-l6lt2vta.js +1 -0
- package/static/dist/assets/untitled-nfaw0q7m.js +1 -0
- package/static/dist/assets/useForm-k7fj2zsr.js +1 -0
- package/static/dist/assets/useLocale-evhacmv2.js +1 -0
- package/static/dist/assets/useParams-gpbjxj8s.js +1 -0
- package/static/dist/assets/useSearch-bhdptos7.js +1 -0
- package/static/dist/assets/useSelector-f2aak1ol.js +1 -0
- package/static/dist/assets/v-lwnsi8rl.js +1 -0
- package/static/dist/assets/vala-db1h2kp7.js +1 -0
- package/static/dist/assets/vb-nrezymby.js +1 -0
- package/static/dist/assets/vennDiagram-4TSXK5OY-bo97zf3z.js +34 -0
- package/static/dist/assets/verilog-jworpiw4.js +1 -0
- package/static/dist/assets/vesper-o1vwtlg2.js +1 -0
- package/static/dist/assets/vhdl-gnn4vfnm.js +1 -0
- package/static/dist/assets/viml-ogfqutxv.js +1 -0
- package/static/dist/assets/vitesse-black-b5y62t71.js +1 -0
- package/static/dist/assets/vitesse-dark-fj1ju380.js +1 -0
- package/static/dist/assets/vitesse-light-bjycd3ha.js +1 -0
- package/static/dist/assets/vue-html-nskj3du0.js +1 -0
- package/static/dist/assets/vue-mwu5l1bb.js +1 -0
- package/static/dist/assets/vue-vine-cqe77smq.js +1 -0
- package/static/dist/assets/vyper-jsmo764l.js +1 -0
- package/static/dist/assets/wardley-WFR3VGLG-pbjl6jav.js +1 -0
- package/static/dist/assets/wardleyDiagram-VM6X3IG4-bmy9i09l.js +78 -0
- package/static/dist/assets/wasm-g1zrybde.js +1 -0
- package/static/dist/assets/wasm-gezzbmz0.js +1 -0
- package/static/dist/assets/wenyan-lgcd7t1n.js +1 -0
- package/static/dist/assets/wgsl-gotoh48n.js +1 -0
- package/static/dist/assets/wikitext-j1379ez7.js +1 -0
- package/static/dist/assets/wit-neu67rwu.js +1 -0
- package/static/dist/assets/wolfram-mbb1p6oi.js +1 -0
- package/static/dist/assets/xml-gau7gvrv.js +1 -0
- package/static/dist/assets/xsl-ew09zq8b.js +1 -0
- package/static/dist/assets/xychartDiagram-S5SC5T6Z-eercu0mc.js +7 -0
- package/static/dist/assets/yaml-ofnrxtvf.js +1 -0
- package/static/dist/assets/zenscript-ge1h0r83.js +1 -0
- package/static/dist/assets/zig-ik06evde.js +1 -0
- package/static/dist/extension-sdk.js +1 -0
- package/static/dist/index.html +1 -0
- package/static/dist/manifest.webmanifest +29 -0
- package/static/dist/sw.js +944 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Todo snapshot derivation from settled transcripts (Python `api/todo_state.py`). */
|
|
2
|
+
export declare const TODO_STATE_VERSION = 1;
|
|
3
|
+
export declare const TODO_PAYLOAD_KEY = "todo_state";
|
|
4
|
+
export declare function normalizeTodoSnapshot(data: unknown): Record<string, unknown> | null;
|
|
5
|
+
export declare function parseTodoToolResult(result: unknown): Record<string, unknown> | null;
|
|
6
|
+
/** Latest `todo` tool result, with a causal timestamp floor when the row lost its own. */
|
|
7
|
+
export declare function deriveTodoState(messages: unknown[] | null | undefined): Record<string, unknown> | null;
|
|
8
|
+
export declare function attachTodoState(payload: Record<string, unknown>, messages: unknown[] | null | undefined): boolean;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/** Todo snapshot derivation from settled transcripts (Python `api/todo_state.py`). */
|
|
2
|
+
export const TODO_STATE_VERSION = 1;
|
|
3
|
+
export const TODO_PAYLOAD_KEY = 'todo_state';
|
|
4
|
+
const isDict = (v) => Boolean(v) && typeof v === 'object' && !Array.isArray(v);
|
|
5
|
+
export function normalizeTodoSnapshot(data) {
|
|
6
|
+
if (!isDict(data) || !Array.isArray(data.todos))
|
|
7
|
+
return null;
|
|
8
|
+
return { todos: data.todos, summary: isDict(data.summary) ? data.summary : {}, version: TODO_STATE_VERSION };
|
|
9
|
+
}
|
|
10
|
+
export function parseTodoToolResult(result) {
|
|
11
|
+
let data = result;
|
|
12
|
+
if (typeof result === 'string') {
|
|
13
|
+
try {
|
|
14
|
+
data = JSON.parse(result);
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return normalizeTodoSnapshot(data);
|
|
21
|
+
}
|
|
22
|
+
const tsFloat = (raw) => { const n = Number(raw ?? 0); return Number.isFinite(n) && n > 0 ? n : 0; };
|
|
23
|
+
/** Latest `todo` tool result, with a causal timestamp floor when the row lost its own. */
|
|
24
|
+
export function deriveTodoState(messages) {
|
|
25
|
+
if (!messages?.length)
|
|
26
|
+
return null;
|
|
27
|
+
for (let idx = messages.length - 1; idx >= 0; idx -= 1) {
|
|
28
|
+
const msg = messages[idx];
|
|
29
|
+
if (!isDict(msg) || msg.role !== 'tool')
|
|
30
|
+
continue;
|
|
31
|
+
const content = msg.content;
|
|
32
|
+
if (typeof content !== 'string' || !content.includes('"todos"'))
|
|
33
|
+
continue;
|
|
34
|
+
let data;
|
|
35
|
+
try {
|
|
36
|
+
data = JSON.parse(content);
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
const snapshot = normalizeTodoSnapshot(data);
|
|
42
|
+
if (!snapshot)
|
|
43
|
+
continue;
|
|
44
|
+
let ts = tsFloat(msg.timestamp);
|
|
45
|
+
if (ts <= 0) {
|
|
46
|
+
for (let i = Math.min(idx, messages.length - 1); i >= 0; i -= 1) {
|
|
47
|
+
const m = messages[i];
|
|
48
|
+
if (isDict(m))
|
|
49
|
+
ts = Math.max(ts, tsFloat(m.timestamp));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (ts > 0)
|
|
53
|
+
snapshot.ts = ts;
|
|
54
|
+
return snapshot;
|
|
55
|
+
}
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
export function attachTodoState(payload, messages) {
|
|
59
|
+
if (!messages?.length)
|
|
60
|
+
return false;
|
|
61
|
+
try {
|
|
62
|
+
const snapshot = deriveTodoState(messages);
|
|
63
|
+
if (!snapshot)
|
|
64
|
+
return false;
|
|
65
|
+
payload[TODO_PAYLOAD_KEY] = snapshot;
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=todo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"todo.js","sourceRoot":"","sources":["../../src/sessions/todo.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type Config } from '../config/agent-config.js';
|
|
2
|
+
export declare const WEBUI_PROGRESS_PROMPT = "WebUI progress guidance:\n- Match the normal Hermes messaging style, but do not let long tool-running WebUI turns appear silent.\n- For long multi-step work that uses tools, emit brief user-visible progress updates as normal assistant content, not only as hidden reasoning.\n- Before the first tool batch in a long task, say what you are about to inspect.\n- After each meaningful batch of tool calls, say what you just confirmed and what you will check next before continuing with more tools.\n- Do not run many independent tool batches back-to-back without visible assistant text between them when the task is still ongoing.\n- Do not keep progress only in reasoning, thinking, or tool-result channels; those are not a substitute for visible interim updates.\n- Each update should say what you are about to check, what you just confirmed, or why the next tool call is needed.\n- Keep updates concise, factual, and in the user's language. One or two short sentences are enough.\n- Do not reveal hidden reasoning, chain-of-thought, private scratchpads, secrets, raw logs, or long tool output.\n- Password, API-key, token, and secret fields are automatically redacted by the system. Treat masked values as intentional redaction, not placeholder text or user input errors, and do not tell the user a stored credential is wrong based on a masked value alone.\n- Final visible assistant replies must be clear, user-facing, and in the user's language, not private planning notes.\n- Do not include terse planning fragments or scratchpad shorthand in visible assistant text. Avoid fragments like \"Need script\", \"Need check logs\", \"Need inspect email\", or \"maybe invite\"; either omit them or rewrite them as clear user-facing progress.\n- For direct answers or very short tasks, skip progress updates and answer normally.";
|
|
3
|
+
/** Python `_process_wakeup_max_iterations`: automatic wakeup turns get a separate bounded tool-call budget. */
|
|
4
|
+
export declare function processWakeupMaxIterations(configured: number | null, source: string, env: Record<string, string | undefined>): number | null;
|
|
5
|
+
/** Python: `agent.max_turns` (else root `max_turns`) → AIAgent `max_iterations`. */
|
|
6
|
+
export declare function maxIterationsFromConfig(config: Config): number | null;
|
|
7
|
+
/** Python: root `max_tokens`, else `agent.max_tokens`. */
|
|
8
|
+
export declare function maxTokensFromConfig(config: Config): number | null;
|
|
9
|
+
/** Python `parse_reasoning_effort` of the coerced `agent.reasoning_effort`. */
|
|
10
|
+
export declare function reasoningConfigFromConfig(config: Config, provider: string | null, supported?: string[]): {
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
effort?: string;
|
|
13
|
+
} | null;
|
|
14
|
+
/** Python `workspace_system_msg` (#6672): the frozen session-creation workspace and the per-message tag contract. */
|
|
15
|
+
export declare function workspaceSystemMessage(frozenWorkspace: string): string;
|
|
16
|
+
/** Python `_webui_delivery_context_prompt`: connected platforms, home channels, and scheduled-task delivery hints. */
|
|
17
|
+
export declare function deliveryContextPrompt(config: Config, hermesHome: string, homeDisplay: string): string;
|
|
18
|
+
/** Python `_webui_ephemeral_system_prompt`: personality, surface context, progress guidance, delivery context. */
|
|
19
|
+
export declare function webuiEphemeralSystemPrompt(opts: {
|
|
20
|
+
config: Config;
|
|
21
|
+
personality: string | null;
|
|
22
|
+
sessionId: string;
|
|
23
|
+
profile: string | null;
|
|
24
|
+
workspace: string;
|
|
25
|
+
hermesHome: string;
|
|
26
|
+
homeDisplay: string;
|
|
27
|
+
}): string;
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-turn Agent configuration the Python streaming worker derived from the profile's config.yaml: the tool-call and
|
|
3
|
+
* output budgets, the reasoning config, the frozen-workspace system message, and the WebUI-only ephemeral system
|
|
4
|
+
* prompt (personality, surface context, progress guidance, delivery hints).
|
|
5
|
+
*/
|
|
6
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
7
|
+
import { join } from 'node:path';
|
|
8
|
+
import { coerceReasoningEffort, dict, isDict, personalityPrompt } from '../config/agent-config.js';
|
|
9
|
+
import { VALID_REASONING_EFFORTS } from '../providers/tables.js';
|
|
10
|
+
import { str } from '../util.js';
|
|
11
|
+
export const WEBUI_PROGRESS_PROMPT = `WebUI progress guidance:
|
|
12
|
+
- Match the normal Hermes messaging style, but do not let long tool-running WebUI turns appear silent.
|
|
13
|
+
- For long multi-step work that uses tools, emit brief user-visible progress updates as normal assistant content, not only as hidden reasoning.
|
|
14
|
+
- Before the first tool batch in a long task, say what you are about to inspect.
|
|
15
|
+
- After each meaningful batch of tool calls, say what you just confirmed and what you will check next before continuing with more tools.
|
|
16
|
+
- Do not run many independent tool batches back-to-back without visible assistant text between them when the task is still ongoing.
|
|
17
|
+
- Do not keep progress only in reasoning, thinking, or tool-result channels; those are not a substitute for visible interim updates.
|
|
18
|
+
- Each update should say what you are about to check, what you just confirmed, or why the next tool call is needed.
|
|
19
|
+
- Keep updates concise, factual, and in the user's language. One or two short sentences are enough.
|
|
20
|
+
- Do not reveal hidden reasoning, chain-of-thought, private scratchpads, secrets, raw logs, or long tool output.
|
|
21
|
+
- Password, API-key, token, and secret fields are automatically redacted by the system. Treat masked values as intentional redaction, not placeholder text or user input errors, and do not tell the user a stored credential is wrong based on a masked value alone.
|
|
22
|
+
- Final visible assistant replies must be clear, user-facing, and in the user's language, not private planning notes.
|
|
23
|
+
- Do not include terse planning fragments or scratchpad shorthand in visible assistant text. Avoid fragments like "Need script", "Need check logs", "Need inspect email", or "maybe invite"; either omit them or rewrite them as clear user-facing progress.
|
|
24
|
+
- For direct answers or very short tasks, skip progress updates and answer normally.`;
|
|
25
|
+
function positiveInt(raw) {
|
|
26
|
+
if (raw === null || raw === undefined)
|
|
27
|
+
return null;
|
|
28
|
+
const n = typeof raw === 'number' ? Math.trunc(raw) : Number.parseInt(str(raw), 10);
|
|
29
|
+
return Number.isFinite(n) && n > 0 ? n : null;
|
|
30
|
+
}
|
|
31
|
+
/** Python `_process_wakeup_max_iterations`: automatic wakeup turns get a separate bounded tool-call budget. */
|
|
32
|
+
export function processWakeupMaxIterations(configured, source, env) {
|
|
33
|
+
if (source.trim() !== 'process_wakeup')
|
|
34
|
+
return configured;
|
|
35
|
+
let cap = Number.parseInt(env.HERMES_WEBUI_PROCESS_WAKEUP_MAX_TURNS ?? '32', 10);
|
|
36
|
+
if (!Number.isFinite(cap))
|
|
37
|
+
cap = 32;
|
|
38
|
+
cap = Math.max(1, Math.min(cap, 128));
|
|
39
|
+
return configured && configured > 0 ? Math.min(configured, cap) : cap;
|
|
40
|
+
}
|
|
41
|
+
/** Python: `agent.max_turns` (else root `max_turns`) → AIAgent `max_iterations`. */
|
|
42
|
+
export function maxIterationsFromConfig(config) {
|
|
43
|
+
const agent = dict(config.agent);
|
|
44
|
+
return positiveInt(agent.max_turns ?? config.max_turns);
|
|
45
|
+
}
|
|
46
|
+
/** Python: root `max_tokens`, else `agent.max_tokens`. */
|
|
47
|
+
export function maxTokensFromConfig(config) {
|
|
48
|
+
return positiveInt(config.max_tokens ?? dict(config.agent).max_tokens);
|
|
49
|
+
}
|
|
50
|
+
/** Python `parse_reasoning_effort` of the coerced `agent.reasoning_effort`. */
|
|
51
|
+
export function reasoningConfigFromConfig(config, provider, supported = []) {
|
|
52
|
+
const effort = coerceReasoningEffort(str(dict(config.agent).reasoning_effort), supported, provider ?? '');
|
|
53
|
+
if (!effort)
|
|
54
|
+
return null;
|
|
55
|
+
if (effort === 'none')
|
|
56
|
+
return { enabled: false };
|
|
57
|
+
return VALID_REASONING_EFFORTS.includes(effort) ? { enabled: true, effort } : null;
|
|
58
|
+
}
|
|
59
|
+
/** Python `workspace_system_msg` (#6672): the frozen session-creation workspace and the per-message tag contract. */
|
|
60
|
+
export function workspaceSystemMessage(frozenWorkspace) {
|
|
61
|
+
return `Active workspace at session start: ${frozenWorkspace}\n` +
|
|
62
|
+
'Every user message is prefixed with [Workspace::v1: /absolute/path] indicating the workspace the user has selected in the web UI at the time they sent that message. ' +
|
|
63
|
+
'This tag is the single authoritative source of the active workspace and updates with every message. It overrides any prior workspace mentioned in this system prompt, memory, or conversation history. ' +
|
|
64
|
+
'Always use the value from the most recent [Workspace::v1: ...] tag as your default working directory for ALL file operations: write_file, read_file, search_files, terminal workdir, and patch. ' +
|
|
65
|
+
'Never fall back to a hardcoded path when this tag is present.';
|
|
66
|
+
}
|
|
67
|
+
/** Python `_webui_surface_context_prompt`. */
|
|
68
|
+
function surfaceContextPrompt(ctx) {
|
|
69
|
+
const lines = [
|
|
70
|
+
'WebUI session context:',
|
|
71
|
+
'- This browser session is not the same live transcript as Telegram, Discord, Slack, or other messaging surfaces.',
|
|
72
|
+
'- Use durable memory, saved sessions, and available tools for cross-surface recall instead of assuming those transcripts are in this browser chat.',
|
|
73
|
+
'- Do not copy or dump this browser transcript into external notes or durable memory by default.',
|
|
74
|
+
'- Write to external notes or durable memory only for explicit captures, durable user preferences, decisions, blockers/open issues, runbook-worthy workflows, or other clearly reusable signals; otherwise leave notes unchanged.',
|
|
75
|
+
'- When you do write or update a durable note, briefly tell the user what note/section changed so the write is reviewable.',
|
|
76
|
+
];
|
|
77
|
+
for (const [key, label] of [['source', 'Source'], ['session_id', 'Session ID'], ['profile', 'Profile'], ['workspace', 'Workspace']]) {
|
|
78
|
+
const value = str(ctx[key]).trim();
|
|
79
|
+
if (value)
|
|
80
|
+
lines.push(`- ${label}: ${value}`);
|
|
81
|
+
}
|
|
82
|
+
return lines.join('\n');
|
|
83
|
+
}
|
|
84
|
+
/** Python `_webui_delivery_context_prompt`: connected platforms, home channels, and scheduled-task delivery hints. */
|
|
85
|
+
export function deliveryContextPrompt(config, hermesHome, homeDisplay) {
|
|
86
|
+
const connected = ['local (files on this machine)'];
|
|
87
|
+
try {
|
|
88
|
+
const statePath = join(hermesHome, 'gateway_state.json');
|
|
89
|
+
if (existsSync(statePath)) {
|
|
90
|
+
const raw = JSON.parse(readFileSync(statePath, 'utf8'));
|
|
91
|
+
const platforms = isDict(raw) ? raw.platforms : null;
|
|
92
|
+
if (isDict(platforms))
|
|
93
|
+
for (const name of Object.keys(platforms).sort()) {
|
|
94
|
+
const p = platforms[name];
|
|
95
|
+
if (isDict(p) && p.state === 'connected' && name !== 'local')
|
|
96
|
+
connected.push(`${name}: Connected ✓`);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
catch { /* unreadable gateway state contributes nothing */ }
|
|
101
|
+
const lines = [`**Connected Platforms:** ${connected.join(', ')}`];
|
|
102
|
+
const homeChannels = {};
|
|
103
|
+
const platformsCfg = dict(config.platforms);
|
|
104
|
+
for (const [name, pdata] of Object.entries(platformsCfg)) {
|
|
105
|
+
if (!isDict(pdata) || pdata.enabled === false)
|
|
106
|
+
continue;
|
|
107
|
+
const home = pdata.home_channel;
|
|
108
|
+
if (isDict(home))
|
|
109
|
+
homeChannels[name] = str(home.name) || name;
|
|
110
|
+
}
|
|
111
|
+
const sorted = Object.entries(homeChannels).sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0));
|
|
112
|
+
if (sorted.length) {
|
|
113
|
+
lines.push('', '**Home Channels (default destinations):**');
|
|
114
|
+
for (const [platform, label] of sorted)
|
|
115
|
+
lines.push(` - ${platform}: ${label}`);
|
|
116
|
+
}
|
|
117
|
+
lines.push('', '**Delivery options for scheduled tasks:**');
|
|
118
|
+
lines.push('- `"origin"` → Back to this WebUI/browser session when the WebUI runtime supports origin delivery; otherwise prefer an explicit platform target.');
|
|
119
|
+
lines.push(`- \`"local"\` → Save to local files only (${homeDisplay}/cron/output/)`);
|
|
120
|
+
for (const [platform, label] of sorted)
|
|
121
|
+
lines.push(`- \`"${platform}"\` → Home channel (${label})`);
|
|
122
|
+
lines.push('', '*For explicit targeting, use `"platform:chat_id"` format if the user provides a specific chat ID. Do not invent private IDs.*');
|
|
123
|
+
return lines.join('\n');
|
|
124
|
+
}
|
|
125
|
+
/** Python `_webui_ephemeral_system_prompt`: personality, surface context, progress guidance, delivery context. */
|
|
126
|
+
export function webuiEphemeralSystemPrompt(opts) {
|
|
127
|
+
const parts = [];
|
|
128
|
+
const prompt = opts.personality ? personalityPrompt(opts.config, opts.personality) : null;
|
|
129
|
+
if (prompt)
|
|
130
|
+
parts.push(prompt.trim());
|
|
131
|
+
parts.push(surfaceContextPrompt({ source: 'webui', session_id: opts.sessionId, profile: opts.profile, workspace: opts.workspace }));
|
|
132
|
+
parts.push(WEBUI_PROGRESS_PROMPT);
|
|
133
|
+
parts.push(deliveryContextPrompt(opts.config, opts.hermesHome, opts.homeDisplay));
|
|
134
|
+
return parts.filter(Boolean).join('\n\n');
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=turn-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-context.js","sourceRoot":"","sources":["../../src/sessions/turn-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import type { SidecarLike } from '../sidecar/client.js';
|
|
2
|
+
import type { SessionStore } from './store.js';
|
|
3
|
+
import type { SessionService } from './service.js';
|
|
4
|
+
import { HttpFailure } from './service.js';
|
|
5
|
+
import type { SessionEventBus } from './events.js';
|
|
6
|
+
import { StreamRegistry, SessionChannels } from './streams.js';
|
|
7
|
+
import { PendingPrompts } from './pending.js';
|
|
8
|
+
import { RunJournal, type RunJournalWriter } from './journal.js';
|
|
9
|
+
import { Session } from './session.js';
|
|
10
|
+
import { type Config } from '../config/agent-config.js';
|
|
11
|
+
import type { WorkspaceRegistry } from '../workspace/workspaces.js';
|
|
12
|
+
export declare const CHAT_LOCK_WAIT_SECONDS = 2;
|
|
13
|
+
export interface TurnRunnerDeps {
|
|
14
|
+
store: SessionStore;
|
|
15
|
+
service: () => SessionService;
|
|
16
|
+
events: SessionEventBus;
|
|
17
|
+
registry: StreamRegistry;
|
|
18
|
+
channels: SessionChannels;
|
|
19
|
+
pending: PendingPrompts;
|
|
20
|
+
journal: RunJournal;
|
|
21
|
+
sidecar: () => SidecarLike | null;
|
|
22
|
+
profileHome: (profile: string | null) => string;
|
|
23
|
+
workspaces: WorkspaceRegistry;
|
|
24
|
+
now: () => number;
|
|
25
|
+
log: (line: string) => void;
|
|
26
|
+
redactEnabled: () => boolean;
|
|
27
|
+
/** `webui.session_save_mode`: `deferred` (default) or `eager`. */
|
|
28
|
+
saveMode: () => 'deferred' | 'eager';
|
|
29
|
+
/** Per-session toolsets override or the profile's configured toolsets (null lets the Agent decide). */
|
|
30
|
+
toolsetsFor: (session: Session) => string[] | null;
|
|
31
|
+
attachmentDir: (sid: string) => string;
|
|
32
|
+
agentName: () => string;
|
|
33
|
+
titleGenerationEnabled: () => boolean;
|
|
34
|
+
/** Terminal relay phase per stream (`completed`/`cancelled`/`failed`); Python `note_talaria_terminal`. */
|
|
35
|
+
onTerminal?: (streamId: string, phase: string) => void;
|
|
36
|
+
/** Insights title sync (Python `sync_session_title`), gated on `sync_to_insights` by the runtime. */
|
|
37
|
+
syncTitle?: (session: Session) => Promise<void>;
|
|
38
|
+
/** Whether the profile's deletion RPC is in flight (its home must not be entered by a new turn). */
|
|
39
|
+
profileDeleting?: (profile: string | null) => boolean;
|
|
40
|
+
/** Runs after the run is retired (Python teardown idle hook: deferred process wakeups). */
|
|
41
|
+
onTurnEnd?: (sessionId: string) => void;
|
|
42
|
+
/** The profile's config.yaml (turn budgets, reasoning effort, personality, delivery context); null when unavailable. */
|
|
43
|
+
profileConfig?: (profile: string | null) => Promise<Config | null>;
|
|
44
|
+
env?: Record<string, string | undefined>;
|
|
45
|
+
hermesHome?: string;
|
|
46
|
+
homeDisplay?: () => string;
|
|
47
|
+
}
|
|
48
|
+
export interface StartTurnOptions {
|
|
49
|
+
msg: string;
|
|
50
|
+
attachments?: Record<string, unknown>[];
|
|
51
|
+
workspace: string;
|
|
52
|
+
model: string | null;
|
|
53
|
+
modelProvider: string | null;
|
|
54
|
+
normalizedModel?: boolean;
|
|
55
|
+
source?: string;
|
|
56
|
+
goalRelated?: boolean;
|
|
57
|
+
ephemeral?: boolean;
|
|
58
|
+
onDone?: (answer: string) => void;
|
|
59
|
+
/** Runs when the turn ends in an error or cancel (Python background runner: `complete_background(..., "(background task failed)")`). */
|
|
60
|
+
onFailed?: () => void;
|
|
61
|
+
}
|
|
62
|
+
export interface StartTurnResponse {
|
|
63
|
+
stream_id?: string;
|
|
64
|
+
session_id?: string;
|
|
65
|
+
pending_started_at?: number | null;
|
|
66
|
+
turn_id?: string | null;
|
|
67
|
+
title?: string;
|
|
68
|
+
effective_model?: string;
|
|
69
|
+
effective_model_provider?: string;
|
|
70
|
+
}
|
|
71
|
+
interface ErrorClassification {
|
|
72
|
+
label: string;
|
|
73
|
+
type: string;
|
|
74
|
+
hint: string;
|
|
75
|
+
}
|
|
76
|
+
export declare function classifyProviderError(errStr: string, opts?: {
|
|
77
|
+
silentFailure?: boolean | undefined;
|
|
78
|
+
condition?: string | undefined;
|
|
79
|
+
}): ErrorClassification;
|
|
80
|
+
export declare function cancelledTurnHint(agentName?: string): string;
|
|
81
|
+
export declare function providerErrorPayload(message: string, errType: string, hint?: string, redact?: boolean): Record<string, unknown>;
|
|
82
|
+
/** The image formats a provider accepts inline; the MIME comes from the bytes, never from the client. */
|
|
83
|
+
/**
|
|
84
|
+
* Python `_IMAGE_MAGIC` / `_is_valid_image`: the declared MIME must match the file's signature; BMP joins the binary
|
|
85
|
+
* set, and SVG (text, no signature) is accepted on its declared type when the bytes read as an SVG document.
|
|
86
|
+
*/
|
|
87
|
+
export declare function sniffImageMime(bytes: Buffer, declared?: string): string | null;
|
|
88
|
+
/** Python `build_compression_recovery_payload` + `stamp_compression_exhausted_recovery`. */
|
|
89
|
+
export declare function stampCompressionExhaustedRecovery(s: Session, message: string, details: string): Record<string, unknown>;
|
|
90
|
+
export declare function isGenericContinuationIntent(text: string): boolean;
|
|
91
|
+
/** Python `_explicit_text_signal`: `agent.image_input_mode: text` or a configured `auxiliary.vision` backend. */
|
|
92
|
+
export declare function explicitTextSignal(cfg: Config): boolean;
|
|
93
|
+
export declare const GATEWAY_APPROVAL_RELAY_UNAVAILABLE = "Gateway approval could not be relayed because the active run is unavailable. Reopen the session or retry after it reconnects.";
|
|
94
|
+
export declare class TurnRunner {
|
|
95
|
+
readonly deps: TurnRunnerDeps;
|
|
96
|
+
readonly writers: Map<string, RunJournalWriter>;
|
|
97
|
+
private readonly sessionPuts;
|
|
98
|
+
/** Per-session chain for sidecar YOLO mutation + local commit, so opposing toggles cannot interleave. */
|
|
99
|
+
private readonly yoloChains;
|
|
100
|
+
private readonly abortControllers;
|
|
101
|
+
private readonly steers;
|
|
102
|
+
/** Streams whose run completed (`done` emitted) and only await title work; a late cancel is a no-op for these. */
|
|
103
|
+
private readonly settledStreams;
|
|
104
|
+
constructor(deps: TurnRunnerDeps);
|
|
105
|
+
private get registry();
|
|
106
|
+
/** Python `_start_chat_stream_for_session`: persist pending state, register the channel, launch the worker. */
|
|
107
|
+
start(session: Session, opts: StartTurnOptions): StartTurnResponse & {
|
|
108
|
+
_status?: number;
|
|
109
|
+
error?: string;
|
|
110
|
+
active_stream_id?: string | null;
|
|
111
|
+
};
|
|
112
|
+
/** Python `_checkpoint_user_message_for_eager_session_save`. */
|
|
113
|
+
private checkpointUserMessage;
|
|
114
|
+
private run;
|
|
115
|
+
/**
|
|
116
|
+
* Python `_build_user_message`: image attachments are embedded as native `image_url` parts only when the Agent's
|
|
117
|
+
* resolved image mode for this model is `native` (text mode routes them through the Agent's vision tool path), and
|
|
118
|
+
* only after the bytes are read through an anchored descriptor and sniffed as a real image format.
|
|
119
|
+
*/
|
|
120
|
+
private buildUserMessage;
|
|
121
|
+
/**
|
|
122
|
+
* Python `_session_payload_with_terminal_window`: the same visible-message window contract as `GET /api/session?
|
|
123
|
+
* msg_limit=` (renderable rows, limited payload shape, windowed tool calls, todo state) with the full count.
|
|
124
|
+
*/
|
|
125
|
+
private terminalSessionPayload;
|
|
126
|
+
/** Python `_materialize_pending_user_turn_before_error` + error message append + save. */
|
|
127
|
+
private persistError;
|
|
128
|
+
private materializePendingUserTurn;
|
|
129
|
+
private appendPartialSnapshot;
|
|
130
|
+
private cancelPayload;
|
|
131
|
+
/** Python `_emit_cancel_event`: the terminal frame carries the settled session so tabs can render the partial without a reload. */
|
|
132
|
+
private cancelFrame;
|
|
133
|
+
/** Python `_finalize_cancelled_turn`/`_persist_cancelled_turn`: only while this stream still owns writeback. */
|
|
134
|
+
private finalizeCancelled;
|
|
135
|
+
/** Push a frame onto the session's live chat stream from outside the turn (Python gateway notify callbacks). */
|
|
136
|
+
private emitToSession;
|
|
137
|
+
private teardown;
|
|
138
|
+
/** Journal files with a live writer (retention must leave them alone). */
|
|
139
|
+
activeJournalPaths(): Set<string>;
|
|
140
|
+
/** Python `_generate_llm_session_title_via_aux`: aux-route statuses (`llm_aux`, `llm_aux_retry`, `llm_*_aux`). */
|
|
141
|
+
private llmTitle;
|
|
142
|
+
/** Python `generate_session_title_for_session`: on-demand title from the persisted transcript; never touches `llm_title_generated`. */
|
|
143
|
+
generateTitle(s: Session, opts?: {
|
|
144
|
+
preferLatest?: boolean;
|
|
145
|
+
}): Promise<{
|
|
146
|
+
title: string | null;
|
|
147
|
+
status: string;
|
|
148
|
+
rawPreview: string;
|
|
149
|
+
}>;
|
|
150
|
+
/** Python `_run_background_title_update` (spawned only when `_background_title_generation_inputs` is eligible). */
|
|
151
|
+
private backgroundTitle;
|
|
152
|
+
/** Python `cancel_stream`: persist the partial, mark cancelled, interrupt the Agent, release admission. */
|
|
153
|
+
cancel(streamId: string): Promise<boolean>;
|
|
154
|
+
steer(sessionId: string, text: string, displayText: string, steerId: string): Promise<Record<string, unknown>>;
|
|
155
|
+
/** Python `_webui_steer_events_before` for terminal frames: cancel/apperror flush consumed steers and leftovers first. */
|
|
156
|
+
private takeSteerEventsBefore;
|
|
157
|
+
/** Python `_pending_webui_steer_suffix_start`: the pending text is the newline-joined tail of the records; earlier ones are consumed. */
|
|
158
|
+
private static pendingSteerSuffixStart;
|
|
159
|
+
private consumedSteerPayload;
|
|
160
|
+
/**
|
|
161
|
+
* Python `_take_consumed_webui_steers` (live, `keepLeftovers`) and `_finalize_webui_steers` (terminal): records the
|
|
162
|
+
* Agent no longer holds pending are consumed; at the end the still-pending tail is reported as leftovers.
|
|
163
|
+
*/
|
|
164
|
+
private takeConsumedSteers;
|
|
165
|
+
/** Terminal steer bookkeeping for cancel/error paths: consumed records first, then `pending_steer_leftover` for the rest. */
|
|
166
|
+
private finalizeSteerEvents;
|
|
167
|
+
respondApproval(sessionId: string, choice: string, approvalId: string, enableYolo: boolean): Promise<Record<string, unknown>>;
|
|
168
|
+
private withYoloLock;
|
|
169
|
+
/** Python `set_session_yolo_enabled(False)`: the sidecar must drop its per-session YOLO state before the local flag clears. */
|
|
170
|
+
disableYolo(sessionId: string): Promise<Record<string, unknown>>;
|
|
171
|
+
/** `stale` when no such prompt is queued; `ok:false` without `stale` when the sidecar did not acknowledge (prompt retained). */
|
|
172
|
+
respondClarify(sessionId: string, clarifyId: string, response: string): Promise<{
|
|
173
|
+
ok: boolean;
|
|
174
|
+
stale?: boolean;
|
|
175
|
+
error?: string;
|
|
176
|
+
}>;
|
|
177
|
+
}
|
|
178
|
+
export { HttpFailure };
|