@henlii/pidance 0.2.32 → 0.2.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +14 -14
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +6 -6
- package/.next/server/app/_global-error/page.js +3 -3
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +3 -3
- package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/about/route.js +1 -1
- package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/running/events/route.js +2 -2
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent/submissions/[submissionId]/route.js +1 -1
- package/.next/server/app/api/agent-settings/route.js +2 -2
- package/.next/server/app/api/attachments/route.js +1 -1
- package/.next/server/app/api/auth/all-providers/route.js +1 -1
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/providers/route.js +1 -1
- package/.next/server/app/api/auth/ui-session/route.js +1 -1
- package/.next/server/app/api/auth/ui-sessions/[id]/route.js +1 -1
- package/.next/server/app/api/auth/ui-sessions/route.js +1 -1
- package/.next/server/app/api/cwd/browse/route.js +1 -1
- package/.next/server/app/api/cwd/create/route.js +1 -0
- package/.next/server/app/api/cwd/create/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cwd/validate/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/files/[...path]/route.js +2 -2
- package/.next/server/app/api/git/diff/route.js +1 -1
- package/.next/server/app/api/git/status/route.js +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/message-media/route.js +1 -1
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models-config/raw/route.js +1 -1
- package/.next/server/app/api/models-config/route.js +1 -1
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/plugins/route.js +1 -1
- package/.next/server/app/api/plugins/search/route.js +1 -1
- package/.next/server/app/api/plugins/updates/route.js +1 -1
- package/.next/server/app/api/preferences/route.js +1 -1
- package/.next/server/app/api/project-assets/route.js +2 -2
- package/.next/server/app/api/prompts/route.js +1 -1
- package/.next/server/app/api/pty/route.js +2 -2
- package/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/command-entry/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/info/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/outline/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/tool-results/[toolCallId]/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/sessions/search/route.js +1 -1
- package/.next/server/app/api/settings/raw/route.js +2 -2
- package/.next/server/app/api/settings/remote/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js +1 -1
- package/.next/server/app/api/skills/route.js +2 -2
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +1 -1
- package/.next/server/app/api/subagent-runs/route.js +1 -1
- package/.next/server/app/api/update/apply/route.js +2 -2
- package/.next/server/app/api/update/check/route.js +1 -1
- package/.next/server/app/icon.png/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +5 -5
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/index.segments/_full.segment.rsc +5 -5
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/page.js +14 -15
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +14 -14
- package/.next/server/chunks/1707.js +1 -1
- package/.next/server/chunks/188.js +1 -1
- package/.next/server/chunks/2871.js +1 -1
- package/.next/server/chunks/329.js +1 -1
- package/.next/server/chunks/4127.js +1 -0
- package/.next/server/chunks/5253.js +1 -0
- package/.next/server/chunks/5274.js +1 -1
- package/.next/server/chunks/5304.js +1 -1
- package/.next/server/chunks/5726.js +1 -0
- package/.next/server/chunks/6192.js +1 -1
- package/.next/server/chunks/6509.js +1 -1
- package/.next/server/chunks/7181.js +1 -1
- package/.next/server/chunks/7594.js +2 -2
- package/.next/server/chunks/9169.js +1 -1
- package/.next/server/chunks/9280.js +2 -2
- package/.next/server/chunks/9935.js +1 -1
- package/.next/server/instrumentation.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/{--BqSIE0XHX8C_LmzFpBZ → Xz9XxhYAztXJctQiqfonK}/_buildManifest.js +1 -1
- package/.next/static/chunks/9780-10c5b784a91324f0.js +1 -0
- package/.next/static/chunks/app/_global-error/{page-3154b10ff0f29211.js → page-b2c38d3e76d6c6b5.js} +1 -1
- package/.next/static/chunks/app/api/about/{route-3154b10ff0f29211.js → route-b2c38d3e76d6c6b5.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/bash-output/{route-3154b10ff0f29211.js → route-b2c38d3e76d6c6b5.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/events/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/agent/running/events/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/agent/submissions/[submissionId]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/agent-settings/{route-3154b10ff0f29211.js → route-b2c38d3e76d6c6b5.js} +1 -1
- package/.next/static/chunks/app/api/attachments/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/ui-session/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/ui-sessions/[id]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/auth/ui-sessions/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/cwd/browse/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/cwd/create/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/cwd/validate/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/git/diff/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/git/status/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/home/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/message-media/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/models/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/models-config/raw/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/plugins/search/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/plugins/updates/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/preferences/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/project-assets/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/prompts/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/pty/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/archive/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/command-entry/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/info/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/outline/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/state/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/tool-results/[toolCallId]/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/sessions/search/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/settings/raw/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/settings/remote/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/skills/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/subagent-runs/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/update/apply/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/api/update/check/route-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/app/page-61e09e843c0fdee8.js +24 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-b2c38d3e76d6c6b5.js +1 -0
- package/.next/static/css/{a2bef6e707e10928.css → 2c5193dd12bf5ffb.css} +1 -1
- package/README.en.md +5 -6
- package/README.md +3 -4
- package/README.zh-CN.md +0 -1
- package/package.json +1 -2
- package/.next/server/app/api/worktrees/route.js +0 -1
- package/.next/server/app/api/worktrees/route_client-reference-manifest.js +0 -1
- package/.next/server/chunks/5582.js +0 -1
- package/.next/static/chunks/9780-f8d2d505d4ce420b.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/events/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/agent/new/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/agent/running/events/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/agent/submissions/[submissionId]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/attachments/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/ui-session/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/ui-sessions/[id]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/auth/ui-sessions/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/cwd/browse/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/cwd/validate/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/git/diff/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/git/status/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/home/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/message-media/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/models/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/models-config/raw/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/plugins/search/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/plugins/updates/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/preferences/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/project-assets/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/prompts/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/pty/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/archive/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/command-entry/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/info/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/outline/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/state/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/tool-results/[toolCallId]/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/sessions/search/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/settings/raw/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/settings/remote/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/skills/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/subagent-runs/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/update/apply/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/update/check/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/app/page-e86baaf6c4b45d9e.js +0 -25
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-3154b10ff0f29211.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3154b10ff0f29211.js +0 -1
- /package/.next/static/{--BqSIE0XHX8C_LmzFpBZ → Xz9XxhYAztXJctQiqfonK}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[552,796,885,976,1004,1097,1273,1541,2053,2138,2504,2718,2835,2837,3032,3059,3432,3507,3851,3943,3955,4037,4133,4428,4459,4629,4896,5221,5403,5408,5418,5907,6061,6132,6444,6450,6709,6801,6819,6849,6919,6988,7032,7067,7074,7187,7198,7483,7769,7812,7837,7851,8156,8167,8197,8390,8429,8658,8743,8933,9043,9156,9258,9293,9560,9742,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[552,796,885,976,1004,1097,1273,1541,2053,2138,2504,2718,2835,2837,3032,3059,3432,3507,3851,3943,3955,4037,4133,4428,4459,4629,4896,5221,5403,5408,5418,5907,6061,6132,6444,6450,6709,6801,6819,6849,6919,6988,7032,7067,7074,7187,7198,7483,7769,7812,7837,7851,8156,8167,8197,8390,8429,8658,8743,8933,9043,9156,9258,9293,9560,9742,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[552,796,885,976,1004,1097,1273,1541,2053,2138,2504,2718,2835,2837,3032,3059,3432,3507,3851,3943,3955,4037,4133,4428,4459,4629,4896,5221,5403,5408,5418,5907,6061,6132,6444,6450,6709,6801,6819,6849,6919,6988,7032,7067,7074,7187,7198,7483,7769,7812,7837,7851,8156,8167,8197,8390,8429,8658,8743,8933,9043,9156,9258,9293,9560,9742,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-b2c38d3e76d6c6b5.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[552,796,885,976,1004,1097,1273,1541,2053,2138,2504,2718,2835,2837,3032,3059,3432,3507,3851,3943,3955,4037,4133,4428,4459,4629,4896,5221,5403,5408,5418,5907,6061,6132,6444,6450,6709,6801,6819,6849,6919,6988,7032,7067,7074,7187,7198,7483,7769,7812,7837,7851,8156,8167,8197,8390,8429,8658,8743,8933,9043,9156,9258,9293,9560,9742,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-text-muted:var(--text-muted);--color-status-running:var(--status-running)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.z-50{z-index:50}.row-0{grid-row:0}.row-399{grid-row:399}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.h-1{height:calc(var(--spacing) * 1)}.h-\[720px\]{height:720px}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.w-\[720px\]{width:720px}.w-full{width:100%}.max-w-\[760px\]{max-width:760px}.flex-1{flex:1}.\!shrink{flex-shrink:1!important}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[drop-ripple_2\.4s_ease-out_infinite_backwards\]{animation:drop-ripple 2.4s ease-out infinite backwards}.animate-\[drop-zone-in_0\.15s_ease_both\]{animation:drop-zone-in .15s both}.animate-\[pulse_1\.5s_ease-in-out_infinite\]{animation:pulse 1.5s ease-in-out infinite}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-solid{--tw-border-style:solid;border-style:solid}.border-\[color-mix\(in_srgb\,var\(--accent\)_50\%\,transparent\)\]{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-\[color-mix\(in_srgb\,var\(--accent\)_50\%\,transparent\)\]{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--accent\)_6\%\,transparent\)\]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-\[color-mix\(in_srgb\,var\(--accent\)_6\%\,transparent\)\]{background-color:color-mix(in srgb,var(--accent) 6%,transparent)}}.bg-status-running{background-color:var(--color-status-running)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[13px\]{font-size:13px}.break-all{word-break:break-all}.text-\[var\(--error-text\)\]{color:var(--error-text)}.text-text-muted{color:var(--color-text-muted)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal}.ordinal,.tabular-nums{font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\[1px\]{--tw-backdrop-blur:blur(1px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[pidance\:err\]{pidance:err}.\[scrollbar-width\:none\]{scrollbar-width:none}@media (min-width:520px){.min-\[520px\]\:flex{display:flex}}@media (min-width:40rem){.sm\:inline{display:inline}}}:root{color-scheme:light;--bg:#fdfcfa;--bg-panel:#f7f6f4;--bg-elevated:#fff;--bg-hover:#0000000d;--bg-selected:#b350172b;--bg-subtle:#f4f3f1;--border:#e5e1de;--border-strong:#cbc7c2;--text:#393a34;--text-muted:#5c5c54;--text-dim:#797970;--accent:#b35017;--accent-hover:#9a4310;--accent-foreground:#fff;--user-bg:#f7f2ee;--assistant-bg:#fdfcfa;--tool-bg:#efeeec80;--code-bg:#f4f3f1;--status-running:#b35017;--status-waiting:#c99700;--status-unread:#2d72c4;--status-success:#5f8d3d;--status-warning:#8d6c15;--status-danger:#b7493f;--status-success-bg:#5f8d3d14;--status-success-border:#5f8d3d59;--status-success-foreground:#fff;--status-warning-bg:#8d6c1514;--status-warning-border:#8d6c1566;--status-danger-bg:#b7493f12;--status-danger-border:#b7493f66;--error-text:#a43d35;--diff-added-text:#47752b;--diff-added-bg:#5f8d3d17;--diff-added-border:#5f8d3d99;--diff-removed-text:#a43d35;--diff-removed-bg:#b7493f17;--diff-removed-border:#b7493f99;--diff-hunk-bg:#2d72c41f;--live-indicator-glow:0 0 6px #5f8d3d99;--warning:var(--status-warning);--danger:var(--status-danger);--success:var(--status-success);--focus:#b35017;--focus-ring:#b3501755;--overlay:#39393420;--disabled-opacity:.48;--shadow-float:0 18px 50px #39393424;--shadow-input:0 1px 2px #39393412,0 0 0 1px #ffffff80 inset;--radius-xs:4px;--radius-sm:6px;--radius-md:9px;--radius-lg:13px;--radius-pill:999px}html.dark{color-scheme:dark;--bg:#120f0e;--bg-panel:#171615;--bg-elevated:#1c1a18;--bg-hover:#ffffff12;--bg-selected:#b9a5992b;--bg-subtle:#171616;--border:#242323;--border-strong:#504e4c;--text:#c9c5ba;--text-muted:#8f8b81;--text-dim:#77736b;--accent:#da7c47;--accent-hover:#eb8c57;--accent-foreground:#120f0e;--user-bg:#25170e;--assistant-bg:#120f0e;--tool-bg:#120f0e80;--code-bg:#0e0c0b;--status-running:#da7c47;--status-waiting:#eab308;--status-unread:#479fe6;--status-success:#76ad4f;--status-warning:#c67f13;--status-danger:#da5b4a;--status-success-bg:#76ad4f1f;--status-success-border:#76ad4f70;--status-success-foreground:#120f0e;--status-warning-bg:#c67f131f;--status-warning-border:#c67f1370;--status-danger-bg:#da5b4a1f;--status-danger-border:#da5b4a7a;--error-text:#ed7665;--diff-added-text:#8bc766;--diff-added-bg:#76ad4f1f;--diff-added-border:#76ad4fb3;--diff-removed-text:#ed7665;--diff-removed-bg:#da5b4a24;--diff-removed-border:#da5b4ab3;--diff-hunk-bg:#479fe624;--live-indicator-glow:0 0 6px #76ad4fb3;--warning:var(--status-warning);--danger:var(--status-danger);--success:var(--status-success);--focus:#da7c47;--focus-ring:#da7c4755;--overlay:#0009;--disabled-opacity:.48;--shadow-float:0 20px 60px #00000070;--shadow-input:0 1px 2px #00000040,0 0 0 1px #ffffff08 inset}html[data-theme-style=fusion]{--bg:#fbfcfd;--bg-panel:#f3f6f7;--bg-elevated:#fff;--bg-hover:#163b4d0a;--bg-selected:#2e6f9520;--bg-subtle:#eef2f3;--border:#dce4e6;--border-strong:#bdcbd0;--text:#263439;--text-muted:#607077;--text-dim:#819096;--accent:#286e98;--accent-hover:#1e5c82;--accent-foreground:#fff;--user-bg:#eaf2f7;--assistant-bg:#fbfcfd;--tool-bg:#f0f5f4;--code-bg:#172126;--status-running:#27836e;--status-waiting:#cf9f1d;--status-unread:#286e98;--status-success:#49805d;--status-warning:#9a6a1a;--status-danger:#b34f58;--status-success-bg:#49805d14;--status-success-border:#49805d59;--status-success-foreground:#fff;--status-warning-bg:#9a6a1a14;--status-warning-border:#9a6a1a66;--status-danger-bg:#b34f5812;--status-danger-border:#b34f5866;--error-text:#a23f49;--diff-added-text:#39704d;--diff-added-bg:#49805d17;--diff-added-border:#49805d99;--diff-removed-text:#a23f49;--diff-removed-bg:#b34f5817;--diff-removed-border:#b34f5899;--diff-hunk-bg:#286e981f;--live-indicator-glow:0 0 6px #49805d99;--focus:#286e98;--focus-ring:#286e9844;--overlay:#18343d30;--shadow-float:0 18px 48px #163b4d20;--shadow-input:0 1px 2px #163b4d12,0 0 0 1px #fff inset}html.dark[data-theme-style=fusion]{--bg:#101719;--bg-panel:#141d20;--bg-elevated:#192428;--bg-hover:#d8edf212;--bg-selected:#6ba7c426;--bg-subtle:#172124;--border:#263337;--border-strong:#46585e;--text:#ced8d8;--text-muted:#8d9c9e;--text-dim:#708084;--accent:#69a7ca;--accent-hover:#7fb8d6;--accent-foreground:#0f1719;--user-bg:#162832;--assistant-bg:#101719;--tool-bg:#121d1f;--code-bg:#0b1113;--status-running:#5eb39b;--status-waiting:#ecc94b;--status-unread:#69a7ca;--status-success:#79ad78;--status-warning:#d0a356;--status-danger:#dd777e;--status-success-bg:#79ad781f;--status-success-border:#79ad7870;--status-success-foreground:#101719;--status-warning-bg:#d0a3561f;--status-warning-border:#d0a35670;--status-danger-bg:#dd777e1f;--status-danger-border:#dd777e7a;--error-text:#ed8f95;--diff-added-text:#91c590;--diff-added-bg:#79ad781f;--diff-added-border:#79ad78b3;--diff-removed-text:#ed8f95;--diff-removed-bg:#dd777e24;--diff-removed-border:#dd777eb3;--diff-hunk-bg:#69a7ca24;--live-indicator-glow:0 0 6px #79ad78b3;--focus:#69a7ca;--focus-ring:#69a7ca55;--overlay:#0009;--shadow-float:0 20px 60px #0006;--shadow-input:0 1px 2px #0000003d,0 0 0 1px #ffffff08 inset}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}*{box-sizing:border-box}body,html{background:var(--bg);height:100%;color:var(--text);overscroll-behavior:none;margin:0;padding:0;font-family:Aptos,Segoe UI Variable,Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px}body{height:100dvh}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}:root{--font-mono:var(--font-noto-mono),"JetBrains Mono","Fira Code","Consolas",ui-monospace,"PingFang SC","Microsoft YaHei",monospace}code,pre{font-family:var(--font-mono)}.chat-selectable,.compaction-file-list,.markdown-code-block,.markdown-code-body,code,pre{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.markdown-body{color:var(--text);word-break:break-word;font-size:14px;line-height:1.72}.markdown-body.markdown-body--extension{font-size:inherit;color:inherit;line-height:1.5}.markdown-body.markdown-body--extension p{margin:0 0 4px}.markdown-body.markdown-body--extension p:last-child{margin-bottom:0}.markdown-body.markdown-body--extension h1,.markdown-body.markdown-body--extension h2,.markdown-body.markdown-body--extension h3,.markdown-body.markdown-body--extension h4,.markdown-body.markdown-body--extension h5,.markdown-body.markdown-body--extension h6{margin:0 0 4px;font-size:1em;font-weight:650;line-height:1.35}.markdown-body.markdown-body--extension ol,.markdown-body.markdown-body--extension ul{margin:2px 0 4px}.markdown-body p{margin:0 0 8px}.markdown-body p:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--text);letter-spacing:0;margin:10px 0 5px;font-weight:600;line-height:1.35}.markdown-body h1{font-size:1.16em}.markdown-body h2{font-size:1.08em}.markdown-body h3{color:var(--text);font-size:.98em}@supports (color:color-mix(in lab,red,red)){.markdown-body h3{color:color-mix(in srgb,var(--text) 88%,var(--text-muted))}}.markdown-body ol,.markdown-body ul{margin:5px 0 8px;padding-left:22px;list-style-position:outside}.markdown-body li{margin:3px 0;padding-left:2px}.markdown-body ul>li{list-style-type:disc}.markdown-body ol>li{list-style-type:decimal}.markdown-body li>p{margin:0}.markdown-body li::marker{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body li::marker{color:color-mix(in srgb,var(--accent) 72%,var(--text-muted))}}.markdown-body li::marker{font-weight:600}.markdown-body strong{color:var(--text)}@supports (color:color-mix(in lab,red,red)){.markdown-body strong{color:color-mix(in srgb,var(--text) 88%,var(--accent))}}.markdown-body strong{font-weight:700}.markdown-body em{color:var(--text-muted)}.markdown-body a{color:var(--accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body a{-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent)}}.markdown-body a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.markdown-body .markdown-inline-code{background:var(--bg-subtle);color:var(--text);font-family:var(--font-mono);box-shadow:inset 0 0 0 1px var(--border);border-radius:5px;padding:1px 5px;font-size:.92em}@supports (color:color-mix(in lab,red,red)){.markdown-body .markdown-inline-code{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 70%,transparent)}}.markdown-body .contains-task-list{padding-left:0;list-style:none}.markdown-body .task-list-item{padding-left:25px;display:block;position:relative}.markdown-body .task-list-item::marker{content:""}.markdown-body .task-list-item>input[type=checkbox],.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child{appearance:none;border:1px solid var(--border);background:var(--bg);border-radius:4px;place-content:center;width:14px;height:14px;margin:0;display:inline-grid;position:absolute;top:.35em;left:0}.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}}.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{background:color-mix(in srgb,var(--accent) 10%,var(--bg))}}.markdown-body .task-list-item>input[type=checkbox]:checked:before,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked:before{content:"";border:solid var(--accent);border-width:0 1.5px 1.5px 0;width:4px;height:8px;transform:rotate(45deg)translateY(-1px)}.markdown-body blockquote{border-left:3px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.markdown-body blockquote{border-left:3px solid color-mix(in srgb,var(--border) 75%,var(--text-muted))}}.markdown-body blockquote{background:var(--bg-subtle);color:var(--text-muted);border-radius:0 6px 6px 0;margin:6px 0;padding:6px 11px}.markdown-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);-webkit-touch-callout:default;width:100%;margin:8px 0}.markdown-table-scroll,.markdown-table-wrap{cursor:text;-webkit-user-select:text;user-select:text}.markdown-table-scroll{overflow:visible}.markdown-table-row{border-bottom:1px solid var(--border);align-items:stretch;font-size:13px;display:grid}.markdown-table-body .markdown-table-row:last-child{border-bottom:0}.markdown-table-td,.markdown-table-th{text-align:left;cursor:text;overflow-wrap:anywhere;word-break:break-word;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;min-width:0;padding:6px 10px}.markdown-table-th{background:var(--bg-panel);color:var(--text)}@supports (color:color-mix(in lab,red,red)){.markdown-table-th{color:color-mix(in srgb,var(--text) 88%,var(--text-muted))}}.markdown-table-th{font-weight:650}.markdown-table-body .markdown-table-row:nth-child(2n) .markdown-table-td{background:var(--bg-subtle)}.markdown-body hr{background:linear-gradient(90deg,transparent,var(--border),transparent);border:none;height:1px;margin:12px 0}.markdown-body .katex-display{margin:.6em 0;padding:2px 0;overflow:auto hidden}.markdown-body .katex{font-size:1.05em}.markdown-user-message p{white-space:pre-wrap}.markdown-custom-message{line-height:1.32}.markdown-custom-message p{margin:0}.markdown-custom-message h1,.markdown-custom-message h2,.markdown-custom-message h3,.markdown-custom-message h4,.markdown-custom-message h5,.markdown-custom-message h6{margin:4px 0 2px;line-height:1.18}.markdown-custom-message ol,.markdown-custom-message ul{margin:2px 0 3px}.markdown-custom-message li{margin:0}.markdown-custom-message blockquote{margin:3px 0;padding:4px 8px}.markdown-custom-message .markdown-code-block,.markdown-custom-message .markdown-table-wrap{margin:4px 0}.markdown-compaction-message{line-height:1.5}.markdown-compaction-message p{margin:0 0 7px}.markdown-compaction-message h1,.markdown-compaction-message h2,.markdown-compaction-message h3,.markdown-compaction-message h4,.markdown-compaction-message h5,.markdown-compaction-message h6{margin:8px 0 3px;line-height:1.25}.markdown-compaction-message ol,.markdown-compaction-message ul{margin:4px 0 8px}.markdown-compaction-message li{margin:2px 0}.markdown-compaction-message .markdown-code-block,.markdown-compaction-message .markdown-table-wrap{margin:6px 0}.compaction-file-details{border-top:1px solid var(--border);color:var(--text-muted);margin-top:10px;padding-top:8px;font-size:12px}.compaction-file-details summary{cursor:pointer;font-weight:600;line-height:1.4}.compaction-file-section{margin-top:8px}.compaction-file-title{color:var(--text);margin-bottom:4px;font-size:11px;font-weight:650}.compaction-file-list{overscroll-behavior:auto;touch-action:auto;border:1px solid var(--border);background:var(--bg-panel);max-height:180px;font-family:var(--font-mono);border-radius:6px;margin:0;padding:7px 8px;font-size:11px;line-height:1.45;list-style:none;overflow:auto}.compaction-file-list li{overflow-wrap:anywhere}.compaction-file-list li+li{margin-top:3px}.markdown-code-block{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--code-bg);box-shadow:none;margin:6px 0;position:relative;overflow:hidden}.markdown-code-body{overscroll-behavior:auto;touch-action:auto;max-height:min(320px,45vh);overflow:auto}@media (max-width:640px){.markdown-code-body{max-height:min(240px,32vh)}}.markdown-code-header{background:var(--bg-panel);padding:5px 10px}@supports (color:color-mix(in lab,red,red)){.markdown-code-header{background:color-mix(in srgb,var(--bg-panel) 88%,var(--code-bg))}}.markdown-code-header{border-bottom:1px solid var(--border);color:var(--text-dim);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.markdown-code-lang{color:var(--text-muted);font-family:var(--font-mono);font-weight:650}.markdown-code-actions{align-items:center;gap:6px;display:flex}.markdown-code-action{border:1px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;font:inherit;border-radius:5px;padding:2px 7px;font-size:11px;line-height:1.25}.markdown-code-action:hover:not(:disabled){color:var(--text);border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.markdown-code-action:hover:not(:disabled){border-color:color-mix(in srgb,var(--border) 70%,var(--text-muted))}}.markdown-code-action:disabled{color:var(--text-dim);cursor:not-allowed;opacity:var(--disabled-opacity)}.chat-input-shell:focus-within{border-color:var(--focus)!important;box-shadow:var(--shadow-input),0 0 0 3px var(--focus-ring)!important}@supports (color:color-mix(in lab,red,red)){.chat-input-shell:focus-within{box-shadow:var(--shadow-input),0 0 0 3px color-mix(in srgb,var(--focus-ring) 72%,transparent)!important}}.markdown-code-action.is-active{background:var(--bg-selected);color:var(--text)}.mermaid-block{background:var(--bg);padding:12px;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.mermaid-block{background:color-mix(in srgb,var(--bg) 92%,var(--bg-panel))}}.mermaid-block svg{max-width:none;display:block}.mermaid-block-loading{min-height:120px}.mermaid-block-error{color:var(--text-muted);font-family:var(--font-mono);font-size:12px}.file-viewer-toolbar{min-height:35px}.file-viewer-path{flex:auto;min-width:48px}.file-viewer-meta{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.file-viewer-controls{gap:6px}.file-viewer-action-slot{flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.file-viewer-mode-switch{border:1px solid var(--border);border-radius:5px;height:24px;display:flex;overflow:hidden}.file-viewer-mode-button{border:0;border-left:1px solid var(--border);height:22px;font:inherit;letter-spacing:0;cursor:pointer;white-space:nowrap;padding:0 8px;font-size:11px;font-weight:500}.file-viewer-mode-button:first-child{border-left:0}.file-viewer-mode-button:hover{filter:brightness(1.08)}.file-viewer-icon-button{box-sizing:border-box;border:1px solid var(--border);width:24px;height:24px;flex:0 0 24px}.file-viewer-icon-button:hover{color:var(--text);background:var(--bg-hover)!important}.file-viewer-icon-button:focus-visible,.file-viewer-mode-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (max-width:640px){.file-viewer-meta{display:none}}@media (max-width:380px){.file-viewer-toolbar{gap:6px!important;padding-inline:8px!important}.file-viewer-mode-button{padding-inline:6px}}.markdown-file-preview h1{font-size:1.8em}.markdown-file-preview h2{font-size:1.4em}.markdown-file-preview h3{font-size:1.15em}.markdown-file-preview p{margin:0 0 12px}.markdown-file-preview pre{border:1px solid var(--border);border-radius:6px;margin:12px 0;padding:12px 16px;font-size:13px;overflow-x:auto}.markdown-file-preview code,.markdown-file-preview pre{background:var(--bg-panel);font-family:var(--font-mono)}.markdown-file-preview code{border-radius:3px;padding:1px 5px;font-size:.9em}.markdown-file-preview pre code{background:0 0;padding:0}.markdown-body span.linenumber,span.linenumber{color:var(--text-dim)!important;font-style:normal!important}@keyframes drop-zone-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes drop-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes drop-ring-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes drop-ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(1)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes sidebar-running-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@keyframes notice-shelf-in{0%{opacity:0;transform:translateY(-6px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes notice-shelf-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-5px)scale(.995)}}@media (prefers-reduced-motion:reduce){.notice-shelf-item{animation-duration:.001ms!important}}.chat-jump-bottom{z-index:45;border:1px solid var(--border);background:var(--bg-panel);width:32px;height:32px;color:var(--text-muted);cursor:pointer;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .15s,transform .15s,background-color .15s,color .15s;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)translateY(6px)scale(.92);box-shadow:0 1px 2px #0f172a0f,0 8px 24px -12px #0f172a2e}.chat-jump-bottom.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)scale(1)}.chat-jump-bottom:hover{background:var(--bg-hover);color:var(--text)}@media (prefers-reduced-motion:reduce){.chat-jump-bottom,.chat-jump-bottom.is-visible{transition:opacity .001ms;transform:translate(-50%)}}@keyframes saved-pop{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--status-success) 55%,transparent);transform:scale(1)}40%{box-shadow:0 0 0 6px color-mix(in srgb,var(--status-success) 25%,transparent);transform:scale(1.08)}to{transform:scale(1);box-shadow:0 0 #0000}}@keyframes saved-check-draw{0%{stroke-dashoffset:18px;opacity:0}to{stroke-dashoffset:0;opacity:1}}@media (min-width:641px){.sidebar-overlay-backdrop{display:none!important}.sidebar-container{transition:width .2s,min-width .2s;position:relative;overflow:hidden}.sidebar-container.sidebar-dragging{transition:none}.sidebar-container.sidebar-open{width:var(--sidebar-width,260px);min-width:var(--sidebar-width,260px)}.sidebar-container.sidebar-closed{width:0;min-width:0;border-right:none!important}.sidebar-inner{width:var(--sidebar-width,260px);min-width:var(--sidebar-width,260px)}}.sidebar-inner{flex-direction:column;flex:auto;min-width:0;height:100%;min-height:0;display:flex}.sidebar-resize-handle{cursor:col-resize;z-index:10;touch-action:none;width:5px;position:absolute;top:0;bottom:0;right:0}.sidebar-resize-handle.dragging,.sidebar-resize-handle:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.sidebar-resize-handle.dragging,.sidebar-resize-handle:hover{background:color-mix(in srgb,var(--accent) 35%,transparent)}}.sidebar-resize-handle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (max-width:640px){.sidebar-resize-handle{display:none}}.sidebar-pagination-btn{height:22px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:0 8px;font-size:11px;transition:background .12s,color .12s;display:inline-flex}.sidebar-pagination-btn:hover{background:var(--bg-hover);color:var(--text)}.sidebar-pagination-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (min-width:641px){.workspace-container{flex-shrink:0;transition:width .2s,min-width .2s;overflow:hidden}.workspace-container.workspace-dragging{transition:none}.workspace-container.workspace-closed{border-left:none!important}}@media (max-width:640px){.chat-stats-center{display:none!important}.sidebar-container{width:280px;max-width:85vw;transition:transform .25s,box-shadow .25s;top:0;bottom:0;left:0;position:fixed!important}.sidebar-container.sidebar-open{transform:translate(0);box-shadow:4px 0 20px #00000026}.sidebar-container.sidebar-closed{box-shadow:none;transform:translate(-100%)}.workspace-container{transition:transform .25s,box-shadow .25s;top:0;bottom:0;right:0;width:100%!important;min-width:0!important;position:fixed!important}.workspace-container.workspace-open{transform:translate(0);box-shadow:-4px 0 20px #00000026}.workspace-container.workspace-closed{box-shadow:none;transform:translate(100%);border-left:none!important}.workspace-container>.workspace-inner{width:100%!important;min-width:0!important}}.sidebar-icon-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.sidebar-icon-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.sidebar-icon-btn:active:not(:disabled){background:var(--bg-selected)}.sidebar-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sidebar-icon-btn:disabled{color:var(--text-dim)}@media (hover:hover) and (pointer:fine){.sidebar-indent-indicator{opacity:0;pointer-events:none}.sidebar-row:focus-within>.sidebar-indent-indicator,.sidebar-row:hover>.sidebar-indent-indicator{opacity:1;pointer-events:auto}.sidebar-row:focus-within .sidebar-indicator-icon,.sidebar-row:hover .sidebar-indicator-icon{opacity:0;pointer-events:none}}@media (hover:none),(pointer:coarse){.sidebar-indent-indicator{opacity:1;pointer-events:auto}.sidebar-indicator-icon{opacity:0;pointer-events:none}}.sidebar-chevron-always{opacity:1;pointer-events:auto}.sidebar-indicator-icon{transition:opacity .12s}.extension-panel-overlay{z-index:95;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--overlay);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.extension-panel-inline{background:var(--bg);flex-shrink:0;justify-content:center;display:flex}.extension-panel-shell{border:1px solid var(--accent);flex-direction:column;max-height:min(52vh,560px);display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.extension-panel-shell{border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}}.extension-panel-shell{background:var(--bg-panel);box-shadow:0 16px 40px var(--text);border-radius:12px}@supports (color:color-mix(in lab,red,red)){.extension-panel-shell{box-shadow:0 16px 40px color-mix(in srgb,var(--text) 12%,transparent)}}.extension-panel-shell{font-family:inherit}.extension-panel-shell--overlay{max-height:min(760px,calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.extension-panel-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:44px;padding:8px 12px 8px 14px;display:flex}.extension-panel-title{min-width:0;color:var(--text);flex:1;font-size:14px;font-weight:650;line-height:1.4}.extension-panel-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.extension-panel-body{overscroll-behavior:auto;touch-action:auto;min-height:0;color:var(--text);-webkit-user-select:text;user-select:text;flex:auto;padding:12px 14px;font-size:14px;line-height:1.55;overflow-y:auto}.extension-panel-footer{border-top:1px solid var(--border);background:var(--bg-subtle);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.extension-panel-hint,.extension-panel-status{color:var(--text-dim);margin-left:auto;font-size:12px;line-height:1.4}.extension-panel-copy{color:var(--text-muted);overflow-wrap:anywhere;font-size:14px;line-height:1.55}.extension-panel-editor{border:1px solid var(--border);background:var(--bg);width:100%;min-height:120px;max-height:320px;resize:vertical;box-sizing:border-box;border-radius:8px;outline:none;padding:10px 12px;line-height:1.55;display:block;overflow-y:auto}.extension-panel-ansi,.extension-panel-editor{color:var(--text);font-family:var(--font-mono);font-size:13px}.extension-panel-ansi{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;margin:0;line-height:1.5}.extension-panel-keytrap{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute}.extension-option-list{flex-direction:column;gap:8px;display:flex}.extension-option-btn{border:1px solid var(--border);background:var(--bg);width:100%;min-height:40px;color:var(--text);font:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere;cursor:pointer;border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.45;overflow:hidden}.extension-option-btn:hover:not(:disabled){background:var(--bg-hover)}.extension-option-btn:disabled{color:var(--text-dim);cursor:not-allowed}@media (max-width:640px){.extension-panel-shell{max-height:min(70vh,calc(100dvh - 24px - env(safe-area-inset-bottom)))}.extension-card-btn,.extension-option-btn{min-height:44px}}.extension-card-btn{border:1px solid var(--border);background:var(--bg);min-height:36px;color:var(--text-muted);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.extension-card-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.extension-card-btn:disabled{cursor:not-allowed;opacity:.55}.extension-card-btn--primary{background:var(--accent);color:var(--accent-foreground);border-color:#0000}.extension-card-btn--primary:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground);filter:brightness(1.06)}.guide-selectors{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:10px;display:flex}.guide-selector{background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;height:28px;padding:0 6px;transition:background .12s,border-color .12s;display:inline-flex}.guide-selector:hover{background:var(--bg-hover)}.guide-selector:focus-within{background:var(--bg-hover);border-color:var(--accent)}.guide-selector-icon{color:var(--text-dim);flex-shrink:0}.guide-select{width:160px;min-width:0;max-width:160px;color:var(--text);font:inherit;cursor:pointer;text-overflow:ellipsis;background:0 0;border:none;outline:none;font-size:12.5px}.guide-select:disabled{color:var(--text-dim);cursor:default}.guide-new-worktree-btn{width:18px;height:18px;color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.guide-new-worktree-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.guide-new-worktree-btn:disabled{cursor:default;opacity:.5}.guide-worktree-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.guide-worktree-input{border:1px solid var(--border);background:var(--bg-panel);min-width:160px;max-width:260px;height:28px;color:var(--text);font:inherit;border-radius:6px;outline:none;padding:0 8px;font-size:12.5px}.guide-worktree-input:focus{border-color:var(--accent)}.guide-worktree-error{color:var(--danger,#e5484d);font-size:11px}@media (max-width:640px){.guide-selectors{flex-wrap:nowrap}.guide-selector{flex:1;min-width:0}.guide-select{width:100%;max-width:none}.guide-new-worktree-btn{flex-shrink:0}}.sidebar-icon-btn--active,.sidebar-icon-btn--active:hover:not(:disabled){background:var(--bg-selected);color:var(--accent)}.sidebar-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-bg);color:var(--status-danger)}.sidebar-icon-btn--done,.sidebar-icon-btn--done:hover:not(:disabled){background:var(--status-success)}@supports (color:color-mix(in lab,red,red)){.sidebar-icon-btn--done,.sidebar-icon-btn--done:hover:not(:disabled){background:color-mix(in srgb,var(--status-success) 18%,transparent)}}.sidebar-icon-btn--done,.sidebar-icon-btn--done:hover:not(:disabled){color:var(--status-success)}.sidebar-row .sidebar-icon-btn--hover{opacity:0}.sidebar-row .sidebar-icon-btn--hover:focus-visible,.sidebar-row:focus-within .sidebar-icon-btn--hover,.sidebar-row:hover .sidebar-icon-btn--hover{opacity:1}@media (max-width:640px){.sidebar-toolbar{gap:12px!important}}.settings-layout{height:min(72dvh,660px);min-height:0;display:flex}.settings-nav-list{flex-direction:column;gap:2px;padding:10px 8px;display:flex}.settings-nav-item{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;font-size:13px;font-weight:400;transition:background .12s,color .12s;display:flex;position:relative}.settings-nav-item:hover{background:var(--bg-hover);color:var(--text)}.settings-nav-item.is-active{background:var(--bg-selected);color:var(--text);font-weight:600}.settings-nav-item.is-active:before{border-radius:var(--radius-pill);background:var(--accent);content:"";width:2px;position:absolute;top:7px;bottom:7px;left:3px}.settings-content-pane,.settings-scroll-region{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.settings-content-pane{background:var(--bg);overflow:hidden}.settings-scroll-region{scrollbar-gutter:stable;overflow-y:auto}.settings-page-content{width:min(100%,700px);padding:24px 28px 32px}.settings-choice{margin-bottom:26px}.settings-segmented-control{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-panel);width:fit-content;max-width:100%;box-shadow:var(--shadow-input);gap:2px;padding:3px;display:flex}.settings-segmented-option{border-radius:var(--radius-sm);min-width:96px;height:32px;color:var(--text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0 14px;font-size:12.5px;transition:background .12s,color .12s,box-shadow .12s}.settings-segmented-option:hover{color:var(--text)}.settings-segmented-option.is-active{background:var(--bg-elevated);color:var(--text);box-shadow:0 1px 3px var(--text)}@supports (color:color-mix(in lab,red,red)){.settings-segmented-option.is-active{box-shadow:0 1px 3px color-mix(in srgb,var(--text) 12%,transparent)}}.settings-segmented-option.is-active{font-weight:600}.settings-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;padding:32px 24px;display:flex}.app-top-bar{border-bottom:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;align-items:center;height:36px;display:flex}.session-lineage{margin-left:6px;font-size:12px}.session-lineage,.session-lineage-crumbs{align-items:center;gap:2px;min-width:0;display:flex}.session-lineage-crumbs{overflow:hidden}.session-lineage-gap,.session-lineage-sep{color:var(--text-dim);flex-shrink:0}.session-lineage-crumb,.session-lineage-current{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:180px;padding:0 2px;overflow:hidden}.session-lineage-crumb{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none}.session-lineage-crumb:hover{color:var(--text)}.session-lineage-crumb:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-current{color:var(--text);align-items:center;gap:4px;display:inline-flex}.session-lineage-trigger{height:24px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.session-lineage-trigger:hover,.session-lineage-trigger[aria-expanded=true]{background:var(--bg-selected);color:var(--text)}.session-lineage-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-trigger-label{white-space:nowrap}.session-lineage-trigger-running{white-space:nowrap;color:var(--status-warning)}.session-lineage-title{min-width:0;max-width:260px;height:24px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.session-lineage-title:hover,.session-lineage-title[aria-expanded=true]{background:var(--bg-selected)}.session-lineage-title:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-title .session-lineage-trigger-label{text-overflow:ellipsis;overflow:hidden}.session-lineage-dot{background:var(--status-success);border-radius:50%;flex-shrink:0;width:6px;height:6px}.session-lineage-panel{padding:4px 0}.session-lineage-note{color:var(--status-warning);padding:2px 10px 6px;font-size:11px}.session-lineage-row{height:28px;color:var(--text-muted);cursor:pointer;outline:none;align-items:center;gap:6px;padding-right:10px;display:flex}.session-lineage-row:hover{background:var(--bg-selected);color:var(--text)}.session-lineage-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-row.is-current{color:var(--text)}.session-lineage-row.needs-attention{color:var(--status-warning)}.session-lineage-row-toggle{width:14px;height:14px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.session-lineage-row-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.session-lineage-row-tag{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;flex-shrink:0;padding:0 5px;font-size:10px}.session-lineage-row-attention{color:var(--status-warning);flex-shrink:0;font-size:11px}.session-lineage-row-meta{color:var(--text-dim);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;font-size:11px}.workspace-header{border-bottom:1px solid var(--border);align-items:center;gap:4px;height:40px;padding:0 8px 0 12px}.changes-panel,.workspace-header{background:var(--bg-panel);flex-shrink:0;display:flex}.changes-panel{border-left:1px solid var(--border);flex-direction:column;align-self:stretch;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.changes-panel>.changes-panel{border-left:none;flex:auto;height:100%;min-height:0;width:100%!important;min-width:0!important}.changes-panel-content{flex:1;grid-template-rows:minmax(120px,36%) minmax(0,1fr);min-height:0;display:grid}.changes-panel-diff,.changes-panel-list{min-height:0;overflow:auto}.changes-panel-list{border-bottom:1px solid var(--border)}.changes-panel-hint{color:var(--text-dim);padding:18px 14px;font-size:11.5px;line-height:1.5}.changes-panel-hint.is-error{color:var(--status-danger)}.changes-panel-resize-handle{z-index:10;cursor:col-resize;touch-action:none;width:6px;position:absolute;top:0;bottom:0;left:-3px}.changes-panel-resize-handle.dragging,.changes-panel-resize-handle:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.changes-panel-resize-handle.dragging,.changes-panel-resize-handle:hover{background:color-mix(in srgb,var(--accent) 35%,transparent)}}.secondary-panel-inner{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.secondary-panel-tabs{flex:none;min-width:0;min-height:0}.secondary-panel-body{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.workspace-navigation-rail{border-left:1px solid var(--border);background:var(--bg);flex-direction:column;align-items:center;gap:4px;padding:8px 0;display:flex}.workspace-resize-handle{cursor:col-resize;z-index:10;touch-action:none;width:5px;position:absolute;top:0;bottom:0;left:0}.workspace-resize-handle.dragging,.workspace-resize-handle:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.workspace-resize-handle.dragging,.workspace-resize-handle:hover{background:color-mix(in srgb,var(--accent) 35%,transparent)}}@media (max-width:640px){.workspace-resize-handle{display:none}}.file-row-actions{background:var(--bg-panel);border:1px solid var(--border);opacity:0;visibility:hidden;border-radius:6px;align-items:center;gap:2px;padding:1px;transition:opacity .12s,visibility .12s;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.file-row{border-radius:var(--radius-xs);transition:background .12s}.file-row:focus-within,.file-row:hover{background:var(--bg-hover)}.file-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.file-row-actions:has([data-menu-open=true]),.file-row:focus-within .file-row-actions,.file-row:hover .file-row-actions{opacity:1;visibility:visible}.file-row-action-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:background .12s,color .12s;display:inline-flex}.file-row-action-btn:hover{background:var(--bg-hover);color:var(--text)}.file-row-action-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (pointer:coarse){.file-row-actions{opacity:1;visibility:visible}.file-row .file-row-badge{display:none}}.git-file-row{cursor:pointer;width:100%;height:26px;color:var(--text);text-align:left;border-radius:var(--radius-xs);background:0 0;border:none;align-items:center;gap:6px;padding:0 8px;font-size:12px;transition:background .12s,color .12s;display:flex}.git-file-row:hover{background:var(--bg-hover)}.git-file-row.is-selected{background:var(--bg-selected);color:var(--text)}@media (max-width:640px){.changes-panel{display:none!important}}.git-file-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (hover:none),(pointer:coarse){.sidebar-row .sidebar-icon-btn--hover{opacity:1}.sidebar-icon-btn{width:28px;height:28px;position:relative}.sidebar-icon-btn:after{content:"";position:absolute;inset:-4px -2px}}@media (max-width:640px){.app-top-bar{height:44px}.app-top-bar>button:not(.app-top-bar-stats){width:44px!important;height:44px!important}.app-top-bar-stats{min-width:0;max-width:min(48vw,168px);overflow:hidden;gap:4px!important;height:44px!important;padding:0 8px!important}.app-top-bar-stats>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.session-lineage{margin-left:4px}.session-lineage-crumbs{max-width:28vw}.session-lineage-crumb,.session-lineage-current{max-width:84px}.session-lineage-title{max-width:42vw}.session-lineage-trigger-running{display:none}.session-lineage-row{height:34px}.workspace-header{height:44px;padding-right:6px}.workspace-header .sidebar-icon-btn,.workspace-navigation-rail .sidebar-icon-btn{width:36px;height:36px}.workspace-navigation-rail{gap:8px;padding-top:8px}.settings-layout{height:min(78dvh,680px)}.settings-nav-list{padding:10px}.settings-page-content{padding:20px 16px 28px}.settings-segmented-control{width:100%;overflow-x:auto}.settings-segmented-option{flex:1 0 auto;min-width:0;height:40px}.chat-input-shell{padding:9px 8px 9px 12px!important}.chat-input-shell button{min-height:40px}.file-row{min-height:44px}.file-row>svg{width:12px;height:12px}.file-row-icon svg{width:18px;height:18px}.file-row-action-btn{width:32px;height:32px}}.sidebar-row .sidebar-icon-btn--hover.sidebar-icon-btn--active{opacity:1}@media (hover:none),(pointer:coarse){.sidebar-chevron-btn:after{content:"";position:absolute;inset:-5px -3px}}.file-viewer-toolbar{min-width:0}.file-viewer-path{text-overflow:ellipsis;white-space:nowrap;min-width:72px;overflow:hidden}.file-viewer-meta{white-space:nowrap;flex-shrink:0}.file-viewer-controls{flex-shrink:0;align-items:center;gap:3px;margin-left:auto;display:flex}.file-viewer-icon-button{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:color .12s,background .12s,border-color .12s;display:inline-flex}.file-viewer-icon-button:hover:not(:disabled),.file-viewer-icon-button[data-active=true]{color:var(--text);background:var(--bg-selected);border-color:var(--border)}.file-viewer-icon-button.is-save:not(:disabled){color:var(--accent)}.file-close-confirm__button:focus-visible,.file-editor-notice button:focus-visible,.file-viewer-icon-button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.file-viewer-icon-button:disabled{opacity:.34;cursor:not-allowed}.file-viewer-toolbar-separator{background:var(--border);flex:none;width:1px;height:16px;margin:0 2px}.file-viewer-live-indicator{border-radius:50%;flex:none;width:6px;height:6px}.file-source-editor{box-sizing:border-box;resize:none;background:var(--bg);width:100%;min-width:max-content;height:100%;min-height:0;color:var(--text);caret-color:var(--accent);font-family:var(--font-mono);tab-size:2;white-space:pre;border:0;outline:0;flex:auto;margin:0;padding:14px 18px;font-size:13px;line-height:1.6;display:block;overflow:auto}.file-source-editor.is-wrapped{white-space:pre-wrap;overflow-wrap:anywhere;min-width:100%}.file-close-confirm,.file-editor-notice{border-bottom:1px solid var(--border);background:var(--accent);align-items:center;gap:10px;min-height:34px;padding:5px 10px 5px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.file-close-confirm,.file-editor-notice{background:color-mix(in srgb,var(--accent) 7%,var(--bg-panel))}}.file-close-confirm,.file-editor-notice{color:var(--text-muted);flex:none;font-size:11.5px}.file-editor-notice.is-warning{background:var(--status-warning)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-warning{background:color-mix(in srgb,var(--status-warning) 10%,var(--bg-panel))}}.file-editor-notice.is-warning{color:var(--status-warning)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-warning{color:color-mix(in srgb,var(--status-warning) 72%,var(--text))}}.file-editor-notice.is-error{background:var(--status-danger)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-error{background:color-mix(in srgb,var(--status-danger) 9%,var(--bg-panel))}}.file-editor-notice.is-error{color:var(--status-danger)}.file-editor-notice.is-success{background:var(--status-success)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-success{background:color-mix(in srgb,var(--status-success) 8%,var(--bg-panel))}}.file-editor-notice.is-success{color:var(--status-success)}.file-editor-notice__actions{align-items:center;gap:5px;margin-left:auto;display:flex}.file-close-confirm__button,.file-editor-notice button{border:1px solid var(--border);background:var(--bg);min-height:24px;color:var(--text-muted);font:inherit;cursor:pointer;white-space:nowrap;border-radius:5px;padding:2px 8px}.file-close-confirm__button:hover,.file-editor-notice button:hover{color:var(--text);background:var(--bg-hover)}.file-close-confirm__button.is-danger,.file-editor-notice button.is-danger{color:var(--status-danger);border-color:var(--status-danger)}@supports (color:color-mix(in lab,red,red)){.file-close-confirm__button.is-danger,.file-editor-notice button.is-danger{border-color:color-mix(in srgb,var(--status-danger) 35%,var(--border))}}.file-close-confirm{background:var(--status-warning);min-height:36px}@supports (color:color-mix(in lab,red,red)){.file-close-confirm{background:color-mix(in srgb,var(--status-warning) 7%,var(--bg-panel))}}.file-close-confirm__message{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:auto;overflow:hidden}.file-close-confirm__button{align-items:center;gap:5px;display:inline-flex}.file-tab-dirty-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--accent);border-radius:50%}@supports (color:color-mix(in lab,red,red)){.file-tab-dirty-dot{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}}.file-save-spinner,.file-tab-dirty-dot.is-saving{animation:file-editor-pulse .9s ease-in-out infinite alternate}.file-save-spinner{border:2px solid var(--accent);width:11px;height:11px}@supports (color:color-mix(in lab,red,red)){.file-save-spinner{border:2px solid color-mix(in srgb,var(--accent) 28%,transparent)}}.file-save-spinner{border-top-color:var(--accent);border-radius:50%;animation-name:file-editor-spin;animation-duration:.65s;animation-timing-function:linear;animation-iteration-count:infinite}.file-viewer-context-label{z-index:2;border-bottom:1px solid var(--border);background:var(--bg-panel);color:var(--text-dim);padding:5px 12px;font-size:10.5px;position:sticky;top:0}@keyframes file-editor-spin{to{transform:rotate(1turn)}}@keyframes file-editor-pulse{to{opacity:.45}}@media (max-width:640px){.file-viewer-toolbar{gap:6px!important;padding-left:8px!important;padding-right:0!important}.file-viewer-meta{display:none}.file-viewer-controls{scrollbar-width:none;max-width:68vw;padding-right:8px;overflow-x:auto}.file-viewer-controls::-webkit-scrollbar{display:none}.file-close-confirm,.file-editor-notice{flex-wrap:wrap;align-items:flex-start}.file-editor-notice__actions{width:100%;margin-left:0}.file-close-confirm__message{flex-basis:100%;width:100%}.file-close-confirm__button span{display:none}.file-close-confirm__button{justify-content:center;width:28px;padding:0}.file-source-editor{padding:12px}}@media (prefers-reduced-motion:reduce){.file-save-spinner,.file-tab-dirty-dot.is-saving{animation:none}}.pidance-terminal-surface{background:var(--bg)}.pidance-terminal-xterm{min-width:0;min-height:0}.pidance-terminal-xterm .xterm{height:100%}.pidance-terminal-xterm .xterm-viewport{background:0 0!important}.pidance-terminal-xterm .xterm-screen{background:0 0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
|
|
1
|
+
/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-text-muted:var(--text-muted);--color-status-running:var(--status-running)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.z-50{z-index:50}.row-0{grid-row:0}.row-399{grid-row:399}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.h-1{height:calc(var(--spacing) * 1)}.h-\[720px\]{height:720px}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.w-\[720px\]{width:720px}.w-full{width:100%}.max-w-\[760px\]{max-width:760px}.flex-1{flex:1}.\!shrink{flex-shrink:1!important}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[drop-ripple_2\.4s_ease-out_infinite_backwards\]{animation:drop-ripple 2.4s ease-out infinite backwards}.animate-\[drop-zone-in_0\.15s_ease_both\]{animation:drop-zone-in .15s both}.animate-\[pulse_1\.5s_ease-in-out_infinite\]{animation:pulse 1.5s ease-in-out infinite}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-solid{--tw-border-style:solid;border-style:solid}.border-\[color-mix\(in_srgb\,var\(--accent\)_50\%\,transparent\)\]{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-\[color-mix\(in_srgb\,var\(--accent\)_50\%\,transparent\)\]{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--accent\)_6\%\,transparent\)\]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-\[color-mix\(in_srgb\,var\(--accent\)_6\%\,transparent\)\]{background-color:color-mix(in srgb,var(--accent) 6%,transparent)}}.bg-status-running{background-color:var(--color-status-running)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[13px\]{font-size:13px}.break-all{word-break:break-all}.text-\[var\(--error-text\)\]{color:var(--error-text)}.text-text-muted{color:var(--color-text-muted)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal}.ordinal,.tabular-nums{font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\[1px\]{--tw-backdrop-blur:blur(1px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[pidance\:err\]{pidance:err}.\[scrollbar-width\:none\]{scrollbar-width:none}@media (min-width:520px){.min-\[520px\]\:flex{display:flex}}@media (min-width:40rem){.sm\:inline{display:inline}}}:root{color-scheme:light;--bg:#fdfcfa;--bg-panel:#f7f6f4;--bg-elevated:#fff;--bg-hover:#0000000d;--bg-selected:#b350172b;--bg-subtle:#f4f3f1;--border:#e5e1de;--border-strong:#cbc7c2;--text:#393a34;--text-muted:#5c5c54;--text-dim:#797970;--accent:#b35017;--accent-hover:#9a4310;--accent-foreground:#fff;--user-bg:#f7f2ee;--assistant-bg:#fdfcfa;--tool-bg:#efeeec80;--code-bg:#f4f3f1;--status-running:#b35017;--status-waiting:#c99700;--status-unread:#2d72c4;--status-success:#5f8d3d;--status-warning:#8d6c15;--status-danger:#b7493f;--status-success-bg:#5f8d3d14;--status-success-border:#5f8d3d59;--status-success-foreground:#fff;--status-warning-bg:#8d6c1514;--status-warning-border:#8d6c1566;--status-danger-bg:#b7493f12;--status-danger-border:#b7493f66;--error-text:#a43d35;--diff-added-text:#47752b;--diff-added-bg:#5f8d3d17;--diff-added-border:#5f8d3d99;--diff-removed-text:#a43d35;--diff-removed-bg:#b7493f17;--diff-removed-border:#b7493f99;--diff-hunk-bg:#2d72c41f;--live-indicator-glow:0 0 6px #5f8d3d99;--warning:var(--status-warning);--danger:var(--status-danger);--success:var(--status-success);--focus:#b35017;--focus-ring:#b3501755;--overlay:#39393420;--disabled-opacity:.48;--shadow-float:0 18px 50px #39393424;--shadow-input:0 1px 2px #39393412,0 0 0 1px #ffffff80 inset;--radius-xs:4px;--radius-sm:6px;--radius-md:9px;--radius-lg:13px;--radius-pill:999px}html.dark{color-scheme:dark;--bg:#120f0e;--bg-panel:#171615;--bg-elevated:#1c1a18;--bg-hover:#ffffff12;--bg-selected:#b9a5992b;--bg-subtle:#171616;--border:#242323;--border-strong:#504e4c;--text:#c9c5ba;--text-muted:#8f8b81;--text-dim:#77736b;--accent:#da7c47;--accent-hover:#eb8c57;--accent-foreground:#120f0e;--user-bg:#25170e;--assistant-bg:#120f0e;--tool-bg:#120f0e80;--code-bg:#0e0c0b;--status-running:#da7c47;--status-waiting:#eab308;--status-unread:#479fe6;--status-success:#76ad4f;--status-warning:#c67f13;--status-danger:#da5b4a;--status-success-bg:#76ad4f1f;--status-success-border:#76ad4f70;--status-success-foreground:#120f0e;--status-warning-bg:#c67f131f;--status-warning-border:#c67f1370;--status-danger-bg:#da5b4a1f;--status-danger-border:#da5b4a7a;--error-text:#ed7665;--diff-added-text:#8bc766;--diff-added-bg:#76ad4f1f;--diff-added-border:#76ad4fb3;--diff-removed-text:#ed7665;--diff-removed-bg:#da5b4a24;--diff-removed-border:#da5b4ab3;--diff-hunk-bg:#479fe624;--live-indicator-glow:0 0 6px #76ad4fb3;--warning:var(--status-warning);--danger:var(--status-danger);--success:var(--status-success);--focus:#da7c47;--focus-ring:#da7c4755;--overlay:#0009;--disabled-opacity:.48;--shadow-float:0 20px 60px #00000070;--shadow-input:0 1px 2px #00000040,0 0 0 1px #ffffff08 inset}html[data-theme-style=fusion]{--bg:#fbfcfd;--bg-panel:#f3f6f7;--bg-elevated:#fff;--bg-hover:#163b4d0a;--bg-selected:#2e6f9520;--bg-subtle:#eef2f3;--border:#dce4e6;--border-strong:#bdcbd0;--text:#263439;--text-muted:#607077;--text-dim:#819096;--accent:#286e98;--accent-hover:#1e5c82;--accent-foreground:#fff;--user-bg:#eaf2f7;--assistant-bg:#fbfcfd;--tool-bg:#f0f5f4;--code-bg:#172126;--status-running:#27836e;--status-waiting:#cf9f1d;--status-unread:#286e98;--status-success:#49805d;--status-warning:#9a6a1a;--status-danger:#b34f58;--status-success-bg:#49805d14;--status-success-border:#49805d59;--status-success-foreground:#fff;--status-warning-bg:#9a6a1a14;--status-warning-border:#9a6a1a66;--status-danger-bg:#b34f5812;--status-danger-border:#b34f5866;--error-text:#a23f49;--diff-added-text:#39704d;--diff-added-bg:#49805d17;--diff-added-border:#49805d99;--diff-removed-text:#a23f49;--diff-removed-bg:#b34f5817;--diff-removed-border:#b34f5899;--diff-hunk-bg:#286e981f;--live-indicator-glow:0 0 6px #49805d99;--focus:#286e98;--focus-ring:#286e9844;--overlay:#18343d30;--shadow-float:0 18px 48px #163b4d20;--shadow-input:0 1px 2px #163b4d12,0 0 0 1px #fff inset}html.dark[data-theme-style=fusion]{--bg:#101719;--bg-panel:#141d20;--bg-elevated:#192428;--bg-hover:#d8edf212;--bg-selected:#6ba7c426;--bg-subtle:#172124;--border:#263337;--border-strong:#46585e;--text:#ced8d8;--text-muted:#8d9c9e;--text-dim:#708084;--accent:#69a7ca;--accent-hover:#7fb8d6;--accent-foreground:#0f1719;--user-bg:#162832;--assistant-bg:#101719;--tool-bg:#121d1f;--code-bg:#0b1113;--status-running:#5eb39b;--status-waiting:#ecc94b;--status-unread:#69a7ca;--status-success:#79ad78;--status-warning:#d0a356;--status-danger:#dd777e;--status-success-bg:#79ad781f;--status-success-border:#79ad7870;--status-success-foreground:#101719;--status-warning-bg:#d0a3561f;--status-warning-border:#d0a35670;--status-danger-bg:#dd777e1f;--status-danger-border:#dd777e7a;--error-text:#ed8f95;--diff-added-text:#91c590;--diff-added-bg:#79ad781f;--diff-added-border:#79ad78b3;--diff-removed-text:#ed8f95;--diff-removed-bg:#dd777e24;--diff-removed-border:#dd777eb3;--diff-hunk-bg:#69a7ca24;--live-indicator-glow:0 0 6px #79ad78b3;--focus:#69a7ca;--focus-ring:#69a7ca55;--overlay:#0009;--shadow-float:0 20px 60px #0006;--shadow-input:0 1px 2px #0000003d,0 0 0 1px #ffffff08 inset}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}*{box-sizing:border-box}body,html{background:var(--bg);height:100%;color:var(--text);overscroll-behavior:none;margin:0;padding:0;font-family:Aptos,Segoe UI Variable,Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px}body{height:100dvh}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}:root{--font-mono:var(--font-noto-mono),"JetBrains Mono","Fira Code","Consolas",ui-monospace,"PingFang SC","Microsoft YaHei",monospace}code,pre{font-family:var(--font-mono)}.chat-selectable,.compaction-file-list,.markdown-code-block,.markdown-code-body,code,pre{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.markdown-body{color:var(--text);word-break:break-word;font-size:14px;line-height:1.72}.markdown-body.markdown-body--extension{font-size:inherit;color:inherit;line-height:1.5}.markdown-body.markdown-body--extension p{margin:0 0 4px}.markdown-body.markdown-body--extension p:last-child{margin-bottom:0}.markdown-body.markdown-body--extension h1,.markdown-body.markdown-body--extension h2,.markdown-body.markdown-body--extension h3,.markdown-body.markdown-body--extension h4,.markdown-body.markdown-body--extension h5,.markdown-body.markdown-body--extension h6{margin:0 0 4px;font-size:1em;font-weight:650;line-height:1.35}.markdown-body.markdown-body--extension ol,.markdown-body.markdown-body--extension ul{margin:2px 0 4px}.markdown-body p{margin:0 0 8px}.markdown-body p:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--text);letter-spacing:0;margin:10px 0 5px;font-weight:600;line-height:1.35}.markdown-body h1{font-size:1.16em}.markdown-body h2{font-size:1.08em}.markdown-body h3{color:var(--text);font-size:.98em}@supports (color:color-mix(in lab,red,red)){.markdown-body h3{color:color-mix(in srgb,var(--text) 88%,var(--text-muted))}}.markdown-body ol,.markdown-body ul{margin:5px 0 8px;padding-left:22px;list-style-position:outside}.markdown-body li{margin:3px 0;padding-left:2px}.markdown-body ul>li{list-style-type:disc}.markdown-body ol>li{list-style-type:decimal}.markdown-body li>p{margin:0}.markdown-body li::marker{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body li::marker{color:color-mix(in srgb,var(--accent) 72%,var(--text-muted))}}.markdown-body li::marker{font-weight:600}.markdown-body strong{color:var(--text)}@supports (color:color-mix(in lab,red,red)){.markdown-body strong{color:color-mix(in srgb,var(--text) 88%,var(--accent))}}.markdown-body strong{font-weight:700}.markdown-body em{color:var(--text-muted)}.markdown-body a{color:var(--accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body a{-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent)}}.markdown-body a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.markdown-body .markdown-inline-code{background:var(--bg-subtle);color:var(--text);font-family:var(--font-mono);box-shadow:inset 0 0 0 1px var(--border);border-radius:5px;padding:1px 5px;font-size:.92em}@supports (color:color-mix(in lab,red,red)){.markdown-body .markdown-inline-code{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 70%,transparent)}}.markdown-body .contains-task-list{padding-left:0;list-style:none}.markdown-body .task-list-item{padding-left:25px;display:block;position:relative}.markdown-body .task-list-item::marker{content:""}.markdown-body .task-list-item>input[type=checkbox],.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child{appearance:none;border:1px solid var(--border);background:var(--bg);border-radius:4px;place-content:center;width:14px;height:14px;margin:0;display:inline-grid;position:absolute;top:.35em;left:0}.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}}.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.markdown-body .task-list-item>input[type=checkbox]:checked,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked{background:color-mix(in srgb,var(--accent) 10%,var(--bg))}}.markdown-body .task-list-item>input[type=checkbox]:checked:before,.markdown-body .task-list-item>p:first-child>input[type=checkbox]:first-child:checked:before{content:"";border:solid var(--accent);border-width:0 1.5px 1.5px 0;width:4px;height:8px;transform:rotate(45deg)translateY(-1px)}.markdown-body blockquote{border-left:3px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.markdown-body blockquote{border-left:3px solid color-mix(in srgb,var(--border) 75%,var(--text-muted))}}.markdown-body blockquote{background:var(--bg-subtle);color:var(--text-muted);border-radius:0 6px 6px 0;margin:6px 0;padding:6px 11px}.markdown-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);-webkit-touch-callout:default;width:100%;margin:8px 0}.markdown-table-scroll,.markdown-table-wrap{cursor:text;-webkit-user-select:text;user-select:text}.markdown-table-scroll{overflow:visible}.markdown-table-row{border-bottom:1px solid var(--border);align-items:stretch;font-size:13px;display:grid}.markdown-table-body .markdown-table-row:last-child{border-bottom:0}.markdown-table-td,.markdown-table-th{text-align:left;cursor:text;overflow-wrap:anywhere;word-break:break-word;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;min-width:0;padding:6px 10px}.markdown-table-th{background:var(--bg-panel);color:var(--text)}@supports (color:color-mix(in lab,red,red)){.markdown-table-th{color:color-mix(in srgb,var(--text) 88%,var(--text-muted))}}.markdown-table-th{font-weight:650}.markdown-table-body .markdown-table-row:nth-child(2n) .markdown-table-td{background:var(--bg-subtle)}.markdown-body hr{background:linear-gradient(90deg,transparent,var(--border),transparent);border:none;height:1px;margin:12px 0}.markdown-body .katex-display{margin:.6em 0;padding:2px 0;overflow:auto hidden}.markdown-body .katex{font-size:1.05em}.markdown-user-message p{white-space:pre-wrap}.markdown-custom-message{line-height:1.32}.markdown-custom-message p{margin:0}.markdown-custom-message h1,.markdown-custom-message h2,.markdown-custom-message h3,.markdown-custom-message h4,.markdown-custom-message h5,.markdown-custom-message h6{margin:4px 0 2px;line-height:1.18}.markdown-custom-message ol,.markdown-custom-message ul{margin:2px 0 3px}.markdown-custom-message li{margin:0}.markdown-custom-message blockquote{margin:3px 0;padding:4px 8px}.markdown-custom-message .markdown-code-block,.markdown-custom-message .markdown-table-wrap{margin:4px 0}.markdown-compaction-message{line-height:1.5}.markdown-compaction-message p{margin:0 0 7px}.markdown-compaction-message h1,.markdown-compaction-message h2,.markdown-compaction-message h3,.markdown-compaction-message h4,.markdown-compaction-message h5,.markdown-compaction-message h6{margin:8px 0 3px;line-height:1.25}.markdown-compaction-message ol,.markdown-compaction-message ul{margin:4px 0 8px}.markdown-compaction-message li{margin:2px 0}.markdown-compaction-message .markdown-code-block,.markdown-compaction-message .markdown-table-wrap{margin:6px 0}.compaction-file-details{border-top:1px solid var(--border);color:var(--text-muted);margin-top:10px;padding-top:8px;font-size:12px}.compaction-file-details summary{cursor:pointer;font-weight:600;line-height:1.4}.compaction-file-section{margin-top:8px}.compaction-file-title{color:var(--text);margin-bottom:4px;font-size:11px;font-weight:650}.compaction-file-list{overscroll-behavior:auto;touch-action:auto;border:1px solid var(--border);background:var(--bg-panel);max-height:180px;font-family:var(--font-mono);border-radius:6px;margin:0;padding:7px 8px;font-size:11px;line-height:1.45;list-style:none;overflow:auto}.compaction-file-list li{overflow-wrap:anywhere}.compaction-file-list li+li{margin-top:3px}.markdown-code-block{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--code-bg);box-shadow:none;margin:6px 0;position:relative;overflow:hidden}.markdown-code-body{overscroll-behavior:auto;touch-action:auto;max-height:min(320px,45vh);overflow:auto}@media (max-width:640px){.markdown-code-body{max-height:min(240px,32vh)}}.markdown-code-header{background:var(--bg-panel);padding:5px 10px}@supports (color:color-mix(in lab,red,red)){.markdown-code-header{background:color-mix(in srgb,var(--bg-panel) 88%,var(--code-bg))}}.markdown-code-header{border-bottom:1px solid var(--border);color:var(--text-dim);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.markdown-code-lang{color:var(--text-muted);font-family:var(--font-mono);font-weight:650}.markdown-code-actions{align-items:center;gap:6px;display:flex}.markdown-code-action{border:1px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;font:inherit;border-radius:5px;padding:2px 7px;font-size:11px;line-height:1.25}.markdown-code-action:hover:not(:disabled){color:var(--text);border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.markdown-code-action:hover:not(:disabled){border-color:color-mix(in srgb,var(--border) 70%,var(--text-muted))}}.markdown-code-action:disabled{color:var(--text-dim);cursor:not-allowed;opacity:var(--disabled-opacity)}.chat-input-shell:focus-within{border-color:var(--focus)!important;box-shadow:var(--shadow-input),0 0 0 3px var(--focus-ring)!important}@supports (color:color-mix(in lab,red,red)){.chat-input-shell:focus-within{box-shadow:var(--shadow-input),0 0 0 3px color-mix(in srgb,var(--focus-ring) 72%,transparent)!important}}.markdown-code-action.is-active{background:var(--bg-selected);color:var(--text)}.mermaid-block{background:var(--bg);padding:12px;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.mermaid-block{background:color-mix(in srgb,var(--bg) 92%,var(--bg-panel))}}.mermaid-block svg{max-width:none;display:block}.mermaid-block-loading{min-height:120px}.mermaid-block-error{color:var(--text-muted);font-family:var(--font-mono);font-size:12px}.file-viewer-toolbar{min-height:35px}.file-viewer-path{flex:auto;min-width:48px}.file-viewer-meta{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.file-viewer-controls{gap:6px}.file-viewer-action-slot{flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.file-viewer-mode-switch{border:1px solid var(--border);border-radius:5px;height:24px;display:flex;overflow:hidden}.file-viewer-mode-button{border:0;border-left:1px solid var(--border);height:22px;font:inherit;letter-spacing:0;cursor:pointer;white-space:nowrap;padding:0 8px;font-size:11px;font-weight:500}.file-viewer-mode-button:first-child{border-left:0}.file-viewer-mode-button:hover{filter:brightness(1.08)}.file-viewer-icon-button{box-sizing:border-box;border:1px solid var(--border);width:24px;height:24px;flex:0 0 24px}.file-viewer-icon-button:hover{color:var(--text);background:var(--bg-hover)!important}.file-viewer-icon-button:focus-visible,.file-viewer-mode-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (max-width:640px){.file-viewer-meta{display:none}}@media (max-width:380px){.file-viewer-toolbar{gap:6px!important;padding-inline:8px!important}.file-viewer-mode-button{padding-inline:6px}}.markdown-file-preview h1{font-size:1.8em}.markdown-file-preview h2{font-size:1.4em}.markdown-file-preview h3{font-size:1.15em}.markdown-file-preview p{margin:0 0 12px}.markdown-file-preview pre{border:1px solid var(--border);border-radius:6px;margin:12px 0;padding:12px 16px;font-size:13px;overflow-x:auto}.markdown-file-preview code,.markdown-file-preview pre{background:var(--bg-panel);font-family:var(--font-mono)}.markdown-file-preview code{border-radius:3px;padding:1px 5px;font-size:.9em}.markdown-file-preview pre code{background:0 0;padding:0}.markdown-body span.linenumber,span.linenumber{color:var(--text-dim)!important;font-style:normal!important}@keyframes drop-zone-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes drop-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes drop-ring-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes drop-ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(1)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes sidebar-running-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@keyframes notice-shelf-in{0%{opacity:0;transform:translateY(-6px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes notice-shelf-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-5px)scale(.995)}}@media (prefers-reduced-motion:reduce){.notice-shelf-item{animation-duration:.001ms!important}}.chat-jump-bottom{z-index:45;border:1px solid var(--border);background:var(--bg-panel);width:32px;height:32px;color:var(--text-muted);cursor:pointer;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .15s,transform .15s,background-color .15s,color .15s;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)translateY(6px)scale(.92);box-shadow:0 1px 2px #0f172a0f,0 8px 24px -12px #0f172a2e}.chat-jump-bottom.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)scale(1)}.chat-jump-bottom:hover{background:var(--bg-hover);color:var(--text)}@media (prefers-reduced-motion:reduce){.chat-jump-bottom,.chat-jump-bottom.is-visible{transition:opacity .001ms;transform:translate(-50%)}}@keyframes saved-pop{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--status-success) 55%,transparent);transform:scale(1)}40%{box-shadow:0 0 0 6px color-mix(in srgb,var(--status-success) 25%,transparent);transform:scale(1.08)}to{transform:scale(1);box-shadow:0 0 #0000}}@keyframes saved-check-draw{0%{stroke-dashoffset:18px;opacity:0}to{stroke-dashoffset:0;opacity:1}}@media (min-width:641px){.sidebar-overlay-backdrop{display:none!important}.sidebar-container{transition:width .2s,min-width .2s;position:relative;overflow:hidden}.sidebar-container.sidebar-dragging{transition:none}.sidebar-container.sidebar-open{width:var(--sidebar-width,260px);min-width:var(--sidebar-width,260px)}.sidebar-container.sidebar-closed{width:0;min-width:0;border-right:none!important}.sidebar-inner{width:var(--sidebar-width,260px);min-width:var(--sidebar-width,260px)}}.sidebar-inner{flex-direction:column;flex:auto;min-width:0;height:100%;min-height:0;display:flex}.sidebar-resize-handle{cursor:col-resize;z-index:10;touch-action:none;width:5px;position:absolute;top:0;bottom:0;right:0}.sidebar-resize-handle.dragging,.sidebar-resize-handle:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.sidebar-resize-handle.dragging,.sidebar-resize-handle:hover{background:color-mix(in srgb,var(--accent) 35%,transparent)}}.sidebar-resize-handle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (max-width:640px){.sidebar-resize-handle{display:none}}.sidebar-pagination-btn{height:22px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:0 8px;font-size:11px;transition:background .12s,color .12s;display:inline-flex}.sidebar-pagination-btn:hover{background:var(--bg-hover);color:var(--text)}.sidebar-pagination-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (min-width:641px){.workspace-container{flex-shrink:0;transition:width .2s,min-width .2s;overflow:hidden}.workspace-container.workspace-dragging{transition:none}.workspace-container.workspace-closed{border-left:none!important}}@media (max-width:640px){.chat-stats-center{display:none!important}.sidebar-container{width:280px;max-width:85vw;transition:transform .25s,box-shadow .25s;top:0;bottom:0;left:0;position:fixed!important}.sidebar-container.sidebar-open{transform:translate(0);box-shadow:4px 0 20px #00000026}.sidebar-container.sidebar-closed{box-shadow:none;transform:translate(-100%)}.changes-panel{z-index:300;transition:transform .25s,box-shadow .25s;inset:0;border-left:none!important;width:100%!important;min-width:0!important;position:fixed!important}.changes-panel.changes-panel-open{transform:translate(0);box-shadow:-4px 0 20px #00000026}.changes-panel.changes-panel-closed{box-shadow:none;transform:translate(100%)}.changes-panel>.changes-panel{height:100%;box-shadow:none;transition:none;position:relative;left:auto;right:auto;transform:none;width:100%!important}.changes-panel-resize-handle{display:none!important}.workspace-container{transition:transform .25s,box-shadow .25s;top:0;bottom:0;right:0;width:100%!important;min-width:0!important;position:fixed!important}.workspace-container.workspace-open{transform:translate(0);box-shadow:-4px 0 20px #00000026}.workspace-container.workspace-closed{box-shadow:none;transform:translate(100%);border-left:none!important}.workspace-container>.workspace-inner{width:100%!important;min-width:0!important}}.sidebar-icon-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.sidebar-icon-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.sidebar-icon-btn:active:not(:disabled){background:var(--bg-selected)}.sidebar-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sidebar-icon-btn:disabled{color:var(--text-dim)}@media (hover:hover) and (pointer:fine){.sidebar-indent-indicator{opacity:0;pointer-events:none}.sidebar-row:focus-within>.sidebar-indent-indicator,.sidebar-row:hover>.sidebar-indent-indicator{opacity:1;pointer-events:auto}.sidebar-row:focus-within .sidebar-indicator-icon,.sidebar-row:hover .sidebar-indicator-icon{opacity:0;pointer-events:none}}@media (hover:none),(pointer:coarse){.sidebar-indent-indicator{opacity:1;pointer-events:auto}.sidebar-indicator-icon{opacity:0;pointer-events:none}}.sidebar-chevron-always{opacity:1;pointer-events:auto}.sidebar-indicator-icon{transition:opacity .12s}.extension-panel-overlay{z-index:95;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--overlay);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.extension-panel-inline{background:var(--bg);flex-shrink:0;justify-content:center;display:flex}.extension-panel-shell{border:1px solid var(--accent);flex-direction:column;max-height:min(52vh,560px);display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.extension-panel-shell{border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}}.extension-panel-shell{background:var(--bg-panel);box-shadow:0 16px 40px var(--text);border-radius:12px}@supports (color:color-mix(in lab,red,red)){.extension-panel-shell{box-shadow:0 16px 40px color-mix(in srgb,var(--text) 12%,transparent)}}.extension-panel-shell{font-family:inherit}.extension-panel-shell--overlay{max-height:min(760px,calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.extension-panel-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:44px;padding:8px 12px 8px 14px;display:flex}.extension-panel-title{min-width:0;color:var(--text);flex:1;font-size:14px;font-weight:650;line-height:1.4}.extension-panel-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.extension-panel-body{overscroll-behavior:auto;touch-action:auto;min-height:0;color:var(--text);-webkit-user-select:text;user-select:text;flex:auto;padding:12px 14px;font-size:14px;line-height:1.55;overflow-y:auto}.extension-panel-footer{border-top:1px solid var(--border);background:var(--bg-subtle);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.extension-panel-hint,.extension-panel-status{color:var(--text-dim);margin-left:auto;font-size:12px;line-height:1.4}.extension-panel-copy{color:var(--text-muted);overflow-wrap:anywhere;font-size:14px;line-height:1.55}.extension-panel-editor{border:1px solid var(--border);background:var(--bg);width:100%;min-height:120px;max-height:320px;resize:vertical;box-sizing:border-box;border-radius:8px;outline:none;padding:10px 12px;line-height:1.55;display:block;overflow-y:auto}.extension-panel-ansi,.extension-panel-editor{color:var(--text);font-family:var(--font-mono);font-size:13px}.extension-panel-ansi{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;margin:0;line-height:1.5}.extension-panel-keytrap{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute}.extension-option-list{flex-direction:column;gap:8px;display:flex}.extension-option-btn{border:1px solid var(--border);background:var(--bg);width:100%;min-height:40px;color:var(--text);font:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere;cursor:pointer;border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.45;overflow:hidden}.extension-option-btn:hover:not(:disabled){background:var(--bg-hover)}.extension-option-btn:disabled{color:var(--text-dim);cursor:not-allowed}@media (max-width:640px){.extension-panel-shell{max-height:min(70vh,calc(100dvh - 24px - env(safe-area-inset-bottom)))}.extension-card-btn,.extension-option-btn{min-height:44px}}.extension-card-btn{border:1px solid var(--border);background:var(--bg);min-height:36px;color:var(--text-muted);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.extension-card-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.extension-card-btn:disabled{cursor:not-allowed;opacity:.55}.extension-card-btn--primary{background:var(--accent);color:var(--accent-foreground);border-color:#0000}.extension-card-btn--primary:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground);filter:brightness(1.06)}.guide-selectors{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:10px;display:flex}.guide-selector{background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;height:28px;padding:0 6px;transition:background .12s,border-color .12s;display:inline-flex}.guide-selector:hover{background:var(--bg-hover)}.guide-selector:focus-within{background:var(--bg-hover);border-color:var(--accent)}.guide-selector-icon{color:var(--text-dim);flex-shrink:0}.guide-select{width:160px;min-width:0;max-width:160px;color:var(--text);font:inherit;cursor:pointer;text-overflow:ellipsis;background:0 0;border:none;outline:none;font-size:12.5px}.guide-select:disabled{color:var(--text-dim);cursor:default}@media (max-width:640px){.guide-selectors{flex-wrap:nowrap}.guide-selector{flex:1;min-width:0}.guide-select{width:100%;max-width:none}}.sidebar-icon-btn--active,.sidebar-icon-btn--active:hover:not(:disabled){background:var(--bg-selected);color:var(--accent)}.sidebar-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-bg);color:var(--status-danger)}.sidebar-icon-btn--done,.sidebar-icon-btn--done:hover:not(:disabled){background:var(--status-success)}@supports (color:color-mix(in lab,red,red)){.sidebar-icon-btn--done,.sidebar-icon-btn--done:hover:not(:disabled){background:color-mix(in srgb,var(--status-success) 18%,transparent)}}.sidebar-icon-btn--done,.sidebar-icon-btn--done:hover:not(:disabled){color:var(--status-success)}.sidebar-row .sidebar-icon-btn--hover{opacity:0}.sidebar-row .sidebar-icon-btn--hover:focus-visible,.sidebar-row:focus-within .sidebar-icon-btn--hover,.sidebar-row:hover .sidebar-icon-btn--hover{opacity:1}@media (max-width:640px){.sidebar-toolbar{gap:12px!important}}.settings-layout{height:min(72dvh,660px);min-height:0;display:flex}.settings-nav-list{flex-direction:column;gap:2px;padding:10px 8px;display:flex}.settings-nav-item{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;font-size:13px;font-weight:400;transition:background .12s,color .12s;display:flex;position:relative}.settings-nav-item:hover{background:var(--bg-hover);color:var(--text)}.settings-nav-item.is-active{background:var(--bg-selected);color:var(--text);font-weight:600}.settings-nav-item.is-active:before{border-radius:var(--radius-pill);background:var(--accent);content:"";width:2px;position:absolute;top:7px;bottom:7px;left:3px}.settings-content-pane,.settings-scroll-region{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.settings-content-pane{background:var(--bg);overflow:hidden}.settings-scroll-region{scrollbar-gutter:stable;overflow-y:auto}.settings-page-content{width:min(100%,700px);padding:24px 28px 32px}.settings-choice{margin-bottom:26px}.settings-segmented-control{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-panel);width:fit-content;max-width:100%;box-shadow:var(--shadow-input);gap:2px;padding:3px;display:flex}.settings-segmented-option{border-radius:var(--radius-sm);min-width:96px;height:32px;color:var(--text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0 14px;font-size:12.5px;transition:background .12s,color .12s,box-shadow .12s}.settings-segmented-option:hover{color:var(--text)}.settings-segmented-option.is-active{background:var(--bg-elevated);color:var(--text);box-shadow:0 1px 3px var(--text)}@supports (color:color-mix(in lab,red,red)){.settings-segmented-option.is-active{box-shadow:0 1px 3px color-mix(in srgb,var(--text) 12%,transparent)}}.settings-segmented-option.is-active{font-weight:600}.settings-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;padding:32px 24px;display:flex}.app-top-bar{border-bottom:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;align-items:center;height:36px;display:flex}.session-lineage{margin-left:6px;font-size:12px}.session-lineage,.session-lineage-crumbs{align-items:center;gap:2px;min-width:0;display:flex}.session-lineage-crumbs{overflow:hidden}.session-lineage-gap,.session-lineage-sep{color:var(--text-dim);flex-shrink:0}.session-lineage-crumb,.session-lineage-current{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:180px;padding:0 2px;overflow:hidden}.session-lineage-crumb{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none}.session-lineage-crumb:hover{color:var(--text)}.session-lineage-crumb:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-current{color:var(--text);align-items:center;gap:4px;display:inline-flex}.session-lineage-trigger{height:24px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.session-lineage-trigger:hover,.session-lineage-trigger[aria-expanded=true]{background:var(--bg-selected);color:var(--text)}.session-lineage-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-trigger-label{white-space:nowrap}.session-lineage-trigger-running{white-space:nowrap;color:var(--status-warning)}.session-lineage-title{min-width:0;max-width:260px;height:24px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.session-lineage-title:hover,.session-lineage-title[aria-expanded=true]{background:var(--bg-selected)}.session-lineage-title:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-title .session-lineage-trigger-label{text-overflow:ellipsis;overflow:hidden}.session-lineage-dot{background:var(--status-success);border-radius:50%;flex-shrink:0;width:6px;height:6px}.session-lineage-panel{padding:4px 0}.session-lineage-note{color:var(--status-warning);padding:2px 10px 6px;font-size:11px}.session-lineage-row{height:28px;color:var(--text-muted);cursor:pointer;outline:none;align-items:center;gap:6px;padding-right:10px;display:flex}.session-lineage-row:hover{background:var(--bg-selected);color:var(--text)}.session-lineage-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.session-lineage-row.is-current{color:var(--text)}.session-lineage-row.needs-attention{color:var(--status-warning)}.session-lineage-row-toggle{width:14px;height:14px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.session-lineage-row-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.session-lineage-row-tag{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;flex-shrink:0;padding:0 5px;font-size:10px}.session-lineage-row-attention{color:var(--status-warning);flex-shrink:0;font-size:11px}.session-lineage-row-meta{color:var(--text-dim);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;font-size:11px}.workspace-header{border-bottom:1px solid var(--border);align-items:center;gap:4px;height:40px;padding:0 8px 0 12px}.changes-panel,.workspace-header{background:var(--bg-panel);flex-shrink:0;display:flex}.changes-panel{border-left:1px solid var(--border);flex-direction:column;align-self:stretch;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.changes-panel>.changes-panel{border-left:none;flex:auto;height:100%;min-height:0;width:100%!important;min-width:0!important}.changes-panel-content{flex:1;grid-template-rows:minmax(120px,36%) minmax(0,1fr);min-height:0;display:grid}.changes-panel-diff,.changes-panel-list{min-height:0;overflow:auto}.changes-panel-list{border-bottom:1px solid var(--border)}.changes-panel-hint{color:var(--text-dim);padding:18px 14px;font-size:11.5px;line-height:1.5}.changes-panel-hint.is-error{color:var(--status-danger)}.changes-panel-resize-handle{z-index:10;cursor:col-resize;touch-action:none;width:6px;position:absolute;top:0;bottom:0;left:-3px}.changes-panel-resize-handle.dragging,.changes-panel-resize-handle:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.changes-panel-resize-handle.dragging,.changes-panel-resize-handle:hover{background:color-mix(in srgb,var(--accent) 35%,transparent)}}.secondary-panel-inner{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.secondary-panel-tabs{flex:none;min-width:0;min-height:0}.secondary-panel-body{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.workspace-navigation-rail{border-left:1px solid var(--border);background:var(--bg);flex-direction:column;align-items:center;gap:4px;padding:8px 0;display:flex}.workspace-resize-handle{cursor:col-resize;z-index:10;touch-action:none;width:5px;position:absolute;top:0;bottom:0;left:0}.workspace-resize-handle.dragging,.workspace-resize-handle:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.workspace-resize-handle.dragging,.workspace-resize-handle:hover{background:color-mix(in srgb,var(--accent) 35%,transparent)}}@media (max-width:640px){.workspace-resize-handle{display:none}}.file-row-actions{background:var(--bg-panel);border:1px solid var(--border);opacity:0;visibility:hidden;border-radius:6px;align-items:center;gap:2px;padding:1px;transition:opacity .12s,visibility .12s;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.file-row{border-radius:var(--radius-xs);transition:background .12s}.file-row:focus-within,.file-row:hover{background:var(--bg-hover)}.file-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.file-row-actions:has([data-menu-open=true]),.file-row:focus-within .file-row-actions,.file-row:hover .file-row-actions{opacity:1;visibility:visible}.file-row-action-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:background .12s,color .12s;display:inline-flex}.file-row-action-btn:hover{background:var(--bg-hover);color:var(--text)}.file-row-action-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (pointer:coarse){.file-row-actions{opacity:1;visibility:visible}.file-row .file-row-badge{display:none}}.git-file-row{cursor:pointer;width:100%;height:26px;color:var(--text);text-align:left;border-radius:var(--radius-xs);background:0 0;border:none;align-items:center;gap:6px;padding:0 8px;font-size:12px;transition:background .12s,color .12s;display:flex}.git-file-row:hover{background:var(--bg-hover)}.git-file-row.is-selected{background:var(--bg-selected);color:var(--text)}.git-file-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (hover:none),(pointer:coarse){.sidebar-row .sidebar-icon-btn--hover{opacity:1}.sidebar-icon-btn{width:28px;height:28px;position:relative}.sidebar-icon-btn:after{content:"";position:absolute;inset:-4px -2px}}@media (max-width:640px){.app-top-bar{height:44px}.app-top-bar>button:not(.app-top-bar-stats){width:44px!important;height:44px!important}.app-top-bar-stats{min-width:0;max-width:min(48vw,168px);overflow:hidden;gap:4px!important;height:44px!important;padding:0 8px!important}.app-top-bar-stats>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.session-lineage{margin-left:4px}.session-lineage-crumbs{max-width:28vw}.session-lineage-crumb,.session-lineage-current{max-width:84px}.session-lineage-title{max-width:42vw}.session-lineage-trigger-running{display:none}.session-lineage-row{height:34px}.workspace-header{height:44px;padding-right:6px}.workspace-header .sidebar-icon-btn,.workspace-navigation-rail .sidebar-icon-btn{width:36px;height:36px}.workspace-navigation-rail{gap:8px;padding-top:8px}.settings-layout{height:min(78dvh,680px)}.settings-nav-list{padding:10px}.settings-page-content{padding:20px 16px 28px}.settings-segmented-control{width:100%;overflow-x:auto}.settings-segmented-option{flex:1 0 auto;min-width:0;height:40px}.chat-input-shell{padding:9px 8px 9px 12px!important}.chat-input-shell button{min-height:40px}.file-row{min-height:44px}.file-row>svg{width:12px;height:12px}.file-row-icon svg{width:18px;height:18px}.file-row-action-btn{width:32px;height:32px}}.sidebar-row .sidebar-icon-btn--hover.sidebar-icon-btn--active{opacity:1}@media (hover:none),(pointer:coarse){.sidebar-chevron-btn:after{content:"";position:absolute;inset:-5px -3px}}.file-viewer-toolbar{min-width:0}.file-viewer-path{text-overflow:ellipsis;white-space:nowrap;min-width:72px;overflow:hidden}.file-viewer-meta{white-space:nowrap;flex-shrink:0}.file-viewer-controls{flex-shrink:0;align-items:center;gap:3px;margin-left:auto;display:flex}.file-viewer-icon-button{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:color .12s,background .12s,border-color .12s;display:inline-flex}.file-viewer-icon-button:hover:not(:disabled),.file-viewer-icon-button[data-active=true]{color:var(--text);background:var(--bg-selected);border-color:var(--border)}.file-viewer-icon-button.is-save:not(:disabled){color:var(--accent)}.file-close-confirm__button:focus-visible,.file-editor-notice button:focus-visible,.file-viewer-icon-button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.file-viewer-icon-button:disabled{opacity:.34;cursor:not-allowed}.file-viewer-toolbar-separator{background:var(--border);flex:none;width:1px;height:16px;margin:0 2px}.file-viewer-live-indicator{border-radius:50%;flex:none;width:6px;height:6px}.file-source-editor{box-sizing:border-box;resize:none;background:var(--bg);width:100%;min-width:max-content;height:100%;min-height:0;color:var(--text);caret-color:var(--accent);font-family:var(--font-mono);tab-size:2;white-space:pre;border:0;outline:0;flex:auto;margin:0;padding:14px 18px;font-size:13px;line-height:1.6;display:block;overflow:auto}.file-source-editor.is-wrapped{white-space:pre-wrap;overflow-wrap:anywhere;min-width:100%}.file-close-confirm,.file-editor-notice{border-bottom:1px solid var(--border);background:var(--accent);align-items:center;gap:10px;min-height:34px;padding:5px 10px 5px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.file-close-confirm,.file-editor-notice{background:color-mix(in srgb,var(--accent) 7%,var(--bg-panel))}}.file-close-confirm,.file-editor-notice{color:var(--text-muted);flex:none;font-size:11.5px}.file-editor-notice.is-warning{background:var(--status-warning)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-warning{background:color-mix(in srgb,var(--status-warning) 10%,var(--bg-panel))}}.file-editor-notice.is-warning{color:var(--status-warning)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-warning{color:color-mix(in srgb,var(--status-warning) 72%,var(--text))}}.file-editor-notice.is-error{background:var(--status-danger)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-error{background:color-mix(in srgb,var(--status-danger) 9%,var(--bg-panel))}}.file-editor-notice.is-error{color:var(--status-danger)}.file-editor-notice.is-success{background:var(--status-success)}@supports (color:color-mix(in lab,red,red)){.file-editor-notice.is-success{background:color-mix(in srgb,var(--status-success) 8%,var(--bg-panel))}}.file-editor-notice.is-success{color:var(--status-success)}.file-editor-notice__actions{align-items:center;gap:5px;margin-left:auto;display:flex}.file-close-confirm__button,.file-editor-notice button{border:1px solid var(--border);background:var(--bg);min-height:24px;color:var(--text-muted);font:inherit;cursor:pointer;white-space:nowrap;border-radius:5px;padding:2px 8px}.file-close-confirm__button:hover,.file-editor-notice button:hover{color:var(--text);background:var(--bg-hover)}.file-close-confirm__button.is-danger,.file-editor-notice button.is-danger{color:var(--status-danger);border-color:var(--status-danger)}@supports (color:color-mix(in lab,red,red)){.file-close-confirm__button.is-danger,.file-editor-notice button.is-danger{border-color:color-mix(in srgb,var(--status-danger) 35%,var(--border))}}.file-close-confirm{background:var(--status-warning);min-height:36px}@supports (color:color-mix(in lab,red,red)){.file-close-confirm{background:color-mix(in srgb,var(--status-warning) 7%,var(--bg-panel))}}.file-close-confirm__message{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:auto;overflow:hidden}.file-close-confirm__button{align-items:center;gap:5px;display:inline-flex}.file-tab-dirty-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--accent);border-radius:50%}@supports (color:color-mix(in lab,red,red)){.file-tab-dirty-dot{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}}.file-save-spinner,.file-tab-dirty-dot.is-saving{animation:file-editor-pulse .9s ease-in-out infinite alternate}.file-save-spinner{border:2px solid var(--accent);width:11px;height:11px}@supports (color:color-mix(in lab,red,red)){.file-save-spinner{border:2px solid color-mix(in srgb,var(--accent) 28%,transparent)}}.file-save-spinner{border-top-color:var(--accent);border-radius:50%;animation-name:file-editor-spin;animation-duration:.65s;animation-timing-function:linear;animation-iteration-count:infinite}.file-viewer-context-label{z-index:2;border-bottom:1px solid var(--border);background:var(--bg-panel);color:var(--text-dim);padding:5px 12px;font-size:10.5px;position:sticky;top:0}@keyframes file-editor-spin{to{transform:rotate(1turn)}}@keyframes file-editor-pulse{to{opacity:.45}}@media (max-width:640px){.file-viewer-toolbar{gap:6px!important;padding-left:8px!important;padding-right:0!important}.file-viewer-meta{display:none}.file-viewer-controls{scrollbar-width:none;max-width:68vw;padding-right:8px;overflow-x:auto}.file-viewer-controls::-webkit-scrollbar{display:none}.file-close-confirm,.file-editor-notice{flex-wrap:wrap;align-items:flex-start}.file-editor-notice__actions{width:100%;margin-left:0}.file-close-confirm__message{flex-basis:100%;width:100%}.file-close-confirm__button span{display:none}.file-close-confirm__button{justify-content:center;width:28px;padding:0}.file-source-editor{padding:12px}}@media (prefers-reduced-motion:reduce){.file-save-spinner,.file-tab-dirty-dot.is-saving{animation:none}}.pidance-terminal-surface{background:var(--bg)}.pidance-terminal-xterm{min-width:0;min-height:0}.pidance-terminal-xterm .xterm{height:100%}.pidance-terminal-xterm .xterm-viewport{background:0 0!important}.pidance-terminal-xterm .xterm-screen{background:0 0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
|
package/README.en.md
CHANGED
|
@@ -8,15 +8,15 @@
|
|
|
8
8
|
</p>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
|
-
Pidance is an open-source web client for the [Pi](https://github.com/badlogic/pi-mono) coding agent. It reads local Pi session files directly and preserves Pi SDK session and runtime semantics, bringing live chat, project files, Git,
|
|
11
|
+
Pidance is an open-source web client for the [Pi](https://github.com/badlogic/pi-mono) coding agent. It reads local Pi session files directly and preserves Pi SDK session and runtime semantics, bringing live chat, project files, Git, subagents, and configuration into one browser workspace. Pi remains the source of truth for data and execution semantics; Pidance provides a clearer and more complete interface.
|
|
12
12
|
|
|
13
|
-
> Current version: `0.2.
|
|
13
|
+
> Current version: `0.2.34` · npm package: `@henlii/pidance` · CLI: `pidance`
|
|
14
14
|
|
|
15
15
|
## Preview
|
|
16
16
|
|
|
17
17
|

|
|
18
18
|
|
|
19
|
-
<p align="center"><sub>New-session workspace with project
|
|
19
|
+
<p align="center"><sub>New-session workspace with the project selector, model controls, and contextual side panels. The path shown is anonymized.</sub></p>
|
|
20
20
|
|
|
21
21
|

|
|
22
22
|
|
|
@@ -24,11 +24,11 @@ Pidance is an open-source web client for the [Pi](https://github.com/badlogic/pi
|
|
|
24
24
|
|
|
25
25
|
## Features
|
|
26
26
|
|
|
27
|
-
- **Project-oriented sessions**: browse a Project →
|
|
27
|
+
- **Project-oriented sessions**: browse a Project → Session tree (a project is the directory you added) with search, recent sessions, archive/restore, rename, automatic titles, and HTML export.
|
|
28
28
|
- **Live agent chat**: stream responses, thinking, tool calls, ANSI terminal output, compaction, and running state over SSE, with reconciliation after reconnects.
|
|
29
29
|
- **Safe exploration**: continue from an earlier message, create an in-session branch, or fork to an independent `.jsonl` session without conflating those semantics.
|
|
30
30
|
- **Project workspace**: browse and preview source, Markdown, images, audio, PDFs, and DOCX; search files, use `@` mentions, and inspect Git status and diffs.
|
|
31
|
-
- **
|
|
31
|
+
- **One directory, one project**: for a second Git checkout, create it with `git worktree` yourself and add that directory as a project. Pidance does not manage worktrees; new sessions and the file workspace always follow the selected directory.
|
|
32
32
|
- **Pi ecosystem integration**: inspect synchronous and asynchronous subagent run status, interact with generic extension UI cards, and view read-only projections of structured todos.
|
|
33
33
|
- **Central configuration**: manage provider authentication, API keys, models and model tests, session defaults, skills, plugins, and project trust.
|
|
34
34
|
- **Polished interface**: responsive desktop/mobile layouts, a command palette, session minimap, completion sound, English and Chinese, plus Light / Dark / System themes.
|
|
@@ -145,7 +145,6 @@ Start with the [documentation index](./docs/README.md). Detailed maintainer guid
|
|
|
145
145
|
- [Architecture](./docs/architecture.md) · [Static review](./docs/architecture-review-2026-09-15.md)
|
|
146
146
|
- [Development](./docs/development.md) · [Security](./docs/security.md)
|
|
147
147
|
- [Windows desktop shell](./desktop/README.md) · [Version history](./docs/release-notes/README.md)
|
|
148
|
-
- [Git worktrees](./docs/worktrees.md)
|
|
149
148
|
- [Release and package auditing](./docs/release.md)
|
|
150
149
|
- [Historical interface prototypes](./docs/ui-redesign/README.md)
|
|
151
150
|
- [Theme token design reference](./docs/ui-redesign/theme-tokens.md)
|
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
Pidance 是面向 [Pi](https://github.com/badlogic/pi-mono) coding agent 的开源 Web 客户端。它直接读取本机 Pi 会话文件,并沿用 Pi SDK 的会话与运行时语义,把实时对话、项目文件、Git、工作树、子代理和配置管理汇集到一个浏览器工作区。Pi 仍是数据与执行语义的事实来源;Pidance 负责提供更清晰、更完整的操作界面。
|
|
12
12
|
|
|
13
|
-
> 当前版本:`0.2.
|
|
13
|
+
> 当前版本:`0.2.34` · npm 包:`@henlii/pidance` · CLI:`pidance`
|
|
14
14
|
|
|
15
15
|
## 界面预览
|
|
16
16
|
|
|
@@ -24,11 +24,11 @@ Pidance 是面向 [Pi](https://github.com/badlogic/pi-mono) coding agent 的开
|
|
|
24
24
|
|
|
25
25
|
## 功能特性
|
|
26
26
|
|
|
27
|
-
- **项目化会话空间**:按 Project →
|
|
27
|
+
- **项目化会话空间**:按 Project → Session 浏览会话树(项目 = 你加入的那个目录),支持搜索、最近会话、归档、恢复、重命名、自动命名与 HTML 导出。
|
|
28
28
|
- **实时 Agent 对话**:通过 SSE 呈现流式回复、思考过程、工具调用、终端 ANSI 输出、压缩状态和运行中状态;页面恢复后自动对账。
|
|
29
29
|
- **安全探索不同方向**:从历史消息继续、创建会话内分支,或 fork 为独立 `.jsonl` 会话;两种分支语义清晰分离。
|
|
30
30
|
- **项目工作区**:浏览与预览源码、Markdown、图片、音频、PDF 和 DOCX,支持文件搜索、`@` 引用、Git 状态与 diff。
|
|
31
|
-
-
|
|
31
|
+
- **一个目录就是一个项目**:需要另一份 Git checkout 时用 `git worktree` 自己建,再把该目录加为项目;Pidance 不管理 worktree,新会话与文件工作区始终跟随所选目录。
|
|
32
32
|
- **Pi 生态集成**:展示同步与异步子代理运行状态、通用扩展 UI 卡片与交互,以及结构化 Todos 的只读投影。
|
|
33
33
|
- **集中配置**:管理供应商认证、API Key、模型与测试、会话默认值、技能、插件和项目信任。
|
|
34
34
|
- **精心打磨的界面**:响应式桌面/移动布局、命令面板、会话 minimap、完成提示音、中英双语,以及 Light / Dark / System 主题。
|
|
@@ -149,7 +149,6 @@ Pi AgentSessionRuntime
|
|
|
149
149
|
- [架构与会话交互](./docs/architecture.md) · [静态审查](./docs/architecture-review-2026-09-15.md)
|
|
150
150
|
- [开发与验证](./docs/development.md) · [安全边界](./docs/security.md)
|
|
151
151
|
- [Windows 桌面壳](./desktop/README.md) · [版本变更](./docs/release-notes/README.md)
|
|
152
|
-
- [Git worktree 使用说明](./docs/worktrees.zh-CN.md)
|
|
153
152
|
- [发布与制品审计](./docs/release.md)
|
|
154
153
|
- [历史界面设计稿](./docs/ui-redesign/README.md)
|
|
155
154
|
- [主题 Token 设计参考](./docs/ui-redesign/theme-tokens.md)
|
package/README.zh-CN.md
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@henlii/pidance",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.34",
|
|
4
4
|
"description": "Pidance:面向 Pi coding agent 的开源 Web 客户端",
|
|
5
5
|
"homepage": "https://github.com/henlii/pidance#readme",
|
|
6
6
|
"repository": {
|
|
@@ -49,7 +49,6 @@
|
|
|
49
49
|
"typecheck": "tsc --noEmit",
|
|
50
50
|
"test": "node --test lib/*.test.mjs components/*.test.mjs hooks/*.test.mjs bin/*.test.mjs scripts/lib/*.test.mjs",
|
|
51
51
|
"verify:render-bridge": "node scripts/verify-subagent-render-bridge.mjs",
|
|
52
|
-
"verify:render-bridge:installed": "node scripts/verify-installed-render-bridge.mjs",
|
|
53
52
|
"test:browser": "node --test scripts/browser-regression.test.mjs",
|
|
54
53
|
"test:browser:context": "node --test scripts/context-live-regression.test.mjs",
|
|
55
54
|
"check": "npm run typecheck && npm run lint && npm run test",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=4016,a.ids=[4016],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},42819:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>m,GET:()=>k,POST:()=>l});var e=c(23211),f=c(29021),g=c(24923),h=c(80547),i=a([h]);async function j(a){let b=await (0,h.mc)();return(0,h.A$)(a,b)?null:e.NextResponse.json({error:"Access denied"},{status:403})}async function k(a){try{let b=new URL(a.url).searchParams.get("cwd");if(!b)return e.NextResponse.json({error:"cwd is required"},{status:400});let c=await j(b);if(c)return c;let d=await (0,g.KI)(b),i=[],k=!0;try{i=await (0,g.P9)((0,f.existsSync)(b)?b:d.projectRoot)}catch{k=!1}for(let a of i)(0,h.wz)(a.path);return e.NextResponse.json({projectRoot:d.projectRoot,isGit:k,isTopLevel:d.isTopLevel,worktrees:i})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function l(a){try{let b=await a.json();if(!b.cwd||"string"!=typeof b.cwd)return e.NextResponse.json({error:"cwd is required"},{status:400});if(!b.branch||"string"!=typeof b.branch)return e.NextResponse.json({error:"branch is required"},{status:400});let c=await j(b.cwd);if(c)return c;if(!(0,f.existsSync)(b.cwd))return e.NextResponse.json({error:`Directory does not exist: ${b.cwd}`},{status:400});let d=await (0,g.l)(b.cwd,b.branch);return e.NextResponse.json(d)}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:400})}}async function m(a){try{let b=await a.json();if(!b.cwd||"string"!=typeof b.cwd)return e.NextResponse.json({error:"cwd is required"},{status:400});if(!b.path||"string"!=typeof b.path)return e.NextResponse.json({error:"path is required"},{status:400});let c=await j(b.cwd);if(c)return c;return await (0,g.IL)(b.cwd,b.path,!0===b.force),e.NextResponse.json({success:!0})}catch(c){let a=c instanceof Error?c.message:String(c),b=/contains modified or untracked files|is dirty/i.test(a);return e.NextResponse.json({error:a,dirty:b},{status:b?409:400})}}h=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69835:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$t:()=>w,Gt:()=>z,Lj:()=>y,Md:()=>x,eq:()=>n,fb:()=>u,fm:()=>v,ki:()=>r,qo:()=>m,uF:()=>o,vy:()=>t,xd:()=>q});var e=c(29021),f=c(33873),g=c(55511),h=c(27910),i=c(77725),j=c(60396),k=c(80547),l=a([k]);k=(l.then?(await l)():l)[0];let x=0x1900000,y=0x6400000,z=0x20000000;function m(a=(0,j.$M)()){return(0,k.Nw)((0,f.join)(a,"pidance-attachments"))}function n(a=(0,j.$M)()){let b=m(a);return(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0,mode:448}),(0,k.wz)(b),b}function o(a){let b=(a.replace(/\\/g,"/").split("/").pop()??"file").replace(/\0/g,"").replace(/^\.+/,"").trim()||"file";if(b.length<=180)return b;let c=b.lastIndexOf(".");if(c>0&&b.length-c<=20){let a=b.slice(c);return b.slice(0,180-a.length)+a}return b.slice(0,180)}function p(a,b=Date.now()){let c=o(a),d=new Date(b).toISOString().replace(/[:.]/g,"-"),e=(0,g.randomUUID)().slice(0,8);return`${d}_${e}_${c}`}async function q(a,b,c=(0,j.$M)(),d=z){let l=n(c),m=p(a),r=(0,f.join)(l,m),s=(0,f.join)(l,`.${m}.${(0,g.randomUUID)()}.tmp`),t=0,u=new h.Transform({transform(a,b,c){let e=Buffer.isBuffer(a)?a:Buffer.from(a);(t+=e.length)>d?c(Error(`message media exceeds ${d} bytes`)):c(null,e)}});try{await (0,i.pipeline)(h.Readable.fromWeb(b),u,(0,e.createWriteStream)(s,{flags:"wx",mode:384})),(0,e.renameSync)(s,r)}catch(a){try{(0,e.unlinkSync)(s)}catch{}throw a}return{path:(0,k.Nw)(r),name:o(a),storedName:m,size:t}}function r(a,b,c=(0,j.$M)()){let d=n(c),g=p(a),h=(0,f.join)(d,g);return(0,e.writeFileSync)(h,b,{flag:"wx",mode:384}),{path:(0,k.Nw)(h),name:o(a),storedName:g,size:b.length}}function s(a,b,c){let d=a.trim();if(!d)return null;try{let a=(0,k.Nw)((0,e.realpathSync)(n(b))),f=(0,k.Nw)((0,e.realpathSync)(d));if(f!==a&&!f.startsWith(`${a}/`)||!(0,e.statSync)(f).isFile())return null;return c(f)}catch{return null}}function t(a,b=(0,j.$M)()){return s(a,b,a=>(0,e.statSync)(a).size)}function u(a,b=(0,j.$M)(),c=0x1900000){return s(a,b,a=>(0,e.statSync)(a).size>c?null:(0,e.readFileSync)(a).toString("base64"))}function v(a,b=(0,j.$M)()){return s(a,b,a=>{try{return(0,e.unlinkSync)(a),!0}catch{return!1}})??!1}function w(a=(0,j.$M)()){let b=[];return function a(b,c){for(let d of(()=>{try{return(0,e.readdirSync)(b,{withFileTypes:!0})}catch{return[]}})()){let g=(0,f.join)(b,d.name);if(d.isDirectory()){a(g,c);continue}if(d.isFile())try{let a=(0,e.statSync)(g);c.push({path:(0,k.Nw)(g),size:a.size,mtimeMs:a.mtimeMs})}catch{}}}(m(a),b),b}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},75989:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(42819),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/worktrees/route",pathname:"/api/worktrees",filename:"route",bundlePath:"app/api/worktrees/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/worktrees/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/worktrees/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},77725:a=>{a.exports=require("stream/promises")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>r,Nw:()=>j.Nw,bk:()=>q,mc:()=>p,uK:()=>o,wz:()=>k.wz});var e=c(29021),f=c(21820),g=c(33873),h=c.n(g),i=c(60396),j=c(50593),k=c(25252),l=c(69835),m=c(40402),n=a([l,m]);[l,m]=n.then?(await n)():n;let s=/^[a-zA-Z]:[\\/]/;function o(a){return s.test(a)||a.startsWith("\\\\")||a.startsWith("//")}async function p(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,m.dQ)(),d=function(a){let b=new Set;for(let c of a)!0!==c.readOnly&&c.cwd&&b.add((0,j.Nw)(c.cwd)),!0!==c.readOnly&&c.projectRoot&&b.add((0,j.Nw)(c.projectRoot));return b}(c);try{for(let a of(0,e.readdirSync)((0,f.homedir)()))/^pi-cwd-\d{8}$/.test(a)&&d.add((0,j.Nw)(h().join((0,f.homedir)(),a)))}catch{}for(let a of(0,k.HM)())d.add(a);try{d.add((0,l.qo)((0,i.$M)()))}catch{}return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function q(){return!0}function r(a,b){return!0}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582],()=>b(b.s=75989));module.exports=c})();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/worktrees/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/tmp/pidance-release-build/app/api/worktrees/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=5582,exports.ids=[5582],exports.modules={12039:(a,b,c)=>{"use strict";c.d(b,{B:()=>f});var d=c(31514);function e(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function f(a){if("assistant"!==a.role)return a;let b=a.content;if(!Array.isArray(b))return a;let c=b.map(a=>{let b=function(a){if(!e(a)||"toolCall"!==a.type)return null;let b={type:"toolCall",toolCallId:"string"==typeof a.toolCallId?a.toolCallId:"string"==typeof a.id?a.id:"",toolName:"string"==typeof a.toolName?a.toolName:"string"==typeof a.name?a.name:"",input:"object"!=typeof a.input||null===a.input||Array.isArray(a.input)?"object"!=typeof a.arguments||null===a.arguments||Array.isArray(a.arguments)?{}:a.arguments:a.input};return Array.isArray(a.renderedCallLines)&&a.renderedCallLines.every(a=>"string"==typeof a)&&(b.renderedCallLines=[...a.renderedCallLines]),b}(a);return b||(e(a)&&(0,d.mv)(a.type)?(0,d.Xb)(a):a)});return{...a,content:c}}},13737:(a,b,c)=>{"use strict";c.d(b,{FH:()=>j,Ln:()=>g,PB:()=>k,QT:()=>i,uG:()=>d});let d="pidance.binary",e=/^[a-z0-9][a-z0-9!#$&^_.+-]*\/[a-z0-9][a-z0-9!#$&^_.+-]*$/i;function f(a){let b=a.toLowerCase();return b.startsWith("image/")?"image":b.startsWith("audio/")?"audio":b.startsWith("video/")?"video":"file"}function g(a){if("string"!=typeof a)return null;let b=a.trim().toLowerCase();return e.test(b)?b:null}function h(a){if("string"!=typeof a)return null;let b=a.replace(/[\\/\0]/g,"_").trim();return!b||b.length>180?null:b}function i(a){if(!a||"object"!=typeof a||Array.isArray(a)||"binary"!==a.type||1!==a.version||"string"!=typeof a.path)return null;let b=a.path.trim();if(!b||b.length>4096)return null;let c=h(a.name),d=g(a.mimeType);if(!c||!d||"number"!=typeof a.size||!Number.isSafeInteger(a.size)||a.size<0)return null;let e=a.kind;if("image"!==e&&"audio"!==e&&"video"!==e&&"file"!==e||e!==f(d))return null;let i=void 0===a.previewPath?void 0:"string"==typeof a.previewPath&&a.previewPath.trim().length<=4096?a.previewPath.trim()||void 0:null;if(null===i)return null;let j=void 0===a.messageEntryId?void 0:"string"==typeof a.messageEntryId&&a.messageEntryId.trim()?a.messageEntryId.trim():null;return null===j?null:{type:"binary",version:1,kind:e,path:b,name:c,mimeType:d,size:a.size,...i?{previewPath:i}:{},...j?{messageEntryId:j}:{}}}function j(a,b){let c={role:"custom",customType:d,content:a.name,display:!0,details:a};return void 0!==b&&(c.timestamp=b),c}function k(a,b){let c=g(a.mimeType)??"application/octet-stream",d=h(a.name)??"file",e=a.path.trim(),i=Number.isSafeInteger(a.size)&&a.size>=0?a.size:0,j=a.previewPath?.trim()||void 0;return{type:"binary",version:1,kind:f(c),path:e,name:d,mimeType:c,size:i,...j?{previewPath:j}:{},...b?{messageEntryId:b}:{}}}},13995:(a,b,c)=>{"use strict";let d;c.d(b,{If:()=>o,Jz:()=>l,O:()=>q,iw:()=>m});var e=c(4984),f=c(29021),g=c(79748),h=c(33873),i=c(60396);function j(){return(0,h.join)((0,i.$M)(),"pidance-session-cache.json")}async function k(a){try{let b=await (0,g.stat)(a);return{path:a,mtimeMs:b.mtimeMs,size:b.size}}catch{return null}}async function l(a=(0,h.join)((0,i.$M)(),"sessions")){let b=[];try{b=(await (0,g.readdir)(a,{withFileTypes:!0})).filter(a=>a.isDirectory()).map(b=>(0,h.join)(a,b.name))}catch{return[]}let c=[],d=[];for(let a of b)d.push((async()=>{try{for(let b of(await (0,g.readdir)(a)))b.endsWith(".jsonl")&&c.push((0,h.join)(a,b))}catch{}})());return await Promise.all(d),(await Promise.all(c.map(a=>k(a)))).filter(a=>null!==a)}function m(a=j()){try{let b=(0,f.readFileSync)(a,"utf8"),c=JSON.parse(b);if(!c||2!==c.version||!c.sessions||"object"!=typeof c.sessions)return null;return{version:2,sessions:c.sessions,discovery:c.discovery&&"object"==typeof c.discovery?c.discovery:{}}}catch{return null}}let n=!1;function o(a,b,c=j()){n=!0,d||(d=setTimeout(()=>{if(d=void 0,!n)return;n=!1;let e={version:2,sessions:Object.fromEntries(a),discovery:Object.fromEntries(b)},g=`${c}.tmp`;try{(0,f.writeFileSync)(g,JSON.stringify(e),"utf8"),(0,f.renameSync)(g,c)}catch{try{(0,f.existsSync)(g)&&(0,f.renameSync)(g,c)}catch{}}},1500))}function p(a){return"object"==typeof a&&null!==a&&"string"==typeof a.role&&"content"in a}async function q(a,b){try{let c,d,g=(0,e.createInterface)({input:(0,f.createReadStream)(a,{encoding:"utf8"}),crlfDelay:1/0}),h=null,i=0,j="";for await(let a of g){let b;if(!a.trim())continue;try{b=JSON.parse(a)}catch{continue}if(!h){if("session"!==b.type)return null;h=b;continue}if("session_info"===b.type){let a=b.name;"string"==typeof a&&a.trim()&&(c=a.trim());continue}if("message"!==b.type)continue;i++;let e=function(a){let b=a.message;if(!p(b)||"user"!==b.role)return;let c=b.timestamp;if("number"==typeof c)return c;let d=new Date(a.timestamp??"").getTime();return Number.isNaN(d)?void 0:d}(b);"number"==typeof e&&(d=Math.max(d??0,e));let f=b.message;if(!p(f)||"user"!==f.role&&"assistant"!==f.role)continue;let g=function(a){let b=a.content;return"string"==typeof b?b:Array.isArray(b)?b.filter(a=>!!(a&&"text"===a.type&&"string"==typeof a.text)).map(a=>a.text).join(" "):""}(f);g&&(j||"user"!==f.role||(j=g))}if(!h)return null;let k="string"==typeof h.timestamp?new Date(h.timestamp).getTime():NaN,l=new Date("number"==typeof d&&d>0?d:Number.isNaN(k)?b.mtimeMs:k);return{id:"string"==typeof h.id?h.id:"",cwd:"string"==typeof h.cwd?h.cwd:"",name:c,created:h.timestamp,modified:l.toISOString(),messageCount:i,firstMessage:j||"(no messages)",parentSessionPath:"string"==typeof h.parentSession?h.parentSession:void 0}}catch{return null}}},15461:(a,b,c)=>{"use strict";c.d(b,{OE:()=>d,fc:()=>e,yz:()=>f});let d="pidance.command";function e(a){return{command:"string"==typeof a.command?a.command.trim():"",ok:!1!==a.ok,result:"string"==typeof a.result&&""!==a.result.trim()?a.result.trim():void 0,version:1}}function f(a){return a&&"object"==typeof a?1!==a.version||"string"!=typeof a.command||""===a.command.trim()?null:{command:a.command,ok:!1!==a.ok,result:"string"==typeof a.result?a.result:void 0,version:1}:null}},24923:(a,b,c)=>{"use strict";c.d(b,{IL:()=>p,KI:()=>l,P9:()=>n,l:()=>o});var d=c(79646),e=c(29021),f=c(33873),g=c(28354),h=c(25252);let i=(0,g.promisify)(d.execFile);function j(){globalThis.__piProjectCache?.clear()}async function k(a,b){let{stdout:c}=await i("git",["-C",a,...b],{timeout:1e4,maxBuffer:1048576,env:{...process.env,LC_ALL:"C"}});return c.trim()}async function l(a){let b,c=(globalThis.__piProjectCache||(globalThis.__piProjectCache=new Map),globalThis.__piProjectCache),d=c.get(a);if(d&&d.expiresAt>Date.now())return d.info;try{if(!(0,e.existsSync)(a))return b=function(a){let b=(0,f.dirname)(a);if(!b.endsWith("-worktrees"))return null;let c=b.slice(0,-10);return c&&(0,e.existsSync)((0,f.join)(c,".git"))?{projectRoot:c,branch:(0,f.basename)(a),isWorktree:!0,isTopLevel:!0}:null}(a)??{projectRoot:a,branch:null,isWorktree:!1,isTopLevel:!1},c.set(a,{info:b,expiresAt:Date.now()+6e4}),b;let[d,g,h,i]=(await k(a,["rev-parse","--path-format=absolute","--git-common-dir","--git-dir","--show-toplevel","--abbrev-ref","HEAD"])).split("\n").map(a=>a.trim()),j=a;try{j=(0,e.realpathSync)(a)}catch{}let l=h===j,m=g!==d&&l;b={projectRoot:m?(0,f.dirname)(d):a,branch:i&&"HEAD"!==i?i:null,isWorktree:m,isTopLevel:l}}catch{b={projectRoot:a,branch:null,isWorktree:!1,isTopLevel:!1}}return c.set(a,{info:b,expiresAt:Date.now()+6e4}),b}async function m(a){let b=await k(a,["rev-parse","--path-format=absolute","--git-common-dir"]);return(0,f.dirname)(b)}async function n(a){let b=await k(a,["worktree","list","--porcelain"]),c=[],d=null,f=()=>{d?.path&&!d.prunable&&(0,e.existsSync)(d.path)&&c.push({path:d.path,branch:d.branch??null,isMain:0===c.length}),d=null};for(let a of b.split("\n"))a.startsWith("worktree ")?(f(),d={path:a.slice(9).trim()}):a.startsWith("branch ")&&d?d.branch=a.slice(7).trim().replace(/^refs\/heads\//,""):a.startsWith("prunable")&&d?d.prunable=!0:""===a.trim()&&f();return f(),c}async function o(a,b){let c=b.trim();if(!c)throw Error("Branch name is required");let d=c.replace(/[\/\\:*?"<>|\s]+/g,"-").replace(/^-+|-+$/g,"");if(!d)throw Error(`Invalid branch name: ${b}`);let g=await m(a),i=`${(0,f.resolve)(g)}-worktrees`,l=(0,f.join)(i,d);if((0,e.existsSync)(l))throw Error(`Directory already exists: ${l}`);(0,e.mkdirSync)(i,{recursive:!0});let n=!1;try{await k(g,["rev-parse","--verify","--quiet",`refs/heads/${c}`]),n=!0}catch{n=!1}try{n?await k(g,["worktree","add","--",l,c]):await k(g,["worktree","add","-b",c,"--",l])}catch(a){throw Error(q(a))}return(0,h.wz)(l),j(),{path:l,branch:c}}async function p(a,b,c=!1){let d=(await n(a)).find(a=>a.path===b);if(!d)throw Error(`Not a worktree of this repository: ${b}`);if(d.isMain)throw Error("Cannot remove the main worktree");try{await k(a,["worktree","remove",...c?["--force"]:[],b])}catch(a){throw Error(q(a))}j()}function q(a){let b=a.stderr;return"string"==typeof b&&b.trim()?b.trim():a instanceof Error?a.message:String(a)}},25252:(a,b,c)=>{"use strict";c.d(b,{HM:()=>e,wz:()=>f});var d=c(50593);function e(){return globalThis.__piAdditionalAllowedRoots||(globalThis.__piAdditionalAllowedRoots=new Set),globalThis.__piAdditionalAllowedRoots}function f(a){if(!a)return;let b=(0,d.Nw)(a);e().add(b),globalThis.__piAllowedRootsCache?.roots.add(b)}},31514:(a,b,c)=>{"use strict";function d(a){for(let b of[a.thinking,a.text,a.reasoning])if("string"==typeof b&&b.length>0)return b;return""}function e(a){return"thinking"===a||"reasoning"===a||"redacted_thinking"===a}function f(a){let b={...a,type:"thinking",thinking:d(a)};return!0===a.deferred&&(b.deferred=!0),b}c.d(b,{Ux:()=>d,Xb:()=>f,mv:()=>e})},40402:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{BR:()=>y,CM:()=>D,DK:()=>A,O8:()=>x,Uv:()=>F,Zx:()=>B,dQ:()=>r,eP:()=>z,jK:()=>C,mD:()=>s,os:()=>v,tY:()=>E,u1:()=>w});var e=c(29021),f=c(33873),g=c(15461),h=c(13995),i=c(12039),j=c(85664),k=c(13737),l=c(24923),m=c(50955);c(60396);var n=c(95237),o=c(31514),p=a([n]);async function q(){let a=await (0,h.Jz)(),b=(0,h.iw)(),c=new Map;if(b)for(let[a,d]of Object.entries(b.sessions))c.set(a,d);let d=a.filter(a=>{let b=c.get(a.path);return!b||b.m!==a.mtimeMs||b.s!==a.size}),g=d.length>0,i=new Map;for(let a of(await Promise.all(d.map(async a=>{let b=await (0,h.O)(a.path,a);b&&i.set(a.path,b)})),d)){let b=i.get(a.path);if(!b){c.delete(a.path);continue}c.set(a.path,{m:a.mtimeMs,s:a.size,i:b})}let j=new Set(a.map(a=>a.path)),k=0;for(let a of[...c.keys()])!j.has(a)&&(c.delete(a),k++);k>0&&(g=!0);let n=[...c.entries()].map(([a,b])=>({path:a,...b.i})).filter(a=>!!(a&&a.id)),o=new Map,p=new Map;for(let a of n){let b=(0,f.normalize)(a.path);o.has(b)||p.has(a.id)||(o.set(b,a.id),p.set(a.id,b))}let q=[...new Set(n.map(a=>a.cwd).filter(Boolean))],r=new Map;await Promise.all(q.map(async a=>{r.set(a,await (0,l.KI)(a))}));let s=new Set,t=new Set,u=n.sort((a,b)=>a.modified<b.modified?1:a.modified>b.modified?-1:0).flatMap(a=>{let b=(0,f.normalize)(a.path);if(s.has(b)||t.has(a.id))return[];s.add(b),t.add(a.id),x(a.id,a.path);let c=a.cwd?r.get(a.cwd):void 0;return[{path:a.path,id:a.id,cwd:a.cwd,name:a.name,created:a.created,modified:a.modified,messageCount:a.messageCount,firstMessage:a.firstMessage||"(no messages)",parentSessionId:a.parentSessionPath?o.get((0,f.normalize)(a.parentSessionPath)):void 0,projectRoot:c?.projectRoot??a.cwd,...c?.isWorktree&&c.branch?{worktreeBranch:c.branch}:{}}]}),v=new Map(u.map(a=>[(0,f.normalize)(a.path),a])),w=new Map(u.map(a=>[a.id,a])),y=new Set,z=new Set,A=[],B=new Map;if(b)for(let[a,c]of Object.entries(b.discovery))B.set(a,c);let C=u.map(a=>({parent:a,depth:0}));for(;C.length&&z.size<256;){let a=C.shift();if(!(a.depth>=16))for(let b of function(a,b,c,d){try{let g=(0,e.statSync)(a),h=a.endsWith(".jsonl")?function a(b,c,d){let g;if(d.n<=0)return"";try{g=(0,e.statSync)(b)}catch{return""}if(d.n-=1,!g.isDirectory())return`${g.mtimeMs}:${g.size}`;let h=[];try{h=(0,e.readdirSync)(b)}catch{return`${g.mtimeMs}:${g.size}`}let i=[`${g.mtimeMs}:${g.size}`];if(c<=0){for(let a of h.slice(0,32))i.push(a);return i.join("|")}for(let e of h.slice(0,32))i.push(`${e}=${a((0,f.join)(b,e),c-1,d)}`);return i.join("|")}(a.slice(0,-6),2,{n:96}):"",i=c.get(a);if(i&&i.m===g.mtimeMs&&i.s===g.size&&i.d===h)return i.c;let j=d(a,b);return c.set(a,{m:g.mtimeMs,s:g.size,d:h,c:j}),j}catch{return c.delete(a),[]}}(a.parent.path,a.parent.id,B,(a,b)=>(g=!0,(0,m.ob)(a,b).map(a=>({path:a.path,id:a.header.id,cwd:a.header.cwd,timestamp:a.header.timestamp,parentSessionId:a.parentSessionId,runId:a.runId,runIndex:a.runIndex,...a.agent?{agent:a.agent}:{}}))))){let c=(0,f.normalize)(b.path);if(y.has(c)||z.has(b.id))continue;y.add(c),z.add(b.id);let d=v.get(c),e=w.get(b.id);if(d&&d.id!==b.id||e&&(0,f.normalize)(e.path)!==c)continue;let g=d??e;if(g){g.subagent={parentSessionId:b.parentSessionId,runId:b.runId,runIndex:b.runIndex,...b.agent?{agent:b.agent}:{}},g.readOnly=!0,C.push({parent:g,depth:a.depth+1});continue}s.has(c)||t.has(b.id)||(s.add(c),t.add(b.id),o.set(c,b.id),A.push({child:b}),C.push({parent:{path:b.path,id:b.id,cwd:b.cwd,created:b.timestamp,modified:b.timestamp,messageCount:0,firstMessage:"(no messages)",projectRoot:b.cwd},depth:a.depth+1}))}}let D=await Promise.all(A.map(async({child:a})=>{let b=await (0,l.KI)(a.cwd),c=a.timestamp;try{c=(0,e.statSync)(a.path).mtime.toISOString()}catch{}return x(a.id,a.path),{path:a.path,id:a.id,cwd:a.cwd,created:a.timestamp,modified:c,messageCount:0,firstMessage:"(no messages)",projectRoot:b?.projectRoot??a.cwd,...b?.isWorktree&&b.branch?{worktreeBranch:b.branch}:{},subagent:{parentSessionId:a.parentSessionId,runId:a.runId,runIndex:a.runIndex,...a.agent?{agent:a.agent}:{}},readOnly:!0}}));return g&&(0,h.If)(c,B),[...u,...D]}async function r(){let a=globalThis.__piSessionListGeneration??0;if(globalThis.__piSessionListCache&&Date.now()-globalThis.__piSessionListCache.ts<J)return globalThis.__piSessionListCache.data;if(globalThis.__piSessionListPromise&&globalThis.__piSessionListPromiseGeneration===a)return globalThis.__piSessionListPromise;let b=q().then(b=>((globalThis.__piSessionListGeneration??0)===a&&(globalThis.__piSessionListCache={data:b,ts:Date.now()}),b)).finally(()=>{globalThis.__piSessionListPromise===b&&(globalThis.__piSessionListPromise=void 0,globalThis.__piSessionListPromiseGeneration=void 0)});return globalThis.__piSessionListPromise=b,globalThis.__piSessionListPromiseGeneration=a,b}n=(p.then?(await p)():p)[0];let J=3e4;function s(){globalThis.__piSessionListGeneration=(globalThis.__piSessionListGeneration??0)+1,globalThis.__piSessionListCache=void 0}function t(){return globalThis.__piSessionPathCache||(globalThis.__piSessionPathCache=new Map),globalThis.__piSessionPathCache}function u(){return globalThis.__piPathToSessionIdCache||(globalThis.__piPathToSessionIdCache=new Map),globalThis.__piPathToSessionIdCache}async function v(a){let b=t().get(a);if(b){if((0,e.existsSync)(b))return b;y(a)}await r();let c=t().get(a)??null;return c&&!(0,e.existsSync)(c)?(y(a),null):c}async function w(a){let b=(0,f.normalize)(a),c=u().get(b);return c||(await r(),u().get(b))}function x(a,b){let c=(0,f.normalize)(b),d=t(),e=u(),g=d.get(a),h=e.get(c);g&&g!==c&&e.get(g)===a&&e.delete(g),h&&h!==a&&d.get(h)===c&&d.delete(h),d.set(a,c),e.set(c,a)}function y(a){let b=t(),c=u(),d=b.get(a);b.delete(a),d&&c.get(d)===a&&c.delete(d)}function z(a){let b=(0,e.openSync)(a,"r");try{let a=[],c=0,d=!1;for(;c<65536&&!d;){let f=Buffer.allocUnsafe(Math.min(4096,65536-c)),g=(0,e.readSync)(b,f,0,f.length,c);if(0===g)break;let h=f.subarray(0,g),i=h.indexOf(10);a.push(-1===i?h:h.subarray(0,i)),c+=g,d=-1!==i}if(!d&&c>=65536)return null;let f=Buffer.concat(a).toString("utf8").trimEnd();if(!f)return null;try{let a=JSON.parse(f);return"session"===a.type?a:null}catch{return null}}finally{(0,e.closeSync)(b)}}function A(a){return(0,n.kW)(a).getEntries()}function B(a){let b=a.liveSession;return b?.isAlive()&&b.inner?.sessionManager?b.inner.sessionManager:(a.openFromDisk??(a=>{let b=(0,n.kW)(a);return{getEntries:()=>b.getEntries(),getLeafId:()=>b.getLeafId(),getTree:()=>b.getTree(),getHeader:()=>b.getHeader(),getSessionName:()=>b.getSessionName()}}))(a.filePath)}function C(a,b={}){let c=a.getEntries(),d=D(c,a.getLeafId()),e=function(a){let b=new Set,c=new Set(a),d=new Set,e=[...a];for(;e.length>0;){let a=e.pop();if(!d.has(a))for(let f of(d.add(a),(c.has(a)||1!==a.children.length||"string"==typeof a.label&&a.label.length>0)&&b.add(a),a.children))e.push(f)}let f=(a,b)=>({...a,children:[],...b?.length?{compressedEntryIds:b}:{}}),g=a.map(a=>f(a)),h=a.map((a,b)=>({source:a,projected:g[b],depth:1})),i=(a,c)=>{let d=[{node:a,compressedEntryIds:[]}],e=new Set;for(;d.length>0;){let{node:a,compressedEntryIds:g}=d.pop();if(!e.has(a)){e.add(a),b.has(a)&&c.children.push(f(a,g));for(let c=a.children.length-1;c>=0;c--)d.push({node:a.children[c],compressedEntryIds:b.has(a)?[]:[...g,a.entry.id]})}}};for(;h.length>0;){let{source:a,projected:c,depth:d}=h.pop();for(let e of a.children){let a=e;if(d>=200){i(a,c);continue}let g=[];for(;!b.has(a)&&1===a.children.length;)g.push(a.entry.id),a=a.children[0];if(!b.has(a))continue;let j=f(a,g);c.children.push(j),h.push({source:a,projected:j,depth:d+1})}}return g}(function(a){let b=[],c=[];for(let d=a.length-1;d>=0;d--)c.push({node:a[d],out:b});for(;c.length>0;){let{node:a,out:b}=c.pop();if("label"===a.entry.type){for(let d=a.children.length-1;d>=0;d--)c.push({node:a.children[d],out:b});continue}let d=[];for(let b=a.children.length-1;b>=0;b--)c.push({node:a.children[b],out:d});b.push({...a,children:d})}return b}(a.getTree())),f=F(c,d,b);return{entries:c,leafId:d,tree:e,context:f,header:a.getHeader(),sessionName:a.getSessionName()}}function D(a,b){if(null==b)return null;let c=new Map(a.map(a=>[a.id,a])),d=c.get(b);if(!d)return b;for(;d?.type==="label";){if(!d.parentId)return null;d=c.get(d.parentId)}return d?.id??null}function E(a,b){if(null===b)return[];let c=new Map,d=null;for(let b of a)b?.id&&(c.set(b.id,b),d=b.id);let e=void 0!==b?b:d,f=[],g=new Set;for(;e&&!g.has(e);){g.add(e);let a=c.get(e);if(!a)break;f.unshift(a),e=a.parentId??null}return f}function F(a,b,c={}){let d=E(a,b),e=function(a){let b,c,d;for(let e of a)if("thinking_level_change"===e.type&&"string"==typeof e.thinkingLevel&&(b=e.thinkingLevel),"model_change"===e.type&&e.provider&&e.modelId&&(c={provider:e.provider,modelId:e.modelId,id:e.modelId}),"message"===e.type){let a=e.message;a?.role==="assistant"&&"string"==typeof a.provider&&a.provider&&"string"==typeof a.model&&a.model&&(d={provider:a.provider,modelId:a.model,id:a.model})}return{thinkingLevel:b,model:c??d}}(d),f=E(a,b),h=[],l=[],m=new Map,n="off";for(let a of d)"thinking_level_change"===a.type&&"string"==typeof a.thinkingLevel&&(n=a.thinkingLevel),m.set(a.id,n);for(let a of f){let b=function(a,b){switch(a.type){case"message":{let c=(0,i.B)(a.message);if(b.deferToolResultImages&&(c=function(a){if("toolResult"!==a.role)return a;let b=0,c=0,d=new Set,e=a.content.filter(a=>{let e=function(a){let b,c;if(!H(a)||"image"!==a.type||("string"==typeof a.data?(b=a.data,c="string"==typeof a.mimeType?a.mimeType:void 0):H(a.source)&&"base64"===a.source.type&&"string"==typeof a.source.data&&(b=a.source.data,c="string"==typeof a.source.media_type?a.source.media_type:void 0),!b))return null;let d=b.endsWith("==")?2:+!!b.endsWith("=");return{bytes:Math.max(0,Math.floor(3*b.length/4)-d),mime:c}}(a);return!e||(b+=1,c+=e.bytes,e.mime&&d.add(e.mime),!1)});if(0===b)return a;let f=d.size>0?`: ${[...d].join(", ")}`:"";return e.push({type:"text",text:`[${b} tool result image${1===b?"":"s"} omitted from initial history payload${f}, ~${c} bytes]`}),{...a,content:e}}(c),c=function(a){if("toolResult"!==a.role||!H(a.details))return a;let b=!1,c={};for(let[d,e]of Object.entries(a.details))if(d!==L){if(K.has(d)){b=!0;continue}c[d]=e}return b?{...a,details:{...c,[L]:!0}}:a}(c)),!b.deferThinking||"assistant"!==c.role)return c;return{...c,content:c.content.map(a=>(0,o.mv)(a.type)&&""!==(0,o.Ux)(a).trim()?{...a,thinking:"",deferred:!0}:a)}}case"compaction":return{role:"custom",customType:"compaction",content:a.summary,display:!0,details:{tokensBefore:a.tokensBefore,firstKeptEntryId:a.firstKeptEntryId},timestamp:G(a.timestamp)};case"branch_summary":if(!a.summary)return null;let c=a.usage;return{role:"custom",customType:"branch_summary",content:a.summary,display:!0,details:{fromId:a.fromId,details:a.details,usage:c,fromHook:a.fromHook},timestamp:G(a.timestamp)};case"custom_message":return{role:"custom",customType:a.customType,content:a.content,display:a.display,details:a.details,timestamp:G(a.timestamp)};case"custom":{if(a.customType===k.uG){let b=(0,k.QT)(a.data);if(!b)return null;return(0,k.FH)(b,G(a.timestamp))}if(a.customType===g.OE){let b=(0,g.yz)(a.data);if(!b)return null;return{role:"custom",customType:g.OE,content:b.command,display:!0,details:{ok:b.ok,result:b.result},timestamp:G(a.timestamp)}}if(a.customType!==j.cP)return null;let b=(0,j.p_)(a.data);if(!b)return null;return(0,j.iv)(b,G(a.timestamp))}default:return null}}(a,c);if(b?.role==="custom"&&b.customType===k.uG){let a=(0,k.QT)(b.details),c=a?.messageEntryId?l.indexOf(a.messageEntryId):-1,d=c>=0?h[c]:void 0;if(a&&d?.role==="user"){h[c]={...d,binaryBlocks:[...d.binaryBlocks??[],a]};continue}}b&&(h.push("assistant"===b.role?{...b,thinkingLevel:m.get(a.id)??n}:b),l.push(a.id))}return{messages:c.deferToolResultImages?h.map(I):h,entryIds:l,thinkingLevel:e.thinkingLevel??"off",model:e.model??null}}function G(a){let b=Date.parse(a);return Number.isNaN(b)?void 0:b}function H(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function I(a){return"user"===a.role&&Array.isArray(a.content)&&a.binaryBlocks?.some(a=>"image"===a.kind)?{...a,content:a.content.filter(a=>"image"!==a.type)}:a}let K=new Set(["diff","patch","diffData","readSeekValue"]),L="deferredHeavy";d()}catch(a){d(a)}})},50593:(a,b,c)=>{"use strict";function d(a){try{return decodeURIComponent(a)}catch{return a}}function e(a){return a.replace(/\\/g,"/")}c.d(b,{Nw:()=>e,ex:()=>d})},50955:(a,b,c)=>{"use strict";c.d(b,{ku:()=>o,ob:()=>n,uq:()=>l});var d=c(29021),e=c(33873);let f=/^(?:[0-9a-f]{8}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/i,g=/^run-(\d+)$/,h=/^async-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function i(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function j(a,b){try{let c=(0,d.lstatSync)(a);if(!c.isFile()||c.isSymbolicLink()||!a.endsWith(".jsonl"))return null;let f=(0,d.realpathSync)(a),g=(0,d.realpathSync)(b),h=(0,e.relative)(g,f);if(!h||h.startsWith("..")||h.includes("/../")||h.includes("\\..\\"))return null;let i=g;for(let a of h.split(/[\\/]/))if(i=(0,e.join)(i,a),(0,d.lstatSync)(i).isSymbolicLink())return null;return f}catch{return null}}function k(a){let b=-1;try{b=(0,d.openSync)(a,"r");let c=[],e=0,f=!1;for(;e<65536&&!f;){let a=Buffer.allocUnsafe(Math.min(4096,65536-e)),g=(0,d.readSync)(b,a,0,a.length,e);if(!g)break;let h=a.subarray(0,g),i=h.indexOf(10);c.push(i>=0?h.subarray(0,i):h),e+=g,f=i>=0}if(!f&&e>=65536)return null;let g=Buffer.concat(c).toString("utf8").replace(/\r$/,""),h=JSON.parse(g);if(!i(h)||"session"!==h.type||"string"!=typeof h.id||!h.id||"string"!=typeof h.cwd||"string"!=typeof h.timestamp)return null;return h}catch{return null}finally{b>=0&&(0,d.closeSync)(b)}}function l(a,b,c){let f=0;for(let g of[...a].sort((a,b)=>b.path.length-a.path.length))try{if(!function(a,b,c){try{return j(a,b)===(0,d.realpathSync)(a)&&k(a)?.id===c}catch{return!1}}(g.path,b,g.header.id)){f++;continue}let a=(0,d.realpathSync)(g.path),h=(0,d.realpathSync)(b),i=(0,e.relative)(h,a);if(!i||i.startsWith("..")||i.includes("/../")||i.includes("\\..\\")){f++;continue}(0,d.unlinkSync)(g.path),c(g.header.id);let l=(0,e.dirname)(g.path);for(let a=0;a<4;a++){try{let a=(0,d.lstatSync)(l);if(!a.isDirectory()||a.isSymbolicLink())break;(0,d.rmdirSync)(l)}catch{break}l=(0,e.dirname)(l)}}catch{f++}return f}function m(a,b,c){let d;try{d=JSON.parse(a)}catch{return}if(!i(d)||"message"!==d.type||!i(d.message)||"toolResult"!==d.message.role||"subagent"!==d.message.toolName||!i(d.message.details)||!Array.isArray(d.message.details.results))return;let e=d.message.details,f=e.results,g="string"==typeof e.runId?e.runId:void 0;for(let a of f){if(!i(a))continue;let d="string"==typeof a.agent?a.agent:"string"==typeof e.agent?e.agent:void 0;g&&d&&c.set(g,d),"string"==typeof a.sessionFile&&b.push({path:a.sessionFile,runId:g,agent:d})}}function n(a,b){let c=a.endsWith(".jsonl")?a.slice(0,-6):"";if(!c)return[];let i=new Set,l=new Set,n=[],o=function(a){let b=[],c=new Map,e=-1;try{e=(0,d.openSync)(a,"r");let f="",g=0;for(;g<2097152&&b.length<512;){let a=Buffer.allocUnsafe(Math.min(65536,2097152-g)),h=(0,d.readSync)(e,a,0,a.length,g);if(!h)break;g+=h;let i=(f+=a.subarray(0,h).toString("utf8")).split(/\r?\n/);for(let a of(f=i.pop()??"",i))if(!(a.length>131072)&&(m(a,b,c),b.length>=512))break}f.length<=131072&&b.length<512&&m(f,b,c)}catch{}finally{e>=0&&(0,d.closeSync)(e)}return{candidates:b,agents:c}}(a);for(let m of[...o.candidates,...(function(a){let b=a.endsWith(".jsonl")?a.slice(0,-6):"",c=[];if(!b)return c;try{for(let a of(0,d.readdirSync)(b,{withFileTypes:!0})){if(!a.isDirectory()||a.isSymbolicLink()||!f.test(a.name))continue;let h=(0,e.join)(b,a.name);for(let a of(0,d.readdirSync)(h,{withFileTypes:!0}))if(!(!a.isDirectory()||a.isSymbolicLink())&&g.test(a.name)&&(c.push((0,e.join)(h,a.name,"session.jsonl")),c.length>=2048))return c}for(let a of(0,d.readdirSync)(b,{withFileTypes:!0})){if(!a.isDirectory()||a.isSymbolicLink()||!h.test(a.name))continue;let f=(0,e.join)(b,a.name);for(let a of(0,d.readdirSync)(f,{withFileTypes:!0}).filter(a=>a.isFile()&&!a.isSymbolicLink()&&a.name.endsWith(".jsonl")).map(a=>a.name).sort())if(c.push((0,e.join)(f,a)),c.length>=2048)return c}}catch{}return c})(a).map(a=>({path:a}))]){if(n.length>=256)break;let a=j((0,e.resolve)(m.path),c);if(!a||!function(a,b){let c=(0,e.relative)((0,e.resolve)(b),(0,e.resolve)(a)).split(/[\\/]/);return!!(3===c.length&&f.test(c[0])&&g.test(c[1]))&&"session.jsonl"===c[2]||2===c.length&&h.test(c[0])&&c[1].endsWith(".jsonl")}(a,c)||i.has(a))continue;let d=(0,e.relative)((0,e.resolve)(c),(0,e.resolve)(a)).split(/[\\/]/),p=2===d.length&&h.test(d[0]),q=p?0:function(a){let b=g.exec((0,e.basename)((0,e.dirname)(a)));return b?Number(b[1]):null}(a);if(null===q||q<0)continue;let r=k(a);if(!r||l.has(r.id)||r.id===b)continue;let s=p?d[0].slice(6):m.runId??(0,e.basename)((0,e.dirname)((0,e.dirname)(a)));i.add(a),l.add(r.id),n.push({path:a,header:r,runIndex:q,parentSessionId:b,runId:s,agent:m.agent??o.agents.get(s)})}return n}function o(a,b){let c=[],d=new Set([(0,e.resolve)(a)]),f=new Set([b]),g=[{file:a,id:b,depth:0}];for(;g.length&&c.length<256;){let a=g.shift();if(!(a.depth>=16))for(let b of n(a.file,a.id))d.has(b.path)||f.has(b.header.id)||(d.add(b.path),f.add(b.header.id),c.push(b),g.push({file:b.path,id:b.header.id,depth:a.depth+1}))}return c}},60396:(a,b,c)=>{"use strict";c.d(b,{$M:()=>f,CZ:()=>h,Mc:()=>g,pA:()=>i});var d=c(62228),e=c(86697);function f(a=process.env){let b=a.PI_CODING_AGENT_DIR?.trim();if(b)return"~"===b?(0,d.homedir)():b.startsWith("~/")||b.startsWith("~\\")?(0,e.join)((0,d.homedir)(),b.slice(2)):b;return(0,e.join)((0,d.homedir)(),".pi","agent")}function g(a=process.env){return(0,e.join)(f(a),"models.json")}function h(a=process.env){return(0,e.join)(f(a),"auth.json")}function i(a=process.env){return(0,e.join)(f(a),"settings.json")}},65107:(a,b,c)=>{"use strict";c.d(b,{$9:()=>j,R3:()=>i,ek:()=>h});var d=c(89477),e=c(86697),f=c(716);function g(a){return`${a}.leaf.json`}function h(a){let b=g(a);if(!(0,d.existsSync)(b))return null;try{let a=JSON.parse((0,d.readFileSync)(b,"utf8"));if(!a||"object"!=typeof a)return null;let c=a.leafId;return"string"==typeof c&&c?c:null}catch{return null}}function i(a,b){let c=g(a),h=(0,e.dirname)(c);(0,d.existsSync)(h)||(0,d.mkdirSync)(h,{recursive:!0});let i=JSON.stringify({version:1,leafId:b},null,2),j=(0,e.join)(h,`.leaf-${process.pid}-${(0,f.randomUUID)()}.tmp`);try{(0,d.writeFileSync)(j,i,{encoding:"utf8",flag:"wx"}),(0,d.renameSync)(j,c)}catch(a){try{(0,d.existsSync)(j)&&(0,d.unlinkSync)(j)}catch{}throw a}}function j(a){try{let b=g(a);(0,d.existsSync)(b)&&(0,d.unlinkSync)(b)}catch{}}},78335:()=>{},85664:(a,b,c)=>{"use strict";c.d(b,{cP:()=>d,iv:()=>l,l$:()=>j,o7:()=>m,p_:()=>k,qF:()=>n});let d="pidance.activity",e=["result","warning","error","output"];class f extends Error{constructor(a){super(a),this.name="SessionActivityError"}}function g(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function h(a){return Buffer.byteLength(a,"utf8")}function i(a,b,c){if(void 0===a)return;if("string"!=typeof a)throw new f(`${b} must be a string`);let d=a.trim();if(""!==d){if(d.length>c)throw new f(`${b} exceeds maximum length ${c}`);return d}}function j(a){var b;let c,d;if(!g(a))throw new f("activity must be a plain object");let j=void 0===a.version?1:a.version;if(1!==j)throw new f(`unsupported activity version: ${String(j)}`);if(!("string"==typeof(b=a.kind)&&e.includes(b)))throw new f(`kind must be one of: ${e.join(", ")}`);if("string"!=typeof a.title)throw new f("title must be a string");let k=a.title.trim();if(""===k)throw new f("title is required");if(k.length>200)throw new f("title exceeds maximum length 200");if("string"!=typeof a.content)throw new f("content must be a string");let l=a.content.trim();if(l.length>32768)throw new f("content exceeds maximum length 32768");let m=i(a.source,"source",200),n=i(a.requestId,"requestId",200);if(void 0!==a.metadata){if(!g(a.metadata))throw new f("metadata must be a plain object");let b=function a(b,c,d){if(null===b)return null;if("string"==typeof b){if(h(b)>1024)throw new f("metadata string exceeds 1024 bytes");return b}if("number"==typeof b){if(!Number.isFinite(b))throw new f("metadata number must be finite");return b}if("boolean"==typeof b)return b;if("bigint"==typeof b||"function"==typeof b||"symbol"==typeof b||void 0===b||"object"!=typeof b)throw new f("metadata contains non-JSON value");if(d.has(b))throw new f("metadata contains circular reference");if(c>3)throw new f("metadata exceeds max depth 3");if(Array.isArray(b)){if(b.length>32)throw new f("metadata array exceeds 32 items");d.add(b);try{return b.map(b=>a(b,c+1,d))}finally{d.delete(b)}}let e=Object.getPrototypeOf(b);if(e!==Object.prototype&&null!==e)throw new f("metadata must be a plain JSON object or array");let g=Object.keys(b);if(g.length>20)throw new f("metadata exceeds 20 keys");d.add(b);try{let e=Object.create(null);for(let i of g){if("__proto__"===i||"constructor"===i||"prototype"===i)throw new f("metadata key is not allowed");if(h(i)>64)throw new f("metadata key exceeds 64 bytes");e[i]=a(b[i],c+1,d)}return e}finally{d.delete(b)}}(a.metadata,0,new WeakSet);if(!g(b)||Array.isArray(b))throw new f("metadata must be a plain object");0===Object.keys(c=b).length&&(c=void 0)}let o={version:1,kind:a.kind,title:k,content:l};void 0!==m&&(o.source=m),void 0!==n&&(o.requestId=n),void 0!==c&&(o.metadata=c);try{d=JSON.stringify(o)}catch{throw new f("activity is not JSON-serializable")}if(h(d)>48e3)throw new f("activity exceeds maximum serialized size 48000 bytes");return o}function k(a){try{return j(a)}catch{return null}}function l(a,b){let c={role:"custom",customType:d,content:a.title,display:!0,details:a};return void 0!==b&&(c.timestamp=b),c}function m(a){return"custom"===a.type&&a.customType===d&&null!==k(a.data)}function n(a){if("customType"in a&&void 0!==a.customType)throw new f("customType is not allowed on append_activity");let b=a.activity;if(void 0!==b){if(!g(b))throw new f("activity must be a plain object");if("customType"in b&&void 0!==b.customType)throw new f("customType is not allowed on append_activity");return j(b)}let c={...a};return delete c.type,j(c)}},95237:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{G1:()=>k,Qu:()=>l,i5:()=>n,iR:()=>e.CURRENT_SESSION_VERSION,kW:()=>m,kb:()=>j});var e=c(75430),f=c(89477),g=c(65107),h=a([e]);function i(a){let b="function"!=typeof a._rewriteFile?null:{rewriteFile:()=>a._rewriteFile.call(a),markFlushed:()=>{a.flushed=!0}};if(!b)throw Error("Pi SDK 未提供会话文件写入入口(_rewriteFile / flushed)。请检查 @earendil-works/pi-coding-agent 版本(当前基线 0.85.1)与 pi-session-io 适配层。");return b}function j(a){let b=a.getSessionFile();if(!b)return;let c=i(a);(0,f.existsSync)(b)||c.rewriteFile(),(0,f.existsSync)(b)&&c.markFlushed()}function k(a,b){let c=e.SessionManager.open(a,b),d=(0,g.ek)(a);if(d&&c.getEntry(d)){if(c.getLeafId()!==d)try{c.branch(d)}catch{(0,g.$9)(a)}}else d&&(0,g.$9)(a);return c}function l(a,b){return e.SessionManager.create(a,b)}function m(a,b){var c;return c=k(a,b),{getEntries:()=>c.getEntries(),getLeafId:()=>c.getLeafId(),getTree:()=>c.getTree(),getHeader:()=>c.getHeader(),getSessionName:()=>c.getSessionName(),getSessionId:()=>c.getSessionId(),getSessionFile:()=>c.getSessionFile(),getCwd:()=>c.getCwd(),getEntry:a=>c.getEntry(a),getBranch:a=>void 0===a?c.getBranch():c.getBranch(a),buildSessionContext:()=>c.buildSessionContext(),appendSessionInfo:a=>c.appendSessionInfo(a),appendCustomEntry:(a,b)=>c.appendCustomEntry(a,b),appendModelChange:(a,b)=>c.appendModelChange(a,b),branch:a=>c.branch(a),createBranchedSession:a=>c.createBranchedSession(a),getSessionDir:()=>c.getSessionDir(),getLastEntryId:()=>(function(a){let b=a.getEntries();for(let a=b.length-1;a>=0;a--){let c=b[a];if(c&&"object"==typeof c&&"id"in c&&"string"==typeof c.id)return c.id}return null})(c)}}function n(a,b){let c=k(a),d=c.getHeader();if(!d||"session"!==d.type)return;b?d.parentSession=b:delete d.parentSession;let e=i(c);e.rewriteFile(),(0,f.existsSync)(a)&&e.markFlushed()}e=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},96487:()=>{}};
|