cuelo 0.8.3 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +9 -6
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.js +5 -3
- package/.next/required-server-files.json +5 -3
- package/.next/routes-manifest.json +20 -0
- 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/agent/[id]/account/route.js +1 -1
- package/.next/server/app/api/agent/[id]/account/route.js.nft.json +1 -1
- package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
- package/.next/server/app/api/agent/[id]/bash-output/route.js.nft.json +1 -1
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -1
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent/running/route.js.nft.json +1 -1
- package/.next/server/app/api/attachment-settings/route.js +1 -0
- package/.next/server/app/api/attachment-settings/route.js.nft.json +1 -0
- package/.next/server/app/api/attachment-settings/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/attachments/[id]/transcription/route.js +2 -0
- package/.next/server/app/api/attachments/[id]/transcription/route.js.nft.json +1 -0
- package/.next/server/app/api/attachments/[id]/transcription/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/attachments/draft/route.js +1 -0
- package/.next/server/app/api/attachments/draft/route.js.nft.json +1 -0
- package/.next/server/app/api/attachments/draft/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/attachments/route.js +28 -5
- package/.next/server/app/api/attachments/route.js.nft.json +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/cwd/browse/route.js +1 -1
- package/.next/server/app/api/cwd/validate/route.js +1 -1
- package/.next/server/app/api/cwd/validate/route.js.nft.json +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js.nft.json +1 -1
- package/.next/server/app/api/display-settings/route.js +1 -1
- package/.next/server/app/api/display-settings/route.js.nft.json +1 -1
- package/.next/server/app/api/document-text/route.js +4 -4
- package/.next/server/app/api/experiments/route.js +1 -1
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/file-index/route.js.nft.json +1 -1
- package/.next/server/app/api/files/[...path]/route.js +2 -2
- package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/git/diff/route.js +2 -2
- package/.next/server/app/api/git/diff/route.js.nft.json +1 -1
- package/.next/server/app/api/git/status/route.js +2 -2
- package/.next/server/app/api/git/status/route.js.nft.json +1 -1
- package/.next/server/app/api/gpt6/handles/route.js +1 -1
- package/.next/server/app/api/gpt6/handles/route.js.nft.json +1 -1
- package/.next/server/app/api/gpt6/reply/route.js +1 -1
- package/.next/server/app/api/gpt6/reply/route.js.nft.json +1 -1
- package/.next/server/app/api/gpt6/token/route.js +1 -1
- package/.next/server/app/api/gpt6/token/route.js.nft.json +1 -1
- package/.next/server/app/api/gpt6/web6-session/route.js +1 -1
- package/.next/server/app/api/gpt6/web6-session/route.js.nft.json +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/live/call/[callId]/route.js +1 -1
- package/.next/server/app/api/live/call/[callId]/route.js.nft.json +1 -1
- package/.next/server/app/api/live/character-voice/route.js +1 -1
- package/.next/server/app/api/live/character-voice/route.js.nft.json +1 -1
- package/.next/server/app/api/live/events/route.js +2 -2
- package/.next/server/app/api/live/events/route.js.nft.json +1 -1
- package/.next/server/app/api/live/offer/route.js +1 -1
- package/.next/server/app/api/live/offer/route.js.nft.json +1 -1
- package/.next/server/app/api/live/voices/route.js +1 -1
- package/.next/server/app/api/live/voices/route.js.nft.json +1 -1
- package/.next/server/app/api/lounge/events/route.js +2 -2
- package/.next/server/app/api/lounge/events/route.js.nft.json +1 -1
- package/.next/server/app/api/lounge/route.js +1 -1
- package/.next/server/app/api/lounge/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +2 -2
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/model-roles/route.js +1 -1
- package/.next/server/app/api/model-roles/route.js.nft.json +1 -1
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models/route.js.nft.json +1 -1
- package/.next/server/app/api/models-config/catalog/route.js +1 -1
- package/.next/server/app/api/models-config/discover/route.js +1 -1
- package/.next/server/app/api/models-config/route.js +4 -4
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/office-avatars/[id]/route.js +1 -1
- package/.next/server/app/api/office-avatars/route.js +1 -1
- package/.next/server/app/api/plugins/route.js +1 -1
- package/.next/server/app/api/plugins/route.js.nft.json +1 -1
- package/.next/server/app/api/project-trust/route.js +1 -1
- package/.next/server/app/api/project-trust/route.js.nft.json +1 -1
- package/.next/server/app/api/projects/route.js +1 -1
- package/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/server/app/api/runs/[runId]/route.js +1 -1
- package/.next/server/app/api/runs/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/state/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/search/route.js +1 -1
- package/.next/server/app/api/sessions/search/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js +1 -1
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/install/route.js +2 -2
- package/.next/server/app/api/skills/install/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route.js +2 -2
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js.nft.json +1 -1
- package/.next/server/app/api/theme/route.js +1 -1
- package/.next/server/app/api/theme/route.js.nft.json +1 -1
- package/.next/server/app/api/tool-image/route.js +1 -1
- package/.next/server/app/api/tool-image/route.js.nft.json +1 -1
- package/.next/server/app/api/update-maintenance/route.js +3 -3
- package/.next/server/app/api/update-maintenance/route.js.nft.json +1 -1
- package/.next/server/app/api/updates/route.js +1 -1
- package/.next/server/app/api/web-access/recovery/route.js +1 -1
- package/.next/server/app/api/web-access/route.js +1 -1
- package/.next/server/app/api/web6/consults/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/favicon.ico/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/manifest.webmanifest/route.js +2 -2
- package/.next/server/app/office/page.js +2 -2
- package/.next/server/app/office/page_client-reference-manifest.js +1 -1
- package/.next/server/app/office-preview/page.js +2 -2
- package/.next/server/app/office-preview/page_client-reference-manifest.js +1 -1
- package/.next/server/app/office-preview.html +1 -1
- package/.next/server/app/office-preview.rsc +3 -3
- package/.next/server/app/office-preview.segments/_full.segment.rsc +3 -3
- package/.next/server/app/office-preview.segments/_head.segment.rsc +1 -1
- package/.next/server/app/office-preview.segments/_index.segment.rsc +3 -3
- package/.next/server/app/office-preview.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/office-preview.segments/office-preview/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/office-preview.segments/office-preview.segment.rsc +1 -1
- package/.next/server/app/office.html +1 -1
- package/.next/server/app/office.rsc +5 -5
- package/.next/server/app/office.segments/_full.segment.rsc +5 -5
- package/.next/server/app/office.segments/_head.segment.rsc +1 -1
- package/.next/server/app/office.segments/_index.segment.rsc +3 -3
- package/.next/server/app/office.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/office.segments/office/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/office.segments/office.segment.rsc +1 -1
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recover/page.js +2 -2
- package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recover.html +1 -1
- package/.next/server/app/recover.rsc +3 -3
- package/.next/server/app/recover.segments/_full.segment.rsc +3 -3
- package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
- package/.next/server/app/recover.segments/_index.segment.rsc +3 -3
- package/.next/server/app/recover.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
- package/.next/server/app-paths-manifest.json +9 -6
- package/.next/server/chunks/1517.js +1 -1
- package/.next/server/chunks/2651.js +1 -1
- package/.next/server/chunks/4649.js +1 -1
- package/.next/server/chunks/5270.js +8 -0
- package/.next/server/chunks/5489.js +14 -14
- package/.next/server/chunks/5582.js +6 -6
- package/.next/server/chunks/7121.js +4 -0
- package/.next/server/chunks/7362.js +1 -1
- package/.next/server/chunks/8741.js +1 -0
- package/.next/server/chunks/877.js +1 -1
- package/.next/server/functions-config-manifest.json +9 -2
- package/.next/server/instrumentation.js +1 -0
- package/.next/server/instrumentation.js.nft.json +1 -0
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware.js +4 -4
- 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/A-KXZPM3YkTqPPzKrND64/_buildManifest.js +1 -0
- package/.next/static/chunks/6110-691c0f77641fc07e.js +1 -0
- package/.next/static/chunks/9575-916cd5a97ceda30f.js +22 -0
- package/.next/static/chunks/app/_global-error/page-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/account/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/bash-output/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/events/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/attachment-settings/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/attachments/[id]/transcription/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/attachments/draft/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/attachments/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/cwd/browse/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/cwd/validate/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/display-settings/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/document-text/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/experiments/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/git/diff/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/git/status/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/gpt6/handles/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/gpt6/reply/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/gpt6/token/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/gpt6/web6-session/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/home/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/live/call/[callId]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/live/character-voice/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/live/events/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/live/offer/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/live/voices/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/lounge/events/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/lounge/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/mcp/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/model-roles/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/models/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/models-config/catalog/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/office-avatars/[id]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/office-avatars/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/project-trust/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/projects/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/runs/[runId]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/runs/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/state/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sessions/search/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/settings/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/skills/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/theme/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/tool-image/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/update-maintenance/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/updates/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/web-access/recovery/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/web-access/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/web6/consults/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/app/{layout-427af3ea4f595064.js → layout-eb09a412f4f55812.js} +1 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/{main-2603b128da53b28c.js → main-26b32c580fb6231f.js} +3 -3
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-6b1496af498bb4fd.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6b1496af498bb4fd.js +1 -0
- package/.next/static/css/81a05eb6255ef12e.css +1 -0
- package/.next/trace +107 -107
- package/.next/trace-build +1 -1
- package/.next/types/app/api/attachment-settings/route.ts +351 -0
- package/.next/types/app/api/attachments/[id]/transcription/route.ts +351 -0
- package/.next/types/app/api/attachments/draft/route.ts +351 -0
- package/.next/types/routes.d.ts +4 -1
- package/.next/types/validator.ts +27 -0
- package/README.md +5 -2
- package/Tools/CUELO_Setup/files/native-runtime-patch.js +3 -3
- package/Tools/CUELO_Setup/files/usage-server.js +56 -3
- package/Tools/OMP_Global_Config/agent/AGENTS.md +2 -0
- package/Tools/OMP_Global_Config/agent/agents/maker.md +3 -1
- package/Tools/OMP_Global_Config/agent/prompt-copies/AGENTS.en.md +3 -1
- package/Tools/OMP_Global_Config/agent/rules/omp-harness.md +5 -0
- package/Tools/OMP_Global_Config/agent/rules/subagent.md +15 -0
- package/Tools/OMP_Global_Config/agent/sop/_writer.md +2 -0
- package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +296 -0
- package/next.config.ts +1 -0
- package/package.json +10 -7
- package/.next/static/A6e8vaM_XsMnaMJbdHUo9/_buildManifest.js +0 -1
- package/.next/static/chunks/6110-46b1b16915b39e5b.js +0 -1
- package/.next/static/chunks/9575-7c8d686e116aef58.js +0 -22
- package/.next/static/chunks/app/_global-error/page-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/account/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/bash-output/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/events/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/agent/new/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/attachments/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/cwd/browse/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/cwd/validate/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/display-settings/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/document-text/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/experiments/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/git/diff/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/git/status/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/gpt6/handles/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/gpt6/reply/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/gpt6/token/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/gpt6/web6-session/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/home/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/live/call/[callId]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/live/character-voice/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/live/events/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/live/offer/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/live/voices/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/lounge/events/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/lounge/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/mcp/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/model-roles/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/models/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/models-config/catalog/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/models-config/discover/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/office-avatars/[id]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/office-avatars/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/project-trust/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/projects/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/runs/[runId]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/runs/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/state/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sessions/search/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/settings/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/skills/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/theme/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/tool-image/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/update-maintenance/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/updates/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/web-access/recovery/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/web-access/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/web6/consults/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-b73c548944bb1320.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-b73c548944bb1320.js +0 -1
- package/.next/static/css/67b6e19482963224.css +0 -1
- /package/.next/static/{A6e8vaM_XsMnaMJbdHUo9 → A-KXZPM3YkTqPPzKrND64}/_ssgManifest.js +0 -0
|
@@ -23,10 +23,13 @@
|
|
|
23
23
|
"/favicon.ico/route": "app/favicon.ico/route.js",
|
|
24
24
|
"/manifest.webmanifest/route": "app/manifest.webmanifest/route.js",
|
|
25
25
|
"/api/agent/running/route": "app/api/agent/running/route.js",
|
|
26
|
-
"/api/attachments/route": "app/api/attachments/route.js",
|
|
27
|
-
"/api/auth/all-providers/route": "app/api/auth/all-providers/route.js",
|
|
28
26
|
"/api/agent/[id]/events/route": "app/api/agent/[id]/events/route.js",
|
|
27
|
+
"/api/attachment-settings/route": "app/api/attachment-settings/route.js",
|
|
29
28
|
"/api/agent/new/route": "app/api/agent/new/route.js",
|
|
29
|
+
"/api/attachments/[id]/transcription/route": "app/api/attachments/[id]/transcription/route.js",
|
|
30
|
+
"/api/attachments/draft/route": "app/api/attachments/draft/route.js",
|
|
31
|
+
"/api/attachments/route": "app/api/attachments/route.js",
|
|
32
|
+
"/api/auth/all-providers/route": "app/api/auth/all-providers/route.js",
|
|
30
33
|
"/api/auth/api-key/[provider]/route": "app/api/auth/api-key/[provider]/route.js",
|
|
31
34
|
"/api/auth/logout/[provider]/route": "app/api/auth/logout/[provider]/route.js",
|
|
32
35
|
"/api/auth/providers/route": "app/api/auth/providers/route.js",
|
|
@@ -50,25 +53,25 @@
|
|
|
50
53
|
"/api/models-config/discover/route": "app/api/models-config/discover/route.js",
|
|
51
54
|
"/api/models-config/route": "app/api/models-config/route.js",
|
|
52
55
|
"/api/mcp/route": "app/api/mcp/route.js",
|
|
53
|
-
"/api/office-avatars/[id]/route": "app/api/office-avatars/[id]/route.js",
|
|
54
56
|
"/api/models-config/test/route": "app/api/models-config/test/route.js",
|
|
57
|
+
"/api/office-avatars/[id]/route": "app/api/office-avatars/[id]/route.js",
|
|
55
58
|
"/api/models/route": "app/api/models/route.js",
|
|
56
59
|
"/api/office-avatars/route": "app/api/office-avatars/route.js",
|
|
57
60
|
"/api/project-trust/route": "app/api/project-trust/route.js",
|
|
58
61
|
"/api/runs/[runId]/route": "app/api/runs/[runId]/route.js",
|
|
59
|
-
"/api/plugins/route": "app/api/plugins/route.js",
|
|
60
62
|
"/api/runs/route": "app/api/runs/route.js",
|
|
63
|
+
"/api/plugins/route": "app/api/plugins/route.js",
|
|
61
64
|
"/api/sessions/[id]/export/route": "app/api/sessions/[id]/export/route.js",
|
|
62
65
|
"/api/sessions/route": "app/api/sessions/route.js",
|
|
63
66
|
"/api/sessions/search/route": "app/api/sessions/search/route.js",
|
|
64
67
|
"/api/sidecars/[service]/[...path]/route": "app/api/sidecars/[service]/[...path]/route.js",
|
|
65
68
|
"/api/skills/check/route": "app/api/skills/check/route.js",
|
|
66
|
-
"/api/skills/install/route": "app/api/skills/install/route.js",
|
|
67
69
|
"/api/settings/route": "app/api/settings/route.js",
|
|
70
|
+
"/api/skills/install/route": "app/api/skills/install/route.js",
|
|
68
71
|
"/api/skills/route": "app/api/skills/route.js",
|
|
69
72
|
"/api/theme/route": "app/api/theme/route.js",
|
|
70
|
-
"/api/skills/search/route": "app/api/skills/search/route.js",
|
|
71
73
|
"/api/skills/update/route": "app/api/skills/update/route.js",
|
|
74
|
+
"/api/skills/search/route": "app/api/skills/search/route.js",
|
|
72
75
|
"/api/updates/route": "app/api/updates/route.js",
|
|
73
76
|
"/api/update-maintenance/route": "app/api/update-maintenance/route.js",
|
|
74
77
|
"/api/web-access/route": "app/api/web-access/route.js",
|
|
@@ -16,4 +16,4 @@ exports.id=1517,exports.ids=[1517],exports.modules={14362:(a,b,c)=>{"use strict"
|
|
|
16
16
|
FROM user_messages u LEFT JOIN messages m ON m.session_file = u.session_file
|
|
17
17
|
WHERE u.folder = ? GROUP BY u.session_file ORDER BY MAX(m.timestamp) DESC`).all(a):e.query(`SELECT u.session_file AS session_file
|
|
18
18
|
FROM user_messages u LEFT JOIN messages m ON m.session_file = u.session_file
|
|
19
|
-
GROUP BY u.session_file ORDER BY MAX(m.timestamp) DESC`).all()).map(a=>a.session_file).filter(a=>F.test(a)).slice(0,d),g=new Map,h=0,i=0;for(let a of f){let b=a.split(/[\\/]/).pop()??a,d=b.endsWith(".jsonl")?b.slice(0,-6).split("_").slice(1).join("_"):"",f=w(t(e,d,a)),j=!1;for(let a of f){if("attributed"===c&&(0===a.roles.length||a.roles.some(a=>"unattributed"===a.kind))){i+=1;continue}j=!0;let b=g.get(a.configSignature);if(b)b.runs.push(a);else{let b=m(a.roles.map(a=>({kind:a.kind,models:a.models,efforts:a.efforts})));g.set(a.configSignature,{roles:b.roles,runs:[a]})}}j&&(h+=1)}let j=[...g.entries()].map(([a,b])=>{let c=b.runs,d=c.map(a=>a.wallClockMs),e=c.map(a=>a.busyMs),f=c.map(a=>a.totalTokens),g=c.map(a=>a.estimatedCostUsd),h=c.map(a=>a.startedAt);return{signature:a,roles:b.roles,runCount:c.length,medianWallClockMs:n(d),medianBusyMs:n(e),medianTotalTokens:n(f),medianEstimatedCostUsd:n(g),totalEstimatedCostUsd:g.reduce((a,b)=>a+b,0),unpricedRuns:c.filter(a=>a.unpricedRequests>0).length,untimedRuns:c.filter(a=>a.roles.some(a=>a.untimedRequests>0)).length,reworkRuns:c.filter(a=>a.roles.some(a=>"rework"===a.purpose)).length,errorRuns:c.filter(a=>"error"===a.outcome).length,childRunsAvg:c.reduce((a,b)=>a+b.childCount,0)/c.length,firstSeenAt:Math.min(...h),lastSeenAt:Math.max(...h)}});j.sort((a,b)=>b.runCount-a.runCount||b.lastSeenAt-a.lastSeenAt);let k=[...g.values()].flatMap(a=>a.runs);return{folder:a,folders:b,scope:c,configs:j,runCount:k.length,sessionCount:h,excludedRunCount:i,unmeasured:y(k)}}finally{e.close()}}d()}catch(a){d(a)}})},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>
|
|
19
|
+
GROUP BY u.session_file ORDER BY MAX(m.timestamp) DESC`).all()).map(a=>a.session_file).filter(a=>F.test(a)).slice(0,d),g=new Map,h=0,i=0;for(let a of f){let b=a.split(/[\\/]/).pop()??a,d=b.endsWith(".jsonl")?b.slice(0,-6).split("_").slice(1).join("_"):"",f=w(t(e,d,a)),j=!1;for(let a of f){if("attributed"===c&&(0===a.roles.length||a.roles.some(a=>"unattributed"===a.kind))){i+=1;continue}j=!0;let b=g.get(a.configSignature);if(b)b.runs.push(a);else{let b=m(a.roles.map(a=>({kind:a.kind,models:a.models,efforts:a.efforts})));g.set(a.configSignature,{roles:b.roles,runs:[a]})}}j&&(h+=1)}let j=[...g.entries()].map(([a,b])=>{let c=b.runs,d=c.map(a=>a.wallClockMs),e=c.map(a=>a.busyMs),f=c.map(a=>a.totalTokens),g=c.map(a=>a.estimatedCostUsd),h=c.map(a=>a.startedAt);return{signature:a,roles:b.roles,runCount:c.length,medianWallClockMs:n(d),medianBusyMs:n(e),medianTotalTokens:n(f),medianEstimatedCostUsd:n(g),totalEstimatedCostUsd:g.reduce((a,b)=>a+b,0),unpricedRuns:c.filter(a=>a.unpricedRequests>0).length,untimedRuns:c.filter(a=>a.roles.some(a=>a.untimedRequests>0)).length,reworkRuns:c.filter(a=>a.roles.some(a=>"rework"===a.purpose)).length,errorRuns:c.filter(a=>"error"===a.outcome).length,childRunsAvg:c.reduce((a,b)=>a+b.childCount,0)/c.length,firstSeenAt:Math.min(...h),lastSeenAt:Math.max(...h)}});j.sort((a,b)=>b.runCount-a.runCount||b.lastSeenAt-a.lastSeenAt);let k=[...g.values()].flatMap(a=>a.runs);return{folder:a,folders:b,scope:c,configs:j,runCount:k.length,sessionCount:h,excludedRunCount:i,unmeasured:y(k)}}finally{e.close()}}d()}catch(a){d(a)}})},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>k,EN:()=>j,e9:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}function j(a,b=g()){return!!i(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function k(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},78335:()=>{},96487:()=>{}};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";exports.id=2651,exports.ids=[2651],exports.modules={8102:(a,b,c)=>{c.d(b,{$:()=>g});var d=c(55511),e=c(29021),f=c(33873);function g(a,b){let c=(0,f.dirname)(a),g=(0,f.join)(c,`.${(0,f.basename)(a)}-${(0,d.randomUUID)()}.tmp`),h=!1;try{(0,e.writeFileSync)(g,b,{encoding:"utf8",flag:"wx",mode:384,flush:!0}),(0,e.renameSync)(g,a)}catch(a){throw h=!0,a}finally{try{(0,e.unlinkSync)(g)}catch(a){if("ENOENT"!==a.code&&!h)throw a}}}},21278:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{y:()=>m});var e=c(29021),f=c(92582),g=c(78772),h=c(34069),i=c(75805),j=c(72498),k=c(38741),l=a([f,g,h,k]);async function m(a){let b=(0,f.getAgentDir)(),c=await (0,k.getSettingsForCwd)(a),{skills:d,warnings:l}=await (0,f.loadSkills)({cwd:a,...g.cfgSkills.get(c)}),m=d.map(a=>({name:a.name,description:a.description,filePath:a.filePath,baseDir:a.baseDir,disableModelInvocation:function(a){try{let{frontmatter:b}=(0,h.parseFrontmatter)((0,e.readFileSync)(a,"utf8"));return!!b["disable-model-invocation"]}catch{return!1}}(a.filePath),sourceInfo:{...a.source?{source:a.source}:{},...a._source?.level?{scope:a._source.level}:{}}}));return{skills:(0,i._)(m,{cwd:a,agentDir:b}),diagnostics:l.map(a=>({type:"warning",message:a.message,path:a.skillPath})),projectResourcesLoaded:(0,j.Y1)(a,b).trusted}}[f,g,h,k]=l.then?(await l)():l,d()}catch(a){d(a)}})},66544:(a,b,c)=>{c.d(b,{E2:()=>
|
|
1
|
+
"use strict";exports.id=2651,exports.ids=[2651],exports.modules={8102:(a,b,c)=>{c.d(b,{$:()=>g});var d=c(55511),e=c(29021),f=c(33873);function g(a,b){let c=(0,f.dirname)(a),g=(0,f.join)(c,`.${(0,f.basename)(a)}-${(0,d.randomUUID)()}.tmp`),h=!1;try{(0,e.writeFileSync)(g,b,{encoding:"utf8",flag:"wx",mode:384,flush:!0}),(0,e.renameSync)(g,a)}catch(a){throw h=!0,a}finally{try{(0,e.unlinkSync)(g)}catch(a){if("ENOENT"!==a.code&&!h)throw a}}}},21278:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{y:()=>m});var e=c(29021),f=c(92582),g=c(78772),h=c(34069),i=c(75805),j=c(72498),k=c(38741),l=a([f,g,h,k]);async function m(a){let b=(0,f.getAgentDir)(),c=await (0,k.getSettingsForCwd)(a),{skills:d,warnings:l}=await (0,f.loadSkills)({cwd:a,...g.cfgSkills.get(c)}),m=d.map(a=>({name:a.name,description:a.description,filePath:a.filePath,baseDir:a.baseDir,disableModelInvocation:function(a){try{let{frontmatter:b}=(0,h.parseFrontmatter)((0,e.readFileSync)(a,"utf8"));return!!b["disable-model-invocation"]}catch{return!1}}(a.filePath),sourceInfo:{...a.source?{source:a.source}:{},...a._source?.level?{scope:a._source.level}:{}}}));return{skills:(0,i._)(m,{cwd:a,agentDir:b}),diagnostics:l.map(a=>({type:"warning",message:a.message,path:a.skillPath})),projectResourcesLoaded:(0,j.Y1)(a,b).trusted}}[f,g,h,k]=l.then?(await l)():l,d()}catch(a){d(a)}})},66544:(a,b,c)=>{c.d(b,{E2:()=>k,EN:()=>j,e9:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}function j(a,b=g()){return!!i(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function k(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},72498:(a,b,c)=>{c.d(b,{LV:()=>k,TK:()=>p,Y1:()=>m,er:()=>n,qm:()=>r,wK:()=>o});var d=c(29021),e=c(33873),f=c(13229),g=c(8102);let h=[".omp/extensions",".omp/hooks",".omp/tools",".pi/extensions",".pi/hooks",".pi/tools",".claude/extensions",".claude/hooks",".claude/tools",".agents/extensions",".agents/hooks",".agents/tools"],i=[".mcp.json",".omp/.mcp.json",".omp/mcp.json",".claude/.mcp.json",".claude/mcp.json",".cursor/mcp.json"];function j(a){return(0,e.join)(a,"cuelo-trusted-projects.json")}function k(a){let b=(0,e.resolve)(a);try{return(0,d.realpathSync)(b)}catch{return b}}function l(a){try{(0,f.adoptLegacyStateFile)(j(a),"omp-web-trusted-projects.json");let b=JSON.parse((0,d.readFileSync)(j(a),"utf8"));if("object"!=typeof b||null===b||Array.isArray(b))return{};return Object.fromEntries(Object.entries(b).filter(a=>"boolean"==typeof a[1]))}catch{return{}}}function m(a,b){return a&&function(a){if(!a)return!1;for(let b of h)if((0,d.existsSync)((0,e.join)(a,b)))return!0;for(let b of i)if((0,d.existsSync)((0,e.join)(a,b)))return!0;return!1}(a)?{requiresTrust:!0,trusted:!0===l(b)[k(a)]}:{requiresTrust:!1,trusted:!0}}function n(a,b){let c=m(a,b);return c.requiresTrust?(o(a,b,!0),{requiresTrust:!0,trusted:!0}):c}function o(a,b,c){let e=l(b);e[k(a)]=c,(0,d.mkdirSync)(b,{recursive:!0}),(0,g.$)(j(b),`${JSON.stringify(e,null,2)}
|
|
2
2
|
`)}function p(a){return l(a)}function q(a,b){let c=(0,e.relative)((0,e.resolve)(b),(0,e.resolve)(a));return""===c||!(0,e.isAbsolute)(c)&&".."!==c&&!c.startsWith(`..${e.sep}`)&&!c.startsWith("../")}function r(a,b,c){let d=m(a,b);if(d.requiresTrust&&!d.trusted)return{preloadedExtensionPaths:c.extensionPaths.filter(b=>!q(b,a)),preloadedCustomToolPaths:c.customToolPaths.filter(b=>b.source?.level!=="project"&&!q(b.path,a)),enableMCP:!1}}},75805:(a,b,c)=>{c.d(b,{_:()=>j});var d=c(29021),e=c(21820),f=c(33873);function g(a){try{let b=JSON.parse((0,d.readFileSync)(a,"utf8"));return b.skills&&"object"==typeof b.skills?b.skills:{}}catch{return{}}}function h(a,b){let c=(0,f.relative)((0,f.resolve)(b),(0,f.resolve)(a));return""!==c&&".."!==c&&!c.startsWith(`..${f.sep}`)&&!(0,f.isAbsolute)(c)}function i(a,b,c){var d;let e=function(a,b){if(a[b])return a[b];let c=b.toLowerCase(),d=Object.keys(a).find(a=>a.toLowerCase()===c);return d?a[d]:void 0}(a,b);if(!e||"string"!=typeof e.source||!e.source.trim())return;let f="string"==typeof e.sourceType?e.sourceType:void 0,g=(d=e.source.trim(),"github"!==f?d.replace(/\/$/,""):d.replace(/^git\+/,"").replace(/^https?:\/\/github\.com\//,"").replace(/^git@github\.com:/,"").replace(/\.git$/,"").replace(/\/$/,""));if(!g)return;let h="string"==typeof e.skillPath?e.skillPath:void 0,i="string"==typeof e.ref?e.ref:void 0,j="global"===c?e.skillFolderHash:e.computedHash,k="string"==typeof j&&j?j:void 0,l="github"===f&&/^[\w.-]+\/[\w.-]+$/.test(g);return{package:`${g}@${b}`,scope:c,source:g,sourceType:f,skillsShUrl:"local"===f?void 0:function(a,b){if(!a||a.includes("://")||a.startsWith("git@"))return;let c=a.split("/").filter(Boolean).map(encodeURIComponent).join("/");if(c)return`https://skills.sh/${c}/${encodeURIComponent(b)}`}(g,b),...h&&{skillPath:h},...i&&{ref:i},...k&&{versionHash:k},canCheckForUpdates:!!(l&&h&&k&&("global"===c||!i))}}function j(a,{cwd:b,agentDir:c,globalLockPath:k=function({homeDir:a=(0,e.homedir)(),xdgStateHome:b=process.env.XDG_STATE_HOME}={}){return b?(0,f.join)(b,"skills",".skill-lock.json"):(0,f.join)(a,".agents",".skill-lock.json")}(),projectLockPath:l=(0,f.join)(b,"skills-lock.json")}){let m=g(k),n=g(l),o=[(0,f.join)(c,"skills"),(0,f.join)((0,e.homedir)(),".claude","skills")],p=[(0,f.join)(b,".omp","skills"),(0,f.join)(b,".claude","skills")];return a.map(a=>{if(!(0,d.existsSync)(a.filePath))return a;let b=o.some(b=>h(a.filePath,b))?i(m,a.name,"global"):p.some(b=>h(a.filePath,b))?i(n,a.name,"project"):void 0;return b?{...a,install:b}:a})}},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>o,B7:()=>p,Nw:()=>i.Nw,mc:()=>n,uK:()=>m,wz:()=>i.wz});var e=c(29021),f=c(21820),g=c(33873),h=c.n(g),i=c(25252),j=c(82536),k=c(40402),l=a([k]);k=(l.then?(await l)():l)[0];let q=/^[a-zA-Z]:[\\/]/;function m(a){return q.test(a)||a.startsWith("\\\\")||a.startsWith("//")}async function n(){let a=Date.now(),b=globalThis.__ompAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,k.wb)(),d=new Set;for(let a of c)a.cwd&&d.add((0,i.Nw)(a.cwd)),a.projectRoot&&d.add((0,i.Nw)(a.projectRoot));try{for(let a of(0,e.readdirSync)((0,f.homedir)()))/^omp-cwd-\d{8}$/.test(a)&&d.add((0,i.Nw)(h().join((0,f.homedir)(),a)))}catch{}for(let a of(0,i.HM)())d.add(a);return globalThis.__ompAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function o(a,b){for(let c of b){let b=m(a)||m(c),d=b?h().win32:h(),e=b?"\\":h().sep,f=d.resolve(a),g=d.resolve(c),i=b?f.toLowerCase():f,j=b?g.toLowerCase():g,k=j.endsWith(e)?j:j+e;if(i===j||i.startsWith(k))return!0}return!1}function p(a,b){return(0,j.x)(a,b)}d()}catch(a){d(a)}})},82536:(a,b,c)=>{c.d(b,{x:()=>i});var d=c(29021),e=c(33873),f=c.n(e);let g=/^[a-zA-Z]:[\\/]/;function h(a){return g.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function i(a,b){let c;try{c=(0,d.realpathSync)(a)}catch{return!1}let e=new Set;for(let a of b)try{e.add((0,d.realpathSync)(a))}catch{}return function(a,b){for(let c of b){let b=h(a)||h(c),d=b?f().win32:f(),e=b?"\\":f().sep,g=d.resolve(a),i=d.resolve(c),j=b?g.toLowerCase():g,k=b?i.toLowerCase():i,l=k.endsWith(e)?k:k+e;if(j===k||j.startsWith(l))return!0}return!1}(c,e)}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=4649,exports.ids=[4649],exports.modules={30638:(a,b,c)=>{c.d(b,{e$:()=>g,o:()=>e});let d=[{alias:"RIN(린)",file:"rin.webp"},{alias:"MIO(미오)",file:"mio.webp"},{alias:"NOVA(노바)",file:"nova.webp",provider:"opencode-go"},{alias:"YUKI(유키)",file:"yuki.webp",provider:"openai-codex"},{alias:"ISANA(이사나)",file:"isana.webp",provider:"b-ai"},{alias:"SHION(시온)",file:"shion.webp",provider:"web6"},{alias:"HIKARI(히카리)",file:"hikari.webp",provider:"google-antigravity"}],e=[{seed:3,alias:d[3].alias,provider:"openai-codex",model:"gpt-6-astra",voice:"빠른 판단\xb7선명한 결론\xb7영리한 장난기",summonExample:"유키 불러와",switchExample:"유키로 교체해"},{seed:4,alias:d[4].alias,provider:"b-ai",model:"deepseek-v4.1-flash",voice:"호기심과 실행력\xb7생기 있는 관찰\xb7솔직함",summonExample:"이사나 불러와",switchExample:"이사나로 교체해"},{seed:0,alias:d[0].alias,provider:"anthropic",model:"claude-opus-5-5",oauthPosition:0,voice:"조용한 집중\xb7날카로운 분석\xb7건조한 유머",summonExample:"린 불러와",switchExample:"린으로 교체해"},{seed:1,alias:d[1].alias,provider:"anthropic",model:"claude-opus-5-5",oauthPosition:1,voice:"따뜻하고 세심함\xb7부드럽고 안정적인 설명",summonExample:"미오 불러와",switchExample:"미오로 교체해"},{seed:2,alias:d[2].alias,provider:"opencode-go",model:"muse-spark-1.3-contributor",voice:"번뜩이는 발상\xb7즉흥적 시제품\xb7낙천적 재도전",summonExample:"노바 불러와",switchExample:"노바로 교체해"},{seed:6,alias:d[6].alias,provider:"google-antigravity",model:"gemini-3.8-flash",voice:"빠른 관찰\xb7톡 쏘는 한마디\xb7장난스러운 여유",summonExample:"히카리 불러와",switchExample:"히카리로 교체해"},{seed:5,alias:d[5].alias,provider:"web6",model:"gpt-6-pro",voice:"우아한 전략\xb7넓은 시야\xb7은근한 장난기",summonExample:"시온 불러와",switchExample:null,summonNote:"WEB6 상담으로 호출합니다.",switchNote:"SHION은 WEB6 상담 전용이라 Main으로 교체할 수 없습니다."}];e.filter(a=>null!==a.switchExample),d.filter(a=>!("provider"in a)).length;let f=new Map([...new Map(d.flatMap((a,b)=>"provider"in a?[[a.provider,b]]:[]))].map(([a,b])=>[a,{seed:b,alias:d[b].alias}]));function g(a){return f.get(a)??null}},66544:(a,b,c)=>{c.d(b,{E2:()=>
|
|
1
|
+
"use strict";exports.id=4649,exports.ids=[4649],exports.modules={30638:(a,b,c)=>{c.d(b,{e$:()=>g,o:()=>e});let d=[{alias:"RIN(린)",file:"rin.webp"},{alias:"MIO(미오)",file:"mio.webp"},{alias:"NOVA(노바)",file:"nova.webp",provider:"opencode-go"},{alias:"YUKI(유키)",file:"yuki.webp",provider:"openai-codex"},{alias:"ISANA(이사나)",file:"isana.webp",provider:"b-ai"},{alias:"SHION(시온)",file:"shion.webp",provider:"web6"},{alias:"HIKARI(히카리)",file:"hikari.webp",provider:"google-antigravity"}],e=[{seed:3,alias:d[3].alias,provider:"openai-codex",model:"gpt-6-astra",voice:"빠른 판단\xb7선명한 결론\xb7영리한 장난기",summonExample:"유키 불러와",switchExample:"유키로 교체해"},{seed:4,alias:d[4].alias,provider:"b-ai",model:"deepseek-v4.1-flash",voice:"호기심과 실행력\xb7생기 있는 관찰\xb7솔직함",summonExample:"이사나 불러와",switchExample:"이사나로 교체해"},{seed:0,alias:d[0].alias,provider:"anthropic",model:"claude-opus-5-5",oauthPosition:0,voice:"조용한 집중\xb7날카로운 분석\xb7건조한 유머",summonExample:"린 불러와",switchExample:"린으로 교체해"},{seed:1,alias:d[1].alias,provider:"anthropic",model:"claude-opus-5-5",oauthPosition:1,voice:"따뜻하고 세심함\xb7부드럽고 안정적인 설명",summonExample:"미오 불러와",switchExample:"미오로 교체해"},{seed:2,alias:d[2].alias,provider:"opencode-go",model:"muse-spark-1.3-contributor",voice:"번뜩이는 발상\xb7즉흥적 시제품\xb7낙천적 재도전",summonExample:"노바 불러와",switchExample:"노바로 교체해"},{seed:6,alias:d[6].alias,provider:"google-antigravity",model:"gemini-3.8-flash",voice:"빠른 관찰\xb7톡 쏘는 한마디\xb7장난스러운 여유",summonExample:"히카리 불러와",switchExample:"히카리로 교체해"},{seed:5,alias:d[5].alias,provider:"web6",model:"gpt-6-pro",voice:"우아한 전략\xb7넓은 시야\xb7은근한 장난기",summonExample:"시온 불러와",switchExample:null,summonNote:"WEB6 상담으로 호출합니다.",switchNote:"SHION은 WEB6 상담 전용이라 Main으로 교체할 수 없습니다."}];e.filter(a=>null!==a.switchExample),d.filter(a=>!("provider"in a)).length;let f=new Map([...new Map(d.flatMap((a,b)=>"provider"in a?[[a.provider,b]]:[]))].map(([a,b])=>[a,{seed:b,alias:d[b].alias}]));function g(a){return f.get(a)??null}},66544:(a,b,c)=>{c.d(b,{E2:()=>k,EN:()=>j,e9:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}function j(a,b=g()){return!!i(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function k(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}}};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
exports.id=5270,exports.ids=[5270],exports.modules={2979:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{let s;c.d(b,{RT:()=>q,bO:()=>C,dk:()=>o,kF:()=>x,oG:()=>D,rE:()=>r,uC:()=>p});var e=c(77598),f=c(51455),g=c(76760),h=c.n(g),i=c(34069),j=c(8102),k=c(69689),l=c(36208),m=a([i]);i=(m.then?(await m)():m)[0];let t="cuelo-attachment-settings.json",u=".cuelo-managed",v=/^(?:new|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/,w=/^(?:con|prn|aux|nul|com[0-9¹²³]|lpt[0-9¹²³])(?:\..*)?$/i,x=256,y=".part",z=".lease",A=".deleting",B=".cleanup-lock";function n(a){return a?.code}async function o(a){let b;try{b=await (0,f.readFile)(h().join(a,t),"utf8")}catch(a){if("ENOENT"===n(a))return(0,k.gP)({});throw a}try{return(0,k.gP)(JSON.parse(b))}catch{return{...(0,k.gP)({}),autoCleanupEnabled:!1}}}async function p(a,b){let c={...await o(a),...b};return await (0,f.mkdir)(a,{recursive:!0}),(0,j.$)(h().join(a,t),`${JSON.stringify({uploadLimitMb:c.uploadLimitMb,autoCleanupEnabled:c.autoCleanupEnabled},null,2)}
|
|
2
|
+
`),c}class C extends Error{constructor(a,b){super(b),this.code=a,this.name="ManagedAttachmentError"}}class D extends Error{constructor(a){super(`Unknown attachment ids: ${a.join(", ")}`),this.missing=a,this.name="UnknownAttachmentError"}}let E=a=>new Promise(b=>setTimeout(b,a));class F{#a;#b;#c;#d;constructor({root:a,sessionsDir:b,customSessionFilesDir:c,now:d=Date.now,state:e,deletionWaitLimitMs:f=3e4}){this.root=a,this.sessionsDir=b,this.customSessionFilesDir=c,this.now=d,this.#a=f,this.#b=e?.holds??new Map,this.#c=e?.deleting??new Map,this.#d=e?.draftQueues??new Map}get #e(){return h().join(this.root,u)}get #f(){return h().join(this.#e,"attachments")}get #g(){return h().join(this.#e,"drafts")}get #h(){return h().join(this.#e,"uploads")}get #i(){return h().join(this.#e,"handoffs")}#j(a){return h().join(this.#i,`${a}.json`)}get #k(){return h().join(this.#e,"leases")}#l(a){return h().join(this.#f,`${a}.json`)}#m(a){return h().join(this.#g,`${a}.json`)}async #n(){await (0,f.mkdir)(this.root,{recursive:!0});let a=await (0,f.realpath)(this.root);for(let b of["attachments","drafts","uploads","leases","handoffs"])await (0,f.mkdir)(h().join(a,u,b),{recursive:!0});let b=h().join(a,u);if(await (0,f.realpath)(b)!==b)throw Error("Attachment metadata folder resolves outside the attachment root");return a}isHeld(a){return(this.#b.get(a)??0)>0||this.#c.has(a)}async #o(a){let b;try{b=await (0,f.readdir)(this.#k)}catch(a){return{complete:"ENOENT"===n(a),entries:[]}}let c=[];for(let d of b){if(!d.endsWith(a))continue;let[b="",e=""]=d.slice(0,-a.length).split("~"),g=/^\d+$/.test(e)&&Number.isSafeInteger(Number(e))&&Number(e)>0?Number(e):null;if(null!==g&&!function(a){if(a===process.pid)return!0;try{return process.kill(a,0),!0}catch(a){return"ESRCH"!==n(a)}}(g)){await (0,f.unlink)(h().join(this.#k,d)).catch(()=>{});continue}c.push({name:d,key:b})}return{complete:!0,entries:c}}async liveLeaseIds(){let{complete:a,entries:b}=await this.#o(z),c=new Set(this.#b.keys());for(let{key:a}of b)c.add(a);return{complete:a,ids:c}}async #p(a){await this.#n();let b=Date.now();for(;;){let c=a.flatMap(a=>this.#c.get(a)??[]);if(c.length>0){await Promise.all(c);continue}for(let b of a)this.#b.set(b,(this.#b.get(b)??0)+1);let d=[],g=!1,i=async()=>{if(!g){for(let a of(g=!0,d.splice(0)))await (0,f.unlink)(a).catch(()=>{});for(let b of a){let a=(this.#b.get(b)??0)-1;a>0?this.#b.set(b,a):this.#b.delete(b)}}};try{for(let b of a){let a=h().join(this.#k,`${b}~${process.pid}~${(0,e.randomBytes)(6).toString("hex")}${z}`);await (0,f.writeFile)(a,"",{flag:"wx",mode:384}),d.push(a)}let b=await this.#o(A);if(b.complete&&!b.entries.some(({key:b})=>a.includes(b)))return i}catch(a){throw await i(),a}if(await i(),Date.now()-b>this.#a)throw new C("busy","Attachment is being cleaned up by another CUELO process; try again");await E(50)}}async acquireCleanupLock(){await this.#n();let a=`cleanup~${process.pid}~${(0,e.randomBytes)(6).toString("hex")}${B}`,b=h().join(this.#k,a);await (0,f.writeFile)(b,"",{flag:"wx",mode:384});let c=async()=>{await (0,f.unlink)(b).catch(()=>{})},d=await this.#o(B).catch(()=>null);return!d?.complete||d.entries.some(b=>b.name!==a)?(await c(),null):c}async #q(a,b){let c=(this.#d.get(a)??Promise.resolve()).catch(()=>{}).then(b);this.#d.set(a,c);try{return await c}finally{this.#d.get(a)===c&&this.#d.delete(a)}}async readRecord(a){let b;try{b=await (0,f.readFile)(this.#l(a),"utf8")}catch(a){if("ENOENT"===n(a))return null;throw a}try{var c;return c=JSON.parse(b),c&&"object"==typeof c&&1===c.version&&c.id===a&&"string"==typeof c.path&&"string"==typeof c.name&&"string"==typeof c.mimeType&&"number"==typeof c.size&&Number.isSafeInteger(c.size)&&!(c.size<0)&&"string"==typeof c.createdAt&&(null===c.sessionId||"string"==typeof c.sessionId)&&(null===c.orphanSince||"string"==typeof c.orphanSince&&Number.isFinite(Date.parse(c.orphanSince)))?{version:1,id:a,path:c.path,name:c.name,size:c.size,mimeType:c.mimeType,sessionId:c.sessionId,createdAt:c.createdAt,orphanSince:c.orphanSince}:null}catch{return null}}writeRecord(a){(0,j.$)(this.#l(a.id),`${JSON.stringify(a,null,2)}
|
|
3
|
+
`)}async listRecords(){let a;try{a=await (0,f.readdir)(this.#f)}catch(a){if("ENOENT"===n(a))return[];throw a}let b=[];for(let c of a){let a=c.endsWith(".json")?c.slice(0,-5):"";if(!(0,l.YC)(a))continue;let d=await this.readRecord(a).catch(()=>null);d&&b.push(d)}return b}async beginUpload(){let a=await this.#n(),b=`att_${(0,e.randomBytes)(16).toString("hex")}`,c=await this.#p([b]);return{id:b,stagingPath:h().join(a,u,"uploads",`${b}${y}`),release:c}}async discardStagedUpload(a){h().dirname(a)===h().join(await (0,f.realpath)(this.root),u,"uploads")&&await (0,f.unlink)(a).catch(a=>{if("ENOENT"!==n(a))throw a})}async commitUpload(a){let b=await this.#n(),c=(a.sessionId??"new").toLowerCase();if(!v.test(c))throw Error("Invalid attachment folder");let d=h().join(b,c);if(await (0,f.mkdir)(d,{recursive:!0}),h().relative(b,await (0,f.realpath)(d))!==c)throw Error("Attachment folder resolves outside the attachment root");let e=h().join(d,a.id);await (0,f.mkdir)(e);let g=function(a){let b=a.replace(/[<>:"|?*\u0000-\u001f]/g,"_").replace(/[. ]+$/,"");if(!b)return"attachment";let c=Array.from(b);if(c.length>150){let a=Array.from(h().extname(b)).slice(0,20).join("");b=c.slice(0,150-a.length).join("")+a}return w.test(b)?`_${b}`:b}(a.fileName),i=h().join(e,g);await (0,f.rename)(a.stagingPath,i);let j={version:1,id:a.id,path:i,name:g,size:a.size,mimeType:a.mimeType,sessionId:a.sessionId?.toLowerCase()??null,createdAt:new Date(this.now()).toISOString(),orphanSince:null};try{this.writeRecord(j)}catch(a){throw await (0,f.unlink)(i).catch(()=>{}),await (0,f.rmdir)(e).catch(()=>{}),a}return await this.#q(a.draftId,async()=>{let b=await this.#r(a.draftId);this.#s(a.draftId,[...new Set([...b,a.id])])}),j}async #r(a){let b;try{b=await (0,f.readFile)(this.#m(a),"utf8")}catch(a){if("ENOENT"===n(a))return[];throw a}let c=JSON.parse(b);if(!Array.isArray(c.attachmentIds))throw Error(`Draft record ${a} is malformed`);return c.attachmentIds.filter(l.YC)}#s(a,b){(0,j.$)(this.#m(a),`${JSON.stringify({version:1,draftId:a,attachmentIds:b,updatedAt:new Date(this.now()).toISOString()},null,2)}
|
|
4
|
+
`)}async setDraftAttachments(a,b,c=[]){if(!(0,l.Ly)(a))throw Error("Invalid draft id");let d=a.toLowerCase(),e=[...new Set(b)];if(e.length>x||!e.every(l.YC))throw Error("Invalid attachment ids");let g=[...new Set(c)].filter(a=>!e.includes(a));if(g.length>x||!g.every(l.YC))throw Error("Invalid attachment ids");await this.#n();let h=await this.#p([...e,...g]);try{let a=[];for(let b of e)await this.readRecord(b)||a.push(b);if(a.length>0)throw new D(a);let b=[];for(let a of g)await this.readRecord(a)&&b.push(a);return await this.#q(d,async()=>{for(let a of b)(0,j.$)(this.#j(a),`${JSON.stringify({version:1,id:a,draftId:d,handedOffAt:new Date(this.now()).toISOString()},null,2)}
|
|
5
|
+
`);for(let a of(e.length>0?this.#s(d,e):await (0,f.unlink)(this.#m(d)).catch(a=>{if("ENOENT"!==n(a))throw a}),e))await this.removeHandoff(a)}),e}finally{await h()}}async readDraftReferences(){let a,b=new Set;try{a=await (0,f.readdir)(this.#g)}catch(a){return{complete:"ENOENT"===n(a),ids:b}}let c=!0;for(let d of a)if(!d.startsWith(".")&&d.endsWith(".json"))try{for(let a of(await this.#r(d.slice(0,-5))))b.add(a)}catch(a){"ENOENT"!==n(a)&&(c=!1)}return{complete:c,ids:b}}async readHandoffs(){let a,b=new Set;try{a=await (0,f.readdir)(this.#i)}catch(a){return{complete:"ENOENT"===n(a),ids:b}}let c=!0;for(let d of a){if(d.startsWith("."))continue;let a=d.endsWith(".json")?d.slice(0,-5):"";if(!(0,l.YC)(a)){c=!1;continue}b.add(a);try{JSON.parse(await (0,f.readFile)(h().join(this.#i,d),"utf8")).id!==a&&(c=!1)}catch(a){"ENOENT"!==n(a)&&(c=!1)}}return{complete:c,ids:b}}async removeHandoff(a){(0,l.YC)(a)&&await (0,f.unlink)(this.#j(a)).catch(a=>{if("ENOENT"!==n(a))throw a})}async #t(a){let b;try{b=await (0,f.realpath)(this.root)}catch{return null}let c=h().relative(b,a.path).split(h().sep);if(3!==c.length||!v.test(c[0])||c[1]!==a.id||c[2]!==a.name||"."===c[2]||".."===c[2]||h().join(b,...c)!==a.path)return null;let d=h().join(b,c[0],c[1]);try{if(await (0,f.realpath)(d)!==d)return null}catch{return null}try{return(await (0,f.lstat)(a.path)).isFile()?{idDirectory:d,fileMissing:!1}:null}catch(a){return"ENOENT"===n(a)?{idDirectory:d,fileMissing:!0}:null}}async withManagedAttachment(a,b){if(!(0,l.YC)(a))throw new C("invalid_id","Invalid attachment id");let c=await this.#p([a]);try{let c=await this.readRecord(a),d=c?await this.#t(c):null;if(!c||!d||d.fileMissing)throw new C("not_found","Attachment not found");return await b({id:a,path:c.path,size:c.size,mimeType:c.mimeType})}finally{await c()}}async deleteOrphan(a,b){let c;if(this.isHeld(a))return!1;this.#c.set(a,new Promise(a=>{c=a}));let d=null;try{await this.#n();let c=h().join(this.#k,`${a}~${process.pid}~${(0,e.randomBytes)(6).toString("hex")}${A}`);await (0,f.writeFile)(c,"",{flag:"wx",mode:384}),d=c;let g=await this.liveLeaseIds();if(!g.complete||g.ids.has(a))return!1;let i=await this.readHandoffs();if(!i.complete||i.ids.has(a))return!1;let j=await this.readRecord(a);if(!j?.orphanSince||this.now()-Date.parse(j.orphanSince)<b)return!1;let k=await this.readDraftReferences();if(!k.complete||k.ids.has(a))return!1;let l=await this.#t(j);if(!l)return!1;return l.fileMissing||await (0,f.unlink)(j.path),await (0,f.rmdir)(l.idDirectory).catch(()=>{}),await (0,f.unlink)(this.#l(a)).catch(a=>{if("ENOENT"!==n(a))throw a}),!0}finally{d&&await (0,f.unlink)(d).catch(()=>{}),this.#c.delete(a),c()}}async removeStaleUploads(a){let b;try{b=await (0,f.readdir)(this.#h)}catch(a){if("ENOENT"===n(a))return 0;throw a}let c=await this.liveLeaseIds();if(!c.complete)return 0;let d=0;for(let e of b){let b=e.endsWith(y)?e.slice(0,-y.length):"";if(!(0,l.YC)(b)||c.ids.has(b))continue;let g=h().join(this.#h,e);try{let b=await (0,f.stat)(g);if(!b.isFile()||this.now()-b.mtimeMs<a)continue;await (0,f.unlink)(g),d+=1}catch{}}return d}}function q(){let a=(0,i.getAgentDir)(),b=h().join(a,"cuelo-attachments");if(s?.root===b)return s;let c=globalThis.__cueloAttachmentStoreStates??=new Map,d=c.get(b);return d||(d={holds:new Map,deleting:new Map,draftQueues:new Map},c.set(b,d)),s=new F({root:b,sessionsDir:(0,i.getSessionsDir)(a),customSessionFilesDir:(0,i.getCustomSessionFilesDir)(a),state:d})}function r(a,b){return q().withManagedAttachment(a,b)}d()}catch(a){d(a)}})},8102:(a,b,c)=>{"use strict";c.d(b,{$:()=>g});var d=c(55511),e=c(29021),f=c(33873);function g(a,b){let c=(0,f.dirname)(a),g=(0,f.join)(c,`.${(0,f.basename)(a)}-${(0,d.randomUUID)()}.tmp`),h=!1;try{(0,e.writeFileSync)(g,b,{encoding:"utf8",flag:"wx",mode:384,flush:!0}),(0,e.renameSync)(g,a)}catch(a){throw h=!0,a}finally{try{(0,e.unlinkSync)(g)}catch(a){if("ENOENT"!==a.code&&!h)throw a}}}},36208:(a,b,c)=>{"use strict";c.d(b,{Lg:()=>l,Ly:()=>j,Qw:()=>d,YC:()=>i,e6:()=>f,iH:()=>e,we:()=>m});let d=8388608,e=12e4,f=250,g=/^att_[0-9a-f]{32}$/,h=/^[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"string"==typeof a&&g.test(a)}function j(a){return"string"==typeof a&&h.test(a)}let k={".mp3":"audio/mpeg",".wav":"audio/wav",".wave":"audio/wav",".m4a":"audio/mp4",".ogg":"audio/ogg",".oga":"audio/ogg",".opus":"audio/ogg",".flac":"audio/flac",".webm":"audio/webm",".aac":"audio/aac",".aif":"audio/aiff",".aiff":"audio/aiff"};function l(a){let b=a.name.toLocaleLowerCase(),c=b.lastIndexOf("."),d=c>0?k[b.slice(c)]:void 0;if(d)return d;let e=a.type.toLocaleLowerCase().split(";",1)[0]?.trim();return e?.startsWith("audio/")?e:null}function m(a){return function(a){let b;if(!a.startsWith(n))return null;let c=a.indexOf("\n");if(c<0)return null;let f=a.slice(0,c);if(!f.endsWith(o))return null;try{b=JSON.parse(f.slice(n.length,-o.length))}catch{return null}if(!function(a){if(!a||"object"!=typeof a||!Number.isSafeInteger(a.userMessageLength)||(a.userMessageLength??-1)<0||!Array.isArray(a.documents)||0===a.documents.length||a.documents.length>3)return!1;let b=0,c=0;for(let f of a.documents){if(!f||"object"!=typeof f||"string"!=typeof f.name||0===f.name.length||"text/markdown"!==f.mimeType&&"text/plain"!==f.mimeType&&"application/pdf"!==f.mimeType||!Number.isSafeInteger(f.size)||(f.size??-1)<0||(f.size??0)>d||!Number.isSafeInteger(f.textLength)||(f.textLength??-1)<0||(f.textLength??0)>e)return!1;b+=f.size??0,c+=f.textLength??0}return b<=0x1000000&&c<=24e4}(b))return null;let g=c+1;if(!a.startsWith(p,g))return null;let h=(g+=p.length)+b.userMessageLength;if(h>a.length)return null;let i=a.slice(g,h);if(g=h,!a.startsWith(q,g))return null;g+=q.length;let j=[];for(let c=0;c<b.documents.length;c+=1){var k,l,m;let d=b.documents[c],e=(k=c,l=d,`
|
|
6
|
+
--- Begin attached document ${k+1}: ${JSON.stringify(l.name)} (${l.mimeType}, ${l.size} bytes) ---
|
|
7
|
+
`);if(!a.startsWith(e,g))return null;let f=(g+=e.length)+d.textLength;if(f>a.length)return null;let h=a.slice(g,f);g=f;let i=(m=c,`
|
|
8
|
+
--- End attached document ${m+1} ---`);if(!a.startsWith(i,g))return null;g+=i.length,j.push({name:d.name,mimeType:d.mimeType,size:d.size,text:h})}return g===a.length?{message:i,documents:j}:null}(a)?.message??a}let n="\x3c!-- omp-web-document-context-v1:",o=" --\x3e",p="User message:\n",q="\n\nAttached documents (locally extracted text supplied by the user):\n"},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>k,EN:()=>j,e9:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}function j(a,b=g()){return!!i(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function k(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},69689:(a,b,c)=>{"use strict";c.d(b,{NB:()=>f,gP:()=>h,y1:()=>i});let d=Math.floor(Number.MAX_SAFE_INTEGER/1048576),e=Object.freeze({uploadLimitMb:100,autoCleanupEnabled:!0,orphanGraceDays:7});function f(a){return 1048576*a.uploadLimitMb}function g(a){return"number"==typeof a&&Number.isSafeInteger(a)&&a>=1&&a<=d}function h(a){let b=a&&"object"==typeof a?a:{};return{uploadLimitMb:g(b.uploadLimitMb)?b.uploadLimitMb:e.uploadLimitMb,autoCleanupEnabled:"boolean"==typeof b.autoCleanupEnabled?b.autoCleanupEnabled:e.autoCleanupEnabled,orphanGraceDays:7}}function i(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"Settings must be a JSON object"};let b={};for(let[c,d]of Object.entries(a))if("uploadLimitMb"===c){if(!g(d))return{ok:!1,error:"uploadLimitMb must be a positive whole number of MB"};b.uploadLimitMb=d}else if("autoCleanupEnabled"===c){if("boolean"!=typeof d)return{ok:!1,error:"autoCleanupEnabled must be true or false"};b.autoCleanupEnabled=d}else if("orphanGraceDays"!==c)return{ok:!1,error:`Unknown setting: ${c}`};else if(7!==d)return{ok:!1,error:"orphanGraceDays is fixed at 7"};return{ok:!0,patch:b}}},78335:()=>{},96487:()=>{}};
|